IIPv6NDP的各种报文_第1页
IIPv6NDP的各种报文_第2页
IIPv6NDP的各种报文_第3页
IIPv6NDP的各种报文_第4页
IIPv6NDP的各种报文_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

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

文档简介

1、IPv6 NDP,Overview,IPv6报头 IPv6 NDP的各种报文 IPv6 NDP各种机制 IPv6 PMTU机制,Version(4-bit):IP版本,该字段值为6 Traffic Class(8-bit):流量分类,与IPv4包头的TOS类似 Flow Label(20-bit):流标签,用来标记IPv6数据包的一个流 Payload Length(16-bit):有效载荷的长度,有效载荷为紧跟IPv6包头的 数据包的其他部分 Next Header(8-bit):处理选项字段,分段,安全,移动性,松散源路由, 记录路由等的新方式 Hop Limit:(8-bit):定义IP

2、数据包所能经过的最大跳数,每跳一次将此值减1 Source Address(128-bit):IP数据包的源地址 Destination Address(128-bit):IP数据包的目的地址,IPv6 Flow Label(RFC 1809/3697),Flow的定义:由某一特定的源到某一特定的单播,任意播或者组播目的地的一系列的有次序的被打上标签的数据包 用途:根据IPv6包头的固定字段(flow label option)使IPv6的flow数据包更高效的处理 对于标识flow的需求: 1.一个flow 由source address ,flow label,destination标识

3、2.每个flow的flow label由源节点生成,数据包中的flow label字段为非0,避免多个流复用同一flow label id 对于flow state 建立方法的需求: 1.每种方法必须提供flow state建立后的清除方法 2.如果设备不支持请求的flow state 建立,每种方法能恢复至原来的状态,IPv6 Extension Header,IPv6 Extension Header,扩展头的排列顺序: 1.Hop-by-Hop Options header 2.Destination Options header (for intermediate destinatio

4、ns when the Routing header is present) 3.Routing header 4.Fragment header 5.Authentication header 6.Encapsulating Security Payload header 7.Destination Options header (for the final destination) 8. 高层协议(TCP,UDP) 注:除了Hop-by-Hop Options header,其它的扩展头在传输过程中, 中间节点不对其做处理,处理扩展头的节点按扩展头顺序处理,而不能挑选某个header,IP

5、v6 Extension Header,IPv6 Header Next Header = 6 (TCP),TCP Segment,IPv6 Header Next Header = 43 (Routing),TCP Segment,Routing Header Next Header = 6 (TCP),Authentication Header Next Header = 6 (TCP),IPv6 Header Next Header = 43 (Routing),Routing Header Next Header = 51 (AH),TCP Segment,IPv6 Extension

6、 Header,Hop-by-Hop 扩展头(type=0): 介绍:该字段由传送路径上的每个节点和路由器读取并处理 用途:主要用于巨型数据包(RFC2675)和路由器警报(RFC 2711),e.g :RSVP,MLD report etc) 报文格式: Next Header(8-bit):标识下一个包头 Hdr ext Len(8-bit):Hop-by-hop option的长度,不统计前1个字节 Options(变长):包含一个或多个TLV Pad1,PadN:用于填充报文Options剩余部分, 对齐报文,以下类似,Next hdr,Hdr ext Len,Options,Opti

7、ons,IPv6 Extension Header,Routing Header(type=43) 介绍:在数据包发往目的地的途中,该包头能够被IPv6源节点用来强制数据包经过特定的路由器。当路由类型字段设为0时,在路由包头可以指定中间路由器列表,类似IPv4的松散源路由选项。 用途:主要用于移动IP 报文格式: Next hdr(8-bit):标识下一个包头 Hdr ext Len(8-bit):扩展头长度,不统计前1个字节 Routing type(8-bit):标识路由头类型 Segment Left(8-bit):剩余的seg数目 Type-specific data(变长):由Rou

8、ting type决定, Routing type0时该段保留前4bytes,后跟沿途路由器的 address-list Pad1,PadN:用于填充报文Options剩余部分, 对齐报文,以下类似,Next hdr,Hdr ext len,Routing type,Seg Left,type-specific data,IPv6 Extension Header,Fragment Header(type=44) 介绍:只能源节点用来将大于传输路径的PMTU的数据包进行分段,与IPv4不同,IPv6在源节点进行分段,而不能在中间的节点进行分段(使用PMTU机制进行检测路径最小的MTU) 报文格

9、式: Next Header:标识下一个包头 Resvd:0 Fragment Offset:分片报文的偏移 Res:0 M:1表示more frag,0表示last frag Identification:分片产生的ID,对于发往同一目的的不同分片报文,该ID不同,Next header,Resvd,Fra offset,Res,M,Identification,数据包的分片:,Unfragmentable part,Fragmentable part,Unfragmentable part,First fragment,Fragment header,Unfragmentable part

10、,Second fragment,Fragment header,Unfragmentable part,Third fragment,Fragment header,Original IPv6 Packet,数据包的重组:,Unfragmentable part,Fragmentable part,Unfragmentable part,Fragmentable part,Fragment header,Unfragmentable part,Fragmentable part,Fragment header,Unfragmentable part,Fragmentable part,Fra

11、gment header,Original IPv6 Packet,IPv6 Extension Header,Destination Options Header(type=60) 介绍:承载数据包目的节点所需要的可选信息 用途:IETF暂时建议使用该扩展头在移动节点和家乡代理之间交换注册信息 报文格式: Next Header(8-bit):标识下一个包头 Hdr ext Len(8-bit):Hop-by-hop option的长度,不统计前1个字节 Options(变长):包含一个或多个TLV Pad1,PadN:用于填充报文Options剩余部分, 对齐报文,以下类似,Next hd

12、r,Hdr ext Len,Options,Options,IPv6 Extension Header,No Next Header(type=59) 介绍:用于表示后面没有扩展头跟该在该扩展头后面 Authentication header(type=51) 介绍:由IPsec使用,以提供认证,数据完整性和重放保护,确保基本IPv6包头中一些字段的保护 Encapsulating Security Payload header(type=50) 介绍:由IPsec使用,以提供认证数据完整性和重放保护和IPv6数据包的保密,IPv4 Header FieldChange in IPv6 Ver

13、sionNew value of 6 Internet Header LengthRemoved Type of ServiceTraffic Class field Total LengthPayload Length field IdentificationRemoved to Fragment header Fragmentation FlagsRemoved to Fragment header Fragment OffsetRemoved to Fragment header Time to LiveHop Limit field ProtocolNext Header field

14、Header ChecksumRemoved Source AddressSame, new 128-bit length Destination AddressSame, new 128-bit length OptionsRemoved (extension headers),IPv6 NDP,1.相关模块: Router/Prefix Discovery Address Autoconfigration Duplicate Address Detection Address Resolution Host Sending algorithm (for host) Neighbor Unr

15、eachability Detection Redirect 2.需要用到的地址类型: 节点组播地址(FF02:1) 路由器组播地址(FF02:2) 被请求节点组播地址(FF02:1:FFXX:XXXX) 本地链路地址(FE80:/10) 未指定地址(:),IPv6 NDP,3.报文类型: Router Solicitation (type=133) Router Advertisement(type=134) Neighbor Solicitation(type=135) Neighbor Advertisement(type=136) Redirect(type=137),IPv6 NDP

16、 报文类型,RS报文 介绍:主机发送RS用于向Router请求并使其快速响应发送RA 报文格式: IP包头: Source Address:接口指定的地址或者未指定地址 Destination Address:FF02:2 Hop Limit :255 Authentication:启用认证时设置 ICMP报文: Type(8-bit): 133 Code(8-bit): 0 Checksum(16-bit):校验和 Reserved(32-bit):保留,置0 Options(变长):目前只定义了一个Source link-layer address,如果IP头的源地址为未指定地址,则RS中

17、不能包含该项,Type,Code,Checksum,Reserved,Options。,IPv6 NDP 报文类型,RA报文 介绍:由Router周期性发送或者实时响应接收到的RS 报文格式: IP包头: Source Address:必须为自身的本地链路地址 Destination Address:FF02:1 Hop Limit:255 Authentication Header:启用认证时设置 ICMP报文格式: Type(8-bit):134 Code(8-bit):0 Checksum(16-bit):校验和 Cur Hop Limit(8-bit):在生成IP packet时设置默

18、认值,为0表示未指定 M(1-bit):标识地址信息是否为有状态自动配置机制 O(1-bit):标识除地址信息之外的其他信息是否为有状态自动配置机制 Reserved(6-bit):保留 Router Lifetime:秒为单位,通告host其作为默认路由器的时间,在该时间host接收并应用其RA的option,为0时接收但不应用该RA的option Reachable Time(32-bit):毫秒为单位,通告邻居可达时间,用于邻居不可达检测机制,为0表示未指定 Retrans Time(32-bit):毫秒为单位,通告重传NS的间隔,用于地址解析和邻居不可达检测机制,为0表示未指定 Opt

19、ions(变长):可以添加的Option有Source link-layer address,MTU,Prefix Information,Type,Code,Checksum,Rsrvd,Cur Hop Limit,M,O,Router Lifetime,Reachable time,Retrans Timer,Options.,IPv6 NDP 报文类型,NS报文 介绍:NS报文用于请求目标节点的链路层地址,同时为其他节点提供自己的链路层地址,dst-ip为组播时用于地址解析,DAD检测;为单播时用于邻居不可达检测 报文格式: IP包头: Source Address:接口指定的地址或者未

20、指定地址 Destination Address:目标地址对应的被请求节点多播地址或者目标地址 Hop Limit:255 Authentication Header:启用认证时设置 ICMP报文格式: Type(8-bit):135 Code(8-bit):0 Checksum(16-bit):校验和 Reserved(32-bit):保留 Target Address(128-bit):目标地址 Options(变长):可以添加的option有 Source link-layer address,当src-ip为(:)时不能 携带该option,其他src-ip为非(:)目的为组播必须携带

21、,Type,Code,Checksum,Reserved,Target Address,Options,IPv6 NDP 报文类型,NA报文 介绍:响应接收到的NS或者更快的发送关于本节点的信息 报文格式: IP报文头: Source Address:接口指定的地址 Destination Address:为响应NS或者src-ip为非(:),则为NS报文的src-ip,其他为FF02:1 Hop Limit:255 Authentication Header:启用认证时设置 ICMP报文头: Type(8-bit):136 Code(8-bit):0 Checksum(16-bit):校验和

22、 R(1-bit):置1表示该节点为Router,用于在邻居不可达检测中检测Router是否转变成host S(1-bit):Solicited-flag,置1表示响应NS,用于邻居不 可达检测,不能在dst-ip为组播或者非被请求的NA设置 O(1-bit):置1表示NA提示需要更新cache中的链路层地址 Reserved(29bit):保留 Target Address(128-bit):对于响应NS的NA,该字段为NS报文中的Target Address;非响应NS的NA,该字段为链路层地址改变对应的地址(如自己的地址),不能为组播地址,IPv6 NDP 报文类型,NA报文(续) Op

23、tions:可选的option有Target link-layer address,即目标节点请求的链路层地址,对于组播请求的NS,必须包含该选项,对于单播请求的NS,应该包含该选项,但不是必须的,Type,Code,Checksum,Reserved,Target Address,Options.,R,S,O,IPv6 NDP 报文类型,Redirect报文 介绍:通知host通往dst的更优下一跳,或者dst就是本地邻居 报文格式: IP报文头: Source Address:接口的本地链路地址 Destination Address:触发重定向的数据包的src-ip Hop Limit:

24、255 Authentication:启用认证时设置 ICMP报文头: Type(8-bit):137 Code(8-bit):0 Checksum(16-bit):校验和 Reserved(32-bit):保留 Target Address:如果为邻居,则Tar Addr与Dst Addr一致;非邻居时必须为最优下一跳的本地链路地址 Destination Address:触发重定向的数据包的dst-ip Options:可选的选项有 Target link-layer address,Redirected Header,Type,Code,Checksum,Reserved,Target

25、Address,Options.,Destination Address,IPv6 NDP 报文类型,选项报文 Source Link-layer Address(1) Target Link-layer Address(2) Prefix Information(3) Redirected Header(4) MTU(5) 注:Length为0的报文必须被丢弃; Length以8 octets为单位(1 octets 为8 bytes),Type,Length,.,IPv6 NDP 报文类型,Source/Target Link-layer Address 介绍:包含发送者的链路层地址,用于

26、NS,RS,RA 报文格式: Type(8-bit):1为src LLA,2为tar LLA Length(8-bit):选项长度 Link layer address(变长):链路层地址,Type,Length,Link-layer Address.,IPv6 NDP 报文类型,Prefix Information 介绍:为地址自动配置机制提供地址前缀信息,仅用于RA 报文格式: Type(8-bit):3 Length(8-bit):4 Prefix Len(8-bit):前缀长度,0-128 L(1-bit):为1表示该地址可以访问, 用于报文的收发,为0表示无法访问 A(1-bit):

27、为1表示可以将该前缀用于自动配置, 为0不能将该前缀用于自动配置 Reserved1(6-bit):保留 Valid Lifetime(32-bit):地址的有效生存时间, 超时后该地址变为无效,不能用来转发数据 和接收dst-ip为该地址的报文,置0 xffffffff表示无限 Preferred Lifetime(32-bit):地址的优选生存时间, 超时后,仅在节点没有其他可用地址时作为src-ip用于通信 Reserved2(32-bit):保留 Prefix(128-bit):前缀,由前缀长度字段指定其有效的位数,Type,Length,Valid Lifetime,Prefered

28、 Lifetime,Reserved 2,Pre len,L,A,Rsvd,Prefix,IPv6 NDP 报文类型,Redirected Header 介绍:用于重定向报文,包含收到的触发重定向的数据报文的信息 报文格式: Type(8-bit):4 Length(8-bit):长度 Reserved(48-bit):保留 IP header+data(变长,但重定向报文整体不超过1280B),Type,Length,Reserved,Reserved,IP header + data,IPv6 NDP 报文类型,MTU 介绍:用于通告链路的MTU值,用于RA 报文格式: Type(8-bi

29、t):5 Length(8-bit):1(8-octets) Reserved(16-bit):保留 MTU(32-bit):链路MTU值,Type,Length,Reserved,MTU,IPv6 NDP报文类型summary,ND 报文ND Option(s) Router SolicitationSource Link-Layer Address Router AdvertisementSource Link-Layer Address Prefix Information MTU Advertisement Interval Home Agent Information Route I

30、nformation Neighbor SolicitationSource Link-Layer Address Neighbor AdvertisementTarget Link-Layer Address RedirectRedirected Header Target Link-Layer Address,IPv6 NDPRouter/Prefix Discovery,1.节点在本链路上发现一个或者多个Router 2.Router 提供以下信息: Hop limit的默认值 stateful 和statefuless 地址配置协议 Reachability and retransmi

31、ssion 计时器 本链路的网络前缀 本链路的MTU IPv6 移动性相关信息 路由信息 3.非请求RA发送间隔(MinRtrAdvInterval, MaxRtrAdvInterval): MaxRtrAdvInterval=600s, MinRtrAdvInterval=0.75*MaxRtrAdvInterval,IPv6 NDPRouter/Prefix Discovery,Router,Host A,Ethernet Header Destination MAC is 33-33-00-00-00-02 IPv6 Header Source Address is : Destinat

32、ion Address is FF02:2 Hop limit is 255 Router Solicitation Header,MAC: 00-B0-D0-E9-41-43 IP: none,MAC: 00-10-FF-D6-58-C0 IP: FE80:210:FFFF:FED6:58C0,IPv6 NDPRouter/Prefix Discovery,Host A,Ethernet Header Destination MAC is 33-33-00-00-00-01 IPv6 Header Source Address is FE80:210:FFFF:FED6:58C0 Desti

33、nation Address is FF02:1 Hop limit is 255 Router Advertisement Header Current Hop Limit, Flags, Router Lifetime, Reachable and Retransmission Timers Neighbor Discovery Options Source Link-Layer Address is 00-10-FF-D6-58-C0 MTU is 1500 Prefix Information is for 2000:1:2:3:/64,MAC: 00-10-FF-D6-58-C0 I

34、P: FE80:210:FFFF:FED6:58C0,Router, Send multicast Router Advertisement,Router Advertisement,MAC: 00-B0-D0-E9-41-43 IP: none,IPv6 NDPAddress Autoconfiguration(RFC2462),地址自动配置类型: 1.Stateless 接收RA报文,获取前缀和其他信息 2.Stateful 通过DHCPv6协议获取前缀和其他信息 3.Both 通过DHCPv6协议和接收RA报文获取前缀和其他信息,IPv6 NDPAddress Autoconfigura

35、tion(RFC2462),地址状态类型: Tentative 验证地址唯一性时的状态 Valid 通过验证后,地址唯一,设置valid timer和preferred timer又分为一下两种状态: Preferred state:两个计时器都未超时,节点可以用这个地址接收发送数据 Deprecated state:preferred timer超时,仅在没有其他地址可用的时候才用该地址进行报文的接收发送 Invalid Valid timer 超时,地址变为无效,不能进行报文的接收转发,Tentative,Preferred,Deprecated,Invalid,Preferred Lif

36、etime,Valid,Valid Lifetime,time,Use stateful address configuration protocol.,Stop address autoconfiguration.,A,Use stateful address configuration protocol.,Stop address autoconfiguration.,B,A,B,IPv6 NDPDuplicate Address Detection,使用NS报文来进行DAD: Target Address field 为要验证的地址(Target address option中) 源地址

37、为(:),目的地址为被请求节点组播地址 若地址重复,则检测节点发送NA报文 目的地址为FF02:1,验证DAD,组播NS报文,Host B,Host A,Tentative IP: 2000:1:2:3:100,MAC: 00-60-08-52-F9-D8 IP: 2000:1:2:3:100,Ethernet Header Dest MAC is 33-33-FF-52-F9-D8 IPv6 Header Source Address is : Destination Address is FF02:1:FF00:0100 Hop limit is 255 Neighbor Solicita

38、tion Header Target Address is 2000:1:2:3:100,地址重复,组播NA报文,Host B,Host A,Ethernet Header Destination MAC is 33-33-00-00-00-01 IPv6 Header Source Address is 2000:1:2:3:100 Destination Address is FF02:1 Hop limit is 255 Neighbor Advertisement Header Target Address is 2000:1:2:3:100 Neighbor Discovery Op

39、tion Target Link-Layer Address is 00-60-08-52-F9-D8,Tentative IP: 2000:1:2:3:100,MAC: 00-60-08-52-F9-D8 IP: 2000:1:2:3:100,IPv6 NDPAddress Resolution,介绍:首先,通过组播的NS和单播的NA报文的相互交换来获取下一跳或者目的地址的链路层地址;其次,双方主机更新自己的neighbor cache;然后,发送相关的单播流量 过程见next page,Host B,Host A,Ethernet Header Destination MAC is 33-

40、33-FF-02-6E-A5 IPv6 Header Source Address is FE80:210:5AFF:FEAA:20A2 Destination Address is FF02:1:FF02:6EA5 Hop limit is 255 Neighbor Solicitation Header Target Address is FE80:260:97FF:FE02:6EA5 Neighbor Discovery Option Source Link-Layer Address is 00-10-5A-AA-20-A2,MAC: 00-10-5A-AA-20-A2 IP: FE8

41、0:210:5AFF:FEAA:20A2,MAC: 00-60-97-02-6E-A5 IP: FE80:260:97FF:FE02:6EA5,组播的Neighbor Solicitation,单播的Neighbor Advertisement,Host B,Host A,Ethernet Header Destination MAC is 00-10-5A-AA-20-A2 IPv6 Header Source Address is FE80:260:97FF:FE02:6EA5 Destination Address is FE80:210:5AFF:FEAA:20A2 Hop limit

42、 is 255 Neighbor Advertisement Header Target Address is FE80:260:97FF:FE02:6EA5 Neighbor Discovery Option Target Link-Layer Address is 00-60-97-02-6E-A5,MAC: 00-10-5A-AA-20-A2 IP: FE80:210:5AFF:FEAA:20A2,MAC: 00-60-97-02-6E-A5 IP: FE80:260:97FF:FE02:6EA5,IPv6 NDP Host Sending algorithm,Host的数据结构 Nei

43、ghbor cache 保存邻居的on-link的ipv6 地址和起对应的链路层地址,以及可达性状态,与ipv4的ARP cache类似 Destination cache 保存最近发送数据包中目的地址的下一跳信息 Prefix list 保存on-link的前缀列表 Default router list 保存公告自己为默认Router对应的on-link 地址,Host的数据结构(续),Prefix List,IPv6 NDPHost Sending algorithm,基本流程: 1.确定目的地址的下一跳 1)检查destination cache 2)如果目的地址匹配prefix li

44、st中的前缀,则下一跳地址即目的地址 3)如果目的地址不匹配prefix list中的前缀,则下一跳地址为默认Router的地址 2.确定下一跳的链路层地址 1)检查neighbor cache 2)若不存在,使用地址解析来获取下一跳地址的链路层地址 3.以下一跳的链路层地址发送该数据包,Indicate an error.,Send packet using link-layer address of neighbor cache entry.,Set the next-hop address to the default router address.,IPv6 NDPHost Sendi

45、ng algorithm,IPv4 Neighbor FunctionIPv6 Neighbor Function ARP Request messageNeighbor Solicitation message ARP Reply messageNeighbor Advertisement message ARP cacheNeighbor cache Gratuitous ARPDuplicate address detection Router Solicitation message (optional)Router Solicitation (required) Router Advertisement message (optional)Router Advertisement (required) Redirect messageRedirect message,IPv4和IPv6的neighbor功能的总结和对比,IPv6 NDPNeighbor Unreachability Detection,邻居节点在以下情况被认为可达: 最近接收了可达性确认报文 主要用于验证通往

温馨提示

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

评论

0/150

提交评论