数据通信之IP协议

我们在之前了解了OSI参考模型和TCP/IP网络模型,下面我们了解一下TCP/IP协议栈中的IP协议

IP协议

IP协议即网际互连协议,一般指IP,是TCP/IP体系中的网络层协议。

IP协议的特点

1、IP是无连接的,在传输数据之前不需要建立连接。
2、IP提供的是尽力而为的服务,超过转发能力时直接丢弃。
3、IP数据包在网络中的传送是无序的,在转发过程中,不考虑到达 接收端的顺序,每个数据包单独进行路由(即单独选择到达目的地的路径)。
4、IP分组传送是不可靠的,发送端只管发送数据,不关心接收端是 否收到数据,IP的可靠性需要上层协议来解决。

IP的包头结构

在这里插入图片描述

标识符(16位):一IP数据包的各个分片的标识符相同。
标志位(3位): 第1位:没有使用。
第2位:DF位,DF=1不允许对该包进行分片,DF=0允许分片。
第3位:MF位,MF=1表示后面还有分片,MF=0表示最后一个分片。
分段偏移量(13位):本分片数据载荷在原IP包数据载荷中的相对位置,单位为8字节。
例如,一个4000字节的IP包在MTU=1500字节下的分片:
4000字节IP包的内容长3980字节,内容的第一个字节偏移量为0 。
第1个分片长1500字节,MF=1,分段偏移量0,含原包内容 1480字节;
第2个分片长1500字节,MF=1,分段偏移量185,含原包内容 1480字节;
第3个分片长1040字节,MF=0,分段偏移量370,含原包内容 1020字节
TTL:8位,每路由转发一次减1,用于防环。
协议:8位,标识上层协议。如TCP协议号6,UDP协议号17。
包头校验和:16位,因IP包头长度可变,用于IP包头完整性校验。

IP分片与重组

了解分片与重组之前我们先了解什么是MTU
MTU(最大传输单元):
链路层MTU:链路层能传的最大的帧,含链路层头部。
网络层MTU:网络层能传的最大的包,含网络层头部

为什么分片?
在主机发送或网络转发IP数据包时,当IP数据包过长(大于IP MTU)就会进行分片(简单的说报文大小超过了接口的mtu;不分片就发不出去)

能不能分片?
取决于df,df=1不能分片,df=0,可以分

接收方怎么判断需要重组?
根据标识符判断,
如果出现多个包,标识符相同;说明可能是需要重组的分片(IP分片只在目标主机上进行重组)

重组怎么排序?
偏移了0字节的是第一片
用第一片的偏移字节量+携带数据量得到下一个分片的偏移字节量

重组什么时候结束?
取决于mf
重组到发现某一个mf=0,重组结束

总结

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

浮生道一

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值