分布式 gre 隧道实现

上传人:w****i 文档编号:115337176 上传时间:2019-11-13 格式:PDF 页数:86 大小:2.45MB
返回 下载 相关 举报
分布式 gre 隧道实现_第1页
第1页 / 共86页
分布式 gre 隧道实现_第2页
第2页 / 共86页
分布式 gre 隧道实现_第3页
第3页 / 共86页
分布式 gre 隧道实现_第4页
第4页 / 共86页
分布式 gre 隧道实现_第5页
第5页 / 共86页
点击查看更多>>
资源描述

《分布式 gre 隧道实现》由会员分享,可在线阅读,更多相关《分布式 gre 隧道实现(86页珍藏版)》请在金锄头文库上搜索。

1、代号代号 分 类 号分 类 号 学号学号 密级密级 1070110701 TP311.52TP311.52 公开公开 09814903770981490377 题题(中、英文)(中、英文)目目 分布式分布式 GRE 隧道实现隧道实现 Implementation of GRE tunnel on distributed switches 作者姓名作者姓名 丁伟丁伟 指导教师姓名指导教师姓名、 职务职务 胡建伟副教授胡建伟副教授 学科门学科门类类 工程工程 提交论文日期提交论文日期 二零一一年二零一一年 十二月十二月 学科、专业学科、专业 软件工程软件工程 西安电子科技大学西安电子科技大学 学位

2、论文学位论文创新创新性声明性声明 秉承学校严谨的学风和优良的科学道德,本人声明所呈交的论文是我个人在 导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标 注和致谢中所罗列的内容以外,论文中不包含其他人已经发表或撰写过的研究成 果;也不包含为获得西安电子科技大学或其它教育机构的学位或证书而使用过的 材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中做了明确的说 明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切法律责任。 本人签名: 日 期: 西安电子科技大学西安电子科技大学 关于论文使用授权的说明关于论文使用授权的说明 本人完全了解西安电子科技大学有关保

3、留和使用学位论文的规定, 即: 研究生 在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。学校有权保留 送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全部或部分内容, 可以允许采用影印、缩印或其它复制手段保存论文。同时本人保证,毕业后结合 学位论文研究课题再撰写的文章一律署名单位为西安电子科技大学。 (保密的论文在解密后遵守此规定) 本学位论文属于保密,在 年解密后适用本授权书。 导师签名: 日 期: 本人签名: 日 期: 摘要 摘要摘要 GRE 隧道是一种三层封装技术,它是利用一种网络协议来传输另一种网络协 议,虚拟的点对点的连接技术。在交换机和路由器产品上,三层隧道技术表

4、现为 隧道接口,隧道接口是一个虚拟的工作在网络层上的全局接口。隧道接口对报文 的处理包括交换机硬件收包,上送驱动,驱动将数据包上送隧道内核态处理三部 分。 论文首先分析隧道与 GRE 协议本身,了解隧道的应用场景。分析交换机软件 平台上接口管理、FIB、ADJ 等与隧道功能关联的模块,明确隧道接口创建,隧道 接口链路层状态 up 和报文加封装解封装处理的需求。利用接口管理模型和事件机 制实现隧道接口创建功能和隧道链路层状态 up 功能,利用邻接表技术实现乘客报 文加封装功能,利用协议栈技术实现传输报文解封装功能。接下来模拟了分布式 报文转发环境,构造和执行测试用例,验证隧道模块实现的正确性。论

5、文最后对 工作内容做出了总结。 关键字:关键字: 隧隧道接口道接口 GRE 配置配置 状态控制状态控制 报文转发报文转发 分布式 GRE 隧道实现 Abstract Abstract GRE tunneling technology is a three-layer packaging technology, it is a network protocol used to transmit data to another network protocol, a virtual point to point connection technology. On switches and rout

6、ers, tunnel technique performs as a tunnel interface; a virtual tunnel interface is working at the network layer as the global interface. A complete tunnel packet forwarding process, including closing the switch hardware package, delivery to driver, and the packet will be sent to the tunnel kernel m

7、ode packet processing parts. Paper first analyzes the tunnel with the GRE protocol itself and the tunnel scenario. Analysis of the switch software platform interface management, FIB, ADJ and other functions associated with the tunnel module, ensure the interface message to create the tunnel interfac

8、e and make tunnel link state up, make sure of encapsulation and de-encapsulation packet processing requirements.Use the interface control module and message mechanism to design and implementation of the tunnel creation and tunnel link layer up function,use the ADJ function to design the tunnel encap

9、sulation function,use the protocol stack to design the de-encapsulation function. The next simulation environment for distributed packet forwarding, construct and execute test cases to verify the correctness of the tunnel module. Finally, make a summary of the content of the paper. Keyword: tunnel G

10、RE configure link-control forward 分布式 GRE 隧道实现 目录 目录目录 第一章 绪论 1 1.1 研究背景 . 1 1.2 国内外现状 . 3 1.2.1 分布式交换机产品 3 1.2.2 GRE 隧道技术研究现状 5 1.3 论文的工作和结构 . 6 第二章 GRE 隧道协议分析 9 2.1 三层隧道分析 . 9 2.2 GRE 协议分析 . 12 2.3 交换机隧道功能介绍 13 2.3.1 硬件转发与软件转发 . 13 2.3.2 GRE 隧道应用场景 16 第三章 分布式隧道功能需求分析 . 19 3.1 接口管理模型介绍 . 19 3.1.1 接

11、口表示方式 19 3.1.2 接口状态定义 20 3.1.3 接口管理事件上报模型 20 3.1.4 分布式环境下事件同步 23 3.2 分布式隧道接口创建需求分析 . 25 3.2.1 接口创建用户需求 25 3.2.2 接口创建事件需求 25 3.3 分布式隧道接口链路层状态 up 需求 26 3.3.1 接口配置用户需求 26 3.3.2 分布式配置同步需求 26 3.3.3 linkUp 事件驱动流程需求 . 27 3.4 分布式隧道转发需求分析 . 29 3.4.1 全局口报文转发方式需求 29 3.4.2 路由管理,FIB,ADJ 模块关联性分析 30 3.4.3 基于 ADJ 的

12、入隧道报文转发需求分析 . 32 3.4.4 出隧道报文需求分析 33 分布式 GRE 隧道实现 3.5 隧道模块顶层 DFD 图实现 34 第四章 分布式 GRE 隧道设计与实现 37 4.1 系统总体框架设计 . 37 4.1.1 隧道基础框架设计 37 4.1.2 隧道总体框架设计 38 4.1.3 数据结构设计 39 4.2 隧道接口创建 41 4.2.1 接口创建命令行实现 41 4.2.2 接口创建事件驱动流程设计 42 4.2.3 接口创建事件驱动流程实现 43 4.3 接口链路层状态 up 设计与实现 46 4.3.1 源和目的地址配置命令行实现. 46 4.3.2 配置同步实

13、现 46 4.3.3 linkUp 事件驱动流程设计 . 47 4.3.4 接口链路层状态 up 实现 49 4.4 隧道转发模块设计与实现 . 51 4.4.1 基于 ADJ 的加封装功能设计 . 51 4.4.2 基于 ADJ 的加封装功能实现 . 54 4.4.3 出隧道报文解封装功能设计 56 4.4.4 出隧道报文解封装功能实现 57 第五章 分布式 GRE 隧道功能测试 61 5.1 测试场景搭建 61 5.2 隧道接口创建功能测试 63 5.3 接口链路层状态 up 测试 65 5.4 分布式转发报文测试 67 第六章 总结 . 71 致谢 73 参考文献 75 第一章 绪论 1

14、 第一章第一章 绪论绪论 GRE 全称 Generic Routing Encapsulation,中文称为通用路由封装协议。它由 Cisco 等公司制定,在 RFC 标准中表现为 RFC1701 和 RFC1702。它利用一种网络 层协议和 GRE 协议对原始报文进行封装,使原始报文能够在另一种协议的网络中 传输。GRE 采用了三层隧道技术,是 VPN(Virtual Private Network)的第三层隧 道协议。 1.1 研究背景 本人研究生二年级在杭州华三通信技术有限公司进行了为期一年的实习, 期间 参与了交换机软件平台隧道模块的开发,本论文是根据实习经验整理而成。该项 目着眼于分

15、布式交换机环境下隧道功能的实现。 交换机产品上隧道接口可表现为三维接口和全局接口两种形态1。 本论文将隧道接口作为全局口实现。隧道接口作为全局口有两层含义。 (1)各块板上保存的同一隧道接口的描述需要保持同步一致。 (2)三维口的形态存在于具体某块板上,全局接口的形态存在于每块板上。 图 1.1 三维口与全局口的区别 如图 1.1 所示,当前分布式交换机上存在三个接口,分别是以太网口 0/0/2,以 太网口 2/0/2,0 号隧道接口(编号为 0) 。以太网口 0/0/2 和以太网口 2/0/2 是三维 接口类型:隧道 接口编号:0 物理层状态:up 协议层状态:up IPv4地址:1.1.1

16、.1 主用板 接口板 接口类型:以太网口 接口编号:0/0/2 物理层状态:up 协议层状态:down IPv4地址:1.1.2.1 接口类型:隧道 接口编号:0 物理层状态:up 协议层状态:up IPv4地址:1.1.1.1 接口类型:以太网口 接口编号:2/0/2 物理层状态:up 协议层状态:down IPv4地址:2.1.1.1 2 分布式 GRE 隧道实现 口,以太网口 0/0/2 位于主用板上,以太网口 2/0/2 位于接口板上。同一台交换机 上不允许存在两个以上的接口的 IPv4 地址属于同一网段,因此以太网口 0/0/2 的 IPv4 地址为 2.1.1.1,以太网口 0/0/2 的 IPv4 地址为 1.1.2.1。 0 号隧道口的形态存在于每块板上。主用板和接口板分别存有对 0 号隧道接口 的描述,不同板对于同一隧道接口的描述需保持一致。比如说两块板

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号