参考答案:
(1)表明数据报在网络中的寿命。由发出数据报的源点设置这个字段。其目的是防止无法交付数据报在因特网上兜圈子,白白消耗网络资源。
(2)标识字段(identification)、标志字段(Flags)、片偏移字段(Fragment offset)。
(3)通过标志字段中的MF=0、片偏移=0判断。
(4)IP数据报中的协议(Protocol)字段
(5)ICMP协议提供了这样一种机制,有关影响数据包传递的网络故障的反馈信息都由ICMP协议来处理,它让TCP等上层协议能够意识到数据包没有送达目的地。
(6)下一个报文段的序号-前一个报文段的序号。
(7)3A470F7C
(8)Windows Size窗口字段
(9)不对,端口值最大65535,能复用的范围就是1024-65535。
(10)FIN。
详细解析:
(1)生存时间字段常用的英文缩写为TTL。表明数据报在网络中的寿命。由发出数据报的源点设置这个字段。其目的是防止无法交付数据报在因特网上兜圈子,白白消耗网络资源。每经过一个路由器转发前,减去1。如果TTL=0,数据包被丢弃。(2)标识字段(identification):标识占16位。IP软件在存储器中维持一个计数器,每产生一个数据报,计数器就加1,并将此值赋予标识字段。但这个“标识”并不是序号,因为IP是无连接服务,数据报不存在按序接收的问题。当数据报长度超过MTU时就必须分片,这个标识字段的值就被复制到所有的数据报片后的表示字段中。相同的标识字段的值使分片后的各数据报片最后能正确地重装成为原来的数据报。
标志字段(Flags):标志占3位,但目前只有两位有意义。标志字段中的最低位记为MF。MF=1表示后面“还有分片”的数据报。MF=0表示这已是若干数据报片中的最后一个。标志字段中间的一位记为DF,意思是“不能分片”。只有当DF=0时,才允许分片。
片偏移字段(Fragment offset):片偏移占13位。较长的分组在分片后,某片在原分组中的相对位置。相对于用户数据字段的起点,该片从何处开始。片偏移以8个字节为偏移单位。这就是说,每个分片的长度一定是8字节的整数倍。
(3)通过标志字段中的MF=0、片偏移=0判断。
(4)IP数据报中的协议(Protocol)字段占8位,用于指定数据部分携带的消息是由哪种高级协议建立的,ICMP为1,TCP为6,UDP为17。
(5)IP网络不可靠并且不能保证信息正确传递,因此当发生问题时通知发送方是很重要的,ICMP协议提供了这样一种机制,有关影响数据包传递的网络故障的反馈信息都由ICMP协议来处理,它让TCP等上层协议能够意识到数据包没有送达目的地。
(6)序列号(Sequence Number,SEQ):该字段长度为4字节。序列号是本报文段的编号。序列号的初始值称为初始序列号,由系统随机产生。TCP是面向字节流的,对每一个字节都按顺序编号,如果一报文段的序号字段是201,而下一报文的序号字段是401开始的话,就说明第一个报文段的长度是200字节。
(7)确认号(Acknowledgment Number,ACKNUM):该字段长度为4字节。确认号是目的端期望收到的下一个报文段的序列号。
例如B正确收到了A发送过来的一个报文段,其序号字段值是3A470B7C,而数据长度是1024字节。就表明B正确收到了(3A470B7C—3A470F7B),因此B期望收到A的下一个数据序号是3A470F7C。
(8)Windows Size窗口字段:该字段长度为2字节。用来进行流量控制,单位为字节,这个值是本端期望一次接收的字节数,并通知对方。
(9)端口标识了源端和目的端的应用进程,源端和目的端的端口号与IP报头中的源端IP地址和目的端IP地址唯一确定一个TCP连接。TCP报头使用两个字节存放端口号,所以端口号的有效范围是0到65535。其中0-1023给著名应用,能复用的就是1024-65535.
(10)FIN:该字段长度为1位。释放连接标志,FIN为1时,表明发送端的数据发送完毕,要求释放连接。