ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:213.96KB ,
资源ID:7198625      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7198625.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(TCPIP包格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

TCPIP包格式.docx

1、TCPIP包格式以太网帧格式以下是各种封装:1. 以太网II封装:以太网技术的基础是以太网帧,也作标准以太网帧,也称为ARPA,即以太网II帧(最初的以太网II标准也称为DIX,由Digital,Intel和Xerox三家发起公司的首字母拼合而成)。帧格式如下:图1:以太网II报文格式下面解释以太网II帧中的各个字段: Preamble也作“Syncword”,用来同步。(在这里为10101010) Des-MAC此目的地址可以是广播地址0xFFFFFFFFFFFF;可以是基于目的节点MAC地址的特定的48比特的单播地址;或者多播地址。此MAC地址可以从协议同步期间消息的源地址字段中找到。 S

2、ou-MAC此源地址是发送方的48比特的MAC地址。 Type即“以太网类型”,此字段用于识别上层协议。(详见下文) Payload负载,即数据,包含了封装的数据(如:IP分组)。以太网II的数据有效长度范围是461500字节。 FCS此字段包含32比特的循环冗余校验(Cyclic Redundancy Check,CRC)值,用来校验损坏的帧。最初的以太网II帧格式有一些缺陷。为了允许冲突检测,10Mbits/s以太网要求分组大小最小为64字节。这就意味着如果帧长达不到标准就必须用0来填充短帧。因此,上层协议需要包含一个“长度”字段来将实际数据与填充值区分开来。幸运的是,为“以太网类型”字段

3、所分配的值0x0600XNS(施乐)、0x0800IP(Internet协议)和0x6003DECNET总是大于十进制值1500(0x05DC)这一最大帧长度。所以IEEE的802委员会对这一任务的解决方案提供了一个标准,即802.3。此方法通过以长度两个8位组的“类型/协议”字段代替同样两个8位组的“以太网类型”字段。从而将以太网II帧与802.3帧区分开来。具体如下: 如果此字段值大于十进制值1500,则此字段表示以太网类型,且是类型II。 如果此字段值小于等于十进制值1500,则此字段表示长度,且是802.3。(相见2. IEEE 802.3 LLC封装中的描述)2. IEEE 802.

4、3 LLC封装:由于在改进了以太网II帧后仍然需要一个新的分组来表示类型以识别上层协议,因此在802.3的基础帧中的“长度”字段后面又紧跟了一个逻辑链路控制首部(Logical Link Control,LLC,遵循IEEE 802.2)。帧格式如下:下面解释IEEE 802.3 LLC帧中的各个字段: Preamble同以太网II帧。(此为10101011) Des-MAC同以太网II帧。 Sou-MAC同以太网II帧。 Len即“长度”字段,此处为以太网II帧中“以太网类型”字段的替换,表示帧的长度,但是不包括前同步码(Preamble)、FCS、目的和源MAC地址以及长度字段本身等字段。

5、 DSAP(Destination Service Access Point,目标服务接入点)字节,8位比特。当此值为0xAA时,表示子网访问协议(Subnetwork Access Protocol,SNAP)。 SSAP(Source Service Access Point,来源服务接入点)字节,8位比特。当此值为0xAA时,表示子网访问协议(Subnetwork Access Protocol,SNAP)。 CTRL“控制”字段,指定了LLC帧的类型。 Payload同以太网II帧。802.3LLC的数据有效长度范围是431497字节。 FCS同以太网II帧。值须重新计算。3. IEE

6、E 802.3 SNAP封装:继承了802.3LLC的帧格式,并且添加了SNAP字段。下面解释IEEE 802.3 SNAP帧中的各个字段: Preamble同802.3LLC帧。 Des-MAC同802.3LLC帧。 Sou-MAC同802.3LLC帧。 Len同802.3LLC帧。 DSAP在此值为0xAA,表示SNAP。 SSAP在此值为0xAA。 CTRL同802.3LLC帧。 SNAP即“子网访问协议(Subnetwork Access Protocol)”,SNAP首部包括3个字节的厂商代码和2个字节的本地代码。厂商代码为0x000000时表示本地代码是一个以太网类型II以便能向后

7、兼容。这种新格式将“以太网类型”字段从它在以太网II中的原始位置向右移动的8个字节。 Payload同802.3LLC帧。802.3SNAP的数据有效长度范围是381492字节。 FCS同802.3LLC帧。值须重新计算。4. IEEE 802.1Q封装:802.1Q 的首部并非实际封入原始帧中,而是以太网II帧里,在原始帧里的MAC源地址字段与“以太网类型”字段之间添加一个32位元的域(field)。下面解释IEEE 802.1Q帧中的各个字段: Preamble同以太网II帧。 Des-MAC同以太网II帧。 Sou-MAC同以太网II帧。 802.1Q Header表示了这是一个VLAN

8、的帧,保存了VLAN的信息。(详见下文) Type同以太网II帧。 Payload同以太网II帧。数据有效长度范围是461500字节。 FCS同以太网II帧。值须重新计算。其中的802.1Q头部封装遵守如下格式: TPID标签协议识别符(Tag Protocal Identifier, TPID):一组16位元的域,用来识别802.1Q帧,其数值被设定在0x8100以用来辨别某个IEEE 802.1Q的帧为已被标签头部,因为这个域所被标定位置与以太网类型II帧中的“以太网类型”字段在未标签帧的域相同,这是为了用来区别未标签的帧。 TCI标签控制信息(Tag Control Informatio

9、n,TCI):长度为2字节,包含有PCP、CFI和VID3个字段。 PCP优先权代码点(Priority Code Point, PCP):以一组3位元的域当作IEEE 802.1P优先权的参考,从0(最低)到7(最高),用来对数据流(音讯、影像、档案等等)作传输的优先级,也被称为“服务等级(Class of Service,CoS)”。 CFI标准格式标识符(Canonical Format Indicator, CFI):1位元的域。若这个域的值为1,则MAC地指为非标准格式;若为0,则为标准格式;在以太交换器中它通常默认为0。在乙太和令牌环中,CFI用来解决两者的兼容性问题。若帧在以太端

10、中接收数据,则CFI的值必须设为1,且这个端口不能与未标签的其他端口桥接。 VID虚拟局域网识别符(VLAN Identifier, VID): 12位元的域,用来具体指出帧是属于哪个特定VLAN的。值为0时,表示帧不属于任何一个VLAN;此时,802.1Q标签仅代表优先权。12位元的值0xFFF为保留值,其他的值都可用来做为总共4094个VLAN的标识符。在桥接器上,VLAN1在管理上作为保留值。5. IEEE 802.1AD封装:双重标记(IEEE 802.1AD),也叫作QinQ,对于互联网服务提供商(ISP)是非常有用的。它允许已被打上VLAN标签的混合数据从客户端送出时ISP仍然可以

11、在内部使用VLAN。下面解释IEEE 802.1AD帧中的各个字段: Preamble同以太网II帧。 Des-MAC同以太网II帧。 Sou-MAC同以太网II帧。 802.1Q OuterTag外部标签(next to Source MAC and representing ISP VLAN)会先于内部标签(inner)被解封装。此时,一个可变的TPID在16进位值可能为9100、9200或是9300,通常作为外部标签;然而在值为88a8时会违反802.1AD而无法作为外部标签。 802.1Q InnerTag内部标签,格式同IEEE 802.1Q头部。 Type同以太网II帧。 Payl

12、oad同以太网II帧。数据有效长度范围是461500字节。FCS同以太网II帧。值须重新计算。以太类型值(16进制)对应协议0x0000 - 0x05DCIEEE 802.3 长度0x0101 0x01FF实验0x0600XEROX NS IDP0x06600x0661DLOG0x0800网际协议(IP)0x0801X.75 Internet0x0802NBS Internet0x0803ECMA Internet0x0804Chaosnet0x0805X.25 Level 30x0806地址解析协议(ARP : Address Resolution Protocol)0x0808帧中继 AR

13、P (Frame Relay ARP) RFC17010x6559原始帧中继(Raw Frame Relay) RFC17010x8035动态 DARP (DRARP:Dynamic RARP)反向地址解析协议(RARP:Reverse Address Resolution Protocol)0x8037Novell Netware IPX0x809BEtherTalk0x80D5IBM SNA Services over Ethernet0x80F3AppleTalk 地址解析协议(AARP:AppleTalk Address Resolution Protocol)0x8100以太网自动保

14、护开关(EAPS:Ethernet Automatic Protection Switching)0x8137因特网包交换(IPX:Internet Packet Exchange)0x814C简单网络管理协议(SNMP:Simple Network Management Protocol)0x86DD网际协议v6(IPv6,Internet Protocol version 6)0x8809OAM0x880B点对点协议(PPP:Point-to-Point Protocol)0x880C通用交换管理协议(GSMP:General Switch Management Protocol)0x88

15、47多协议标签交换(单播) MPLS:Multi-Protocol Label Switching )0x8848多协议标签交换(组播)(MPLS, Multi-Protocol Label Switching )0x8863以太网上的 PPP(发现阶段)(PPPoE:PPP Over Ethernet )0x8864以太网上的 PPP(PPP 会话阶段) (PPPoE,PPP Over Ethernet)0x88BB轻量级访问点协议(LWAPP:Light Weight Access Point Protocol)0x88CC链接层发现协议(LLDP:Link Layer Discovery

16、 Protocol)0x8E88局域网上的 EAP(EAPOL:EAP over LAN)0x9000配置测试协议(Loopback)0x9100VLAN 标签协议标识符(VLAN Tag Protocol Identifier)0x9200VLAN 标签协议标识符(VLAN Tag Protocol Identifier)0xFFFF保留IP包格式 版本:占4位,指IP协议的版本。通信双方使用的 IP协议版本必须一致。日前广泛使用的 IP协议版本号为 4 (即 IPv4)。IPv6 目前还处于起步阶段。 首部长度:占 4 位,可表示的最大十进制数值是 15。请注意,这个字段所表示数的单位是3

17、2位字 ( 1 个32位字长是4 字节),因此,当 IP 的首部长度为 1111 时 (即十进制的 15),首部长度就达到 60字节。当 IP 分组的首部长度不是4字节的整数倍时,必须利用最后的填充字段加以填充。因此数据部分永远在 4字节的整数倍开始,这样在实现 IP协议时较为方便。首部长度限制为 60字节的缺点是有时可能不够用。这样做的目的是希望用户尽量减少开销。最常用的首部长度就是 20 字节 (即首部长度为 0101),这时不使用任何选项。服务:占 8 位,用来获得更好的服务。这个字段在旧标准中叫做服务类型,但实际上一直没有被使用过。1998年IETF把这个字段改名为区分服务 DS (D

18、ifferentiatedServices)。只有在使用区分服务时,这个字段才起作用。 总长度:总长度指首都及数据之和的长度,单位为字节。因为总长度字段为 16位,所以数据报的最大长度为 216-1=65 535字节。 在IP层下面的每一种数据链路层都有自己的帧格式,其中包括帧格式中的数据字段的最大长度,即最大传送单元 MTU (Maximum Transfer Unit)。当一个数据报封装成链路层的帧时,此数据报的总长度 (即首部加上数据部分)一定不能超过下面的数据链路层的MTU值。 标识 (Identification):占 16位。IP软件在存储器中维持一个计数器,每产生一个数据报,计数

19、器就加 1,并将此值赋给标识字段。但这个“标识”并不是序号,因为 IP是无连接的服务,数据报不存在按序接收的问题。当数据报由于长度超过网络的 MTU 而必须分片时,这个标识字段的值就被复制到所有的数据报的标识字段中。相同的标识字段的值使分片后的各数据报片最后能正确地重装成为原来的数据报。 标志 (Flag):占3 位,但目前只有2位有意义。标志字段中的最低位记为 MF (More Fragment)。MF=1即表示后面“还有分片”的数据报。MF=0表示这已是若干数据报片 中的最后一个。标志字段中间的一位记为 DF(Dont Fragment),意思是“不能分片”。只有当 DF=0时才允许分片。

20、 片偏移:占 13位。较长的分组在分片后,某片在原分组中的相对位置。也就是说,相对用户数据字段的起点,该片从何处开始。片偏移以 8个字节为偏移单位。这就是说,每个分片的长度一定是 8字节 (64位)的整数倍。生存时间:占 8位,生存时间字段常用的英文缩写是 TTL (Time To Live),其表明数据报在网络中的寿命。由发出数据报的源点设置这个字段。其目的是防止无法交付的数据报无限制地在因特网中兜围子,因而白白消耗网络资源。最初的设计是以秒作为 TTL的单位。每经过一个路由器时,就把TTL减去数据报在路由器消耗掉的一段时间。若数据报在路由器消耗的时间小于 1 秒,就把TTL值减 1。当 T

21、TL值为 0时,就丢弃这个数据报。 协议:占 8 位,协议字段指出此数据报携带的数据是使用何种协议,以便使目的主机的IP层知道应将数据部分上交给哪个处理过程。首部检验和:占 16位。这个字段只检验数据报的首部,但不包括数据部分。这是因为数据报每经过一个路由器,都要重新计算一下首都检验和 (一些字段,如生存时间、标志、片偏移等都可能发生变化)。不检验数据部分可减少计算的工作量。 源地址:占32位。 目的地址:占 32位。2. IP数据报首部的可变部分IP首都的可变部分就是一个可选字段。选项字段用来支持排错、测量以及安全等措施,内容很丰富。此字段的长度可变,从 1 个字节到40个字节不等,取决于所

22、选择的项目。某些选项只需要 1 个字节,它只包括 1 个字节的选项代码。但还有些选项需要多个字节,这些选项一个个拼接起来,中间不需要有分隔符,最后用全0 的填充字段补齐成为 4字节的整数倍。 增加首都的可变部分是为了增加 IP 数据报的功能,但这同时也使得 IP 数据报的首部长度成为可变的。这就增加了每一个路由器处理数据报的开销。实际上这些选项很少被使用。新的 IPv6就将 IP数据报的首部长度做成固定的。TCP包格式源端口和目的端口:每个TCP段都包含源端和目的端的端口号,用于寻找发起端和拉收端应用进程。这两个值加上IP首部中的源IP地址和目的IP地址唯一确定一个TCP连接。有时,一个IP地

23、址和一个端口号也称为一个套接字(socket)。这个术语出现在最早的TCP规范(RFC793)中。套接字对(socket pair)(包含客户I P地址、客户端口号、服务器I P地址和服务器端口号的四元组)可唯一确定互联网络中每个T C P连接的双方。序列号:序列号用来标识从T C P发起端向T C P接收端发送的数据字节流,它表示在这个报文段中的第一个数据字节。如果将字节流看作在两个应用程序间的单向流动,则T C P用序列号对每个字节进行计数。序列号是32 bit的无符号数,序号到达23 21后又从0开始。确认序列号:当建立一个新的连接时, S Y N标志变1。序列号字段包含由这个主机选择的

24、该连接的初始序号ISN(Initial Sequence Number)。该主机要发送数据的第一个字节序号为这个ISN加1,因为SYN标志消耗了一个序号(FIN标志也要占用一个序号)。既然每个传输的字节都被计数,确认序号包含发送确认的一端所期望收到的下一个序号。因此,确认序号应当是上次已成功收到数据字节序号加1。只有A C K标志为1时确认序号字段才有效。发送ACK无需任何代价,因为32 bit的确认序号字段和ACK标志一样,总是TCP首部的一部分。因此,我们看到一旦一个连接建立起来,这个字段总是被设置,ACK标志也总是被设置为1。头部长度:头部长度给出首部中32 bit字的数目。需要这个值是

25、因为任选字段的长度是可变的。这个字段占4 bit,因此TCP最多有60字节的首部。然而,没有任选字段,正常的长度是20字节。URG: 紧急指针(urgent pointer)有效。ACK: 确认序号有效。PSH: 接收方应该尽快将这个报文段交给应用层。RST: 重建连接。SYN: 同步序号用来发起一个连接。FIN: 发端完成发送任务。窗口大小:TCP的流量控制由连接的每一端通过声明的窗口大小来提供。窗口大小为字节数,起始于确认序号字段指明的值,这个值是接收端正期望接收的字节。窗口大小是一个16 bit字段,因而窗口大小最大为65535字节。校验和:检验和覆盖了整个的TCP报文段: TCP首部和

26、TCP数据。这是一个强制性的字段,一定是由发端计算和存储,并由收端进行验证。TCP检验和的计算和UDP检验和的计算相似,使用一个伪头部。紧急指针:只有当URG标志置1时紧急指针才有效。紧急指针是一个正的偏移量,和序号字段中的值相加表示紧急数据最后一个字节的序号。TCP的紧急方式是发送端向另一端发送紧急数据的一种方式。可选项:最常见的可选字段是最长报文大小,又称为MSS (Maximum Segment Size)。每个连接方通常都在通信的第一个报文段(为建立连接而设置S Y N标志的那个段)中指明这个选项。它指明本端所能接收的最大长度的报文段。T C P将用户数据打包构成报文段;它发送数据后启动一个定时器;另一端对收到的数据进行确认,对失序的数据重新排序,丢弃重复数据; TCP提供端到端的流量控制,并计算和验证一个强制性的端到端检验和。许多流行的应用程序如Telnet/F T P和SMTP都使用TCP。UDP包格式UDP信宿端口:一个UDP端口是一个可读写的软件结构,内部有一个接收报文缓冲区。接收数据时,UDP软件要判断此信宿端口是否与当前使用的端口匹配,如是,则将数据报放入相应的接收队列,否则,抛弃该数据并向信源端口发送“端口不可达”的差错消息报文。长度:以字节计的整个报文长度,最小为8,只有报头。校验和:它是一个可选项,以提高效率。TCP/IP 包格式

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1