WO2013059991A1 - Data message processing method and system, message forwarding device - Google Patents

Data message processing method and system, message forwarding device Download PDF

Info

Publication number
WO2013059991A1
WO2013059991A1 PCT/CN2011/081287 CN2011081287W WO2013059991A1 WO 2013059991 A1 WO2013059991 A1 WO 2013059991A1 CN 2011081287 W CN2011081287 W CN 2011081287W WO 2013059991 A1 WO2013059991 A1 WO 2013059991A1
Authority
WO
WIPO (PCT)
Prior art keywords
field
ipv6
packet
flow table
matching
Prior art date
Application number
PCT/CN2011/081287
Other languages
French (fr)
Chinese (zh)
Inventor
王之梁
王珺
尹霞
邹婷
黄敬
查敏
Original Assignee
华为技术有限公司
清华大学
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 华为技术有限公司, 清华大学 filed Critical 华为技术有限公司
Priority to PCT/CN2011/081287 priority Critical patent/WO2013059991A1/en
Publication of WO2013059991A1 publication Critical patent/WO2013059991A1/en

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/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer

Abstract

The present invention provides a data message processing method and system, and a message forwarding device. In an embodiment of the present invention, an IPv6 flow table supporting an IPv6 message is defined in advance in a controller of OpenFlow system architecture, and the IPv6 flow table is delivered to a message forwarding device of OpenFlow system architecture. The message forwarding device, after receiving the data message, determines whether the data message is an IPv6 message according to a link layer data type field comprised in the data message, and if the data message is the IPv6 message, the message forwarding device matches field content comprised in the IPv6 message with field content in the stored IPv6 flow table, and performs a processing on the IPv6 message according to a matching result. Therefore, the embodiment of the present invention enables the message forwarding device of OpenFlow system architecture to support the IPv6 message, thereby extending the OpenFlow system architecture.

Description

Data packet processing method and system for packet forwarding relates to communication technologies, and in particular, to a packet data processing method and system for packet forwarding apparatus according to the present invention Technical Field. Background technique

Traditional transmission control protocol / Internet protocol (Transmission Control Protocol / Internet Protocol, hereinafter referred to as: TCP / IP) architecture of the Internet is a distributed routing protocol based network structure between the host network by IP ^ complete text of Burgundy communication.

But with the development of the Internet, distributed network architecture can not be better meet the needs on the network scalability and management, therefore, the centralized architecture of programmable network came into being. Open flow (hereinafter referred to as: OpenFlow) is a centralized system architecture programmable network architecture of, OpenFlow switch (OpenFlow Switch) The original packet forwarding process completely controlled by the switch / router by conversion OpenFlow switch and the control server (Controller ) together to complete, thereby realizing data routing and forwarding control of the separation. Control server may be controlled in flow table OpenFlow switch prespecified by the good operation of the interface, so as to achieve data forwarding control. Switch for packets entering the switch, can be obtained with the flow table entry matches the packet flow by querying the table, can determine the need to manipulate the data packets performed in accordance with the flow table entry, the operation may be forwarded e.g. to the destination port, dropped, the control server reports the like.

The inventors found that during the study, the existing OpenFlow architecture only supports Internet Protocol version 4 (Internet Protocol version 4; hereinafter referred to as IPv4) Gen text only, and does not support Internet Protocol version 6 (Internet Protocol version 6; hereinafter referred to as IPv6) Gen text only, which limits the development of OpenFlow system architecture to a certain extent. SUMMARY Embodiments provide a data packet processing method and system of the present invention, the packet forwarding device. Embodiment of the present invention provides a method of processing data packets, comprising: a data link layer type field contained in the data packet, determining whether the data packet is the IPv6 packet before Gen;

If the data packet is an IPv6 packet, the field contents in the IPv6 packet field contents and the control server IPv6 flow table previously issued will match the required matching, the table contains the IPv6 flow said at least one field:

Packet entry field, meta data field, a link layer source address field, the link layer destination address field, a data link layer type field, a virtual local area network identification field, priority field of virtual local area network, the MPLS label field, the MPLS traffic type field, IPv6 source address field, a destination address field of IPv6, IPv6 traffic type field, a header field in the IPv6, IPv6 flow label field, a transport layer or ICMP type field source port, destination port transport layer or ICMP code field;

Processing the corresponding IPv6 packet according to a matching result.

Embodiment of the present invention provides a packet forwarding device, comprising:

A determining module, according to the data link layer data packet type field contained in the data packet to determine whether the IPv6 packet;

A matching module configured to, if the data packet is an IPv6 packet, the field contents in the IPv6 packet field contents and the control server IPv6 flow table previously issued will match the required matching, the IPv6 stream a table comprising at least the following fields:

Packet entry field, meta data field, a link layer source address field, the link layer destination address field, a data link layer type field, a virtual local area network identification field, priority field of virtual local area network, the MPLS label field, the MPLS traffic type field, IPv6 source address field, a destination address field of IPv6, IPv6 traffic type field, a header field in the IPv6, IPv6 flow label field, a transport layer or ICMP type field source port, destination port transport layer or ICMP code field;

Processing means for processing the corresponding IPv6 packet according to a matching result. Embodiments of the invention further provides a data packet processing system comprising a server and at least one control packet forwarding devices, wherein the packet forwarding device using the above-described packet forwarding device.

Embodiment of the present invention, the flow may be predefined table structure to support IPv6 in IPv6 packet OpenFlow control system architecture of the server, and forwards the packets OpenFlow system architecture delivers IPv6 flow table apparatus. Packet forwarding device after receiving the data packet, the data link layer according to the type field of the data packet comprises determining whether the data packet is an IPv6 packet, if an IPv6 packet, the packet forwarding device the field contents can flow table IPv6 IPv6 packet field contents included in the stored matching, and processes the IPv6 packet according to a matching result. Accordingly, the present invention embodiments may enable packet forwarding device OpenFlow system architecture supporting IPv6 packet, expand the OpenFlow system architecture. BRIEF DESCRIPTION

Example accompanying drawings or described in the prior art the need to use a simple introduction Apparently, the drawings in the following description are some embodiments of the present invention, those of ordinary skill in the art is concerned, in without creative under the premise of labor, you can also obtain other drawings based on these drawings.

FIG 1 is a flowchart of packet data processing method according to the present invention;

2 is a flowchart according to a second embodiment of the data packet processing method of the present invention;

FIG 3 is a flowchart according to a third embodiment of the data packet processing method of the present invention;

4 of the present invention, FIG packet forwarding configuration diagram of a device of the embodiment;

FIG 5 a schematic structural diagram packet forwarding apparatus according to a second embodiment of the present invention;

FIG 6 schematic structural diagram of the invention the data packet processing system of the present embodiment. detailed description

Order that the invention object, technical solutions, and advantages of the embodiments more clearly below in conjunction with the present invention in the accompanying drawings, technical solutions in the embodiments will be apparent to the present invention, completely described, obviously, the described embodiments some embodiments of the present invention rather than all embodiments. Based on the embodiments of the present invention, those of ordinary skill in the art to make all other embodiments without creative work obtained by, it falls within the scope of the present invention.

In the prior art, a flow table OpenFlow system architecture only supports IPv4 packet, and does not support IPv6 packet can not be identified with the matching IPv6 packet header in the relevant fields, and therefore, can not be completed on the system architecture OpenFlow network programming control packet transmission based IPv64 Gen.

Embodiments of the present invention to solve the conventional architecture can not support OpenFlow IPv6 packets defects in the system architecture OpenFlow flow table expanded to include support for IPv6 packets IPv6 flow table to support IPv6 packets, identification and correspondence.

IPv6 flow table in the embodiment of the present invention compared with the prior art flow table IPv4, IPv4 relevant fields removed prior OpenFlow flow table, i.e. IPv4 source address, destination address of IPv4, IPv4 ten types Office Protocol (IPv4 Protocol type) and IPv4月良务类型字段 (IPv4 ToS) field four, add new IPv6 source address field, a destination address field of IPv6, IPv6 traffic type field, a header field in the IPv6 flow label field and the IPv6 these five fields, thereby forming IPv6 flow table 16 contains fields. Further, in order to support IPv6 extension headers, embodiments of the present invention may further add options by-hop extension header (Hop-by-Hop Header Options) in the IPv6 flow fields in the table, routing header (Routing Header) routing type (Routing type) field, the remaining sheet (Segment Left) field specifies the data type (type Specific data) field, and a destination options header before Gen (destination options header) options (the options) field, field 21 comprising forming IPv6 flow table.

In an embodiment of the present invention, the full IPv6 flow table 21 may contain the following fields: packet entry (Ingress Port) field, the metadata (the Metadata) field, a source link layer address (Ether Src) field, the link layer object address (Ether Dst) field, a data link layer type (Ether type) field, a virtual local area network (virtual Local Area Network, hereinafter referred to as: Vlan) identification (Vlan ID) field, a virtual local area network priority (Vlan priority) field, a multi-protocol label switching (Multi-Protocol label switching, hereinafter referred to as: MPLS) labels (MPLS label) field, MPLS traffic type (MPLS traffic Class) field, IPv6 source address (IPv6 Src) field, IPv6 destination address (IPv6 Dst) field, IPv6 the type of traffic (IPv6 traffic Class) field, IPv6 next header (IPv6 next header) field, IPv6 flow label (IPv6 flow label) field, a transport layer, a source port or a control message protocol (Internet control message protocol, hereinafter referred to as: ICMP) type (TCP / UDP / SCTP Src port / ICMP type) field, a transport layer destination port or I Options (Options) CMP Code (TCP / UDP / SCTP Dst Port / ICMP Code) field-by-hop extension header (Hop-by-Hop Header) field, routing header (Routing Header) of the type of routing (Routing Type) field , the remaining sheet (Segment Left) field specifies the data type (type Specific data) field, and a destination options header before Gen (destination options header) options (the options) field.

Wherein the IPv6 source address field length may be 256bit field, which may comprise a 128bit IPv6 source address mask field and a source address field of 128bit, IPv6 source address field may be selectively matched by an IPv6 source address mask field when a match . IPv6 destination address field length field may be 256bit, which may comprise a 128bit IPv6 destination address mask field, the IPv6 destination address field may be selectively matched by the mask field in the IPv6 destination address matching. IPv6 Traffic Class field in IPv6 Next Header field, and a length that can 8bits, IPv6 Flow Label field can be 32bits, only the bottom 20 bits as effective bits is stored, and the high 12 all zero.

Incidentally, for the transport layer or ICMP source port field TCP / UDP / SCTP Src Port / ICMP Type for which the TCP / UDP / SCTP Src Port transporting layer represents a source port, ICMP ICMP the Type indicates the type of the field is either source port indicates the transport layer, or ICMP type indicates the particular field represented by the transport layer source port or ICMP type, characterized by the specific contents of the field. For the purpose of the transport layer port ICMP code or TCP / UDP / SCTP Dst Port / ICMP Code field is similar, are not mentioned here.

Those skilled in the art will appreciate that, in OpenFlow system architecture, the control server (Controller) design strategies during the match, the packet forwarding devices are not needed, such as a switch or router, the entire content of the field in IPv6 packets are received above 16 or 21 fields correspond to fields match.

Therefore, the control server may send two forms of flow table to the IPv6 packet forwarding device:

In the form of a hair full IPv6 flow table under the control server

The full IPv6 flow table 16 includes a field or above 21 fields, which can specify one of several fields or the contents of a packet should the received field matches the forwarding apparatus corresponding IPv6 packets, while the remaining fields it can be expressed through the match without the need to "empty" or "any".

In the form of two, made incomplete under an IPv6 flow control server table

To simplify the table IPv6 flow delivered by the control server, the control server need only send IPv6 packets matching field ^ gen, i.e. transmits only some of the entries in the IPv6 flow table, while the remaining fields without need to match is issued .

In order to realize such a way issued IPv6 flow table entry, the embodiment of the present invention, the desired issued an IPv6 flow table entry fields types may be employed - length - value (type-length-value) in the form of representation.

It will be appreciated that the above two delivered by IPv6 flow table, which contains the operation (Instruction) after matching the desired field corresponding to the matching is successful execution. Further, in the fields match the required matching is unsuccessful, the packet forwarding device may perform a predetermined operation, for example, discards the IPv6 packet, or the IPv6 packet to the server controller to request the IPv6 control server text processing.

Embodiments of the invention may be further optimized as follows:

A packet can not be both IPv4 packets and IPv6 packets, if the IPv4 and IPv6 flow meter flow meter in a unified OpenFlow flow table, the unity of OpenFlow flow table, there must be a free storage space, lower utilization OpenFlow flow table, and therefore, embodiments of the present preferred embodiment of the invention, the IPv6 flow can separate table as a flow table, the flow table does not contain the IPv6 IPv4 flow table.

It is understood that, if the message OpenFlow system architecture forwarding device only needs to support IPv6 packets, the control server can only send IPv6 device under flow table can be forwarded to the message, and if the packet forwarding devices need to support IPv6 and IPv4 dual stack operation, the device needs to forward both the control server delivers the IPv4 packet flow table, need IPv6 forwarding device delivers the packet to the flow table, at this time, the flow IPv6 packet forwarding table stored in the device and IPv4 flow table needs to be distinguished by a respective flow table IPv6 flow type flow table value table and IPv4.

Below using several embodiments, the technical solutions of the invention will be described in detail.

1 a message processing method for packet data flow diagram embodiment of the present invention, shown in Figure 1, the method according to the present embodiment includes:

Step 101, the data link layer data packet type field comprises determining whether the data packet is an IPv6 packet.

OpenFlow packet forwarding devices in the system architecture, e.g. OpenFlow switch (switch) may receive data packets, the data packets can be either IPv4 packets, IPv6 packets may be, both types of packets by a data packet Ether type field data link layer included in type characterization.

For example, if the Ether Type = 0x0800, then the data packet is an IPv4 packet, if the Ether Type = 0x86DD, then the data packet is an IPv6 packet.

Step 102, if the data packet is the IPv6 packet field contents, then the IPv6 packet field contents and the control server previously issued IPv6 flow table matches the desired matching. In the present embodiment, the IPv6 flow table may comprise at least one of the following fields:

Ingress Port, Metadata, Ether Src, Ether Dst, Ether Type, Vlan ID, Vlan Priority, MPLS Label, MPLS Traffic Class, IPv6 Src, IPv6 Dst, IPv6 Traffic Class, IPv6 Next Header, IPv6 Flow Label, TCP / UDP / SCTP src Port / ICMP Type, TCP / UDP / SCTP Dst Port / ICMP Code, Hop-by-Hop Header Options, Routing Type, Segment Left, Type Specific Data and Destination Options Header Options.

Specifically, the OpenFlow system architecture Controller, may be previously transmitted to the IPv6 flow table switch their control, in particular, it may transmit the two types of table to an IPv6 flow switch. Those skilled in the art will appreciate that, Controller may be made different at different IPv6 flow table switch it controls.

OpenFlow switch in the system architecture is determined that the data packet is an IPv6 packet, the field may be extracted from the content included in the IPv6 packet and an IPv6 flow field content table pre-stored in the extracted field contents match the desired match.

Incidentally, switch either the contents of all of the fields contained in the IPv6 packets are extracted and only the field contents need to match the IPv6 flow table entry matching may extract only the required matching IPv6 field contents match the entry in the flow table.

In specific implementation, switch may be determined whether the received data packets before IPv6 packet, extracting packet data entry field of the packet, the link-layer source address field, the link and the link layer destination address field content layer data type field, the process and system architecture OpenFlow IPv4 is similar to the process is not repeated here. After determining that the data packet is the IPv6 only Gen packet, switch can be re-extracted IPv6 source address field in IPv6 packets, the IPv6 destination address field, IPv6 traffic type field, IPv6 header field, IPv6 flow label field, a transport layer of the source or ICMP port type field, a transport layer destination port or ICMP code field, if the IPv6 packet extension headers there is also the option field can be extracted hop extension header of the IPv6 extension header, the routing routing header type field , the remaining sheet field specifies the type of data field, the option field destination options header. Through the above process, switch to complete the extraction of the IPv6 packet field contents.

Preferentially, prior to the desired field contents match the IPv6 matching flow table entry, switch content field can be applied to generate the flow of the extracted matching table structure, and then generates a matching flow table structure and IPv6 Flow field table of contents matching the unmatched required.

Step 103, according to a matching result corresponding processing the IPv6 packet.

After acquiring the switch matching results, the process can be performed corresponding IPv6 4 Gen message according to the matching result.

For example, if the match is successful, the operation switch may be processed Instruction IPv6 flow table corresponding to the IPv6 packet, Instruction may include:

Where multiple cascade flow table IPv6, an IPv6 flow table associated with the operation; IPv6 packet to port forwarding operation;

Modify setting IPv6 packet domain operation (set field action), for example wherein an increase in the IPv6 source address, destination address of IPv6, IPv6 Traffic Class, and IPv6 Flow Table setting operation.

If the match is unsuccessful, then the switch may perform a preset operation process of the IPv6 packet, for example, discarding the packet or IPv6 sends the IPv6 packet to the Controller and the like ^ gen.

The present embodiment, the flow may be predefined table structure to support IPv6 in IPv6 packet OpenFlow control system architecture of the server, and forwards the packets OpenFlow system architecture delivers IPv6 flow table apparatus. Packet forwarding device after receiving the data packet, the data link layer according to the type field of the data packet comprises determining whether the data packet is an IPv6 packet, if an IPv6 packet, the packet forwarding device the field contents can flow table IPv6 IPv6 packet field contents included in the stored matching, and processes the IPv6 packet according to a matching result. Accordingly, the present embodiments may enable packet forwarding device OpenFlow system architecture supports IPv6 packets, expanding the OpenFlow architecture.

In the prior OpenFlow system architecture already supports IPv4 packet, on this basis, the present invention of the above-described embodiments, the system architecture can support OpenFlow IPv6 packets, therefore, for a system architecture OpenFlow to swtich He said that if it needs to support IPv6 packets and IPv4 packets, it needs to IPv6 packets and IPv4 packets dual stack operation should be noted that, IPv4 and IPv6 flow meter flow meter can be issued under the pre-switch by the Controller . The following embodiment uses a dual stack operation in this embodiment described in detail.

FIG 2 text message data processing method according to a second embodiment of a flow diagram of the present invention, shown in Figure 2, the method of the present embodiment may include:

Step 201, the received data packets. Step 202, the message field is initialized flow table entry matching structure, a link layer source address field, the content of the link layer destination address field and the type field of the data link layer.

In particular, the initialization operation may be a packet entry (Ingress Port) matching a flow table fields in a structure, a source link layer address (Ether Src) field, a link layer destination address (Ether Dst) field, and a link layer data type (Ether type) field is initialized to a value corresponding to the text data only to Burgundy, the initial value of the remaining fields of the flow table matching structure may be set to zero.

Incidentally, the present embodiment extracts only the entire contents of the field and the use of such a flow configuration table match the specific implementation as an example, those skilled in the art will be appreciated that, without using the matching flow table structure only field contents extracted subsequent matching operation can be achieved this solution.

In step 203, the next header whether Vlan, if step 204 is performed, otherwise step 206. Whether it is Vlan. For example, if the content of the Ether Type is 0x8100 or 0x88a8, the next header is Vlan.

Step 204, extracting Vlan Vlan ID and the Priority field, using the Ether header Type Vlan last processing continues.

a switch header after Vlan, Vlan ID can be extracted from and Vlan Priority fields in the data packet is determined. Step 207 subsequent reuse Ether Type processed using Ether Type Vlan header after the last "

Step 205, the remaining skipped Vlan header, and executes step 206.

Step 206, whether the switch supports MPLS, if step 207 is executed, otherwise step 210.

Incidentally, the present step is optional, if the default support the MPLS switch, the time step can be omitted.

In step 207, the next header whether MPLS shim header, if step 208 is performed, otherwise step 210.

switch may be determined by determining whether the contents of the Ether Type Gen head 4 is a MPLS "For example, if the content of the Ether Type is 0x8848 or 0x8847, the next header is a Gen ^ MPLS. Step 208, and extracting Mpls label Mpls Traffic Class.

Step 209, skipping the rest of the MPLS header, and executes step 214.

For MPLS, the current switch the default processing mode are no message behind it, and resolve only the first MPLS label, and then skip the rest of all the MPLS label processing load MPLS packet header.

Step 210, whether the next header IPv6 header, if step 211 is performed, otherwise step 212 is performed.

switch can be determined by determining Ether Type of content next header whether the IPv6 header. For example, if the contents of the Ether Type is 0x86DD, the next header is IPv6 only Gen head.

Step 211, the processing for IPv6 packets, and step 214 is performed.

The step 211 can use the method described in the above embodiments one pair IPv6 packet processing is not repeated here.

Step 212, whether the next header is an IPv4 header, if executing step 213, otherwise ends.

switch If it is determined next header is not IPv6 header, it may further determine whether the header is an IPv4 header. Specifically, switch can also be determined by determining Ether Type of content if the next header is an IPv4 header. For example, if the contents of the Ether Type is 0x0800, the header is an IPv4 header.

Step 213, performed: ^ ¥ 4 "¾ message processing, and step 214 is performed.

Note that the order between the above steps 210~211 212~213 steps may be reversed, i.e., to determine whether it is an IPv4 packet, and then determines whether the IPv6 packet, or the above-described steps 210 and step 212 may be executed concurrently, that switch can be judged by one-time value of the Ether Type data packet is an IPv4 packet or IPv6 packet.

Step 214, determining a desired flow table used in accordance with the flow table to identify the type of value, and using the extracted flow field associated query table.

Specifically, the extracted relevant fields are the fields may be filled to a corresponding mating structure of the flow table, the switch can then determine the required flow table used in accordance with the flow table to identify the type of value, if the data packet is an IPv6 packet, switch the flow table may be matched structure and an IPv6 flow table query matching flow table, if the data packet is an IPv4 packet, the switch structure may match the flow table and the flow table IPv4 query matching flow table.

The technical solutions according to the present embodiment, an IPv6 flow table defines the type of flow table value, the value is different from the flow meter type flow meter IPv4 type flow table value, so as to distinguish between IPv4 and IPv6 flow through the flow table value table type flow table.

In the present embodiment based on the embodiment shown in Figure 1, the IPv4 4 Gen further described above and IPv6 dual stack operation in detail packets can be compatible with the existing system architecture OpenFlow.

An example of the process in step 211 shown in FIG. 2 embodiment IPv6 packet processing explained in more detail below using specific embodiments.

FIG 3 datagram message processing method according to a third embodiment of a flow diagram of the present invention, shown in Figure 3, the method of the present embodiment may include:

Step 301, extracting IPv6 source address, destination address, Traffic Class, Next header, Flow label.

In step 302, whether the next header IPv6 extension headers, if step 303 is performed, otherwise step 309.

In step 303, the next header whether the Hop-by-Hop header, if step 304 is performed, otherwise step 305.

Switch may be equal to 0 by determining whether the IP v6 Next Header to determine whether a next header is a Hop-by-Hop header.

Step 304, extracting Hop-by-Hop Header Options field, and step 302 is performed. In step 305, the next header whether the Routing Header extension headers, if the step 306 is performed, otherwise step 307.

is equal to the switch 43 may be determined by the IPv6 Next Header to determine a next header is a Routing Header if extension headers.

Step 306, extracting IPv6 routing extension header Routing Type, Segment Left, Type Specific Data field, and step 302 is performed.

Step 307, whether the next header Destination Options Header extension header, if step 308 is performed, otherwise step 302 is performed.

is equal to the switch 60 may be determined by the IPv6 Next Header to determine whether the next header Destination Options Header extension header.

Step 308, extracting Destination Options Header of the options field, and step 302 is performed.

Step 309, IPv6 Next Header is equal to 6, 17 or 132, if step 310 is performed, otherwise, step 311 is executed.

Step 310, extracting TCP / UDP / SCTP Src Port / Dst Port, and step 313. If the IPv6 Next Header is equal to 6, then extracted TCP Src Port / Dst Port, if the IPv6 Next

Header is equal to 17, then extracted UDP Src Port / Dst Port, if the IPv6 Next Header is equal to 132, the extracted SCTP Src Port / Dst Port.

Step 311, IP Next Header is equal to 58, if step 312 is performed, otherwise step 313.

Step 312, extracting and ICMP Type Code, and step 313.

Step 313, using the extracted flow fields table lookup.

The above-described embodiments of the present invention, the system architecture such that the packet forwarding device OpenFlow IPv6 packets, and the technical solutions of the embodiments of the present invention can support dual-stack operation, to expand the OpenFlow system architecture.

FIG 4 packet forwarding device of the present invention is a schematic diagram of a configuration of the embodiment shown in Figure 4, the device of the present embodiment may include: a determining module 11, a matching module 12 and a processing module 13, wherein the determining module 11, for the data link layer data packet type field comprises determining whether the data packet is the IPv6 packet; matching module 12, configured to, if the data packet is the IPv6 packet, then the IPv6 packet field contents field content control server IPv6 flow table issued in advance to match the required matching, the IPv6 flow table comprises at least one of the following fields: packet entry field, meta data field, a source link layer address field, a link layer destination address field, a data link layer type field, a virtual local area network identification field, priority field of virtual local area network, the MPLS label field, the MPLS traffic type field, the IPv6 source address field, the IPv6 destination address field, the IPv6 traffic type field, a header field in IPv6, IPv6 flow label field, a transport layer or ICMP type field source port, destination port or ICMP transport layer Code field; processing module 13 for processing the corresponding IPv6 packet according to a matching result.

In the present embodiment, the processing module 13 may be specifically configured, if the matching succeeds, the IPv6 packet to the IPv6 processing operation corresponding to the flow table; if the matching is not successful, discarding the IPv6 packet text or the IPv6 packet to the control server.

Packet forwarding apparatus according to the present embodiment may be a system architecture OpenFlow switch or router. The packet forwarding device of the present embodiment may be used in the method shown in FIG. 1 executes technical solutions of the embodiments, principles and techniques which achieve a similar effect, are not repeated herein.

Schematic structural diagram of FIG. 5 shows two packet forwarding apparatus according to the invention, shown in Figure 5, the apparatus of the present embodiment is based on the apparatus shown in FIG. 4, it may further comprise: an extraction module 14 for determining module 11 determines whether the data packet is the IPv6 packet before extracting the message data entry field of the packet, a link layer source address field, a destination address field and the contents of link layer field's data type; after the determination module determines that the data packet is an IPv6 packet, extracts the IPv6 source address field of the IPv6 packet, the destination address field in IPv6, IPv6 traffic type field, a header field in IPv6, IPv6 flow label field transport layer source port or ICMP type field, a transport layer destination port or ICMP code field-by-hop extension header option field, the routing type field routing header, and the remaining sheets field specifies the type of data field, a destination option header option field; matching module 12, a field for the specific extraction module extracts the content of the field of the IPv6 flow table matches the desired Yung match.

Further, the matching module 12 may include: a generating unit 121 and a matching unit 122, generating unit 121, the field contents for the above-described applications generating extraction module 14 extracts matching flow table structure; matching unit 122 for the flow table content matching the field structure required IPv6 flow table matching the unmatched.

To support IPv6 packets and IPv4 packets dual stack operation, the apparatus of the present embodiment may further include: a flow table identification module 15, the matching module for matching the former to the IPv6 flow table according to the table contained in the stream type value, the IPv4 and IPv6 flow table to determine the flow table identifying IPv6 flow table.

Apparatus of the present embodiment may further include: a flow table storage module 16, for receiving the control table IPv6 flow delivered by the server, the IPv6 flow table contains the fields of the field type, length and value.

Apparatus of the present embodiment may be used to perform the method shown in FIG. 2 or FIG. 3 technical solution of the embodiment, similar to the implementation principles, will not be repeated here.

FIG 6 is a schematic structural diagram of the present invention, message data packet processing system shown in Figure 6, the system of this embodiment may be a system architecture OpenFlow, in the present embodiment, the system includes: a server 1 and at least one control packet forwarding device 2, in the present embodiment shows two packet forwarding devices. Packet forwarding device according to the present embodiment in the structure of Embodiment 2 shown in FIG. 4 or FIG. 5 may be used, which may specifically be performed in any of FIG. 1 ~ 3 according to one aspect, the implementation principle similar, are not repeated herein.

Those of ordinary skill in the art will be understood: the hardware implementing the above method to complete all or part of the steps associated with embodiments may be implemented by program instructions, the program may be stored in a computer readable storage medium, the program, when executed, performs comprising the steps of the method embodiments described above; and the storage medium comprising: a variety of medium ROM, RAM, magnetic disk, or an optical disc capable of storing program code.

Finally, it should be noted that: the above embodiments are intended to illustrate the present invention, rather than limiting;. Although the embodiments of the present invention has been described in detail, those of ordinary skill in the art should be understood: that they may still to the technical solutions described in each embodiment to modify, or to some technical features equivalents; as such modifications or replacements do not cause the essence of corresponding technical solutions depart from the scope of the technical solutions of the embodiments of the present invention.

Claims

Claims
A packet data processing method characterized by comprising:
The data link layer data packet type field contained in the data packet to determine whether an IPv6 packet before Gen;
If the data packet is an IPv6 packet, the field contents in the IPv6 packet field contents and the control server IPv6 flow table previously issued will match the required matching, the table contains the IPv6 flow said at least one field:
Packet entry field, meta data field, a link layer source address field, the link layer destination address field, a data link layer type field, a virtual local area network identification field, priority field of virtual local area network, the MPLS label field, the MPLS traffic type field, IPv6 source address field, a destination address field of IPv6, IPv6 traffic type field, a header field in the IPv6, IPv6 flow label field, a transport layer or ICMP type field source port, destination port transport layer or ICMP code field;
Processing the corresponding IPv6 packet according to a matching result.
2. The method of claim 1, wherein said table further comprises an IPv6 flow at least one of the following fields:
Hop options extension header field of routing routing header type field, the remaining sheet field specifies the type of data field, the option field destination options header.
3. The method according to claim 2, wherein said data link layer type field contained in the data packet, determining whether the data packet is the IPv6 packet before, further comprising:
Extracting the packet entry field of the data packet, a link layer source address field, the link layer destination address field and a content type field of the data link layer;
After determining whether the data packet is the IPv6 packet, further comprising:
Extracting the IPv6 IPv6 source address field in the packet,; IPv6 destination address field; IPv6 traffic type field; IPv6 Next Header field; IPv6 flow label field; transport layer source port or ICMP type field; transmission layer destination port or ICMP code field; hop options extension header field; route extended routing header type field,; sheet remaining field; specifies the type of data fields; destination options header field;
The field contents in the IPv6 packet field contents and the control server previously issued IPv6 matching flow table matches the desired, comprising: a field above the desired content extracted in the IPv6 flow table matching field contents match.
4. The method of claim 3, characterized in that the field contents of fields of the extracted content IPv6 required matching flow table matching, comprising:
These fields generated content application flow table matching the extracted structure, the structure and the matching flow table IPv6 flow table matches the desired field contents match.
5. The method as claimed in claim 4, wherein the content of the application field of the extracted matching flow table generating structure, comprising:
The field of the entry packet data in the packet, the link-layer source address field, the link layer destination address field and a content type field of the data link layer, the corresponding field is initialized to match the flow table structure;
Fill in the flow table matching the configuration in IPv6 source address field, a destination address field of IPv6, IPv6 traffic type field, a header field in IPv6, IPv6 flow label field of the content-by-hop extension header option field, routing header routing type field, the remaining sheet field, specifies the type of data field;
The content of the IPv6 next header field, source port and destination port to fill a transport layer in the matching flow table structure, or fill ICMP code field and a type field in the matching flow table structure.
6. The method according to claim 1, wherein, before the field contents match the IPv6 packet field contents and the control server previously issued IPv6 flow table matching is required, further comprising :
According to the IPv6 flow table type value included in the flow table, the flow table to identify the IPv6 and IPv4 IPv6 flow table to determine the flow table.
7. The method of claim 1, wherein said determining whether the data packet is the IPv6 packet before, further comprising:
The receiving control table IPv6 flow delivered by the server, the IPv6 flow table contains the fields of the field type, length and value.
8. A method according to any one of 1~7 claims, wherein said process corresponding to said packet according to IPv6 ^ gen matching results, comprising:
If the matching is successful, the IPv6 packet to the IPv6 processing operation corresponding to the flow table;
If the matching is not successful, discarding the IPv6 packet or the IPv6 packet to the control server.
9. The method of claim 8, wherein said corresponding processing operation comprises:
Operating under a flow table associated with IPv6, and port forwarding setting operation domain operation.
10. A packet forwarding apparatus comprising:
A determining module, according to the data link layer data packet type field contained in the data packet to determine whether the IPv6 packet;
A matching module configured to, if the data packet is an IPv6 packet, the field contents in the IPv6 packet field contents and the control server IPv6 flow table previously issued will match the required matching, the IPv6 stream a table comprising at least the following fields:
Packet entry field, meta data field, a link layer source address field, the link layer destination address field, a data link layer type field, a virtual local area network identification field, priority field of virtual local area network, the MPLS label field, the MPLS traffic type field, IPv6 source address field, a destination address field of IPv6, IPv6 traffic type field, a header field in the IPv6, IPv6 flow label field, a transport layer or ICMP type field source port, destination port transport layer or ICMP code field;
Processing means for processing the corresponding IPv6 packet according to a matching result.
11. The apparatus of claim 10, characterized in that, further comprising:
Extraction means for the determining module determines whether the data packet is the IPv6 packet before extracting the message data entry field of the packet, a link layer source address field, and a link layer destination address field the content type field of the data link layer; after the determining module determines that the data packet is an IPv6 packet, extracts the IPv6 packet in the following fields: IPv6 source address field; IPv6 destination address field; IPv6 traffic type field; IPv6 next header field; IPv6 flow label field; transport layer source port or ICMP type field; transport layer destination port or ICMP code field; by-hop extension header option field; routing header routing type field; remaining sheet field; specify the type of data field; destination options header option field;
The matching module is a field for the contents of field contents extraction module extracts the IPv6 flow with the required matching table to match.
12. The apparatus of claim 11, wherein the matching module comprises: a generating unit that extracts the field for applying the content generation module extracts the matching flow table structure;
A matching unit for the field contents match the flow table structure and the IPv6 flow table matches the desired matching.
13. The apparatus of claim 10, characterized in that, further comprising:
Flow table identification module, said matching module for matching according to the flow table before the IPv6 type value included in the flow table, the flow table to identify the IPv6 and IPv4 IPv6 flow table to determine the flow table.
14. The apparatus of claim 10, characterized in that, further comprising:
Flow table storing module, for receiving said control table IPv6 flow delivered by the server, the IPv6 flow table contains the fields of the field type, length and value.
15. The device as claimed in any one of claims 10~14, wherein the processing module is configured to, if the matching succeeds, the IPv6 packet is processed in the IPv6 flow table corresponding operation; if the matching is not successful, discarding the message or send the IPv6 packet to the IPv6 control server.
16. A packet data processing system comprising a server and at least one control packet forwarding device, wherein the packet forwarding device uses packet 10 ~ 15 in any one of claims forwarding device.
PCT/CN2011/081287 2011-10-25 2011-10-25 Data message processing method and system, message forwarding device WO2013059991A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2011/081287 WO2013059991A1 (en) 2011-10-25 2011-10-25 Data message processing method and system, message forwarding device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
PCT/CN2011/081287 WO2013059991A1 (en) 2011-10-25 2011-10-25 Data message processing method and system, message forwarding device
CN201180002343.6A CN103181129B (en) 2011-10-25 2011-10-25 Data packet processing method and system, the packet forwarding device

Publications (1)

Publication Number Publication Date
WO2013059991A1 true WO2013059991A1 (en) 2013-05-02

Family

ID=48167046

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2011/081287 WO2013059991A1 (en) 2011-10-25 2011-10-25 Data message processing method and system, message forwarding device

Country Status (2)

Country Link
CN (1) CN103181129B (en)
WO (1) WO2013059991A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104348716A (en) * 2013-07-23 2015-02-11 杭州华三通信技术有限公司 Message processing method and equipment
CN104426762A (en) * 2013-08-30 2015-03-18 中兴通讯股份有限公司 Metadata transmitting and receiving method and OFLS (open flow logic switch)
CN104734963A (en) * 2015-03-24 2015-06-24 电子科技大学 IPv4 and IPv6 network interconnection method based on SDN
CN106656720A (en) * 2016-10-31 2017-05-10 上海斐讯数据通信技术有限公司 SDN-based IPv4 to IPv6 transition method and system

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103841189B (en) * 2014-02-28 2018-09-28 上海斐讯数据通信技术有限公司 Controls data communication between the central server computing cloud method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011030889A1 (en) * 2009-09-14 2011-03-17 日本電気株式会社 Communication system, forwarding node, path management server, communication method, and program
EP2355423A1 (en) * 2010-01-29 2011-08-10 Deutsche Telekom AG System and method for routing data packets over an Internet Protocol network

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104113433B (en) * 2007-09-26 2018-04-10 Nicira股份有限公司 Network management and protection of network operating systems

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011030889A1 (en) * 2009-09-14 2011-03-17 日本電気株式会社 Communication system, forwarding node, path management server, communication method, and program
EP2355423A1 (en) * 2010-01-29 2011-08-10 Deutsche Telekom AG System and method for routing data packets over an Internet Protocol network

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ZHILIANG, WANG ET AL. THINKING ABOUT EXTENSIBILITY AND SCALABILITY IN OPENFLOW NETWORKING (CANS 2011) 09 August 2011, pages 8, 12 - 14 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104348716A (en) * 2013-07-23 2015-02-11 杭州华三通信技术有限公司 Message processing method and equipment
CN104348716B (en) * 2013-07-23 2018-03-23 新华三技术有限公司 One kind of packet processing method and apparatus
CN104426762A (en) * 2013-08-30 2015-03-18 中兴通讯股份有限公司 Metadata transmitting and receiving method and OFLS (open flow logic switch)
CN104734963A (en) * 2015-03-24 2015-06-24 电子科技大学 IPv4 and IPv6 network interconnection method based on SDN
CN104734963B (en) * 2015-03-24 2018-07-13 电子科技大学 SDN types IPv4 and IPv6 based network interconnection method
CN106656720A (en) * 2016-10-31 2017-05-10 上海斐讯数据通信技术有限公司 SDN-based IPv4 to IPv6 transition method and system

Also Published As

Publication number Publication date
CN103181129A (en) 2013-06-26
CN103181129B (en) 2015-09-30

Similar Documents

Publication Publication Date Title
US9167501B2 (en) Implementing a 3G packet core in a cloud computer with openflow data and control planes
EP1678873B1 (en) Autodiscovery for virtual networks
US9825856B2 (en) Service function chaining in a packet network
CN100512238C (en) Method for recursive BGP route updates in MPLS networks
CN103797769B (en) Session-based services controlled flow interceptor
US20130148667A1 (en) Communication system, control apparatus, communication method, and program
EP1158724A2 (en) Packet processor with programmable application logic
EP2731304B1 (en) Method, switch and system for transmitting an establish connection request
US20170111277A1 (en) Segment routing: pce driven dynamic setup of forwarding adjacencies and explicit path
JP5742834B2 (en) Communication system, routing control device, the packet transfer device and routing control method
CN105247822B (en) A method for establishing a chain of network services, devices and computer-readable storage medium
JP5621778B2 (en) Content-based switching system, and content-based switch method
CN102792646B (en) Communication system, a control apparatus, a communication method
KR101593356B1 (en) System and method for using label distribution protocol (ldp) in ipv6 networks
US20130046882A1 (en) Communication control system and communication control method
US9426061B2 (en) Communication system, node, control device, communication method, and program
US20140341222A1 (en) Segment routing mapping server for ldp/sr interoperability
US7496096B1 (en) Method and system for defining hardware routing paths for networks having IP and MPLS paths
EP2392100B1 (en) Scaled ethernet oam for mesh and hub-and-spoke networks
CN101741709B (en) Method and system for establishing label switched path and network node
US7590119B2 (en) Method and apparatus for context-based prefix updates in border gateway protocol
CN101243654B (en) Method and apparatus for enabling routing of label switched data packets
US8718062B2 (en) Method, device and system for establishing pseudo wire
US20120170477A1 (en) Computer, communication system, network connection switching method, and program
JP5862769B2 (en) Communication system, control apparatus, communication method and program

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11874552

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase in:

Ref country code: DE

122 Ep: pct app. not ent. europ. phase

Ref document number: 11874552

Country of ref document: EP

Kind code of ref document: A1