一 概述:
(1)链路层主要目的:
1.为IP模块发送和接收IP数据报。
2.为ARP模块发送ARP请求和ARP应答。
3.为RARP模块发送RARP请求和RARP应答。
(2)数据链路层使用的信道主要有两种类型:
1.点对点信道:使用一对一的点对点的通信方式。(主要使用PPP协议)
2.广播信道:使用一对多的广播通信方式,过程复杂。广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发送。
二 以太网的头部:
struct ether_header
{
u_int8_t ether_dhost[ETH_ALEN]; /* destination eth addr
*/
u_int8_t ether_shost[ETH_ALEN]; /* source ether addr
*/
u_int16_t ether_type; /* packet type ID field
*/
} __attribute__ ((__packed__));
/* Ethernet protocol ID's */
#define ETHERTYPE_PUP
0x0200 /* Xerox PUP */
#define ETHERTYPE_SPRITE 0x0500
/* Sprite */
#define ETHERTYPE_IP
0x0800 /* IP */
#define ETHERTYPE_ARP
0x0806 /* Address resolution */
#define ETHERTYPE_REVARP
0x8035 /* Reverse ARP */
#define ETHERTYPE_AT 0x809B
/* AppleTalk protocol */
#define ETHERTYPE_AARP 0x80F3
/* AppleTalk ARP */
#define ETHERTYPE_VLAN
0x8100 /* IEEE 802.1Q VLAN tagging */
#define ETHERTYPE_IPX 0x8137
/* IPX */
#define ETHERTYPE_IPV6
0x86dd /* IP protocol version 6 */
#define ETHERTYPE_LOOPBACK 0x9000
/* used to test interfaces *

被折叠的 条评论
为什么被折叠?



