【OSPF】协议特点基础笔记

[OSPF]协议特点基础笔记

OSPF(Open Shortest Path First开放式最短路径优先/接口敏感型协议)是一个内部网关协议:

链路(LINK)= 路由器接口
状态(state)= 描述接口以及其邻居路由器之间的关系

  • 特点:IGP内部网关路由协议 链路状态型协议(link-State) 支持无类VLSM CIDR OSPF报文封装在IP报文中三层协议无端口所有有协议号89 组播224.0.0.5/224.0.0.6(MA多路访问网络)

说道距离矢量和链路状态协议区别:
PS :DV = Distance Vector (距离矢量) LS = Link status (链路状态)

  • DV和LS比较1.LS协议和DV协议最根本的区别是 LS协议会获取该路由的详细拓扑信息 2.即使EIGRP所谓拓扑表为只有路由信息并无topology信息 3.DV协议总是以传闻的方式去直接获取路由只知晓从哪个接口收到路由 4.LS协议必须分层(划分区域)而DV协议不需要

  • 再说说LS协议划分区域的好处:1.减少路由条目(域间汇总) 2.本地拓扑变化只会影响一个区域(汇总后明细down不会影响其他区域) 3.LSA细节化(节省带宽)

  • 分层要点: area 0 (传输区域 骨干区域) 只要一个接口在area0 backbone routers(骨干路由器->area0)
  • ABR(area border router) 所有区域必须和area 0相接如果不是则需要其他技术

OSPF建立邻接关系的过程:
HELLO(建邻居) -> link-state database (存放LSA) -> SPF算法(树形结构无环) -> 路由表(最优路由)
topology table (路由+拓扑)

  • down state(关闭状态)1. 尚未交互信息 OSPF: Interface Serial1/0 going Up OSPF: rcv. v:2 t:1 l:48 rid:2.2.2.2 aid:0.0.0.0 chk:E694 aut:0 auk: from Serial1/0

————————->224.0.0.5—–

  • init state(初始化状态)1. 开始发送HELLO包(自己Route ID) OSPF: rcv. v:2 t:1 l:48 rid:2.2.2.2 aid:0.0.0.0 chk:E694 aut:0 auk: from Serial1/0

  • Two-way state(双向状态)1. 收到一个HELLO包,发现自己route ID OSPF: 2 Way Communication to 2.2.2.2 on Serial1/0, state 2WAY

扩展:到这里2个接口已经是neighbor(邻居)但是要达到adjacency(邻接)关系需要按下面要求:
    1.    neighbor只交互了HELLO包
    2.    adjacency交互了LSA才能形成
    3.    邻接一定是邻居反之不是

————MA网络(选举DR/BDR通过HELLO报文)和P2P网络————

扩展:OSPF网络类型:
   1.Point-to-Point WAN links:所有邻居都会成为邻接关系
   MA网络:  
       1.    BMA   (以太网)
       2.    NBMA    (帧中继)
       由于多路访问使得频繁建立邻接关系组播流量庞大

       为了减小发送LSA频率(寻找班长和副班长)
               DR: designated 指定路由器
               BDR: backup 备份路由器
               DROTHERS和DR,BDR形成adjacency
               DROTHERS and DROTHERS只形成tow-way(交互完HELLO包)

            MA网络建立邻居
               224.0.0.5  DR/BDR发送信息
               224.0.0.6  DRothers监听与DR/BDR发送信息 当拓扑变动drothers通过.6组播发送给DR/BDR

           DR选举顺序:
               1.较大的pirority (default=1)
               2.较大的route ID
           DR/BDR选举特点:
               1.**DR/BDR非抢占**
               2.当DR 接口 down BDR变成DR
                  DRothers再选BDR
               3.DR/BDR/DROTHER是接口概念(接口敏感性协议)
               4.不同网段分别选DR

  • exstart state1.互发Route ID选择主从关系(first DBD包) 发送DBD是会附带序列号和标示: init More master/Slave 隐式确认: 1.根据主路由器的序列号 发送:Send DBD to 2.2.2.2 on Serial1/0 seq 0x606 opt 0x52 flag 0x7 len 32 接收:rcv. v:2 t:2 l:32 rid:2.2.2.2 aid:0.0.0.0 chk:7E02 aut:0 auk: from Serial1/0 Rcv DBD from 2.2.2.2 on Serial1/0 seq 0x23F4 opt 0x52 flag 0x7 len 32 mtu 1500 state EXSTART NBR Negotiation Done. We are the SLAVE 本地R1 route ID : 1.1.1.1 所以为slave同步为master序列号0x23F4

扩展 LSA序列号(sequence numbering):
1.线性(从小到大)
2.圆形
3.棒棒糖(线性(负)和圆形的结合)


  • exchange state1.交互DBD目录 Send DBD to 2.2.2.2 on Serial1/0 seq 0x23F4 opt 0x52 flag 0x0 len 32 rcv. v:2 t:2 l:52 rid:2.2.2.2 aid:0.0.0.0 chk:990E aut:0 auk: from Serial1/0 Rcv DBD from 2.2.2.2 on Serial1/0 seq 0x23F5 opt 0x52 flag 0x3 len 52 mtu 1500 state EXCHANGE Send DBD to 2.2.2.2 on Serial1/0 seq 0x23F5 opt 0x52 flag 0x0 len 32 rcv. v:2 t:2 l:32 rid:2.2.2.2 aid:0.0.0.0 chk:7E06 aut:0 auk: from Serial1/0 OSPF: Rcv DBD from 2.2.2.2 on Serial1/0 seq 0x23F6 opt 0x52 flag 0x1 len 32 mtu 1500 state EXCHANGE OSPF: Exchange Done with 2.2.2.2 on Serial1/0 MTU 1500 相同在DBD报文中所以这也是达到FULL的条件(Maximum Transmission Unit 最大传输单元)

  • loading state1.交互LSR LSU Rcv LS UPD from 2.2.2.2 on Serial1/0 length 64 LSA count 1

扩展:
LSA接收方式:
1. 不存在该LSA->add to database -> Send LSACK->Flood LSA->calculate放入路由表
2. 收到相同LSA->比较序列号判断新旧->相同丢弃/不同则回溯源端LSU

OSPF算法(dijkstra's SPF):
     every router in an area has the identical link-state database
 在同一区域内的每台路由器都有统一链路数据库
 每台路由器以自己为根计算一个树形最优无环路径
 cost = 10^8/带宽(bps)
 10^8/1.544*10^6 = 64 10^8 = 100M  1.544是T1链路的速率Mbps
 **路由方向入接口相加就是到达链路的cost值**
 **数据方向出接口相加就就是达到链路的cost值**

Full state
1. lsack
Synchronized with 2.2.2.2 on Serial1/0, state FULL


扩展:
OSPF更新方式
1. 触发更新
2. 周期更新(每30分钟泛洪/60分钟老化)


OSPF报文内容和类型

[ospf packet types]
1)Version Number(OSPF版本号)
2)Type
        1.HELLO                        
                    HELLO
                        包含内容:
                                1.router ID
                                2.hello and dead intervals *
                                        1)    10S/40S         Point-to-Point
                                        2)    30s/120s        MA
                                3.neighbors
                                4.area ID*
                                5.router priority
                                6.DR ip address
                                7.BDR ip address
                                8.authentication password*
                                9.stub area flag *
                                PS: *部分一致才能建立邻居
        2.DBD
                    database Description
                        1.    LSA摘要-目录 
                        2.    隐式确认序列号同步
                        3.    MTU需要一致(最大传输单元 单位:字节  英文:Maximum Transmission Unit)

        3.LSR
                    Link-state Request
                        1.发送需要LSA的摘要信息

        4.LSU
                    Link-state Update
                        1.更新给对方对应的详细LSA信息

        5.LSACK
                    Link-state Acknewledgment
                        1.LSACK只对LSU确认


3)Packet Length
4)Route ID
        1)选举方式:
            1.手工指定(任意,唯一标示)
            2.loopback口最大的IP地址
            3.物理接口最大的IP地址
5)Area ID
6)Check-sum
7)authen-tication Type
        1.无
        2.明文
        3.密文
8)authen-tication(秘钥)
Data

如无特殊说明,均为原创内容。转载请注明出处!