zoukankan      html  css  js  c++  java
  • 计算机网络 路由器协议

    路由选择协议:OSFP协议、ISP协议、RIP协议

      2019年10月19日18:00:40理解:路由器是网络层的设备采用的是网络层的协议,如OSFP协议。路由器是多个路由接口集合而成,路由接口用于访问该接口所属的网段,会有多路访问网段情况,路由接口有链路状态LSA,链路状态包含IP地址,子网掩码,网络类型和cost值等,通过建立邻居关系可以互换链路状态,收到的链路状态会链路状态数据库LSDB,我认为交换的应该是链路状态数据库,区域是用于简化OSFP计算,LSA只在区域内的路由接口进行交换,而且区域内会有一个“核心路由接口,我认为其应该是ABR”,IR和ABR交换LSDB,区域内IR不能直接交换LSDB,只能通过ABR间接交换,三个区域以上需要两个ABR,这两个ABR是一个区域,区域里通过ABR与ABR交换不同区域的LSDB,还有一个ASBR,J将外部路由协议重分布进OSFP,还待详细理解!DR和BDR是在多路访问网段时选择“核心”路由接口,多个路由器选择该网段符合要求的路由接口充当DR和BDR。然后再通过hub spoke交换不同路由器但是在该网段的路由接口的LSA,然后在对应单个路由器里面又可以通过“区域理论交换同个路由器不同接口的LSDB”,区域理论还认为同一个路由器可以运行多个OSFP进程,每个进程可以有多个区域。在此,认为邻居”和“链接”的内容还待理解多个OSFP进程中的多个不能可以包含多个接口,但是不存在交叉,没有ABR在交叉处,为什么链路状态是分进程分区域存放?为什么不交叉LSDB呢????邻居是基于路由器层面!!

      从OSFP建立邻居,到LSA的互换,路由表的表计算,需要经过一系列数据包的交换。

      启动OSFP,进行LSA互换,计算路由表的具体过程:建立连接关系:down------attempt-------init--------two-way(前面过程之后建立邻居状态)--------Exstart(确定 master和slaver根据routerID)--------exchange(提供DBD--返回LSR)-------loading(提供LSU包含链路状态)--------Full(链路状态数据库已经同步-路由表还在计算)

      二层介质定义网络类型,

      二层介质和邻居定义链路类型的不同???????会影响LSA。链路类型是一个大概念,一个链路上一个网段,链路是指无源的点到点!

      路由器可以运行多个OSFP进程,OSFP可以将其他进程的OSFP进程的路由信息和其他外部协议的信息重分布进自己的域!!!!

    预备知识:

    1、传输层:数据段;网络层:报文分组(IP包);数据链路层:数据帧;物理层:比特流

    2、网络层的数据平面和控制平面

      数据平面,路由器输入链路之一的数据报如何转发到该路由器的输出链路之一。实现转发(通常几纳秒)。通过路由器种的常用硬件实现。

      控制平面(一种网络范围的逻辑):控制在源主机和目的主机端到端的路径中的路由器如何收发数据(计算收发表),控制网络层组件和服务如何配置和管理(与路由器交互的控制器)!实现路由选择(通常几秒)。通过软件实现。

    3、路由选择组件,路由选择功能,路由选择算法,路由选择协议,路由选择报文,路由选择设备,控制分组,路由选择协议信息,路由选择处理器计算和更新转发表

    4、路由选择算法决定插入该路由器转发表的内容。

    5、链路层功能和物理层功能,

      物理层的基本功能是:利用传输介质为数据链路层提供物理连接,实现比特流的透明传输。

      链路层的基本功能是通过各种控制协议,将有差错的物理信道变为无差错的、能可靠传输数据帧的数据链路。数据帧数据结构包括三部分:帧头,数据部分,帧尾。帧头和帧尾包含一些必要的控制信息,比如同步信息、地址信息、差错控制信息等。数据部分则包含网络层传下来的数据,比如IP数据包等!

    4、最近开销路径的路由选择算法:

    路由选择协议:OSFP协议(Open Shortest Path First-放的最短路径优先协议)

    OSFP协议是开放的,由IETF开发,使用的算法是-Dijkstra算法,2019年10月19日20:21:19到达获取LSA通过计算获取routerID,然后根据routerID到达路由器,“计算路由表”该在哪呢????。

     

    预备知识:

    1 IP协议号:

    2 跳数限制

    3 明文和MD5认证

    4 链路,路由器上的接口,值运行在OSPF进程下的接口。链路状态,包含接口上的IP地址,子网掩码,网络类型(链路层的类型OSI模型在第二层的定义二层介质类型,区别于RIP、EIGRP)cost值等。

    5 路由表和转发表

    6 下一跳

    7 metric和Cost(100000000/接口带宽)的关系:cost是执行OSFP协议的路由器确定到达目的地的最佳路径的计量标准的实例。

      metric:路由算法确定到达目的地的最佳路径的计量标准

      常用metric有:路径长度、可靠性、延迟、带宽、负载等。

      在路径长度这一类中,不同协议有不同标准。如:RIP依据跳数(hop count),OSPF依据cost,EIGRP主要依据带宽K1和延时K3,还包括:bandwidth、reliability、load、MTU等参数。

    8 routerID:同区域路由器的Router-ID并不是单独通过LSA来通告的,而是通过精确的LSA计算出来的!!IP地址和routerID是有联系,只有一个Loopback接口,那么Router ID就是这个Loopback的IP地址;如过没有Loopback接口,就选择IP地址最大的物理接口的IP地址为Router ID。但是此接口不能运行OSFP,所以不能接受OSFP报文。routerID连接两个域实现两个域间的通信。外部路由的routerID经过ASBR重分布会改成ASBR的routerID但是ABR转发ASBR的LSA是没有权利修改routerID,所以另一个区域接受到的LSA和routerID将寻找不到该routerID,所以ABR需要发送单独的LSA来告知如何到达ASBR的Router-ID!!!

    9 Forward Address:在ASBR的路由表中,外部路由的下一跳地址是什么,那么在外部路由的LSA中Forward Address就是什么。外部路由的下一跳是否在OSFP进程里面,如果在,Forward Address就是在地址;如果不在,ASBR将Forward Address设置为0.0.0.0!!!

     

    OSFP协议内容:

    1 路由表的更新是增量更新,而不是周期性更新。只有路由发生变化时,才会发送更新,其实OSFP是周期性更新也是增量更新。到达路由刷新的时间阀值,路由会产生更新,OSFP协议下的路由表就会更新。

    2、执行OSFP协议的路由器之间交换的不是路由表,而是链路状态,每个路由器都将收到的链路状态存在链路状态数据库。OSFP通过获取网络中的所有链路状态,计算出到每个目的的精确的网络路径

    3、OSPF区域,采用了Hub-Spoke的拓朴架构(核心与分支的拓朴)

      是基于路由器的接口划分的,而不是基于整台路由器划分的,一台路由器可以属于单个区域,也可以属于多个区域。核心区域接受和转发LSA,并作为常规区域之间交换LSA的桥梁。常规区域之间不能直接交换LSA。

      一台路由器可以运行多个OSPF进程,不同进程的OSPF,可视为没有任何关系,如需要获得相互的路由信息,需要重分布。每个OSPF进程可以有多个区域,而路由器的链路状态数据库是分进程和分区域存放的。

    4、邻居

    5邻接(Adjacency)

      两台OSPF路由器能够形成邻居,但并不一定能相互交换LSA,只要能交换LSA,关系则称为邻接(Adjacency)。邻居之间只交换Hello包,而邻接(Adjacency)之间不仅交换Hello包,还要交换LSA。

    6、LSA类型-11中,理解1、2、3、4、5、7一共6种类型。根据区域类型,网络类型,连接类型,路由器身份的不同产生不一样的LSA。

    类型1:router link,路由器层面,每个路由器只有一个类型1的LSA,该LSA集合了路由器各个接口的LSA。

    类型2:network link,需要选举DR/BDR的网络类型中才会产生,并且只是DR产生,BDR没有权利产生。

    类型3:Summary Link,区域层面,将一个区域的LSA发向另一个区域时的汇总和简化。

    类型4ASBR Summary Link,执行重分布的路由器ASBR其他区域无法到达该routerID,通过LSA 4可以到达。ABR单独发送的就是该LSA。

    类型5:External Link,在外部路由重分布进OSPF时,由ASBR产生的。LSA 5包含ASBR的routerID和foreword address。

    类型7:NSSA Link,LSA 7由NSSA区域的ASBR产生,LSA 7也只能在NSSA区域内传递,如果要传递到NSSA之外的其它区域,需要同时连接NSSA与其它区域的ABR将LSA 7 转变成LSA 5后再转发。

     7、LSA各参数包含:LS Type,Link State ID,Link ID,Link Data。由于LSA类型不同,区域类型不同,网络类型不同,链路类型不同和路由器身份不同而不一样。

    1. LS Type 1~11
    2. Link State ID,LSA的简明信息,可以理解为LSA的标题,或者说是LSA的名称之类。
    3. Link ID,OSPF接口的链路状态,也就是LSA内容部分。
    4. Link Data,接口上的IP地址,如果链路类型(Link Type)为Stub Network Link,则Link Data是子网掩码
    LSA类型Link State ID内容
    LSA 1 是产生LSA 1的路由器的Router-ID
    LSA 2 因为LSA 2是由DR产生的,所以LSA 2的Link State ID是DR的接口地址
    LSA 3 是目标网络的网络地址,其实这个等同于路由条目
    LSA 4 是ASBR的Router-ID
    LSA 5 是目标网络的网络地址,其实这个等同于路由条目
    链路类型(Link Type)Link ID内容
    Stub Network Link 使用接口的网络号和子网掩码来表示
    Point-To-Point Link 邻居的Router-ID
    Transit Link 是DR的接口地址
    Virtual link 同Point-To-Point Link,是邻居的Router-ID
  • 相关阅读:
    NX二次开发-UFUN获取当前主要版本的版本号
    NX二次开发-UFUN创建图纸注释uc5540
    VC++ADO/COM,put_LeftMargin设置纸张上下左右边距的大小
    VC++ADO/COM,put_Orientation组件设置纸张方向0默认1纵向2横向
    常用的数据拼接方法(不断更新中)
    去重对象数组
    将对象数组中指定键值赋给另一个数组并对更改对象数组中的key
    CSS3动态计算公式——calc()的坑
    @PostConstruct注解
    java操作Redis缓存设置过期时间
  • 原文地址:https://www.cnblogs.com/yinminbo/p/11704327.html
Copyright © 2011-2022 走看看