论文部分内容阅读
网络模拟作为一种重要的现代技术,在网络组网、网络协议设计和网络性能优化等方面发挥了重大作用。随着网络技术的不断发展,研究人员也开发出了很多优秀的网络模拟器,NS3网络模拟器就是其中之一。NS3是一个离散事件网络模拟器,主要用于研究和教育用途。同时由于它是免费的开源软件,因此吸引了很多研究者加入到NS3的开发中来。目前,BGP/MPLS VPN组网以其优良的传输性能已被广泛研究与应用,然而,NS3并没有实现BGP/MPLS VPN组网所需的路由协议,无法对使用该协议的网络进行仿真。因此,在目前NS3网络模拟器的基础上,添加实现更多的网络协议就显得尤为重要。但是,目前对于NS3网络协议开发,国内外还鲜有人涉及。因此,本文旨在现有NS3网络模拟器的基础上,分别通过引入第三方软件包和自主设计开发,将BGP、MPLS等路由协议添加到NS3中。本文的主要工作及所取得的成果如下:1.通过引入第三方软件包Quagga将BGP协议添加到NS3网络模拟器中,仿真实现了不同自治域间的通信。并且对比了基于全连接、路由反射器和iBGP2的不同路由重分发策略下仿真效率。2.在NS3中完成了对MPLS协议的设计开发。本文参考MPLS协议的RFC文档,详细阐述了MPLS各个基本组件的设计与实现,包括转发等价类(FEC)、下一跳标签转发条目(NHLFE)、转发等价类FEC到NHLFE的映射(FTN)、输入标签映射(ILM)、标签(Label)等。并且设计了相应的用户接口类,完成协议在NS3网络节点中的配置。最后,通过静态配置标签转发表,仿真实现了私有网络间通过骨干网由MPLS转发实现通信的过程。3.在MPLS协议的基础上设计实现LDP协议,完成了标签的动态分发过程。本文设计实现了LDP协议的基本交互过程,包括LDP邻居发现消息、会话建立消息、标签分发消息和错误通知消息,并且详细阐述了不同消息的设计方法。在LDP协议的基础上,参考CR-LDP的实现机制,设计实现了CR-LDP协议的基本功能。最后,通过LDP协议动态分配标签,仿真实现了私有网络间通过骨干网由MPLS转发实现通信的过程。