您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 工作范文 > 基于click自定义协议软件路由器的-设计与实现
I网络协议设计实验设计文档基于click自定义协议软件路由器的设计与实现二〇一四年十二月II目录一、实验概要及实验设计............................................................1(一)实验概要..............................................................................1(二)实验目的..............................................................................1(三)实验分析..............................................................................11、协议分析............................................................................12、协议设计............................................................................2二、实验设计......................................................................................4(一)实验流程..............................................................................4(二)click路由器总体设计..........................................................51.路由器报文分类概要设计.................................................52.路由器报文转发概要设计.................................................63.Label标签信息库结构........................................................94.优先级调度概要设计.........................................................95.基于优先级的限速功能的概要设计................................10(三)click路由器转发流程设计................................................111.PSP路由转发流程详细设计............................................112.Label报文转发详细设计..................................................12(四)主要组件设计....................................................................141.Fastpspsource组件...........................................................142.LableRouteTable................................................................15III3.LableLookup......................................................................154.RateLimit...........................................................................16三、实验演示....................................................................................17(一)PSP路由转发测试.............................................................171.实验拓扑图.......................................................................172.实验测试方法...................................................................173.配置文件...........................................................................174.测试结果...........................................................................185.结果总结...........................................................................20(二)基于Label的路由转发测试..............................................211.实验拓扑图.......................................................................212.配置文件...........................................................................213.测试结果...........................................................................214.结果总结...........................................................................21(三)优先级队列调度功能测试................................................211.实验拓扑图.......................................................................212.实验测试方法...................................................................213.配置文件...........................................................................224.测试结果...........................................................................235.结果总结...........................................................................24(四)标签流按优先级分别进行限速功能测试.........................241.实验拓扑图.......................................................................24IV2.配置文件...........................................................................253.测试结果...........................................................................264.结果总结...........................................................................27四、实验分工............................................................................271一、实验概要及实验设计(一)实验概要本实验目的为基于已有的click开源软件实现一个自定义协议的软件路由器完整转发流程,具体包含五个核心任务:报文分类处理;PSP报文分组转发流程(包含PSP头检查、TTL减一、转发表);定长标签交换流程(包含标签头解封装、标签表、标签头封装);标签流8个优先级队列调度;标签流按照优先级分别进行限速。(二)实验目的通过实验设计,深入理解软件路由器的基本原理、组成和实现,掌握计算机网络研究所需的基本设计技能,包括系统设计能力、软件编程能力、整体表述能力和新思想的实验验证能力,为开展计算机网络方向的深入研究奠定实际验证基础。(三)实验分析1、协议分析一个完整的路由协议需要完成的功能包含以下内容:制定指导数据报文分组从一个网络到另一个网络的规定和标准;创建路由表,并维护网络拓扑结构;运行路由协议,执行路由选择和分组转发功能。这对我们接下来的协议设计提出了基本的要求,即对于网络中的每一2层都需要定义报文的格式,然后对于报文在网络中的发送、接收和转发都有稳定的拓扑结构。2、协议设计一个自定义的协议簇(ABC),包括地址编址结构、网络互连与路由转发等多个简单协议,对其进行详细说明如下:(1)地址编制结构(64位),其中前16位为网络标识,后48为接口标识。实际操作中,接口标识为该接口的MAC地址,与前16位拼接为64位地址。(2)链路层协议,规定了以太网的封装格式如下:其中,IP报文类型定义为0x6000,标签(LABEL)报文类型定义为0x6001。(3)2.5层标签交换协议,规定了标签交换头的封装格式,并约定标签交换头后默认为PSP格式的报文。(4)网络层协议,定义了网络层报文头格式。3其中TOS为0-15,表示报文的传输优先级;标识符标注报文的序号;载荷长度为不包括报文头的报文内容长度;下一报头类型为1时表示为ABC_ICMP协议,为2时表示为ABC_UDP协议;跳数限制最大为64,并且每经过一个路由器,其值减1,其值为0时报文被丢弃;源地址和目的地址分别记录发送方和目的方地址。(5)定义了ABC_UDP(ABC不可靠传输协议)报文头格式。(6)基本实验拓扑如图所示,根据以太网报文头中包含的以太网的目的地址、源地址和报文类型,ABC协议就能实现一个简单的报文收发过程。4(7)包含转发过程的实验拓扑一个简单的转发过程包含以下的步骤:从发送方接收报文;更改报文的源地址以及目的地址;通过端口发出报文。示意图如下:二、实验设计(一)实验流程1.准备工作a)下载修改后的Click源代码;b)安装Fedora虚拟机,配置开发、测试环境;c)编译源码,运行Demo实验;d)学习Click基础知识,查看源码,了解组件的设计方法和组件的配置文件。2.系统概要设计充分了解实验任务,进行初步的概要设计,设计包括组件的功5能和组织。3.编码4.实验环境搭建5.代码集成和测试首先各个组件需要通过单元测试,最后集成起来进行系统测试。6.编写实验报告文档(二)click路由器总体设计1.路由器报文分类概要设计报文主要分为四种类型:ARPQuery报文、ARPResponse报文、PSP报文、Label报文。从输入组件中获取数据包,发送到数据包分类器。概要图如下图所示:FromDevice1FromDevi
本文标题:基于click自定义协议软件路由器的-设计与实现
链接地址:https://www.777doc.com/doc-4312724 .html