文档详情

管理信息化课程学期论文之种新型路由器.

精****库
实名认证
店铺
DOC
62.50KB
约9页
文档ID:137806004
管理信息化课程学期论文之种新型路由器._第1页
1/9

淮阴工学院课程学期论文课程名称:通信设备(自学)选题名称: 一种新型IPv6路由器 系(院): 计 算 机 工 程 系 专 业: 通 信 工 程 班 级: 通 信1051 姓 名: 张 姆 敏 学 号: 1051302133 指导教师: 于 永 彦 学年学期: 2008 ~ 2009 学年 第 1 学期 2008 年 12 月 19 日 摘要:传统路由器通常基于单个通用CPU,采用实时操作系统,CPU既要完成报文的转发还要运行路由协议和其他控制和管理协议这种将控制和转发集成在一起的紧耦合结构导致对控制层面和转发层面的任何改动都会牵一发而动全身,致使路由器的扩展性和软件的移植性较差转发与控制分离体系结构将路由器严格划分为控制和转发两个层面,具有开发成本低、系统可扩展性强、可靠性高等优点文章介绍了一种基于转发与控制分离设计思想的互联网协议第六版(Internet Protocal Version 6 ,IPv6)路由器,给出了控制平面软件模块设计,包括路由子系统、内核协议栈、用户空间的应用级进程(OpenRouter Master)、用户空间的代理级进程(OpenRouter Agent)等模块。

关键词:IPv6 路由器;控制与转发分离;体系结构目 录1 论文综述 12 OPENROUTER 总体框架 12.1 系统体系结构 12.2 软件总体视图 13 路由子系统设计与实现 24 基于虚拟路由器模型的协议栈 34.1 虚拟驱动程序 34.2 内核协议栈与用户进程的通信 35 OPENROUTER MASTER 46 OPENROUTER AGENT 4总 结 5参 考 文 献 6《通信设备(自学)》课程学期论文1 论文综述转发与控制分离体系结构(forwarding and control element separating, ForCES)的关键思想是打破控制和转发紧耦合的集成方式,将路由器严格地划分为控制和转发两个层面控制层面使用通用CPU负责路由的控制和计算,转发层面的每块转发板使用专用CPU(例如网络处理器)负责报文的转发,转发与控制各司其职,在提供高性能报文转发的同时保证了路由控制和计算的高可靠性本文介绍一种基于ForCES思想的IPv6路由器——通用路由体系结构OpenRouter模型的设计与实现,着重介绍ForCES体系结构下OpenRouter IPv6路由器控制平面的设计与实现。

2 OpenRouter 总体框架2.1 系统体系结构OpenRouter IPv6路由器是国防科大计算机学院在自行研制的传统IPv4路由器结构基础上,开发研制的一款支持IPv6、采用转发与控制分离设计理念的新型路由器原型系统系统继承了传统IPv4路由器的硬件与微码系统,修改微码,使其能够支持IPv6报文转发所有有关IPv6的路由协议和控制报文的计算与处理不再由路由器内部的CPU完成,而是使用外接通用计算机处理,称之为路由服务器整个OpenRouter IPv6路由器由路由服务器和传统路由器设备组成作为转发平面的传统路由器设备功能包括:IPv6报文硬件转发;重定向目的报文到路由服务器;接收和响应来自路由服务器的控制报文,并转化为对被控路由器的操作执行;路由分离控制协议;主动向路由服务器报告异步事件作为控制平面的路由服务器基于开源路由软件(GUI zebra),完成下列功能:IPv6控制协议(如路由协议、IPv6协议栈、邻居发现等);通用路由器抽象模型及控制接口;路由器分离控制协议;路由器用户界面2.2 软件总体视图所有和IPv6路由协议相关的处理,全部由外置的路由服务器IPv6系统完成,IPv6转发表同样由外部IPv6系统生成之后发送给设备的主控。

在外置路由服务器和路由器的主控之间遵循标准的协议和接口OpenRouter 路由器控制软件划分为以下子系统:路由子系统;协议栈及路由设备抽象;OpenRouter Master;OpenRouter Agent和控制微码扩展;IPv6微码功能支持3 路由子系统设计与实现如图2-1所示,OpenRouter路由器的路由子系统在外置路由服务器上实现,系统采用开源的zebra 软件为原型有关IPv6协议栈功能借助了Linux操作系统现有的协议栈Zebra是一个路由器的软件实现,如何实现软件控制、硬件转发,是OpenRouter 路由器必须要解决的关键问题,也是集中体现转发与控制分离设计理念的地方为实现路由器硬件转发,外置路由服务器系统必须为路由器设备提供:(1)接口地址添加、删除等更新信息;(2)转发表添加、删除等更新信息;(3)邻居表添加、删除等更新信息图2-1 OpenRouter 路由子系统软件结构整个外置路由控制系统与硬件路由器设备的通信都是通过OpenRouter通信协议完成的OpenRouter通信协议由外置主控方的OpenRouter Master和硬件路由器设备方的OpenRouter Agent共同组成:二者之间分别建立数据通路和控制通路。

数据通路用于重定向数据信息;控制通路用于重定向转发表、邻居表操作等控制信息在zebra路由软件中,有关接口地址操作和转发表操作是在zebra进程中实现的为把相关信息重定向到路由器硬件设备上,建立与OpenRouter Master的通信连接,并由OpenRouter Master把信息转发到硬件设备上有关邻居表的维护是在Linux 操作系统内核完成的为获得邻居表的实时状态信息,笔者定时查询邻居表,监测其状态变化,并把邻居表的添加、删除、更新等信息通过OpernRouter Master重定向到路由器硬件设备上4 基于虚拟路由器模型的协议栈内核协议栈需实现的功能包括:慢速路径的转发平面 (TCP/IP协议栈);通用路由器的实现表示(如虚拟驱动程序);内核消息通信(内核与OpenRouter的接口规范)4.1 虚拟驱动程序外接的路由服务器负责IPv6路由协议和控制报文的处理,位于一立的PC 上并通过以太网同路由器硬件平台连接由于外接的控制服务器系统的协议栈之下没有具体的硬件设备,因此协议栈必须建立在一个虚拟的通用路由器设备之上图3-1给出内核协议栈和虚拟通用路由器设备层次示意图通过虚拟的通用路由器模型,可以使用户在外接路由服务器PC上的操作“感觉”就像真实作用在路由器硬件设备上一样。

图3-1 内核协议栈和虚拟通用路由器设备虚拟通用路由器设备的功能:1)动态反映真实路由器硬件设备的状态变化;2)把用户对虚拟设备的操作转化为对真实硬件设备的操作;3)通过与协议层和用户空间OpenRouterMaster的交互实现控制信息和IPv6报文的转发虚拟通用路由器设备通过虚拟驱动程序在内核中为系统虚拟出真实路由器的硬件接口,虚拟接口通过内核消息通信模块与用户空间的OpenRouter Master 交互,获得真实硬件接口的状态以及转发报文和控制信息;通过与协议层的交互,接收控制信息的转发报文本原型系统设计了5种类型的虚拟驱动程序,分别对应百兆以太网、千兆以太网、155兆POS、622兆POS 和2.5吉POS接口每种虚拟驱动程序各有14个驱动程序,编号为1~14,分别对应于路由器硬件设备相应槽口号的相应类型的网络接口板这样通过动态加载、卸载驱动程序模块就可以满足对设备热插拔的要求4.2 内核协议栈与用户进程的通信路由服务器同路由器硬件平台之间的通信是通过在用户空间建立的TCP 连接来实现的为了实现协议栈报文到驱动程序的重定向就必须依靠内核协议栈和用户进程的通信在本原型系统中,虚拟驱动程序位于Linux内核空间,与之交互的OpenRouter Master位于用户空间。

因此为了完成控制信息和IPv6报文的转发,就必须解决好内核空间与用户空间的通信问题综合考虑了多种通信策略,结合本系统的实际情况,采用为内核增加一套新的系统调用的方式来满足内核与用户空间通信的需要5 OpenRouter MasterOpenRouter Master负责实现基本的控制报文重定向、数据报文重定向、通用控制协议过程实现、协议报文的编码、IPv6 控制配置分发(路由表分发,邻接表分发)、路由器异步事件报告在现有程序设计中,OpenRouter Master 是zebra、neigh、OpenRouter Agent 以及协议栈内核的通信枢纽它负责如下功能:(1)zebra模块与OpenRouter Agent control通路的双向数据通信;(2)邻居发现监测模块与OpenRouter Agent control通路的双向数据通信;(3)从协议栈内核读取数据,写向OpenRouter Agent Data通路,采用定时轮询方式读取协议栈内核数据;(4)从OpenRouter Agent Data通路读取数据,写给协议栈内核采用select调用方式读取OpenRouter Agent Data通路的数据由于OpenRouter Master 在Linux 系统中负责协调调度来自3方(zebra 进程、Linux内核与OpenRouter Agent)的消息,在zebra 进程、Linux 内核同时与OpenRouter Master通信的过程中面临着访问阻塞的问题,并且考虑到方案实现的阶段性,系统采用双OpenRouter Master的结构。

其中, OpenRouter Master A负责控制报文的转发,OpenRouterMaster B负责数据报文的转发6 OpenRouter AgentOpenRouter Agent模块负责:路由器硬件系统的初始化;路由器能力、功能配置和拓扑结构表示;通用控制协议过程实现;协议报文的编码(OpenRouter Master与OpenRouterAgent的接口规范);通用路由器模型向路由器硬件的控制映射服务器方主要处理控制单元要求转发单元完成的各种操作及操作结果汇报OpenRouter Agent及和消息处理相关的部分统称为控制代理控制代理通过扩展NPAS+和网络处理器进行总 结传统路由器通常基于单个通用CPU,采用实时操作系统,CPU既要完成报文的转发还要运行路由协议和其他控制和管理协议这种将控制和转发集成在一起的紧耦合结构导致对控制层面和转发层面的任何改动都会牵一发而动全身,致使路由器的扩展性和软件的移植性较差转发与控制分离体系结构(forwarding and control element separating, ForCES)的关键思想是打破控制和转发紧耦合的集成方式,将路由器严格地划分为控制和转发两个层面。

控制层面使用通用CPU负责路由的控制和计算,转发层面的每块转发板使用专用CPU(例如网络处理器)负责报文的转发,转发与控制各司其职,在提供高性能报文转发的同时保证了路由控制和计算的高可靠性典型的转发与控制分离体系结构研究包括:网络数据过滤结(the network processing forum ,NPF);IETFForCES;开源路由平台(extensible open router platform ,XORP)等与传统路由器体系结构相比,转发与控制分离的体系结构具有以下特点和优势:(1)较低的开发和应用成本;(2)软件开发可。

下载提示
相似文档
正为您匹配相似的精品文档