网络协议:IP

一 IP协议的主要功能

#1 寻址和路由

#2 传递服务

#3 数据报分片和重组

二 IP协议的特点

2.1无连接

在发送数据包之前,不会和对方建立会话。即不关心对方时候可以接收到这个数据。

2.2不可靠

指的是IP协议不能保证IP数据可以准确达到接收端,他只承诺尽最大努力交付。一旦检测到数据发送失败,就会通知上层协议,不是自己尝试重传。

三 IP协议数据报格式

发送格式:

IP数据报的格式主要分为两部分:一部分叫做首部;一部分叫做数据。

3.1 版本(version)

版本: 占用4位,指的是IP协议的版本,目前IP协议版本号为4,0100即IPv4。在传输的时候,版本一定要对应,如果发送端是IPv4协议,但是接收端使用的是IPv6,如果没有特殊的协议转换机制,那么这个数据报就会被丢弃。

3.2 首部长度(header length)

首部长度: 占用4位,即最大允许(1111)15个单位,一个单位表示4个字节,即最多允许(15 * 4)60字节。也就是意味着IP协议首部长度最多允许60字节。

我们知道首部分为固定部分和可变部分,固定部分长度是((0101=5)*4 )20字节,那么可变部分最多也就允许(60-20)=40字节

3.3 服务类型(ToS)或者服务质量(Qos)

服务类型: 8位表示,用来获得更好的服务。

D: Delay,如果该位是1,表示低延迟

T:Troughput, 如果该位是1,表示要求吞吐量高

R: Reliability,如果该位是1,表示要求传输可靠

C: Cost,如果该位是1,表示成本最低

3.4 总长度(total length)

总长度: 16位表示,即允许2个字节表示,即最多允许65535字节

总长度 = 首部长度+数据长度

我们知道首部最多允许60字节,所以数据部分最多允许(65535-60)=65475字节

3.5 标识(identification)

占用16位,是一个计数器,用来产生数据报的标识。同一数据报的分片使用同一个标识。

如果当数据较大的时候,不能一次性传输到目的地,需要将数据包分片运输,然后在目的地在组合数据报,但是我们怎么知道将哪些片进行组合呢才是原来的数据报呢,所以只要标识相同,我们就可以根据这个标识来组合数据报。

3.6 标志(flags)

占用3位。是对数据报分段传输的描述或者说明。

D: 表示 Don’t fragment, 1 表示分片;0表示不分片

M: 表示More fragment: 是否还有更多的分片,1表示有;0表示没有

3.7 片偏移(fragment offset)

片偏移: 占用13位,片在原分组中相对位置。

如果数据报不需要分片的时候,可以不用设置这个字段;这个字段是当分组需要分片的时候,在组装的时候我们可以知道这个分片在原分组中的相对位置。

3.8 生存时间(TTL)

生存时间: 为了限制数据报在网络中生存时间(比如路由环路的问题),其最初单位是秒,现在都改成了跳数作为TTL单位,数据每经过一个路由器则TTL值减1。

3.9 协议(protocol)

上层协议: 比如TCP(6), UDP(17),IMCP等等

3.10 首部校验和(header checksum)

3.11 源IP地址

发送端的IP地址,占用32位

3.12 目标IP地址

目的地的IP地址,占用32位

四 分片和MTU

4.1 MTU

每一种物理网络都会规定链路层数据帧的最大长度,称为链路层MTU(Maximum Transmission Unit).

4.2分片

IP协议在传输数据包时,若IP数据报加上数据帧头部后长度大于MTU,则将数据报文分为若干分片进行传输,并在目标系统中进行重组

如果数据报太大,路由器或者交换机等网络设备无法处理这么大数据,就会将数据报分成多个片传输,然后在目标机器在将分段重组

分片后形式:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

莫言静好、

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

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

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

打赏作者

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

抵扣说明:

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

余额充值