




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
淮阴工学院 课课程程学学期期论论文文 课程名称 课程名称 通信设备 自学 选题名称 选题名称 一种新型 IPv6 路由器 系 院 系 院 计 算 机 工 程 系 专专 业 业 通 信 工 程 班班 级 级 通 信 1051 姓姓 名 名 张 姆 敏 学学 号号 1051302133 指导教师 指导教师 于 永 彦 学年学期 学年学期 2008 2009 学年 第 1 学期 2008年 12月 19 日 摘要 传统路由器通常基于单个通用 CPU 采用实时操作系统 CPU 既要完成报文的转 发还要运行路由协议和其他控制和管理协议 这种将控制和转发集成在一起的紧耦合 结构导致对控制层面和转发层面的任何改动都会牵一发而动全身 致使路由器的扩展 性和软件的移植性较差 转发与控制分离体系结构将路由器严格划分为控制和转发两个层面 具有开发成 本低 系统可扩展性强 可靠性高等优点 文章介绍了一种基于转发与控制分离设计 思想的互联网协议第六版 Internet Protocal Version 6 IPv6 路由器 给出了控制平面 软件模块设计 包括路由子系统 内核协议栈 用户空间的应用级进程 OpenRouter Master 用户空间的代理级进程 OpenRouter Agent 等模块 关键词 IPv6 路由器 控制与转发分离 体系结构 目目 录录 1 论文综述 1 2 OPENROUTER 总体框架 1 2 1 系统体系结构 1 2 2 软件总体视图 1 3 路由子系统设计与实现 2 4 基于虚拟路由器模型的协议栈 3 4 1 虚拟驱动程序 3 4 2 内核协议栈与用户进程的通信 3 5 OPENROUTER MASTER 4 6 OPENROUTER AGENT 4 总 结 5 参 考 文 献 6 1 1 论文综述论文综述 转发与控制分离体系结构 forwarding and control element separating ForCES 的关 键思想是打破控制和转发紧耦合的集成方式 将路由器严格地划分为控制和转发两个 层面 控制层面使用通用 CPU 负责路由的控制和计算 转发层面的每块转发板使用 专用 CPU 例如网络处理器 负责报文的转发 转发与控制各司其职 在提供高性能报 文转发的同时保证了路由控制和计算的高可靠性 本文介绍一种基于 ForCES 思想的 IPv6 路由器 通用路由体系结构 OpenRouter 模型的设计与实现 着重介绍 ForCES 体系结构下 OpenRouter IPv6 路由器控制平面的 设计与实现 2 2 OpenRouter 总体框架总体框架 2 12 1 系统体系结构系统体系结构 OpenRouter IPv6路由器是国防科大计算机学院在自行研制的传统IPv4路由器结构 基础上 开发研制的一款支持IPv6 采用转发与控制分离设计理念的新型路由器原型 系统 系统继承了传统IPv4路由器的硬件与微码系统 修改微码 使其能够支持IPv6 报文转发 所有有关IPv6的路由协议和控制报文的计算与处理不再由路由器内部的 CPU完成 而是使用外接通用计算机处理 称之为路由服务器 整个OpenRouter IPv6 路由器由路由服务器和传统路由器设备组成 作为转发平面的传统路由器设备功能包括 IPv6报文硬件转发 重定向目的报文 到路由服务器 接收和响应来自路由服务器的控制报文 并转化为对被控路由器的操 作执行 路由分离控制协议 主动向路由服务器报告异步事件 作为控制平面的路由服务器基于开源路由软件 GUI zebra 完成下列功能 IPv6控制协议 如路由协议 IPv6协议栈 邻居发现等 通用路由器抽象模型及控制 接口 路由器分离控制协议 路由器用户界面 2 22 2 软件总体视图软件总体视图 所有和IPv6路由协议相关的处理 全部由外置的路由服务器IPv6系统完成 IPv6 转发表同样由外部IPv6系统生成之后发送给设备的主控 在外置路由服务器和路由器 的主控之间遵循标准的协议和接口 OpenRouter 路由器控制软件划分为以下子系统 路由子系统 协议栈及路由设备 抽象 OpenRouter Master OpenRouter Agent和控制微码扩展 IPv6微码功能支持 3 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 4 基于虚拟路由器模型的协议栈基于虚拟路由器模型的协议栈 内核协议栈需实现的功能包括 慢速路径的转发平面 TCP IP协议栈 通用路由 器的实现表示 如虚拟驱动程序 内核消息通信 内核与OpenRouter的接口规范 4 14 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 24 2 内核协议栈与用户进程的通信内核协议栈与用户进程的通信 路由服务器同路由器硬件平台之间的通信是通过在用户空间建立的TCP 连接来实 现的 为了实现协议栈报文到驱动程序的重定向就必须依靠内核协议栈和用户进程的 通信 在本原型系统中 虚拟驱动程序位于Linux内核空间 与之交互的OpenRouter Master位于用户空间 因此为了完成控制信息和IPv6报文的转发 就必须解决好内核 空间与用户空间的通信问题 综合考虑了多种通信策略 结合本系统的实际情况 采 用为内核增加一套新的系统调用的方式来满足内核与用户空间通信的需要 5 5 OpenRouterOpenRouter MasterMaster OpenRouter 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 6 OpenRouterOpenRouter AgentAgent OpenRouter 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 软件开发可以独立于具体的硬件平台 3 增 强了系统的扩展性和可靠性 本文基于控制与转发分离思想设计实现了一个IPv6路由器 重点介绍OpenRouter 原型系统各模块设计与实现 OpenRouter原型系统目前可在实际网络中与Cisco等路 由器互联 构成IPv6 网络 今后将在此基础上进一步研究多个转发单元 多个控制 单元如何协同工作 冗余备份等问题 另外 还将研究基于控制与转发分离的路由器 与传统
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度仓储租赁合同与仓储物流物流配送信息系统服务合同范本
- 二零二五年度人工智能项目担保借款合同
- 二零二五年度资产保全担保服务合同范本
- 二零二五年度百货业电子发票系统实施及维护合同
- 二零二五年保健品市场调研与品牌策划合同
- 二零二五年度汽车后市场服务连锁经营合同模板
- 二零二五年度经济适用型厂房及办公楼租赁管理合同
- 二零二五年金融产品标志设计及服务合同
- 二零二五年度甲级写字楼租赁与服务合同
- 二零二五年度个性化离婚协议起草及咨询服务合同
- 医院防汛救灾管理制度
- 锅炉试题及答案
- 2025年小学美术教师招聘考试必考美术学科专业知识汇编(160题)
- DB43-T 2066-2021 河湖管理范围划定技术规程
- 《体重管理年行动》科普指南课件
- 技术经理人考试试题及答案
- uom无人机考试试题及答案
- 误差检测优化策略-全面剖析
- 生态环保培训课件
- 2025年理财师资格考试参考题目试题及答案
- 柔性引进团队协议书
评论
0/150
提交评论