基于click自定义协议软件路由器的-设计与实现.doc
《基于click自定义协议软件路由器的-设计与实现.doc》由会员分享,可在线阅读,更多相关《基于click自定义协议软件路由器的-设计与实现.doc(32页珍藏版)》请在咨信网上搜索。
1、.网络协议设计实验设计文档基于click自定义协议软件路由器的设计与实现二一四年十二月目 录一、实验概要及实验设计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.LableRouteTabl
2、e153.LableLookup154.RateLimit16三、实验演示17(一)PSP路由转发测试171.实验拓扑图172.实验测试方法173.配置文件174.测试结果185.结果总结20(二)基于Label的路由转发测试211.实验拓扑图212.配置文件213.测试结果214.结果总结21(三)优先级队列调度功能测试211.实验拓扑图212.实验测试方法213.配置文件224.测试结果235.结果总结24(四)标签流按优先级分别进行限速功能测试241.实验拓扑图242.配置文件253.测试结果264.结果总结27四、实验分工27合同范本精选!一、实验概要及实验设计(一)实验概要 本实验目
3、的为基于已有的click开源软件实现一个自定义协议的软件路由器完整转发流程,具体包含五个核心任务:报文分类处理;PSP报文分组转发流程(包含PSP头检查、TTL减一、转发表);定长标签交换流程(包含标签头解封装、标签表、标签头封装);标签流8个优先级队列调度;标签流按照优先级分别进行限速。(二)实验目的通过实验设计,深入理解软件路由器的基本原理、组成和实现,掌握计算机网络研究所需的基本设计技能,包括系统设计能力、软件编程能力、整体表述能力和新思想的实验验证能力,为开展计算机网络方向的深入研究奠定实际验证基础。(三)实验分析1、协议分析一个完整的路由协议需要完成的功能包含以下内容:制定指导数据报
4、文分组从一个网络到另一个网络的规定和标准;创建路由表,并维护网络拓扑结构;运行路由协议,执行路由选择和分组转发功能。这对我们接下来的协议设计提出了基本的要求,即对于网络中的每一层都需要定义报文的格式,然后对于报文在网络中的发送、接收和转发都有稳定的拓扑结构。2、协议设计一个自定义的协议簇(ABC),包括地址编址结构、网络互连与路由转发等多个简单协议,对其进行详细说明如下:(1) 地址编制结构(64位),其中前16位为网络标识,后48为接口标识。实际操作中,接口标识为该接口的MAC地址,与前16位拼接为64位地址。(2) 链路层协议,规定了以太网的封装格式如下:其中,IP报文类型定义为0x600
5、0,标签(LABEL)报文类型定义为0x6001。(3) 2.5层标签交换协议,规定了标签交换头的封装格式,并约定标签交换头后默认为PSP格式的报文。(4) 网络层协议,定义了网络层报文头格式。其中TOS为0-15,表示报文的传输优先级;标识符标注报文的序号;载荷长度为不包括报文头的报文内容长度;下一报头类型为1时表示为ABC_ICMP协议,为2时表示为ABC_UDP协议;跳数限制最大为64,并且每经过一个路由器,其值减1,其值为0时报文被丢弃;源地址和目的地址分别记录发送方和目的方地址。(5) 定义了ABC_UDP(ABC不可靠传输协议)报文头格式。(6) 基本实验拓扑如图所示,根据以太网报
6、文头中包含的以太网的目的地址、源地址和报文类型, ABC协议就能实现一个简单的报文收发过程。(7) 包含转发过程的实验拓扑一个简单的转发过程包含以下的步骤:从发送方接收报文;更改报文的源地址以及目的地址;通过端口发出报文。示意图如下:二、实验设计(一)实验流程 1. 准备工作a) 下载修改后的Click源代码;b) 安装Fedora虚拟机,配置开发、测试环境;c) 编译源码,运行Demo实验;d) 学习Click基础知识,查看源码,了解组件的设计方法和组件的配置文件。2. 系统概要设计充分了解实验任务,进行初步的概要设计,设计包括组件的功能和组织。3. 编码4. 实验环境搭建5. 代码集成和测
7、试首先各个组件需要通过单元测试,最后集成起来进行系统测试。6. 编写实验报告文档(二)click路由器总体设计1. 路由器报文分类概要设计报文主要分为四种类型:ARP Query报文、ARP Response报文、PSP报文、Label报文。从输入组件中获取数据包,发送到数据包分类器。概要图如下图所示:其中,根据以太网头部类型信息进行分类,如下所示:ARP QueryPSPLabelARP Response类型码0x08060x60000x60010x08062. 路由器报文转发概要设计路由器报文转发的概要设计图如下所示,其中包含两条主线:一是基于PSP协议的路由转发,二是基于Label标签的
8、路由转发。两条主线的公用组件的作用如下表所示:组件/流程名称组件/流程作用FromDevice从指定端口获取数据包,转发给下一个组件Classifier数据包类型分类器,根据以太网头部类型信息把数据分为四类:ARP Query 、ARP Response 、PSP 报文、Label 报文TTL - 1将报文的TTL 进行减一操作,当TTL为时,不再转发报文ARP Query查询目的IP对应的Mac地址Modify Ether Header修改以太网头部ToDevice将数据包发送到指定端口对于PSP报文的路由转发,其中的两个组件功能如下:组件/流程名称组件/流程作用Get Dest Addre
9、ss获取PSP报文的目的地址Lookup Router Table查询路由表,得到要转发的端口对于Label报文的路由转发,其中的两个组件的功能如下:组件/流程名称组件/流程作用Lookup LIB根据标签号,查询标签信息库,得到新的标签号和转发端口。Modify Label for next jump修改标签头部信息中的标签号为查表得到新标签号(1) 对于PSP报文路由转发,首先根据PSP头部中的目的地址查询路由表,得到转发端口;然后进行TTL-1、修改Ether头部中的目的Mac,然后从查询到的转发端口进行发送。(2) 对于急于标签的路由转发,首先根据Label头部的标签号查询标签信息库,
10、得到新的标签号和转发端口,并修改Label头部的标签号为新的标签号。然后进行TTL-1,修改Ether头部中的目的Mac,然后从查询到的转发端口进行发送。3. Label标签信息库结构标签信息库维护基于标签交换的路由转发信息。当一个带有标签的报文进入路由器的时候,首先根据标签头部的Label ID查找标签信息库,得到下一跳的Label ID和转发端口。其结构信息如下: 4. 优先级调度概要设计对于标签交换,当输入组件获取数据包,经数据分类器分类后,确定为Label报文,转发给优先级分类器。优先级分类器根据Label头部中的QOS字段进行优先级判定,分别加入不同优先级的队列中。优先级调度组件根据
11、优先级调度算法进行调度,从不同优先级的队列中获取数据包,发送到待发送数据队列。其中,调度算法是为了保证低优先级的报文不至于饿死,采用时间片轮转的方式,即给高优先的队列分配更多的时间。5. 基于优先级的限速功能的概要设计(三)click路由器转发流程设计1. PSP路由转发流程详细设计组件/流程功能描述FastPSPSource组件按照一定的速度产生PSP报文,模拟发送端FromDevice组件从指定的端口获取数据包,转发到下一个组件Classifier组件数据包分类器,根据以太网头部的类型信息进行分类,PSP报文的类型信息为0x6000Get Dest Address该步骤从PSP报文头部获取
12、目的地址,用来查询路由表,获取转发端口Lookup Router table根据目的地址,查找路由表,获取转发端口TTL-1将报文TTL进行减一操作ARP QueryARP查询,获取下一跳的目的Mac地址Modify Ethernet Header根据查询到的下一跳目的Mac地址,修改报文以太网头部目的Mac字段Add to Queue添加到待发送数据包的队列中ToDevice组件从Queue中获取数据包,从指定网口发送出去2. Label报文转发详细设计发送者生成PSP报文,经过AddLabelHeader组件添加标签头,发送到路由器;Click 路由器从网口接受数据,进过分类器后,确定为基
13、于标签交换的报文。然后查询标签信息库,并修改下一条标签号,经过TTL-1,目的MAC地址修改,转发到相应端口。接受者从网口获取数据包,丢掉LabelHeader。组件/流程功能介绍AddLabelHeader在普通PSP数据包上添加标签头信息,让路由器可以基于标签进行交换Lookup LIB查询标签信息库,获取下一跳Label ID和输出端口Modify Label for next jump修改标签头 Label ID字段,让下一跳路由可以转发Remove Label Header移除Label Header,得到PSP报文(四)主要组件设计 1. Fastpspsource组件组件名字Fa
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 click 自定义 协议 软件 路由器 设计 实现
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。