前段时间的工作大多与通信协议相关,随着协议相关工作的不断深入,相关数据包的分析占据了不少工作时间。在数据报文分析中,发现大学期间IP协议内容已经重新还给了老师,相关知识完全没有了印象,这篇文章算是一篇复习文,对相关IP协议进行重学习。
- IPv4 协议详解
- IPv6 协议详解
- IPv4 IPv6 报文对比
- IPv4 协议简介
- IPv4 地址数量
- IPv4 协议特点
- IPv4 报文结构
- IPv4 报文最大长度
1.1 IPv4 简介
是网际协议的第四个修订版本,也是该协议第一个被广泛部署和使用的版本。其在1981年9月由IETF发布的RFC791中被描述,是一种,可以。在数据传输方面,IPv4协议会,但。
1.2 IPv4 地址数量
1.3 IPv4 协议特点
- :
IPv4是一种面向无连接的协议,每个数据包都是独立的,数据包的传输不需要建立和维护连接状态。这使得IPv4的数据包传输速度较快,但同时也增加了数据包传输的可靠性和安全性方面的挑战。 - :
IPv4协议采用分组交换的技术,将数据分割成一系列小的数据包进行传输,每个数据包都包含了目标地址和源地址等必要的控制信息,这使得数据传输更加高效和灵活。同时,IPv4协议还支持多种传输协议,如TCP、UDP等,可以适应不同的数据传输需求。 - :
IPv4协议的设计非常简单、可靠、稳定,已经被广泛应用于互联网和局域网等各种网络环境中,具有良好的兼容性和稳定性。 - :
IPv4地址是一个32位的二进制数,通常用点分十进制表示法来表示,被分为四段,每段可以取0-255之间的整数。IPv4地址的短缺成为了一个问题,因此引入了私有地址和网络地址转换等技术来缓解IPv4地址短缺的问题。 - :
IPv4协议的安全性较低,容易受到各种网络攻击,如IP欺骗、数据包伪造等。因此,为了提高IPv4协议的安全性,通常需要通过路由器、防火墙等网络安全设备来进行加强和保护。
1.4 IPv4 报文结构
IPv4报文的最大长度是,这个长度是由IP报文中的字段决定的,下图为IPv4报文的结构:
- :
占用,表示IP协议的版本号,IPv4的值为4。 - :
占用,表示IP首部的长度,首部长度说明首部有多少32位字(4字节,也就是说单位为)。这个字段的最小值是5(二进制0101),相当于;最大十进制值是15,相当于 - :
占用,表示IP报文的服务类型,用于指定QoS(Quality of Service)和流量控制等参数。 - :
占用,表示整个IP数据报的长度,包括IP首部和数据部分,单位为字节。这个字段的最小值是20(20字节首部+0字节数据),最大值是2^16-1=65,535。 - :
占用,这个字段主要被用来唯一地标识一个报文的所有分片,因为分片不一定按序到达,所以在重组时需要知道分片所属的报文。每产生一个数据报,计数器加1,并赋值给此字段。 - :
占用,用于标识IP分片的状态。- 位0:保留,必须为0;
- 位1:禁止分片(Don’t Fragment,DF),当DF=0时才允许分片;
- 位2:更多分片(More Fragment,MF),MF=1代表后面还有分片,MF=0 代表已经是最后一个分片。
- :
占用,用于表示分片相对于原始数据报的偏移量。 - :
占用,表示数据报在网络中最多可以被经过的路由器数量,用于防止数据报在网络中无限循环。 - :
占用,表示数据报中的数据部分使用的协议类型,例如TCP、UDP、ICMP等。 - :
占用,用于检测IP头部在传输过程中是否出现了错误。 - :
占用,表示数据报的发送者IP地址。 - :
占用,表示数据报的接收者IP地址。
附加的首部字段可选的跟在目的地址之后,但这并不被经常使用,。。
1.5 IPv4 报文长度
IPv4报文的最大长度是,这个长度是由IP报文中的字段决定的。该字段的最大值是。
需要注意的是,在实际情况下,通常,另外,由于网络传输存在,,一般为,因此。
网络传输,它的。不同的网络传输协议和设备可能会有不同的MTU大小限制。
是最常见的网络传输协议之一,其。在以太网上传输的数据包如果超过1500字节,就会被分割成多个小块进行传输。其他网络传输协议的MTU大小可能会有所不同,例如PPP协议的MTU大小通常为1480字节,ATM网络的MTU大小通常为48字节等。
此外,MTU还受到网络设备的配置影响。例如,路由器和交换机等网络设备可以通过配置MTU大小来优化网络传输效率和减少延迟。在实际应用中,为了保证网络传输的稳定性和效率,需要根据具体的网络环境和需求来设置MTU大小,并进行必要的优化和调整。
- IPv6 协议简介
- IPv6 地址数量
- IPv6 协议特点
- IPv6 报文结构
- IPv6 载荷长度
2.1 IPv6 简介
是网际协议的最新版本,主要是,同时它也在其他方面对于IPv4有许多改进,协议由1998年12月公布的 RFC2960 定义。
2.2 IPv6 地址数量
IPv6地址总长度为,,每组以形式表示,组间用冒号分隔。例如:
因为使用表示,其。这个数量比IPv4地址空间(43亿个地址)大得多,可以满足未来数十年互联网的发展需求。IPv6地址空间的巨大规模不仅可以支持更多的设备连接到互联网,而且还可以提供更好的网络安全性和性能。
2.3 IPv6 协议特点
- :
IPv6地址使用128位长度表示,可以支持约3.4×10²³(2^128)个唯一地址,这个数量比IPv4地址空间(43亿个地址)大得多,可以满足未来数十年互联网的发展需求。 - :
IPv6协议引入了一些新的寻址和路由机制,包括多播寻址、任播寻址和移动IPv6等,使得网络路由更加高效和灵活。 - :
IPv6协议头部长度固定为40字节,相比于IPv4头部结构更加简化,可以提高网络数据传输效率。 - :
IPv6定义了许多可选的的扩展首部,不仅可提供比IPv4更多的功能,而且还可以提高路由器的处理效率,因为路由器对逐跳扩展首部外的其他扩展首部都不进行处理。 - :
IPv6协议提供了更好的安全性和隐私保护,包括IPsec协议的强制支持、地址隐私扩展等,可以有效地保护网络和用户的隐私。 - :
IPv6协议引入了流量控制和服务质量(QoS)机制,可以更好地管理网络流量和提供不同的服务质量,提高用户体验。
2.4 IPv6 报文结构
数据报为,在IPv6中所有的扩展首部并不属于IPv6数据报的首部,扩展首部与其后面的数据部分合起来构成。
- :
占用,用于指示报文使用的IPv6协议版本号,固定为6。 - :
占用,用于区分不同的IPv6数据报的类别或优先级。。 - :
占用,IPv6提出了流的抽象概念,就是因特网上从特定源点到特定终点(单播或多播)的一系列IPv6数据报(如实时音视频数据的传送)。所有属于同一个流的IPv6数据报都具有同样的流量标签()。因此,流标号对于实时音视频数据的传送特别有用,对于传统的非实时数据,流标号用处不大。 - :
,用于指示IPv6报文中载荷(Payload)的长度,。 - :
,用于指示IPv6头部后面的下一个报头类型,如TCP报头、UDP报头、ICMPv6报头等。 - :
,类似于IPv4中的生存时间(TTL)字段,用于限制报文在网络中经过的最大跳数。 - :
,表示发送端的IPv6地址。 - :
,表示接收端的IPv6地址。
2.5 IPv6 载荷长度
:
- IPv6报文有效载荷长度主要由字段决定,字段占用,用于表示载荷Payload的长度,即除去IPv6报头(固定为40字节)之外的部分。鉴于此字段为16比特,其最大值为,即。
- 然而,IPv6还支持一种叫做的选项。当使用这个选项时,载荷长度可以通过一个名为 Jumbo Payload Option 的扩展报头表示,该扩展报头中有一个32比特(4字节)的字段表示载荷长度。因此,最大载荷长度可以达到,即字节。
尽管最大长度可达到,但其承载的传输层协议数据(如TCP、UDP)仍然受到IPv6网络中,因此。
数据报为,所有的扩展首部并不属于IPv6数据报的首部,。
由于IPv6地址的长度扩展到了128比特位,使得IPv6数据报基本首部的长度增大到了40字节,比IPv4数据报首部固定部分的长度(20字节)增大了20字节。
其相比于IPv4报文:
- :IPv6数据报的首部长度是。
- :IPv6数据报首部中的流量类别和流量标签字段实现了区分服务字段的功能。
- :改用有效载荷长度字段。这是因为IPv6数据报的首部长度是固定的40字节,只有其后面的有效载荷长度是可变的。
- :这些功能已包含在IPv6数据报的分片扩展首部中。
- :这样名称与作用更加一致。
- :改用下一个首部字段。
- :可以加快路由器处理IPv6数据报的速度。
- :改用扩展首部来实现选项功能。
版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/haskellbc/39725.html