动态路由协议及报文格式_第1页
动态路由协议及报文格式_第2页
动态路由协议及报文格式_第3页
动态路由协议及报文格式_第4页
动态路由协议及报文格式_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

1、10.4 RIP选路信息协议本节对R I P进行了描述,这是因为它是最广为使用(也是最受攻击)的选路协议。对于R I P 的正式描述文件是RFC 1058 Hedrick 1988a,但是该R F C是在该协议实现数年后才出现的。 10.4.1报文格式RIP报文包含中在UDP数据报中,如图10-2所示(在第11章中对UDP进行更为详细的描述)。 图1 0 - 3给出了使用I P地址时的R I P报文 格式。命令字段为1表示请求,2表示应答。还有两个舍弃不用的命令(3和4),两个非正式的命令:轮询(5)和轮询表项(6)。请 求表示要求其他系统发送其全部或部分路由IP款据握 一H-5璋墙抵HJPU

2、DP首都耻振文2。字节 8宇节图1心 封装在UE1F数据极中的RIF报文图10-2封装在UDP数据报中的RIP报文表。应答则包含发送者全部或部分路由表。版本字段通常为1,而第2版R I P(1 0.5节)将此字段设置为2。紧跟在后面的2 0字节指定地址系列(address family)(对于IP地址来说,其值是2)、I P地 址以及相应的度量。在本节的后面可以看出,R I P的度量是以跳计数的。采用这种2 0字节格式的R I P报文可以通告多达2 5条路由。上限2 5是用来保证R I P报文的总 长度为2 0X25 + 4 = 504,小于5 1 2字节。由于每个报文最多携带2 5个路由,因

3、此为了发送整 个路由表,经常需要多个报文。10.4.2正常运行让我们来看一下采用R I P协议的r o u t e d程序正常运行的结果。R I P常用的U D P端口号 是5 2 0。-初始化:在启动一个路由守护程序时,它先判断启动了哪些接口,并在每个接口上发送 一个请求报文,要求其他路由器发送完整路由表。在点对点链路中,该请求是发送给其 他终点的。如果网络支持广播的话,这种请求是以广播形式发送的。目的UD P端口号是 5 2 0 (这是其他路由器的路由守护程序端口号)。这种请求报文的命令字段为1,但地址系列字段设置为0,而度量字段设置为16。这是一 种要求另一端完整路由表的特殊请求报文。-

4、接收到请求。如果这个请求是刚才提到的特殊请求,那么路由器就将完整的路由表发送 给请求者。否则,就处理请求中的每一个表项:如果有连接到指明地址的路由,则将度 量设置成我们的值,否则将度量置为1 6 (度量为16是一种称为“无穷大”的特殊值,它 意味着没有到达目的的路由)。然后发回响应。-接收到响应。使响应生效,可能会更新路由表。可能会增加新表项,对已有的表项进行 修改,或是将已有表项删除。-定期选路更新。每过3 0秒,所有或部分路由器会将其完整路由表发送给相邻路由器。发 送路由表可以是广播形式的(如在以太网上),或是发送给点对点链路的其他终点的。触发更新。每当一条路由的度量发生变化时,就对它进行

5、更新。不需要发送完整路由表, 而只需要发送那些发生变化的表项。每条路由都有与之相关的定时器。如果运行R I P的系统发现一条路由在3分钟内未更新,就将该路由的度量设置成无穷大(1 6),并标注为删除。这意味着已经在6个3 0秒更新时间里 没收到通告该路由的路由器的更新了。再过6 0秒,将从本地路由表中删除该路由,以保证该 路由的失效已被传播开。10.5 RIP 版本 2RFC 1388 Malkin 1993a中对R I P定义进行了扩充,通常称其结果为R I P - 2。这些扩充并 不改变协议本身,而是利用图1 0 - 3中的一些标注为“必须为0”的字段来传递一些额外的信息。 如果R I P

6、忽略这些必须为0的字段,那么,R I P和R I P - 2可以互操作。图1 0 - 1 0重新给出了由日I P - 2定义的图。对于R I P - 2来说,其版本字段为2。图E-1D框文格式选路域(routing domain)是一个选路守护程序的标识符,它指出了这个数据报的所有者。在一个U n i x实现中,它可以是选路守护程序的进程号。该域允许管理者在单个路由器上运行 多个R I P实例,每个实例在一个选路域内运行。选路标记(routing tag)是为了支持外部网关协议而存在的。它携带着一个E G P和B G ?的自 治系统号。每个表项的子网掩码应用于相应的I P地址上。下一站IP地址

7、指明发往目的IP地址的报文该发往哪里。该字段为0意味着发往目的地址的报文应该发给发送R I P报文的系统。R I P - 2提供了一种简单的鉴别机制。可以指定R I P报文的前2 0字节表项地址系列为0 x ffff, 路由标记为2。表项中的其余16字节包含一个明文口令。最后,R I P - 2除了广播(第12章)夕卜,还支持多播。这可以减少不收听R I P - 2报文的主机 的负载。DR/BDRDR/BDRDR/BDR 简介在广播网和NBMA网络中,任意两台路由器之间都要交换路由信息。如果网络中有n台 路由器,则需要建立n(n-1)/2个邻接关系。这使得任何一台路由器的路由变化都会导致 多次

8、传递,浪费了带宽资源。为解决这一问题,OSPF协议定义了指定路由器DR(Desi gnated Router),所有路由器都只将信息发送给DR,由DR将网络链路状态发送出去。 如果DR由于某种故障而失效,则网络中的路由器必须重新选举DR,再与新的DR同步。 这需要较长的时间,在这段时间内,路由的计算是不正确的。为了能够缩短这个过程,O SPF提出了 BDR(Backup Designated Router,备份指定路由器)的概念。BDR实际上是对DR的一个备份,在选举DR的同时也选举出BDR,BDR也和本网段内 的所有路由器建立邻接关系并交换路由信息。当DR失效后,BDR会立即成为。日。由于

9、不需要重新选举,并且邻接关系事先已建立,所以这个过程是非常短暂的。当然这时还需 要再重新选举出一个新的BDR,虽然一样需要较长的时间,但并不会影响路由的计算。DR和BDR之外的路由器(称为DR Other)之间将不再建立邻接关系,也不再交换任何路由信息。这样就减少了广播网和NBMA网络上各路由器之间邻接关系的数量。如图7所示,用实线代表以太网物理连接,虚线代表建立的邻接关系。可以看到,采用D R/BDR机制后,5台路由器之间只需要建立7个邻接关系就可以了。图7 DR和BDR示意图2. DR/BDR选举过程DR和BDR是由同一网段中所有的路由器根据路由器优先级、Router ID通过HELLO报

10、 文选举出来的,只有优先级大于0的路由器才具有选取资格。进行DR/BDR选举时每台路由器将自己选出的DR写入Hello报文中,发给网段上的每 台运行OSPF协议的路由器。当处于同一网段的两台路由器同时宣布自己是DR时,路由 器优先级高者胜出。如果优先级相等,则Router ID大者胜出。如果一台路由器的优先 级为0,则它不会被选举为DR或BDR。需要注意的是: 只有在广播或NBMA类型接口才会选举DR,在点到点或点到多点类型的接口上不需要选举DR。 DR是某个网段中的概念,是针对路由器的接口而言的。某台路由器在一个接口上可能是DR,在另一个接口上有可能是BDR,或者是DR Other。 路由器

11、的优先级可以影响一个选取过程,但是当DR/BDR已经选取完毕,就算一 台具有更高优先级的路由器变为有效,也不会替换该网段中已经选取的DR/BDR成为新 的 DR/BDRo DR并不一定就是路由器优先级最高的路由器接口;同理,BDR也并不一定就是 路由器优先级次高的路由器接口。OSPF的报文格式2008-09-12 19:07:13标签:OSPF推送到技术圈的报文格式JsPFOSPF报文直接封装为IP报文协议报文,协议号为89。一个比较完整的OSPF报文(以LSU报文为例)结构如图8所示。iPh知血r OSPF packelNumtief trf LSAa LSA 而丽由LEA Data 图 8

12、 OSPF报文结构1. OSPF报文头OSPF有五种报文类型,它们有相同的报文头。如图9所示。图9OSPF报文头格式主要字段的解释如下:Version: OSPF的版本号。对于OSPFv2来说,其值为2。Type: OSPF报文的类型。数值从1到5,分别对应Hello报文、DD报文、LS R报文、LSU报文和LSAck报文。Packet length: OSPF报文的总长度,包括报文头在内,单位为字节。Router ID:始发该LSA的路由器的ID。Area ID:始发LSA的路由器所在的区域ID。Checksum :对整个报文的校验和。AuType:验证类型。可分为不验证、简单(明文)口令验

13、证和MD5验证,其值 分别为0、1、2。Authentication :其数值根据验证类型而定。当验证类型为0时未作定义,为1 时此字段为密码信息,类型为2时此字段包括Key ID、MD5验证数据长度和序列号的信 息。ffl说明:MD5验证数据添加在OSPF报文后面,不包含在Authenticaiton字段中。Hello 报文(Hello Packet)最常用的一种报文,周期性的发送给邻居路由器用来维持邻居关系以及DR/BDR的选举, 内容包括一些定时器的数值、DR、BDR以及自己已知的邻居。Hello报文格式如图10所 示。071531V&rsicirillPacket lengthRoul

14、sr IDArea IDChecksumAuthenlKaticmAutlwilicatlcinMctwcrk Ma 5kHelk)l ntefOptionsRtr PriRxjlfirDadlnLervoldesignated routerBackup d凸母心庭 颇也Neiglndilhjf、1-.-十 r .上 j-! ! 1 ra r0 Hello报文格式主要字段解释如下:Network Mask:发送Hello报文的接口所在网络的掩码,如果相邻两台路由器 的网络掩码不同,则不能建立邻居关系。Hellointerval:发送Hello报文的时间间隔。如果相邻两台路由器的Hello间隔

15、时间不同,则不能建立邻居关系。Rtr Pri:路由器优先级。如果设置为0,则该路由器接口不能成为DR/BDR。RouterDeadinterval:失效时间。如果在此时间内未收到邻居发来的Hello报文,则认为邻居失效。如果相邻两台路由器的失效时间不同,则不能建立邻居关系。Designated Router:指定路由器的接口的IP地址。Backup Designated Router:备份指定路由器的接口的IP地址。Neighbor:邻居路由器的Router ID。DD 报文(Database Description Packet)两台路由器进行数据库同步时,用DD报文来描述自己的LSDB,内

16、容包括LSDB中每一 条 LSA 的 Header(LSA 的 Header 可以唯一标识一条 LSA)。LSA Header 只占一条 L SA的整个数据量的一小部分,这样可以减少路由器之间的协议报文流量,对端路由器根 据LSA Header就可以判断出是否已有这条LSA。DD报文格式如图11所示。1 DD报文格式主要字段的解释如下:Interface MTU:在不分片的情况下,此接口最大可发出的IP报文长度。I(Initial):当发送连续多个DD报文时,如果这是第一个DD报文,则置为1, 否则置为0。M (More):当连续发送多个DD报文时,如果这是最后一个DD报文,则置为0。 否则置

17、为1,表示后面还有其他的DD报文。MS(Master/Slave):当两台OSPF路由器交换DD报文时,首先需要确定双 方的主(Master)从(Slave)关系,Router ID大的一方会成为Master。当值为1时 表示发送方为Master。DD Sequence Number: DD报文序列号,由Master方规定起始序列号,每 发送一个DD报文序列号加1,Slave方使用Master的序列号作为确认。主从双方利用 序列号来保证DD报文传输的可靠性和完整性。LSR报文(Link State Request Packet)两台路由器互相交换过DD报文之后,知道对端的路由器有哪些LSA是本

18、地的LSDB所 缺少的,这时需要发送LSR报文向对方请求所需的LSA。内容包括所需要的LSA的摘要。 LSR报文格式如图12所示。2 LSR报文格式主要字段解释如下:LS type: LSA 的类型号。例如 Typel 表示 Router LSA。Link State ID:链路状态标识,根据LSA的类型而定。Advertising Router:产生此 LSA 的路由器的 Router ID。LSU报文(Link State Update Packet)LSU报文用来向对端路由器发送所需要的LSA,内容是多条LSA (全部内容)的集合。L SU报文格式如图13所示。3 LSU报文格式主要字段

19、解释如下:Number of LSAs:该报文包含的LSA的数量。LSAs:该报文包含的所有LSA。LSAck 报文(Link State Acknowledgment Packet)LSAck报文用来对接收到的LSU报文进行确认,内容是需要确认的LSA的Header。一 个LSAck报文可对多个LSA进行确认。报文格式如图14所示。主要字段解释如下:LSA Headers:该报文包含的LSA头部。7. LSA头格式所有的LSA都有相同的报文头,其格式如图15所示。5 LSA的头格式主要字段的解释如下: LS age: LSA产生后所经过的时间,以秒为单位。LSA在本路由器的链路状态数据库(L

20、SDB)中会随时间老化(每秒钟加1),但在网络的传输过程中却不会。LS type: LSA 的类型。Link State ID:具体数值根据LSA的类型而定。Advertising Router:始发 LSA 的路由器的 ID。 LS sequence number: LSA的序列号,其他路由器根据这个值可以判断哪个 LSA是最新的。LS checksum:除了 LS age字段外,关于LSA的全部信息的校验和。length: LSA的总长度,包括LSA Header,以字节为单位。OSPF报文的具体格式怎样?日期:2006-6-28 14:22:00 Host01.Com访问: Q全屏查看全

21、文答:所有的OSPF报文有统一的报文头格式,如下图版本:指OSPF版本1或2为每一 L跛重复为每连接状态数据报文有如下报文头该报文发出的时间(16)连接状态类型偈)连接状态ID (羽)发送报文的路由器(裂)报文的序号(3W)报文检验和(16)长度(成图14连接状态传送报文头结构数据描述报文有如下格式:OSPF 头标(192)保留可选(| J m|m$DD序号(口*裂)数据库段1 t。n数据库段的拓扑结构列表,每一连接状态传送都由连接状态报文头描述连接状态请求报文有以下格式CiSPF报义头(1刘)连接状态类型1(3W)连接状态ID1 (羽)发送报文的路由器1(羽)连接状态类型口(2)连接状态ID

22、 口(裂)。发送报文的路由器口(裂)图15连接状态请求报文连接状态升级报文有如下格式:1 .路由器连接状态升级报文:连接状态确认报文格式图18连接状态确认报文PIM-DM、PIM-SM分别适于小规模和大规模网络的原因PIM-DM :协议无关组播协议一密集模式。它不需要单独的组播协议,利用路由器上单播路 由协议的路由表作反向路径转发检查,由此获得组播分布树。相比另两种协议,PIM-DM的 开销要小很多,它用于组播源和目的非常靠近、接收者数量大于发送者数量并且组播流量比 较大的环境中效果很好。PIM-SM:协议无关组播协议一稀疏模式。工作原理与PIM-DM类似,但专门针对稀疏环 境优化。适用于组播

23、组中接收者较少、间歇性组播流量的情况。不同于PIM-DM的广播方 式,PIM-SM定义了一个集合点(RP),所有的接收者在RP注册,组播分组由RP转发给接 收者。PIM-SM for IPv6:松散模式协议独立性组播,即不依赖于特定的单播路由协议。它采用汇 聚点(RP)收集并记录对组播数据有需求的路由器,并通过汇聚点将源发出的组播数据转 发到这些路由器。而且PIM-SM还允许接收者切换到更优的转发路径来接受组播数据。主 要用于帮助运营商实现大型网络(如Internet)中发送者和接收者距离远,且组播流持续性 差的点到多点的IPv6组播服务。PIM-SM是目前应用最为广泛的组播协议。(RFC4601 )PIM-DM for IPv6 :密集模式协议

温馨提示

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

评论

0/150

提交评论