精华内容
下载资源
问答
  • ospf同一区域的泛洪Flooding process(同步LSA) 遵从以下原则: 接收到了不存在的LSA,首先会先存下载,然后去泛洪给其他接口 接收到一条新的LSA,那么让新的LSA会代替老的LSA,然后把新的LSA泛洪给其他...

    热爱路由交换以及运维技术的交流可以加新群:532593532(非水友群)

    欢迎各位大佬的加入

    ospf同一区域的泛洪Flooding process(同步LSA)

    遵从以下原则:

    1. 接收到了不存在的LSA,首先会先存下载,然后去泛洪给其他接口

    2. 接收到一条新的LSA,那么让新的LSA会代替老的LSA,然后把新的LSA泛洪给其他接口

    3. 收到了相同的LSA,会直接忽略掉

    4. 收到了比自己的老的LSA,会忽略对方发来的老的LSA,会把自己新的LSA发给它

    5. 收到了一条age时间大于3600s的(age>=3600s)LSA,会认为是这是在(无效)撤销路由,清空本地的这条LSA,然后在泛洪出去这条age时间大于3600的LSA

    6. 收到一份坏的LSA(比如checksum错误),那么本地会忽略它,并且把好的LSA(自己的LSA)发送给对方

     

    在上面的图中如果突然把A路由器重启

    问题1:X路由器的路由表中是否有A路由器上的10网段路由

    答:X路由器会立刻感知到A路由不可达。那么会立刻在路由表中删除10网段路由(是非常快的收敛速度)

    那么如何感知的呢?当A路由down掉,B和C路由器与A路由器的邻居关系会立刻down掉(因为10网段的路由下一跳是A路由器的接口ip),B与C会删除自己的路由表信息,并且产生一条LSA告知X路由器这边A的路由不可达了,X收到了LSA信息就知道路由不可达,直接删除自己的路由表信息,然后在产生一条LSA告知D路由器A路由不可达,D在删除自己的路由表信息。

    问题2: X路由器LSDB中是否还有10网段的LSA呢

    答:等老化时间,在3600s以后这条lsa才会消失。即使之前的A路由信息还存在LSDB中,那么路由重新计算时会发现不可达信息,也就根据LSDB画拓扑时不会把A的信息放在拓扑中,因为A节点已经没有了。

    问题3:为啥不进行删除LSA,而是要等待老化时间3600s

    答:是因为只有ADV的通告这有权利删除此条LSA,其他路由器没有权利删除(只有通告这本身具有删除的权限)

    问题4:如果A路由器正常工作了

    A路由器会产生一个10网段的LSA泛洪给B,C但是B,C还没到3600s把它删了,所以会比较新旧,通过(序列号,校验和,age时间)字段进行比较。

    假设。B之前的10网段LSA的序列号为8002,A重启后自己产生的是8001,那么B收到了A发来的LSA,发现自己比它的新,那么就会忽略掉,然后把自己认为是新LSA发送给A路由器。因为自己没有使用A发来的LSA所以不能到达10网段。但是A收到B发来的认为是新的LSA,那么自己将重新产生一个LSA,假设为8010,然后在发送给B,B检查后发现A发来的更新则会更新自己的LSDB,然后把新LSA泛洪给X,这样X在去更新自己的LSDB,泛洪给D,D在更新自己的LSDB,这样就实现了LSDB的更新,路由也就可达了。

    假设。B之前的10网段LSA的序列号为8002,A重启后自己添加一个20网段产生的是8001,B收到了A发来的LSA,发现它比自己的旧则。向它他送自己新的LSA,A收到了B发来的新的LSA,A会重新产生一个LSA发送给B。那么B比较如果发现A发来的序列号更大,表示更新,则更新自己的LSDB,泛洪给X路由器,X路由器也去比较LSA的新旧,发现发来的新就直接更新自己的LSDB,然后在把新的LSA泛洪给D,D在去检查发来的LSA的新旧,如果新旧更新自己的LSDB,这样LSDB也就更新了,路由也就可达了

     

    场景二:     

    如果在A上添加一个10网段路由信息,那么其他B,C,X,D这些路由器是如何知道的呢?

    解答:A会主动往外发送LSA以LSU报文的形式发送,这样B,C都会收到10网段的LSU信息,更新自己的LSDB,然后转发出去10网段的LSU报文给X。这样X就收到了两份LSU报文,如何区分B和C发来的LSU中携带的LSA是不是同一个LSA信息呢。则去比较三要素(type,LSID,adv)当X发现他们两个报文的 三要素相同之后那么,应该去比较LSU中LSA的新旧,那么通过比较SN序列号,以及checksum校验和,以及Age活跃时间等参数去比较,SN序列号是越大说明LSA越新,checksum也是越大越新,age时间分两种情况    如果两个报文的age时间差小于15min中认为是同一份,如果大于15分钟,会使用age时间小的(age越小表示越新),当X把认为是新的LSU中的LSA更新到自己的LSDB中,然后在向D发送LSU报文。这样D就可以更新自己的LSDB,然后自己计算路由,就这样就实现了路由的更新。

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    展开全文
  • OSPF泛洪_亮仔_新浪博客

    千次阅读 2013-10-22 14:21:44
    OSPF泛洪 Flooding采用2种报文 LSU Type 4---链路状态更新报文 LSA Type 5---链路状态确认报文 如下图所示: 个链路状态更新报文和确认报文都可以携带多个LSA。LSA本身可以floodin到整个互联网络,但更新报文和...

    OSPF泛洪

        Flooding采用2种报文 LSU Type 4---链路状态更新报文 LSA Type 5---链路状态确认报文

    如下图所示:

       个链路状态更新报文和确认报文都可以携带多个LSA。LSA本身可以floodin到整个互联网络,但更新报文和确认报文只能在具有邻接关系的两个节点之间传送。

       在P-P网络,路由器是以组播方式将更新报文发送到组播地址224.0.0.5 在P-MP和虚链路网络,路由器以单播方式将更新报文发送至邻接邻居的接口地址 在广播型网络,

    DRother路由器只能和DR&BDR形成邻接关系,所以更新报文将发送到224.0.0.6,相应的DR以224.0.0.5泛洪LSA并且BDR只接收LSA,不会确认和泛洪这些更新,除非DR失效 在NBMA型

    网络,LSA以单播方式发送到DR BDR,并且DR以单播方式发送这些更新

    LSA的洪泛是可靠的,所以必须对每1个发送的LSA进行确认,确认分隐式确认(Implicit Acknowledge)和显式确认(Explicit Acknowledge)

    当路由器要发送LSA的时候,会把LSA的拷贝放在链路状态重传列表中,这个LSA每隔RxmtInterval重传1次,直到该LSA得到确认,或邻接关系中断.无论哪种网络类型,重传的LSA总是以

    unicast的方式发送的

    确认可以是delayed或direct,前者可以使用1个LSAck确认多个LSA,当然这个延迟的时间必须小于RxmtInterval;后者的确认是立即发送,采用单播的方式.当出现下面2种情况的时候

    将采用直接确认:

    1.从邻居那里收到了重复的LSA

    2.LSA的老化时间(Age)达到最大生存时间(MaxAge)

     查看LSDB信息,使用show ip ospf database命令,如下:

    LSA通过序列号,校验和,和老化时间保证LSDB中的LSA是最新的

    Seq: 序列号(Seq)的范围是0x80000001到0x7fffffff

    Checksum: 校验和(Checksum)计算除了Age字段以外的所有字段,每5分钟校验1次

    Age: 范围是0到3600秒,16位长.当路由器发出1个LSA后,就把Age设置为0,当这个LSA经过1台路由器以后,Age就会增加1个由InfTransDelay设定的时间(默认为1秒,这个时间可以通过

    命令ip ospf transmit-delay 修改).LSA保存在LSDB中的时候,老化时间也会增加

    当收到相同的LSA的多个实例的时候,将通过下面的方法来确定哪个LSA是最新的:

    1. 比较LSA实例的序列号,越大的越新

    2. 如果序列号相同,就比较校验和,越大越新

    3. 如果校验和也相同,就比较老化时间,如果只有1个LSA拥有MaxAge(3600秒)的老化时间,它就是最新的

    4. 如果LSA老化时间相差15分钟以上,(叫做MaxAgeDiff),老化时间越小的越新

    5. 如果上述都无法区分,则认为这2个LSA是相同的

     

     

    8.8 OSPF区域

    区域长度32位,可以用10进制,也可以类似于IP地址的点分十进制分3种通信量

    1. Intra-Area Traffic:域内间通信量
    2. Inter-Area Traffic:域间通信量
    3. External Traffic:外部通信量

     


    8.8 OSPF

    1. Internal Router:内部路由器 2. ABR(Area Border Router):区域边界路由器 3. Backbone Router(BR):骨干路由器 4. ASBR(Autonomous System Boundary Router):自治系统

    边界路由器

    虚链路(Virtual Link)

    1. 通过一个非骨干区域连接到一个骨干区域
    2. 通过一个非骨干区域连接一个分段的骨干区域两边的部分区域

    虚链接是一个逻辑的隧道(Tunnel),配置虚链接的一些规则: 1. 虚链接必须配置在2个ABR之间 2. 虚链接所经过的区域叫Transit Area,它必须拥有完整的路由信息 3. Transit

    Area不能是Stub Area 4. 尽口的避免使用虚链接,它增加了网络的复杂程度和加大了排错的难度

    展开全文
  • OSPF报文结构 OSPF共有5中类型的协议报文 HELLO报文:周期性发送,用来发现和维持OSPF邻居关系 DD报文:database description packet描述...LSU(link state update packet):向对方发送其所需的LSA或者泛洪自己更新

    OSPF报文结构

    OSPF共有5中类型的协议报文

    HELLO报文:周期性发送,用来发现和维持OSPF邻居关系

    DD报文:database description packet描述本地的LSDB的摘要信息,用于两台路由器进行数据同步

    LSR:link state request packet.向对方请求所需的LSA,只有在双方开始交换DD报文后才会向对方发出LSR.

    LSU(link state update packet):向对方发送其所需的LSA或者泛洪自己更新的LSA

    LSAck报文: link state acknowledgment packet,用来对LSA进行确认

    OSPF中不需要确认的报文:LSAck报文  和  hello

     

    OSPF报文格式:

    LSA的格式和类型

    在AS内部的每台路由器,根据分类产生一种或多种LSA.收到的LSA的集合形成LSDB;OSPF中对路由信息的描述都是封装在LSA中发布出去的常见类型:

    Router-LSA; Network-LSA; Network-summary LSA; ASBR-LSA; AS-External-LSA及NSSA-External LSA

    报文格式:

    LS Age: 16bit,LSA产生后经过的时间,以s为单位

    Option:8位,E:允许泛洪AS-External-LSA。MC:转发IP组播报文。N/P:处理Type7 LSA。

    DC:处理按需链路。

    Link State ID: 32位,与LS Type、Advertising Router一起用来在ospf中唯一标识一个LSA

    Advertising Router

    32比特

    产生此LSA的路由器的Router ID。

     

    LS sequence number

    32比特

    LSA的序列号。其他路由器根据这个值可以判断哪个LSA是最新的

     

    LS checksum

    16比特

    除了LS age外其它各域的校验和。

     

    Length

    16比特

    LSA的总长度,包括LSA Header,以字节为单位。

    LSA类型的定义:

    Router-LSA:每个设备都会产生,描述了设备的链路状态及开销,仅在所属区域泛洪

    Network-LSA:由DR产生,描述MA网络的链路状态,仅在所属区域泛洪

    Network-Summary-LSA,区域内某个网段的路由,由ABR产生向其他区域通告。泛洪范围仅在一个区域内

    ASBR-Summary-LSA:由ABR产生,描述到ASBR的距离,通告范围除了ASBR所在区域外的其他区域。泛洪范围仅在一个区域内;ABR会在区域边界为其他区域再产生LSA4

    AS-external-LSA:由ASBR产生,描述到AS外部的路由,可以泛洪到所有区域,(STUB和NSSA区域)

    NSSA LSA:由ASBR产生,描述到AS外部的路由,仅在NSSA区域内泛洪

    补充:Opaque LSA(Type9/Type10/Type11),用于OSPF扩展的通用机制。

    其中,Type9 LSA仅在接口所在网段内泛洪。用于支持GR的Grace LSA

    Type10在区域内泛洪,用于支持TE的LSA

    Type11在AS内部泛洪,目前没有实际应用

     

    LSA的泛洪机制

    AREA内的所有路由器要有一个相同的LSDB,依靠的是LSA的泛洪过程

    OSPF泛洪使用LSU和LSAck来保证泛洪的可靠性

    OSPF的Update和LSAck可以携带多份LSA。在点到点网络中以组播方式发送到224.0.0.5,在NBMA类型和Vlink类型链路上单播方式泛洪给邻居

    泛洪过程显式(ExplicitAck)和隐式确认(ImplicitAck),使用Update做确认是隐式确认;使用LSAck是显式确认。

    当一份LSA被泛洪出去,当前路由器会记录在该接口的所有邻居数量并为之维护重传列表,没有收到显式或隐式确认的LSA会5s后单播重传。不管网络类型是什么

    (重新通告的LSA与之前的相比,Age增加1外,其他内容一致)

    完整的LSA只能通过LSU来传递

     

    LSDB

    LSDB中每份LSA都有唯一的身份ID,(LSA类型、link state id、router id)

    判断LSA的新旧:

    1.比较seq, 越大越新

    2.seq相同,比较checksum ,越大越新

    3.checksum相同,则判断lsa age 是否等于3600,如果等于3600s,则认为最新,用于删除一条LSA

    4.lsa age 如果不等于3600s, 则判断LSA age 的差值,大于900s,则认为lsa age 小的最新,  小于900s则认为相同的LSA

    展开全文
  • IS-IS LSP泛洪同步过程

    2021-01-15 13:12:36
    IS-IS通过泛洪LSP来实现链路状态同步过程,如何保证泛洪过程的可靠性及LSP的完整性则需要SNP报文的协助完成,它分为两类: CSNP (Complete Sequence Number Packet:完全序列号报文)。 PSNP (Partial Sequence ...

    概述:

    IS-IS通过泛洪LSP来实现链路状态同步过程,如何保证泛洪过程的可靠性及LSP的完整性则需要SNP报文的协助完成,它分为两类:

    1. CSNP (Complete Sequence Number Packet:完全序列号报文)。
    2. PSNP (Partial Sequence Number Packet:部分序列号报文)。

    CSNP和PSNP的报文格式是相同的,而且都携带LSP的摘要信息。不同的地方是,CSNP报文携带的是当前路由器的链路状态数据库中的所有LSP的摘要信息,类似OSPF的DD (数据库描述)报文;而PSNP报文携带的是数据库中部分LSP的摘要信息。这个摘要包括了LSP ID、序列号、校验和及剩余生存时间。

    因为链路状态数据库有LI类型和L2类型的,所以CSNP和PSNP两种报文也有L1类型和L2类型。广播链路下:L1发送到组播地址01-80-C2-00-00-14, L2发送到组播地址01-80-C2-00-00-15。并且在广播网络和P2P网络中,对这两种报文的使用还有此区别。

    报文格式分析如下:
    https://blog.csdn.net/tushanpeipei/article/details/112557014

    泛洪机制:

    机制概述:
    作为一种链路状态路由协议,IS-IS 和OSPF一样,在学习和计算路由之前,区域中的路由器首先要交换链路状态信息,最终所有路由器的链路状态数据库达到一致的状态,这就好比每台路由器都有了一张相同的网络拓扑。然后,每台路由器利用自己的SPF算法计算到区域内任何其他网络的最优路由。

    路由器产生一个LSP后,然后从所有运行了IS-IS 的接口打散出去,区域中的其他路由器从一个接口接收到LSP后,将这份LSP的一份拷贝装入L1或L2的数据库中,然后再将这份LSP从其他所有运行了IS-IS的接口继续扩散。

    IS-IS路由域内的所有路由器都会产生LSP,以下事件会触发一个新的LSP:

    1. 邻居Up或Down
    2. IS-IS相关接口Up或Down
    3. 引入的IP路由发生变化
    4. 区域间的IP路由发生变化
    5. 接口被赋了新的metric值
    6. 周期性更新

    路由器接收到一条LSP时,处理流程如下:

    1. IS-IS路由器接收到LSP,在数据库中搜索对应的记录。若没有该LSP,则将其加入数据库,并组播新数据库内容。
    2. 若收到的LSP序列号大于本地LSP的序列号,就替换为新报文,并组播新数据库内容;若收到的LSP序列号小于本地LSP的序列号,就向入端接口发送本地LSP报文。
    3. 若两个序列号相等,则比较Remaining Lifetime (剩余生存时间)。若收到的LSP的Remaining Lifetime小于本地LSP的Remaining Lifetime,就替换为新报文,并组播新数据库内容;若收到的LSP的Remaining Lifetime大于本地LSP的Remaining Lifetime,就向入端接口发送本地LSP报文。
    4. 若两个序列号和Remaining Lifetime都相等,则比较Checksum。若收到的LSP的Checksum大于本地LSP的Checksum,就替换为新报文,并组播新数据库内容;若收到的LSP的Checksum小于本地LSP的Checksum,就向入端接口发送本地LSP报文。
    5. 若两个序列号、Remaining Lifetime和Checksum都相等,则不转发该报文。

    注意与OSPF的区别。

    SRM和SSN标志:
    SRM和SSN标志在链路状态信息泛洪过程发挥了重要作用。SRM标志用来跟踪路由器从一个接口向邻居发送LSP的状态。在广播网络中,SSN 标志用来跟踪向邻居请求完整的LSP状态;在点对点网络中,SSN标志用来跟踪对LSP的确认状态。

    SRM和SSN标志可以帮助路由器以更优化的方式发送LSP和PSNP,从而减少带宽和CPU的开销,提高链路状态数据库的同步。详细信息会分别在广播网络和点到点网络数据库同步的内容中介绍。

    计时器:
    IS-IS协议在链路状态信息泛洪过程中使用了多个计时器,这些计时器中有的用来控制LSP刷新的间隔,有的用来限制LSP产生的频率等。在不稳定的网络中,这些计时器确保了LSP泛洪不会带来过大的网络资源开销,还提供了保证数据库完整性的方法,这一节就来跟大家解释一下这些计时器的使用及在华为VRP系统中的配置命令。

    1. 最大生存时间
      • 最大生存时间是指一个LSP 从“生命”诞生开始直到“老死”经历的最长时间,IS010589定义的LSP最大生存时间为1200s。 一个LSP的“阳寿”是从最大生存时间向下递减的,当一个LSP的“阳寿”等于0时,就从数据库中清除掉了。在华为VRP系统中,使用剩余生存时间来标识一个LSP的“阳寿”。正常情况下,一个LSP的始发源路由器会定期更新它的LSP (LSP 更新时间在下文介绍),路由器接收到新的LSP后,替换掉老的LSP并重置LSP的剩余生存时间到最大生存时间。如果LSP的剩余生存时间减少到0时,还没有得到源路由器的刷新,那么这个LSP就会被清除。在清除之前路由器还会等-一个“零阳寿生存时间”(Zero Age Life Time),ISO 10589定义的零阳寿生存时间为60s。
      • 一般情况 下,不建议大家修改LSP的默认最大生存时间,因为网络中的路由器使用的LSP最大生存时间必须一致,如果路由器接收到一个LSP的剩余生存时间比本地的最大生存时间还要大,那么会认为该LSP已经被破坏而将其丢弃,从而影响网络的稳定性。

    2. LSP刷新间隔
      LSP始发路由器在LSP“阳寿”消耗尽之前(LSP剩余生存时间减少到0之前),每隔一定时间会重新产生该LSP的新实例,这个时间间隔默认为900s。周期性的刷新有利于网络中所有路由器的链路状态数据库的完整性。华为VRP系统修改LSP刷新间隔的命令是timer lsp- refresh。适当将刷新时间间隔设置大些,可以减少网络资源的消耗,但是不利用网络的收敛。

    3. LSP连续生成间隔
      LSP连续生成间隔是指路由器连续生成两个LSP的时间间隔。在一些不稳定的网络中,可以将LSP生成间隔设置大些,比如网络中有条链路持续翻滚的话,就会导致路由器不停地产生新的LSP,这会让网络中其他路由器的SPF进程频繁进行路由计算,增大了CPU开销。为了避免LSP频繁生成给网络带来的冲击,LSP的生成存在一个最小间隔的限制,即同一个LSP在最小间隔内不允许重复生成,一般缺省最小时间间隔为Ss,作了这种限制后,路由收敛速度受到较大影响。IS-IS 中,当本地路由信息发生变化时, 路由器需要产生新的LSP来通告这些变化。当本地路由信息的变化比较频繁时,立即生成新的LSP会占用大量的系统资源。另一方面,如果产生LSP的延迟时间过长,则本地路由信息的变化无法及时通告给邻居,导致网络的收敛速度变慢。可以使用timerlsp-generation命令来设置产生LSP (这些LSP具有相同的LSP ID)的延迟时间。

    4. LSP传输间隔
      LSP传输间隔是指连续传送两个LSP的间隔,缺省情况下,接口上发送LSP的最小时间间隔为50ms。如果邻居路由器的资源有限,其他路由器向其传递一个LSP后,它无法按时确认的话,其他路由器就会重传LSP,这时可能使情况更加恶化,为了保护这样的邻居,LSP 传输间隔就得设置大些。

    5. CSNP发送间隔
      在广‘播网络中,为维护链路状态数据库的完整性,DIS 周期性地发送CSNP, 默认间隔是10s。华为VRP系统可以通过接口命令isis timer csnp来修改默认值。这个值设置得小些,有利于网络的快速收敛,但同时增加了带宽的开销。如果一个网络在比较稳定的情况下,可以适当增大该值,以减少对带宽的开销。

    以上这些计时器提供了一些优化和控制链路状态信息泛洪的方法。一般情况下,不建议修改这些计时器的默认值,除非修改后能预测相应的结果。如果网络规模大,加快收敛速度的办法就是升级路由器。另外,在网络规划时,一定要保证网络的高可用性。

    广播链路下LSDB同步过程:

    概述:

    在广播网络中,路由器在邻接关系初始化后,首先泛洪自己的LSP,L1的LSP发送到组播地址01-80-C2-00-00-14(L1 IS), L2的LSP发送到组播地址01-80-C2-00-00-15(L2 IS)。 其他L1或L2邻居接收LSP后,并不需要确认,因此,在广播网络中,LSP的泛洪是不可靠的。这样的话,对于LSP的始发路由器来说,如何确保所有邻居都接收到了自己的LSP呢? IS-IS 协议使用DIS周期性地发送CSNP来保证广播网络中链路状态数据库的同步。

    DIS作用之一是IS-IS协议用来在广播网络中控制数据库信息的泛洪和同步的。在广播网络中,路由器都与DIS建立了邻接关系(当然,所有路由器之间都建立了邻接关系),这就意味着,DIS 的数据库拥有其他所有路由器的数据库信息,基于这个前提,DIS使用一个或多个CSNP描述自己整个链路状态数据库信息,然后周期性地(每隔10秒)扩散到网络中。

    广播链路下不用PSNP报文进行确认的原因是广播链路相比P2P环境会更加的复杂,如果一个网络中有多个邻居,组播泛洪的PSNP报文会对整个链路带宽和其他邻居造成影响。

    其他路由器接收到DIS的CSNP后,与自己的数据库中的内容作比较,比较后会发现自己缺失或较新的LSP,然后发送PSNP来请求相应的LSP。

    网络中的DIS或具有这份LSP的邻居收到请求后就会回应相应的LSP。在广播链路上,发送LSP之前会在接口上先设置一个SRM标志,待发送完LSP后立刻清除标志。如果路由器查看DIS发过来的CSNP内容后,发现自己数据库中具有的LSP而DIS没有或DIS具有的更老,这时它会主动将自己的LSP泛洪出来。通过上述过程,保证了广播网络中所有路由器的数据库都是一致的。在一个广播网络中有可能存在多台路由器,在链路状态数据库的同步过程中,如果对每条接收的LSP都要给予确认的话,这就需要发送端路由器跟踪其他所有邻居的接收情况,从而让整个过程变得更复杂。虽然DIS周期性泛洪CSNP会带来一定 的带宽开销,但是这个方法相对来说简单得多。

    具体步骤:
    在这里插入图片描述

    1. 如上图所示,新加入的路由器RouterC首先发送Hello报文,与该广播域中的路由器建立邻居关系。
    2. 建立邻居关系之后,RouterC等待LSP刷新定时器超时,然后将自己的LSP发往组播地址(Level-1:01-80-C2-00-00-14;Level-2:01-80-C2-00-00-15)。这样网络上所有的邻居都将收到该LSP。
    3. 该网段中的DIS会把收到RouterC的LSP加入到LSDB中,并等待CSNP报文定时器超时并发送CSNP报文,进行该网络内的LSDB同步。而其他邻居在收到RouterC发来的LSP时会直接丢弃,因为在广播环境中,区域内的路由器只能与DIS进行LSP交互。
    4. RouterC收到DIS发来的CSNP报文,对比自己的LSDB数据库,发现有许多LSP在本地数据库没有,所以向DIS发送PSNP报文请求自己没有的LSP。
    5. DIS收到该PSNP报文请求后向RouterC发送对应的LSP进行LSDB的同步。

    P2P链路下LSDB同步过程:

    概述:

    跟广播网络不一样,IS-IS 协议在P2P网络中的数据库同步过程中,接收到邻居的LSP后是需要给予确认的(可靠方式)。因为在P2P链路上,每台路由器只有一个邻居,确认不会带来过多的资源开销。

    在P2P网络中,当两台路由器建立好邻接关系后,首先交换CSNP。跟前文介绍的一样,路由器通过比较接收到的CSNP的内容,确定本地数据库缺失的LSP,并根据前面介绍的LSP的新旧比较规则,比较自己的数据库和邻居数据库中LSP的新旧;对于缺少或过时的LSP,路由器会发出PSNP进行请求,并且在收到邻居回应过来的LSP后使用PSNP确认;如果路由器发现邻居路由器有缺失或拥有更旧的LSP,它会主动将LSP
    发送给邻居。

    如果发送的LSP没有得到邻居的PSNP确认,在重传间隔时间超时后,路由器会重传先前的LSP,直到接收到邻居的PSNP确认为止。在P2P链路上接收到一个LSP后,接口上会设置一个SSN标志表示需要向该接口发送PSNP确认,接收到确认后,SSN标志就会被清除;同时,如果需要将LSP拷贝从一个接口发送出去,也会在该接口上设置SRM标志,发送后标志立刻被清除。

    具体步骤:
    在这里插入图片描述

    1. R2接收到R1的CSNP (描述了一条LSP: R1.00-00)后,发送PSNP进行请求。
    2. R1收到请求后,将相应的LSP拷贝发送到网络中。
    3. R2接收到请求的LSP后,将其拷贝存入数据库中,并且在接口2设置SSN标志,在接口3设置SRM标志。
    4. R2向R3转发这个LSP的拷贝并向R1发送PSNP进行确认。
    5. R2清除接口,上的SSN标志。
    6. R3从R2接收到这个LSP后,存入数据库中,并同时在接口4上设置SSN标志。
    7. R4向R2发送PSNP确认,并同时清除接口4.上的SSN标志。
    8. R2接收到R3的PSNP确认后,清除接口3的SRM标志。

    总结在P2P链路上PSNP有两种作用:(在广播环境中只有请求LSP的作用)

    1. 作为Ack应答以确认收到的LSP。
    2. 用来请求所需的LSP。

    资料整理来源:《HCIE路由交换学习指南》、华为hedex指南

    展开全文
  • ospf

    2020-04-01 17:43:53
    Ospf的收敛过程由路由状态公告LSA(link state adverisement)泛洪开始,LSA中包含了路由器已知的接口IP地址、掩码、开销和网络类型等信息。收到LSA的路由器都可以根据LSA提供的信息建立自己的链路状态数据库(LSDB...
  • OSPF

    2020-05-20 14:08:16
    运行链路状态路由协议的路由器之间先互相发送hello报文,建立邻居关系,确定邻居关系之后,开始交互链路状态信息,描述自己直连接口情况的通告,泛洪整个网络。路由器将这些链路状态信息存储在LSDB中,使用相同SPF...
  • OSPF协议

    2019-06-30 18:01:51
    每个路由器负责发现、维护与邻居的关系,并将已知的邻居列表和链路费用LSU(Link State Update)报文描述,通过可靠的泛洪与自治系统AS(Autonomous System)内的其他路由器周期性交互,学习到整个自治系统的网络拓扑...
  • RIP、OSPF、ISIS和BGP对比

    千次阅读 2020-03-04 03:03:32
    RIP、OSPF、ISIS和BGP...OSPF周期泛洪链路状态信息1800s)、ISIS (周期性由DIS伪节点泛洪LSP) 路径开销计算(默认情况,一般都可以手动指定) RIP 通过跳数计算,16跳不可达,贝克曼算法 OSPF 根...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,205
精华内容 482
关键字:

ospf周期泛洪