zoukankan      html  css  js  c++  java
  • OSPFv3与OSPFv2协议的比较

    From: http://blog.sina.com.cn/s/blog_61bd83dc0100la2u.html

     

    OSPFv3与OSPFv2协议的比较

    OSPF是一种链路状态路由协议。它具有标准开放、收敛迅速、无环路、便于层级化设计等众多优点。IPv4网络中广泛使用的OSPFv2协议由于在报文内 容、运行机制等方面与IPv4地址联系得过于紧密,大大制约了它的可扩展性和适应性。在IPv6环境中,为了使OSPF更好的应用,同时保留原有的众多优 点,因此,在OSPFv2的基础上作了多方面的修改后产生了OSPFv3协议。

        OSPFv3相比OSPFv2作出的改进可以分为几个方面来描述。

    1.  OSPFv3独立于网络协议

    1)  OSPFv3基于链路运行

    OSPFv2协议是基于子网运行的,邻居之间形成邻接关系的必要条件之一就是两端的IP地址属于同一网段而且掩码相同。而OSPFv3协议基于链路运行,与具体的IPv6地址、前缀分离开,即使同一链路上的不同节点具有不同网段的IPv6地址时,协议也可以正常运行

    能否直接在v2上修改,使其也不基于子网运行。

    2)  编址性语义的取消

    在OSPFv2中,协议分组和LSA中的许多字段都是来自于网络上的某个IP地址、掩码或某个IP子网号。报文的数据内容决定了OSPFv2的多种机制必须基于IPv4来进行,包括邻居路由器标识、邻居建立等等。

    在OSPFv3中取消了这些编址性语义,而只保留协议运行必须的核心内容。比如,Router-LSA和Network-LSA中不再包含网络地址,而只用于传递拓扑信息;LSA的Link State ID依然保留32位长度的IPv4地址格式,但只是一个编号,不再包含地址信息;邻居路由器,包括DR和BDR,都是用Router ID来标识。这些保证了OSPFv3协议能够独立于网络协议运行。

    3)  链路本地地址的使用

    OSPFv2协议要求,每一个运行OSPF的接口都必须有一个全局的IPv4地址,即使是在网络中仅仅用于传输转发的中间节点也必须如此,协议的运行和路 由的计算都依赖于这个地址。而在IPv6中,每个接口都会分配本地链路地址(link-local address),这个地址只在本地链路有效,并不会在整个网络中传播。OSPFv3使用这个本地链路地址作为协议分组发送的源地址(虚连接除外)和路由 的下一跳,在网络规划时就不需要在大量的中间节点规划子网,同样也不需要专门配置IPv6地址。这样,一方面可以节省大量的全局地址,另一方面可以说协议 的运行独立于IPv6,可以方便的对协议进行扩展,实现组播选路等其他的功能。

  • 相关阅读:
    ORM开发之解析lambda实现完整查询(附测试例子)
    ORM开发之解析lambda实现group查询(附测试例子)
    ORM之殇,我们需要什么样的ORM框架?
    公开封尘已久的即时通讯源码
    javascript中的this与函数讲解
    javascript中的操作符详解1
    javascript中的继承与深度拷贝
    javascript之Object.defineProperty的奥妙
    javascript之活灵活现的Array
    jquery.Callbacks的实现
  • 原文地址:https://www.cnblogs.com/yanhc/p/7255784.html
Copyright © 2011-2022 走看看