CN115473848A - 软件定义网络中广播处理的优化方法、装置和计算机设备 - Google Patents

软件定义网络中广播处理的优化方法、装置和计算机设备 Download PDF

Info

Publication number
CN115473848A
CN115473848A CN202211056315.9A CN202211056315A CN115473848A CN 115473848 A CN115473848 A CN 115473848A CN 202211056315 A CN202211056315 A CN 202211056315A CN 115473848 A CN115473848 A CN 115473848A
Authority
CN
China
Prior art keywords
packet
broadcast
message
network
broadcast message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211056315.9A
Other languages
English (en)
Inventor
王剑
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Yundoudou Intelligent Technology Co ltd
Original Assignee
Hangzhou Yundoudou Intelligent Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Yundoudou Intelligent Technology Co ltd filed Critical Hangzhou Yundoudou Intelligent Technology Co ltd
Priority to CN202211056315.9A priority Critical patent/CN115473848A/zh
Publication of CN115473848A publication Critical patent/CN115473848A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请涉及一种软件定义网络中广播处理的优化方法、装置和计算机设备,其中,该软件定义网络中广播处理的优化方法包括:通过将广播报文发送至网络设备,通过packet‑in报文将广播报文发送至控制器;根据packet‑in报文查找所有主机对应的组表,并通过查找结果计算广播报文的流量转发路径;将组表下发至转发路径上的网络设备,根据组表将广播报文的流量转发至主机,通过本申请,解决了SDN网络中控制器处理广播报文的压力大的问题,实现了提高报文转发效率的有益效果。

Description

软件定义网络中广播处理的优化方法、装置和计算机设备
技术领域
本申请涉及网络通信领域,特别是涉及软件定义网络中广播处理的优化方法、装置和计算机设备。
背景技术
在计算机网络中,若一台主机需要同时向所有主机进行通信,则在数据链路层中向目的地址广播报文,其中,通过交换机来实现报文的接收与转发。而软件定义网络(Software Defined Network,简称为SDN网络)中的控制器与交换机相分离,控制器可以根据标准接口向交换机下发统一标准规则,从而提供报文转发功能,因此,通常采用SDN网络架构对广播报文进行处理。
在目前的网络广播报文处理方法中,采用生成树协议的模型,将交换机作为节点以及链路作为边来构造网络拓扑结构,其中每个节点的交换机只将接收到的报文转发给相邻节点的交换机,使得转发过程不存在广播环路风暴的问题,以此通过交换机将报文在域内所有端口进行广播。但是,该处理方法中的生成树模型会导致根节点以及控制器的流量负载过重,容易导致整个网络故障且报文转发效率较低。
针对相关技术中存在SDN网络中控制器处理广播报文的压力大,目前还没有提出有效的解决方案。
发明内容
在本实施例中提供了一种软件定义网络中广播处理的优化方法、装置和计算机设备,以解决相关技术存在SDN网络中控制器处理广播报文的压力大的问题。
第一个方面,在本实施例中提供了一种软件定义网络中广播处理的优化方法,适用于软件定义网络中广播处理的优化系统;所述优化系统包括:控制器、网络设备和主机,所述控制器与所述网络设备的输入端口连接,所述网络设备的输出端口与所述主机连接;所述优化方法包括:
将广播报文发送至所述网络设备,通过packet-in报文将所述广播报文发送至所述控制器;
根据所述packet-in报文查找所有所述主机对应的组表,并通过查找结果计算所述广播报文的流量转发路径;
将所述组表下发至所述转发路径上的所述网络设备,根据所述组表将所述广播报文的流量转发至所述主机。
在其中的一些实施例中,所述将广播报文发送至所述网络设备之前还包括:
基于链路层发现协议,获取网络拓扑结构。
在其中的一些实施例中,所述将广播报文发送至所述网络设备,通过packet-in报文将所述广播报文发送至所述控制器包括:
将所述广播报文发送至所述网络设备,所述广播报文包括地址解析协议请求报文;
将所述地址解析协议请求报文封装为所述packet-in报文;
通过所述packet-in报文将所述广播报文发送至所述控制器。
在其中的一些实施例中,所述通过packet-in报文将所述广播报文发送至所述控制器之后还包括:
再次发送所述广播报文至所述网络设备,则所述广播报文进入缓存。
在其中的一些实施例中,所述并通过查找结果计算所述广播报文的流量转发路径包括:
基于跳数原则,通过查找结果计算所述广播报文的流量转发路径。
在其中的一些实施例中,所述将所述组表下发至所述转发路径上的所述网络设备,根据所述组表将所述广播报文的流量转发至所述主机包括:
将所述组表下发至所述转发路径上的所述网络设备;
复制发送至所述控制器的所述广播报文,将所述广播报文封装为packet-out报文;
基于所述组表的表项,通过所述packet-out报文将所述广播报文的流量转发至所述主机。
在其中的一些实施例中,所述将所述组表下发至所述转发路径上的所述网络设备包括:
根据所述组表对应的匹配项,将所述组表下发至所述转发路径上的所述网络设备,所述匹配项包括目的物理地址为全F以及所述广播报文的源物理地址。
第二个方面,在本实施例中提供了一种软件定义网络中广播处理的优化装置,适用于软件定义网络中广播处理的优化系统;所述优化系统包括:控制器、网络设备和主机,所述控制器与所述网络设备的输入端口连接,所述网络设备的输出端口与所述主机连接;所述装置包括:
发送模块,将广播报文发送至所述网络设备,通过packet-in报文将所述广播报文发送至所述控制器;
第一计算模块,根据所述packet-in报文查找所有所述主机对应的组表,并通过查找结果计算所述广播报文的流量转发路径;
第一转发模块,将所述组表下发至所述转发路径上的所述网络设备,并根据所述组表将所述广播报文的流量转发至所述主机。
第三个方面,在本实施例中提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一个方面所述的软件定义网络中广播处理的优化方法。
第四个方面,在本实施例中提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一个方面所述的软件定义网络中广播处理的优化方法。
与相关技术相比,在本实施例中提供的软件定义网络中广播处理的优化方法、装置和计算机设备,通过将广播报文发送至网络设备,通过packet-in报文将广播报文发送至控制器;根据packet-in报文查找所有主机对应的组表,并通过查找结果计算广播报文的流量转发路径;将组表下发至转发路径上的网络设备,根据组表将广播报文的流量转发至主机,解决了SDN网络中控制器处理广播报文的压力大的问题,实现了提高报文转发效率的有益效果。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是本申请一实施例提供的软件定义网络中广播处理的优化方法的终端设备的硬件结构框图;
图2是本申请一实施例提供的软件定义网络中广播处理的优化方法的流程图;
图3是本申请一实施例提供的软件定义网络中广播处理的优化方法的优选流程图;
图4是本申请一实施例提供的软件定义网络中广播处理的优化装置的结构框图;
图5是本申请一实施例提供的软件定义网络中广播处理的优化方法的网络拓扑结构图。
图中:10、发送模块;20、第一计算模块;30、第一转发模块。
具体实施方式
为更清楚地理解本申请的目的、技术方案和优点,下面结合附图和实施例,对本申请进行了描述和说明。
除另作定义外,本申请所涉及的技术术语或者科学术语应具有本申请所属技术领域具备一般技能的人所理解的一般含义。在本申请中的“一”、“一个”、“一种”、“该”、“这些”等类似的词并不表示数量上的限制,它们可以是单数或者复数。在本申请中所涉及的术语“包括”、“包含”、“具有”及其任何变体,其目的是涵盖不排他的包含;例如,包含一系列步骤或模块(单元)的过程、方法和系统、产品或设备并未限定于列出的步骤或模块(单元),而可包括未列出的步骤或模块(单元),或者可包括这些过程、方法、产品或设备固有的其他步骤或模块(单元)。在本申请中所涉及的“连接”、“相连”、“耦接”等类似的词语并不限定于物理的或机械连接,而可以包括电气连接,无论是直接连接还是间接连接。在本申请中所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。通常情况下,字符“/”表示前后关联的对象是一种“或”的关系。在本申请中所涉及的术语“第一”、“第二”、“第三”等,只是对相似对象进行区分,并不代表针对对象的特定排序。
在本实施例中提供的方法实施例可以在终端、计算机或者类似的运算装置中执行。比如在终端上运行,图1是本实施例的软件定义网络中广播处理的优化方法的终端的硬件结构框图。如图1所示,终端可以包括一个或多个(图1中仅示出一个)处理器102和用于存储数据的存储器104,其中,处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置。上述终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述终端的结构造成限制。例如,终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示出的不同配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如在本实施例中的软件定义网络中广播处理的优化方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络包括终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(NetworkInterface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
图4是本实施例中的软件定义网络中广播处理的优化装置的结构框图,适用于软件定义网络中广播处理的优化系统,该优化系统包括:控制器、网络设备和主机,控制器与网络设备的输入端口连接,网络设备的输出端口与主机连接,其中控制器根据OpenFlow协议指导设备的转发,可主动或被动响应数据包,而网络设备用于管理数据层的转发,与控制器之间通过安全通道进行消息交互,通过由控制器和网络设备构成的OpenFlow网络,将广播报文的流量转发至主机,以请求目标主机的物理地址及其所在的端口等信息。
基于上述的优化系统,如图4所示,在优化装置的发送模块10中,将广播报文发送至网络设备,通过packet-in报文将广播报文发送至控制器;在第一计算模块20中,根据packet-in报文查找所有主机对应的组表,并通过查找结果计算广播报文的流量转发路径;在第一转发模块30中,将组表下发至转发路径上的网络设备,并根据组表将广播报文的流量转发至主机。
在本实施例中提供了一种软件定义网络中广播处理的优化方法,图2是本实施例的软件定义网络中广播处理的优化方法的流程图,如图2所示,该流程包括如下步骤:
步骤S210,将广播报文发送至网络设备,通过packet-in报文将广播报文发送至控制器。
具体地,基于OpenFlow网络,对SDN网络中的广播报文进行处理,其中OpenFlow是一种网络通信协议,用来描述控制器和网络设备之间交互所用信息的标准,以及控制器和网络设备的接口标准,而在OpenFlow网络中,通过OpenFlow通道将控制器和网络设备的接口进行连接。
进一步地,在控制器与网络设备之间建立信道连接之后,控制器将广播报文发送至网络设备,则在网络设备中触发packet-in事件,将广播报文中的数据包封装进packet-in报文,并发送至控制器,其中packet-in的作用是将到达网络设备的数据包发送至控制器,且触发packet-in事件的条件包括不存在匹配的表项或者匹配的表项行动为发送至控制器。
步骤S220,根据packet-in报文查找所有主机对应的组表,并通过查找结果计算广播报文的流量转发路径。
具体地,由于packet-in报文中为广播报文的数据包,而广播的目的是将报文发送至所有主机,因此控制器在接收到packet-in报文后,根据packet-in报文查找所有主机对应的组表,并通过查找结果计算广播报文的流量转发路径。
步骤S230,将组表下发至转发路径上的网络设备,根据组表将广播报文的流量转发至主机。
具体地,根据组表中的匹配项,将组表下发至转发路径上的网络设备,并将广播报文封装为packet-out报文,进一步地,基于组表的表项,通过packet-out报文将广播报文的流量转发至主机。
需要知道的是,packet-out的作用是将控制器的相关数据发送到网络设备,是包含数据包发送命令的消息,且消息格式包括数据包缓存标识号、数据包输入端口以及动作信息的长度。
在目前的网络广播报文处理方法中,采用生成树协议的模型,将交换机作为节点以及链路作为边来构造网络拓扑结构,其中每个节点的交换机只将接收到的报文转发给相邻节点的交换机,使得转发过程不存在广播环路风暴的问题,以此通过交换机将报文在域内所有端口进行广播。但是,该处理方法中的生成树模型会导致根节点以及控制器的流量负载过重,容易导致整个网络故障且报文转发效率较低。而本实施例基于现有的SDN网络框架,在OpenFlow网络中将广播报文发送至网络设备,通过packet-in报文将广播报文发送至控制器,根据packet-in报文查找所有主机对应的组表,并通过查找结果计算广播报文的流量转发路径,进一步地,将组表下发至转发路径上的网络设备,从而可以根据组表将广播报文的流量转发至主机,解决了SDN网络中控制器处理广播报文的压力大的问题,实现了提高报文转发效率的有益效果。
在其中的一些实施例中,将广播报文发送至网络设备之前还包括如下步骤:
基于链路层发现协议,获取网络拓扑结构。
具体地,链路层发现协议(Link Layer Discovery Protocol,简称为LLDP)是一种数据链路层协议,用于使网络中的设备互相发现并通告状态与交互信息。
需要知道的是,图5是本实施例的软件定义网络中广播处理的优化方法的网络拓扑结构图,网络拓扑结构是指用传输介质互连各种设备的物理布局,用于描述网络的安排和配置方式以及各个节点之间的相互关系,如图5所示,通过网络拓扑将网络设备与主机之间的连接关系进行抽象表示,在该网络拓扑结构图中,广播报文的流量进入网络设备A,触发packet-in事件将广播报文发送至控制器,并基于网络拓扑结构,完成广播流量转发路径的计算以及查找所有主机对应的组表,将组表下发至转发路径上的网络设备指导流量转发。
进一步地,当控制器需要获取当前的网络拓扑结构时,触发packet-out事件,将packet-out消息发送至连接的网络设备,其中packet-out消息携带的数据为LLDP报文,动作为在所有端口广播,而当相邻的网络设备接收到LLDP报文后,通过packet套接字将LLDP报文拷贝至对应的OpenFlow流程,且在OpenFlow流程中将LLDP报文与流表项进行匹配,若匹配成功且动作为发送至控制器,则将LLDP报文对应的入端口和LLDP报文数据封装到packet-in消息中,并发送至控制器,以获取各个设备及其端口的连接信息,进而分析得到网络拓扑结构。
通过本实施例,根据LLDP报文获取网络拓扑结构,则可以清楚地获取各个网络设备的相互关系和网络端口信息,从而在网络拓扑结构的基础上,实现计算转发路径、查找所有主机对应组表以及控制器下发组表等过程。
在其中的一些实施例中,将广播报文发送至网络设备,通过packet-in报文将广播报文发送至控制器包括如下步骤:
步骤S211,将广播报文发送至网络设备,广播报文包括地址解析协议请求报文;
步骤S212,将地址解析协议请求报文封装为packet-in报文;
步骤S213,通过packet-in报文将广播报文发送至控制器。
具体地,地址解析协议(Address Resolution Protocol,简称为ARP)是根据IP地址获取物理地址的一个TCP/IP协议,而ARP请求报文格式包括ARP报头、源物理地址(MediaAccess Control Address,简称为MAC地址)、源网际协议地址(Internet ProtocolAddress,简称为IP地址)、目的MAC地址和目的IP地址,通过将包含目的IP地址的ARP请求报文广播至所有主机,并接收返回消息,以获取对应的目的MAC地址。
需要知道的是,控制器将广播报文发送至网络设备,则在网络设备中触发packet-in事件,进一步将ARP报文封装为packet-in报文,基于packet-in消息的数据包发送功能,将ARP报文发送至控制器。
通过本实施例,通过将广播报文发送至网络设备触发packet-in事件,将内容为ARP请求报文的packet-in报文发送至控制器,则控制器接收到广播ARP请求报文至所有主机的信息,从而可以获取每台主机所在的端口和MAC地址等。
在其中的一些实施例中,通过packet-in报文将广播报文发送至控制器之后还包括如下步骤:
再次发送广播报文至网络设备,则广播报文进入缓存。
具体地,当OpenFlow网络中的网络设备首次接收到广播报文时,通过packet-in报文将广播报文发送至控制器,并且packet-in报文中携带的报文入端口为广播报文的流量进入网络设备的端口。
进一步地,当网络设备接收到后续的广播报文时,不再通过packet-in报文将广播报文发送至控制器,该广播报文则进入缓存,并等待控制器下发组表来指导广播报文的流量转发。
通过本实施例,当网络设备接收到后续的广播报文时,该广播报文则会进入缓存并等待控制器下发组表来指导广播报文的流量转发,不需要再通过控制器来处理广播报文的流量转发,减少了广播报文上送控制器的过程,以此降低控制器的报文处理压力。
在其中的一些实施例中,并通过查找结果计算广播报文的流量转发路径包括如下步骤:
步骤S221,基于跳数原则,通过查找结果计算广播报文的流量转发路径。
具体地,跳数原则包括最少跳数原则,计算出最少跳数到达目的主机所在设备,例如,如图5所示,若广播报文的流量从网络设备A到达网络设备B,则选择经过最少跳数的路径,其中,跳数是指为到达目的网络所经过的网络设备的数目,每经过一个网络设备,跳数则会加一。
需要知道的是,跳数原则还包括路径覆盖原则,在跳数相等的情况下,选择已有的转发路径,例如,如图5所示,若广播报文的流量从网络设备A到达网络设备F,按照最少跳数原则计算得到三条路径,以及已知从网络设备A到达网络设备B的最少跳数转发路径,并且该三条路径中只有一条路径覆盖从网络设备A到达网络设备B的最少跳数转发路径,则选择这条路径为从网络设备A到达网络设备F的转发路径。
进一步地,基于获取的网络拓扑结构,根据最少跳数原则和路径覆盖原则计算得到转发广播报文流量的最简路径。
通过本实施例,基于跳数原则,对广播报文的流量转发路径进行计算,选择出最简流量转发路径,优化了广播流量转发路径,以提高转发广播报文流量的效率。
在其中的一些实施例中,将组表下发至转发路径上的网络设备,根据组表将广播报文的流量转发至主机包括如下步骤:
步骤S231,将组表下发至转发路径上的网络设备;
步骤S232,复制发送至控制器的广播报文,将广播报文封装为packet-out报文;
步骤S233,基于组表的表项,通过packet-out报文将广播报文的流量转发至主机。
具体地,将组表下发至转发路径上的网络设备,通过组表可以对进入的广播报文流量进行复制,并触发packet-out事件,从而将广播报文封装为packet-out报文。
需要知道的是,每一个组表包含多个组表项,具体包括组表号、组表类型、计数器和动作桶,其中根据组表号唯一定位每一个组表,而组表类型决定对数据包的处理行为,计数器记录已处理的报文数量,动作桶则以列表的形式表示出相关的动作及其参数。
进一步地,将复制的广播报文封装为packet-out报文之后,根据控制器下发的组表,并将packet-out报文发送至已知转发路径上的网络设备,从网络设备与主机对应的出接口将广播报文的流量转发至所有主机。
通过本实施例,根据控制器下发的组表,对进入的广播报文流量进行复制和packet-out报文封装,进而转发packet-out报文至转发路径上的网络设备,通过对应的出接口将广播报文的流量转发至所有主机,以此
在其中的一些实施例中,将组表下发至转发路径上的网络设备包括如下步骤:
根据组表对应的匹配项,将组表下发至转发路径上的网络设备,匹配项包括目的物理地址为全F以及广播报文的源物理地址。
具体地,在确定转发路径之后,根据匹配项关联到相应的组表,并且对应的动作为出接口,则从指定的接口将组表下发至转发路径上的网络设备。
需要知道的是,匹配项中目的物理地址为全F表示封装后的ARP请求报文为广播报文,而源物理地址是该广播报文发送方的物理地址,其中物理地址用于确认网络设备的位置。
通过本实施例,在确定转发路径之后,控制器根据匹配项下发对应的组表,以指导广播报文的流量转发,实现将广播报文的流量发送至所有主机,
下面通过优选实施例对本实施例进行描述和说明。
图3是本实施例的软件定义网络中广播处理的优化方法的优选流程图,如图3所示,该软件定义网络中广播处理的优化方法包括如下步骤:
步骤S310,基于链路层发现协议,获取网络拓扑结构。
步骤S320,将广播报文发送至网络设备,通过packet-in报文将广播报文发送至控制器。
步骤S330,根据packet-in报文查找所有主机对应的组表,并基于跳数原则,通过查找结果计算广播报文的流量转发路径。
步骤S340,将组表下发至转发路径上的网络设备,复制发送至控制器的广播报文,将广播报文封装为packet-out报文,并基于组表的表项,通过packet-out报文将广播报文的流量转发至主机。-
通过本实施例,首先基于链路层发现协议,获取网络拓扑结构,将广播报文发送至网络设备,在触发packet-in事件后,通过packet-in报文将广播报文发送至控制器,根据packet-in报文查找所有主机对应的组表,并基于跳数原则,通过查找结果计算广播报文的流量转发路径,以此确定最简流量转发路径,进一步地,将组表下发至转发路径上的网络设备,复制发送至控制器的广播报文,将该广播报文封装为packet-out报文,并基于组表的表项,通过packet-out报文将广播报文的流量转发至主机,在通过优化广播报文流量的转发路径提高流量转发效率的同时,减少了广播报文上送控制器的过程,从而降低控制器的报文处理压力。
需要说明的是,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在本实施例中还提供了一种软件定义网络中广播处理的优化装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。以下所使用的术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管在以下实施例中所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图4是本实施例的软件定义网络中广播处理的优化装置的结构框图,如图4所示,该装置包括:发送模块10、第一计算模块20和第一转发模块30;
发送模块10,将广播报文发送至网络设备,通过packet-in报文将广播报文发送至控制器;
第一计算模块20,根据packet-in报文查找所有主机对应的组表,并通过查找结果计算广播报文的流量转发路径;
第一转发模块30,将组表下发至转发路径上的网络设备,并根据组表将广播报文的流量转发至主机。
通过本实施例提供的装置,将广播报文发送至网络设备,通过packet-in报文将广播报文发送至控制器,根据packet-in报文查找所有主机对应的组表,并通过查找结果计算广播报文的流量转发路径,将组表下发至转发路径上的网络设备,并根据组表将广播报文的流量转发至主机,解决了SDN网络中控制器处理广播报文的压力大的问题,实现了提高报文转发效率的有益效果。
在其中的一些实施例中,在图4的基础上,该装置还包括获取模块,用于基于链路层发现协议,获取网络拓扑结构。
在其中的一些实施例中,在图4的基础上,该装置还包括封装模块,用于将广播报文发送至网络设备,广播报文包括地址解析协议请求报文;将地址解析协议请求报文封装为packet-in报文;通过packet-in报文将广播报文发送至控制器。
在其中的一些实施例中,在图4的基础上,该装置还包括缓存模块,用于再次发送广播报文至网络设备,则广播报文进入缓存。
在其中的一些实施例中,在图4的基础上,该装置还包括第二计算模块,用于基于最少跳数原则,通过查找结果计算广播报文的流量转发路径。
在其中的一些实施例中,在图4的基础上,该装置还包括第二转发模块,用于将组表下发至转发路径上的网络设备;复制发送至控制器的广播报文,将广播报文封装为packet-out报文;基于组表的表项,通过packet-out报文将广播报文的流量转发至主机。
在其中的一些实施例中,在图4的基础上,该装置还包括第三转发模块,用于根据组表对应的匹配项将广播报文的流量转发至主机,匹配项包括目的物理地址为全F以及广播报文的源物理地址。
需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。
在本实施例中还提供了一种计算机设备,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述计算机设备还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
需要说明的是,在本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,在本实施例中不再赘述。
此外,结合上述实施例中提供的软件定义网络中广播处理的优化方法,在本实施例中还可以提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种软件定义网络中广播处理的优化方法。
应该明白的是,这里描述的具体实施例只是用来解释这个应用,而不是用来对它进行限定。根据本申请提供的实施例,本领域普通技术人员在不进行创造性劳动的情况下得到的所有其它实施例,均属本申请保护范围。
显然,附图只是本申请的一些例子或实施例,对本领域的普通技术人员来说,也可以根据这些附图将本申请适用于其他类似情况,但无需付出创造性劳动。另外,可以理解的是,尽管在此开发过程中所做的工作可能是复杂和漫长的,但是,对于本领域的普通技术人员来说,根据本申请披露的技术内容进行的某些设计、制造或生产等更改仅是常规的技术手段,不应被视为本申请公开的内容不足。
“实施例”一词在本申请中指的是结合实施例描述的具体特征、结构或特性可以包括在本申请的至少一个实施例中。该短语出现在说明书中的各个位置并不一定意味着相同的实施例,也不意味着与其它实施例相互排斥而具有独立性或可供选择。本领域的普通技术人员能够清楚或隐含地理解的是,本申请中描述的实施例在没有冲突的情况下,可以与其它实施例结合。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对专利保护范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (10)

1.一种软件定义网络中广播处理的优化方法,其特征在于,适用于软件定义网络中广播处理的优化系统;所述优化系统包括:控制器、网络设备和主机,所述控制器与所述网络设备的输入端口连接,所述网络设备的输出端口与所述主机连接;所述优化方法包括:
将广播报文发送至所述网络设备,通过packet-in报文将所述广播报文发送至所述控制器;
根据所述packet-in报文查找所有所述主机对应的组表,并通过查找结果计算所述广播报文的流量转发路径;
将所述组表下发至所述转发路径上的所述网络设备,根据所述组表将所述广播报文的流量转发至所述主机。
2.根据权利要求1所述的软件定义网络中广播处理的优化方法,其特征在于,所述将广播报文发送至所述网络设备之前还包括:
基于链路层发现协议,获取网络拓扑结构。
3.根据权利要求1所述的软件定义网络中广播处理的优化方法,其特征在于,所述将广播报文发送至所述网络设备,通过packet-in报文将所述广播报文发送至所述控制器包括:
将所述广播报文发送至所述网络设备,所述广播报文包括地址解析协议请求报文;
将所述地址解析协议请求报文封装为所述packet-in报文;
通过所述packet-in报文将所述广播报文发送至所述控制器。
4.根据权利要求1所述的软件定义网络中广播处理的优化方法,其特征在于,所述通过packet-in报文将所述广播报文发送至所述控制器之后还包括:
再次发送所述广播报文至所述网络设备,则所述广播报文进入缓存。
5.根据权利要求1所述的软件定义网络中广播处理的优化方法,其特征在于,所述并通过查找结果计算所述广播报文的流量转发路径包括:
基于跳数原则,通过查找结果计算所述广播报文的流量转发路径。
6.根据权利要求1所述的软件定义网络中广播处理的优化方法,其特征在于,所述将所述组表下发至所述转发路径上的所述网络设备,根据所述组表将所述广播报文的流量转发至所述主机包括:
将所述组表下发至所述转发路径上的所述网络设备;
复制发送至所述控制器的所述广播报文,将所述广播报文封装为packet-out报文;
基于所述组表的表项,通过所述packet-out报文将所述广播报文的流量转发至所述主机。
7.根据权利要求6所述的软件定义网络中广播处理的优化方法,其特征在于,所述将所述组表下发至所述转发路径上的所述网络设备包括:
根据所述组表对应的匹配项,将所述组表下发至所述转发路径上的所述网络设备,所述匹配项包括目的物理地址为全F以及所述广播报文的源物理地址。
8.一种软件定义网络中广播处理的优化装置,其特征在于,适用于软件定义网络中广播处理的优化系统;所述优化系统包括:控制器、网络设备和主机,所述控制器与所述网络设备的输入端口连接,所述网络设备的输出端口与所述主机连接;所述装置包括:
发送模块,将广播报文发送至所述网络设备,通过packet-in报文将所述广播报文发送至所述控制器;
第一计算模块,根据所述packet-in报文查找所有所述主机对应的组表,并通过查找结果计算所述广播报文的流量转发路径;
第一转发模块,将所述组表下发至所述转发路径上的所述网络设备,并根据所述组表将所述广播报文的流量转发至所述主机。
9.一种计算机设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至7中任一项所述的软件定义网络中广播处理的优化方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的软件定义网络中广播处理的优化方法的步骤。
CN202211056315.9A 2022-08-30 2022-08-30 软件定义网络中广播处理的优化方法、装置和计算机设备 Pending CN115473848A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211056315.9A CN115473848A (zh) 2022-08-30 2022-08-30 软件定义网络中广播处理的优化方法、装置和计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211056315.9A CN115473848A (zh) 2022-08-30 2022-08-30 软件定义网络中广播处理的优化方法、装置和计算机设备

Publications (1)

Publication Number Publication Date
CN115473848A true CN115473848A (zh) 2022-12-13

Family

ID=84368557

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211056315.9A Pending CN115473848A (zh) 2022-08-30 2022-08-30 软件定义网络中广播处理的优化方法、装置和计算机设备

Country Status (1)

Country Link
CN (1) CN115473848A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103986651A (zh) * 2014-05-30 2014-08-13 杭州华三通信技术有限公司 一种软件定义网络控制器及其控制方法
CN104065571A (zh) * 2014-06-05 2014-09-24 福建星网锐捷网络有限公司 一种广播报文处理方法、装置及系统
CN104468371A (zh) * 2014-11-28 2015-03-25 杭州华三通信技术有限公司 组播业务报文处理方法及装置
CN108243123A (zh) * 2016-12-23 2018-07-03 中兴通讯股份有限公司 广播报文的处理方法、装置、控制器和交换机

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103986651A (zh) * 2014-05-30 2014-08-13 杭州华三通信技术有限公司 一种软件定义网络控制器及其控制方法
CN104065571A (zh) * 2014-06-05 2014-09-24 福建星网锐捷网络有限公司 一种广播报文处理方法、装置及系统
CN104468371A (zh) * 2014-11-28 2015-03-25 杭州华三通信技术有限公司 组播业务报文处理方法及装置
CN108243123A (zh) * 2016-12-23 2018-07-03 中兴通讯股份有限公司 广播报文的处理方法、装置、控制器和交换机

Similar Documents

Publication Publication Date Title
US11374857B2 (en) Network device management method and apparatus, and system for indicating a network device to perform management operation
CN106059924B (zh) 一种管理信息的方法,装置及系统
US9973400B2 (en) Network flow information collection method and apparatus
US11477114B2 (en) Packet forwarding method and apparatus
US10791051B2 (en) System and method to bypass the forwarding information base (FIB) for interest packet forwarding in an information-centric networking (ICN) environment
CN109218111B (zh) 一种处理报文的方法和转发器
CN108737221B (zh) 丢包检测方法及通信链路系统
CN106559302A (zh) 单播隧道建立方法、装置和系统
KR102025680B1 (ko) Sdn 기반의 arp 구현 방법 및 장치
EP4191966A1 (en) Method and device for processing data message, storage medium, and electronic device
CN108551679A (zh) 基于局域网Mesh技术的无线设备通信方法及系统
CN107566277B (zh) 拓扑确定方法、消息响应方法、控制器以及交换机
US9270593B2 (en) Prediction based methods for fast routing of IP flows using communication/network processors
WO2017041534A1 (zh) 一种电力线网络通信的方法及装置、计算机存储介质
CN115473848A (zh) 软件定义网络中广播处理的优化方法、装置和计算机设备
EP3902228B1 (en) Data message transmission methods
CN113824608A (zh) Bier oam检测的方法、设备以及系统
WO2019119836A1 (zh) 报文处理的方法和设备
Tariq et al. CBAM: A Controller based broadcast storm avoidance mechanism in SDN based NDN-IoTs
CN108337169B (zh) 一种信息查询方法及运营商边缘路由器
WO2022027978A1 (zh) IPv6报文发送的方法、设备以及系统
CN101964733B (zh) 因特网组管理协议监听的实现方法及系统、调制解调器
US20230065679A1 (en) Lightweight path maximum transmission unit for wireless multicast overlay
CN111614471B (zh) 一种基于sdn的dcqcn数据传输系统及传输方法
CN111385215B (zh) 传输报文的方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination