WO2015161404A1 - 隧道类型的选择方法及装置 - Google Patents

隧道类型的选择方法及装置 Download PDF

Info

Publication number
WO2015161404A1
WO2015161404A1 PCT/CN2014/075788 CN2014075788W WO2015161404A1 WO 2015161404 A1 WO2015161404 A1 WO 2015161404A1 CN 2014075788 W CN2014075788 W CN 2014075788W WO 2015161404 A1 WO2015161404 A1 WO 2015161404A1
Authority
WO
WIPO (PCT)
Prior art keywords
tunnel type
tunnel
switch
oxm
controller
Prior art date
Application number
PCT/CN2014/075788
Other languages
English (en)
French (fr)
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 CN201480000396.8A priority Critical patent/CN105379203B/zh
Priority to EP14890202.6A priority patent/EP3119046B1/en
Priority to EP18160906.6A priority patent/EP3425860B1/en
Priority to PCT/CN2014/075788 priority patent/WO2015161404A1/zh
Publication of WO2015161404A1 publication Critical patent/WO2015161404A1/zh
Priority to US15/298,476 priority patent/US10003503B2/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • 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

Definitions

  • the present invention relates to the field of information technology, and in particular, to a tunnel type selection method and apparatus.
  • Openflow specification defines a technique for stripping the control plane from the forwarding plane.
  • Openflow switches need to support various tunnel types.
  • the tunnel types include: Virtual Local Area Network (VLAN), Virtual Extensible Local Area Network (VxLAN), and Generic Routing Encapsulation (GRE).
  • VLAN Virtual Local Area Network
  • VxLAN Virtual Extensible Local Area Network
  • GRE Generic Routing Encapsulation
  • the tunnel switching and mapping mechanism is required to implement the data packet from the first The one-hop switch forwards to the next-hop switch.
  • the tunnel switching and mapping mechanism needs to be introduced when the types of tunnels supported by the adjacent switches are different, and the gateway or bridge needs to be introduced in the network.
  • the forwarding complexity of the data packet is high.
  • the embodiment of the invention provides a method and a device for selecting a tunnel type, which can reduce the forwarding complexity of a data packet.
  • an embodiment of the present invention provides a method for selecting a tunnel type, including: determining, by a controller, a tunnel type supported by a next hop switch;
  • the controller acquires a code corresponding to the tunnel type in a tunnel type coding mapping table, And generating a label value corresponding to the tunnel type;
  • the controller combines the code corresponding to the tunnel type and the tag value corresponding to the tunnel type to generate an OXM-OF_TUNNEL_ID matching field;
  • the controller sends a forwarding policy to the hop-up Openflow switch, where the forwarding policy carries the OXM-OF_TUNNEL-ID matching domain, so that the last hop Openflow switch encodes according to the tunnel type and The label value corresponding to the tunnel type encapsulates the data packet.
  • the method before the step of determining, by the controller, a tunnel type supported by the next hop switch, the method further includes:
  • the step of the controller determining the tunnel type supported by the next hop switch includes:
  • the controller determines a tunnel type supported by the next hop switch.
  • the method further includes:
  • the controller generates a code corresponding to each tunnel type respectively;
  • the controller establishes the tunnel type coding mapping table, where the tunnel type coding mapping table includes codes corresponding to the respective tunnel types and the respective tunnel types.
  • the method further includes:
  • the controller determines a tunnel type supported by the newly-connected switch
  • the controller generates a code corresponding to a tunnel type supported by the switch that is newly connected to the network;
  • the controller updates the tunnel type coding mapping table according to a code corresponding to a tunnel type supported by the newly-connected switch.
  • the tunnel type coding mapping table includes a custom tunnel type and a code corresponding to the custom tunnel type.
  • the embodiment of the present invention provides a tunnel type selection device, including: a determining unit, configured to determine a tunnel type supported by a next hop switch;
  • an obtaining unit configured to acquire, in the tunnel type coding mapping table, an encoding corresponding to the tunnel type determined by the determining unit;
  • a generating unit configured to generate a label value corresponding to the tunnel type, and combine the code corresponding to the tunnel type acquired by the acquiring unit and the label value corresponding to the tunnel type to generate an OXM_OF_TUNNEL_ID Matching domain
  • a sending unit configured to send a forwarding policy to the up-hop Openflow switch, where the forwarding policy carries the OXM_OF_TUNNEL_ID matching domain generated by the generating unit.
  • the determining unit is further configured to determine whether the last hop Openflow switch is an Openflow switch supporting an OXM-OF-TUNNEL-ID matching domain;
  • the determining unit is specifically configured to determine, when the last hop Openflow switch is an Openflow switch supporting an OXM_OF_TUNNEL_ID matching domain, a tunnel type supported by the next hop switch.
  • the generating unit is further configured to generate a code corresponding to each tunnel type respectively;
  • the device further includes: an establishing unit;
  • the establishing unit is further configured to establish the tunnel type coding mapping table, the tunnel type
  • the coding mapping table includes codes corresponding to the respective tunnel types and the respective tunnel types generated by the generating unit.
  • the determining unit is further configured to determine, when there is a newly-connected switch, a tunnel type supported by the switch;
  • the generating unit is further configured to generate a code corresponding to a tunnel type supported by the switch that is newly entered by the determining unit;
  • the device further includes: an update unit;
  • the updating unit is configured to update the tunnel type coding mapping table according to a code corresponding to a tunnel type supported by the newly-connected switch generated by the generating unit.
  • the tunnel type coding mapping table established by the establishing unit includes a custom tunnel type and a code corresponding to the custom tunnel type.
  • a controller including:
  • a processor configured to first determine a tunnel type supported by the next hop switch, and then obtain a code corresponding to the tunnel type in a tunnel type coding mapping table, and generate a label value corresponding to the tunnel type, and finally use the tunnel type Corresponding coding and label values corresponding to the tunnel type are combined to generate an OXM_OF_TUNNEL_ID matching field;
  • the transmitter is configured to send a forwarding policy to the Upflow hop Openflow switch, where the forwarding policy carries the OXM-OF-TUNNEL-ID matching domain generated by the processor.
  • the processor is further configured to determine whether the last hop Openflow switch is supported
  • OXM—OF—TUNNEL The Openflow switch of the ID matching domain;
  • the processor is specifically configured to determine, when the last hop Openflow switch is an Openflow switch supporting an OXM-OF-TUNNEL-ID matching domain, a tunnel type supported by the next hop switch.
  • the processor is further configured to generate a code corresponding to each tunnel type
  • the processor is further configured to establish the tunnel type coding mapping table, where the tunnel type coding mapping table includes codes corresponding to the respective tunnel types and the respective tunnel types.
  • the processor is further configured to determine, when there is a newly connected switch, a tunnel type supported by the switch;
  • the processor is further configured to generate a code corresponding to a tunnel type supported by the switch that is newly connected to the network;
  • the processor is further configured to update the tunnel type coding mapping table according to a code corresponding to a tunnel type supported by the switch that is newly connected to the network.
  • the tunnel type coding mapping table established by the processor includes a custom tunnel type and a code corresponding to the custom tunnel type.
  • an embodiment of the present invention provides a method for selecting a tunnel type, including:
  • the Openflow switch receives a forwarding policy sent by the controller, where the forwarding policy carries
  • the Openflow switch extracts, from the OXM-OF-TUNNEL-ID matching domain, a code corresponding to a tunnel type supported by a next hop switch and a label value corresponding to the tunnel type;
  • the Openflow switch encapsulates the data packet according to the code corresponding to the tunnel type and the label value corresponding to the tunnel type;
  • an embodiment of the present invention provides a tunnel type selection device, including: a receiving unit, configured to receive a forwarding policy sent by a controller, where the forwarding policy carries
  • An extracting unit configured to extract, from the OXM_OF_TUNNEL_ID matching field, the encoding corresponding to the tunnel type supported by the next hop switch and the label value corresponding to the tunnel type;
  • an encapsulating unit configured to encapsulate the data packet according to the code corresponding to the tunnel type extracted by the extracting unit and the tag value corresponding to the tunnel type;
  • an embodiment of the present invention provides an Openflow switch, including:
  • a receiver configured to receive a forwarding policy sent by the controller, where the forwarding policy carries an OXM-OF-TUNNEL-ID matching domain;
  • a processor configured to extract, from the OXM-OF-TUNNEL-ID matching domain, the code corresponding to the tunnel type supported by the next hop switch and the label value corresponding to the tunnel type, and according to the Decoding the data packet according to the code corresponding to the tunnel type and the label value corresponding to the tunnel type;
  • the controller first combines the coding and label values corresponding to the tunnel type supported by the next hop switch to generate an OXM-OF-TUNNEL-ID matching domain, and jumps up.
  • Openflow switch sends and carries this OXM-OF-TUNNEL—the forwarding strategy of the ID matching domain; then the last hop Openflow switch extracts the coding and label values corresponding to the tunnel type from the received OXM-OF-TUNNEL-ID matching domain, and correspondingly according to the tunnel type The encoding and label values encapsulate the data packet; finally, the last hop Openflow switch sends the encapsulated data packet to the next hop switch.
  • the embodiment of the present invention generates the OXM-OF-TUNNEL-ID matching domain by using the tunnel type supported by the next hop switch, and sends the hop to the Open hop switch.
  • the forwarding policy carrying the OXM-OF-TUNNEL-ID matching domain enables the last hop Openflow switch to encapsulate the data packet according to the tunnel type supported by the switch, thereby avoiding introducing tunnel switching and mapping in the forwarding process of the data packet.
  • Mechanisms, gateways, or bridges which in turn can reduce the forwarding complexity of packets.
  • FIG. 1 is a schematic structural diagram of a system according to an embodiment of the present disclosure
  • FIG. 2 is a flowchart of a method for selecting a tunnel type according to an embodiment of the present invention
  • FIG. 3 is a flowchart of another method for selecting a tunnel type according to an embodiment of the present invention
  • FIG. 5 is a flowchart of a method for selecting a tunnel type according to an embodiment of the present invention
  • FIG. 6 is a schematic structural diagram of a device for selecting a tunnel type according to an embodiment of the present invention
  • 7 is a schematic structural diagram of still another tunnel type selection device according to an embodiment of the present invention.
  • FIG. 8 is a schematic structural diagram of a controller according to an embodiment of the present disclosure.
  • FIG. 9 is a schematic structural diagram of still another tunnel type selection apparatus according to an embodiment of the present disclosure.
  • FIG. 10 is a schematic structural diagram of an Openflow switch according to an embodiment of the present invention. detailed description
  • the technical solution provided by the embodiment of the present invention can be used for the system architecture of the hybrid networking of the Openflow switch and the traditional switch, as shown in FIG. 1 .
  • the controller cluster in the SDN (Software Defined Network) is the controller in the embodiment of the present invention;
  • the Openflow switch 1 and the Openflow switch 2 are Openflow switches in the embodiment of the present invention, and can support OXM—
  • the OF-TUNNEL-ID matches the domain and allows the custom tunnel type to be supported.
  • the OpenFlow switch 1 is the last hop Openflow switch in the embodiment of the present invention; the switch is the next hop switch in the embodiment of the present invention, and can support the tunnel type VLAN.
  • the switch in the embodiment of the present invention may be a traditional switch or an Openflow switch.
  • the data packet is forwarded according to the solid line and the arrow path in the figure. Specifically, the data packet is first forwarded by the source Op enflow switch to the traditional switch, and then The traditional switch forwards to the destination Openflow switch.
  • An embodiment of the present invention provides a method for selecting a tunnel type. As shown in FIG. 2, the method includes:
  • the controller determines a tunnel type supported by the next hop switch.
  • the tunnel types supported by the next hop switch include VLAN, VxLAN, and GRE.
  • different switches can support different tunnel types.
  • the controller obtains a code corresponding to the tunnel type in the tunnel type coding mapping table, and generates a label value corresponding to the tunnel type.
  • the Openflow switch is a switch that can support the OXM-OF-TUNNEL-ID matching domain.
  • the OXM-OF-TUNNEL-ID matching domain can be applied to many different tunnel types.
  • OXM-OF-TUNNEL-ID matching i can support: VLAN tunnel type mode, VxLAN tunnel type mode, GRE tunnel type mode, mixed mode of VLAN tunnel type and VxLAN tunnel type, VLAN tunnel type and GRE tunnel type mixed mode , VxLANPi channel type and GRE tunnel type mixed mode.
  • the OXM-OF-TUNNEL-ID matching domain may also be applied to a custom tunnel type.
  • the controller may obtain the code corresponding to the tunnel type in the tunnel type coding mapping table.
  • the code corresponding to the tunnel type may be represented by 8 bits (bits) or by 16 bits, which is not limited by the embodiment of the present invention.
  • the tunnel type coding mapping table may be as follows:
  • 00000000 represents a custom tunnel type
  • 00000001 represents a VLAN tunnel type
  • 00000010 represents a VxLAN tunnel type
  • 00000011 represents a GRE tunnel type
  • 00000100 represents a mixed mode of a VLAN tunnel type and a VxLAN tunnel type
  • 00000101 represents The VLAN tunnel type is mixed with the GRE tunnel type
  • 00000110 represents the mixed mode of the VxLAN tunnel type and the GRE tunnel type.
  • the step 202 may be that the code corresponding to the tunnel type VLAN obtained by the controller in the tunnel type coding mapping table may be 00000001, and the generated tunnel type corresponds to a tag value of 00000000000000000000000000001111111110001000.
  • the controller combines the code corresponding to the tunnel type and the tag value corresponding to the tunnel type to generate an OXM-OF-TUNNEL-ID matching field.
  • step 203 may be: the controller may encode the tunnel type 00000001 and
  • the controller sends a forwarding policy to the Openflow switch.
  • the controller sends a forwarding policy to the OpenFlow switch by the controller, so that the OpenFlow switch encapsulates the data packet according to the coding type corresponding to the tunnel type and the label value corresponding to the tunnel type.
  • the forwarding policy carries an OXM-OF-TUNNEL-ID matching domain.
  • the controller sends a forwarding policy to the OpenFlow switch by the controller, so that the last hop Openflow switch encapsulates the data packet according to the tunnel type supported by the next hop legacy switch according to the forwarding policy.
  • the next hop switch may be a traditional switch or an Op enflow switch.
  • the tunnel type supported by the traditional switch can be VLAN, VxLAN, or GRE.
  • the Openflow switch can support the OXM-OF-TUNNEL-ID matching domain.
  • the next hop switch is the next hop exchange of the last hop Openflow switch.
  • the previous hop Op enflo w switch is the last hop switch of the next hop switch.
  • next hop switch of the last hop Op enflo w switch is a traditional switch
  • the method provided by the embodiment of the present invention can be followed.
  • One-hop encoding and label value of the tunnel type supported by the traditional switch, and the data packet is encapsulated, so that the data packet can be directly exchanged between the last hop Openflow switch and the next hop traditional switch, thereby avoiding the gateway or
  • the introduction of the bridge can reduce the forwarding complexity of the data packet.
  • the method provided by the embodiment of the present invention may be used according to the tunnel type supported by the next hop Openflow switch.
  • the data packet is encapsulated so that the data packet can be directly exchanged between the last hop Openflow switch and the next hop Openflow switch.
  • the tunnel type that the Openflow switch can support can be any tunnel type, that is, the tunnel type such as VLAN, VxLAN, or GRE can be supported at the same time.
  • the Openflow switch1 may forward the encapsulated data packet to the switch, and the switch may use the data packet according to the matching tunnel type. Further forwarded to Openflow switch2.
  • the Openflow switch 2 parses the packet format of the received data packet, extracts the label value of the tunnel type, and combines the label value of the tunnel type and the code of the tunnel type preset by the controller.
  • the OXM_OF_TUNNEL_ID matching domain corresponding to the data packet is generated, and the corresponding flow entry is matched in the flow table.
  • the controller first combines the coding and label values corresponding to the tunnel type supported by the next hop switch to generate an OXM-OF-TUNNEL-ID matching domain, and up-hops the Openflow switch.
  • the last hop Openflow switch sends the encapsulated packet to the next hop switch.
  • the embodiment of the present invention Compared with the current forwarding of the data packet by the gateway or the bridge, the embodiment of the present invention generates the OXM-OF-TUNNEL-ID matching domain by using the tunnel type supported by the next hop switch, and sends the hop to the Open hop switch.
  • the forwarding policy carrying the OXM-OF-TUNNEL-ID matching domain enables the last hop Openflow switch to encapsulate the data packet according to the tunnel type supported by the switch, thereby avoiding introducing tunnel switching and mapping in the forwarding process of the data packet.
  • Mechanisms, gateways, or bridges which in turn can reduce the forwarding complexity of packets.
  • An embodiment of the present invention provides a method for selecting a tunnel type. As shown in FIG. 3, the method includes:
  • the controller generates a code corresponding to each tunnel type.
  • the controller can generate: the code corresponding to the custom tunnel type mode is 00000000; the code corresponding to the VLAN tunnel type mode is 00000001; the code corresponding to the VxLAN tunnel type mode is 00000010; the code corresponding to the GRE tunnel type mode is 00000011; The code corresponding to the mixed mode of the VxLAN tunnel type is 00000100; the code corresponding to the mixed mode of the VLAN tunnel type and the GRE tunnel type is 00000101; the code corresponding to the mixed mode of the Gx tunnel type and the GRE tunnel type is 00000110.
  • the code corresponding to the tunnel type may be 8 bits or 16 bits, which is not limited by the embodiment of the present invention.
  • 64b its OXM_OF_TUNNEL_ID matching domain is split, and some of the bits are used as the coding corresponding to the tunnel type, and the remaining bits are used to indicate the corresponding type of the tunnel.
  • Tag value For example, if the first 8 bits are used as the tunnel type identifier (the tunnel type), it is used as the code corresponding to the tunnel type; then the last 56 bits is used as the tunnel type tag value (the tunnel ID), which is used as the tag value corresponding to the tunnel type. For example, if the first 16 bits are used as the tunnel type identifier, the code corresponding to the tunnel type is used; the last 48 bits is used as the tunnel type tag value, and is used as the tag value corresponding to the tunnel type.
  • the controller establishes a tunnel type coding mapping table.
  • the tunnel type coding mapping table includes each tunnel type and each tunnel type respectively. Corresponding code.
  • the types of tunnels supported by the traditional switch include VLAN, VxLAN, and GRE.
  • different traditional switches can support different tunnel types.
  • the Openflow switch is a switch that can support the OXM-OF-TUNNEL-ID matching domain.
  • the OXM-OF-TUNNEL-ID matching domain can be applied to many different tunnel types.
  • the OXM-OF-TUNNEL-ID matching domain can support: VLAN tunnel type mode, VxLAN tunnel type mode, GRE tunnel type mode, mixed mode of VLAN tunnel type and VxLAN tunnel type, mixed mode of VLAN tunnel type and GRE tunnel type, Mixed mode of VxLAN tunnel type and GRE tunnel type.
  • the OXM-OF-TUNNEL-ID matching domain may also be applied to a custom tunnel type.
  • the tunnel type coding mapping table is used to obtain the tunnel type code corresponding to the tunnel type supported by the traditional switch, so that the Openflow switch encapsulates the data packet according to the tunnel type supported by the traditional switch.
  • the tunnel type coding mapping table may be as follows:
  • 00000000 represents a custom tunnel type
  • 00000001 represents a VLAN tunnel type
  • 00000010 represents a VxLAN tunnel type
  • 00000011 represents a GRE tunnel type
  • 00000100 represents a mixed mode of a VLAN tunnel type and a VxLAN tunnel type
  • 00000101 represents The VLAN tunnel type is mixed with the GRE tunnel type
  • 00000110 represents the mixed mode of the VxLAN tunnel type and the GRE tunnel type.
  • the tunnel type coding mapping table may include a custom tunnel type and an encoding corresponding to the custom tunnel type.
  • the OXM-OF-TUNNEL-ID matching domain can support the custom tunnel type, thereby implementing the Openflow switch. Encapsulate according to the custom tunnel type supported by traditional switches.
  • the label value corresponding to the customized tunnel type may be represented by a small number of bits, and according to the custom tunnel.
  • the tag value corresponding to the type encapsulates the data packet, and performs data forwarding and isolation.
  • the tag value corresponding to the custom tunnel type can be represented by 24 bits. If the network size is large, the tag value corresponding to the custom tunnel can be performed. To expand the capacity, for example, when the controller finds that the label value corresponding to the custom tunnel type in the current network is insufficient, you can expand the label value corresponding to the custom tunnel type.
  • the label value corresponding to all the current custom tunnel types may be forward-filled or forward-completed by 1 to ensure that the new custom tunnel type is compatible with the original custom tunnel type, and the custom tunnel is
  • the tag value corresponding to the type is expanded. For example, if the label value corresponding to the defined tunnel type is 24 bits, the label value corresponding to the custom tunnel type can be expanded to 32 bits after the first 8 bits are complemented or complemented by one.
  • the method may further include: when there is a newly-connected switch, the controller first determines a tunnel type supported by the switch, and then generates a switch supported by the newly-connected network. The code corresponding to the tunnel type, and finally the tunnel type code mapping table is updated according to the code corresponding to the tunnel type supported by the newly-connected switch.
  • the controller can perform capability negotiation with the newly-connected switch to determine the tunnel type supported by the switch, and then update the tunnel type coding table in real time.
  • tunnel type For the embodiment of the present invention, by updating the tunnel type supported by the newly-connected switch and the code corresponding to the tunnel type into the tunnel type coding mapping table, it can be ensured that all the switches supported by all the switches in the network system are included in the tunnel type coding table. Tunnel type.
  • the controller determines whether the last hop Openflow switch is an Openflow switch supporting the OXM-OF-TUNNEL-ID matching domain.
  • both Packets can be forwarded directly according to the value of the OXM-OF-TUNNEL-ID matching field.
  • the previous switch is an Openflow switch supporting the OXM-OF-TUNNEL-ID matching domain
  • the next hop switch is a traditional switch
  • the OXM-OF-TUNNEL needs to be first supported in the first hop.
  • the data packet is encapsulated according to the tunnel type supported by the traditional switch, and then the encapsulated data packet is forwarded to the next-hop legacy switch.
  • the method may further include: the controller receiving the new flow forwarding request sent by the last hop Openflow switch, and calculating the forwarding path according to the new flow forwarding request.
  • the controller receives a new flow forwarding request (packet_in) sent by the Openflow switch, so that the controller can be triggered to generate an OXM-OF-TUNNEL-ID matching domain according to the tunnel type supported by the traditional traditional switch.
  • packet_in a new flow forwarding request sent by the Openflow switch
  • the new flow forwarding request may carry the user requirements and the service requirements, so that the controller can calculate the forwarding path according to the user requirements and the service requirements, and determine the tunnel type supported by each switch on the forwarding path.
  • the controller can calculate the forwarding path, so that the current network topology can be perceived, and then the dynamic decision can be made. Generate a flow entry.
  • the controller determines the tunnel type supported by the next hop switch.
  • the controller obtains a code corresponding to the tunnel type in the tunnel type coding mapping table, and generates a label value corresponding to the tunnel type.
  • the code of the tunnel type obtained by the controller according to the VLAN tunnel type is 00000001
  • the value of the generated tunnel type can be 00000000000000 00000000000000000000001111111110001000.
  • the controller combines the code corresponding to the tunnel type and the tag value corresponding to the tunnel type to generate an OXM-OF-TUNNEL-ID matching domain.
  • the code of the tunnel type obtained by the controller according to the VLAN tunnel type is 00000001
  • the value of the generated tunnel type can be 00000000 000000000000000000001111111110001000
  • the resulting OXM OF TUNNEL ID is 000000010000000000000000000 000000000000000001111111110001000
  • the controller sends a forwarding policy to the Openflow switch.
  • the controller sends a forwarding policy to the OpenFlow switch by the controller, so that the OpenFlow switch encapsulates the data packet according to the coding type corresponding to the tunnel type and the label value corresponding to the tunnel type.
  • the forwarding policy carries an OXM-OF-TUNNEL-ID matching domain.
  • the controller sends a forwarding policy to the OpenFlow switch by the controller, so that the last hop Openflow switch encapsulates the data packet according to the tunnel type supported by the traditional switch according to the forwarding policy.
  • the next hop switch may be a traditional switch or an Op enflo w switch.
  • the tunnel type supported by the traditional switch can be VLAN, VxLAN, or GRE.
  • the Openflow switch can support the OXM-OF-TUNNEL-ID matching domain.
  • the next hop switch is the next hop exchange of the last hop Openflow switch.
  • the previous hop Op enflo w switch is the last hop switch of the next hop switch.
  • next hop switch of the last hop Op enflo w switch is a traditional switch
  • the method provided by the embodiment of the present invention can be followed.
  • One-hop encoding and label value of the tunnel type supported by the traditional switch, and the data packet is encapsulated, so that the data packet can be directly exchanged between the last hop Openflow switch and the next hop traditional switch, thereby avoiding the gateway or
  • the introduction of the bridge can reduce the forwarding complexity of the data packet.
  • the method provided by the embodiment of the present invention may be used according to the tunnel type supported by the next hop Openflow switch.
  • the data packet is encapsulated so that the data packet can be directly exchanged between the last hop Openflow switch and the next hop Openflow switch.
  • the tunnel type that the Openflow switch can support can be any tunnel type, that is, the tunnel type such as VLAN, VxLAN, or GRE can be supported at the same time.
  • the Openflow switch1 may forward the encapsulated data packet to the switch, and the switch may use the data packet according to the matching tunnel type. Further forwarded to Openflow switch2.
  • the Openflow switch 2 parses the packet format of the received data packet, extracts the label value of the tunnel type, and combines the label value of the tunnel type and the code of the tunnel type preset by the controller.
  • the OXM_OF_TUNNEL_ID matching domain corresponding to the data packet is generated, and the corresponding flow entry is matched in the flow table.
  • the controller first combines the coding and label values corresponding to the tunnel type supported by the next hop switch to generate an OXM-OF-TUNNEL-ID matching domain, and up-hops the Openflow switch.
  • the last hop Openflow switch sends the encapsulated packet to the next hop switch.
  • the embodiment of the present invention Compared with the current forwarding of the data packet by the gateway or the bridge, the embodiment of the present invention generates the OXM-OF-TUNNEL-ID matching domain by using the tunnel type supported by the next hop switch, and sends the hop to the Open hop switch.
  • the forwarding policy carrying the OXM-OF-TUNNEL-ID matching domain enables the last hop Openflow switch to encapsulate the data packet according to the tunnel type supported by the switch, thereby avoiding introducing tunnel switching and mapping in the forwarding process of the data packet.
  • Mechanisms, gateways, or bridges which in turn can reduce the forwarding complexity of packets.
  • the embodiment of the present invention provides another method for selecting a tunnel type. As shown in FIG. 4, the method includes:
  • the Openflow switch receives a forwarding policy sent by the controller.
  • the forwarding policy carries an OXM-OF-TUNNEL-ID matching domain.
  • the Openflow switch receives the forwarding policy sent by the controller, so that the Openflow switch encapsulates the data packet according to the tunnel type supported by the traditional switch according to the forwarding policy.
  • the tunnel types supported by the traditional switch include VLAN, VxLAN, and GRE. Among them, different traditional switches can support different tunnel types.
  • the tunnel types supported by the traditional switch may include V L AN, VxLAN, GRE, and the like.
  • different traditional switches can support different tunnel types.
  • the Openflow switch is a switch that can support the OXM-OF-TUNNEL-ID matching domain.
  • the OXM-OF-TUNNEL-ID matching domain can be applied to many different tunnel types.
  • the OXM-OF-TUNNEL-ID matching domain can support: VLAN tunnel type mode, VxLAN tunnel type mode, GRE tunnel type mode, mixed mode of VLAN tunnel type and VxLAN tunnel type, mixed mode of VLAN tunnel type and GRE tunnel type, Mixed mode of VxLAN tunnel type and GRE tunnel type.
  • the OXM-OF-TUNNEL-ID matching domain may also be applied to a custom tunnel type. 402.
  • the Openflow switch extracts the code corresponding to the tunnel type supported by the next hop switch and the label value corresponding to the tunnel type from the OXM-OF-TUNNEL-ID matching domain.
  • step 402 may be that the value of the OXM_OF_TUNNEL_ID received by the Openflow switch is: 00000001000000000000000000000 000000000001111111110001000, and the code type corresponding to the tunnel type supported by the next hop switch extracted from the switch is 00000001, and the tunnel type supported by the next hop switch Corresponding label
  • the Openflow switch encapsulates the data packet according to the code corresponding to the tunnel type and the label value corresponding to the tunnel type.
  • the Openflow switch may determine the corresponding tunnel type as a VLAN tunnel type according to the code 00000001 corresponding to the tunnel type and the label value corresponding to the tunnel type, and then encapsulate the data packet according to the format corresponding to the VLAN tunnel type. .
  • the coding of the tunnel type may be represented by 8 bits (bits) or by 16 bits, which is not limited by the embodiment of the present invention.
  • the 64-bit OXM-OF-TUNNEL-ID matching domain is split, and some of the bits are used as the coding corresponding to the tunnel type, and the remaining bits are used as the labels corresponding to the tunnel type. value.
  • the first 8 bits are used as the tunnel type identifier, it is used as the code corresponding to the tunnel type; then the last 56 bits is used as the tunnel type tag value, which is used as the tag value corresponding to the tunnel type.
  • the code corresponding to the tunnel type is used; then the last 48 bits is used as the tunnel type tag value, and is used as the tag value corresponding to the tunnel type.
  • the Openflow switch sends the encapsulated data packet to the next hop switch.
  • the encapsulated data packet is sent to the traditional switch through the Openflow switch, so that the data packet received by the traditional switch is a data packet encapsulated according to the tunnel type supported by the traditional switch.
  • the previous switch is supporting OXM-OF-TUNNEL-ID Matching the Openflow switch of the domain
  • the next hop is also an Openflow switch supporting the OXM-OF-TUNNEL-ID matching domain
  • the data packet can be forwarded directly according to the value of the OXM-OF-TUNNEL-ID matching domain.
  • the previous switch is an OpenFlow switch supporting the OXM-OF-TUNNEL-ID matching domain
  • the next hop switch is a traditional switch
  • the OXM-OF-TUNNEL needs to be supported first in the previous hop.
  • the data packet is encapsulated according to the tunnel type supported by the traditional switch, and then the encapsulated data packet is forwarded to the next-hop legacy switch.
  • the next hop switch may be a traditional switch or an Op enflow switch.
  • the tunnel type supported by the traditional switch can be VL AN, VxLAN or GRE.
  • the Openflow switch can support the OXM-OF-TUNNEL-ID matching domain.
  • the next hop switch is the next hop switch of the last hop Openflow switch; the previous hop Op enflo w switch is the last hop switch of the next hop switch.
  • next hop switch of the last hop Op enflo w switch is a traditional switch
  • the method provided by the embodiment of the present invention can be followed.
  • One-hop encoding and label value of the tunnel type supported by the traditional switch, and the data packet is encapsulated, so that the data packet can be directly exchanged between the last hop Openflow switch and the next hop traditional switch, thereby avoiding the gateway or
  • the introduction of the bridge can reduce the forwarding complexity of the data packet.
  • the method provided by the embodiment of the present invention may be used according to the tunnel type supported by the next hop Openflow switch.
  • the data packet is encapsulated so that the data packet can be directly exchanged between the last hop Openflow switch and the next hop Openflow switch.
  • the tunnel type that the Openflow switch can support can be any tunnel type, that is, the tunnel type such as VLAN, VxLAN, or GRE can be supported at the same time.
  • the Openflow switch 1 when the Openflow switch 1 will be encapsulated After the packet is forwarded to the switch, the switch can forward the packet to Openflow switch2 according to the type of tunnel it matches.
  • the Openflow switch 2 parses the packet format of the received data packet, extracts the label value of the tunnel type, and combines the label value of the tunnel type and the code of the tunnel type preset by the controller.
  • the OXM_OF_TUNNEL-ID matching domain corresponding to the data packet is generated, and the corresponding flow entry is matched in the flow table.
  • the controller first combines the coding and label values corresponding to the tunnel type supported by the next hop switch to generate an OXM-OF-TUNNEL-ID matching domain, and up-hops the Openflow switch.
  • the embodiment of the present invention Compared with the current forwarding of the data packet by the gateway or the bridge, the embodiment of the present invention generates the OXM-OF-TUNNEL-ID matching domain by using the tunnel type supported by the next hop switch, and sends the hop to the Open hop switch.
  • the forwarding policy carrying the OXM-OF-TUNNEL-ID matching domain enables the last hop Openflow switch to encapsulate the data packet according to the tunnel type supported by the switch, thereby avoiding introducing tunnel switching and mapping in the forwarding process of the data packet.
  • Mechanisms, gateways, or bridges which in turn can reduce the forwarding complexity of packets.
  • Another embodiment of the present invention provides a method for selecting a tunnel type. As shown in FIG. 5, the method includes:
  • the Openflow switch receives a forwarding policy sent by the controller.
  • the forwarding policy carries an OXM-OF-TUNNEL-ID matching domain.
  • the Openflow switch receives the forwarding policy sent by the controller, so that the Openflow switch encapsulates the data packet according to the tunnel type supported by the traditional switch according to the forwarding policy.
  • the method further includes: the Openflow switch sending a new flow forwarding request to the controller.
  • the new flow forwarding request (packet_in) is sent to the controller through the Openflow switch, so that the controller can be triggered to generate an OXM-OF-TUNNEL-ID matching domain according to the tunnel type supported by the traditional traditional switch.
  • the new flow forwarding request may carry the user requirement and the service requirement, so that the controller can calculate the forwarding path according to the user requirement and the service requirement, and determine the tunnel type supported by each switch on the forwarding path. .
  • the types of tunnels supported by the traditional switch include VLAN, VxLAN, and GRE.
  • different traditional switches can support different tunnel types.
  • the Openflow switch is a switch that can support the OXM-OF-TUNNEL-ID matching domain.
  • the OXM-OF-TUNNEL-ID matching domain can be applied to many different tunnel types.
  • the OXM-OF-TUNNEL-ID matching domain can support: VLAN tunnel type mode, VxLAN tunnel type mode, GRE tunnel type mode, mixed mode of VLAN tunnel type and VxLAN tunnel type, mixed mode of VLAN tunnel type and GRE tunnel type, Mixed mode of VxLAN tunnel type and GRE tunnel type.
  • the OXM-OF-TUNNEL-ID matching domain may also be applied to a custom tunnel type.
  • the Openflow switch extracts, from the OXM-OF-TUNNEL-ID matching domain, a code corresponding to the tunnel type supported by the next hop switch and a label value corresponding to the tunnel type.
  • the Openflow switch extracts the coding code corresponding to the tunnel type in part of the OXM-OF-TUNNEL-ID matching field, and extracts the label value corresponding to the tunnel type in the other bit positions of the OXM-OF-TUNNEL-ID matching field.
  • the value of the OXM-OF-TUNNEL_ID received by the Openflow switch is:
  • the code of the tunnel type supported by the next hop switch is 00000001, and the label type of the tunnel type supported by the next hop switch is 000000000000000. 0000000000000000000001111111110001000. Further, the Openflow switch can determine that the corresponding tunnel type is a VLAN tunnel type.
  • the coding of the tunnel type may be represented by 8 bits (bits) or by 16 bits, which is not limited by the embodiment of the present invention.
  • the 64-bit OXM-OF-TUNNEL-ID matching domain is split, and some of the bits are used as the coding corresponding to the tunnel type, and the remaining bits are used as the labels corresponding to the tunnel type. value.
  • the first 8 bits are used as the tunnel type identifier, it is used as the code corresponding to the tunnel type; then the last 56 bits is used as the tunnel type tag value, which is used as the tag value corresponding to the tunnel type.
  • the code corresponding to the tunnel type is used; then the last 48 bits is used as the tunnel type tag value, and is used as the tag value corresponding to the tunnel type.
  • the correspondence between the coding type of the tunnel type and the tunnel type is pre-configured by the controller and stored in the tunnel type coding mapping table.
  • the correspondence between the tunnel type pre-configured by the controller and the code corresponding to the tunnel type is: the code corresponding to the custom tunnel type mode is 00000000; the code corresponding to the VLAN tunnel type mode is 00000001; the code corresponding to the VxLAN tunnel type mode The code corresponding to the GRE tunnel type mode is 00000011; the code corresponding to the mixed mode of the VLAN tunnel type and the VxLAN tunnel type is 00000100; the code corresponding to the mixed mode of the VLAN tunnel type and the GRE tunnel type is 00000101; VxLAN tunnel type and GRE tunnel The code corresponding to the type mixed mode is 00000110.
  • the tunnel type encoding mapping table can be as shown in the following table:
  • VxL AN tunnel type and GRE tunnel
  • the tunnel type coding mapping table may include a custom tunnel type and an encoding corresponding to the custom tunnel type.
  • the OXM-OF-TUNNEL-ID matching domain can support the custom tunnel type, thereby implementing the Openflow switch. Encapsulate according to the custom tunnel type supported by traditional switches.
  • the label value corresponding to the customized tunnel type may be represented by a small number of bits, and according to the custom tunnel.
  • the tag value corresponding to the type encapsulates the data packet, and performs data forwarding and isolation.
  • the tag value corresponding to the custom tunnel type can be represented by 24 bits. If the network size is large, the tag value corresponding to the custom tunnel can be performed. To expand the capacity, for example, when the controller finds that the label value corresponding to the custom tunnel type in the current network is insufficient, you can expand the label value corresponding to the custom tunnel type.
  • the label value corresponding to all the current custom tunnel types may be forward-filled or forward-completed by 1 to ensure that the new custom tunnel type is compatible with the original custom tunnel type, and the custom tunnel is
  • the tag value corresponding to the type is expanded. For example, if the label value corresponding to the defined tunnel type is 24 bits, the label value corresponding to the custom tunnel type can be expanded to 32 bits after the first 8 bits are complemented or complemented by one.
  • the Openflow switch encapsulates the data packet according to the code corresponding to the tunnel type and the label value corresponding to the tunnel type.
  • the Openflow switch sends the encapsulated data packet to the next hop switch.
  • the encapsulated data packet is sent to the traditional switch through the Openflow switch, so that the data packet received by the traditional switch is a data packet encapsulated according to the tunnel type supported by the traditional switch.
  • both Packets can be forwarded directly according to the value of the OXM-OF-TUNNEL-ID matching field.
  • the previous switch is an OpenFlow switch supporting the OXM-OF-TUNNEL-ID matching domain
  • the next hop switch is a traditional switch
  • the OXM-OF-TUNNEL needs to be supported first in the previous hop.
  • the data packet is encapsulated according to the tunnel type supported by the traditional switch, and then the encapsulated data packet is forwarded to the next-hop legacy switch.
  • the next hop switch may be a traditional switch or an Op enflow switch.
  • the tunnel type supported by the traditional switch can be VL AN, VxLAN or GRE.
  • the Openflow switch can support the OXM-OF-TUNNEL-ID matching domain.
  • the next hop switch is the next hop switch of the last hop Openflow switch; the previous hop Op enflo w switch is the last hop switch of the next hop switch.
  • next hop switch of the last hop Op enflo w switch is a traditional switch
  • the method provided by the embodiment of the present invention can be followed.
  • One-hop encoding and label value of the tunnel type supported by the traditional switch, and the data packet is encapsulated, so that the data packet can be directly exchanged between the last hop Openflow switch and the next hop traditional switch, thereby avoiding the gateway or
  • the introduction of the bridge can reduce the forwarding complexity of the data packet.
  • the method provided by the embodiment of the present invention may be used according to the tunnel type supported by the next hop Openflow switch.
  • the data packet is encapsulated, so that the data packet can be directly transmitted on the last hop Openflow switch and the next hop Openflow switch. Exchange between machines.
  • the tunnel type that the Openflow switch can support can be any tunnel type, that is, the tunnel type such as VLAN, VxLAN, or GRE can be supported at the same time.
  • the switch can further forward the data packet to the Openflow switch 2 according to the tunnel type matched by the switch.
  • the Openflow switch 2 parses the packet format of the received data packet, extracts the label value of the tunnel type, and combines the label value of the tunnel type and the code of the tunnel type preset by the controller.
  • the OXM_OF_TUNNEL-ID matching domain corresponding to the data packet is generated, and the corresponding flow entry is matched in the flow table.
  • the controller first combines the coding and label values corresponding to the tunnel type supported by the next hop switch to generate an OXM-OF-TUNNEL-ID matching domain, and up-hops the Openflow switch.
  • the embodiment of the present invention Compared with the current forwarding of the data packet by the gateway or the bridge, the embodiment of the present invention generates the OXM-OF-TUNNEL-ID matching domain by using the tunnel type supported by the next hop switch, and sends the hop to the Open hop switch.
  • the forwarding policy carrying the OXM-OF-TUNNEL-ID matching domain enables the last hop Openflow switch to encapsulate the data packet according to the tunnel type supported by the switch, thereby avoiding introducing tunnel switching and mapping in the forwarding process of the data packet.
  • Mechanisms, gateways, or bridges which in turn can reduce the forwarding complexity of packets.
  • the embodiment of the present invention provides a tunnel type selection device. As shown in FIG.
  • the entity of the device may be a controller, and the device includes: a determining unit 61, an obtaining unit 62, a generating unit 63, and a sending unit 64.
  • the determining unit 61 is configured to determine a tunnel type supported by the next hop switch.
  • the obtaining unit 62 is configured to obtain, in the tunnel type coding mapping table, a code corresponding to the tunnel type determined by the determining unit 61.
  • the generating unit 63 is configured to generate a label value corresponding to the tunnel type, and combine the encoding corresponding to the tunnel type acquired by the obtaining unit 62 and the label value corresponding to the tunnel type to generate an OXM_OF_TUNNEL_ID matching domain.
  • the sending unit 64 is configured to send a forwarding policy to the Up hop Openflow switch.
  • the forwarding policy carries the OXM_OF_TUNNEL_ID matching field generated by the generating unit 63.
  • the determining unit 61 is further configured to determine whether the last hop Openflow switch is an Openflow switch supporting the OXM_OF_TUNNEL_ID matching domain.
  • the determining unit 61 is specifically configured to determine the tunnel type supported by the next hop switch when the last hop Openflow switch is an Openflow switch supporting the OXM-OF-TUNNEL-ID matching domain.
  • the generating unit 62 is further configured to generate codes corresponding to the respective tunnel types.
  • the embodiment of the present invention provides another tunnel type selection device. As shown in FIG. 7, the device may further include: an establishing unit 65.
  • the establishing unit 65 is further configured to establish a tunnel type coding mapping table.
  • the tunnel type coding mapping table includes codes corresponding to the respective tunnel types and the respective tunnel types generated by the generating unit 62.
  • the determining unit 61 is further configured to determine a tunnel type supported by the switch when there is a newly connected switch.
  • the generating unit 62 is further configured to generate a code corresponding to the tunnel type supported by the switch of the newly-incorporated network determined by the determining unit 61.
  • the device may further include: an updating unit 66.
  • the updating unit 66 is configured to update the tunnel type coding mapping table according to the code corresponding to the tunnel type supported by the switch of the newly incoming network generated by the generating unit 62.
  • the tunnel type coding mapping table established by the establishing unit 65 includes a code corresponding to the custom tunnel type and the custom tunnel type.
  • the embodiment of the present invention provides a controller.
  • the controller may include: a processor 81, a transmitter 82, a receiver 83, a memory 84, the receiver 83, and a memory 84 and a processor 81. Connected.
  • the processor 81 is configured to first determine a tunnel type supported by the next hop switch, and then obtain a code corresponding to the tunnel type in the tunnel type coding mapping table, and generate a label value corresponding to the tunnel type, and finally encode and tunnel the tunnel type.
  • the tag values corresponding to the types are combined to generate an OXM_OF_TUNNEL_ID matching field.
  • the transmitter 82 is configured to send a forwarding policy to the upward hop Openflow switch.
  • the forwarding policy may carry the OXM-OF-TUNNEL-ID matching domain generated by the processor 81.
  • the processor 81 is further configured to determine whether the last hop Openflow switch is an Openflow switch supporting the OXM-OF-TUNNEL-ID matching domain.
  • the processor 81 is specifically configured to determine the tunnel type supported by the next hop switch when the last hop Openflow switch is an Openflow switch supporting the OXM-OF-TUNNEL-ID matching domain.
  • the processor 81 is further configured to generate codes corresponding to the respective tunnel types.
  • the processor 81 is further configured to establish a tunnel type coding mapping table.
  • the tunnel type coding mapping table includes codes corresponding to the respective tunnel types and the respective tunnel types.
  • the processor 81 is further configured to determine a tunnel type supported by the switch when there is a newly connected switch.
  • the processor 81 is further configured to generate a code corresponding to a tunnel type supported by the switch that is newly connected to the network.
  • the processor 81 is further configured to update the tunnel type code mapping table according to the code corresponding to the tunnel type supported by the switch that is newly connected to the network.
  • the tunnel type coding mapping table established by the processor 81 includes a custom tunnel type and a code corresponding to the custom tunnel type.
  • the embodiment of the present invention provides a device for selecting a tunnel type.
  • the entity of the device may be an OpenFlow switch, and the device includes: a receiving unit 91, an extracting unit.
  • Encapsulation unit 93 Encapsulation unit 93, transmission unit 94.
  • the receiving unit 91 is configured to receive a forwarding policy sent by the controller.
  • the forwarding policy carries an OXM-OF-TUNNEL-ID matching domain.
  • the extracting unit 92 is configured to extract, from the OXM_OF_TUNNEL_ID matching field received by the receiving unit 91, the code corresponding to the tunnel type supported by the next hop switch and the label value corresponding to the tunnel type.
  • the encapsulating unit 93 is configured to encapsulate the data packet according to the encoding corresponding to the tunnel type extracted by the extracting unit 92 and the label value corresponding to the tunnel type.
  • the sending unit 94 is configured to send the data packet encapsulated by the encapsulating unit 93 to the legacy switch. It should be noted that other corresponding descriptions of the function units in the tunnel type selection device provided in the embodiment of the present invention may be referred to the corresponding description in FIG. 5, and details are not described herein again.
  • An embodiment of the present invention provides an OpenFlow switch, as shown in FIG. 10, the Openflow The switch may include: a receiver 101, a processor 102, a transmitter 103, and a memory 104, the memory 104 being coupled to the processor 102.
  • the receiver 101 is configured to receive a forwarding policy sent by the controller.
  • the forwarding policy carries an OXM-OF-TUNNEL-ID matching domain.
  • the processor 102 is configured to extract, from the OXM-OF-TUNNEL-ID matching field, the identifier of the tunnel type supported by the next hop switch, and the label value corresponding to the tunnel type, and according to the coding type corresponding to the tunnel type. And the label value corresponding to the tunnel type, and encapsulates the data packet.
  • the transmitter 103 is configured to send a processor-encapsulated data packet to the next-hop switch.
  • the apparatus for selecting a tunnel type according to the embodiment of the present invention may implement the foregoing method embodiments.
  • the method and apparatus for selecting a tunnel type provided by the embodiment of the present invention may be applicable to forwarding a data packet in an environment of a hybrid network of an Openflow switch and a traditional switch, but is not limited thereto.
  • the storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).

Landscapes

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

Abstract

本发明实施例公开了一种隧道类型的选择方法及装置,涉及信息技术领域,可以降低数据包的转发复杂度。所述方法包括:首先控制器将下一跳交换机支持的的隧道类型对应的编码及标签值进行组合,生成 OXM_OF_TUNNEL_ID匹配域,并向上一跳Openflow交换机发送携带有该 OXM_OF_TUNNEL_ID匹配域的转发策略;然后上一跳Openflow交换机提取隧道类型对应的编码及标签值,并按照该隧道类型对应的编码及标签值,对数据包进行封装;最后上一跳Openflow交换机向下一跳交换机发送封装后的数据包。本发明实施例适用于在Openflow交换机和传统交换机混合组网的环境下转发数据包。

Description

隧道类型的选择方法及装置
技术领域
本发明涉及信息技术领域, 特别涉及一种隧道类型的选择方法及装 置。
背景技术
在 SDN ( Software Defined Network, 软件定义的网络)环境下, 其接 口协议 Openflow规范定义了一种将控制平面从转发平面中剥离的技术,在 这种模式下, Openflow交换机需要支持各种隧道类型。 其中, 隧道类型包 括: VLAN ( Virtual Local Area Network, 虚拟局域网)、 VxLAN ( Virtual extensible Local Area Network, 虚拟扩展局域网 )、 GRE ( Generic Routing Encapsulation, 通用路由封装) 等。
目前, 在 Openflow交换机和传统交换机混合组网的环境下, 当第一跳 交换机支持的隧道类型与下一跳交换机支持的隧道类型不同时,需要通过 隧道切换及映射机制,从而实现数据包从第一跳交换机转发至下一跳交换 机。
然而, 通过 Openflow交换机及传统交换机对数据包进行转发时, 由于 当相邻交换机之间支持的隧道类型不同时, 需要引入隧道切换及映射机 制, 同时需要在网络中引入网关或者网桥, 从而导致数据包的转发复杂度 较高。
发明内容
本发明实施例提供一种隧道类型的选择方法及装置,可以降低数据包 的转发复杂度。
本发明实施例采用的技术方案为:
第一方面, 本发明实施例提供一种隧道类型的选择方法, 包括: 控制器确定下一跳交换机支持的隧道类型;
所述控制器在隧道类型编码映射表中获取所述隧道类型对应的编码, 并生成所述隧道类型对应的标签值;
所述控制器将所述隧道类型对应的编码及所述隧道类型对应的标签 值进行组合, 生成 OXM— OF— TUNNEL— ID匹配域;
所述控制器向上一跳 Openflow交换机发送转发策略,所述转发策略中 携带有所述 OXM— OF— TUNNEL— ID匹配域, 以使得所述上一跳 Openflow 交换机根据所述隧道类型对应的编码及所述隧道类型对应的标签值,对数 据包进行封装。
结合第一方面, 在第一方面的第一种可能的实现方式中, 所述控制器 确定下一跳交换机支持的隧道类型的步骤之前, 还包括:
所述控制 器确 定所述上一跳 Openflow交换机是否 为 支持 OXM— OF— TUNNEL— ID匹配域的 Openflow交换机;
所述控制器确定下一跳交换机支持的隧道类型的步骤包括:
若所述上一跳 Openflow交换机为支持 OXM— OF— TUNNEL— ID匹配域 的 Op enflo w交换机, 则所述控制器确定所述下一跳交换机支持的隧道类 型。
结合第一方面或者第一方面的第一种可能的实现方式,在第一方面的 第二种可能的实现方式中,所述控制器确定交换机支持的隧道类型的步骤 之前, 还包括:
所述控制器生成各个隧道类型分别对应的编码;
所述控制器建立所述隧道类型编码映射表,所述隧道类型编码映射表 中包括所述各个隧道类型及所述各个隧道类型分别对应的编码。
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的 实现方式中, 所述控制器建立所述隧道类型编码映射表的步骤之后, 还包 括:
当存在新入网的交换机时,所述控制器确定所述新入网的交换机支持 的隧道类型;
所述控制器生成所述新入网的交换机支持的隧道类型对应的编码; 所述控制器按照所述新入网的交换机支持的隧道类型对应的编码,对 所述隧道类型编码映射表进行更新。
结合第一方面或者第一方面的第一种可能的实现方式,或者第一方面 的第二种可能的实现方式, 或者第一方面的第三种可能的实现方式, 在第 一方面的第四种可能的实现方式中,所述隧道类型编码映射表中包括自定 义隧道类型及所述自定义隧道类型对应的编码。 第二方面, 本发明实施例提供一种隧道类型的选择装置, 包括: 确定单元, 用于确定下一跳交换机支持的隧道类型;
获取单元,用于在隧道类型编码映射表中获取所述确定单元确定的所 述隧道类型对应的编码;
生成单元, 用于生成所述隧道类型对应的标签值, 并将所述获取单元 获取的所述隧道类型对应的编码及所述隧道类型对应的标签值进行组合, 生成 OXM— OF— TUNNEL— ID匹配域;
发送单元, 用于向上一跳 Openflow交换机发送转发策略, 所述转发策 略中携带有所述生成单元生成的所述 OXM— OF— TUNNEL— ID匹配域。
结合第二方面, 在第二方面的第一种可能的实现方式中,
所述确定单元, 还用于确定所述上一跳 Openflow交换机是否为支持 OXM— OF— TUNNEL— ID匹配域的 Openflow交换机;
所述确定单元, 具体用于当所述上一跳 Openflow交换机为支持 OXM— OF— TUNNEL— ID匹配域的 Openflow交换机时,确定所述下一跳交换 机支持的隧道类型。
结合第二方面或者第二方面的第一种可能的实现方式,在第二方面的 第二种可能的实现方式中,
所述生成单元, 还用于生成各个隧道类型分别对应的编码;
所述装置还包括: 建立单元;
所述建立单元, 还用于建立所述隧道类型编码映射表, 所述隧道类型 编码映射表中包括所述各个隧道类型及所述生成单元生成的所述各个隧 道类型分别对应的编码。
结合第二方面的第二种可能的实现方式,在第二方面的第三种可能的 实现方式中,
所述确定单元, 还用于当存在新入网的交换机时, 确定所述交换机支 持的隧道类型;
所述生成单元,还用于生成所述确定单元确定的所述新入网的交换机 支持的隧道类型对应的编码;
所述装置还包括: 更新单元;
所述更新单元,用于按照所述生成单元生成的所述新入网的交换机支 持的隧道类型对应的编码, 对所述隧道类型编码映射表进行更新。
结合第二方面或者第二方面的第一种可能的实现方式,或者第二方面 的第二种可能的实现方式, 或者第二方面的第三种可能的实现方式, 在第 二方面的第四种可能的实现方式中,
所述建立单元建立的所述隧道类型编码映射表中包括自定义隧道类 型及所述自定义隧道类型对应的编码。 第三方面, 本发明实施例提供一种控制器, 包括:
处理器, 用于首先确定下一跳交换机支持的隧道类型, 然后在隧道类 型编码映射表中获取所述隧道类型对应的编码,并生成所述隧道类型对应 的标签值,最后将所述隧道类型对应的编码及所述隧道类型对应的标签值 进行组合, 生成 OXM— OF— TUNNEL— ID匹配域;
发送器, 用于向上一跳 Openflow交换机发送转发策略, 所述转发策略 中携带有所述处理器生成的所述 OXM— OF— TUNNEL— ID匹配域。
结合第三方面, 在第三方面的第一种可能的实现方式中,
所述处理器, 还用于确定所述上一跳 Openflow交换机是否为支持
OXM— OF— TUNNEL— ID匹配域的 Openflow交换机; 所述处理器, 具体用于当所述上一跳 Openflow交换机为支持 OXM— OF— TUNNEL— ID匹配域的 Openflow交换机时,确定所述下一跳交换 机支持的隧道类型。
结合第三方面或者第三方面的第一种可能的实现方式,在第三方面的 第二种可能的实现方式中,
所述处理器, 还用于生成各个隧道类型分别对应的编码;
所述处理器, 还用于建立所述隧道类型编码映射表, 所述隧道类型编 码映射表中包括所述各个隧道类型及所述各个隧道类型分别对应的编码。
结合第三方面的第二种可能的实现方式,在第三方面的第三种可能的 实现方式中,
所述处理器, 还用于当存在新入网的交换机时, 确定所述交换机支持 的隧道类型;
所述处理器,还用于生成所述新入网的交换机支持的隧道类型对应的 编码;
所述处理器,还用于按照所述新入网的交换机支持的隧道类型对应的 编码, 对所述隧道类型编码映射表进行更新。
结合第三方面或者第三方面的第一种可能的实现方式,或者第三方面 的第二种可能的实现方式, 或者第三方面的第三种可能的实现方式, 在第 三方面的第四种可能的实现方式中,
所述处理器建立的所述隧道类型编码映射表中包括自定义隧道类型 及所述自定义隧道类型对应的编码。 第四方面, 本发明实施例提供一种隧道类型的选择方法, 包括:
Openflow交换机接收控制器发送的转发策略,所述转发策略中携带有
OXM— OF— TUNNEL— ID匹配域;
所述 Openflow交换机从所述 OXM— OF— TUNNEL— ID匹配域中,提取下 一跳交换机支持的隧道类型对应的编码及所述隧道类型对应的标签值; 所述 Openflow交换机按照所述隧道类型对应的编码及所述隧道类型 对应的标签值, 对数据包进行封装;
所述 Openflow交换机向所述下一跳交换机发送封装后的数据包。 第五方面, 本发明实施例提供一种隧道类型的选择装置, 包括: 接收单元, 用于接收控制器发送的转发策略, 所述转发策略中携带有
OXM— OF— TUNNEL— ID匹配域;
提取单元, 用于从所述接收单元接收的所述 OXM— OF— TUNNEL— ID 匹配域中,提取下一跳交换机支持的隧道类型对应的编码及所述隧道类型 对应的标签值;
封装单元,用于按照所述提取单元提取的所述隧道类型对应的编码及 所述隧道类型对应的标签值, 对数据包进行封装;
发送单元,用于向所述下一跳交换机发送所述封装单元封装后的数据 包。 第六方面, 本发明实施例提供一种 Openflow交换机, 包括:
接收器, 用于接收控制器发送的转发策略, 所述转发策略中携带有 OXM— OF— TUNNEL— ID匹配域;
处理器,用于从所述接收器接收的所述 OXM— OF— TUNNEL— ID匹配域 中,提取下一跳交换机支持的隧道类型对应的编码及所述隧道类型对应的 标签值, 并按照所述隧道类型对应的编码及所述隧道类型对应的标签值, 对数据包进行封装;
发送器, 用于向所述下一跳交换机发送所述处理器封装后的数据包。 本发明实施例提供的隧道类型的选择方法及装置,首先控制器将下一 跳交换机支持的隧道类型对应的编码及标签值进行组合, 生成 OXM— OF— TUNNEL— ID匹配域,并向上一跳 Openflow交换机发送携带有该 OXM— OF— TUNNEL— ID匹配域的转发策略;然后上一跳 Openflow交换机从 接收到的 OXM— OF— TUNNEL— ID匹配域中,提取隧道类型对应的编码及标 签值, 并按照该隧道类型对应的编码及标签值, 对数据包进行封装; 最后 上一跳 Openflow交换机向下一跳交换机发送封装后的数据包。与目前通过 引入网关或者网桥对数据包进行转发相比,本发明实施例通过控制器按照 下一跳交换机支持的隧道类型生成 OXM— OF— TUNNEL— ID匹配域,并向上 一跳 Openflow交换机发送携带有该 OXM— OF— TUNNEL— ID匹配域的转发 策略,能够使得上一跳 Openflow交换机按照交换机支持的隧道类型对数据 包进行封装, 从而可以避免在数据包的转发过程中引入隧道切换、 映射机 制、 网关或者网桥, 进而可以降低数据包的转发复杂度。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍, 显而易见地, 下面描述中 的附图仅仅是本发明的一些实施例, 对于本领域普通技术人员来讲, 在不 付出创造性劳动的前提下, 还可以根据这些附图获得其它的附图。
图 1为本发明实施例提供的***架构示意图;
图 2为本发明实施例提供的一种隧道类型的选择方法流程图; 图 3为本发明实施例提供的又一种隧道类型的选择方法流程图; 图 4为本发明实施例提供的又一种隧道类型的选择方法流程图; 图 5为本发明实施例提供的又一种隧道类型的选择方法流程图; 图 6为本发明实施例提供的一种隧道类型的选择装置的结构示意图; 图 7为本发明实施例提供的又一种隧道类型的选择装置的结构示意 图;
图 8为本发明实施例提供的一种控制器的结构示意图;
图 9为本发明实施例提供的又一种隧道类型的选择装置的结构示意 图;
图 10为本发明实施例提供的一种 Openflow交换机的结构示意图。 具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进 行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例, 而不是全部的实施例。 基于本发明中的实施例, 本领域普通技术人员在没 有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的 范围。
为使本发明技术方案的优点更加清楚,下面结合附图和实施例对本发 明作详细说明。 本发明实施例提供的技术方案可以用于 Openflow交换机和传统交换 机混合组网的***架构, 如图 1所示。 SDN ( Software Defined Network, 软件定义网络) 中的控制器集群 (Controller Cluster ) 为本发明实施例中 的控制器; Openflow switch 1及 Openflow switch 2为本发明实施例中的 Openflow交换机, 可以支持 OXM— OF— TUNNEL— ID匹配域, 同时允许支持 自定义隧道类型, Openflow switch 1为本发明实施例中的上一跳 Openflow 交换机; switch为本发明实施例中的下一跳交换机, 可以支持隧道类型 VLAN、 VxLAN及 GRE等; 本发明实施例中的交换机可以为传统交换机, 也可以为 Openflow交换机。在 Openflow交换机和传统交换机混合组网的网 络***中, 数据包按照图中实线并带有箭头的路径进行转发, 具体地, 数 据包首先由源端 Op enflow交换机转发至传统交换机,然后由该传统交换机 转发至目的端 Openflow交换机。 本发明实施例提供一种隧道类型的选择方法, 如图 2所示, 所述方法 包括:
201、 控制器确定下一跳交换机支持的隧道类型。
其中, 下一跳交换机支持的隧道类型包括 VLAN、 VxLAN及 GRE等。 在本发明实施例中, 不同的交换机可以支持不同的隧道类型。 202、 控制器在隧道类型编码映射表中获取隧道类型对应的编码, 并 生成隧道类型对应的标签值。
对 于 本 发 明 实 施 例 , Openflow 交 换 机 均 为 可 以 支 持 OXM— OF— TUNNEL— ID匹配域的交换机。
其中 , OXM— OF— TUNNEL— ID匹配域可以适用多种不同的隧道类型。 例如, OXM— OF— TUNNEL— ID匹配 i或可以支持: VLAN隧道类型模式、 VxLAN隧道类型模式、 GRE隧道类型模式、 VLAN隧道类型与 VxLAN隧 道类型的混合模式、 VLAN隧道类型与 GRE隧道类型混合模式、 VxLANPi 道类型 与 GRE隧道类型 混合模式等 。 在本发明 实施例 中 , OXM— OF— TUNNEL— ID匹配域还可以适用自定义隧道类型。
对于本发明实施例, 控制器可以在隧道类型编码映射表中, 获取隧道 类型对应的编码。 其中, 隧道类型对应的编码可以通过 8bits (比特)进行 表示, 也可以通过 16bits进行表示, 本发明实施例不做限定。 在本发明实 施例中, 若隧道类型对应的编码通过 8bits进行表示, 此时, 隧道类型编码 映射表可以如下表所示:
Figure imgf000010_0001
其中, 按照该隧道类型编码映射表, 00000000代表自定义隧道类型; 00000001代表 VLAN隧道类型; 00000010代表 VxLAN隧道类型; 00000011 代表 GRE隧道类型; 00000100代表 VLAN隧道类型与 VxLAN隧道类型的混 合模式; 00000101代表 VLAN隧道类型与 GRE隧道类型混合模式; 00000110代表 VxLAN隧道类型与 GRE隧道类型混合模式。
例如步骤 202可以为, 控制器在隧道类型编码映射表中获取的隧道类 型 VLAN对应的编码可以为 00000001 , 生成的隧道类型对应的标签值为 00000000000000000000000000000000000000001111111110001000。
203、 控制器将隧道类型对应的编码及隧道类型对应的标签值进行组 合, 生成 OXM— OF— TUNNEL— ID匹配域。
例如步骤 203可以为, 控制器可以将隧道类型对应的编码 00000001及
1111111110001000进行组合, 生成的 OXM— OF— TUNNEL— ID匹配域可以为 0。
204、 控制器向上一跳 Openflow交换机发送转发策略。
进一步地, 通过控制器向上一跳 Openflow交换机发送转发策略, 以使 得上一跳 Openflow交换机根据隧道类型对应的编码及隧道类型对应的标 签值, 对数据包进行封装。
其中, 转发策略中携带有 OXM— OF— TUNNEL— ID匹配域。 在本发明实 施例中, 通过控制器向上一跳 Openflow交换机发送转发策略, 以使得该上 一跳 Openflow交换机按照转发策略,对数据包按照下一跳传统交换机支持 的隧道类型进行封装。
对于本发明实施例, 下一跳交换机可以为传统交换机, 也可以为 Op enflow交换机。其中,传统交换机支持的隧道类型可以为 VLAN、 VxLAN 或者 GRE等, Openflow交换机可以支持 OXM— OF— TUNNEL— ID匹配域。 在 本发明实施例中, 下一跳交换机为上一跳 Openflow交换机的下一跳交换 机; 上一跳 Op enflo w交换机为下一跳交换机的上一跳交换机。
一方面, 当上一跳 Op enflo w交换机的下一跳交换机为传统交换机时, 与目前通过引入网关或者网桥对数据包进行转发相比,通过本发明实施例 提供的方法,可以按照该下一跳传统交换机支持的隧道类型的编码及标签 值, 将数据包进行封装, 从而可以实现该数据包直接在上一跳 Openflow 交换机及该下一跳传统交换机之间进行交换,进而可以避免网关或者网桥 的引入, 可以降低数据包的转发复杂度。
另一方面,当上一跳 Openflow交换机的下一跳交换机为 Openflow交换 机时, 也可以通过本发明实施例提供的方法, 按照下一跳 Openflow交换机 支持的隧道类型, 对来自上一跳 Openflow交换机的数据包进行封装, 从而 可以实现该数据包直接在上一跳 Openflow交换机及下一跳 Openflow交换 机之间进行交换。 在本发明实施例中, Openflow交换机可以支持的隧道类 型可以为任意隧道类型, 即可以同时支持 VLAN、 VxLAN或者 GRE等隧道 类型。
对于本发明实施例, 如图 1所示, 当控制器向 Openflow switch 1发送转 发策略之后, Openflow switchl可以将封装之后的数据包转发给 switch, switch可以根据自身匹配的隧道类型, 将该数据包进一步转发给 Openflow switch2。 在本发明实施例中, Openflow switch2解析接收到的数据包的分 装格式, 从中提取隧道类型的标签值, 并根据该隧道类型的标签值及控制 器预先设定的该隧道类型 的编码, 组合生成该数据包对应的 OXM— OF— TUNNEL— ID匹配域, 同时在其流表中匹配对应的流表项。
本发明实施例提供的隧道类型的选择方法,首先控制器将下一跳交换 机支持 的 隧道类 型 对应 的 编码及标签值进行组合 , 生 成 OXM— OF— TUNNEL— ID匹配域,并向上一跳 Openflow交换机发送携带有该 OXM— OF— TUNNEL— ID匹配域的转发策略;然后上一跳 Openflow交换机从 接收到的 OXM— OF— TUNNEL— ID匹配域中,提取隧道类型对应的编码及标 签值, 并按照该隧道类型对应的编码及标签值, 对数据包进行封装; 最后 上一跳 Openflow交换机向下一跳交换机发送封装后的数据包。与目前通过 引入网关或者网桥对数据包进行转发相比,本发明实施例通过控制器按照 下一跳交换机支持的隧道类型生成 OXM— OF— TUNNEL— ID匹配域,并向上 一跳 Openflow交换机发送携带有该 OXM— OF— TUNNEL— ID匹配域的转发 策略,能够使得上一跳 Openflow交换机按照交换机支持的隧道类型对数据 包进行封装, 从而可以避免在数据包的转发过程中引入隧道切换、 映射机 制、 网关或者网桥, 进而可以降低数据包的转发复杂度。 本发明实施例提供又一种隧道类型的选择方法, 如图 3所示, 所述方 法包括:
301、 控制器生成各个隧道类型分别对应的编码。
例如,控制器可以生成: 自定义隧道类型模式对应的编码为 00000000; VLAN隧道类型模式对应的编码为 00000001; VxLAN隧道类型模式对应的 编码为 00000010; GRE隧道类型模式对应的编码为 00000011 ; VLANPi 道 类型与 VxLAN隧道类型的混合模式对应的编码为 00000100; VLAN隧道类 型与 GRE隧道类型混合模式对应的编码为 00000101; VxLAN隧道类型与 GRE隧道类型混合模式对应的编码为 00000110。
其中, 隧道类型对应的编码可以为 8bits , 也可以为 16bits , 本发明实 施例不做限定。 在本发明实施例中, 对 64b its的 OXM— OF— TUNNEL— ID匹 配域进行拆分, 将其中的部分比特位用作表示隧道类型对应的编码, 其余 部分比特位用作表示隧道类型对应的标签值。 例如, 若将前 8bits作为隧道 类型标识符 ( tunnel type ), 用作表示隧道类型对应的编码; 则将后 56bits 作为隧道类型标签值 ( tunnel ID ), 用作表示隧道类型对应的标签值。 再 例如, 若将前 16bits作为隧道类型标识符, 用作表示隧道类型对应的编码; 则将后 48bits作为隧道类型标签值, 用作表示隧道类型对应的标签值。
302、 控制器建立隧道类型编码映射表。
其中,隧道类型编码映射表中包括各个隧道类型及各个隧道类型分别 对应的编码。
对于本发明实施例, 传统交换机支持的隧道类型包括 VLAN、 VxLAN 及 GRE等。 在本发明实施例中, 不同的传统交换机可以支持不同的隧道类 型。
对 于 本 发 明 实 施 例 , Openflow 交 换 机 均 为 可 以 支 持 OXM— OF— TUNNEL— ID匹配域的交换机。 其中, OXM— OF— TUNNEL— ID 匹配域可以适用多种不同的隧道类型。 例如, OXM— OF— TUNNEL— ID匹配 域可以支持: VLAN隧道类型模式、 VxLAN隧道类型模式、 GRE隧道类型 模式、 VLAN隧道类型与 VxLAN隧道类型的混合模式、 VLAN隧道类型与 GRE隧道类型混合模式、 VxLAN隧道类型与 GRE隧道类型混合模式等。 在本发明实施例中, OXM— OF— TUNNEL— ID匹配域还可以适用自定义隧道 类型。
对于本发明实施例, 通过建立隧道类型编码映射表, 能够根据传统交 换机支持的隧道类型获取与其对应的隧道类型编码, 从而可以实现 Openflow交换机按照传统交换机支持的隧道类型对数据包进行封装。在本 发明实施例中, 若隧道类型对应的编码通过 8bits进行表示, 此时, 隧道类 型编码映射表可以如下表所示:
Figure imgf000014_0001
VxLAN隧道类型与 GRE隧
00000110
道类型混合模式
其中, 按照该隧道类型编码映射表, 00000000代表自定义隧道类型; 00000001代表 VLAN隧道类型; 00000010代表 VxLAN隧道类型; 00000011 代表 GRE隧道类型; 00000100代表 VLAN隧道类型与 VxLAN隧道类型的混 合模式; 00000101代表 VLAN隧道类型与 GRE隧道类型混合模式; 00000110代表 VxLAN隧道类型与 GRE隧道类型混合模式。
可选地,隧道类型编码映射表中可以包括自定义隧道类型及该自定义 隧道类型对应的编码。
对于本发明实施例,通过在隧道类型映射表中包括自定义隧道类型及 该自定义隧道类型对应的编码,可以实现 OXM— OF— TUNNEL— ID匹配域支 持自定义隧道类型,从而可以实现 Openflow交换机按照传统交换机支持的 自定义隧道类型进行封装。
对于本发明实施例,当传统交换机支持的隧道类型为自定义隧道类型 时, 若网络规模较小, 则可以通过较少的比特数表示自定义隧道类型对应 的标签值, 并按照该自定义隧道类型对应的标签值对数据包进行封装, 进 行数据转发及隔离等, 例如, 可以通过 24bits表示自定义隧道类型对应的 标签值; 若网络规模较大, 则可以对自定义隧道对应的标签值进行扩容, 例如, 当控制器发现当前网络中自定义隧道类型对应的标签值不够用时, 可以对自定义隧道类型对应的标签值进行扩容。
其中,可以通过对当前的全部自定义隧道类型对应的标签值进行前向 补 0或者前向补 1 ,从而可以保证新的自定义隧道类型与原自定义隧道类型 兼容的同时, 对自定义隧道类型对应的标签值进行扩容。 例如, 若源自定 义隧道类型对应的标签值为 24bits , 则在对前 8bits进行补 0或者补 1之后, 可以将该自定义隧道类型对应的标签值扩展为 32bits。
可选地, 步骤 302之后还可以包括: 当存在新入网的交换机时, 控制 器首先确定该交换机支持的隧道类型,然后生成该新入网的交换机支持的 隧道类型对应的编码,最后按照该新入网的交换机支持的隧道类型对应的 编码, 对隧道类型编码映射表进行更新。
其中, 控制器可以通过与新入网的交换机进行能力协商, 从而确定该 交换机支持的隧道类型, 进而对隧道类型编码表进行实时更新。
对于本发明实施例,通过将新入网的交换机支持的隧道类型及该隧道 类型对应的编码更新入隧道类型编码映射表中,能够保证隧道类型编码表 中包括网络***中的全部交换机所支持的全部隧道类型。
303 、 控 制 器 确 定 上 一 跳 Openflow 交换 机是 否 为 支 持 OXM— OF— TUNNEL— ID匹配域的 Openflow交换机。
对于本发明实施例, 若上一 ^兆交换机为支持 OXM— OF— TUNNEL— ID 匹配域的 Openflow交换机, 并且下一跳也为支持 OXM— OF— TUNNEL— ID 匹 配 域 的 Openflow 交 换 机 , 则 二 者 之 间 可 以 直 接 按 照 OXM— OF— TUNNEL— ID匹配域的值进行数据包的转发。
对于本发明实施例, 若上一 ^兆交换机为支持 OXM— OF— TUNNEL— ID 匹配域的 Openflow交换机, 并且下一跳交换机为传统交换机, 则需要首先 在第一跳支持 OXM— OF— TUNNEL— ID匹配域的 Openflow交换机上,按照传 统交换机支持的隧道类型对数据包进行封装,然后将封装之后的数据包转 发至下一跳传统交换机。
可选地, 步骤 303之前, 还可以包括: 控制器接收上一跳 Openflow交 换机发送的新流转发请求, 并根据新流转发请求, 计算转发路径。
其中 , 通过控制器接收 Openflow交换机发送的新流转发请求 ( packet— in ),从而可以触发控制器按照传统传统交换机支持的隧道类型, 生成 OXM— OF— TUNNEL— ID匹配域。
对于本发明实施例, 新流转发请求中可以携带有用户需求及业务需 求, 以使得控制器可以根据用户需求及业务需求, 计算转发路径, 并确定 该转发路径上各个交换机分别支持的隧道类型。 在本发明实施例中, 控制 器通过计算转发路径, 从而可以感知当前的网络拓朴, 进而可以动态决策 生成流表项。
304、 若上一跳 Openflow交换机为支持 OXM— OF— TUNNEL— ID匹配域 的 Op enflo w交换机, 则控制器确定下一跳交换机支持的隧道类型。
305、 控制器在隧道类型编码映射表中获取隧道类型对应的编码, 并 生成隧道类型对应的标签值。
例如, 控制器按照 VLAN隧道类型, 获取的隧道类型对应的编码为 00000001 , 生成的隧道类型对应的标签值可以为 00000000000000 000000000000000000000000001111111110001000 ο
306、 控制器将隧道类型对应的编码及隧道类型对应的标签值进行组 合, 生成 OXM— OF— TUNNEL— ID匹配域。
例如, 控制器按照 VLAN隧道类型, 获取的隧道类型对应的编码为 00000001 , 生 成 的 隧道类 型 对应 的 标签值 可 以 为 00000000 000000000000000000000000000000001111111110001000 , 最终生 成 的 OXM OF TUNNEL ID 匹 西己 i或 为 0000000100000000000000000000000 000000000000000001111111110001000„
307、 控制器向上一跳 Openflow交换机发送转发策略。
进一步地, 通过控制器向上一跳 Openflow交换机发送转发策略, 以使 得上一跳 Openflow交换机根据隧道类型对应的编码及隧道类型对应的标 签值, 对数据包进行封装。
其中, 转发策略中携带有 OXM— OF— TUNNEL— ID匹配域。 在本发明实 施例中, 通过控制器向上一跳 Openflow交换机发送转发策略, 以使得该上 一跳 Openflow交换机按照转发策略,对数据包按照传统交换机支持的隧道 类型进行封装。
对于本发明实施例, 下一跳交换机可以为传统交换机, 也可以为 Op enflo w交换机。其中,传统交换机支持的隧道类型可以为 VLAN、 VxLAN 或者 GRE等, Openflow交换机可以支持 OXM— OF— TUNNEL— ID匹配域。 在 本发明实施例中, 下一跳交换机为上一跳 Openflow交换机的下一跳交换 机; 上一跳 Op enflo w交换机为下一跳交换机的上一跳交换机。
一方面, 当上一跳 Op enflo w交换机的下一跳交换机为传统交换机时, 与目前通过引入网关或者网桥对数据包进行转发相比,通过本发明实施例 提供的方法,可以按照该下一跳传统交换机支持的隧道类型的编码及标签 值, 将数据包进行封装, 从而可以实现该数据包直接在上一跳 Openflow 交换机及该下一跳传统交换机之间进行交换,进而可以避免网关或者网桥 的引入, 可以降低数据包的转发复杂度。
另一方面,当上一跳 Openflow交换机的下一跳交换机为 Openflow交换 机时, 也可以通过本发明实施例提供的方法, 按照下一跳 Openflow交换机 支持的隧道类型, 对来自上一跳 Openflow交换机的数据包进行封装, 从而 可以实现该数据包直接在上一跳 Openflow交换机及下一跳 Openflow交换 机之间进行交换。 在本发明实施例中, Openflow交换机可以支持的隧道类 型可以为任意隧道类型, 即可以同时支持 VLAN、 VxLAN或者 GRE等隧道 类型。
对于本发明实施例, 如图 1所示, 当控制器向 Openflow switch 1发送转 发策略之后, Openflow switchl可以将封装之后的数据包转发给 switch, switch可以根据自身匹配的隧道类型, 将该数据包进一步转发给 Openflow switch2。 在本发明实施例中, Openflow switch2解析接收到的数据包的分 装格式, 从中提取隧道类型的标签值, 并根据该隧道类型的标签值及控制 器预先设定的该隧道类型 的编码, 组合生成该数据包对应的 OXM— OF— TUNNEL— ID匹配域, 同时在其流表中匹配对应的流表项。
本发明实施例提供的隧道类型的选择方法,首先控制器将下一跳交换 机支持 的 隧道类 型 对应 的 编码及标签值进行组合 , 生 成 OXM— OF— TUNNEL— ID匹配域,并向上一跳 Openflow交换机发送携带有该 OXM— OF— TUNNEL— ID匹配域的转发策略;然后上一跳 Openflow交换机从 接收到的 OXM— OF— TUNNEL— ID匹配域中,提取隧道类型对应的编码及标 签值, 并按照该隧道类型对应的编码及标签值, 对数据包进行封装; 最后 上一跳 Openflow交换机向下一跳交换机发送封装后的数据包。与目前通过 引入网关或者网桥对数据包进行转发相比,本发明实施例通过控制器按照 下一跳交换机支持的隧道类型生成 OXM— OF— TUNNEL— ID匹配域,并向上 一跳 Openflow交换机发送携带有该 OXM— OF— TUNNEL— ID匹配域的转发 策略,能够使得上一跳 Openflow交换机按照交换机支持的隧道类型对数据 包进行封装, 从而可以避免在数据包的转发过程中引入隧道切换、 映射机 制、 网关或者网桥, 进而可以降低数据包的转发复杂度。 本发明实施例提供又一种隧道类型的选择方法, 如图 4所示, 所述方 法包括:
401、 Openflow交换机接收控制器发送的转发策略。
其中, 转发策略中携带有 OXM— OF— TUNNEL— ID匹配域。 在本发明实 施例中, 通过 Openflow交换机接收控制器发送的转发策略, 可以使得该 Openflow交换机按照转发策略,对数据包按照传统交换机支持的隧道类型 进行封装。 在本发明实施例中, 传统交换机支持的隧道类型包括 VLAN、 VxLAN及 GRE等。 其中, 不同的传统交换机可以支持不同的隧道类型。
对于本发明实施例, 传统交换机支持的隧道类型可以包括 V L AN、 VxLAN及 GRE等。 在本发明实施例中, 不同的传统交换机可以支持不同 的隧道类型。
对 于 本 发 明 实 施 例 , Openflow 交 换 机 均 为 可 以 支 持 OXM— OF— TUNNEL— ID匹配域的交换机。 其中, OXM— OF— TUNNEL— ID 匹配域可以适用多种不同的隧道类型。 例如, OXM— OF— TUNNEL— ID匹配 域可以支持: VLAN隧道类型模式、 VxLAN隧道类型模式、 GRE隧道类型 模式、 VLAN隧道类型与 VxLAN隧道类型的混合模式、 VLAN隧道类型与 GRE隧道类型混合模式、 VxLAN隧道类型与 GRE隧道类型混合模式等。 在本发明实施例中, OXM— OF— TUNNEL— ID匹配域还可以适用自定义隧道 类型。 402、 Openflow交换机从 OXM— OF— TUNNEL— ID匹配域中 , 提取下一 跳交换机支持的隧道类型对应的编码及隧道类型对应的标签值。
例 如 步 骤 402 可 以 为 , Openflow 交 换 机 接 收 到 的 OXM— OF— TUNNEL— ID的值为 : 000000010000000000000000000000000 0000000000000001111111110001000 , 从中提取的下一跳交换机支持的隧 道类型对应的编码为 00000001 ,下一跳交换机支持的隧道类型对应的标签
403、 Openflow交换机按照隧道类型对应的编码及隧道类型对应的标 签值, 对数据包进行封装。
例如步骤 403可以为, Openflow交换机可以按照隧道类型对应的编码 00000001及隧道类型对应的标签值 0000000000000000000000000000000 0000000001111111110001000 , 确定对应的隧道类型为 VLAN隧道类型, 并 按照 V L A N隧道类型对应的格式, 对数据包进行封装。
对于本发明实施例, 隧道类型对应的编码可以通过 8bits (比特)进行 表示, 也可以通过 16bits进行表示, 本发明实施例不做限定。 在本发明实 施例中, 对 64bits的 OXM— OF— TUNNEL— ID匹配域进行拆分, 将其中的部 分比特位用作表示隧道类型对应的编码,其余部分比特位用作表示隧道类 型对应的标签值。 例如, 若将前 8bits作为隧道类型标识符, 用作表示隧道 类型对应的编码; 则将后 56bits作为隧道类型标签值, 用作表示隧道类型 对应的标签值。 再例如, 若将前 16bits作为隧道类型标识符, 用作表示隧 道类型对应的编码; 则将后 48bits作为隧道类型标签值, 用作表示隧道类 型对应的标签值。
404、 Openflow交换机向下一跳交换机发送封装后的数据包。
对于本发明实施例 ,通过 Openflow交换机向传统交换机发送封装后的 数据包,以使得传统交换机接收到的数据包为按照该传统交换机支持的隧 道类型进行封装之后的数据包。
对于本发明实施例, 若上一 ^兆交换机为支持 OXM— OF— TUNNEL— ID 匹配域的 Openflow交换机, 并且下一跳也为支持 OXM— OF— TUNNEL— ID 匹 配 域 的 Openflow 交 换 机 , 则 二 者 之 间 可 以 直 接 按 照 OXM— OF— TUNNEL— ID匹配域的值进行数据包的转发。
对于本发明实施例, 若上一 ^兆交换机为支持 OXM— OF— TUNNEL— ID 匹配域的 Openflow交换机, 并且下一跳交换机为传统交换机, 则需要首先 在上一跳支持 OXM— OF— TUNNEL— ID匹配域的 Openflow交换机上,按照传 统交换机支持的隧道类型对数据包进行封装,然后将封装之后的数据包转 发至下一跳传统交换机。
对于本发明实施例, 下一跳交换机可以为传统交换机, 也可以为 Op enflow交换机。其中,传统交换机支持的隧道类型可以为 VL AN、 VxLAN 或者 GRE等, Openflow交换机可以支持 OXM— OF— TUNNEL— ID匹配域。 在 本发明实施例中, 下一跳交换机为上一跳 Openflow交换机的下一跳交换 机; 上一跳 Op enflo w交换机为下一跳交换机的上一跳交换机。
一方面, 当上一跳 Op enflo w交换机的下一跳交换机为传统交换机时, 与目前通过引入网关或者网桥对数据包进行转发相比,通过本发明实施例 提供的方法,可以按照该下一跳传统交换机支持的隧道类型的编码及标签 值, 将数据包进行封装, 从而可以实现该数据包直接在上一跳 Openflow 交换机及该下一跳传统交换机之间进行交换,进而可以避免网关或者网桥 的引入, 可以降低数据包的转发复杂度。
另一方面,当上一跳 Openflow交换机的下一跳交换机为 Openflow交换 机时, 也可以通过本发明实施例提供的方法, 按照下一跳 Openflow交换机 支持的隧道类型, 对来自上一跳 Openflow交换机的数据包进行封装, 从而 可以实现该数据包直接在上一跳 Openflow交换机及下一跳 Openflow交换 机之间进行交换。 在本发明实施例中, Openflow交换机可以支持的隧道类 型可以为任意隧道类型, 即可以同时支持 VLAN、 VxLAN或者 GRE等隧道 类型。
对于本发明实施例, 如图 1所示, 当 Openflow switch 1将封装之后的数 据包转发给 switch之后, switch可以根据自身匹配的隧道类型, 将该数据 包进一步转发给 Openflow switch2。 在本发明实施例中, Openflow switch2 解析接收到的数据包的分装格式, 从中提取隧道类型的标签值, 并根据该 隧道类型的标签值及控制器预先设定的该隧道类型的编码,组合生成该数 据包对应的 OXM— OF— TUNNEL— ID匹配域,同时在其流表中匹配对应的流 表项。
本发明实施例提供的隧道类型的选择方法,首先控制器将下一跳交换 机支持 的 隧道类 型 对应 的 编码及标签值进行组合 , 生 成 OXM— OF— TUNNEL— ID匹配域,并向上一跳 Openflow交换机发送携带有该 OXM— OF— TUNNEL— ID匹配域的转发策略;然后上一跳 Openflow交换机从 接收到的 OXM— OF— TUNNEL— ID匹配域中,提取隧道类型对应的编码及标 签值, 并按照该隧道类型对应的编码及标签值, 对数据包进行封装; 最后 上一跳 Openflow交换机向下一跳交换机发送封装后的数据包。与目前通过 引入网关或者网桥对数据包进行转发相比,本发明实施例通过控制器按照 下一跳交换机支持的隧道类型生成 OXM— OF— TUNNEL— ID匹配域,并向上 一跳 Openflow交换机发送携带有该 OXM— OF— TUNNEL— ID匹配域的转发 策略,能够使得上一跳 Openflow交换机按照交换机支持的隧道类型对数据 包进行封装, 从而可以避免在数据包的转发过程中引入隧道切换、 映射机 制、 网关或者网桥, 进而可以降低数据包的转发复杂度。 本发明实施例提供又一种隧道类型的选择方法, 如图 5所示, 所述方 法包括:
501、 Openflow交换机接收控制器发送的转发策略。
其中, 转发策略中携带有 OXM— OF— TUNNEL— ID匹配域。 在本发明实 施例中, 通过 Openflow交换机接收控制器发送的转发策略, 可以使得该 Openflow交换机按照转发策略,对数据包按照传统交换机支持的隧道类型 进行封装。 可选地, 步骤 501之前, 还可以包括: Openflow交换机向控制器发送 新流转发请求。
其中, 通过 Openflow交换机向控制器发送新流转发请求( packet— in ), 从而可以触发控制器按照传统传统交换机支持的隧道类型, 生成 OXM— OF— TUNNEL— ID匹配域。 在本发明实施例中, 新流转发请求中可以 携带有用户需求及业务需求, 以使得控制器可以根据用户需求及业务需 求,计算转发路径,并确定该转发路径上各个交换机分别支持的隧道类型。
对于本发明实施例, 传统交换机支持的隧道类型包括 VLAN、 VxLAN 及 GRE等。 在本发明实施例中, 不同的传统交换机可以支持不同的隧道类 型。
对 于 本 发 明 实 施 例 , Openflow 交 换 机 均 为 可 以 支 持 OXM— OF— TUNNEL— ID匹配域的交换机。 其中, OXM— OF— TUNNEL— ID 匹配域可以适用多种不同的隧道类型。 例如, OXM— OF— TUNNEL— ID匹配 域可以支持: VLAN隧道类型模式、 VxLAN隧道类型模式、 GRE隧道类型 模式、 VLAN隧道类型与 VxLAN隧道类型的混合模式、 VLAN隧道类型与 GRE隧道类型混合模式、 VxLAN隧道类型与 GRE隧道类型混合模式等。 在本发明实施例中, OXM— OF— TUNNEL— ID匹配域还可以适用自定义隧道 类型。
502、 Openflow交换机从 OXM— OF— TUNNEL— ID匹配域中, 提取下一 跳交换机支持的隧道类型对应的编码及隧道类型对应的标签值。
具体地, Openflow交换机在 OXM— OF— TUNNEL— ID匹配域的部分比特 位中提取隧道类型对应的编码,在 OXM— OF— TUNNEL— ID匹配域的其他比 特位中提取隧道类型对应的标签值。
例如, Openflow交换机接收到的 OXM— OF— TUNNEL— ID的值为:
0 , 从中提取的下一跳交换机支持的隧道类型对应的编码为 00000001 , 下 一跳交换机支持的隧道类型对应的标签值为 0000000000000000000 0000000000000000000001111111110001000。 进一步地, Openflow交换机 可以确定对应的隧道类型为 VLAN隧道类型。
对于本发明实施例, 隧道类型对应的编码可以通过 8bits (比特)进行 表示, 也可以通过 16bits进行表示, 本发明实施例不做限定。 在本发明实 施例中, 对 64bits的 OXM— OF— TUNNEL— ID匹配域进行拆分, 将其中的部 分比特位用作表示隧道类型对应的编码,其余部分比特位用作表示隧道类 型对应的标签值。 例如, 若将前 8bits作为隧道类型标识符, 用作表示隧道 类型对应的编码; 则将后 56bits作为隧道类型标签值, 用作表示隧道类型 对应的标签值。 再例如, 若将前 16bits作为隧道类型标识符, 用作表示隧 道类型对应的编码; 则将后 48bits作为隧道类型标签值, 用作表示隧道类 型对应的标签值。
其中, 隧道类型及隧道类型对应的编码之间的对应关系, 由控制器预 先进行配置, 并存储在隧道类型编码映射表中。 例如, 控制器预先配置的 隧道类型及隧道类型对应的编码之间的对应关系为: 自定义隧道类型模式 对应的编码为 00000000 ; VLAN隧道类型模式对应的编码为 00000001; VxLAN隧道类型模式对应的编码为 00000010; GRE隧道类型模式对应的 编码为 00000011; VLAN隧道类型与 VxLAN隧道类型的混合模式对应的编 码为 00000100; VLAN隧道类型与 GRE隧道类型混合模式对应的编码为 00000101; VxLAN隧道类型与 GRE隧道类型混合模式对应的编码为 00000110。 此时, 隧道类型编码映射表可以如下表所示:
Figure imgf000024_0001
VL AN隧道类型与 VxL AN
00000100
隧道类型的混合模式
VLAN隧道类型与 GREPi 道
00000101
类型混合模式
VxL AN隧道类型与 GRE隧
00000110
道类型混合模式
可选地,隧道类型编码映射表中可以包括自定义隧道类型及该自定义 隧道类型对应的编码。
对于本发明实施例,通过在隧道类型映射表中包括自定义隧道类型及 该自定义隧道类型对应的编码,可以实现 OXM— OF— TUNNEL— ID匹配域支 持自定义隧道类型,从而可以实现 Openflow交换机按照传统交换机支持的 自定义隧道类型进行封装。
对于本发明实施例,当传统交换机支持的隧道类型为自定义隧道类型 时, 若网络规模较小, 则可以通过较少的比特数表示自定义隧道类型对应 的标签值, 并按照该自定义隧道类型对应的标签值对数据包进行封装, 进 行数据转发及隔离等, 例如, 可以通过 24bits表示自定义隧道类型对应的 标签值; 若网络规模较大, 则可以对自定义隧道对应的标签值进行扩容, 例如, 当控制器发现当前网络中自定义隧道类型对应的标签值不够用时, 可以对自定义隧道类型对应的标签值进行扩容。
其中,可以通过对当前的全部自定义隧道类型对应的标签值进行前向 补 0或者前向补 1 ,从而可以保证新的自定义隧道类型与原自定义隧道类型 兼容的同时, 对自定义隧道类型对应的标签值进行扩容。 例如, 若源自定 义隧道类型对应的标签值为 24bits , 则在对前 8bits进行补 0或者补 1之后, 可以将该自定义隧道类型对应的标签值扩展为 32bits。
503、 Openflow交换机按照隧道类型对应的编码及隧道类型对应的标 签值, 对数据包进行封装。
504、 Openflow交换机向下一跳交换机发送封装后的数据包。 对于本发明实施例,通过 Openflow交换机向传统交换机发送封装后的 数据包,以使得传统交换机接收到的数据包为按照该传统交换机支持的隧 道类型进行封装之后的数据包。
对于本发明实施例, 若上一f兆交换机为支持 OXM— OF— TUNNEL— ID 匹配域的 Openflow交换机, 并且下一跳也为支持 OXM— OF— TUNNEL— ID 匹 配 域 的 Openflow 交 换 机 , 则 二 者 之 间 可 以 直 接 按 照 OXM— OF— TUNNEL— ID匹配域的值进行数据包的转发。
对于本发明实施例, 若上一 ^兆交换机为支持 OXM— OF— TUNNEL— ID 匹配域的 Openflow交换机, 并且下一跳交换机为传统交换机, 则需要首先 在上一跳支持 OXM— OF— TUNNEL— ID匹配域的 Openflow交换机上,按照传 统交换机支持的隧道类型对数据包进行封装,然后将封装之后的数据包转 发至下一跳传统交换机。
对于本发明实施例, 下一跳交换机可以为传统交换机, 也可以为 Op enflow交换机。其中,传统交换机支持的隧道类型可以为 VL AN、 VxLAN 或者 GRE等, Openflow交换机可以支持 OXM— OF— TUNNEL— ID匹配域。 在 本发明实施例中, 下一跳交换机为上一跳 Openflow交换机的下一跳交换 机; 上一跳 Op enflo w交换机为下一跳交换机的上一跳交换机。
一方面, 当上一跳 Op enflo w交换机的下一跳交换机为传统交换机时, 与目前通过引入网关或者网桥对数据包进行转发相比,通过本发明实施例 提供的方法,可以按照该下一跳传统交换机支持的隧道类型的编码及标签 值, 将数据包进行封装, 从而可以实现该数据包直接在上一跳 Openflow 交换机及该下一跳传统交换机之间进行交换,进而可以避免网关或者网桥 的引入, 可以降低数据包的转发复杂度。
另一方面,当上一跳 Openflow交换机的下一跳交换机为 Openflow交换 机时, 也可以通过本发明实施例提供的方法, 按照下一跳 Openflow交换机 支持的隧道类型, 对来自上一跳 Openflow交换机的数据包进行封装, 从而 可以实现该数据包直接在上一跳 Openflow交换机及下一跳 Openflow交换 机之间进行交换。 在本发明实施例中, Openflow交换机可以支持的隧道类 型可以为任意隧道类型, 即可以同时支持 VLAN、 VxLAN或者 GRE等隧道 类型。
对于本发明实施例, 如图 1所示, 当 Openflow switch 1将封装之后的数 据包转发给 switch之后, switch可以根据自身匹配的隧道类型, 将该数据 包进一步转发给 Openflow switch2。 在本发明实施例中, Openflow switch2 解析接收到的数据包的分装格式, 从中提取隧道类型的标签值, 并根据该 隧道类型的标签值及控制器预先设定的该隧道类型的编码,组合生成该数 据包对应的 OXM— OF— TUNNEL— ID匹配域,同时在其流表中匹配对应的流 表项。
本发明实施例提供的隧道类型的选择方法,首先控制器将下一跳交换 机支持 的 隧道类 型 对应 的 编码及标签值进行组合 , 生 成 OXM— OF— TUNNEL— ID匹配域,并向上一跳 Openflow交换机发送携带有该 OXM— OF— TUNNEL— ID匹配域的转发策略;然后上一跳 Openflow交换机从 接收到的 OXM— OF— TUNNEL— ID匹配域中,提取隧道类型对应的编码及标 签值, 并按照该隧道类型对应的编码及标签值, 对数据包进行封装; 最后 上一跳 Openflow交换机向下一跳交换机发送封装后的数据包。与目前通过 引入网关或者网桥对数据包进行转发相比,本发明实施例通过控制器按照 下一跳交换机支持的隧道类型生成 OXM— OF— TUNNEL— ID匹配域,并向上 一跳 Openflow交换机发送携带有该 OXM— OF— TUNNEL— ID匹配域的转发 策略,能够使得上一跳 Openflow交换机按照交换机支持的隧道类型对数据 包进行封装, 从而可以避免在数据包的转发过程中引入隧道切换、 映射机 制、 网关或者网桥, 进而可以降低数据包的转发复杂度。 本发明实施例提供一种隧道类型的选择装置, 如图 6所示, 所述装置 的实体可以为控制器, 所述装置包括: 确定单元 61、 获取单元 62、 生成单 元 63、 发送单元 64。 确定单元 61 , 用于确定下一跳交换机支持的隧道类型。
获取单元 62 ,用于在隧道类型编码映射表中获取确定单元 61确定的隧 道类型对应的编码。
生成单元 63 , 用于生成隧道类型对应的标签值, 并将获取单元 62获取 的隧道类型对应的编码及隧道类型对应的标签值进行组合, 生成 OXM— OF— TUNNEL— ID匹配域。
发送单元 64 , 用于向上一跳 Openflow交换机发送转发策略。
其中, 转发策略中携带有生成单元 63生成的 OXM— OF— TUNNEL— ID 匹配域。
需要说明的是,本发明实施例中提供的隧道类型的选择装置中各功能 单元所对应的其他相应描述, 可以参考图 2中的对应描述, 在此不再赘述。
确定单元 61 , 还用于确定上一跳 Openflow交换机是否为支持 OXM— OF— TUNNEL— ID匹配域的 Openflow交换机。
确 定单元 61 , 具体用 于 当 上一跳 Openflow交换机为 支持 OXM— OF— TUNNEL— ID匹配域的 Openflow交换机时,确定下一跳交换机支 持的隧道类型。
生成单元 62 , 还用于生成各个隧道类型分别对应的编码。
进一步地, 本发明实施例提供又一种隧道类型的选择装置, 如图 7所 示, 所述装置还可以包括: 建立单元 65。
建立单元 65 , 还用于建立隧道类型编码映射表。
其中,隧道类型编码映射表中包括各个隧道类型及生成单元 62生成的 各个隧道类型分别对应的编码。
确定单元 61 , 还用于当存在新入网的交换机时, 确定交换机支持的隧 道类型。
生成单元 62 ,还用于生成确定单元 61确定的新入网的交换机支持的隧 道类型对应的编码。
可选地, 所述装置还可以包括: 更新单元 66。 更新单元 66 ,用于按照生成单元 62生成的新入网的交换机支持的隧道 类型对应的编码, 对隧道类型编码映射表进行更新。
建立单元 65建立的隧道类型编码映射表中包括自定义隧道类型及自 定义隧道类型对应的编码。
需要说明的是,本发明实施例中提供的隧道类型的选择装置中各功能 单元所对应的其他相应描述, 可以参考图 3中的对应描述, 在此不再赘述。
本发明实施例提供一种控制器, 如图 8所示, 所述控制器可以包括: 处理器 81、 发送器 82、 接收器 83、 存储器 84 , 所述接收器 83及存储器 84 与处理器 81相连接。
处理器 81 , 用于首先确定下一跳交换机支持的隧道类型, 然后在隧道 类型编码映射表中获取隧道类型对应的编码,并生成隧道类型对应的标签 值, 最后将隧道类型对应的编码及隧道类型对应的标签值进行组合, 生成 OXM— OF— TUNNEL— ID匹配域。
发送器 82 , 用于向上一跳 Openflow交换机发送转发策略。
其中 ,转发策略中可以携带有处理器 81生成的 OXM— OF— TUNNEL— ID 匹配域。
需要说明的是,本发明实施例中提供的控制器中各设备所对应的其他 相应描述, 可以参考图 2中的对应描述, 在此不再赘述。
处理器 81 , 还用 于确定上一跳 Openflow交换机是否为 支持 OXM— OF— TUNNEL— ID匹配域的 Openflow交换机。
处 理 器 81 , 具体用 于 当 上 一跳 Openflow交换机为 支持 OXM— OF— TUNNEL— ID匹配域的 Openflow交换机时,确定下一跳交换机支 持的隧道类型。
处理器 81 , 还用于生成各个隧道类型分别对应的编码。
处理器 81 , 还用于建立隧道类型编码映射表。 其中,隧道类型编码映射表中包括各个隧道类型及各个隧道类型分别 对应的编码。
处理器 81 , 还用于当存在新入网的交换机时, 确定交换机支持的隧道 类型。
处理器 81 , 还用于生成新入网的交换机支持的隧道类型对应的编码。 处理器 81 , 还用于按照新入网的交换机支持的隧道类型对应的编码, 对隧道类型编码映射表进行更新。
处理器 81建立的隧道类型编码映射表中包括自定义隧道类型及所述 自定义隧道类型对应的编码。
需要说明的是,本发明实施例中提供的控制器中各设备所对应的其他 相应描述, 可以参考图 3中的对应描述, 在此不再赘述。 本发明实施例提供又一种隧道类型的选择装置, 如图 9所示, 所述装 置的实体可以为 Openflow交换机, 所述装置包括: 接收单元 91、 提取单元
92、 封装单元 93、 发送单元 94。
接收单元 91 , 用于接收控制器发送的转发策略。
其中, 转发策略中携带有 OXM— OF— TUNNEL— ID匹配域。
提取单元 92 ,用于从接收单元 91接收的 OXM— OF— TUNNEL— ID匹配域 中,提取下一跳交换机支持的隧道类型对应的编码及隧道类型对应的标签 值。
封装单元 93 ,用于按照提取单元 92提取的隧道类型对应的编码及隧道 类型对应的标签值, 对数据包进行封装。
发送单元 94 , 用于向传统交换机发送封装单元 93封装后的数据包。 需要说明的是,本发明实施例中提供的隧道类型的选择装置中各功能 单元所对应的其他相应描述, 可以参考图 5中的对应描述, 在此不再赘述。 本发明实施例提供一种 Openflow交换机, 如图 10所示, 所述 Openflow 交换机可以包括: 接收器 101、 处理器 102、 发送器 103、 存储器 104 , 所述 存储器 104与处理器 102相连接。
接收器 101 , 用于接收控制器发送的转发策略。
其中, 转发策略中携带有 OXM— OF— TUNNEL— ID匹配域。
处理器 102 , 用于从接收器 101接收的 OXM— OF— TUNNEL— ID匹配域 中,提取下一跳交换机支持的隧道类型对应的编码及隧道类型对应的标签 值, 并按照隧道类型对应的编码及隧道类型对应的标签值, 对数据包进行 封装。
发送器 103 , 用于向下一跳交换机发送处理器封装后的数据包。
需要说明的是,本发明实施例中提供的 Openflow交换机中各设备所对 应的其他相应描述, 可以参考图 5中的对应描述, 在此不再赘述。 本发明实施例提供的隧道类型的选择装置可以实现上述提供的方法 实施例, 具体功能实现请参见方法实施例中的说明, 在此不再赘述。 本发 明实施例提供的隧道类型的选择方法及装置可以适用于在 Openflow交换 机和传统交换机混合组网的环境下转发数据包, 但不仅限于此。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分 流程, 是可以通过计算机程序来指令相关的硬件来完成, 所述的程序可存 储于一计算机可读取存储介质中, 该程序在执行时, 可包括如上述各方法 的实施例的流程。 其中, 所述的存储介质可为磁碟、 光盘、 只读存储记忆 体 ( Read-Only Memory , ROM ) 或随机存 者 i己忆体 ( Random Access Memory, RAM ) 等。
以上所述, 仅为本发明的具体实施方式, 但本发明的保护范围并不局 限于此, 任何熟悉本技术领域的技术人员在本发明揭露的技术范围内, 可 轻易想到的变化或替换, 都应涵盖在本发明的保护范围之内。 因此, 本发 明的保护范围应该以权利要求的保护范围为准。

Claims

权 利 要 求 书
1、 一种隧道类型的选择方法, 其特征在于, 包括:
控制器确定下一跳交换机支持的隧道类型;
所述控制器在隧道类型编码映射表中获取所述隧道类型对应的编码, 并生成所述隧道类型对应的标签值;
所述控制器将所述隧道类型对应的编码及所述隧道类型对应的标签值 进行组合, 生成 OXM— OF— TUNNEL— ID匹配域;
所述控制器向上一跳 Openflow交换机发送转发策略, 所述转发策略中 携带有所述 OXM— OF— TUNNEL— ID匹配域, 以使得所述上一跳 Openflow交 换机根据所述隧道类型对应的编码及所述隧道类型对应的标签值, 对数据 包进行封装。
2、 根据权利要求 1所述的隧道类型的选择方法, 其特征在于, 所述控 制器确定下一跳交换机支持的隧道类型的步骤之前, 还包括:
所述控制 器确 定所述上一跳 Openflow交换机是否 为 支持
OXM— OF— TUNNEL— ID匹配域的 Openflow交换机;
所述控制器确定下一跳交换机支持的隧道类型的步骤包括:
若所述上一跳 Openflow交换机为支持 OXM— OF— TUNNEL— ID匹配域的
Openflow交换机, 则所述控制器确定所述下一跳交换机支持的隧道类型。
3、 根据权利要求 1或 2所述的隧道类型的选择方法, 其特征在于, 所述 控制器确定交换机支持的隧道类型的步骤之前, 还包括:
所述控制器生成各个隧道类型分别对应的编码;
所述控制器建立所述隧道类型编码映射表, 所述隧道类型编码映射表 中包括所述各个隧道类型及所述各个隧道类型分别对应的编码。
4、 根据权利要求 3所述的隧道类型的选择方法, 其特征在于, 所述控 制器建立所述隧道类型编码映射表的步骤之后, 还包括:
当存在新入网的交换机时, 所述控制器确定所述新入网的交换机支持 的隧道类型; 所述控制器生成所述新入网的交换机支持的隧道类型对应的编码; 所述控制器按照所述新入网的交换机支持的隧道类型对应的编码, 对 所述隧道类型编码映射表进行更新。
5、 根据权利要求 1至 4任一所述的隧道类型的选择方法, 其特征在于, 所述隧道类型编码映射表中包括自定义隧道类型及所述自定义隧道类型对 应的编码。
6、 一种隧道类型的选择方法, 其特征在于, 包括:
Openflow交换机接收控制器发送的转发策略, 所述转发策略中携带有 OXM— OF— TUNNEL— ID匹配域;
所述 Openflow交换机从所述 OXM— OF— TUNNEL— ID匹配域中, 提取下 一跳交换机支持的隧道类型对应的编码及所述隧道类型对应的标签值; 所述 Openflow交换机按照所述隧道类型对应的编码及所述隧道类型对 应的标签值, 对数据包进行封装;
所述 Openflow交换机向所述下一跳交换机发送封装后的数据包。
7、 一种隧道类型的选择装置, 其特征在于, 包括:
确定单元, 用于确定下一跳交换机支持的隧道类型;
获取单元, 用于在隧道类型编码映射表中获取所述确定单元确定的所 述隧道类型对应的编码;
生成单元, 用于生成所述隧道类型对应的标签值, 并将所述获取单元 获取的所述隧道类型对应的编码及所述隧道类型对应的标签值进行组合, 生成 OXM— OF— TUNNEL— ID匹配域;
发送单元, 用于向上一跳 Openflow交换机发送转发策略, 所述转发策 略中携带有所述生成单元生成的所述 OXM— OF— TUNNEL— ID匹配域。
8、 根据权利要求 7所述的隧道类型的选择装置, 其特征在于, 所述确定单元, 还用于确定所述上一跳 Openflow交换机是否为支持 OXM— OF— TUNNEL— ID匹配域的 Openflow交换机;
所述确定单元, 具体用于当所述上一跳 Openflow交换机为支持 OXM— OF— TUNNEL— ID匹配域的 Openflow交换机时, 确定所述下一跳交换 机支持的隧道类型。
9、 根据权利要求 7至 8任一所述的隧道类型的选择装置, 其特征在于, 所述生成单元, 还用于生成各个隧道类型分别对应的编码;
所述装置还包括: 建立单元;
所述建立单元, 还用于建立所述隧道类型编码映射表, 所述隧道类型 编码映射表中包括所述各个隧道类型及所述生成单元生成的所述各个隧道 类型分别对应的编码。
10、 根据权利要求 9所述的隧道类型的选择装置, 其特征在于, 所述确定单元, 还用于当存在新入网的交换机时, 确定所述交换机支 持的隧道类型;
所述生成单元, 还用于生成所述确定单元确定的所述新入网的交换机 支持的隧道类型对应的编码;
所述装置还包括: 更新单元;
所述更新单元, 用于按照所述生成单元生成的所述新入网的交换机支 持的隧道类型对应的编码, 对所述隧道类型编码映射表进行更新。
11、根据权利要求 6至 10任一所述的隧道类型的选择装置,其特征在于, 所述建立单元建立的所述隧道类型编码映射表中包括自定义隧道类型 及所述自定义隧道类型对应的编码。
12、 一种隧道类型的选择装置, 其特征在于, 包括:
接收单元, 用于接收控制器发送的转发策略, 所述转发策略中携带有
OXM— OF— TUNNEL— ID匹配域;
提取单元, 用于从所述接收单元接收的所述 OXM— OF— TUNNEL— ID匹 配域中, 提取下一跳交换机支持的隧道类型对应的编码及所述隧道类型对 应的标签值;
封装单元, 用于按照所述提取单元提取的所述隧道类型对应的编码及 所述隧道类型对应的标签值, 对数据包进行封装; 发送单元, 用于向所述下一跳交换机发送所述封装单元封装后的数据 包。
13、 一种控制器, 其特征在于, 包括:
处理器, 用于首先确定下一跳交换机支持的隧道类型, 然后在隧道类 型编码映射表中获取所述隧道类型对应的编码, 并生成所述隧道类型对应 的标签值, 最后将所述隧道类型对应的编码及所述隧道类型对应的标签值 进行组合, 生成 OXM— OF— TUNNEL— ID匹配域;
发送器, 用于向上一跳 Openflow交换机发送转发策略, 所述转发策略 中携带有所述处理器生成的所述 OXM— OF— TUNNEL— ID匹配域。
14、 根据权利要求 13所述的控制器, 其特征在于,
所述处理器, 还用于确定所述上一跳 Openflow交换机是否为支持 OXM— OF— TUNNEL— ID匹配域的 Openflow交换机;
所述处理器, 具体用于当所述上一跳 Openflow交换机为支持 OXM— OF— TUNNEL— ID匹配域的 Openflow交换机时, 确定所述下一跳交换 机支持的隧道类型。
15、 根据权利要求 13至 14任一所述的控制器, 其特征在于,
所述处理器, 还用于生成各个隧道类型分别对应的编码;
所述处理器, 还用于建立所述隧道类型编码映射表, 所述隧道类型编 码映射表中包括所述各个隧道类型及所述各个隧道类型分别对应的编码。
16、 根据权利要求 15所述的控制器, 其特征在于,
所述处理器, 还用于当存在新入网的交换机时, 确定所述交换机支持 的隧道类型;
所述处理器, 还用于生成所述新入网的交换机支持的隧道类型对应的 编码;
所述处理器, 还用于按照所述新入网的交换机支持的隧道类型对应的 编码, 对所述隧道类型编码映射表进行更新。
17、 根据权利要求 13至 16任一所述的控制器, 其特征在于, 所述处理器建立的所述隧道类型编码映射表中包括自定义隧道类型及 所述自定义隧道类型对应的编码。
18、 一种 Openflow交换机, 其特征在于, 包括:
接收器, 用于接收控制器发送的转发策略, 所述转发策略中携带有 OXM— OF— TUNNEL— ID匹配域;
处理器, 用于从所述接收器接收的所述 OXM— OF— TUNNEL— ID匹配域 中, 提取下一跳交换机支持的隧道类型对应的编码及所述隧道类型对应的 标签值, 并按照所述隧道类型对应的编码及所述隧道类型对应的标签值, 对数据包进行封装;
发送器, 用于向所述下一跳交换机发送所述处理器封装后的数据包。
PCT/CN2014/075788 2014-04-21 2014-04-21 隧道类型的选择方法及装置 WO2015161404A1 (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201480000396.8A CN105379203B (zh) 2014-04-21 2014-04-21 隧道类型的选择方法及装置
EP14890202.6A EP3119046B1 (en) 2014-04-21 2014-04-21 Tunnel type selection method and apparatus
EP18160906.6A EP3425860B1 (en) 2014-04-21 2014-04-21 Tunnel type selection methods and apparatuses
PCT/CN2014/075788 WO2015161404A1 (zh) 2014-04-21 2014-04-21 隧道类型的选择方法及装置
US15/298,476 US10003503B2 (en) 2014-04-21 2016-10-20 Tunnel type selection method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2014/075788 WO2015161404A1 (zh) 2014-04-21 2014-04-21 隧道类型的选择方法及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/298,476 Continuation US10003503B2 (en) 2014-04-21 2016-10-20 Tunnel type selection method and apparatus

Publications (1)

Publication Number Publication Date
WO2015161404A1 true WO2015161404A1 (zh) 2015-10-29

Family

ID=54331549

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/075788 WO2015161404A1 (zh) 2014-04-21 2014-04-21 隧道类型的选择方法及装置

Country Status (4)

Country Link
US (1) US10003503B2 (zh)
EP (2) EP3425860B1 (zh)
CN (1) CN105379203B (zh)
WO (1) WO2015161404A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107666447A (zh) * 2016-07-27 2018-02-06 新华三技术有限公司 数据流的处理方法和装置
WO2018079947A1 (ko) * 2016-10-25 2018-05-03 엘지전자(주) 무선 통신 시스템에서 ue 이동성을 지원하기 위한 방법 및 이를 위한 장치
CN111147399A (zh) * 2018-11-06 2020-05-12 ***通信有限公司研究院 一种交换机配置方法、交换机及控制器
US10972384B2 (en) 2016-07-27 2021-04-06 New H3C Technologies Co., Ltd. Processing of data stream

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015161404A1 (zh) * 2014-04-21 2015-10-29 华为技术有限公司 隧道类型的选择方法及装置
US9628292B2 (en) * 2015-04-23 2017-04-18 Fortinet, Inc. Intelligent bridging of Wi-Fi flows in a software-defined network (SDN)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103107934A (zh) * 2013-01-25 2013-05-15 杭州华三通信技术有限公司 一种报文处理控制方法及装置
US20130163427A1 (en) * 2011-12-22 2013-06-27 Ludovic Beliveau System for flexible and extensible flow processing in software-defined networks
CN103460666A (zh) * 2011-03-29 2013-12-18 日本电气株式会社 网络***和vlan标签数据获取方法
CN103607348A (zh) * 2013-11-27 2014-02-26 北京邮电大学 一种基于OpenFlow协议的虚拟网络流量分类方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7616637B1 (en) * 2002-04-01 2009-11-10 Cisco Technology, Inc. Label switching in fibre channel networks
US7940695B1 (en) * 2007-06-08 2011-05-10 Juniper Networks, Inc. Failure detection for tunneled label-switched paths
US9001827B2 (en) * 2010-12-17 2015-04-07 Big Switch Networks, Inc. Methods for configuring network switches
US9769049B2 (en) * 2012-07-27 2017-09-19 Gigamon Inc. Monitoring virtualized network
WO2015161404A1 (zh) * 2014-04-21 2015-10-29 华为技术有限公司 隧道类型的选择方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103460666A (zh) * 2011-03-29 2013-12-18 日本电气株式会社 网络***和vlan标签数据获取方法
US20130163427A1 (en) * 2011-12-22 2013-06-27 Ludovic Beliveau System for flexible and extensible flow processing in software-defined networks
CN103107934A (zh) * 2013-01-25 2013-05-15 杭州华三通信技术有限公司 一种报文处理控制方法及装置
CN103607348A (zh) * 2013-11-27 2014-02-26 北京邮电大学 一种基于OpenFlow协议的虚拟网络流量分类方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107666447A (zh) * 2016-07-27 2018-02-06 新华三技术有限公司 数据流的处理方法和装置
US10972384B2 (en) 2016-07-27 2021-04-06 New H3C Technologies Co., Ltd. Processing of data stream
WO2018079947A1 (ko) * 2016-10-25 2018-05-03 엘지전자(주) 무선 통신 시스템에서 ue 이동성을 지원하기 위한 방법 및 이를 위한 장치
CN111147399A (zh) * 2018-11-06 2020-05-12 ***通信有限公司研究院 一种交换机配置方法、交换机及控制器

Also Published As

Publication number Publication date
CN105379203B (zh) 2018-12-07
EP3425860A1 (en) 2019-01-09
EP3119046A1 (en) 2017-01-18
EP3119046A4 (en) 2017-04-26
US10003503B2 (en) 2018-06-19
EP3119046B1 (en) 2018-06-06
US20170041195A1 (en) 2017-02-09
CN105379203A (zh) 2016-03-02
EP3425860B1 (en) 2021-08-25

Similar Documents

Publication Publication Date Title
US11153274B2 (en) Method and device for storing and sending MAC address entry, and system
CN109756425B (zh) 组播转发方法、装置以及bfr
WO2015161404A1 (zh) 隧道类型的选择方法及装置
CN106936939B (zh) 一种报文处理方法、相关装置及nvo3网络***
WO2014136864A1 (ja) パケット書換装置、制御装置、通信システム、パケット送信方法及びプログラム
WO2013059991A1 (zh) 数据报文处理方法和***、报文转发设备
WO2014198060A1 (zh) 一种数据报文的路由方法和设备
WO2014019205A1 (zh) 处理数据报文的方法、装置及***
EP2533478A1 (en) Method, terminal and gateway for transmitting internet protocol version 6 packets in internet protocol version 4 network
WO2013113171A1 (zh) 流识别的方法、设备和***
WO2015085576A1 (zh) 地址解析协议消息的处理方法和转发器、控制器
WO2017211164A1 (zh) 一种确定跨域标签交换路径隧道的方法、设备和***
JP4464386B2 (ja) IPv6ネットワークにおいてマルチメディアサービスを提供するフローラベルを利用した信号連結サーバ、サービス品質提供サーバ及び方法
EP3032782B1 (en) Packet transmission method and apparatus
JP6050720B2 (ja) コアネットワークにおけるゲートウェイのセッション情報を移行させるシステム及び方法
CN107547347B (zh) 基于vni的路径调整方法和装置
US20160094367A1 (en) Migrating multicast flow
CN105262686A (zh) 一种网络连通性验证方法和装置
WO2018145642A1 (zh) 路径的建立方法及装置
WO2022007749A1 (zh) 一种数据传输方法和装置
WO2014183579A1 (zh) 控制数据转发的方法及逻辑交换机
WO2014205832A1 (zh) 传输数据的方法、边界网关和控制面装置
WO2016031923A1 (ja) スイッチ、オーバーレイネットワークシステム、トンネル設定の変更方法及びプログラム
WO2024045537A1 (zh) 报文传输的方法和网络设备
JP5794697B2 (ja) 通信システム、伝送装置、及び通信方法

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

Country of ref document: EP

Kind code of ref document: A1

REEP Request for entry into the european phase

Ref document number: 2014890202

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2014890202

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE