- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(北邮大三下现代交换原理实验四MPLS交换实验报告
实验报告课程名称: 现代交换原理与通信网技术 实验名称: MPLS交换实验 班级: 学号: 姓名: schnee 指导教师: 实验四 MPLS交换实验 之三 MPLS编程实验实验目的安排的三个编程实验主要用于加强学生对MPLS交换中标记请求、标记分配与分发、标记分组转发的理解。实验原理及设计 多协议标记交换MPLS(Multiple Protocol Labeled Switching)技术是将第二层交换和第三层路由结合起来的一种L2/L3集成数据传输技术。MPLS是一项面向连接的交换技术,因此有建立连接的过程。各个MPLS设备运行 路由协议,在标记分发协议LDP的控制下根据计算得到的路由在相邻的路由器进行标记分配和分发,从而通过标记的拼接建立起从网络入口到出口的标记交换路径LSP。 在数据转发过程中,入口标记路由器LER根据数据流的属性比如网络层目的地址等将分组映射到某一转发等价类FEC,并为分组绑定标记。核心标记交换路由器LSR只需根据分组中所携带的标记进行转发即可。出口标记路由器LER弹出标记,根据分组的网络层目的地址将分组转发到下一跳。MPLS节点(MPLS标记交换路由器LSR或MPLS边缘路由器LER)均要创建和维护传统的路由表和标记信息库LIB。路由表记录记录路由信息,用于转发网络层分组和标记分发从而建立标记交换路径。LIB记录了本地节点分配的标记与从邻接MPLS节点收到的标记之间的映射关系,用于标记分组的转发。MPLS技术的核心实质在于:(1)网络中分组基于标记的转发(2)LDP协议控制下的进行标记分发从而建立标记交换路径LSP。实验网络的拓扑结构(节点分布示意图):实验主要数据结构: 所需要的头文件:mplsconstant.h其中的主要数据结构为://发送的请求信息包数据结构struct ReqType{int iFirstNode; //请求信息包的源节点int iEndNode; //请求信息包的目的节点double ipaddress; //请求信息包包含的网络层目的IP地址前缀(例如197.42)};//路由表表项的数据结构struct routertype{double ipaddress; //网络层目的地址前缀int nexthop; //下一跳节点int lasthop; //上一跳节点int inpoint; //入端口号int outpoint; //出端口号};//标记信息表表项的数据结构struct libtype{double ipaddress; //网络层目的地址前缀int inpoint; //入端口号int outpoint; //出端口号int inlabel; //入标记值int outlabel; //出标记值};//发送的标记信息包数据结构struct LabelPack{int iFirstNode; //源节点号int iEndNode; //目的节点号int labelvalue; //标签值};struct funcusedtype{struct libtype libinfo; //包含的标记信息表项struct LabelPack labelinfo; //包含的标记信息包数据结构};//发送的标记分组信息包类型struct LabelledDataPack{ int iFirstNode; //源节点号int iEndNode; //目的节点号struct MessageType DataInfo; //包含的标记分组类型信息};//标记分组类型struct MessageType{ double ipaddress; //网络层目的地址前缀int labelvalue; //输出标签值};1:标记请求实验要求函数:extern C _declspec(dllexport) struct ReqType req_process(int idnow,struct routertype routenow){struct ReqType reqtemp;return reqtemp;}参数意义:int idnow:当前的节点号;struct routertype routenow:当前所指的路由表的表项;函数要求:根据提供的当前节点号和路由表表项值产生标记请求包;过程描述: 标记请求包的源节点号由当前节点号提供,目的节点号和ip地址前缀由当前所指的路由表表项的下一跳节点和ip地址前缀提供;2:标记分配与分发实验:extern C _
文档评论(0)