掌桥专利:专业的专利平台
掌桥专利
首页

一种使用一台交换机模拟大规模拓扑的方法

文献发布时间:2024-04-18 19:58:21


一种使用一台交换机模拟大规模拓扑的方法

技术领域

本发明涉及网络科研领域,具体涉及一种使用一台交换机模拟大规模拓扑的方法。

背景技术

随着现代数据中心和广域网的发展,其规模正在变得十分巨大。这给科研人员和实验人员希望模拟特定的网络拓扑结构造成了困难。例如一个小规模的Fat-Tree拓扑(如图2所示),其需要20台交换机,并进行48次连线。这给实验人员进行实验测试增加了极大的困难,并有较高的实验成本。

有部分相关工作提出在软件层面模拟拓扑间流量转发的行为。如常用的NS-1(NS,Network Simulator,下略,由劳伦斯伯克利国家实验室开发)、NS-2(由劳伦斯伯克利国家实验室、Xerox PARC、加州大学伯克利分校和南加州大学信息科学研究所共同开发)、NS-3(由华盛顿大学,佐治亚理工学院,国际计算机研究中心共同开发),被设计用于进行全软件模拟的网络仿真实验。同样的,OMNeT++(Objective ModularNetworkTestbed in C++)也可以进行软件模拟的网络仿真实验。和上述工具不同,有的仿真工具提供更真实的网络拓扑,如由斯坦福大学开发的Mininet,是一种基于Linux Container架构的进程虚拟化网络仿真工具,研究人员能够在上面部署包含计算节点、交换机和OpenFlow控制器的网络拓扑。

截至目前,没有在实际网络设备中模拟大规模拓扑的方法。

在软件层面模拟大规模拓扑的方案存在缺点,例如,仿真需要固定各设备的请求序列,无法完整复现实际应用中可能产生的各种问题。因此,很有必要设计一种能够在实际网络设备中模拟大规模拓扑的方法。

发明内容

本发明是为了解决上述问题而进行的,目的在于提供一种使用一台交换机模拟大规模拓扑的方法。

本发明提供了一种使用一台交换机模拟大规模拓扑的方法,具有这样的特征,包括以下步骤:步骤1,准备需要模拟的拓扑,称为逻辑拓扑,并获取逻辑拓扑的物理交换机的连接方式;步骤2,判断逻辑拓扑是否满足预定条件,若不满足,则返回步骤1更换物理交换机,若满足,则执行步骤3;步骤3,根据物理交换机的连接方式定义计算节点端口和自连接端口;步骤4,根据逻辑拓扑、计算节点端口以及自连接端口,控制器使用程序自动生成和下发可编程交换机转发表,模拟逻辑拓扑。其中,逻辑拓扑包括物理交换机、计算节点和物理交换机间的连线,计算节点的数量为N,逻辑拓扑中的边两端为物理交换机间的边的数量为E

在本发明提供的使用一台交换机模拟大规模拓扑的方法中,还可以具有这样的特征:其中,步骤2中,判断逻辑拓扑是否满足预定条件的方法为:判断当前物理交换机是否至少有N+E

在本发明提供的使用一台交换机模拟大规模拓扑的方法中,还可以具有这样的特征:其中,步骤3中,定义计算节点端口和自连接端口的具体过程为:将物理交换机和计算节点相连,定义和计算节点相连的端口为计算节点端口,将剩余物理交换机端口互连,定义互连的端口为自连接端口。

在本发明提供的使用一台交换机模拟大规模拓扑的方法中,还可以具有这样的特征:其中,自连接端口均关闭STP协议。

在本发明提供的使用一台交换机模拟大规模拓扑的方法中,还可以具有这样的特征:其中,步骤4中,控制器需要承担的响应至少包括地址解析协议(ARP)、简单服务发现协议(SSDP)以及动态主机设置协议(DHCP)的响应。

在本发明提供的使用一台交换机模拟大规模拓扑的方法中,还可以具有这样的特征:其中,步骤4中,程序自动生成和下发可编程交换机转发表的执行过程包括以下子步骤:步骤4-1,程序将连接计算节点端口按顺序编号;步骤4-2,程序从逻辑拓扑的其中一台物理交换机开始,以广度优先的方式遍历整个逻辑拓扑,遍历过程中,每遍历到一条没有编号的边,就给该边的两端标记相邻的端口号;步骤4-3,程序下发可编程交换机转发表,根据数据包的源IP地址和目的IP地址控制数据包的转发域。

在本发明提供的使用一台交换机模拟大规模拓扑的方法中,还可以具有这样的特征:其中,步骤4中,可编程交换机转发表的类型取决于使用的物理交换机类型。

在本发明提供的使用一台交换机模拟大规模拓扑的方法中,还包括:步骤5,如果需要变更逻辑拓扑,则重复执行步骤1~步骤4。

发明的作用与效果

根据本发明所涉及的使用一台交换机模拟大规模拓扑的方法,首先准备需要模拟的拓扑,称为逻辑拓扑,并获取逻辑拓扑的物理交换机的连接方式;然后判断逻辑拓扑是否满足预定条件,若不满足,则返回步骤1更换物理交换机,若满足,则执行下一步;然后根据物理交换机的连接方式定义计算节点端口和自连接端口;最后根据逻辑拓扑、计算节点端口以及自连接端口,控制器使用程序自动生成和下发可编程交换机转发表,模拟逻辑拓扑。其中,逻辑拓扑包括物理交换机、计算节点和物理交换机间的连线,计算节点的数量为N,逻辑拓扑中的边两端为物理交换机间的边的数量为E

上述过程为模拟大规模数据中心网络和广域网拓扑、搭建大规模网络实验测试床提供了一种高效、便捷的方案。

本发明使用可编程交换机转发表,控制数据报文的转发域,保证了端口之间的隔离。

本发明的方法简单方便,如果计算节点数量不变,更改逻辑拓扑只需要重新下发转发表,无需改变现有连线方式。因此使用一台交换机模拟大规模拓扑的方法仅需一次连线,就能在后续通过对转发表的配置,实现多种数据中心实际拓扑的模拟。

本发明的方法能够极大提高大规模网络拓扑测试床的部署效率,允许科研人员和测试人员能够使用较少设备模拟大型数据中心拓扑,极大降低部署大规模网络拓扑测试床的成本。

附图说明

图1是本发明的实施例中使用一台交换机模拟大规模拓扑的方法流程图;

图2是本发明的实施例中逻辑拓扑的示意图;

图3是本发明的实施例中端口连接示意图;

图4是本发明的实施例中物理交换机的连线和对应的逻辑拓扑示意图;以及

图5是本发明的实施例中程序的输入和输出示意图。

具体实施方式

为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,以下实施例结合附图对本发明一种使用一台交换机模拟大规模拓扑的方法作具体阐述。

在本实施例中,提供了一种使用一台交换机模拟大规模拓扑的方法。

图1是本实施例中使用一台交换机模拟大规模拓扑的方法流程图。

如图1所示,本实施例所涉及的使用一台交换机模拟大规模拓扑的方法包括以下步骤:

步骤S1,准备需要模拟的拓扑,称为逻辑拓扑,并获取逻辑拓扑的物理交换机的连接方式。逻辑拓扑包括物理交换机、计算节点和物理交换机间的连线,计算节点的数量为N,逻辑拓扑中的边两端为物理交换机间的边的数量为E

图2是本实施例中逻辑拓扑的示意图。

步骤S2,判断当前物理交换机是否至少有N+E

步骤S3,将物理交换机和计算节点相连,定义和计算节点相连的端口为计算节点端口,将剩余物理交换机端口互连,定义互连的端口为自连接端口。

除计算节点端口外,其余端口均互连。由于STP协议会自动检测环路,因此所有自连接端口均需要关闭STP协议。

图3是本实施例中端口连接示意图。

如图3所示,本实施例中,交换机端口上下互连,使用定制线可极大降低走线难度。

步骤S4,根据逻辑拓扑、计算节点端口以及自连接端口,控制器使用转发表自动生成和下发程序自动生成OpenFlow转发表,并下发OpenFlow转发表,模拟逻辑拓扑。

图4是本实施例中物理交换机的连线和对应的逻辑拓扑示意图。

如图4所示,左侧为物理交换机的连线示意,右侧为逻辑拓扑示意。程序使用给端口编号的方式,决定物理交换机各端口的转发域。

由于关闭了STP协议,全局广播报文会导致数据包风暴,因此控制器需要承担的响应包括ARP、SSDP以及DHCP的响应。

使用可编程交换机转发表,乐意控制数据报文的转发域,保证端口之间的隔离。且如果计算节点数量不变,更改逻辑拓扑只需要重新下发转发表,无需改变现有连线方式。

图5是本实施例中程序的输入和输出示意图。

如图5所示,输入当前物理交换机的连线方式,包括连接在上面的节点IP地址,同时输入需要模拟的逻辑拓扑。程序的输出为需要模拟的逻辑拓扑和物理交换机端口的映射(即图中的编号),以及当前物理交换机需要配置的转发表。

程序自动生成和下发可编程交换机转发表的执行过程包括以下子步骤:

步骤S4-1,程序将连接计算节点端口按顺序编号。

步骤S4-2,程序从逻辑拓扑的其中一台物理交换机开始,以广度优先的方式遍历整个逻辑拓扑,遍历过程中,每遍历到一条没有编号的边,就给该边的两端标记相邻的端口号。即将逻辑连线映射到物理交换机的自连接端口的物理链路上。

步骤S4-3,程序下发可编程交换机转发表,根据数据包的源IP地址和目的IP地址控制数据包的转发域。在本实施例中,以逻辑拓扑左下角的交换机为例,从1、2、5、7号端口传入的数据包,只会在1、2、5、7号端口内部进行转发。通过限制数据包转发域的方式,模拟一个逻辑拓扑。

本实施例中,可以使用任意的SDN交换机转发表,转发表类型取决于实验使用的物理交换机,其目的是控制数据包的转发域。

如图5所示,转发域和逻辑交换机存在一一对应的关系。即1)将逻辑拓扑的交换机端口映射至物理交换机端口;2)将逻辑拓扑的连线映射至物理连线;3)将逻辑拓扑的交换机管理的端口映射至转发表控制的转发域。

步骤S5,至此,该测试床已经能够模拟给定逻辑拓扑。最后,如果需要对拓扑进行更改,则需要检查步骤S1、步骤S2的条件是否满足,重复执行步骤S1~步骤S4,然后使用相同的方式执行程序以更改全局流量转发方式。

实施例的作用与效果

根据本实施例所涉及的使用一台交换机模拟大规模拓扑的方法,首先准备需要模拟的拓扑,称为逻辑拓扑,并获取逻辑拓扑的物理交换机的连接方式;然后判断逻辑拓扑是否满足预定条件,若不满足,则返回步骤1更换物理交换机,若满足,则执行下一步;然后根据物理交换机的连接方式定义计算节点端口和自连接端口;最后根据逻辑拓扑、计算节点端口以及自连接端口,控制器使用程序自动生成和下发可编程交换机转发表,模拟逻辑拓扑。其中,逻辑拓扑包括物理交换机、计算节点和物理交换机间的连线,计算节点的数量为N,逻辑拓扑中的边两端为物理交换机间的边的数量为E

上述过程为模拟大规模数据中心网络和广域网拓扑、搭建大规模网络实验测试床提供了一种高效、便捷的方案。

本实施例中使用可编程交换机转发表,控制数据报文的转发域,保证了端口之间的隔离。

本实施例中的方法简单方便,如果计算节点数量不变,更改逻辑拓扑只需要重新下发转发表,无需改变现有连线方式。因此使用一台交换机模拟大规模拓扑的方法仅需一次连线,就能在后续通过对转发表的配置,实现多种数据中心实际拓扑的模拟。

本实施例中的方法能够极大提高大规模网络拓扑测试床的部署效率,允许科研人员和测试人员能够使用较少设备模拟大型数据中心拓扑,极大降低部署大规模网络拓扑测试床的成本。

上述实施方式为本发明的优选案例,并不用来限制本发明的保护范围。

相关技术
  • 一种大规模滑坡地质灾害快速数值仿真模拟方法及系统
  • 一种模拟大规模网络拓扑的方法和系统
  • 一种模拟大规模网络拓扑的方法和系统
技术分类

06120116479262