TCPIP几种协议数据报格式简介.pdf

TCPIP几种协议数据报格式简介.pdf

ID:52244105

大小:208.46 KB

页数:5页

时间:2020-03-25

TCPIP几种协议数据报格式简介.pdf_第1页
TCPIP几种协议数据报格式简介.pdf_第2页
TCPIP几种协议数据报格式简介.pdf_第3页
TCPIP几种协议数据报格式简介.pdf_第4页
TCPIP几种协议数据报格式简介.pdf_第5页
资源描述:

《TCPIP几种协议数据报格式简介.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、TCP/IP协议是一个比较复杂的协议集,有很多专业书籍介绍。在此,我仅介绍其与编程密切相关的部分:以太网上TCP/IP协议的分层结构及其报文格式。我们知道TCP/IP协议采用分层结构,其分层模型及协议如下表:应用层HTTP、Telnet、FTP、SMTP、SNMP(Application)传输层TCP、UDP(Transport)网间网层IP【ARP、RARP、ICMP】(Internet)网络接口层Ethernet、X.25、SLIP、PPP(Network)协议采用分层结构,因此,数据报文也采用分层封装的方法。下面以应用最广泛的以太网为

2、例说明其数据报文分层封装,如下图所示:任何通讯协议都有独特的报文格式,TCP/IP协议也不例外。对于通讯协议编程,我们首先要清楚其报文格式。由于TCP/IP协议采用分层模型,各层都有专用的报头,以下就简单介绍以太网下TCP/IP各层报文格式。ò以太网帧格式如下图:8字节的前导用于帧同步,CRC域用于帧校验。这些用户不必关心其由网卡芯片自动添加。目的地址和源地址是指网卡的物理地址,即MAC地址,具有唯一性。帧类型或协议类型是指数据包的高级协议,如0x0806表示ARP协议,0x0800表示IP协议等。òARP/RARP(地址解析/反向地址解析

3、)报文格式如下图:“硬件类型”域指发送者本机网络接口类型(值“1”代表以太网)。“协议类型”域指发送者所提供/请求的高级协议地址类型(“0x0800”代表IP协议)。“操作”域指出本报文的类型(“1”为ARP请求,“2”为ARP响应,“3”为RARP请求,“4”为RARP响应)。òIP数据报头格式如下图:IP数据报中依次包括以下信息:1、4位版本Version。该部分占4个BIT位。一般为4(IPv4)2、4位包长度HeaderLength。该部分占4个BIT位,单位为4个字节,因此,一个IP包头的长度最长为“1111”,即15*4=60个

4、字节。3、8位服务类型TypeofService,该部分用二个十六进制值来表示,共占8个BIT。8个BIT的含义是:000前三位不用0表示最小时延,如Telnet服务使用该位0表示吞吐量,如FTP服务使用该位0表示可靠性,如SNMP服务使用该位0表示最小代价0不用4、16位总长度TotalLength。该部分占16个BIT,单位为Byte。由此可见,一个IP数据包的最大长度为2的16次方减1,即:65535个字节。因此,在以太网中能够传输的最大IP数据包为65535个字节。5、16位标识号Identification。该部分占16个BIT,

5、以十进制数表示。6、3位Flags,表示片标志,占3个BIT。各位含义分别为:第一个“0”不用,第二个“0”为分片标志位,“1”表示分片,“0”表示不分版本。第三个0为是否最后一片标志位,0表示最后一片,1表示还有更多的片。7、13位偏移FragmentOffset。该部分占13个BIT。8、8位生存时间TimetoLive。该部分占8个BIT。9、8位协议类型Proctol。几种协议类型TCP:6;UDP:17;ICMP:1。10、16位包头校验和HeaderChecksun。该部分占16个BIT,用十六进制表示。11、32位源IP地址S

6、ourceAddres。该部分占32个BIT。12、32位目标IP地址DestinationAddres。该部分占32个BIT。13、选型NoOption。当需要记录路由时才使用该选项。。òICMP(网间网控制报文协议)协议ICMP应用广泛。在此仅给出最常见的回应请求与应答报文格式,用户命令ping便是利用此报文来测试信宿机的可到达性。报文格式如下图所示:类型0为回应应答报文,8为回应请求报文。整个数据包均参与检验。注意ICMP封装在IP数据包里传送。òUDP报文格式如下图:òTCP报文格式如下图:TCP是面向连接的可靠数据传输协议,因此比

7、较复杂,在此仅作简单介绍。“序号”指数据在发送端数据流中的位置。“确认号”指出本机希望下一个接收的字节的序号。与IP校验不同的是TCP,UDP校验采用伪头标加整个报文一同校验的方法。TCP协议工作原理另行介绍。TCP数据报中依次包括以下信息:1、16位源端口SourcePort。该部分占16个BIT。通过此值,可以看出发起连接的计算机源端口号。2、16位目的端口DestinationPort。该部分占16个BIT。通过此值,可以看出要登录的目的端口号。3、32位序列号InitialSequenceNumber。表示初始连接的请求号,即SEQ

8、值。该部分占32个BIT。4、32位确认号NextExpectedSEQNumbe。对方返回的ACK值。该部分占32个BIT。5、4位数据偏移DataOffset。表示数据偏移的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。