本节书摘来异步社区《OSPF和IS-IS详解》一书中的第1章,第1.7节,作者: 【美】Jeff Doyle 译者: 孙余强 责编: 傅道坤,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.7 独立且平等

OSPF和IS-IS详解
与TCP/IP相比,OSI协议对各国政府、电信运营商以及许多其他机构的吸引力要更大一点,因为ISO是一家按流程和规矩办事的组织,而IETF则不那么“循规蹈矩”。由于上面提到的那些机构代表了很大一部分客户群体,因此那时有许多计算机和网络设备供应商都开始着手开发兼容OSI参考模型的协议族。Novell (NetWare)、Banyan (VINES)、General Motors(通用汽车公司)(MAP 和TOP)、Apple(苹果公司)(AppleTalk)以及许多其他公司也都急不可耐地吹嘘自家网络OS的架构如何符合OSI参考模型(其实有时候也是“削足适履”)。

但是,只有数据设备公司(Digital Equipment Corporation ,DEC)在OSI协议的实现方面取得重大进展,该公司开发出的协议也成为了OSI协议的代名词。DEC公司在20世纪70年代中期便已经研发出了自己的数字网络架构(Digital Network Architecture,DNA),并先后开发出了4个版本的DECnet软件,作为DNA的实现。该公司把DECnet的版本称为阶段(phase),说准确点,DECnet的1-4版本就是DECnet Phases I–IV。1987年,DEC公司推出了DECnet Phase V,并于1991开始销售支持DECnet Phase V的产品1。为了在架构上符合OSI参考模型,最新的第5版DECnet软件在前期1-4版的基础上做了大幅改动。ISO也认可了DEC公司的这一“劳动成果”,因此,我们现在所说的OSI协议族跟DECnet Phase V几乎没有任何区别。

内置于DECnet Phase V的网络路由协议,正是由Radia Perlman、Mike Shand、Dave Oran以及其他前辈在DEC公司开发。ISO自然也“照单全收”,作为其IS-IS路由协议。“之所以把路由CLNP数据包的ISO标准称为IS-IS,”Perlman在一本书中写道,“是因为所有其他称谓(例如,ISO10589中的这段话“中间系统到中间系统域内路由信息交换协议[Intermediate system to Intermediate system Intra-Domain routing information exchange protocol]与……结合使用”)都很糟糕2。”

大约在1987年(即ISO将IS-IS采纳为其标准路由协议的同时),IETF也意识到了需要开发出一种链路状态内部网关协议。在那个时代,NSFNET骨干网和许多地区性的网络在部署路由协议时,只有两种选择:一、配置静态路由;二、在需要使用动态路由协议的地方部署RIP。从网络管理的角度来看,静态路由毫无可扩展性而言;而RIP的诸多缺陷也注定其可扩展性极差,而那些缺陷在ARPANET初期运行Bellman-Ford型路由协议时,早已暴露无疑。凭借着专为ARPANET开发的SPF路由协议,以及在ARPANET内运行此类路由协议的经验,IETF认为有必要开发出一种具备高可扩展性,适用于大型网络的链路状态IGP。

于是,在IETF内部形成了两派。一派把目光盯在了IS-IS身上,他们认为,在有现成的链路状态路由协议可用的情况下,重新开发一种新协议意义不大。干吗不对IS-IS做一番改进,令其支持TCP/IP呢?另一派则不想让如此重要的协议受控于外部组织,何况这个组织还是官场味十足的ISO。在他们看来,IETF的行事风格不但已得到了证明,而且人人都觉得很爽,那为何不开发出一种开放的、非私有的ARPANET版SPF协议——OSPF协议呢?这一开放的SPF协议与TCP/IP的融合度也一定会更好。ISO对TCP/IP不屑一顾的态度,使得这一派打心眼里憎恨ISO;他们不接受IS-IS,只是因为该协议是ISO的标准。

IETF也没打算让两派决个高下,而是采取了一种妥协的做法,同时接受了“改造”IS-IS以及“自造”OSPF的建议,并把两种协议作为平等而又独立的协议来对待。就这样,IETF分别成立了IS-IS和OSPF工作组。

IS-IS工作组于1990年完成了对IS-IS的改造,令其能够支持TCP/IP,这一经过改造的IS-IS版本被命名为“集成(Integrated)”或“双(Dual)”IS-IS。IS-IS针对IP的扩展功能发表于RFC 1195,作者是Ross Callon,一名DEC公司的工程师,此前他曾效力过BBN公司3。

OSPF工作组于1989年10月推出了首版OSPF。然而,此版OSPF(OSPFv1)暴露出了几处操作层面的问题,而且某些地方还无法优化,因此从未得到正式部署。工作组对其进行了改进,于1991年7月推出了OSPFv2,并发表于RFC 1147,作者是John Moy4。Moy当时效力于Proteon公司,这是一家早期的路由器厂商。他与Callon一样,同为前BBN公司的工程师。

1990年,OSPF在几个地区性网络内得到了成功部署。1991年10月,在INTEROP内部署也大获成功。Moy写道:“要想搞一次华而不实的路由协议示范操作非常困难。当路由协议运行正常时,一般人根本就不知道它的存在5。”

在整个开发过程中,两个工作组相互取长补短。比如,OSPF和IS-IS共有的在广播网络内选举指定路由器的概念,是最先用于IS-IS的。两个工作组还同时吸取了ARPANET内运行SPF路由协议的教训。比方说,1980年10月27日发生的ARPANET全网瘫痪(详情请见RFC 789),很大程度上要归咎于协议报文字段中序列号的循环取值方式。于是,IS-IS和OSPF不约而同地采用了序列号的线性取值方式(详见第2章)。两个工作组都同时认识到了自适应性路由度量值的复杂性,于是便规定了可配置的非自适应型路由度量值。

20世纪90年代中期,Cisco公司正逐步向具有统治性地位的Internet骨干和区域性网络路由器销售商迈进。Cisco公司于1991年开始让路由器同时支持OSPF和OSI版本的IS-IS;又过了几年,该公司又发布了支持IP的集成IS-IS的实现。对IS-IS影响最深的事件发生在1994年,那一年,Cisco路由器开始支持NLSP,这也使得IS-IS在世界各地众多ISP的网络中得到了部署。

几年之前,Novell公司也开始为其NetWare网络操作系统开发链路状态路由协议。在Neil Castagnoli的指导下6,Novell公司发布了自己的NetWare链路服务协议(NetWare Link Services Protocol,NLSP)。NLSP基本上照搬了IS-IS,只是可以路由Novell IPX数据包而已。(NLSP发布后不久,Radia Perlman便火速加盟了Novell公司,从而书写了一段借IS-IS的东风创造NLSP的神话。)

开发出NLSP实现之后,Cisco公司决定重写IS-IS代码,以求尽可能地将NLSP和IS-IS这两种非常类似的协议,以单协议(IS-IS)的方式融合进IOS。该项目由Dave Katz负责,Cisco最终夙愿成真,得到了稳定而又健壮的IS-IS实现。那时,Cisco的OSPF实现还欠精致,服务提供商对此很不满意。在受到当时OSI协议狂躁症的刺激之后,许多ISP都把IGP改成了IS-IS,并自此成为该协议的忠实拥趸,时至今日仍痴心不改。如今,Cisco公司的OSPF代码早已变得“稳如磐石”,但1994~1996年间OSPF给那些ISP留下的不良印象,让他们至今都认为IS-IS比OSPF可靠得多。

《OSPF和IS-IS详解》一1.7 独立且平等相关推荐

  1. OSPF——DR及BDR详解

    目录 一.DR简介: 二.BDR简介: 三.OSPF邻居关系规律及缺点: (1). 邻居关系数量变化规律: (2).邻居关系过多缺点: 四.为什么选举DR和BDR: 五.解决方法:引入DR.BDR 解 ...

  2. OSPF邻居建立过程详解

    目录 OSPF的五种包: 1.Hello包 2.DBD包(database description) 3.LSR包(Link State Request) 4.LSU包(Link State Upda ...

  3. OSPF的LSA类型详解与特殊区域

    LSA---链路状态通告----ospf在不同网络环境下携带不同信息的载体 LSDB---链路状态数据库 SPF--最短路径优先算法 Type--LSA的类型,在ospfv2的版本,需要掌握6种LSA ...

  4. ospf接口认证配置详解

    实验目的:1.掌握ospf接口认证配置方法 实验拓扑: 步骤1:基本配置(接口配置+ospf配置)见http://t.csdn.cn/mugochttp://t.csdn.cn/mugoc步骤2:启用 ...

  5. 如何正确安装独立显卡?图文详解教会你安装独立显卡

    独立显卡主要是指成独立的办卡存在,需要将其插在抓板的相对应接口上的显卡.同时显卡作为电脑主机中非常重要的组成部分,安装步骤也就有所讲究,才能够很好的提供显示效果以及运行性能.那么要如何正确安装独立显卡 ...

  6. 【学习笔记】【计算机网络【总】】物理层;链路层;网络层;传输层;应用层;详解

    目录 框架 一.计算机网络 1. 层次结构设计 2. 现代互联网拓扑 3. 网络性能指标 二.物理层 三.数据链路层 2.最大传输单元MTU 3.以太网协议详解 四.网络层 - 链接 五.传输层 - ...

  7. OSPF中DR选举机制详解

    OSPF中DR选举机制详解--对于这方面不太清楚的可以看看附件 转载于:https://blog.51cto.com/gauyanm/226882

  8. 大型企业网络配置系列课程详解(三)--OSPF高级配置与相关概念的理解

    大型企业网络配置系列课程详解(三)<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office&qu ...

  9. CCNP中单区域OSPF详解(第一部分)

    1. OSPF特性综述 2. Ospf协议下运行的三种拓补结构 3. 广播型多路访问网络下的OSPF运行      1)路由器ID      2)指定路由器和备份指定路由器      3)DR和BDR ...

  10. OSPF报文详解——LSA概述

    目录 一.OSPF报文详解: (1)---OSPF头部分析: (2)---hello字段分析: 二.LSA报文--链路状态通告 (1)---简介: (2)---头部信息: (3)---数据部分: 一. ...

最新文章

  1. 字符串-最后一个单词的长度(双指针)
  2. 关联容器的插入操作简单举例
  3. AWS在深圳成立大中华区第二个物联网实验室
  4. android studio课程管理系统,8 个最优秀的 Android Studio 插件
  5. KVM图形管理界面打不开(virt-manager 报错)
  6. springMVC3学习(十)--注解式控制器
  7. java链式语法_javaScript链式调用原理以及加法实现
  8. 云计算学习一——网络基础
  9. c语言笔试题7(25),嵌入式软件工程师C语言笔试题(7页)-原创力文档
  10. 厦门大学国家奖学金答辩PPT模板
  11. LeetCode刷题小技巧-错题记录本-C++版本
  12. ubuntu nvidia驱动更新
  13. 视觉数据集是基于物体和风景标记的巨大的图像库
  14. GMM与K-means的那些事
  15. Ubuntu安装常用Linux桌面系统
  16. php拆分excel,PHP如何切割excel大文件(附完整代码)
  17. 【Python 骚操作】使用 Gitbook + Typora 打造一个属于自己的电子书网站
  18. 清华大学计算机考研经历,从普通一所大学考研到清华有多难?
  19. 德州学院计算机系吧,任传成(计算机系)老师 - 德州学院 - 院校大全
  20. Park和unPark方法

热门文章

  1. 自己做项目时整理的上传Excel表格
  2. 欧美义务教育改革新视野:重估“家庭学校”的价值
  3. EZ CD Audio Converter
  4. 期货资管分仓软件——期货子账户软件的构成架构以及实现的功能
  5. 绘图计算机配置,专业设计制图需要什么样的电脑?制图电脑配置要求 (全文)
  6. GlusterFS 和 Ceph 比比看
  7. nginx配置静态资源,重新发布后,浏览器缓存导致异常原因和解决
  8. 从游戏中学习产品设计2:消费篇
  9. 安卓实现扫一扫识别数字
  10. python pip 设置代理