CN105959217A - Data processing method and apparatus for SDN Mobile Ad-Hoc Network - Google Patents
Data processing method and apparatus for SDN Mobile Ad-Hoc Network Download PDFInfo
- Publication number
- CN105959217A CN105959217A CN201610390634.1A CN201610390634A CN105959217A CN 105959217 A CN105959217 A CN 105959217A CN 201610390634 A CN201610390634 A CN 201610390634A CN 105959217 A CN105959217 A CN 105959217A
- Authority
- CN
- China
- Prior art keywords
- list item
- controller
- switch
- flow entry
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/38—Flow based routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Environmental & Geological Engineering (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
技术领域technical field
本发明涉及无线通信网络设计技术领域,特别是涉及一种SDN移动自组网的数据处理方法及装置。The present invention relates to the technical field of wireless communication network design, in particular to a data processing method and device for an SDN mobile ad hoc network.
背景技术Background technique
Ad Hoc网络是一种无中心无线网络,具有自组织和快速部署的优点,因此被广泛应用于军事、车载网、灾区营救和智慧城市等多领域。但是,Ad Hoc网络是一种分布式网络结构,其节点由移动中的主机构成,且所有节点处于对等地位,因此缺乏全网视图和集中式控制,对资源调度的灵活性不足。软件定义网络(Software Defined Networking,SDN)技术将网络在逻辑上分为控制平面和数据平面,网络的控制转发策略由控制层面的控制器进行集中部署,转发设备则在控制策略指导下专注于数据处理与转发,大大提高了网络灵活性和网络效率。因此,基于SDN的Ad Hoc网络应运而生。具体的,基于SDN的Ad Hoc网络选举某个移动节点作为控制器,将移动节点的控制功能集中在控制器中,控制器通过标准的南向接口向交换机下发流表,对交换机、数据报文的处理与转发进行集中控制,而其他移动节点作为交换机,只保留数据转发功能。因此,基于SDN的Ad Hoc网络可以很方便地获取全网视图,并且集中下发数据转发策略,这样Ad Hoc网络资源可以实现集中控制和资源灵活调度的功能,提高了网络运行效率。Ad Hoc network is a kind of centerless wireless network, which has the advantages of self-organization and rapid deployment, so it is widely used in many fields such as military, vehicle network, disaster rescue and smart city. However, the Ad Hoc network is a distributed network structure, its nodes are composed of mobile hosts, and all nodes are in the same position, so it lacks the whole network view and centralized control, and has insufficient flexibility for resource scheduling. Software Defined Networking (SDN) technology logically divides the network into a control plane and a data plane. The control and forwarding strategy of the network is deployed centrally by the controller at the control plane, and the forwarding device focuses on the data plane under the guidance of the control strategy. Processing and forwarding greatly improves network flexibility and network efficiency. Therefore, the Ad Hoc network based on SDN came into being. Specifically, an SDN-based Ad Hoc network elects a certain mobile node as a controller, and centralizes the control functions of the mobile node in the controller. The controller sends a flow table to the switch through a standard southbound interface. The processing and forwarding of the text are under centralized control, while other mobile nodes are used as switches and only retain the function of data forwarding. Therefore, an SDN-based Ad Hoc network can easily obtain a view of the entire network, and centrally deliver data forwarding policies. In this way, Ad Hoc network resources can realize centralized control and flexible resource scheduling, and improve network operation efficiency.
但是,由于Ad hoc网络具有移动性强,网络动态拓扑变化和无线链路资源紧张等特点,当具备控制器功能的移动节点离开SDN网络时,导致底层交换机失去控制器控制,无法处理与转发新的数据报文,即使从其他节点中选举出新的控制器,这段选举切换时间也会导致通信的暂时性中断,导致基于SDN的Ad Hoc网络故障恢复时间长。该故障恢复时间具体是指,控制器断开后至交换机能够处理与转发新的数据报文所需要的时间。However, due to the strong mobility of the Ad hoc network, the dynamic network topology changes and the shortage of wireless link resources, when the mobile node with the controller function leaves the SDN network, the underlying switch loses the control of the controller and cannot process and forward new data. Even if a new controller is elected from other nodes, this period of election switching time will cause a temporary interruption of communication, resulting in a long recovery time for SDN-based Ad Hoc network failures. The fault recovery time specifically refers to the time required for the switch to process and forward new data packets after the controller is disconnected.
目前,由开放式网络基金会(Open Network Foundation,ONF)提出的Openflow协议,以及支持Openflow协议的Open vSwitch(OVS)多层虚拟交换机,被广泛应用于基于SDN的Ad Hoc网络中以解决上述控制器失效后如何减短故障恢复时间的技术问题。OVS主要通过“失败独立模式”和“失败安全模式”两种工作模式解决上述问题。OVS既支持数据报文在Openflow通道的处理转发,又支持数据报文在传统通道的处理与转发,数据报文首先在Openflow通道进行处理,当Openflow通道无法处理时,转入传统通道进行处理。At present, the Openflow protocol proposed by the Open Network Foundation (ONF) and the Open vSwitch (OVS) multilayer virtual switch supporting the Openflow protocol are widely used in SDN-based Ad Hoc networks to solve the above control How to reduce the technical problem of fault recovery time after the device fails. OVS mainly solves the above problems through two working modes of "failure independent mode" and "failure safe mode". OVS not only supports the processing and forwarding of data packets on the Openflow channel, but also supports the processing and forwarding of data packets on the traditional channel. The data message is first processed on the Openflow channel. When the Openflow channel cannot be processed, it is transferred to the traditional channel for processing.
OVS在“失败独立模式”下,若控制器连接正常,数据报文会正常匹配转发流表项,并根据匹配到的流表项的动作实现数据报文的转发与处理;若控制器连接断开,根据优先级的先后,如果数据报文首先匹配到的流表项的动作为转发给控制器,而此时因控制器断开,交换机无法将数据报文转发给控制器,但该流表项又存在一定的超时时间,在超时结束后该流表项才会被自动删除,数据报文才会去匹配优先级更低的流表项,例如动作为进入传统通道进行数据报文的处理与转发的流表项,从而保证控制器断开情况下的通信正常。可见,OVS在“失败独立模式”下,需要控制器定时维护优先级较高的特定流表项,在控制器断开后至该特定流表项超时期间,对于新的数据报文无法匹配到优先级更低的流表项而丢弃,影响正常通信,且该特定流表项的超时时间不能设置太小(一般大于1s),否则控制器下发该特定流表项的时间间隔过小,容易引起通信链路拥塞,从而影响流表项下发的及时性,因此故障恢复时间长。OVS is in "failure independent mode", if the controller is connected normally, the data packet will normally match the forwarding flow entry, and realize the forwarding and processing of the data packet according to the action of the matched flow entry; if the controller is disconnected On, according to the order of priority, if the action of the flow entry matched by the data packet first is to forward to the controller, and at this time, because the controller is disconnected, the switch cannot forward the data packet to the controller, but the flow The entry has a certain timeout period. After the timeout expires, the flow entry will be automatically deleted, and the data packet will match the flow entry with lower priority. For example, the action is to enter the traditional channel for data packet Process and forward flow entries to ensure normal communication when the controller is disconnected. It can be seen that in the "failure independent mode", OVS requires the controller to regularly maintain a specific flow entry with a higher priority. After the controller is disconnected and the specific flow entry times out, it cannot match new data packets. The flow entry with lower priority is discarded, affecting normal communication, and the timeout period of the specific flow entry cannot be set too small (generally greater than 1s), otherwise the time interval for the controller to issue the specific flow entry is too small, It is easy to cause communication link congestion, which affects the timeliness of flow entry distribution, so the fault recovery time is long.
OVS在“失败安全模式”下,OVS交换机周期性地向控制器发出echo消息作为探针进行连接状态探测,当5s内没有接收到控制器的echo消息回复,则从ACTIVE状态进入“IDLE”状态,然后再次发送echo消息作为探针进行连接状态探测,如果5s内仍未收到echo消息回复,则认定为连接断开。当控制器连接断开时,数据报文首先根据优先级的高低进行流表项的匹配,如果匹配不到,则会根据连接状态将没有匹配到流表项的数据报文匹配一条不可见的默认流表项,根据默认流表项的动作进行转发处理,从而保障控制器断开情况下的通信正常。但是OVS在“失败安全模式”下,当控制器断开时,获取连接状态的时间需要10s,因此,故障恢复时间也需要10s左右,因此,故障恢复时间长。In the "fail safe mode" of OVS, the OVS switch periodically sends echo messages to the controller as a probe to detect the connection status. When the echo message reply from the controller is not received within 5s, it enters the "IDLE" state from the ACTIVE state , and then send the echo message again as a probe to detect the connection status. If the echo message reply is not received within 5s, it is considered that the connection is disconnected. When the controller is disconnected, the data packet will first match the flow entry according to the priority. If the match is not found, the data packet that does not match the flow entry will be matched with an invisible one according to the connection status. The default flow entry is forwarded according to the action of the default flow entry, so as to ensure normal communication when the controller is disconnected. However, in the "fail safe mode" of OVS, when the controller is disconnected, it takes 10s to obtain the connection status, so the fault recovery time also takes about 10s, so the fault recovery time is long.
可见,无论OVS是哪种工作模式,在控制器失效的情况下,通信故障恢复的时间依然较长,严重影响了网络的可靠性和稳定性。It can be seen that no matter what kind of working mode OVS is, in the case of controller failure, the recovery time of communication failure is still long, which seriously affects the reliability and stability of the network.
发明内容Contents of the invention
本发明实施例的目的在于提供一种SDN移动自组网的数据处理方法及装置,以缩短控制器失效时的故障恢复时间,从而提高网络的可靠性和稳定性。The purpose of the embodiments of the present invention is to provide a data processing method and device for an SDN mobile ad hoc network, so as to shorten the fault recovery time when the controller fails, thereby improving the reliability and stability of the network.
为达到上述目的,本发明实施例公开了一种SDN移动自组网的数据处理方法,应用于交换机,该方法包括如下步骤:In order to achieve the above object, the embodiment of the present invention discloses a data processing method of an SDN mobile ad hoc network, which is applied to a switch, and the method includes the following steps:
按照预设规则检测所述控制器与所述交换机的连接状态,获得最新连接状态;Detecting the connection status between the controller and the switch according to preset rules, and obtaining the latest connection status;
当所述最新连接状态为断开时,对待处理的数据报文进行自学习,根据自学习结果构造第一流表项;When the latest connection status is disconnected, self-learning is performed on the data message to be processed, and the first flow entry is constructed according to the self-learning result;
判断所述灾备流表中是否存在与所述第一流表项的匹配域相同的流表项,如果是,将所述与所述第一流表项的匹配域相同的流表项删除,并将所述第一流表项添加到所述灾备流表中;否则,将所述第一流表项添加到所述灾备流表中;其中,所述第一流表项的优先级高于所述灾备流表中的默认流表项;judging whether there is a flow entry with the same matching field as the first flow entry in the disaster recovery flow table, and if so, deleting the flow entry with the same matching field as the first flow entry, and Add the first flow entry to the disaster recovery flow table; otherwise, add the first flow entry to the disaster recovery flow table; wherein, the priority of the first flow entry is higher than that of the disaster recovery flow table Describe the default flow entry in the disaster recovery flow table;
判断所述待处理的数据报文是否与添加到所述灾备流表中的所述第一流表项相匹配,如果是,根据所述灾备流表中的所述第一流表项对所述数据报文进行处理;否则,根据所述默认流表项对所述数据报文进行处理。Judging whether the data packet to be processed matches the first flow entry added to the disaster recovery flow table, and if so, matching the first flow entry in the disaster recovery flow table to the Process the data packet; otherwise, process the data packet according to the default flow entry.
优选的,所述交换机中还预先存储有控制器下发的正常转发流表,所述方法还包括:Preferably, the switch also pre-stores a normal forwarding flow table issued by the controller, and the method further includes:
当所述最新连接状态为正常时,将所述数据报文与所述正常转发流表进行匹配,获得相匹配的第二流表项,根据所述第二流表项对所述数据报文进行处理。When the latest connection status is normal, match the data packet with the normal forwarding flow table to obtain a matched second flow entry, and process the data packet according to the second flow entry to process.
优选的,所述灾备流表还包括:安全限流流表项,且所述安全限流流表项的优先级最高;Preferably, the disaster recovery flow table further includes: a security current limiting flow entry, and the security current limiting flow entry has the highest priority;
所述安全限流流表项的匹配域中包含对数据报文进行限流的目的接收设备的地址信息。The matching field of the security current limiting entry includes the address information of the destination receiving device for limiting the data message.
优选的,所述对待处理的数据报文进行自学习,根据自学习结果构造第一流表项包括:Preferably, performing self-learning on the data packets to be processed, and constructing the first flow entry according to the self-learning results include:
对待处理的数据报文的包头进行解析,提取数据报文包头中的信息;Parse the packet header of the data packet to be processed, and extract the information in the packet header of the data packet;
根据提取的数据报文包头中的信息构造第一流表项。Construct the first flow entry according to the information in the extracted data packet header.
优选的,所述按照预设规则检测所述控制器与所述交换机的连接状态包括:Preferably, the detecting the connection state between the controller and the switch according to preset rules includes:
向所述控制器发送第一Echo请求消息;Send a first Echo request message to the controller;
判断所述交换机是否在设定的超时时间长度内接收到所述控制器发送的消息,其中从所述交换机接收所述控制器发送的最后一条消息的时间开始对所述设定的超时时间长度进行计时;judging whether the switch receives the message sent by the controller within the set timeout period, wherein the set timeout period starts from the time when the switch receives the last message sent by the controller timekeeping;
如果否,确定所述控制器与所述交换机的最新连接状态为断开状态,如果是,确定所述控制器与所述交换机的最新连接状态为正常状态。If not, determine that the latest connection state between the controller and the switch is a disconnected state, and if yes, determine that the latest connection state between the controller and the switch is a normal state.
优选的,所述确定所述控制器与所述交换机的最新连接状态为正常状态包括:Preferably, the determining that the latest connection status between the controller and the switch is a normal status includes:
当在设定的第一超时时间长度内未接收到所述控制器发送的消息时,确定所述控制器与所述交换机的最新连接状态为正常状态中的空闲状态;其中从所述交换机接收所述控制器发送的最后一条消息的时间开始对所述设定的第一超时时间长度进行计时;When the message sent by the controller is not received within the set first timeout period, it is determined that the latest connection state between the controller and the switch is an idle state in the normal state; The time of the last message sent by the controller starts counting the set first time-out period;
当确定最新连接状态为空闲状态时,向所述控制器发送第二Echo请求消息;When it is determined that the latest connection state is an idle state, send a second Echo request message to the controller;
当在设定的第二超时时间长度内接收到所述控制器发送的消息时,确定所述控制器与所述交换机的最新连接状态为正常状态中的活跃状态,其中所述设定的第一超时时间长度和设定的第二超时时间长度的和为所述设定的超时时间长度。When the message sent by the controller is received within the set second timeout period, it is determined that the latest connection state between the controller and the switch is an active state in the normal state, wherein the set first The sum of the first timeout period and the set second timeout period is the set timeout period.
优选的,当确定所述控制器与所述交换机的最新连接状态为正常状态时,所述方法还包括:Preferably, when it is determined that the latest connection status between the controller and the switch is normal, the method further includes:
当所述连接状态为活跃状态时,根据最近一次发送第一Echo请求消息的时间,及接收所述控制器针对该第一Echo请求消息发送的第一Echo响应消息的时间,对发送第一Echo请求消息的时间间隔、设定的第一超时时间长度和设定的第二超时时间长度进行调整;When the connection state is an active state, according to the time of sending the first Echo request message last time, and receiving the first Echo response message sent by the controller for the first Echo request message, send the first Echo request message The time interval of the request message, the set first time-out time length and the set second time-out time length are adjusted;
当所述连接状态为空闲状态时,根据发送第二Echo请求消息的时间,及接收所述控制器针对该第二Echo请求消息发送的第二Echo响应消息的时间,对发送第一Echo请求消息的时间间隔、设定的第一超时时间长度进行调整。When the connection state is an idle state, according to the time of sending the second Echo request message and the time of receiving the second Echo response message sent by the controller for the second Echo request message, send the first Echo request message Adjust the time interval and the length of the set first timeout time.
本发明实施例还公开了SDN移动自组网的数据处理装置,应用于交换机,所述交换机中预先存储有控制器下发的灾备流表,所述灾备流表中预先存储有默认流表项,所述装置包括:连接状态检测模块、自学习模块、第一处理模块和第二处理模块,所述连接状态检测模块,用于按照预设规则检测所述控制器与所述交换机的连接状态,获得最新连接状态;The embodiment of the present invention also discloses a data processing device for an SDN mobile ad hoc network, which is applied to a switch, and the switch is pre-stored with a disaster recovery flow table issued by the controller, and the disaster recovery flow table is pre-stored with a default flow Table item, the device includes: a connection state detection module, a self-learning module, a first processing module and a second processing module, the connection state detection module is used to detect the connection between the controller and the switch according to preset rules Connection status, get the latest connection status;
所述自学习模块,用于当所述最新连接状态为断开时,对待处理的数据报文进行自学习,根据自学习结果构造第一流表项;The self-learning module is configured to perform self-learning on the data packet to be processed when the latest connection state is disconnected, and construct a first flow entry according to the self-learning result;
所述第一处理模块,用于判断所述灾备流表中是否存在与所述第一流表项的匹配域相同的流表项,如果是,将所述与所述第一流表项的匹配域相同的流表项删除,并将所述第一流表项添加到所述灾备流表中;否则,将所述第一流表项添加到所述灾备流表中;其中,所述第一流表项的优先级高于所述灾备流表中的默认流表项;The first processing module is configured to determine whether there is a flow entry in the disaster recovery flow table that is the same as the matching field of the first flow entry, and if so, match the match with the first flow entry The flow entry with the same domain is deleted, and the first flow entry is added to the disaster recovery flow table; otherwise, the first flow entry is added to the disaster recovery flow table; wherein, the first flow entry is added to the disaster recovery flow table; The priority of the first-class entry is higher than the default flow entry in the disaster recovery flow table;
所述第二处理模块,用于判断所述待处理的数据报文是否与添加到所述灾备流表中的所述第一流表项相匹配,如果是,根据所述灾备流表中的所述第一流表项对所述数据报文进行处理;否则,根据所述默认流表项对所述数据报文进行处理。The second processing module is configured to determine whether the data packet to be processed matches the first flow entry added to the disaster recovery flow table, and if so, according to the disaster recovery flow table Process the data packet according to the first flow entry; otherwise, process the data packet according to the default flow entry.
优选的,所述装置还包括:正常处理模块,Preferably, the device further includes: a normal processing module,
所述正常处理模块,用于在所述交换机中还预先存储有控制器下发的正常转发流表的情况下,当所述最新连接状态为正常时,将所述数据报文与所述正常转发流表进行匹配,获得相匹配的第二流表项,根据所述第二流表项对所述数据报文进行处理。The normal processing module is configured to combine the data message with the normal forwarding flow table when the latest connection status is normal when the normal forwarding flow table issued by the controller is pre-stored in the switch. The forwarding flow table is matched to obtain a matched second flow entry, and the data packet is processed according to the second flow entry.
优选的,所述灾备流表还包括:安全限流流表项,且所述安全限流流表项的优先级最高;Preferably, the disaster recovery flow table further includes: a security current limiting flow entry, and the security current limiting flow entry has the highest priority;
所述安全限流流表项的匹配域中包含对数据报文进行限流的目的接收设备的地址信息。The matching field of the security current limiting entry includes the address information of the destination receiving device for limiting the data message.
本发明实施例提供的一种SDN移动自组网的数据处理方法及装置,应用于交换机,可以检测并获得控制器与交换机最新连接状态;当最新连接状态为断开时,对待处理的数据报文进行自学习,根据自学习结果构造第一流表项;判断灾备流表中是否存在与该第一流表项的匹配域相同的流表项,如果是,将与该第一流表项的匹配域相同的流表项删除,并将该第一流表项添加到灾备流表中;否则,将该第一流表项添加到灾备流表中;判断待处理的数据报文是否与添加到灾备流表中的第一流表项相匹配,如果是,根据灾备流表中的第一流表项对数据报文进行处理;否则,根据默认流表项对数据报文进行处理。因此,本发明提供的SDN移动自组网的数据处理方法及装置可以快速感知交换机与控制器连接故障的发生,当控制器断开时,新来的数据报文可以不用盲目地发送给控制器处理而是直接与连接状态断开时的灾备流表进行匹配,获得相应的处理策略,这缩短了故障恢复时间,提高了交换机的数据处理能力和效率,从而提高了网络的可靠性和稳定性;此外,在移动自组网络拓扑结构变化导致控制器失效时,本发明还可以根据连接状态的变化及时进行流表项的学习老化,防止网络拓扑结构变化后交换机仍使用旧的流表项,进一步提高了网络的可靠性。当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。A data processing method and device for an SDN mobile ad hoc network provided by an embodiment of the present invention is applied to a switch, and can detect and obtain the latest connection status between the controller and the switch; when the latest connection status is disconnected, the datagram to be processed According to the self-learning result, the first flow entry is constructed; it is judged whether there is a flow entry in the disaster recovery flow table with the same matching field as the first flow entry, and if so, it will be matched with the first flow entry. Delete the flow entry with the same domain, and add the first flow entry to the disaster recovery flow table; otherwise, add the first flow entry to the disaster recovery flow table; determine whether the data packet to be processed is the same as the one added to the The first flow entry in the disaster recovery flow table matches, if yes, the data packet is processed according to the first flow entry in the disaster recovery flow table; otherwise, the data packet is processed according to the default flow entry. Therefore, the data processing method and device of the SDN mobile ad hoc network provided by the present invention can quickly perceive the occurrence of a connection failure between the switch and the controller, and when the controller is disconnected, the new data message can be sent to the controller without blindly The processing is directly matched with the disaster recovery flow table when the connection state is disconnected to obtain the corresponding processing strategy, which shortens the fault recovery time, improves the data processing capability and efficiency of the switch, and thus improves the reliability and stability of the network In addition, when the change of the topological structure of the mobile ad hoc network causes the controller to fail, the present invention can also learn and age the flow entry in time according to the change of the connection state, so as to prevent the switch from still using the old flow entry after the change of the network topology , further improving the reliability of the network. Of course, implementing any product or method of the present invention does not necessarily need to achieve all the above-mentioned advantages at the same time.
附图说明Description of drawings
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the following will briefly introduce the drawings that need to be used in the description of the embodiments or the prior art. Obviously, the accompanying drawings in the following description are only These are some embodiments of the present invention. Those skilled in the art can also obtain other drawings based on these drawings without creative work.
图1为本发明实施例提供的一种SDN移动自组网的数据处理方法流程图;Fig. 1 is a flow chart of a data processing method for an SDN mobile ad hoc network provided by an embodiment of the present invention;
图2为本发明实施例提供的另一种SDN移动自组网的数据处理方法流程图;FIG. 2 is a flow chart of another SDN mobile ad hoc network data processing method provided by an embodiment of the present invention;
图3为本发明实施例提供的控制器与交换机的一种连接状态检测原理示意图;3 is a schematic diagram of a connection state detection principle between a controller and a switch provided by an embodiment of the present invention;
图4为本发明实施例提供的控制器与交换机连接状态转化关系示意图;FIG. 4 is a schematic diagram of a connection state transition relationship between a controller and a switch provided by an embodiment of the present invention;
图5为本发明实施例提供的另一种SDN移动自组网的数据处理方法流程图;FIG. 5 is a flow chart of another SDN mobile ad hoc network data processing method provided by an embodiment of the present invention;
图6为本发明实施例提供的另一种SDN移动自组网的数据处理方法流程图;FIG. 6 is a flow chart of another SDN mobile ad hoc network data processing method provided by an embodiment of the present invention;
图7为本发明实施例提供的实际应用中的一种SDN移动自组网的数据处理方法流程图;FIG. 7 is a flowchart of a data processing method for an SDN mobile ad hoc network in an actual application provided by an embodiment of the present invention;
图8为本发明实施例提供的一种SDN移动自组网的数据处理装置结构图;FIG. 8 is a structural diagram of a data processing device for an SDN mobile ad hoc network provided by an embodiment of the present invention;
图9为本发明实施例提供的另一种SDN移动自组网的数据处理装置结构图;FIG. 9 is a structural diagram of another SDN mobile ad hoc network data processing device provided by an embodiment of the present invention;
图10为本发明实施例提供的另一种SDN移动自组网的数据处理装置结构图;FIG. 10 is a structural diagram of another SDN mobile ad hoc network data processing device provided by an embodiment of the present invention;
图11为本发明实施例提供的另一种SDN移动自组网的数据处理装置结构图;FIG. 11 is a structural diagram of another SDN mobile ad hoc network data processing device provided by an embodiment of the present invention;
图12为本发明实施例提供的实际应用中的一种SDN移动自组网的数据处理装置结构图。FIG. 12 is a structural diagram of a data processing device for an SDN mobile ad hoc network in practical application provided by an embodiment of the present invention.
具体实施方式detailed description
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。The following will clearly and completely describe the technical solutions in the embodiments of the present invention with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only some, not all, embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by persons of ordinary skill in the art without making creative efforts belong to the protection scope of the present invention.
本发明实施例提供了一种SDN移动自组网的数据处理方法及一种SDN移动自组网的数据处理装置,应用于交换机,下面分别进行说明。Embodiments of the present invention provide a data processing method for an SDN mobile ad hoc network and a data processing device for an SDN mobile ad hoc network, which are applied to switches, and will be described respectively below.
首先对一种SDN移动自组网的数据处理方法进行说明。First, a data processing method of an SDN mobile ad hoc network is described.
如图1所示,本发明实施例提供的一种SDN移动自组网的数据处理方法,应用于交换机,所述交换机中预先存储有控制器下发的灾备流表,所述灾备流表中预先存储有默认流表项,该方法可以包括:As shown in Figure 1, a data processing method for an SDN mobile ad hoc network provided by an embodiment of the present invention is applied to a switch, and the switch is pre-stored with a disaster recovery flow table issued by a controller, and the disaster recovery flow Default flow entries are pre-stored in the table, and the method may include:
S100、按照预设规则检测所述控制器与所述交换机的连接状态,获得最新连接状态;S100. Detect the connection state between the controller and the switch according to preset rules, and obtain the latest connection state;
首先,需要说明的是,本发明实施例中所说的交换机可以是支持Openflow协议的Open vSwitch(OVS)虚拟交换机,也可以是其他交换机,且本发明实施例中所说的交换机主要应用于基于SDN的Ad Hoc网络中,当然也可以应用于其他网络中。但为了方便说明,在本发明下述的实施方式中都是以应用于基于SDN的Ad Hoc网络中,并且支持Openflow协议的OVS交换机为例进行说明。First of all, it should be noted that the switches mentioned in the embodiments of the present invention may be Open vSwitch (OVS) virtual switches supporting the Openflow protocol, or other switches, and the switches mentioned in the embodiments of the present invention are mainly used in In the Ad Hoc network of SDN, of course, it can also be applied to other networks. However, for the convenience of description, in the following embodiments of the present invention, an OVS switch applied in an SDN-based Ad Hoc network and supporting the Openflow protocol is used as an example for illustration.
控制器连接状态检测机制主要基于有限状态机制实现。控制器与交换机的连接状态可以包括:正常状态和断开(DISCONNECTION)状态,其中正常状态又可以包括活跃(ACTIVE)状态和空闲(IDLE)状态。The controller connection state detection mechanism is mainly realized based on the finite state mechanism. The connection state between the controller and the switch may include: a normal state and a disconnected (DISCONNECTION) state, wherein the normal state may further include an active (ACTIVE) state and an idle (IDLE) state.
S200、当所述最新连接状态为断开时,对待处理的数据报文进行自学习,根据自学习结果构造第一流表项;S200. When the latest connection state is disconnected, perform self-learning on the data packet to be processed, and construct a first flow entry according to the self-learning result;
其中,对待处理的的数据报文进行自学习,根据自学习结果构造第一流表项可以包括:Wherein, performing self-learning on the data packets to be processed, and constructing the first flow entry according to the self-learning results may include:
步骤一、对待处理的数据报文的包头进行解析,提取数据报文包头中的信息;Step 1, analyzing the packet header of the data packet to be processed, and extracting the information in the packet header of the data packet;
步骤二、根据提取的数据报文包头中的信息构造第一流表项。Step 2: Construct a first flow entry according to the information in the extracted data packet header.
具体的,第一流表项的目的地址匹配字段可以是数据报文的源mac地址,行为的转发出口就是数据报文的入端口,即进行自学习的数据报文可以为反向数据报文。Specifically, the destination address matching field of the first flow entry may be the source mac address of the data packet, and the forwarding exit of the behavior is the ingress port of the data packet, that is, the data packet for self-learning may be a reverse data packet.
在本发明提供的实施例中,可以使OVS交换机在数据处理层面直接调用自学习功能,这样,一方面,在控制器断开的这种情况下,数据报文可以不用盲目地发送给控制器处理而直接在交换机中匹配连接状态断开时的灾备流表,并执行相应的处理策略,提高了交换机的数据处理能力和效率;在控制器连接正常的情况下,可以减少上交控制器的数据报文的数量,有效避免控制器处理延时,减轻控制器负担;另一方面,这更符合SDN网络将控制和转发分离的思想且增加了灵活性;此外,自学习产生的第一流表项和交换机中存储的灾备流表中的默认流表项的规则相同,即自学习产生的第一流表项也包括匹配域、计数器和动作,可以无差异的添加到原有的灾备流表中,保持了OpenFlow和SDN的原有的特性,从而也保证了网络的稳定性。另外,在移动自组网络拓扑结构变化导致控制器失效时,本发明可以根据连接状态的变化及时进行流表项的学习老化,防止网络拓扑结构变化后交换机仍使用旧的流表项,进一步提高了网络的可靠性。In the embodiment provided by the present invention, the OVS switch can directly call the self-learning function at the data processing level, so that, on the one hand, when the controller is disconnected, the data message can be sent to the controller without blindly Processing directly matches the disaster recovery flow table when the connection state is disconnected in the switch, and executes the corresponding processing strategy, which improves the data processing capability and efficiency of the switch; when the controller is connected normally, it can reduce the number of handovers to the controller. The number of data packets can effectively avoid the processing delay of the controller and reduce the burden on the controller; on the other hand, this is more in line with the idea of separating control and forwarding in the SDN network and increases flexibility; in addition, the first flow generated by self-learning The rules of the entry and the default flow entry in the disaster recovery flow table stored in the switch are the same, that is, the first flow entry generated by self-learning also includes matching domains, counters and actions, and can be added to the original disaster recovery without difference In the flow table, the original characteristics of OpenFlow and SDN are maintained, thereby ensuring the stability of the network. In addition, when the change of the topological structure of the mobile ad hoc network causes the controller to fail, the present invention can timely learn and age the flow entry according to the change of the connection state, preventing the switch from still using the old flow entry after the change of the network topology, further improving network reliability.
S300、判断所述灾备流表中是否存在与所述第一流表项的匹配域相同的流表项,如果是,将所述与所述第一流表项的匹配域相同的流表项删除,并将所述第一流表项添加到所述灾备流表中;否则,将所述第一流表项添加到所述灾备流表中,其中所述第一流表项的优先级高于所述灾备流表中的默认流表项;S300. Determine whether there is a flow entry with the same matching field as the first flow entry in the disaster recovery flow table, and if yes, delete the flow entry with the same matching field as the first flow entry , and add the first flow entry to the disaster recovery flow table; otherwise, add the first flow entry to the disaster recovery flow table, wherein the priority of the first flow entry is higher than The default flow entry in the disaster recovery flow table;
具体的,灾备流表可以为控制器预先下发给交换机的流表之一,流表中一般包含多个流表项,流表项包括:匹配域、计数器、动作。OpenFlow的匹配域(OpenFlow v1.3.1)用于对数据报文的包头等字段进行匹配,动作则指导匹配到流表项的数据报文的处理与转发。在实际应用中,待处理的数据报文先与优先级较高的流表项进行匹配,匹配不到时再与优先级较低的流表项进行匹配。灾备流表中预先存储有默认流表项,默认流表项的优先级最低。Specifically, the disaster recovery flow table may be one of the flow tables issued by the controller to the switch in advance, and the flow table generally includes multiple flow table items, and the flow table items include: matching fields, counters, and actions. The matching field of OpenFlow (OpenFlow v1.3.1) is used to match the packet header and other fields of the data packet, and the action guides the processing and forwarding of the data packet matching the flow entry. In practical applications, the data packet to be processed is first matched with a flow entry with a higher priority, and then matched with a flow entry with a lower priority if no match is found. Default flow entries are pre-stored in the disaster recovery flow table, and the default flow entry has the lowest priority.
具体的,如表1所示,灾备流表中的默认流表项的匹配域可以为与任意数据报文的包头等字段匹配,默认流表项的动作可以为泛洪(flood),即将数据报文从除该数据报文入端口外的所有端口转发出去。Specifically, as shown in Table 1, the matching field of the default flow entry in the disaster recovery flow table can be matched with the packet header and other fields of any data packet, and the action of the default flow entry can be flood. The data packet is forwarded out from all ports except the inbound port of the data packet.
表1灾备流表Table 1 Disaster recovery flow table
具体的,表2为在表1的基础上插入一条自学习获得的第一流表项后的灾备流表,其优先级高于默认流表项。Specifically, Table 2 is the disaster recovery flow table after inserting a self-learning first flow entry on the basis of Table 1, and its priority is higher than the default flow entry.
表2插入一条第一流表项后的灾备流表Table 2 Disaster recovery flow table after inserting a first flow entry
S400、判断所述待处理的数据报文是否与添加到所述灾备流表中的所述第一流表项相匹配,如果是,根据所述灾备流表中的所述第一流表项对所述数据报文进行处理;否则,根据所述默认流表项对所述数据报文进行处理。S400. Determine whether the data packet to be processed matches the first flow entry added to the disaster recovery flow table, and if so, according to the first flow entry in the disaster recovery flow table Process the data packet; otherwise, process the data packet according to the default flow entry.
具体的,当前待处理的数据报文首先与添加到灾备流表(如表2)中的第一流表项相匹配,如果匹配,根据第一流表项的动作对当前待处理的数据报文进行处理;否则,根据默认流表项的动作,对当前待处理的数据报文进行处理。Specifically, the current data packet to be processed is first matched with the first flow entry added to the disaster recovery flow table (such as Table 2), and if matched, the current data packet to be processed is processed according to the action of the first flow entry Process it; otherwise, process the currently pending data packet according to the action of the default flow entry.
图2显示了步骤S100中“按照预设规则检测所述控制器与所述交换机的连接状态”的过程,该过程可以包括:Figure 2 shows the process of "detecting the connection status between the controller and the switch according to preset rules" in step S100, which may include:
S101、向所述控制器发送第一Echo请求消息;S101. Send a first Echo request message to the controller;
具体的,当交换机和控制器建立起OpenFlow连接后,进入活跃状态。然后,交换机向控制器发送第一个第一Echo请求消息(Echo request)作为探针进行连接状态跟踪检测。Specifically, when an OpenFlow connection is established between the switch and the controller, it enters an active state. Then, the switch sends the first first Echo request message (Echo request) to the controller as a probe to perform connection state tracking detection.
S102、判断所述交换机是否在设定的超时时间长度内接收到所述控制器发送的消息,其中从所述交换机接收所述控制器发送的最后一条消息的时间开始对所述设定的超时时间长度进行计时;S102. Determine whether the switch receives the message sent by the controller within the set timeout period, wherein the set timeout starts from the time when the switch receives the last message sent by the controller Time length is counted;
具体的,判断交换机是否在设定的超时时间长度内接收到控制器发送的Openflow消息;其中,从交换机接收到控制器发送的最后一条Openflow消息的时间开始对所述设定的超时时间长度进行计时,即从Openflow消息的最后活跃时间开始对所述设定的超时时间长度进行计时;该Openflow消息可以是控制器发送给交换机的任何Openflow消息,包括针对第一个第一Echo请求消息的第一Echo响应消息(Echo reply)。Specifically, it is judged whether the switch receives the Openflow message sent by the controller within the set time-out period; wherein, the set time-out period is performed from the time when the switch receives the last Openflow message sent by the controller Timing, that is, from the last active time of the Openflow message to start timing the set timeout period; this Openflow message can be any Openflow message sent by the controller to the switch, including the first Echo request message for the first An Echo response message (Echo reply).
S103、如果否,确定所述控制器与所述交换机的最新连接状态为断开状态,如果是,确定所述控制器与所述交换机的最新连接状态为正常状态。S103. If no, determine that the latest connection state between the controller and the switch is a disconnected state, and if yes, determine that the latest connection state between the controller and the switch is a normal state.
具体的,如果交换机在设定的超时时间长度内未收到控制器发送的Openflow消息,则确定所述控制器与所述交换机的最新连接状态为断开状态;如果交换机在设定的时间长度内收到了控制器发送的Openflow消息,则说明连接状态正常,并在一定的时间间隔后发送第二个第一Echo请求消息作为探针继续进行交换机与控制器的连接状态的跟踪检测。Specifically, if the switch does not receive the Openflow message sent by the controller within the set time-out period, it is determined that the latest connection state between the controller and the switch is disconnected; If the Openflow message sent by the controller is received within a certain period of time, it indicates that the connection status is normal, and after a certain time interval, the second first Echo request message is sent as a probe to continue tracking and detection of the connection status between the switch and the controller.
具体的,如图3所示,前述设定的超时时间长度为设定的第一超时时间长度t1和设定的第二超时时间长度t2的和。步骤S103中确定所述控制器与所述交换机的最新连接状态为正常状态可以包括:Specifically, as shown in FIG. 3 , the aforementioned set timeout period is the sum of the set first timeout period t1 and the set second timeout period t2 . In step S103, determining that the latest connection state between the controller and the switch is a normal state may include:
步骤一、当交换机在设定的第一超时时间长度t1内未接收到控制器发送的Openflow消息时,确定所述控制器与所述交换机的最新连接状态为正常状态中的空闲状态;同样的,从交换机接收到所述控制器发送的最后一条Openflow消息的时间开始对设定的第一超时时间长度t1进行计时,即从Openflow消息的最后活跃时间开始对设定的第一超时时间长度t1进行计时;Step 1. When the switch does not receive the Openflow message sent by the controller within the set first time-out period t1, determine that the latest connection state between the controller and the switch is an idle state in the normal state; the same , start timing the set first timeout period t1 from the time when the switch receives the last Openflow message sent by the controller, that is, start timing the set first timeout period t1 from the last active time of the Openflow message timekeeping;
步骤二、当确定最新连接状态为空闲状态时,向所述控制器发送第二Echo请求消息;Step 2, when it is determined that the latest connection state is an idle state, send a second Echo request message to the controller;
步骤三、当在设定的第二超时时间长度t2内接收到所述控制器发送的消息时,确定所述控制器与所述交换机的最新连接状态为正常状态中的活跃状态,其中所述设定的第一超时时间长度和设定的第二超时时间长度的和为所述设定的超时时间长度。Step 3. When receiving the message sent by the controller within the set second timeout period t2, determine that the latest connection state between the controller and the switch is an active state in the normal state, wherein the The sum of the set first timeout period and the set second timeout period is the set timeout period.
在上述步骤三中,当在设定的第二超时时间长度t2内未接收到所述控制器发送的Openflow消息时,则控制器与交换机由空闲状态进入断开状态,即从Openflow消息的最后活跃时间开始至t1+t2的时间长度到期后,交换机一直未收到控制器发送的Openflow消息,说明控制器已失效,交换机陷入故障状态中。In the above step three, when the Openflow message sent by the controller is not received within the set second timeout length t2, the controller and the switch enter the disconnected state from the idle state, that is, from the last time of the Openflow message After the active time begins and the time t1+t2 expires, the switch has not received the Openflow message sent by the controller, indicating that the controller has failed and the switch is in a fault state.
当然,可以理解的是,还有另外一种情况,即当交换机收到控制器发送的即将主动断开连接的消息后,控制器直接由活跃状态进入断开状态。Of course, it can be understood that there is another situation, that is, after the switch receives the message that the controller is about to actively disconnect the connection, the controller directly enters the disconnected state from the active state.
图4显示了活跃、空闲和断开这三种状态的具体转化关系。Figure 4 shows the specific conversion relationship of the three states of active, idle and disconnected.
优选的,当所述连接状态为活跃状态时,交换机还可以根据最近一次发送第一Echo请求消息的时间,及接收所述控制器针对该第一Echo请求消息发送的第一Echo响应消息的时间,对发送第一Echo请求消息的时间间隔、设定的第一超时时间长度和设定的第二超时时间长度进行调整;当所述连接状态为空闲状态时,根据发送第二Echo请求消息的时间,及接收所述控制器针对该第二Echo请求消息发送的第二Echo响应消息的时间,对发送第一Echo请求消息的时间间隔、设定的第一超时时间长度进行调整。Preferably, when the connection state is an active state, the switch can also send the first Echo request message according to the latest time, and receive the first Echo response message sent by the controller for the first Echo request message. , the time interval for sending the first Echo request message, the first time-out length of the setting and the second time-out time length of the setting are adjusted; when the connection state is an idle state, according to sending the second Echo request message time, and the time of receiving the second Echo response message sent by the controller in response to the second Echo request message, adjust the time interval for sending the first Echo request message and the set first timeout time length.
具体的,如图3所示,当连接状态为活跃状态时,可以将交换机发送第一个第一Echo请求消息至接收到控制器发送的针对第一个第一Echo请求消息的第一Echo响应消息的时间长度计为T1,将接收到第一Echo响应消息至发送第二个第一Echo请求消息的时间长度计为T2,T1与T2的和即为交换机在活跃状态下发送第一Echo请求消息的时间间隔。交换机可以通过检测最近一次第一Echo请求消息的往返时延T1,动态调整第一Echo请求消息的发送间隔Tx、设定的第一超时时间长度t1和设定的第二超时时间长度t2;Specifically, as shown in Figure 3, when the connection state is active, the switch can send the first first Echo request message to the first Echo response to the first first Echo request message sent by the controller The time length of the message is counted as T1, and the time length from receiving the first Echo response message to sending the second first Echo request message is counted as T2, and the sum of T1 and T2 is the switch sending the first Echo request in the active state message interval. The switch can dynamically adjust the sending interval Tx of the first Echo request message, the set first time-out time length t1 and the set second time-out time length t2 by detecting the round-trip delay T1 of the last first Echo request message;
具体的,当所述连接状态为空闲状态时,如果交换机在设定的第二超时时间内收到Openflow消息(可以是第二Echo响应消息),连接状态由空闲状态跳入活跃状态,可以根据发送第二Echo请求消息的时间,及接收所述控制器针对该第二Echo请求消息发送的第二Echo响应消息的时间,对发送第一Echo请求消息的时间间隔、设定的第一超时时间长度进行调整。Specifically, when the connection state is an idle state, if the switch receives an Openflow message (which may be a second Echo response message) within the second timeout period set, the connection state jumps from the idle state to the active state, which can be based on The time for sending the second Echo request message, and the time for receiving the second Echo response message sent by the controller for the second Echo request message, the time interval for sending the first Echo request message, the first overtime of setting Adjust the length.
这样一方面可以实现Echo消息的智能管理,从而节省通信链路的资源,另一方面有助于缩短控制器失效后的故障恢复时间。In this way, on the one hand, intelligent management of Echo messages can be realized, thereby saving communication link resources, and on the other hand, it helps to shorten the fault recovery time after the controller fails.
在传统解决方案中,交换机通过周期性地发送Echo消息进行连接状态检测,该周期较长(一般为5s)且固定不变,因此,不能根据链路状况(如链路拥塞影响echo消息的往返时间)动态调整echo消息的发送间隔,也不能及时检测到控制器连接失效的情况。而本发明提供的实施例对连接状态进行动态、实时的检测,可以快速感知交换机与控制器连接故障的发生,为缩短控制器失效时的故障恢复时间提供了有力帮助,提高了网络的可靠性。In the traditional solution, the switch detects the connection status by periodically sending Echo messages. The period is long (usually 5s) and fixed. Therefore, the round-trip of echo messages cannot be affected according to link conditions (such as link congestion). Time) to dynamically adjust the sending interval of the echo message, and it is impossible to detect the failure of the controller connection in time. However, the embodiment provided by the present invention detects the connection state dynamically and in real time, can quickly perceive the occurrence of a connection failure between the switch and the controller, provides a powerful help for shortening the fault recovery time when the controller fails, and improves the reliability of the network .
如图5所示,在图1所示的实施例的基础上,本发明还提供了另一种SDN移动自组网的数据处理方法,所述交换机中还预先存储有控制器下发的正常转发流表,所述方法还可以包括:As shown in Figure 5, on the basis of the embodiment shown in Figure 1, the present invention also provides another data processing method for an SDN mobile ad hoc network. Forwarding the flow table, the method may also include:
S500、当所述最新连接状态为正常时,将所述数据报文与所述正常转发流表进行匹配,获得相匹配的第二流表项,根据所述第二流表项对所述数据报文进行处理。S500. When the latest connection state is normal, match the data packet with the normal forwarding flow table to obtain a matching second flow entry, and process the data according to the second flow entry The message is processed.
即具体的,交换机中还预先存储有正常转发流表,当最新连接状态为正常时,将所述数据报文与所述正常转发流表进行匹配,获得相匹配的第二流表项,根据所述第二流表项对所述数据报文进行处理。Specifically, a normal forwarding flow table is also pre-stored in the switch, and when the latest connection status is normal, the data packet is matched with the normal forwarding flow table to obtain a matching second flow entry, according to The second flow entry processes the data packet.
另外,由于本发明提供的数据处理方法可以实现所有数据报文在Openflow通道中的处理,而无需进入传统通道,因此,本发明提供的数据处理方法兼容性好,且更符合SDN网络中控制与转发分离的核心思想。In addition, since the data processing method provided by the present invention can realize the processing of all data packets in the Openflow channel without entering the traditional channel, the data processing method provided by the present invention has good compatibility and is more in line with the control and communication requirements in the SDN network. Forwarding the core idea of separation.
较佳的,如图6所示,在控制器与交换机的断开时,为了保证数据报文的安全性,本发明实施例还提供了另一种SDN移动自组网的数据处理方法,应用于交换机,所述交换机中预先存储有控制器下发的灾备流表,所述灾备流表中预先存储有默认流表项和安全限流流表项,其中,该安全限流流表项的优先级最高,该方法可以包括:Preferably, as shown in FIG. 6, when the controller and the switch are disconnected, in order to ensure the security of the data message, the embodiment of the present invention also provides another data processing method for the SDN mobile ad hoc network. In the switch, the switch pre-stores a disaster recovery flow table issued by the controller, and the disaster recovery flow table pre-stores a default flow entry and a security current limiting flow entry, wherein the security current limiting flow table item has the highest priority, the method can include:
S010、按照预设规则检测所述控制器与所述交换机的连接状态,获得最新连接状态;S010. Detect the connection state between the controller and the switch according to preset rules, and obtain the latest connection state;
具体的,连接状态检测方法与图1所示的实施例中的方法一致,此处不再赘述。Specifically, the connection state detection method is consistent with the method in the embodiment shown in FIG. 1 , and will not be repeated here.
S020、当所述最新连接状态为断开时,在存储的所述灾备流表中查找是否存在与当前待处理的数据报文匹配的安全限流流表项;如果是,根据该安全限流流表项对所述数据报文进行处理;否则,对待处理的数据报文进行自学习,根据自学习结果构造第一流表项;S020. When the latest connection status is disconnected, check in the stored disaster recovery flow table whether there is a security current limit flow entry matching the current data message to be processed; if so, according to the security limit The flow entry processes the data packet; otherwise, self-learning is performed on the data packet to be processed, and the first flow entry is constructed according to the self-learning result;
具体的,灾备流表中可以预先存储有至少一条安全限流流表项;由于安全限流流表项在灾备流表中的优先级最高,因此,首先在灾备流表中查找是否存在与当前待处理的数据报文匹配的安全限流流表项,当找到与当前待处理的数据报文匹配的安全限流流表项时,根据该安全限流流表项对待处理的数据报文进行处理;当找不到与当前待处理的数据报文匹配的安全限流流表项时,再对待处理的数据报文进行自学习,根据自学习结果构造第一流表项。Specifically, the disaster recovery flow table may pre-store at least one security current limiting flow entry; since the security current limiting flow entry has the highest priority in the disaster recovery flow table, firstly, it is checked in the disaster recovery flow table whether There is a security rate limiting entry matching the current data packet to be processed. When a security rate limiting entry matching the current data packet is found, the data to be processed according to the security rate limiting entry Packets are processed; when no security current limiting flow entry matching the current data packet to be processed is found, self-learning is performed on the data packet to be processed, and the first flow entry is constructed according to the self-learning result.
具体的,如表3所示,安全限流流表项的匹配域中可以包含对数据报文进行限流的目的接收设备的地址信息,动作为丢弃或者发往目的接收设备,即交换机可以选择将当前待处理的数据报文进行丢弃,也可以选择将当前待处理的数据报文发往目的接收设备,还可以在将当前待处理的数据报文发往目的接收设备不成功时将待处理的数据报文丢弃。Specifically, as shown in Table 3, the matching field of the security current limiting flow entry can contain the address information of the destination receiving device that limits the flow of the data packet, and the action is to discard or send it to the destination receiving device, that is, the switch can choose Discard the currently pending data packet, or choose to send the currently pending data packet to the destination receiving device, or send the currently pending data packet to the destination receiving device unsuccessfully data packets are discarded.
表3含有安全限流流表项的灾备流表Table 3 Disaster recovery flow table containing security flow limiting flow entries
S030、判断所述灾备流表中是否存在与所述第一流表项的匹配域相同的流表项,如果是,将所述与所述第一流表项的匹配域相同的流表项删除,并将所述第一流表项添加到所述灾备流表中;否则,将所述第一流表项添加到所述灾备流表中,其中所述第一流表项的优先级高于所述灾备流表中的默认流表项;S030. Determine whether there is a flow entry with the same matching field as the first flow entry in the disaster recovery flow table, and if so, delete the flow entry with the same matching field as the first flow entry , and add the first flow entry to the disaster recovery flow table; otherwise, add the first flow entry to the disaster recovery flow table, where the priority of the first flow entry is higher than The default flow entry in the disaster recovery flow table;
其中,构造第一流表项的方法与图1所示的实施例中的方法一致,此处不再赘述。Wherein, the method for constructing the first flow entry is consistent with the method in the embodiment shown in FIG. 1 , and will not be repeated here.
S040、判断所述待处理的数据报文是否与添加到所述灾备流表中的所述第一流表项相匹配,如果是,根据所述灾备流表中的所述第一流表项对所述数据报文进行处理;否则,根据所述默认流表项对所述数据报文进行处理。S040. Determine whether the data packet to be processed matches the first flow entry added to the disaster recovery flow table, and if so, according to the first flow entry in the disaster recovery flow table Process the data packet; otherwise, process the data packet according to the default flow entry.
本发明图6所示的实施例提供的数据处理方法,可以保证具有安全要求的特定数据报文的安全性,解决了现有技术中,当控制器和交换机的连接断开后,对所有的数据报文都按默认流表项进行处理时,即将数据报文从除该数据报文入端口外的所有端口转发出去,导致对有安全要求的特定数据报文失去控制,从而降低通信安全的问题。The data processing method provided by the embodiment shown in FIG. 6 of the present invention can ensure the security of specific data packets with security requirements, and solve the problem in the prior art that when the connection between the controller and the switch is disconnected, all When all data packets are processed according to the default flow entries, the data packets will be forwarded from all ports except the inbound port of the data packet, resulting in loss of control over specific data packets with security requirements, thereby reducing communication security. question.
由于在实际应用中,当数据报文进入交换机时,首先在交换机的内核层中查找匹配的流表项,如果查找到相匹配的流表项,则根据该流表项对数据报文进行处理;如果没有查找到相匹配的流表项,则将数据报文发送给用户层,并在用户层中查找匹配的流表项,并根据查找到的相匹配的流表项对数据报文进行处理,同时将该相匹配的流表项发给内核层进行缓存,以使交换机下次接收到与本次处理的数据报文相同的数据报文时,直接在内核层进行处理,提高数据报文处理效率。因此,如图7所示,本发明实施例还提供了在实际应用中的一种SDN移动自组网的数据处理方法,应用于交换机,交换机中预先存储有状态控制流表、正常转发流表和灾备流表,所述灾备流表中预先存储有默认流表项,该方法可以包括:In practical applications, when a data packet enters a switch, it first searches for a matching flow entry in the kernel layer of the switch, and if a matching flow entry is found, the data packet is processed according to the flow entry ; If no matching flow entry is found, the data packet is sent to the user layer, and the matching flow entry is searched in the user layer, and the data packet is processed according to the found matching flow entry At the same time, the matching flow entry is sent to the kernel layer for caching, so that when the switch receives the same data packet as the data packet processed this time, it will be processed directly at the kernel layer to improve the data packet document processing efficiency. Therefore, as shown in FIG. 7 , the embodiment of the present invention also provides a data processing method of an SDN mobile ad hoc network in practical application, which is applied to a switch, and a stateful control flow table and a normal forwarding flow table are pre-stored in the switch. and a disaster recovery flow table, wherein a default flow entry is pre-stored in the disaster recovery flow table, and the method may include:
S001、按照预设规则检测所述控制器与所述交换机的连接状态,获得最新连接状态;S001. Detect the connection status between the controller and the switch according to preset rules, and obtain the latest connection status;
具体的,连接状态的检测方法与步骤S100中的方法一致,此处不再赘述。Specifically, the detection method of the connection state is consistent with the method in step S100, and will not be repeated here.
S002、在交换机的内核层中,利用交换机与控制器的最新连接状态作为待处理的数据报文的元数据,构造带有连接状态的第一查找Key;S002. In the kernel layer of the switch, use the latest connection status between the switch and the controller as the metadata of the data message to be processed to construct a first search key with the connection status;
具体的,当交换机接收到数据报文后,交换机内核层会调用Key值提取函数解析数据报文包头各个字段,然后合并最新连接状态构造第一查找Key。Specifically, when the switch receives the data packet, the switch kernel layer will call the Key value extraction function to analyze each field of the packet header of the data packet, and then combine the latest connection status to construct the first search key.
S003、将该第一查找key与内核层中缓存的流表进行匹配;当在内核层中缓存的流表中没有查找到与该第一查找key相匹配的的流表项时,将待处理的数据报文及第一查找key发送至交换机的用户层;S003. Match the first lookup key with the flow table cached in the kernel layer; when no flow entry matching the first lookup key is found in the flow table cached in the kernel layer, it will be processed The data message and the first search key are sent to the user layer of the switch;
S004、在交换机的用户层中,将第一查找key更新为带有当前最新连接状态的第二查找key;S004. In the user layer of the switch, update the first lookup key to the second lookup key with the current latest connection status;
经过步骤S003和步骤S004的处理,实现了连接状态在内核层与用户层中与查找key的双同步与封装,即第一查找key和第二查找key中均封装有最新的连接状态,可以提高交换机对连接状态感知的实时性与准确性,从而尽可能地减小了连接状态转换对网络通信的影响。Through the processing of step S003 and step S004, the double synchronization and encapsulation of the connection state and the search key in the kernel layer and the user layer have been realized, that is, the latest connection state is encapsulated in the first search key and the second search key, which can improve The real-time and accuracy of the switch's perception of the connection state reduces the impact of the connection state transition on network communication as much as possible.
S005、将该第二查找key与状态控制流表进行匹配;当第二查找key与所述状态控制流表中的匹配域为连接状态为断开的流表项匹配时,跳转到灾备流表;S005. Match the second lookup key with the state control flow table; when the second lookup key matches the flow entry whose matching domain in the state control flow table is a disconnected state, jump to disaster recovery flow table;
具体的,该灾备流表可以包括安全限流流表项(如表3),也可以不包括安全限流流表项(如表2);Specifically, the disaster recovery flow table may include a security current limiting flow entry (such as Table 3), or may not include a security current limiting flow entry (such as Table 2);
具体的,状态控制流表可以包括匹配域分别为连接状态为正常和连接状态为断开的两条流表项,如表4。当第二查找key中封装的最新连接状态为正常时,与表4中的第二条流表项相匹配,然后执行该第二条流表项的动作,即跳转到表5,表5为正常转发流表;Specifically, the state control flow table may include two flow entries whose matching fields are the connection state is normal and the connection state is disconnected, as shown in Table 4. When the latest connection status encapsulated in the second lookup key is normal, it matches the second flow entry in Table 4, and then executes the action of the second flow entry, that is, jumps to Table 5, Table 5 is the normal forwarding flow table;
具体的,当第二查找key中封装的最新连接状态为断开时,与表4中的第一条流表项相匹配,然后执行该第一条流表项的动作,即跳转到上文中的灾备流表2,或者,优选的,跳转到上文中的灾备流表3。当跳转到表3时,首先在表3中查找是否存在与当前待处理的数据报文匹配的安全限流流表项;如果是,根据该安全限流流表项对所述数据报文进行处理;否则,执行步骤S006。Specifically, when the latest connection status encapsulated in the second lookup key is disconnected, it matches the first flow entry in Table 4, and then executes the action of the first flow entry, that is, jumps to the above The disaster recovery flow table 2 in the text, or, preferably, jump to the disaster recovery flow table 3 above. When jumping to table 3, first look up in table 3 whether there is a security current limiting flow entry matching the current data message to be processed; Process; otherwise, execute step S006.
表4为本发明实施例在实际应用时采用的状态控制流表。Table 4 is the state control flow table used in the actual application of the embodiment of the present invention.
表4状态控制流表Table 4 State Control Flow Table
表5正常转发流表Table 5 Normal forwarding flow table
S006、对待处理的数据报文进行自学习,根据自学习结果构造第一流表项;判断所述灾备流表中是否存在与所述第一流表项的匹配域相同的流表项,如果是,将所述与所述第一流表项的匹配域相同的流表项删除,并将所述第一流表项添加到所述灾备流表中;否则,将所述第一流表项添加到所述灾备流表中,其中所述第一流表项的优先级高于所述灾备流表中的默认流表项;S006. Perform self-learning on the data message to be processed, and construct a first flow entry according to the self-learning result; determine whether there is a flow entry in the disaster recovery flow table that is the same as the matching domain of the first flow entry, if yes , delete the flow entry that has the same matching domain as the first flow entry, and add the first flow entry to the disaster recovery flow table; otherwise, add the first flow entry to In the disaster recovery flow table, the priority of the first flow entry is higher than the default flow entry in the disaster recovery flow table;
具体的,对数据报文进行自学习的过程与图1所示的方法实施例中的过程一致,此处不再赘述。Specifically, the process of performing self-learning on data packets is consistent with the process in the method embodiment shown in FIG. 1 , and will not be repeated here.
具体的,将根据自学习结果构造的第一流表项添加到表2中;或者,判断表3中已经存在的第一流表项的匹配域是否相同,如果是,将表3中已经存在的第一流表项删除,将当前自学习获得的第一流表项添加到表3中,否则,直接将当前自学习获得的第一流表项添加到表3中,此时表3中存在两条自学习获得的第一流表项。Specifically, add the first flow entry constructed according to the self-learning result to Table 2; or, determine whether the matching domains of the existing first flow entry in Table 3 are the same, and if so, add the existing first flow entry in Table 3 Delete the first-class entry, add the first-flow entry obtained by the current self-learning to Table 3, otherwise, directly add the first-flow entry obtained by the current self-learning to Table 3, and there are two self-learning entries in Table 3 The first stream entry obtained.
S007、判断第二查找key是否与添加到所述灾备流表中的所述第一流表项相匹配,如果是,根据所述灾备流表中的所述第一流表项对所述数据报文进行处理;否则,根据所述默认流表项对所述数据报文进行处理。S007. Determine whether the second lookup key matches the first flow entry added to the disaster recovery flow table, and if so, pair the data according to the first flow entry in the disaster recovery flow table otherwise, process the data packet according to the default flow entry.
本发明实施例提供的一种SDN移动自组网的数据处理方法,应用于交换机,可以检测并获得控制器与交换机最新连接状态;当最新连接状态为断开时,对待处理的数据报文进行自学习,根据自学习结果构造第一流表项;判断灾备流表中是否存在与该第一流表项的匹配域相同的流表项,如果是,将与该第一流表项的匹配域相同的流表项删除,并将该第一流表项添加到灾备流表中;否则,将该第一流表项添加到灾备流表中;判断待处理的数据报文是否与添加到灾备流表中的第一流表项相匹配,如果是,根据灾备流表中的第一流表项对数据报文进行处理;否则,根据默认流表项对数据报文进行处理。因此,本发明提供的SDN移动自组网的数据处理方法可以快速感知交换机与控制器连接故障的发生,当控制器断开时,新来的数据报文可以不用盲目地发送给控制器处理而是直接与连接状态断开时的灾备流表进行匹配,获得相应的处理策略,这缩短了故障恢复时间,提高了交换机的数据处理能力和效率,从而提高了网络的可靠性和稳定性;此外,在移动自组网络拓扑结构变化导致控制器失效时,本发明可以根据连接状态的变化及时进行流表项的学习老化,防止网络拓扑结构变化后交换机仍使用旧的流表项,进一步提高了网络的可靠性。A data processing method for an SDN mobile ad hoc network provided by an embodiment of the present invention is applied to a switch, and can detect and obtain the latest connection status between the controller and the switch; when the latest connection status is disconnected, the data message to be processed is processed Self-learning, constructing the first flow entry according to the self-learning result; judging whether there is a flow entry with the same matching field as the first flow entry in the disaster recovery flow table, and if so, it will be the same as the matching field of the first flow entry Delete the flow entry, and add the first flow entry to the disaster recovery flow table; otherwise, add the first flow entry to the disaster recovery flow table; The first flow entry in the flow table matches, if yes, the data packet is processed according to the first flow entry in the disaster recovery flow table; otherwise, the data packet is processed according to the default flow entry. Therefore, the data processing method of the SDN mobile ad hoc network provided by the present invention can quickly perceive the occurrence of a connection failure between the switch and the controller. It is directly matched with the disaster recovery flow table when the connection state is disconnected to obtain the corresponding processing strategy, which shortens the fault recovery time, improves the data processing capability and efficiency of the switch, and thus improves the reliability and stability of the network; In addition, when the change of the topological structure of the mobile ad hoc network causes the controller to fail, the present invention can timely learn and age the flow entry according to the change of the connection state, preventing the switch from still using the old flow entry after the change of the network topology, further improving network reliability.
相应于图1所示的方法实施例,如图8所示,本发明还提供了一种SDN移动自组网的数据处理装置,应用于交换机,所述交换机中预先存储有控制器下发的灾备流表,所述灾备流表中预先存储有默认流表项,该装置可以包括:连接状态检测模块100、自学习模块200、第一处理模块300和第二处理模块400,Corresponding to the method embodiment shown in FIG. 1 , as shown in FIG. 8 , the present invention also provides a data processing device for an SDN mobile ad hoc network, which is applied to a switch, and the switch is pre-stored with data sent by the controller. A disaster recovery flow table, wherein a default flow entry is pre-stored in the disaster recovery flow table, and the device may include: a connection state detection module 100, a self-learning module 200, a first processing module 300, and a second processing module 400,
连接状态检测模块100,用于按照预设规则检测所述控制器与所述交换机的连接状态,获得最新连接状态;A connection state detection module 100, configured to detect the connection state between the controller and the switch according to preset rules, and obtain the latest connection state;
同样需要说明的是,本发明实施例中所说的交换机可以是支持Openflow协议的Open vSwitch(OVS)虚拟交换机,也可以是其他交换机,且本发明实施例中所说的交换机主要应用于基于SDN的Ad Hoc网络中,当然也可以应用于其他网络中。It should also be noted that the switches mentioned in the embodiments of the present invention can be Open vSwitch (OVS) virtual switches supporting the Openflow protocol, or other switches, and the switches mentioned in the embodiments of the present invention are mainly used in SDN-based Ad Hoc network, of course, can also be applied to other networks.
具体的,控制器连接状态的类型与图1所示的方法实施例中一致,此处不再赘述。Specifically, the type of the connection state of the controller is the same as that in the method embodiment shown in FIG. 1 , and will not be repeated here.
自学习模块200,用于当所述最新连接状态为断开时,对待处理的数据报文进行自学习,根据自学习结果构造第一流表项;The self-learning module 200 is configured to perform self-learning on the data packet to be processed when the latest connection status is disconnected, and construct a first flow entry according to the self-learning result;
具体的,灾备流表为控制器预先下发给交换机的流表之一,流表中一般包含多个流表项,流表项主要由三部分组成:匹配域、计数器、动作。OpenFlow的匹配域(OpenFlow v1.3.1)用于对数据报文的包头等字段进行匹配,动作则指导匹配到流表项的数据报文的处理与转发。在实际应用中,待处理的数据报文先与优先级较高的流表项进行匹配,匹配不到时再与优先级较低的流表项进行匹配。灾备流表中预先存储有默认流表项,默认流表项的优先级最低。Specifically, the disaster recovery flow table is one of the flow tables issued by the controller to the switch in advance. The flow table generally contains multiple flow table items, and the flow table items are mainly composed of three parts: matching fields, counters, and actions. The matching field of OpenFlow (OpenFlow v1.3.1) is used to match the packet header and other fields of the data packet, and the action guides the processing and forwarding of the data packet matching the flow entry. In practical applications, the data packet to be processed is first matched with a flow entry with a higher priority, and then matched with a flow entry with a lower priority if no match is found. Default flow entries are pre-stored in the disaster recovery flow table, and the default flow entry has the lowest priority.
第一处理模块300,用于判断所述灾备流表中是否存在与所述第一流表项的匹配域相同的流表项,如果是,将所述与所述第一流表项的匹配域相同的流表项删除,并将所述第一流表项添加到所述灾备流表中;否则,将所述第一流表项添加到所述灾备流表中,其中所述第一流表项的优先级高于所述灾备流表中的默认流表项;The first processing module 300 is configured to determine whether there is a flow entry in the disaster recovery flow table that is the same as the matching field of the first flow entry, and if so, set the matching field of the first flow entry to The same flow entry is deleted, and the first flow entry is added to the disaster recovery flow table; otherwise, the first flow entry is added to the disaster recovery flow table, wherein the first flow table The priority of the item is higher than the default flow entry in the disaster recovery flow table;
第二处理模块400,用于判断所述待处理的数据报文是否与添加到所述灾备流表中的所述第一流表项相匹配,如果是,根据所述灾备流表中的所述第一流表项对所述数据报文进行处理;否则,根据所述默认流表项对所述数据报文进行处理。The second processing module 400 is configured to determine whether the data packet to be processed matches the first flow entry added to the disaster recovery flow table, and if so, according to the data packet in the disaster recovery flow table The first flow entry processes the data packet; otherwise, processes the data packet according to the default flow entry.
具体的,如图9所示,连接状态检测模块100可以包括:第一请求子模块101、第一判断子模块102和状态确定子模块103,Specifically, as shown in FIG. 9, the connection state detection module 100 may include: a first request submodule 101, a first judgment submodule 102, and a state determination submodule 103,
第一请求子模块101,用于向所述控制器发送第一Echo请求消息;The first request submodule 101 is configured to send a first Echo request message to the controller;
第一判断子模块102,用于判断是否在设定的超时时间长度内接收到所述控制器发送的信息,其中从所述交换机接收所述控制器发送的最后一条信息的时间开始对所述设定的超时时间长度进行计时;The first judging sub-module 102 is used to judge whether the information sent by the controller is received within the set timeout period, wherein the switch starts from the time when the switch receives the last piece of information sent by the controller. Timing for the set timeout period;
具体的,从交换机接收到控制器发送的最后一条Openflow消息的时间开始对所述设定的超时时间长度进行计时,即从Openflow消息的最后活跃时间开始对所述设定的时间长度进行计时;该Openflow消息可以是控制器发送给交换机的任何Openflow消息,包括针对第一个第一Echo请求消息的第一Echo响应消息(Echo reply)。Specifically, start counting the set time-out time length from the time when the switch receives the last Openflow message sent by the controller, that is, start counting the set time length from the last active time of the Openflow message; The Openflow message may be any Openflow message sent by the controller to the switch, including a first Echo response message (Echo reply) for the first first Echo request message.
状态确定子模块103,用于在所述第一判断模子块获得的判断结果为否时,确定所述控制器与所述交换机的最新连接状态为断开状态;用于在所述第一判断模子块获得的判断结果为是时,确定所述控制器与所述交换机的最新连接状态为正常状态。A state determining submodule 103, configured to determine that the latest connection state between the controller and the switch is disconnected when the judgment result obtained by the first judging module is no; When the judgment result obtained by the module block is yes, it is determined that the latest connection state between the controller and the switch is a normal state.
其中,状态确定模块子103可以包括:第一状态确定子模块、第二请求子模块和第二状态确定子模块,Wherein, the status determination module 103 may include: a first status determination submodule, a second request submodule and a second status determination submodule,
第一状态确定子模块,用于当在设定的第一超时时间长度内未接收到所述控制器发送的消息时,确定所述控制器与所述交换机的最新连接状态为正常状态中的空闲状态;其中从所述交换机接收所述控制器发送的最后一条消息的时间开始对所述设定的第一超时时间长度进行计时;The first state determination submodule is configured to determine that the latest connection state between the controller and the switch is in the normal state when the message sent by the controller is not received within the set first timeout period Idle state; wherein the first time-out time length of the setting is counted from the time when the switch receives the last message sent by the controller;
第二请求子模块,用于当确定最新连接状态为空闲状态时,向所述控制器发送第二Echo请求消息;The second request submodule is used to send a second Echo request message to the controller when it is determined that the latest connection state is an idle state;
第二状态确定子模块,用于当在设定的第二超时时间长度内接收到所述控制器发送的消息时,确定所述控制器与所述交换机的最新连接状态为正常状态中的活跃状态,其中所述设定的第一超时时间长度和设定的第二超时时间长度的和为所述设定的超时时间长度。The second state determination submodule is used to determine that the latest connection state between the controller and the switch is active in the normal state when receiving the message sent by the controller within the set second timeout period state, wherein the sum of the set first timeout period and the set second timeout period is the set timeout period.
具体的,确定设定的超时时间长度、设定的第一超时时间长度和设定的第二超时时间长度的过程,以及确定活跃、空闲和断开这三种状态的相互转化时的条件的过程,与图1所示的方法实施例中描述的一致,此处不再赘述。Specifically, the process of determining the set timeout period length, the set first timeout period length and the set second timeout period length, and the conditions for determining the mutual conversion of the three states of active, idle and disconnected The process is consistent with that described in the method embodiment shown in FIG. 1 , and will not be repeated here.
同样较佳的,在图9所示的数据处理装置的基础上,该装置还可以包括:第一调整模块和第二调整模块,Also preferably, on the basis of the data processing device shown in Figure 9, the device may further include: a first adjustment module and a second adjustment module,
第一调整模块,用于当所述连接状态为活跃状态时,根据最近一次发送第一Echo请求消息的时间,及接收所述控制器针对该第一Echo请求消息发送的第一Echo响应消息的时间,对下一次发送第一Echo请求消息的时间间隔、设定的第一超时时间长度和设定的第二超时时间长度进行调整;The first adjustment module is used to receive the first Echo response message sent by the controller for the first Echo request message according to the last time the first Echo request message was sent when the connection state is active. Time, the time interval of sending the first Echo request message next time, the first time-out time length of setting and the second time-out time length of setting are adjusted;
第二调整模块,用于当所述连接状态为空闲状态时,根据发送第二Echo请求消息的时间,及接收所述控制器针对该第二Echo请求消息发送的第二Echo响应消息的时间,对发送第一Echo请求消息的时间间隔、设定的第一超时时间长度进行调整。The second adjustment module is used for when the connection state is an idle state, according to the time of sending the second Echo request message and the time of receiving the second Echo response message sent by the controller for the second Echo request message, The time interval for sending the first Echo request message and the set first timeout time length are adjusted.
在传统解决方案中,交换机通过周期性地发送Echo消息进行连接状态检测,该周期较长(一般为5s)且固定不变,因此,不能根据链路状况(如链路拥塞影响echo消息的往返时间)动态调整echo消息的发送间隔,也不能及时检测到控制器连接失效的情况。而本发明提供的实施例对连接状态进行动态、实时的检测,可以快速感知交换机与控制器连接故障的发生,为缩短控制器失效时的故障恢复时间提供了有力帮助,提高了网络的可靠性。In the traditional solution, the switch detects the connection status by periodically sending Echo messages. The period is long (usually 5s) and fixed. Therefore, the round-trip of echo messages cannot be affected according to link conditions (such as link congestion). Time) to dynamically adjust the sending interval of the echo message, and it is impossible to detect the failure of the controller connection in time. However, the embodiment provided by the present invention detects the connection state dynamically and in real time, can quickly perceive the occurrence of a connection failure between the switch and the controller, provides a powerful help for shortening the fault recovery time when the controller fails, and improves the reliability of the network .
具体的,第一处理模块300可以包括:解析子模块和流表项构造子模块,Specifically, the first processing module 300 may include: a parsing submodule and a flow entry construction submodule,
解析子模块,用于对待处理的数据报文的包头进行解析,提取数据报文包头中的信息;The analysis sub-module is used to analyze the header of the data message to be processed, and extract the information in the header of the data message;
流表项构造子模块,用于根据提取的数据报文包头中的信息构造第一流表项。The flow entry construction submodule is configured to construct the first flow entry according to the information in the extracted data packet header.
具体的,第一流表项的目的地址匹配字段可以是数据报文的源mac地址,行为的转发出口就是数据报文的入端口,即进行自学习的数据报文可以为反向数据报文。Specifically, the destination address matching field of the first flow entry may be the source mac address of the data packet, and the forwarding exit of the behavior is the ingress port of the data packet, that is, the data packet for self-learning may be a reverse data packet.
如图10所示,在图8所示的数据处理装置的基础上,本发明还提供了另一种SDN移动自组网的数据处理装置,所述交换机中还预先存储有控制器下发的正常转发流表,该装置还可以包括:正常处理模块500,As shown in Figure 10, on the basis of the data processing device shown in Figure 8, the present invention also provides another data processing device for an SDN mobile ad hoc network. normal forwarding flow table, the device may also include: a normal processing module 500,
正常处理模块500,用于在所述交换机中还预先存储有控制器下发的正常转发流表的情况下,当所述最新连接状态为正常时,将所述数据报文与所述正常转发流表进行匹配,获得相匹配的第二流表项,根据所述第二流表项对所述数据报文进行处理。A normal processing module 500, configured to forward the data packet with the normal forwarding flow table when the latest connection state is normal when the switch also pre-stores a normal forwarding flow table delivered by the controller. The flow table is matched to obtain a matched second flow entry, and the data packet is processed according to the second flow entry.
相应于图6所示的方法实施例,如图11所示,本发明实施例还提供了另一种SDN移动自组网的数据处理装置,应用于交换机,所述交换机中预先存储有控制器下发的灾备流表,所述灾备流表中预先存储有默认流表项和安全限流流表项,其中,该安全限流流表项的优先级最高,该装置可以包括:第一连接状态检测模块010、第一查找模块020、第三处理模块030和第四处理模块040,Corresponding to the method embodiment shown in FIG. 6, as shown in FIG. 11, the embodiment of the present invention also provides another data processing device for an SDN mobile ad hoc network, which is applied to a switch, and the switch is pre-stored with a controller Distributed disaster recovery flow table, the disaster recovery flow table is pre-stored with a default flow entry and a security current limiting flow entry, wherein the priority of the security current limiting flow entry is the highest, and the device may include: A connection state detection module 010, a first search module 020, a third processing module 030 and a fourth processing module 040,
第一连接状态检测模块010,用于按照预设规则检测所述控制器与所述交换机的连接状态,获得最新连接状态;The first connection state detection module 010 is configured to detect the connection state between the controller and the switch according to preset rules, and obtain the latest connection state;
具体的,连接状态检测方法与图1所示的实施例中的方法一致,此处不再赘述。Specifically, the connection state detection method is consistent with the method in the embodiment shown in FIG. 1 , and will not be repeated here.
第一查找模块020,用于当所述最新连接状态为断开时,在存储的所述灾备流表中查找是否存在与当前待处理的数据报文匹配的安全限流流表项;如果是,根据该安全限流流表项对所述数据报文进行处理;否则,对待处理的数据报文进行自学习,根据自学习结果构造第一流表项;The first search module 020 is configured to search the stored disaster recovery flow table for whether there is a security current limiting flow entry matching the current pending data packet when the latest connection status is disconnected; if Yes, processing the data packet according to the security current limiting flow entry; otherwise, performing self-learning on the data packet to be processed, and constructing a first flow entry according to the self-learning result;
具体的,灾备流表中可以预先存储有至少一条安全限流流表项;由于安全限流流表项在灾备流表中的优先级最高,因此,首先在灾备流表中查找是否存在与当前待处理的数据报文匹配的安全限流流表项,当找到与当前待处理的数据报文匹配的安全限流流表项时,根据该安全限流流表项对待处理的数据报文进行处理;当找不到与当前待处理的数据报文匹配的安全限流流表项时,再对待处理的数据报文进行自学习,根据自学习结果构造第一流表项。Specifically, the disaster recovery flow table may pre-store at least one security current limiting flow entry; since the security current limiting flow entry has the highest priority in the disaster recovery flow table, firstly, it is checked in the disaster recovery flow table whether There is a security rate limiting entry matching the current data packet to be processed. When a security rate limiting entry matching the current data packet is found, the data to be processed according to the security rate limiting entry Packets are processed; when no security current limiting flow entry matching the current data packet to be processed is found, self-learning is performed on the data packet to be processed, and the first flow entry is constructed according to the self-learning result.
第三处理模块030,用于判断所述灾备流表中是否存在与所述第一流表项的匹配域相同的流表项,如果是,将所述与所述第一流表项的匹配域相同的流表项删除,并将所述第一流表项添加到所述灾备流表中;否则,将所述第一流表项添加到所述灾备流表中,其中所述第一流表项的优先级高于所述灾备流表中的默认流表项;The third processing module 030 is configured to determine whether there is a flow entry in the disaster recovery flow table that is the same as the matching field of the first flow entry, and if so, set the matching field of the first flow entry to The same flow entry is deleted, and the first flow entry is added to the disaster recovery flow table; otherwise, the first flow entry is added to the disaster recovery flow table, wherein the first flow table The priority of the item is higher than the default flow entry in the disaster recovery flow table;
其中,构造第一流表项的方法与图1所示的实施例中的方法一致,此处不再赘述。Wherein, the method for constructing the first flow entry is consistent with the method in the embodiment shown in FIG. 1 , and will not be repeated here.
第四处理模块040,用于判断所述待处理的数据报文是否与添加到所述灾备流表中的所述第一流表项相匹配,如果是,根据所述灾备流表中的所述第一流表项对所述数据报文进行处理;否则,根据所述默认流表项对所述数据报文进行处理。The fourth processing module 040 is configured to determine whether the data packet to be processed matches the first flow entry added to the disaster recovery flow table, and if so, according to the data packet in the disaster recovery flow table The first flow entry processes the data packet; otherwise, processes the data packet according to the default flow entry.
本发明图11提供的数据处理装置,可以保证具有安全要求的特定数据报文的安全性,解决了现有技术中,当控制器和交换机的连接断开后,对所有的数据报文都按默认流表项进行处理时,即将数据报文从除该数据报文入端口外的所有端口转发出去,导致对有安全要求的特定数据报文失去控制,从而降低通信安全的问题。The data processing device provided in FIG. 11 of the present invention can ensure the security of specific data messages with security requirements, and solve the problem in the prior art that when the connection between the controller and the switch is disconnected, all data messages are pressed When the default flow entry is processed, the data packet is forwarded from all ports except the inbound port of the data packet, which leads to the loss of control of the specific data packet with security requirements, thereby reducing the problem of communication security.
相应于图7所示的实际应用中的一种SDN移动自组网的数据处理方法,如图12所示,本发明实施例还提供了一种实际应用中的一种SDN移动自组网的数据处理装置,应用于交换机,交换机中预先存储有状态控制流表、正常转发流表和灾备流表,所述灾备流表中预先存储有默认流表项,该装置可以包括:状态处理模块001、第一查找key构造模块002、第一流表匹配模块003、第二查找key构造模块004、第二流表匹配模块005、第一数据处理模块006和第二数据处理模块007,Corresponding to a data processing method of an SDN mobile ad hoc network in practical applications shown in FIG. 7, as shown in FIG. The data processing device is applied to a switch, and a stateful control flow table, a normal forwarding flow table, and a disaster recovery flow table are pre-stored in the switch, and a default flow entry is pre-stored in the disaster recovery flow table. The device may include: state processing Module 001, first search key construction module 002, first flow table matching module 003, second search key construction module 004, second flow table matching module 005, first data processing module 006 and second data processing module 007,
状态处理模块001,用于按照预设规则检测所述控制器与所述交换机的连接状态,获得最新连接状态;A state processing module 001, configured to detect the connection state between the controller and the switch according to preset rules, and obtain the latest connection state;
第一查找key构造模块002,用于在交换机的内核层中,利用交换机与控制器的最新连接状态作为待处理的数据报文的元数据,构造带有连接状态的第一查找Key;The first search key construction module 002 is used to construct the first search Key with the connection state by using the latest connection status of the switch and the controller as the metadata of the data message to be processed in the kernel layer of the switch;
第一流表匹配模块003,用于将该第一查找key与内核层中缓存的流表进行匹配;当在内核层中缓存的流表中没有查找到与该第一查找key相匹配的的流表项时,将待处理的数据报文及第一查找key发送至交换机的用户层;The first flow table matching module 003 is used to match the first lookup key with the flow table cached in the kernel layer; when no flow matching the first lookup key is found in the flow table cached in the kernel layer When entering the table, the data message to be processed and the first lookup key are sent to the user layer of the switch;
第二查找key构造模块004,用于在交换机的用户层中,将第一查找key更新为带有当前最新连接状态的第二查找key;The second lookup key construction module 004 is used to update the first lookup key to the second lookup key with the current latest connection status in the user layer of the switch;
第二流表匹配模块005,用于将该第二查找key与状态控制流表进行匹配;当第二查找key与所述状态控制流表中的匹配域为连接状态为断开的流表项匹配时,跳转到灾备流表;The second flow table matching module 005 is configured to match the second lookup key with the state control flow table; when the matching field between the second lookup key and the state control flow table is a flow entry whose connection state is disconnected When matching, jump to the disaster recovery flow table;
具体的,该灾备流表可以包括安全限流流表项,也可以不包括安全限流流表项。Specifically, the disaster recovery flow table may include a security current limiting flow entry, or may not include a security current limiting flow entry.
第一数据处理模块006,用于对待处理的数据报文进行自学习,根据自学习结果构造第一流表项;判断所述灾备流表中是否存在与所述第一流表项的匹配域相同的流表项,如果是,将所述与所述第一流表项的匹配域相同的流表项删除,并将所述第一流表项添加到所述灾备流表中;否则,将所述第一流表项添加到所述灾备流表中,其中所述第一流表项的优先级高于所述灾备流表中的默认流表项;The first data processing module 006 is configured to perform self-learning on the data message to be processed, and construct a first flow entry according to the self-learning result; determine whether there is a matching domain identical to that of the first flow entry in the disaster recovery flow table If so, delete the flow entry with the same matching field as the first flow entry, and add the first flow entry to the disaster recovery flow table; otherwise, delete all The first flow entry is added to the disaster recovery flow table, wherein the priority of the first flow entry is higher than the default flow entry in the disaster recovery flow table;
第二数据处理模块007,用于判断第二查找key是否与添加到所述灾备流表中的所述第一流表项相匹配,如果是,根据所述灾备流表中的所述第一流表项对所述数据报文进行处理;否则,根据所述默认流表项对所述数据报文进行处理。The second data processing module 007 is configured to determine whether the second lookup key matches the first flow entry added to the disaster recovery flow table, and if so, according to the first flow entry in the disaster recovery flow table The first-flow entry processes the data packet; otherwise, the data packet is processed according to the default flow entry.
本发明实施例提供的一种SDN移动自组网的数据处理装置,应用于交换机,可以检测并获得控制器与交换机最新连接状态;当最新连接状态为断开时,对待处理的数据报文进行自学习,根据自学习结果构造第一流表项;判断灾备流表中是否存在与该第一流表项的匹配域相同的流表项,如果是,将与该第一流表项的匹配域相同的流表项删除,并将该第一流表项添加到灾备流表中;否则,将该第一流表项添加到灾备流表中;判断待处理的数据报文是否与添加到灾备流表中的第一流表项相匹配,如果是,根据灾备流表中的第一流表项对数据报文进行处理;否则,根据默认流表项对数据报文进行处理。因此,本发明提供的SDN移动自组网的数据处理装置可以快速感知交换机与控制器连接故障的发生,当控制器断开时,新来的数据报文可以不用盲目地发送给控制器处理而是直接与连接状态断开时的灾备流表进行匹配,获得相应的处理策略,这缩短了故障恢复时间,提高了交换机的数据处理能力和效率,从而提高了网络的可靠性和稳定性;此外,在移动自组网络拓扑结构变化导致控制器失效时,本发明可以根据连接状态的变化及时进行流表项的学习老化,防止网络拓扑结构变化后交换机仍使用旧的流表项,进一步提高了网络的可靠性。A data processing device for an SDN mobile ad hoc network provided by an embodiment of the present invention is applied to a switch, and can detect and obtain the latest connection status between the controller and the switch; when the latest connection status is disconnected, the data message to be processed is processed Self-learning, constructing the first flow entry according to the self-learning result; judging whether there is a flow entry with the same matching field as the first flow entry in the disaster recovery flow table, and if so, it will be the same as the matching field of the first flow entry Delete the flow entry, and add the first flow entry to the disaster recovery flow table; otherwise, add the first flow entry to the disaster recovery flow table; The first flow entry in the flow table matches, if yes, the data packet is processed according to the first flow entry in the disaster recovery flow table; otherwise, the data packet is processed according to the default flow entry. Therefore, the data processing device of the SDN mobile ad hoc network provided by the present invention can quickly perceive the occurrence of a connection failure between the switch and the controller. It is directly matched with the disaster recovery flow table when the connection state is disconnected to obtain the corresponding processing strategy, which shortens the fault recovery time, improves the data processing capability and efficiency of the switch, and thus improves the reliability and stability of the network; In addition, when the change of the topological structure of the mobile ad hoc network causes the controller to fail, the present invention can timely learn and age the flow entry according to the change of the connection state, preventing the switch from still using the old flow entry after the change of the network topology, further improving network reliability.
对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。As for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and for related parts, please refer to the part of the description of the method embodiment.
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。It should be noted that in this article, relational terms such as first and second are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply that there is a relationship between these entities or operations. any such actual relationship or order exists between them. Furthermore, the term "comprises", "comprises" or any other variation thereof is intended to cover a non-exclusive inclusion such that a process, method, article, or apparatus comprising a set of elements includes not only those elements, but also includes elements not expressly listed. other elements of or also include elements inherent in such a process, method, article, or device. Without further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of additional identical elements in the process, method, article or apparatus comprising said element.
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。Each embodiment in this specification is described in a related manner, the same and similar parts of each embodiment can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, as for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and for relevant parts, please refer to part of the description of the method embodiment.
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。The above descriptions are only preferred embodiments of the present invention, and are not intended to limit the protection scope of the present invention. Any modification, equivalent replacement, improvement, etc. made within the spirit and principles of the present invention are included in the protection scope of the present invention.
Claims (10)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201610390634.1A CN105959217A (en) | 2016-06-06 | 2016-06-06 | Data processing method and apparatus for SDN Mobile Ad-Hoc Network |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201610390634.1A CN105959217A (en) | 2016-06-06 | 2016-06-06 | Data processing method and apparatus for SDN Mobile Ad-Hoc Network |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN105959217A true CN105959217A (en) | 2016-09-21 |
Family
ID=56907712
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201610390634.1A Pending CN105959217A (en) | 2016-06-06 | 2016-06-06 | Data processing method and apparatus for SDN Mobile Ad-Hoc Network |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN105959217A (en) |
Cited By (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106936720A (en) * | 2017-04-27 | 2017-07-07 | 北京东土科技股份有限公司 | A kind of SDN switch operation method, controller and interchanger |
| CN107196854A (en) * | 2017-06-20 | 2017-09-22 | 西安交通大学 | Datum plane abnormality eliminating method in a kind of software defined network |
| CN107347023A (en) * | 2017-07-13 | 2017-11-14 | 合肥工业大学 | A kind of SDN controller dispositions methods of nodes oriented request reliability |
| CN107947977A (en) * | 2017-11-21 | 2018-04-20 | 北京邮电大学 | A kind of collocation method of interchanger, device, electronic equipment and storage medium |
| CN108494657A (en) * | 2018-04-08 | 2018-09-04 | 苏州云杉世纪网络科技有限公司 | OpenStack cloud platform virtual probe mirror methods based on Open vSwitch |
| WO2018188569A1 (en) * | 2017-04-11 | 2018-10-18 | 华为技术有限公司 | Method, device and system for forwarding data messages |
| CN109039914A (en) * | 2018-08-23 | 2018-12-18 | 迈普通信技术股份有限公司 | Message processing method, device and electronic equipment |
| CN110324245A (en) * | 2018-03-31 | 2019-10-11 | 华为技术有限公司 | A method and device for forwarding messages based on integrated flow table |
| CN110380969A (en) * | 2019-07-12 | 2019-10-25 | 中国电信集团工会上海市委员会 | A kind of traffic scheduling method and system based on domain name |
| CN110891020A (en) * | 2019-12-24 | 2020-03-17 | 中国电子科技集团公司第五十四研究所 | A method for optimizing the number of flow tables for SDN in-band control network |
| CN111697997A (en) * | 2020-05-29 | 2020-09-22 | 国网河北省电力有限公司电力科学研究院 | HPLC module rapid detection device and method based on copy controller |
| CN113986524A (en) * | 2021-09-13 | 2022-01-28 | 新华三信息安全技术有限公司 | A method, device and electronic device for issuing a distributed device drainage table entry |
| CN114338194A (en) * | 2021-12-30 | 2022-04-12 | 苏州浪潮智能科技有限公司 | Application layer message firewall method, device and medium based on SDN (software defined network) |
| CN115225503A (en) * | 2022-05-16 | 2022-10-21 | 北京邮电大学 | OpenFlow flow table item dynamic timeout allocation method and related equipment |
| CN115442292A (en) * | 2022-08-29 | 2022-12-06 | 中国联合网络通信集团有限公司 | Adjustment method, device, equipment and storage medium of data flow table |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2015004558A1 (en) * | 2013-07-08 | 2015-01-15 | Telefonaktiebolaget L M Ericsson (Publ) | Methods of operating load balancing switches and controllers using matching patterns with unrestricted characters |
| CN104580472A (en) * | 2015-01-09 | 2015-04-29 | 杭州华三通信技术有限公司 | Flow table item processing method and device |
-
2016
- 2016-06-06 CN CN201610390634.1A patent/CN105959217A/en active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2015004558A1 (en) * | 2013-07-08 | 2015-01-15 | Telefonaktiebolaget L M Ericsson (Publ) | Methods of operating load balancing switches and controllers using matching patterns with unrestricted characters |
| CN104580472A (en) * | 2015-01-09 | 2015-04-29 | 杭州华三通信技术有限公司 | Flow table item processing method and device |
Non-Patent Citations (2)
| Title |
|---|
| TAO HUANG ET AL.: "《Building SDN-Based Agricultural Vehicular Sensor Networks Based on Extended Open vSwitch》", 《SENSORS》 * |
| 晏思宇 等: "《基于OVS 的SDN 移动自组网络架构设计及实现》", 《无线电通信技术》 * |
Cited By (31)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP3588876A4 (en) * | 2017-04-11 | 2020-02-19 | Huawei Technologies Co., Ltd. | METHOD, DEVICE AND SYSTEM FOR FORWARDING DATA MESSAGES |
| US11146488B2 (en) | 2017-04-11 | 2021-10-12 | Huawei Technologies Co., Ltd. | Data packet forwarding method, device, and system |
| WO2018188569A1 (en) * | 2017-04-11 | 2018-10-18 | 华为技术有限公司 | Method, device and system for forwarding data messages |
| CN108696434A (en) * | 2017-04-11 | 2018-10-23 | 华为技术有限公司 | A kind of method, apparatus and system of forwarding data packets |
| CN108696434B (en) * | 2017-04-11 | 2022-01-14 | 华为技术有限公司 | Method, equipment and system for forwarding data message |
| CN106936720A (en) * | 2017-04-27 | 2017-07-07 | 北京东土科技股份有限公司 | A kind of SDN switch operation method, controller and interchanger |
| CN106936720B (en) * | 2017-04-27 | 2019-08-09 | 北京东土科技股份有限公司 | A kind of SDN switch operation method, controller and interchanger |
| CN107196854A (en) * | 2017-06-20 | 2017-09-22 | 西安交通大学 | Datum plane abnormality eliminating method in a kind of software defined network |
| CN107196854B (en) * | 2017-06-20 | 2020-08-25 | 西安交通大学 | A data plane exception handling method in software-defined network |
| CN107347023A (en) * | 2017-07-13 | 2017-11-14 | 合肥工业大学 | A kind of SDN controller dispositions methods of nodes oriented request reliability |
| CN107347023B (en) * | 2017-07-13 | 2019-09-13 | 合肥工业大学 | A SDN Controller Deployment Method Oriented to Node Request Reliability |
| CN107947977B (en) * | 2017-11-21 | 2019-11-19 | 北京邮电大学 | Configuration method, device, electronic equipment and storage medium of a switch |
| CN107947977A (en) * | 2017-11-21 | 2018-04-20 | 北京邮电大学 | A kind of collocation method of interchanger, device, electronic equipment and storage medium |
| CN110324245B (en) * | 2018-03-31 | 2021-03-23 | 华为技术有限公司 | A method and device for forwarding message based on integrated flow table |
| US11496393B2 (en) | 2018-03-31 | 2022-11-08 | Huawei Technologies Co., Ltd. | Method and apparatus for forwarding packet based on integrated flow table |
| CN110324245A (en) * | 2018-03-31 | 2019-10-11 | 华为技术有限公司 | A method and device for forwarding messages based on integrated flow table |
| CN108494657A (en) * | 2018-04-08 | 2018-09-04 | 苏州云杉世纪网络科技有限公司 | OpenStack cloud platform virtual probe mirror methods based on Open vSwitch |
| CN108494657B (en) * | 2018-04-08 | 2020-08-28 | 苏州云杉世纪网络科技有限公司 | OpenStack cloud platform virtual probe mirroring method based on Open vSwitch |
| CN109039914A (en) * | 2018-08-23 | 2018-12-18 | 迈普通信技术股份有限公司 | Message processing method, device and electronic equipment |
| CN109039914B (en) * | 2018-08-23 | 2020-11-27 | 迈普通信技术股份有限公司 | Message processing method and device and electronic equipment |
| CN110380969A (en) * | 2019-07-12 | 2019-10-25 | 中国电信集团工会上海市委员会 | A kind of traffic scheduling method and system based on domain name |
| CN110891020A (en) * | 2019-12-24 | 2020-03-17 | 中国电子科技集团公司第五十四研究所 | A method for optimizing the number of flow tables for SDN in-band control network |
| CN111697997A (en) * | 2020-05-29 | 2020-09-22 | 国网河北省电力有限公司电力科学研究院 | HPLC module rapid detection device and method based on copy controller |
| CN113986524A (en) * | 2021-09-13 | 2022-01-28 | 新华三信息安全技术有限公司 | A method, device and electronic device for issuing a distributed device drainage table entry |
| CN113986524B (en) * | 2021-09-13 | 2025-07-22 | 新华三信息安全技术有限公司 | Distributed equipment drainage table item issuing method and device and electronic equipment |
| CN114338194A (en) * | 2021-12-30 | 2022-04-12 | 苏州浪潮智能科技有限公司 | Application layer message firewall method, device and medium based on SDN (software defined network) |
| CN114338194B (en) * | 2021-12-30 | 2023-07-18 | 苏州浪潮智能科技有限公司 | A method, device and medium for application layer message firewall based on SDN network |
| CN115225503A (en) * | 2022-05-16 | 2022-10-21 | 北京邮电大学 | OpenFlow flow table item dynamic timeout allocation method and related equipment |
| CN115225503B (en) * | 2022-05-16 | 2023-07-04 | 北京邮电大学 | OpenFlow flow entry dynamic timeout allocation method and related equipment |
| CN115442292A (en) * | 2022-08-29 | 2022-12-06 | 中国联合网络通信集团有限公司 | Adjustment method, device, equipment and storage medium of data flow table |
| CN115442292B (en) * | 2022-08-29 | 2023-10-03 | 中国联合网络通信集团有限公司 | Data flow table adjusting method, device, equipment and storage medium |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN105959217A (en) | Data processing method and apparatus for SDN Mobile Ad-Hoc Network | |
| US10855574B2 (en) | Method and network device for computing forwarding path | |
| US9832111B2 (en) | OFS in-band communication method and OFS | |
| US9049131B2 (en) | Network system and load balancing method | |
| CN104301146A (en) | Link switching method and device in software defined network | |
| US9455916B2 (en) | Method and system for changing path and controller thereof | |
| US20140043960A1 (en) | Method, tor switch, and system for implementing protection switchover based on trill network | |
| US20160301571A1 (en) | Method and Device for Monitoring OAM Performance | |
| CN102415054A (en) | Node device and communication method | |
| US9313090B2 (en) | Tunnel fault detection method and traffic engineering node | |
| US20170054630A1 (en) | Path Switching Method and Device | |
| US20090310483A1 (en) | Network device and link switching method | |
| KR20150051107A (en) | Method for fast flow path setup and failure recovery | |
| US20160119089A1 (en) | Method for bit error rate detection, and network device | |
| WO2012088910A1 (en) | Method and system for detecting connectivity fault | |
| CN105530115A (en) | Method and device for realizing operation management and maintenance function | |
| CN105515998A (en) | Method for communicating third-level domain and second-level domain in software-defined packet transport network (SPTN) domain and system | |
| CN104539462B (en) | It is a kind of to switch to method and device of the calamity for application example | |
| CN105897580B (en) | A kind of unrelated forwarding network quick fault testing of agreement and traffic protection switching method | |
| CN102769552B (en) | A kind of method by transmission BFD message during BFD detection LSP and equipment | |
| CN106656807A (en) | Message forwarding method and SDN switch | |
| CN102123098B (en) | Method and system for protection switching of P2MP (Point-to-Multipoint) multicast channel | |
| JP5576421B2 (en) | COMMUNICATION DEVICE, COMMUNICATION METHOD, AND PROGRAM | |
| US20150334032A1 (en) | Control apparatus, communication system, communication node control method, and program | |
| CN104579736B (en) | A kind of loop data transmission method and node device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| RJ01 | Rejection of invention patent application after publication | ||
| RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160921 |