CN105791129A - Method for processing ineffective data packet by OpenFlow flow table - Google Patents

Method for processing ineffective data packet by OpenFlow flow table Download PDF

Info

Publication number
CN105791129A
CN105791129A CN201610129295.1A CN201610129295A CN105791129A CN 105791129 A CN105791129 A CN 105791129A CN 201610129295 A CN201610129295 A CN 201610129295A CN 105791129 A CN105791129 A CN 105791129A
Authority
CN
China
Prior art keywords
openflow flow
switch
flow table
data packet
packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201610129295.1A
Other languages
Chinese (zh)
Inventor
郝鹏
于治楼
郑亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Group Co Ltd
Original Assignee
Inspur Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Group Co Ltd filed Critical Inspur Group Co Ltd
Priority to CN201610129295.1A priority Critical patent/CN105791129A/en
Publication of CN105791129A publication Critical patent/CN105791129A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing

Landscapes

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

Abstract

The invention discloses a method for processing an ineffective data packet by an OpenFlow flow table, wherein the method relates to the field of network protocol development. The method comprises the steps of transmitting a data packet into a switch, querying a data packet forwarding outlet by the switch according to the OpenFlow flow table; determining the data packet with a hit forwarding outlet entry in inquiry of the OpenFlow flow table as an effective data packet, and otherwise, determining the data packet as an ineffective data packet; forwarding the effective data packet by the switch according to a flow table rule, and simultaneously recording the MAC address of the ineffective data packet and storing the data packet; checking update of the OpenFlow flow table by the switch every certain time period; checking whether the ineffective data packet has a forwarding path, and processing the data packet according to a query result. The method has functions of realizing buffering of ineffective data packets in an OpenFlow protocol, reducing data loss rate and improving reliability of a whole switching system.

Description

A kind of method of OpenFlow flow list processing invalid packets
Technical field
Present invention relates particularly to procotol development field, be exactly a kind of method of OpenFlow flow list processing invalid packets specifically.
Background technology
OpenFlow is a kind of new network exchange model, and OpenFlow network is by OpenFlow switch, FlowVisor(network virtualization layer) and Controller(controller) three parts form.OpenFlow switch is whole OpenFlow server parts, the main forwarding managing data Layer;Network is virtualized by FlowVisor;Network is carried out centralized Control by Controller, it is achieved the function of key-course.
OpenFlow switch is flowed table by FlowTable(), SecureChannel(escape way) and OpenFlowProtocol(agreement) three parts form.FlowTable flows table: be made up of a lot of stream list items, and each stream list item is exactly one and forwards rule.The packet entering switch obtains the destination interface of forwarding by inquiring about stream table.Stream list item is made up of header field, enumerator and operation;Wherein header field is ten tuple, is the mark of stream list item;Enumerator is used for calculating the statistical data of stream list item;Operation designates the operation that the packet mated with this stream list item should perform.OpenFlow agreement: be used for describing the standard of mutual information used between controller and OpenFlow switch and the interface standard of controller and OpenFlow switch.The core of agreement is the set for OpenFlow protocol information structure.
OpenFlow agreement supports three kinds of information types: Controller-to-Switch, Asynchronous and Symmetric, each type has multiple subtype.The state of detection switch is initiated and be directly used in Controller-to-Switch information by controller.Asynchronous information is initiated and is generally used for updating the network event of controller and changes the state of switch by switch.Symmetric information can be initiated by controller or switch when not request.In the version of current OpenFlow agreement, packet for not inquiring forward-path in stream table carries out simple discard processing or is uploaded to SDN(SoftwareDefinedNetwork, software defined network) controller processes, but all there is the problem that reliability is low with efficiency comparison in both modes.
Summary of the invention
The present invention is directed to the weak point that prior art exists, it is provided that a kind of method of OpenFlow flow list processing invalid packets.
The method of a kind of OpenFlow flow list processing invalid packets of the present invention, the technical scheme solving the employing of above-mentioned technical problem is as follows: the method for described a kind of OpenFlow flow list processing invalid packets, its key step includes: 1) packet enters switch, and switch is inquired about packet according to OpenFlow flow table and forwarded outlet;2) whether inquiry OpenFlow flow table exists hit and transfers pig's tongue order, has that to transfer pig's tongue purpose packet be effective data packets, is otherwise invalid packets;3) effective data packets is forwarded by switch according to stream table rule, simultaneously the target MAC (Media Access Control) address of switch protocol failure packet store this packet;4) switch checks the renewal of OpenFlow flow table at interval of certain time;6) if OpenFlow flow table updates, then check whether invalid packets exists forward-path, and carry out the process of packet according to Query Result;Flow process is controlled by the method based on software engineering, carries out quick search based on hardware TCAM technology, by the collaborative work of soft and hardware, realizes the caching process of invalid packets under OpenFlow agreement.
Preferably, switch performs the inquiry of multistage OpenFlow flow table, the outlet port of inquiry current data packet.
Preferably, switch by the destination address record of invalid packets at TCAM(TernaryContentAddressableMemory) in list item.
Preferably, in TCAM list item, every corresponding address pointer of target MAC (Media Access Control) address meeting of record, this address pointer points to the entrance of a chained list, and the node of each chained list is a packet structure, is used for storing invalid packets.
Preferably, if OpenFlow flow table has renewal, then switch filters out updated entry, and TCAM table is inquired about, to confirm whether the target MAC (Media Access Control) address being originally absent from forwarding outlet is updated in OpenFlow flow table.
Preferably, if having hit entries in TCAM list item, then switch reads the address pointer corresponding to hit entries, and is forwarded according to OpenFlow flow table rule by the packet in invalid packets chained list corresponding for address pointer.
Preferably, if being absent from hit entries in TCAM list item, whether the miss number of times that then this target MAC (Media Access Control) address of switch query is queried in TCAM list item exceedes threshold value, if it exceeds the threshold, then empty the chained list that address pointer corresponding to this entry list item points to.
Preferably, if being absent from hit entries in TCAM list item, whether the miss number of times that then this target MAC (Media Access Control) address of switch query is queried in TCAM list item exceedes threshold value, if not less than threshold value, then switch re-executes the renewal inspection of OpenFlow flow table.
The method that the method for a kind of OpenFlow flow list processing invalid packets of the present invention compared with prior art has the beneficial effect that OpenFlow flow list processing invalid packets of the present invention, based on software engineering, flow process is controlled, quick search is carried out based on hardware TCAM technology, by the collaborative work of soft and hardware, achieve the caching process of invalid packets under OpenFlow agreement, reducing the Loss Rate of data and improve the reliability of whole exchange system, reliability and efficiency to OpenFlow agreement are improved.
Accompanying drawing explanation
Accompanying drawing 1 is the flow chart of the method for OpenFlow flow list processing invalid packets.
Detailed description of the invention
For making the object, technical solutions and advantages of the present invention clearly understand, below in conjunction with specific embodiment, and with reference to accompanying drawing, the method for a kind of OpenFlow flow list processing invalid packets of the present invention is further described.
The method of a kind of OpenFlow flow list processing invalid packets of the present invention, suitable in SDN technical field, based on software engineering, flow process is controlled, quick search is carried out based on hardware TCAM technology, by the collaborative work of soft and hardware, realize the caching process of invalid packets under OpenFlow agreement.By the method adopting OpenFlow flow list processing invalid packets of the present invention, reduce the Loss Rate of data, improve the reliability of whole exchange system simultaneously.
Embodiment 1:
A kind of method of OpenFlow flow list processing invalid packets described in the present embodiment, accompanying drawing 1 is the flow chart of method described in the present embodiment, as shown in Figure 1: the method comprises the following steps: 1) packet enters switch, and switch is inquired about packet according to OpenFlow flow table and forwarded outlet;2) whether inquiry OpenFlow flow table exists hit and transfers pig's tongue order;3) if existing in OpenFlow flow table and transferring pig's tongue order, then packet is forwarded by switch according to stream table rule, otherwise the target MAC (Media Access Control) address of this packet of switch record store this packet;4) switch checks the renewal of OpenFlow flow table at interval of certain time;6) if OpenFlow flow table updates, then check whether invalid packets exists forward-path, and carry out the process of packet according to Query Result.
In the method for OpenFlow flow list processing invalid packets described in the present embodiment, when packet enters switch, switch is inquired about packet according to OpenFlow flow table and is forwarded outlet, and its content mainly includes, switch performs the inquiry of multistage OpenFlow flow table, the outlet port of inquiry current data packet.
In the method for OpenFlow flow list processing invalid packets described in the present embodiment, whether inquiry OpenFlow flow table exists hit transfers pig's tongue order, and by exist forward outlet packet definitions be effective data packets, there will be no forward outlet packet definitions be invalid packets.Effective data packets is forwarded by switch according to OpenFlow flow table rule, and meanwhile, the target MAC (Media Access Control) address of switch protocol failure packet also stores this packet.
In the method for OpenFlow flow list processing invalid packets described in the present embodiment, if packet is invalid packets, switch by the destination address record of this invalid packets at TCAM(TernaryContentAddressableMemory) in list item.
In the method for OpenFlow flow list processing invalid packets described in the present embodiment, in TCAM list item, every corresponding address pointer of target MAC (Media Access Control) address meeting of record, this address pointer points to the entrance of a chained list, the node of each chained list is a packet structure, is used for storing invalid packets.
In the method for OpenFlow flow list processing invalid packets described in the present embodiment, if OpenFlow flow table has renewal, then switch filters out updated entry, and TCAM table is inquired about, to confirm whether the target MAC (Media Access Control) address being originally absent from forwarding outlet is updated in OpenFlow flow table.
In the method for OpenFlow flow list processing invalid packets described in the present embodiment, if having hit entries in TCAM list item, then switch reads the address pointer corresponding to hit entries, and is forwarded according to OpenFlow flow table rule by the packet in invalid packets chained list corresponding for address pointer.
In the method for OpenFlow flow list processing invalid packets described in the present embodiment, if being absent from hit entries in TCAM list item, whether the miss number of times that then this target MAC (Media Access Control) address of switch query is queried in TCAM list item exceedes threshold value, if it exceeds the threshold, then empty the chained list that address pointer corresponding to this entry list item points to.
In the method for OpenFlow flow list processing invalid packets described in the present embodiment, if being absent from hit entries in TCAM list item, whether the miss number of times that then this target MAC (Media Access Control) address of switch query is queried in TCAM list item exceedes threshold value, if not less than threshold value, then switch re-executes the renewal inspection of OpenFlow flow table.
Above-mentioned detailed description of the invention is only the concrete case of the present invention; the scope of patent protection of the present invention includes but not limited to above-mentioned detailed description of the invention; claims of any present invention of meeting and any person of an ordinary skill in the technical field to its suitably change done or replaces, and all should fall into the scope of patent protection of the present invention.

Claims (8)

1. the method for an OpenFlow flow list processing invalid packets, it is characterised in that its key step includes: 1) packet enters switch, switch is inquired about packet according to OpenFlow flow table and is forwarded outlet;2) whether inquiry OpenFlow flow table exists hit and transfers pig's tongue order, has that to transfer pig's tongue purpose packet be effective data packets, is otherwise invalid packets;3) effective data packets is forwarded by switch according to stream table rule, simultaneously the target MAC (Media Access Control) address of switch protocol failure packet store this packet;4) switch checks the renewal of OpenFlow flow table at interval of certain time;6) if OpenFlow flow table updates, then check whether invalid packets exists forward-path, and carry out the process of packet according to Query Result.
2. the method for a kind of OpenFlow flow list processing invalid packets according to claim 1, it is characterised in that switch performs the inquiry of multistage OpenFlow flow table, the outlet port of inquiry current data packet.
3. the method for a kind of OpenFlow flow list processing invalid packets according to claim 2, it is characterised in that switch by the destination address record of invalid packets in TCAM list item.
4. the method for a kind of OpenFlow flow list processing invalid packets according to claim 3, it is characterized in that, in TCAM list item, every corresponding address pointer of target MAC (Media Access Control) address meeting of record, this address pointer points to the entrance of a chained list, the node of each chained list is a packet structure, is used for storing invalid packets.
5. the method for a kind of OpenFlow flow list processing invalid packets according to claim 4, it is characterized in that, if OpenFlow flow table has renewal, then switch filters out updated entry, TCAM table is inquired about, to confirm whether the target MAC (Media Access Control) address being originally absent from forwarding outlet is updated in OpenFlow flow table.
6. the method for a kind of OpenFlow flow list processing invalid packets according to claim 5, it is characterized in that, if having hit entries in TCAM list item, then switch reads the address pointer corresponding to hit entries, and is forwarded according to OpenFlow flow table rule by the packet in invalid packets chained list corresponding for address pointer.
7. the method for a kind of OpenFlow flow list processing invalid packets according to claim 6, it is characterized in that, if being absent from hit entries in TCAM list item, whether the miss number of times that then this target MAC (Media Access Control) address of switch query is queried in TCAM list item exceedes threshold value, if it exceeds the threshold, then empty the chained list that address pointer corresponding to this entry list item points to.
8. the method for a kind of OpenFlow flow list processing invalid packets according to claim 7, it is characterized in that, if being absent from hit entries in TCAM list item, whether the miss number of times that then this target MAC (Media Access Control) address of switch query is queried in TCAM list item exceedes threshold value, if not less than threshold value, then switch re-executes the renewal inspection of OpenFlow flow table.
CN201610129295.1A 2016-03-08 2016-03-08 Method for processing ineffective data packet by OpenFlow flow table Pending CN105791129A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610129295.1A CN105791129A (en) 2016-03-08 2016-03-08 Method for processing ineffective data packet by OpenFlow flow table

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610129295.1A CN105791129A (en) 2016-03-08 2016-03-08 Method for processing ineffective data packet by OpenFlow flow table

Publications (1)

Publication Number Publication Date
CN105791129A true CN105791129A (en) 2016-07-20

Family

ID=56388111

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610129295.1A Pending CN105791129A (en) 2016-03-08 2016-03-08 Method for processing ineffective data packet by OpenFlow flow table

Country Status (1)

Country Link
CN (1) CN105791129A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107707480A (en) * 2017-10-31 2018-02-16 新华三技术有限公司 A kind of message forwarding method and device
WO2019082194A1 (en) * 2017-10-27 2019-05-02 Telefonaktiebolaget Lm Ericsson (Publ) Optimized datapath troubleshooting with trace policy engine
WO2019082195A1 (en) * 2017-10-27 2019-05-02 Telefonaktiebolaget Lm Ericsson (Publ) Optimized datapath troubleshooting
US11438254B2 (en) 2018-06-13 2022-09-06 Telefonaktiebolaget Lm Ericsson (Publ) Apparatus and method to trace packets in a packet processing pipeline of a software defined networking switch
US11483261B2 (en) 2018-04-09 2022-10-25 Huawei Technologies Co., Ltd. Data packet processing method and apparatus, and device
US11522797B2 (en) 2017-08-30 2022-12-06 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for tracing packets in software defined networks

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102843299A (en) * 2012-09-12 2012-12-26 盛科网络(苏州)有限公司 Method and system for realizing Openflow multi-stage flow tables on basis of ternary content addressable memory (TCAM)
CN103281246A (en) * 2013-05-20 2013-09-04 华为技术有限公司 Message processing method and network equipment
CN104869064A (en) * 2014-02-21 2015-08-26 华为技术有限公司 Flow table updating method and device
CN105306390A (en) * 2015-09-30 2016-02-03 上海斐讯数据通信技术有限公司 Data message forwarding control method and system
CN105376158A (en) * 2015-10-12 2016-03-02 上海斐讯数据通信技术有限公司 SDN circulation method and device based on EXP value in MPLS message

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102843299A (en) * 2012-09-12 2012-12-26 盛科网络(苏州)有限公司 Method and system for realizing Openflow multi-stage flow tables on basis of ternary content addressable memory (TCAM)
CN103281246A (en) * 2013-05-20 2013-09-04 华为技术有限公司 Message processing method and network equipment
CN104869064A (en) * 2014-02-21 2015-08-26 华为技术有限公司 Flow table updating method and device
CN105306390A (en) * 2015-09-30 2016-02-03 上海斐讯数据通信技术有限公司 Data message forwarding control method and system
CN105376158A (en) * 2015-10-12 2016-03-02 上海斐讯数据通信技术有限公司 SDN circulation method and device based on EXP value in MPLS message

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11522797B2 (en) 2017-08-30 2022-12-06 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for tracing packets in software defined networks
WO2019082194A1 (en) * 2017-10-27 2019-05-02 Telefonaktiebolaget Lm Ericsson (Publ) Optimized datapath troubleshooting with trace policy engine
WO2019082195A1 (en) * 2017-10-27 2019-05-02 Telefonaktiebolaget Lm Ericsson (Publ) Optimized datapath troubleshooting
US11218406B2 (en) 2017-10-27 2022-01-04 Telefonaktiebolaget Lm Ericsson (Publ) Optimized datapath troubleshooting
US11444864B2 (en) 2017-10-27 2022-09-13 Telefonaktiebolaget Lm Ericsson (Publ) Optimized datapath troubleshooting with trace policy engine
CN107707480A (en) * 2017-10-31 2018-02-16 新华三技术有限公司 A kind of message forwarding method and device
CN107707480B (en) * 2017-10-31 2020-12-11 新华三技术有限公司 Message forwarding method and device
US11483261B2 (en) 2018-04-09 2022-10-25 Huawei Technologies Co., Ltd. Data packet processing method and apparatus, and device
US11438254B2 (en) 2018-06-13 2022-09-06 Telefonaktiebolaget Lm Ericsson (Publ) Apparatus and method to trace packets in a packet processing pipeline of a software defined networking switch

Similar Documents

Publication Publication Date Title
CN105791129A (en) Method for processing ineffective data packet by OpenFlow flow table
CN1688989B (en) High data rate stateful protocol processing method, device and system
US9825860B2 (en) Flow-driven forwarding architecture for information centric networks
CN104243318B (en) MAC address learning method and device in VXLAN networks
CN109921996A (en) A kind of virtual flow stream searching method of high performance OpenFlow
JP5543462B2 (en) Improved convergence of multicast traffic
US20130246655A1 (en) Communication path control system, path control device, communication path control method, and path control program
CN108306835B (en) Input caching and data forwarding method of Ethernet switch
CN100452772C (en) Three-layer forwarding method, device and ARP information table updating method
CN102137025B (en) Method and device for forwarding messages and switch chip
US20110087930A1 (en) Self-cleaning mechanism for error recovery
JP5787061B2 (en) Switch system, line card, FDB information learning method and program
US10122654B2 (en) Divided hierarchical network system based on software-defined networks
US20070230469A1 (en) Transmission apparatus
CN104836753A (en) Software-defined networking (SDN) data plane strip state exchange device, SDN exchange system and SDN data plane strip state forwarding and processing method
US7007100B1 (en) Method for synchronization of multicast routing table changes with a plurality of multicast routing protocols
JP5967222B2 (en) Packet processing apparatus, flow entry arrangement method and program
US20160134534A1 (en) Switching device, controller, method for configuring switching device, and method and system for processing packet
CN103685058B (en) Method for controlling QoS (Quality of Service) of stream data, and OpenFlow controller
CN105099916A (en) Open flow routing and switching equipment and data message processing method thereof
CN101232508B (en) Equipment and method for speeding up poly spanning tree protocol network topological convergence
CN1983955A (en) Method and system for monitoring illegal message
JP5935897B2 (en) COMMUNICATION NODE, COMMUNICATION SYSTEM, CONTROL DEVICE, PACKET TRANSFER METHOD, AND PROGRAM
CN107809385A (en) A kind of triggering of Packet In message and control method
EP2773072B1 (en) Control apparatus, communication system, virtual network management method, and program

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: 20160720