|
分享自己整理嵌入式NXP LPC1788开发板原理图资料 大家参考
[复制链接]
ARP:地址解析协议虽然数据链路层的第一道关卡是MAC地址,但基于TCP/IP的网络主要使用IP地址来标识主机而不使用MAC地址。比如要连接到别人的电脑或拷贝共享文件,一般会说:“告诉我你电脑的IP”,而不是“告诉我你电脑的MAC”。从以太网帧结构知道,不知道对方网卡的MAC地址是无法正常通讯的,那主机是怎样从IP地址上自动获取到MAC地址呢?这就是这章要讲的“地址解析协议”,以下简称其英文缩写“ARP”。
根据ARP分组的格式,uip头部结构定义如下,为了便于管理,它包含了以太网帧的头部uip_eth_hdr。
struct arp_hdr
{
struct uip_eth_hdr ethhdr; /*以太网首部,14字节*/
u16_t hwtype; /*硬件类型,0x0001*/
u16_t protocol; /*协议类型,0x0800*/
u8_t hwlen; /*硬件长度,0x06*/
u8_t protolen; /*协议长度,0x04*/
u16_t opcode; /*操作码,ARP请求:0x1;ARP应答:0x2*/
struct uip_eth_addr shwaddr; /*发送方MAC地址*/
u16_t sipaddr[2]; /*发送方IP地址*/
struct uip_eth_addr dhwaddr; /*接收方MAC地址*/
u16_t dipaddr[2]; /*接收方IP地址*/
};
前面说过,ARP协议的目的就是主机自动维护一张动态映射表,uIP对动态映射表的结构定义如下:
struct arp_entry
{
u16_t ipaddr[2]; /*IP地址*/
struct uip_eth_addr ethaddr; /*MAC地址*/
u8_t time; /*IP-MAC映射生成时间*/
};
表 4-2 uip的ARP动态映射表
IP地址
MAC地址
映射生成时间
192.168.1.15
00-0B-6A-8E-3F-C2
13
官方店 https://openmcu.taobao.com 开学季活动到国庆节10月份
悍马LPC1788开发板原价588元,秋季开学大促,直降20元,仅需568元,
|
|