System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及通信交互,特别是涉及一种面向虚拟化容器与ns-3的数据通信交互系统和方法。
技术介绍
1、随着网络技术的不断发展和虚拟化技术的广泛应用,基于容器的虚拟化技术成为实现网络功能虚拟化(network functions virtualization, nfv)和云计算的关键手段。虚拟化容器技术(也称docker容器)通过提供高效的资源利用和轻量级的虚拟环境,使得开发、测试及部署网络应用变得更加灵活。然而,在网络应用的开发和验证过程中,需要一种有效的手段来模拟真实的网络环境,以便进行协议验证、性能评估和网络行为分析。
2、ns-3(network simulator version-3,网络模拟器)作为一款开源的网络仿真工具,能够模拟物理世界中的各种类型的网络结构,广泛用于网络协议的开发、测试与验证。然而,传统的ns-3仿真环境与虚拟化容器之间缺乏有效的交互机制,难以实现基于容器环境的数据通信仿真。这使得在开发与测试虚拟化网络应用时,无法对其在实际网络环境中的行为进行精确模拟,限制了网络仿真结果的有效性和可靠性。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种面向虚拟化容器与ns-3的数据通信交互系统和方法,以实现虚拟化容器应用与ns-3网络仿真器之间的无缝连接,从而增强虚拟化容器环境下网络协议和应用的开发、测试及验证的效率和准确性,为后续大规模、分布式虚拟网络仿真及开发提供数据通信的基础底座。
2、一种面向虚拟化容器与ns-3的数据通信交互
3、其中,虚拟化容器单元包含若干个虚拟化容器,各虚拟化容器相互隔离,且通过内部配置的虚拟以太网接口与数据交互通道连接进行数据通信交互;
4、ns-3仿真环境单元包含若干个ns-3网络场景,各ns-3网络场景内部的用户空间中配置有tapbridge网络设备、控制中心以及若干个网络节点,各ns-3网络场景通过对应的tapbridge网络设备与数据交互通道连接进行数据通信交互,并通过与tapbridge网络设备连接的控制中心,将数据转发至内部的网络节点;
5、数据交互通道用于实现各虚拟化容器与各ns-3网络场景之间的数据通信交互,由虚拟化网桥、路由协调器以及若干个tap设备组成;其中,数据交互通道中的tap设备的数量与虚拟化容器以及ns-3网络场景的数量一致,且一一对应;
6、其中,虚拟化网桥的一端与各虚拟化容器的虚拟以太网接口连接,虚拟化网桥通过创建并自定义虚拟网络,实现各虚拟化容器在同一主机上进行跨容器的数据通信交互,并实现各虚拟化容器与外部网络之间的数据通信交互;
7、路由协调器分别与虚拟化网桥的另一端以及若干个相互隔离的tap设备的一端连接,路由协调器通过收集并更新系统网络中所有链路的路由信息,设置路由策略与数据包转发优先级,监测数据包流向,并动态更新路由表,根据路由策略调控通信交互时数据包的转发路径,并根据数据包转发优先级进行数据包有序转发;
8、若干个相互隔离的tap设备的另一端与各ns-3网络场景的tapbridge网络设备一一对应连接,各tap设备通过收发数据包并进行网络流量监控,实现各ns-3网络场景与外部网络之间的数据通信交互。
9、进一步地,在各虚拟化容器内部运行有特定的应用程序或网络服务,且对应配置有相应的网络协议栈、网卡和虚拟以太网接口;网络协议栈的一端与网卡相连,另一端连接应用程序或网络服务;虚拟以太网接口由两个成对存在的虚拟网络接口组成,虚拟以太网接口的一端连接网卡,另一端与数据交互通道中的虚拟化网桥连接。
10、进一步地,当虚拟化容器内部运行ns-3应用程序时,网络协议栈由tap设备与tapbridge网络设备组成,此时,tapbridge网络设备位于ns-3应用程序中,并与应用程序外部的tap设备连接,tap设备另一端与虚拟化容器内部的网卡相连。
11、进一步地,各虚拟化容器中的虚拟以太网接口使用于不同的网络命名空间中,且网络命名空间通过符号方式连接到对应的虚拟化容器中。
12、进一步地,各个ns-3网络场景中的控制中心的一端与tapbridge网络设备连接,控制中心的另一端与内部的网络节点相连,控制中心用于为所在网络场景中的网络节点分配ip地址、创建网络拓扑、安装协议栈、设置信道模型、传输模型以及转发数据包,且每个网络节点具有多个网络接口,能够发送和接收数据包,并与其他网络节点进行通信;具体地,当控制中心转发数据包至网络节点时,先构建网络节点端ip的地址映射表,在接收到虚拟化容器发送的数据包后,通过读取数据包对应的目的ip并查询地址映射表,将数据包转发至对应ip的网络节点中。
13、进一步地,ns-3仿真环境单元中还包括ns-3通道,ns-3通道与各ns-3网络场景中的控制中心连接,通过ns-3通道,各配备有套接字对象的控制中心采用udp套接字通信机制并以广播的形式与其他ns-3网络场景中的控制中心进行数据和信息交互,并在接收到信息后,根据相应信息调整控制中心自身的网络状态和网络配置。
14、一种面向虚拟化容器与ns-3的数据通信交互方法,所述方法基于上述的面向虚拟化容器与ns-3的数据通信交互系统实现,包括以下步骤:
15、步骤1,通过配置yaml文件对虚拟化容器单元中的若干个虚拟化容器进行服务定义;具体包括配置容器名称、构建容器基本配置、配置各虚拟化容器与虚拟化网桥进行连接以及为各虚拟化容器启动终端支持,使得各虚拟化容器接收终端输入并显示输出;
16、步骤2,通过配置虚拟化容器文件定义若干个虚拟化容器的运行环境与执行任务;其中,执行任务包括构建虚拟化容器基础环境、安装基础网络工具以及加载数据任务;
17、步骤3,通过虚拟化容器编排工具对若干个虚拟化容器的应用服务进行快速编排;
18、步骤4,通过运行shell脚本自动化创建并配置数据交互通道中的虚拟化网桥和若干个tap设备,并根据步骤1至步骤3中定义编排的文件,配置部署若干个虚拟化容器,并配置各虚拟化容器的虚拟以太网接口、网卡、ip地址和mac地址;
19、步骤5,在ns-3仿真环境单元中搭建若干个ns-3网络场景并进行相关配置,并通过各ns-3网络场景的用户空间中配置的tapbridge网络设备,将各tapbridge网络设备与数据交互通道中的各tap设备一一对应连接;其中,数据交互通道中的tap设备的数量与虚拟化容器以及ns-3网络场景的数量一致,且一一对应;
20、步骤6、配置数据交互通道中的路由协调器,根据路由协调器设置路由策略与数据包转发优先级,监测数据包流向,并动态更新路由表;
21、步骤7,根据配置完善的数据交互通道,将各虚拟化容器内产生的数据包发送至各ns-3网络场景内的网络节点中,并将各ns-3网络场景中网络节点生成的数据包发送至各虚本文档来自技高网...
【技术保护点】
1.一种面向虚拟化容器与NS-3的数据通信交互系统,其特征在于,所述系统由虚拟化容器单元、NS-3仿真环境单元以及数据交互通道组成;
2.根据权利要求1所述的面向虚拟化容器与NS-3的数据通信交互系统,其特征在于,在各虚拟化容器内部运行有特定的应用程序或网络服务,且对应配置有相应的网络协议栈、网卡和虚拟以太网接口;所述网络协议栈的一端与网卡相连,另一端连接应用程序或网络服务;所述虚拟以太网接口由两个成对存在的虚拟网络接口组成,所述虚拟以太网接口的一端连接网卡,另一端与所述数据交互通道中的虚拟化网桥连接。
3.根据权利要求2所述的面向虚拟化容器与NS-3的数据通信交互系统,其特征在于,当虚拟化容器内部运行NS-3应用程序时,所述网络协议栈由Tap设备与TapBridge网络设备组成,此时,TapBridge网络设备位于NS-3应用程序中,并与应用程序外部的Tap设备连接,Tap设备另一端与虚拟化容器内部的网卡相连。
4.根据权利要求2所述的面向虚拟化容器与NS-3的数据通信交互系统,其特征在于,各虚拟化容器中的虚拟以太网接口使用于不同的网络命名空
5.根据权利要求1所述的面向虚拟化容器与NS-3的数据通信交互系统,其特征在于,各个NS-3网络场景中的控制中心的一端与TapBridge网络设备连接,控制中心的另一端与内部的网络节点相连,所述控制中心用于为所在网络场景中的网络节点分配IP地址、创建网络拓扑、安装协议栈、设置信道模型、传输模型以及转发数据包,且每个网络节点具有多个网络接口,能够发送和接收数据包,并与其他网络节点进行通信;具体地,当所述控制中心转发数据包至网络节点时,先构建网络节点端IP的地址映射表,在接收到虚拟化容器发送的数据包后,通过读取数据包对应的目的IP并查询所述地址映射表,将数据包转发至对应IP的网络节点中。
6.根据权利要求1所述的面向虚拟化容器与NS-3的数据通信交互系统,其特征在于,所述NS-3仿真环境单元中还包括NS-3通道,所述NS-3通道与各NS-3网络场景中的控制中心连接,通过所述NS-3通道,各配备有套接字对象的控制中心采用UDP套接字通信机制并以广播的形式与其他NS-3网络场景中的控制中心进行数据和信息交互,并在接收到信息后,根据相应信息调整控制中心自身的网络状态和网络配置。
7.一种面向虚拟化容器与NS-3的数据通信交互方法,所述方法基于权利要求1-6任一项所述的面向虚拟化容器与NS-3的数据通信交互系统实现,其特征在于,所述方法包括:
8.根据权利要求7所述的面向虚拟化容器与NS-3的数据通信交互方法,其特征在于,通过运行shell脚本自动化创建并配置数据交互通道中的虚拟化网桥和若干个Tap设备,并根据步骤1至步骤3中定义编排的文件,配置部署若干个虚拟化容器,并配置各虚拟化容器的虚拟以太网接口、网卡、IP地址和MAC地址,包括:
9.根据权利要求7所述的面向虚拟化容器与NS-3的数据通信交互方法,其特征在于,在NS-3仿真环境单元中搭建若干个NS-3网络场景并进行相关配置,并通过各NS-3网络场景的用户空间中配置的TapBridge网络设备,将各TapBridge网络设备与数据交互通道中的各Tap设备一一对应连接,包括:
10.根据权利要求7所述的面向虚拟化容器与NS-3的数据通信交互方法,其特征在于,配置所述数据交互通道中的路由协调器,根据所述路由协调器设置路由策略与数据包转发优先级,监测数据包流向,并动态更新路由表,包括:
...【技术特征摘要】
1.一种面向虚拟化容器与ns-3的数据通信交互系统,其特征在于,所述系统由虚拟化容器单元、ns-3仿真环境单元以及数据交互通道组成;
2.根据权利要求1所述的面向虚拟化容器与ns-3的数据通信交互系统,其特征在于,在各虚拟化容器内部运行有特定的应用程序或网络服务,且对应配置有相应的网络协议栈、网卡和虚拟以太网接口;所述网络协议栈的一端与网卡相连,另一端连接应用程序或网络服务;所述虚拟以太网接口由两个成对存在的虚拟网络接口组成,所述虚拟以太网接口的一端连接网卡,另一端与所述数据交互通道中的虚拟化网桥连接。
3.根据权利要求2所述的面向虚拟化容器与ns-3的数据通信交互系统,其特征在于,当虚拟化容器内部运行ns-3应用程序时,所述网络协议栈由tap设备与tapbridge网络设备组成,此时,tapbridge网络设备位于ns-3应用程序中,并与应用程序外部的tap设备连接,tap设备另一端与虚拟化容器内部的网卡相连。
4.根据权利要求2所述的面向虚拟化容器与ns-3的数据通信交互系统,其特征在于,各虚拟化容器中的虚拟以太网接口使用于不同的网络命名空间中,且所述网络命名空间通过符号方式连接到对应的虚拟化容器中。
5.根据权利要求1所述的面向虚拟化容器与ns-3的数据通信交互系统,其特征在于,各个ns-3网络场景中的控制中心的一端与tapbridge网络设备连接,控制中心的另一端与内部的网络节点相连,所述控制中心用于为所在网络场景中的网络节点分配ip地址、创建网络拓扑、安装协议栈、设置信道模型、传输模型以及转发数据包,且每个网络节点具有多个网络接口,能够发送和接收数据包,并与其他网络节点进行通信;具体地,当所述控制中心转发数据包至网络节点时,先构建网络节点端ip的地址映射表,在接...
【专利技术属性】
技术研发人员:王海军,陈海涛,张姣,赵海涛,刘潇然,周力,熊俊,王喆,张钦博,雷婵,魏急波,
申请(专利权)人:中国人民解放军国防科技大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。