网络操作系统的发展历程

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

白皮书网络操作系统的发展历程JuniperNetworks,Inc.China北京市东城区东长安街1号东方经贸城西三办公楼15层1508室邮编:100738电话:(86)10-65288800文档编号:200264-002SC08/2008JUNOS软件:网行业中最先进的架构方法Copyright©2008,JuniperNetworks,Inc.2网络操作系统的发展历程目录概述………………………………………………………………………………………………………3介绍………………………………………………………………………………………………………3网络操作系统的起源和发展……………………………………………………………………………3第一代OS:单片式架构……………………………………………………………………………4第二代OS:控制面板模块性………………………………………………………………………4第三代OS:灵活性、可扩展性和持续运行………………………………………………………5OS设计的基本考虑因素…………………………………………………………………………………5商用OS与开源DonorOS…………………………………………………………………………6功能分割与进程调度………………………………………………………………………………6内存模式……………………………………………………………………………………………6调度原则……………………………………………………………………………………………6虚拟内存/抢占调度编程模式………………………………………………………………………7常见的内核设计…………………………………………………………………………………………8单模块与微内核的网络操作系统设计……………………………………………………………9JUNOS软件的内核………………………………………………………………………………………10JUNOS软件中的进程调度…………………………………………………………………………11JUNOS软件的路由协议进程……………………………………………………………………………12可扩展性…………………………………………………………………………………………………14缩减…………………………………………………………………………………………………14扩展…………………………………………………………………………………………………15架构和基础设施…………………………………………………………………………………………16并行化………………………………………………………………………………………………16灵活性和可移植性…………………………………………………………………………………17模块化程度…………………………………………………………………………………………19开放架构…………………………………………………………………………………………………19产品维护…………………………………………………………………………………………………19自治愈………………………………………………………………………………………………20故障排除……………………………………………………………………………………………21质量和可靠性……………………………………………………………………………………………21系统完整性…………………………………………………………………………………………21版本流程总结………………………………………………………………………………………23最终产品的质量和稳定性………………………………………………………………………………24结语………………………………………………………………………………………………………25JUNOS软件与众不同的原因……………………………………………………………………………25特性…………………………………………………………………………………………………25可预测性:2004C2008之间发行的JUNOS软件版本…………………………………………25关于瞻博网络……………………………………………………………………………………………26图表列表图1.典型抢占调度模式的顺序…………………………………………………………………………7图2.抢占调度模式中出现的资源管理冲突……………………………………………………………7图3.JUNOS软件9.0版本的通用设计结构……………………………………………………………10图4.JUNOS软件中的多级CPU调度……………………………………………………………………12图5.层级式协议栈的运行………………………………………………………………………………13图6.典型的CPU时间捕获截图(摘录自《NEC8800产品文件》)……………………………………16图7.通用操作系统环境中的产品合并…………………………………………………………………18Copyright©2008,JuniperNetworks,Inc.网络操作系统的发展历程3概述本文将讨论运营商级网络操作系统(OS)设计中固有的要求和面临的挑战。我们将以瞻博网络操作系统JUNOS™软件的主要功能为例来演示OS设计的发展历程,主要强调功能与架构决策之间的关系。本文将从不同角度讨论设计现代化网络操作系统的挑战,包括灵活性、支持众多平台的能力、不间断运行以及并行化等。此外,本文还将讨论已经发现的架构挑战、折中性和机会,以及构建先进网络操作系统的最佳业务实践。介绍现代化网络设备是由硬件和软件组成的复杂实体。因此,仅凭设计高效的硬件平台并不能提供经济高效、持久运行的产品。控制平面在开发特性及确保设备可用性方面发挥着至关重要的作用。我们很容易就能发现CPU主板及转发平面的速度提升,而软件的结构变化通常却难以察觉。虽然供应商常在宣传资料中提到了大量的运营商级特性,但这些特性的运行体验却存在着较大差异。那些部署过多个软件版本的产品最能体现出因为选择不同OS而造成的性能差异。现在,仍有大量的路由器和交换机在一开始部署陈旧的单模块软件,然后再迁移到更为完善的设计。这种做法对稳定性和运行效率的积极影响显而易见。但是,从一个网络操作系统迁移到另一个网络操作系统将带来众多挑战,包括特性集不兼容、运行体验不一致,以及软件质量不一致等。这些潜在挑战使供应商迫切需要构建一款强大的控制平面,以支持现在和将来市场上的硬件产品及其特性。开发灵活、使用持久、高质量的网络OS使您能够在将来通过平滑演进来满足新需求,其高度能够支持您进行扩展和缩减,其广度使您能够将它们部署在多个平台上,其深度又支持您集成丰富的新特性和新功能,这一切都需要充裕的时间、巨大的投资以及深入的技术知识。编写JUNOS软件早期版本的工程师大多来自其他公司,曾从事过网络软件构建工作,对于如何构建软件以及需要对哪些软件领域进行改进拥有一手经验。通过不断摸索,这些工程师发现了解决构建旧式操作系统时所遇局限性问题的新方法,从而在一开始就将众多创新成果融入到JUNOS软件之中。此外,为了确保我们的产品能够预测并满足下一代市场要求,我们会对JUNOS软件开展定期评估,以便根据需要对软件进行修改,从而维护一贯的可靠性、高性能和永续性。网络操作系统的起源和发展现代化的网络操作系统是满足POSIX要求的软件平台中最高级的专业化分支,很少需要从头开发,这主要是因为从产品构思到产品面市,如果完全从头开发一流的操作系统成本显然太高。通过部署通用OS架构,网络供应商能够将精力集中在特定路由的代码上,加快新产品的上市速度,并借鉴多年的技术和研发成果来设计新颖的(donor)产品。Copyright©2008,JuniperNetworks,Inc.4网络操作系统的发展历程例如,表1列出了面向路由器的一些操作系统及其起源(“第几代”一列将在下文详细解释)。表1.路由器操作系统的起源供应商路由器OSDonorOSDonorOS的所有人第几代DonorOS网站JuniperNetworks,Inc.JUNOS软件FreeBSD互联网社区2,3专用1n/aCiscoIOS-XEIOS,Linux混合(ASR)1.5n/aCisco模块化IOSIOS,QNX混合(6500)1.5n/aAlcatel-LucentSROSVxWorksWindRiver2总的来说,路由器中的网络操作系统历经3代的开发历程,每代操作系统都有着截然不同的架构和设计目标。第一代OS:单片式架构通常情况下,面向路由器和交换机的第一代网络操作系统都是运行在平坦内存空间的专用映像,这个内存空间通常由闪存或ROM直接提供。这些操作系统虽然提供多个进程来支持协议、数据包处理和管理工作,但这些进程却以一种多任务处理的协作模式运行,彼此争用资源,除非有些进程自愿放弃CPU。所有的第一代网络操作系统都拥有一个共性:降低在嵌入式硬件上运行全规模商用操作系统的风险。内存管理、防护和内容交换几乎或根本不存在,它们的主要目标是减少空间占用,加快运行速度。但是,第一代网络操作系统却推动了网络的商业化,使供应商纷纷将产品部署在网络上。这些系统的缺陷在于一系列资源管理和故障隔离相关的问题;一个失控(runaway)进程能够轻松耗尽整个处理器资源或导致整个系统故障停机。在由陈旧软件控制的数据网络中,这种故障可谓是司空见惯,引发故障的原因包括软件错误、恶意流量以及操作错误等。传统的第一代平台虽然已被逐渐应用到最低端的电信产品中,但在如今的全球网络中仍然可以见到。第二代OS:控制面板模块性20世纪90年代中期,数据网络在全球迅速发展,为现有网络和路由器的容量带来了巨大挑战。当时,嵌入式平台运行全规模商用操作系统已成为不争的事实,至少在高端硬件领域是这样的,但问题是:这些操作系统不能通过令人满意的速度维持数据包转发性能。市场迫切需要突破性的解决方案。于是,对控制平面和转发平面实施硬分割的概念油然而生。不久,瞻博网络成功推出了业界第一款由应用特定型集成电路(ASIC)驱动的路由平台“M40”,这种方法自此得到广泛的采纳和应用。经证实,完全在硬件中转发数据包是一种可行的方案,为瞻博网络JUNOS软件牵头的下一代网络操作系统开发扫除了障碍。Copyright©2008,JuniperNetworks,Inc.网络操作系统的发展历程5今天,最初的M40路由器几乎已被完全淘汰。但是,这款产品的传统概念却被许多类似的设计所沿用,它们的蓝图也已成为业界公认的第二代参考架构。第二代网络操作系统不提供数据包交换功能,而是将注意力完全集中在了控制平面功能上。不同于第一代产品,第二代OS能够全面利用多任务处理、多线程、内存管理和内容操作的能力,从而大幅度减少了系统级故障。过去几年安装的大多数核心及边缘路由器都在运行第二代操作系统上。现在,正是这些系统负责在互联网和公司网络中传输大批流量。但是,第二代操作系统却因缺乏软件上的数据转发平面而无法支持不具备单独(硬件)转发平面的低端设备。此外,某些客户因为兼容性问题而无法迁移出旧式软件,仍在使用传统的软件特性。这些局限性推动了过渡OS(第1.5代OS)的产生。在这个版本的操作系统中,第一代单模块映像作为进程运行在第二代调度程序及内核上,从而将传统特性与全新的软件概念结合在一起。“第1.5代”产品旨在提供一定的发展空间,并将功能循序渐进地迁移到新代码中,同时维护原始代码库的特性。虽然这是一次有趣的工程尝试,但1.5代产品的特性不如第一代产品丰富,运行不

1 / 26
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功