TCP报文段的格式如图8-17所示。图8-17 TCP报文段的格式1.TCP源端口号TCP源端口号长度为16位,用于标识发送方通信进程的端口。目的端在收到TCP报文段后,可以用源端口号和源IP地址标识报文的返回地址。通过TCP报文段首部的窗口刻度选项,它的值可以按比例变化,以提供更大的窗口。校验和覆盖了整个的TCP报文段的首部和数据区。图8-18 TCP选项格式12.填充填充字段的长度不定,用于填充以保证TCP头部的长度为32位的整数倍,值全为0。......
2023-11-20
IP协议是TCP/IP协议族中最为核心的协议,前面我们已经讨论过,它提供不可靠、无连接的数据报传输服务。IP层提供的服务是通过IP层对数据报的封装与拆封来实现的。IP数据报的格式分为报头区和数据区两大部分,其中报头区是为了正确传输高层数据而加的各种控制信息;数据区包括高层协议需要传输的数据。IP数据报的格式如图8-8所示。
图8-8中表示的数据,最高位在左边,记为0位;最低位在右边,记为31位。在网络中传输数据时,先传输0~7位,其次是8~15位,然后传输16~23位,最后传输24~31位。由于TCP/IP协议头部中所有的二进制数在网络中传输时都要求以这种顺序进行,因此把它称为网络字节顺序。在进行程序设计时,以其他形式存储的二进制数必须在传输数据之前,把头部转换成网络字节顺序。
图8-8 IP数据报格式
1.IP数据报各字段的功能
IP数据报中的每一个域包含了IP报文所携带的一些信息,正是用这些信息来完成IP协议功能的,现说明如下。
(1)版本号
版本号占用4位二进制数,表示该IP数据报使用的是哪个版本的IP协议。目前在In-ternet中使用的TCP/IP协议族中,IP协议的版本号为4,所以也常称为IPv4。下一个IP协议的版本号为6,即IPv6,当前正在试验中。
(2)头长度
头长度用4位二进制数表示,此域指出整个报头的长度(包括选项),该长度是以32位二进制数为一个计数单位的,接收端通过此域可以计算出报文头在何处结束及从何处开始读数据。普通IP数据报(没有任何选项)该字段的值是5(即20个字节的长度)。
(3)服务类型(Type Of Service,TOS)
服务类型用8位二进制数表示,规定对本数据报的处理方式。
(4)总长度
总长度用16位二进制数表示,总长度字段是指整个IP数据报的长度,以字节为单位。利用头部长度字段和总长度字段,就可以计算出IP数据报中数据内容的起始位置和长度。由于该字段长度为16位二进制数,所以从理论上来说,IP数据报最长可达65535字节(实际由于受物理网络的限制,要比这个数值小得多)。
(5)生存时间(Time To Live,TTL)
生存时间用8位二进制数表示,它指定了数据报可以在网络中传输的最长时间。在实际应用中为了简化处理过程,把生存时间字段设置成了数据报可以经过的最大路由器数。TTL的初始值由源主机设置(通常为32、64、128或者256),一旦经过一个处理它的路由器,它的值就减去1。当该字段的值减为0时,数据报就被丢弃,并发送ICMP报文(本书的8.4节介绍)通知源主机,这样可以防止进入一个循环回路时,数据报无休止地传输。
(6)上层协议标识
上层协议标识用8位二进制数表示,从图8-4可知,IP协议可以承载多种上层协议,目的端根据协议标识,就可以把收到的IP数据报送至TCP或UDP等处理此报文的上层协议。表8-2给出了常用的网际协议编号。(www.chuimin.cn)
表8-2 常用网际协议编号
(7)头部校验和
头部校验和用16位二进制数表示,这个域用于协议头数据有效性的校验,可以保证IP报头区在传输时的正确性和完整性。
头部校验和字段是根据IP协议头部计算出的校验和码,它不对头部后面的数据进行计算。
(8)源IP地址
源IP地址是用32位二进制数表示的发送端IP地址。
(9)目的IP地址
目的IP地址是用32位二进制数表示的目的端IP地址。
2.IP数据报分片与重组
(1)最大传输单元
IP数据报在互联网上传输,可能要经过多个物理网络才能从源端传输到目的端。不同的网络由于链路层和介质的物理特性不同,因此在进行数据传输时,对数据帧的最大长度都有一个限制,这个限制值称为最大传输单元(Maximum Transmission Unit,MTU)。
(2)分片
当一个IP数据报要通过链路层进行传输时,如果IP数据报的长度比链路层MTU的值大,那么IP层就需要对将要发送的IP数据报进行分片,把一个IP数据报分成若干长度小于或等于链路层MTU的IP数据报,才能经过链路层进行传输。这种把一个数据报为了适合网络传输而分成多个数据报的过程称为分片(Fragmentation)。一定要注意,被分片后的各个IP数据报可能经过不同的路径到达目的主机。
(3)重组
当分了片的IP数据报被传输到最终目的主机时,目的主机要对收到的各分片重新进行组装,以恢复成源主机发送时的IP数据报,这个过程称为IP数据报的重组。
有关现场总线与工业以太网及其应用技术的文章
TCP报文段的格式如图8-17所示。图8-17 TCP报文段的格式1.TCP源端口号TCP源端口号长度为16位,用于标识发送方通信进程的端口。目的端在收到TCP报文段后,可以用源端口号和源IP地址标识报文的返回地址。通过TCP报文段首部的窗口刻度选项,它的值可以按比例变化,以提供更大的窗口。校验和覆盖了整个的TCP报文段的首部和数据区。图8-18 TCP选项格式12.填充填充字段的长度不定,用于填充以保证TCP头部的长度为32位的整数倍,值全为0。......
2023-11-20
IP 数据报由首部和数据部分组成。该字段的最小值为5,即IP 数据报的首部最小长度为20 个字节。表6.4IP 数据报中与分片有关的字段值生存时间TTL生存时间占8 位。IP 数据报首部检验和的计算过程如图6.5所示。图6.5IP 数据报首部检验和计算过程源地址和目的地址这两个字段指出了IP 分组的来源主机和目的主机,各占IP 数据报首部的32 位。......
2023-10-19
Ethernet/IP的一个数据包最多可达1500 B,数据传输速率达10/100 Mbit/s,因而能实现大量数据的高速传输。基于Ethernet TCP或UDP IP的Ethernet/IP是工业自动化数据通信的一个扩展,这里的IP表示为Industrial Protocol。为了减少Ethernet/IP在各种现场设备之间传输的复杂性,Ethernet/IP预先制定了一些设备的标准制定,如气动设备等不同类型的规定。目前,CIP协议进行了以太网标准实时性和安全总线的实施工作、采用IEEE 1588标准的分散式控制器同步机制的CIPsync和基于Ethernet/IP的技术结合安全机制实现的CIPSafety安全控制等。......
2023-11-22
也就是说,一个IP地址由网络号和主机号两部分组成,网络号标识互联网中的一个特定网络,主机号标识在该网络中的一台特定主机。图8-5 IP地址结构2.IP地址的表示格式Internet现在使用的IP协议是IPv4(第四版),它使用32位二进制数表示一个IP地址,在进行程序设计时一般用长整型。IP地址的不同表示法见表8-1。这样互联网中最多只能有255个网络。该方案中用IP地址高位字节的若干位来表示不同类型的网络,以适应大型、中型、小型网络对IP地址的需求。......
2023-11-20
图2.13IP数据报的格式图从图2.13可看出,一个IP数据报由首部和数据两部分组成。服务类型字段的前3个比特表示优先级,它可使数据报具有8个优先级中的一个。总长度字段为16bit,因此数据报的最大长度为65535字节。MF=0表示这已是若干数据报段中的最后一个。路由器在检测到这一安全任选项目时,就要使该数据报不要离开安全的环境。但如表已填满,则不填入自己的IP地址,而仅仅转发此数据报。......
2023-10-18
在TCP/IP体系中,网络层包含5个协议:IP、ARP、RARP、ICMP和IGMP。TCP/IP使用IP地址识别网络中的计算机,每台计算机必须拥有惟一的IP地址。TCP/IP采用分组交换方式的通信方式。IP地址和子网掩码是TCP/IP网络中的重要概念,它们的共同作用是标识网络中不同的计算机及识别计算机正在使用的网络。......
2023-08-29
ARP报文格式如图8-14所示。图8-13 ARP报文的以太网封装格式图8-14 ARP报文格式ARP报文格式说明如下:硬件类型硬件类型字段占2个字节,表示发送者硬件地址的类型。协议地址为IP地址时,它的值为0x0800。该字段指出4种操作报文类型:值为1时表示ARP请求报文,值为2时表示ARP应答报文;值为3时表示RARP请求报文;值为4时表示RARP应答报文。目的方硬件地址和目的方协议地址该地址长度由硬件地址长度字段和协议地址长度字段指定。......
2023-11-20
由于这些原因,可以说TCP/IP互联网层和OSI网络层在功能上非常相似。图2-21 TCP/IP模型中的协议与网络3.应用层TCP/IP模型没有会话层和表示层。......
2023-11-22
相关推荐