编程教育资源分享平台

网站首页 > 后端开发 正文

IP数据包格式协议字段和ARP协议的工作原理

luoriw 2024-04-04 12:49:20 后端开发 12 ℃ 0 评论

IP数据包格式协议字段和ARP协议的工作原理


IP数据包格式

IP包数据格式解析:

版本(Version): 该字段包含的是IP的版本号,4bit,目前的版本是4.(即代表IPV4)

首部长度(Header length):该字段用于表示IP地址包头长度,4bit。IP数据包头最短为20字节,但其长度是可变的,具体长度取决于可选项字段的长度。

优先级与服务类型(Priority & Type of service ): 该字段用于表现数字包的优先级和服务类型,8bit。通过在数据包中划分一定的优先级,用于实现Qos(服务质量)的要求。

总长度(Total Length):该字段用以整个IP数据包的长度,16bit。当ip对上层数据进行分片时,它将给所有的分片配同一组编号,然后将这些编号放入标示符字段中,保证分片不会被错误的重组。

标志(Flags): 标志字段,3bit,对当前的包不能进行分片(当该包从一个以太网发送到另一个以太网时)或当一个包被分片后用以指示在一系列的分片中,最后一个分片是否已发出。

段偏移量(Fragment Offset):13bit,段偏移量中包含的信息是指在一个分片序列中如何将各分片重新连接起来。

TTL(Time to Live): 该字段表示IP数据包的生命周期,8bit,一个数据包每经过一个路由器,TTL将减1,当TTL为0时,该数据包被丢弃,可以防止一个数据包在网络中无限循环转发下去。

协议号(Protocol): 8bit,该字段用以指示在IP数据包中封装的是哪一个协议,是TCP还是UDP,TCP协议号为6,UDP协议号为17.

首部校验和(header checksum):该字段用于表示校验和,16bit,接受方和网关来校验数据有没有被改动过。

源IP地址(source ip address):该字段用于表示数据包的源地址。32bit

目标IP地址(Destination IP address):该字段用于表示数据包的目的地址。32bit。

可选项(Options):可选项字段根据实际情况可变长,可以和IP一起使用的选项有多个。例如,可以输入创建该数据包的时间等,在可选项之后就是上层数据。

ARP协议的工作原理
把IP地址解析为MAC地址
PC1发送数据给PC2,先查看缓存里有没有PC2的MAC地址,没有的话PC1发送一条ARP请求广播
ARP请求消息中包括PC1的IP地址和MAC地址以及PC2的IP地址和目的MAC地址,此时广播MAC地址为FF-FF-FF-FF-FF-FF.
交换机收到ARP广播后做泛洪处理,此时除PC1以外的所有主机都将收到ARP请求消息,PC2收到请求消息后以单播方式发送ARP应答并在自己的ARP列表中缓存PC1的IP地址和MAC地址的对应关系,其他主机则丢掉此ARP请求消息.
PC1则在自己的ARP列表中添加PC2的IP地址和MAC地址的对应关系,从而以单播方式与PC2通信.

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表
最新留言