zoukankan      html  css  js  c++  java
  • 路由选择协议

    基本的路由选择协议

    目录:
    1. 分组转发和路由选择区别?
    2. AS(Autonomous System)自治系统
    3. 常用路由选择协议
    1)RIP协议
    2)OSPF(Open Shortest Path First)协议
    3)BGP协议

    1. 分组转发和路由选择区别?
        分组转发是路由器根据路由表,选择适当出口将分组送出去,而路由选择是根据路由选择算法来更新路由表信息。可以简单理解为路由选择算法--更新-->路由表--供-->路由器分组转发时使用。


    2. AS(Autonomous System)自治系统
        自治系统是在单一技术管理体系下的多个路由器的集合,在自治系统内部使用内部网关协议(IGP)和通用参数来决定如何路由数据包,在自治系统间则使用AS间路由协议来路由数据包。
    1)AS内部使用IGP(Interior Gateway Protocol)协议进行自我相互之间更新路由表信息。
    2)不同AS之间使用EGP(External Gateway Protocol)协议进行AS之间的路由信息更新。


    3. 常用路由选择协议
    IGP:RIP和OSPF
    1)RIP协议

    IGP协议的一种,只和相邻路由器,在固定时间间隔中,交换各自整个路由表。基于UDP协议进行数据报发送。
    RIP协议的距离:实际就是值经过多少个路由器可到达网络,即跳数。一条路径最大只能是15,16表示不可达
    优点:收敛速度快,刚刚开始路由器只知道于自己直连的路由信息,但是通过定时与相邻路由器交换路由表,可以快速在AS中达到收敛。
    缺点:好消息传播快,坏消息传播慢。因为坏消息有可能需要经过多次更新后直到距离达到16才会被AS中其它路由都发现。
    RIP1和RIP2区别:
    RIP1不发送子网掩码,RIP2发送掩码,支持VLSN(可变长子网掩码)
    RIP1不支持认证,RIP2支持认证。

    RIP协议更新路由表算法:
    路由条目格式:<net-id,distance,next-hop,...>
    令当前路由器路由表为CurT
    a. 收到相邻路由器R的路由表T信息后,将下一跳全部改为R,每项距离都加1。
    b. for each x in T loop
    if CurT don't contain x.net-id then
    CurT.addItem(x);
    else
    y = CurT.getItemByNetID(x.net-id)
    if x.next-hop == y.next-hop then
    update y.distance = x.distance;//更新路由项距离
    else
    y = x.distance < y.distance ? x : y;//选择距离小的对y进行更新
    endif
    endif
    endloop
    c. 如果在规定的时间中没有收到相邻路由器R的路由信息,则标记该路由器不可达即设置距离为16。

    2)OSPF(Open Shortest Path First)协议
        使用洪泛法(即向所有其它路由器)发送更新信息,基于IP数据报进行信息发送。

    3)BGP协议

    是AS系统之间进行路由信息交换的协议,BGP协议的一种。
    原理:每个AS系统指派一个或者多个系统内的代表作为该AS的发言人,不同AS之间通过发言人之间进行信息交流,然后在由各自的更新算法,根据收到的其它AS的路由信息,来更新自身的路由信息。
    BGP协议是唯一个使用TCP协议进行路由更新的协议。

    4. 总结
    RIP是应用层IGP路由选择协议,使用UDP进行路由信息更新。
    OSPF是网络层IGP路由选择协议,直接使用IP协议发送更新数据。
    BGP是应用层EGP路由选择协议,使用TCP协议更新路由信息。 

  • 相关阅读:
    Java 中的悲观锁和乐观锁的实现
    乐观锁和悲观锁的区别
    理解RESTful架构
    修复Linux下curl等无法使用 Let's Encrypt 证书
    呕心沥血 AR VR 好资源分享
    linux服务器出现大量TIME_WAIT的解决方法
    Ubuntu系统 无法删除 redis-server
    Python Flask jsonify a Decimal Error
    微信小程序 订阅消息 对接详细记录
    FTP时显示500 Illegal PORT command的解决
  • 原文地址:https://www.cnblogs.com/wrencai/p/5675003.html
Copyright © 2011-2022 走看看