IP包格式详解解析课件_第1页
IP包格式详解解析课件_第2页
IP包格式详解解析课件_第3页
IP包格式详解解析课件_第4页
IP包格式详解解析课件_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、专题一IPV4协议应用第1页,共44页。一、IP数据包格式(1)头部+数据部分第2页,共44页。其中头部又包含一个20字节的定长部分和一个可选的变长部分.(一)头部组成 1、vesion(版本)取值为:IPv4: 4, IPv6: 6 。 第3页,共44页。2、IHL(首部长度) 可表示的最大十进制数值是15。请注意,这个字段所表示数的单位是32位字长(1个32位字长是4字节),因此,当IP的首部长度为1111时(即十进制的15),首部长度就达到60字节。当IP分组的首部长度不是4字节的整数倍时,必须利用最后的填充字段加以填充。因此数据部分永远在4字节的整数倍开始,这样在实现IP协议时较为方便

2、。首部长度限制为60 字节的缺点是有时可能不够用。但这样做是希望用户尽量减少开销。最常用的首部长度就是20字节(即首部长度为0101),这时不使用任何选项。第4页,共44页。举例第5页,共44页。3、区分服务(DS)一共8个bit位,从左到右依次为PPPDTRCU,其中包含4个标志D,T,R,C(延迟,吞吐量,可靠性,最小费用) 和一位保留位。PPP:表示IP封包的优先度D:若为0表示一般延迟,为1低延迟T:为0表示一般传输量,为1表示高传输量R:若为0表示为一般可靠度,为1高可靠度U:保留位,一般未使用第6页,共44页。 4、总长度: 即首部+数据部分的长度,它是一个数值。单位是字节,总长度

3、为16位,最长为:216-1=65535字节, 实际上决定于MTU(最大传输单元),对以太网为1500字节。若包太长,超过了MTU的值,则需要切割,即分片第7页,共44页。 5、标识(Identification)的用途 是让目标主机确定一个新的数据段属于哪个数据包,同一个数据报的分段有相同的标志值.当IP被重组时,每个来自同一笔数据的小IP就得要有个识别码以告知接收端这些小IP其实来自同一个封包才行。第8页,共44页。6、标志(Flags)该地方的内容为0D*DF:若为0表示可以分段,若为1表示不可分段MF:若为0表示此IP为最后分段,若为1表示非最后分段。第9页,共44页。7、分段偏移表示

4、目前这个IP分段在原始的IP封包中所占的位置,有点像序号,有这个序号才能将所有的小IP分段组合成为原本的IP封包大少第10页,共44页。8、TTL域,存活周期,是一个限制分组生存期的计数器.计数时间为秒,一共占8位,所以最大生存期为255(秒/点)通常为64。当他递减到0时,路由器给源主机发送一个警告分组,原分组被丢弃.这样可以避免数据报长时间存在网络中.TTL=8TTL=7TTL=6第11页,共44页。9、协议类型IP内的号码协议名称1ICMP2IGMP3GGP4IP6TCP8EGP17UDP第12页,共44页。10、头部校验和,当数据到达时,头部所有的16位累加起来,再取结果的补码,其结果

5、应该为0. 11、32位的源地址和32位的目标地址, 12、选项IP首部的长度必须是4个字节的整数倍,如果选项长度不是4的整数倍,必须填充数据0。第13页,共44页。6、分片(Fragmentation)及重组MTU(Maximum Transfer Unit)MTU=1500MTU=1500MTU=576IP包,长度为768 DF = 0X.25或拨号线路以太网思考:如DF=1,怎么办?第14页,共44页。分段数据(1400字节)分组头MTU=620字节分组头分组头分组头数据(600字节)数据(600字节)数据200字节段偏移=0段偏移=75段偏移=150第15页,共44页。分片实例第16页

6、,共44页。 选项都是以一个8位的选项开始的,每个选项由三部分组成:一个字节的选项码、一个字节的长度、多个字节所构成的选项数据,长度由前一部分决定。不同的选项码位的数字代表不同的意义,其代表意义如下: 第0位代表:拷贝类(Copy)。用于控制网关对数据包分片时对本项的处理,“1”将本选项拷贝到所有的分片中;“0”仅将本选项拷贝第一个分片中。第1、2位代表:选项类(Option Class).第37位:目前定义了6种类型,其中如定义为00111代表记录路由,该选项让数据包把从源节点到目的节点所经过的各路由填上其IP地址.第17页,共44页。第讲 ARP和RARP应用第18页,共44页。回顾以太网

7、数据包发送格式如下:第19页,共44页。 在以太网中,上层运行的是IP协议, 当一台主机把以太网数据帧发送到位于同一局域网上的另一台主机时,是根据48 bit的以太网地址来确定目的接口的。即下层传输地址使用MAC地址表示。 我们使用SOCKET程序,只是关心IP地址。它们二者是怎样相对应呢?第20页,共44页。 地址解析为这两种不同的地址形式提供映射:32 bit的IP地址和数据链路层使用的任何类型的地址。(ARP 和RARP)第21页,共44页。一:基本概念 ARP理论的基础是:每个网络接口有一个硬件地址(一个48 bit的值,标识不同的以太网或令牌环网络接口)。在硬件层次上进行的数据帧交换

8、必须有正确的接口地址。但是,TCP/IP有自己的地址:32 bit的IP地址。知道主机的IP地址并不能让内核发送一帧数据给主机。内核(如以太网驱动程序)必须知道目的端的硬件地址才能发送数据。ARP的功能是在32 bitIP地址和采用不同网络技术的硬件地址之间提供动态映射。 第22页,共44页。 ARP为IP地址到对应的硬件地址之间提供动态映射。这个过程一般应用程序会自动完成的,用户并不知道。 RARP是被那些没有磁盘驱动器的系统使用,它需要系统管理员进行手工设置。 第23页,共44页。第24页,共44页。地址转换规程当链路层要封装网络层分组时,它需要知道目的物理地址。首先,每个主机都有ARP缓

9、存,用来存放一些IP地址与MAC地址的对应关系。主机根据分组头上的目的IP地址查阅自己的ARP缓存,如果没查到,就用广播地址发送ARP请求。被请求的IP地址所对应的主机返回一个ARP响应。主机收到响应后,就可发送数据帧,并将该IP地址与MAC地址对存放在ARP缓存中。第25页,共44页。Proxy ARP 如果目的IP地址是子网外的,显然它不可能收到ARP请求,这时有两种方案:路由器有ARP代理功能,它代理子网外的主机响应ARP请求。主机通过识别目的IP地址的网络号,知道它是子网外的主机,直接发给缺省路由器第26页,共44页。ROUTERStn.AStn.BStn.DStn.CMAC R1NE

10、T N1MAC R2NET N2Station B wants to send a frame to Station DOne Way Using Router with Proxy ARPStation B Arps for Station DRouter Proxy ARP responds with MAC address of R1Station B transmits frame with SourceMAC=MB, SourceNetwork=N1B, DestinationMAC=R1, DestinationNetwork=N2DRouter forwards frame wi

11、th SourceMAC=R2, SourceNetwork=N1B, DestinationMAC=MD, DestinationNetwork=N2DSecond Way Station knows R1 is the designated Router for N2第27页,共44页。三: ARP的分组格式 在以太网上解析IP地址时,ARP请求和回答分组的格式如图所示。(ARP可以用于其它类型的网络,可以解析IP地址以外的地址。紧跟着帧类型字段的前四个字段指定了最后四个字段的类型和长度。) 第28页,共44页。第29页,共44页。 以太网报头中的前两个字段是以太网的源地址和目的地址。目的

12、地址为全1的特殊地址是广播地址。电缆上的所有以太网接口都要接收广播的数据帧。 2个字节长的以太网帧类型表示后面数据的类型。对于ARP请求或回答来说,该字段的值为0 x0806。 形容词hardware(硬件)和protocol(协议)用来描述ARP分组中的各个字段。例如,一个ARP请求分组询问协议地址(这里是IP地址)对应的硬件地址(这里是以太网地址)。 第30页,共44页。 硬件类型字段表示硬件地址的类型。它的值为1即表示以太网地址。协议类型字段表示要映射的协议地址类型。它的值为0 x0800即表示IP地址。它的值与包含IP数据报的以太网数据帧中的类型字段的值相同,这是有意设计的。 接下来的

13、两个1字节的字段,硬件地址长度和协议地址长度分别指出硬件地址和协议地址的长度,以字节为单位。对于以太网上IP地址的ARP请求或回答来说,它们的值分别为6和4。 第31页,共44页。操作字段指出四种操作类型,它们是ARP请求(值为1),ARP回答(值为2),RARP请求(值为3),RARP回答(值为4)。这个字段必需的,因为ARP请求和ARP回答的帧类型字段值是相同的。 接下来的四个字段是发送端的硬件地址(在本例中是以太网地址),发送端的协议地址(IP地址),目的端的硬件地址,目的端的协议地址。注意,这里有一些重复信息:在以太网的数据帧报头中和ARP请求数据帧中都有发送端的硬件地址。 第32页,

14、共44页。 对于一个ARP请求来说,除目的端硬件地址外的所有其他的字段都有填充值。当系统收到一份目的端为本机的ARP请求报文后,它就把硬件地址填进去,然后用两个目的端地址分别替换两个发送端地址,并把操作字段置为2,最后把它发送回去。第33页,共44页。物理帧头 DLC Header字段长度(Byte)默认值备注接收方MAC6广播时,为 ff-ff-ff-ff-ff-ff发送方MAC6Ethertype20 x08060 x0806是ARP帧的类型值第34页,共44页。ARP帧的格式 字段长度(Byte)默认值备注硬件类型20 x1以太网类型值上层协议类型20 x0800上层协议为IP协议MAC

15、地址长度10 x6以太网MAC地址长度为 6IP地址长度10 x4IP地址长度为 4操作码20 x1表示ARP请求包,0 x2表示应答包发送方MAC6发送方IP4接收方MAC6接收方IP4填充数据18因为物理帧最小长度为64字节,前面的42字节再加上4个CRC校验字节,还差18个字节第35页,共44页。ARP包的填充 电脑MAC地址为 aa-aa-aa-aa-aa-aa,IP为 192.168.0.1我们想要查询 192.168.0.99的MAC地址,应该怎么来做呢?第36页,共44页。请求包DLC Header字段长度(Byte)填充值接收方MAC6ffffffffffff发送方MAC6aa

16、aaaaaaaaaaEthertype20 x0806第37页,共44页。 ARP Frame字段长度(Byte)填充值硬件类型21上层协议类型20800MAC地址长度16IP地址长度14操作码21发送方MAC6aaaaaaaaaaaa发送方IP4192.168.0.1接收方MAC6任意值 xxxxxxxxxxxx接收方IP4192.168.0.99填充数据180第38页,共44页。响应包 DLC Header字段长度(Byte)填充值接收方MAC6bbbbbbbbbbbb发送方MAC6aaaaaaaaaaaaEthertype20 x0806第39页,共44页。ARP Frame字段长度(Byte)填充值硬件类型21上层协议类型20800MAC地址长度16IP地址长度14操作码22发送方MAC6aaaaaaaaaaaa发送方IP4192.168.0.1接收方MAC6bbbbbbbbbbbb接收方IP4192.168.0.99填充数据180第40页,共44页。四:ARP高速缓存 ARP高效运行的关键是由于每个主机上都有一个ARP高速缓存。这个高速缓存存放了最近Internet地址到硬件地址之间的映射记录。高速缓存中每一项的生存时间一般为20分钟,起始时间从被创建时

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论