WO2018059503A1 - Traffic forwarding control method, apparatus, and software defined networking controller and computer storage medium - Google Patents

Traffic forwarding control method, apparatus, and software defined networking controller and computer storage medium Download PDF

Info

Publication number
WO2018059503A1
WO2018059503A1 PCT/CN2017/104046 CN2017104046W WO2018059503A1 WO 2018059503 A1 WO2018059503 A1 WO 2018059503A1 CN 2017104046 W CN2017104046 W CN 2017104046W WO 2018059503 A1 WO2018059503 A1 WO 2018059503A1
Authority
WO
WIPO (PCT)
Prior art keywords
local area
area network
virtual local
group table
mode
Prior art date
Application number
PCT/CN2017/104046
Other languages
French (fr)
Chinese (zh)
Inventor
张海艳
毕以峰
Original Assignee
中兴通讯股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 中兴通讯股份有限公司 filed Critical 中兴通讯股份有限公司
Publication of WO2018059503A1 publication Critical patent/WO2018059503A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • 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
    • 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/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • 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/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control

Definitions

  • the present disclosure relates to the field of communications, and in particular, to a traffic forwarding control method and apparatus, and a software defined network controller and a computer storage medium.
  • the SDN controller Based on the OpenFlow-based SDN (Software Defined Networking) technology, the SDN controller performs operations such as writing an OpenFlow flow table (OpenFlow flow table) and a group table (Group table) to the OpenFlow forwarding device.
  • the OpenFlow forwarding device performs traffic forwarding. 1 is illustrated by a first OpenFlow forwarding device (OpenFlow forwarding device) and a second OpenFlow forwarding device (OpenFlow forwarding device, including but not limited to an OF-DPA forwarding device), and an SDN controller and a first host and A networking diagram of two hosts.
  • the output communication port can be directly written into the action of the flow table, as shown in Table 1 below.
  • the second mode belongs to the indirect forwarding mode. After the traffic is matched with the OpenFlow flow table set by the OpenFlow forwarding device, the group table identifier (GroupId) in the flow table action is found first, and then the corresponding group table is found according to the GroupId, and the group table is executed. Action and output traffic from the specified communication port in the Group. If the OpenFlow flow table does not match the corresponding OpenFlow flow table, the SDN controller is forwarded to generate an OpenFlow flow table.
  • GroupId group table identifier
  • the OpenFlow forwarding device adopts the above-mentioned second indirect forwarding mode.
  • the content of the Group table is based on the VLAN (Virtual Local Area Network) attribute of the outbound communication port, and the VLAN tag carried by the packet is processed and then the outgoing communication is performed. Port output.
  • the VLAN attribute of the communication port and the corresponding Group table are as follows: 1 The communication port is added to the VLAN in untagged mode. The corresponding group table content is stripped of the VLAN tag in the packet, and then The communication port is output; 2 the communication port is added to the VLAN in a tagged manner, and the content of the corresponding Group table is, and the message is output from the outbound communication port as it is.
  • the GroupId of the Group table containing the communication port information is encoded in a specific manner by the following three parts of information: GroupType, VLANId, and PortId.
  • the same communication port on the OpenFlow forwarding device can join multiple VLANs in untagged mode. You can also add multiple VLANs in tagged mode. The VLANs added in the two modes do not overlap. The value of the VLAN is [1, 4094] (1 ⁇ VLAN ⁇ 4094). Therefore, when there are many VLANs added to each communication port on the OpenFlow forwarding device, the SDN controller needs to use a large number of OpenFlow messages to group the entries. It is delivered to the OpenFlow forwarding device, and the OpenFlow forwarding device also consumes a large number of Group entry resources.
  • the method and device for controlling traffic forwarding and the software-defined network controller provided by the embodiments of the present invention mainly solve the technical problem that the existing software-defined network controller needs to deliver a large number of group tables to the open stream forwarding device and open circulation.
  • the embodiment of the invention provides a method for controlling traffic forwarding, including:
  • Obtaining virtual local area network configuration information of each communication port of the open flow forwarding device where the virtual local area network configuration information includes: virtual local area network information added by the communication port and joining mode of joining each virtual local area network;
  • an embodiment of the present invention provides a traffic forwarding control apparatus, including:
  • the information obtaining module is configured to obtain virtual local area network configuration information of each communication port of the open flow forwarding device, where the virtual local area network configuration information includes: virtual local area network information added by the communication port and joining mode of joining the virtual local area network;
  • the group table configuration module is configured to convert all the virtual local area network information in the same manner as the shared virtual local area network information on the communication ports, and generate the obtained shared virtual local area network information in a type corresponding to the joining mode.
  • the group table is configured to convert all the virtual local area network information in the same manner as the shared virtual local area network information on the communication ports, and generate the obtained shared virtual local area network information in a type corresponding to the joining mode.
  • the sending module is configured to send the group table to the open stream forwarding device, so that the open stream forwarding device forwards the traffic.
  • an embodiment of the present invention provides a software defined network controller, including the traffic forwarding control device as described above.
  • the embodiment of the invention further provides a computer storage medium, wherein the computer storage medium stores a computer Executable instructions for performing the aforementioned traffic forwarding control method.
  • the traffic forwarding control method and device, the software-defined network controller, and the computer storage medium provided by the embodiment of the present invention acquire the virtual local area network configuration information of each communication port of the OpenFlow forwarding device (OpenFlow forwarding device), and the virtual local area network configuration information includes: The virtual local area network information added by the port and the joining mode of joining the virtual local area network; then converting all the virtual local area network information of the same manner on each communication port into a corresponding shared virtual local area network information is generated in a group table; that is, the implementation of the present invention
  • a group table in the example corresponds to all the virtual local area networks corresponding to the same joining mode on the communication port, and not one group table corresponds to one virtual local area network; then the group table is sent to the open stream forwarding device for the open stream forwarding device to forward the traffic.
  • a group table in the present invention corresponds to all virtual local area networks corresponding to the same joining mode on the communication port, so the number of group tables required for one communication port is equal to the number of joining modes of joining the virtual local area network, which can greatly reduce the software definition.
  • the network controller needs to generate and deliver the group table quantity, and can also reduce the group table resources consumed by the open stream forwarding device, thereby improving resource satisfaction.
  • FIG. 1 is a schematic diagram of a networking structure
  • FIG. 2 is a schematic flowchart of a flow forwarding control method according to Embodiment 1 of the present invention
  • FIG. 3 is a schematic diagram of a flow table generation process in Embodiment 1 of the present invention.
  • FIG. 4 is a schematic structural diagram of a software-defined network controller in Embodiment 2 of the present invention.
  • FIG. 5 is a schematic structural diagram of a traffic forwarding control apparatus according to Embodiment 2 of the present invention.
  • FIG. 6 is a schematic structural diagram of another traffic forwarding control apparatus according to Embodiment 2 of the present invention.
  • Embodiment 1 is a diagrammatic representation of Embodiment 1:
  • FIG. 2 A method for controlling traffic forwarding according to an embodiment of the present invention is shown in FIG. 2, and includes:
  • S201 Acquire virtual local area network configuration information of each communication port of the OpenFlow forwarding device (OpenFlow forwarding device).
  • the virtual local area network configuration information of the communication port in this embodiment includes: the virtual local area network information that the communication port joins, the joining mode of joining the virtual local area network, and of course, the port identifier of the communication port.
  • the OpenFlow forwarding device may be configured by the configuration administrator to perform virtual local area network configuration on the communication port of the OpenFlow forwarding device according to service deployment on the network.
  • the virtual local area network configuration information of the communication port can be obtained by any other means.
  • S202 For each communication port of the OpenFlow forwarding device, convert all the virtual local area network information of the same manner to the corresponding one of the shared virtual local area network information, and generate the shared virtual local area network information into a type and the joining mode. Corresponding to the group table.
  • the corresponding shared virtual local area network information is selected according to the joining mode of joining the virtual local area networks, and the selected shared virtual local area network information and the port identifier and the group table type are encoded to generate a group table identifier.
  • S203 The obtained group table is sent to the OpenFlow forwarding device for use by the OpenFlow forwarding device for subsequent traffic forwarding.
  • the virtual local area network information is a virtual local area network identifier (VLAN ID), and the join mode is a tagged mode or an untagged mode.
  • the shared virtual local area network information in this embodiment includes a default tagged virtual network. LAN value (DefaultTagVLAN) and default unlabeled virtual LAN value (DefaultUntagVLAN).
  • Selecting the corresponding shared virtual local area network information according to the joining mode of joining each virtual local area network includes:
  • DefaultTagVLAN For the tagged mode, select the default tagged virtual LAN value (DefaultTagVLAN).
  • the default unlabeled virtual LAN value (DefaultUntagVLAN) is selected.
  • the corresponding shared virtual local area network information is selected according to the joining mode of joining the virtual local area networks, and the selected shared virtual local area network information (DefaultTagVLAN or DefaultUntagVLAN), port identifier (Port ID), and group table type (Group Type) are encoded and generated.
  • the group table identifies the Group ID.
  • the untagged mode is generated for the joining mode.
  • the group table content includes stripping the virtual local area network label in the message and then outputting from the designated communication port;
  • the generated group table content includes outputting the message from the designated communication port as it is.
  • the embodiment for each communication port of the OpenFlow forwarding device, only one group table is generated corresponding to the tagged mode and the untagged mode respectively, that is, for each communication port of the OpenFlow forwarding device, only two communication ports need to be generated.
  • a group table can be used, and each group ID added to the communication port needs to generate a group table.
  • the group table in this embodiment can be generated by the SDN controller. Therefore, the embodiment can greatly reduce the number of group tables that the SDN controller needs to generate, and greatly reduce the occupation of the group table resources of the OpenFlow forwarding device, and reduce the interaction of the number of group tables between the SDN controller and the OpenFlow forwarding device. Improve resource utilization.
  • the OpenFlow forwarding device can forward the traffic based on the group table after receiving the traffic.
  • the matching field in the traffic packet matches the matching field in the local flow table.
  • the group table identifier in the flow table is extracted. (Group ID), then go to the corresponding group table and execute the matched group table. If the flow table is not matched, the traffic is forwarded to the SDN controller, and the SDN controller generates a flow table for the traffic.
  • the process of generating a flow table is shown in Figure 3, including:
  • S301 a port identifier port ID of the output port that obtains the traffic, and a VLAN ID of the virtual local area network identifier;
  • S302 Determine, according to the VLAN ID of the virtual local area network, the joining manner of the virtual local area network in which the output port is added to the traffic, and then extract the corresponding shared virtual local area network information DefaultTagVLAN or DefaultUntagVLAN.
  • S303 According to the port ID of the output port, the shared virtual local area network information (DefaultTagVLAN or DefaultUntagVLAN), and the corresponding group table type (Group Type), the group name is added to the flow table and sent to the output port. Open stream forwarding device. In this way, the forwarding device can match the corresponding flow table after receiving the traffic packet, and then obtain the corresponding group ID, and match the corresponding group table to forward the traffic.
  • DefaultTagVLAN or DefaultUntagVLAN the shared virtual local area network information
  • Group Type group table type
  • the following describes an OpenFlow forwarding device as an OF-DPA forwarding device as an example.
  • the VLAN that is added in the untagged mode on the communication port does not use the VLAN ID actually added.
  • the system defaults DefaultUntagVLAN is used.
  • the actual added VLANId is not used as part of the GroupId encoding. Instead, the system default value DefaultTagVLAN is used.
  • the GroupId is encoded in the following three parts: GroupType, DefaultUntagVLAN, PortId, and the content of the Group is in the stripped packet.
  • the VLAN tag is used to specify the communication port output from the portId.
  • the same communication port shares a group for all the VLANs added in the tagged mode.
  • the GroupId is encoded in the following three parts: GroupType, DefaultTagVLAN, PortId, The content of the Group is to output the message from the PortId designated communication port intact.
  • the SDN controller generates a flow table for the traffic, and obtains the outbound communication port PortId of the traffic according to the topology information (TOPO information) of the network, and obtains the VLAN tag in the traffic as the VLANId. Based on the configuration of the port, the VLAN ID, and the configuration of the previously configured communication port, you can know whether the communication port is added to the VLAN in untagged or tagged mode. In this case, you can use the DefaultUntagVLAN or the DefaultTagVLAN as the VLAN part of the GroupId.
  • the SDN controller writes the generated GroupId into the action of the flow table (that is, the traffic forwarding table), and sends the flow table to the OF-DPA forwarding device.
  • the controller needs to send 4094 Group tables to the OF-DPA device, and the embodiment of the present invention is used. In the Group processing method, only at most 2 Group tables are needed.
  • the embodiment of the present invention improves the processing method of the group on the original OF-DPA forwarding device, saves the Group resource on the forwarding device, and reduces the message interaction between the controller and the forwarding device about the Group table.
  • Embodiment 2 is a diagrammatic representation of Embodiment 1:
  • This embodiment provides a software-defined network controller, as shown in FIG. 4, including, for example, the traffic forwarding control device 1.
  • the traffic forwarding control device 1 is shown in FIG. 5 and includes:
  • the information obtaining module 11 is configured to acquire virtual local area network configuration information of each communication port of the open flow forwarding device.
  • the virtual local area network configuration information of the communication port in this embodiment includes: the virtual local area network information that the communication port joins, the joining mode of joining the virtual local area network, and of course, the port identifier of the communication port.
  • the OpenFlow forwarding device may be configured by the configuration administrator to perform virtual local area network configuration on the communication port of the OpenFlow forwarding device according to service deployment on the network.
  • the virtual local area network configuration information of the communication port can be obtained by any other means.
  • the group table configuration module 12 is configured to convert all the virtual local area network information with the same join mode on each communication port into a corresponding shared virtual local area network information, and generate the shared virtual local area network information in a group table corresponding to the join mode. in.
  • the method is specifically configured to select the corresponding shared virtual local area network information according to the joining mode of joining the virtual local area networks, and encode the selected shared virtual local area network information, the port identifier, and the group table type to generate a group table identifier.
  • the sending module 13 is configured to send the obtained group table of each communication port to the OpenFlow forwarding device, so that the OpenFlow forwarding device forwards the traffic.
  • the virtual local area network information is a virtual local area network identifier (VLAN ID), and the join mode is a tagged mode or an untagged mode.
  • the shared virtual local area network information in this embodiment includes a default tagged virtual network. LAN value (DefaultTagVLAN) and default unlabeled virtual LAN value (DefaultUntagVLAN).
  • the group table configuration module 12 in this embodiment selects the corresponding shared virtual local area network information according to the joining mode of joining the virtual local area networks, including:
  • DefaultTagVLAN For the tagged mode, select the default tagged virtual LAN value (DefaultTagVLAN).
  • the default unlabeled virtual LAN value (DefaultUntagVLAN) is selected.
  • the corresponding shared virtual local area network information is selected according to the joining mode of joining the virtual local area networks, and the selected shared virtual local area network information (DefaultTagVLAN or DefaultUntagVLAN), port identifier (Port ID), and group table type (Group Type) are encoded and generated.
  • the group table identifies the Group ID.
  • the generated group table content includes stripping the virtual local area network label in the packet, and then outputting from the designated communication port;
  • the generated group table content includes outputting the message from the designated communication port as it is.
  • each communication port of the OpenFlow forwarding device only needs to respectively generate a group table corresponding to the tagged mode and the untagged mode, that is, each communication for the OpenFlow forwarding device.
  • the port only needs to generate two group tables.
  • this embodiment can greatly reduce the number of group tables that the SDN controller needs to generate. And greatly reducing the occupation of the group table resources of the OpenFlow forwarding device, reducing the interaction of the number of group tables between the SDN controller and the OpenFlow forwarding device, and improving resource utilization.
  • the OpenFlow forwarding device can forward the traffic based on the group table after receiving the traffic.
  • the matching field in the traffic packet matches the matching field in the local flow table.
  • the group table identifier in the flow table is extracted. (Group ID), then go to the corresponding group table and execute the matched group table. If the flow table is not matched, the traffic is forwarded to the SDN controller, and the SDN controller generates a flow table for the traffic. As shown in FIG.
  • the traffic forwarding control apparatus in this embodiment further includes a flow table configuration module 14 configured to obtain a port identifier of the output port of the traffic and a virtual local area network identifier value, and determine an output port to join the traffic according to the virtual local area network identifier value.
  • the method of adding the virtual local area network further extracts the corresponding shared virtual local area network information; and is configured to perform the coding according to the port identifier of the output port, the shared virtual local area network information, and the corresponding group table type, and generate the group table identifier into the flow table and send the information to the The open stream forwarding device corresponding to the output port.
  • modules in this embodiment may be implemented by a processor or a controller in the SDN controller. It will be apparent to those skilled in the art that the functions of the various modules described above can be implemented by a processor or controller in a server. That is, the modules or steps of the embodiments of the present invention may be implemented by a general-purpose computing device, which may be centralized on a single computing device or distributed over a network of multiple computing devices.
  • Embodiment 3 is a diagrammatic representation of Embodiment 3
  • the present embodiment is further illustrated by taking the networking application scenario shown in FIG. 1 as an example.
  • the SDN controller is used to merge the group to be sent to the OF-DPA forwarding device. To save the Group resources on the forwarding device and reduce the message interaction between the controller and the forwarding device about the OpenFlow Group table.
  • the following is an example of a method for merging a group on an OF-DPA forwarding device by using an SDN controller in an OpenFlow environment, and may be applied to other software-defined networks or other OpenFlow forwarding devices.
  • the SDN controller shown in Figure 1 controls two OpenFlow forwarding devices through the OpenFlow protocol.
  • two OF-DPA switches are respectively exemplified by DPID 1 and DPID 2, and respectively have communication ports whose numbers (ie, communication port identifiers) are 1, 2.
  • Port 1 of DPID1 is added to VLAN 10 in untagged mode and added to the VLAN in tagged mode [21, 30]; port 2 of DPID1 is added to the VLAN in tagged mode. 1,30]; port 1 of DPID2 is added to VLAN [1, 30] in untagged mode; port 2 of DPID2 is added to VLAN in tagged mode [1, 30].
  • the SDN controller sends the group table to DPID1 and DPID2 using the OpenFlow protocol.
  • the specific steps are as follows:
  • the group 11 is generated for the VLAN 10 that is added in the untagged mode.
  • the three types of information namely, GroupType, DefaultUntagVlan, and PortId1, are encoded in the system-assigned encoding mode.
  • the encoded result is used as the GroupId11.
  • the content of Group11 is stripped of the VLAN tag and output from port 1.
  • the SDN controller sends the Group11 to DPID1 using the OpenFlow protocol.
  • the content and form of Group11 are shown in Table 4 below:
  • the code (group-type, DefaultUntagVlan, port-id) in the table is a way to encode the group-type, DefaultUntagVlan, and port-id to generate a group-id.
  • the group 12 is generated for the VLAN [21, 30] added in the tagged manner, and the three types of information of the GroupType, the DefaultTagVlan, and the PortId1 are encoded by using the system-defined coding scheme, and the coding result is used as the GroupId12.
  • the contents of Group12 are output from port 1.
  • the SDN controller sends the Group12 to DPID1 using the OpenFlow protocol.
  • the content and form of Group12 are shown in Table 5 below.
  • the group 13 is generated for the VLAN [1, 30] added in the tagged mode, and the three types of information of the GroupType, DefaultTagVlan, and PortId 2 are encoded by using the system-defined encoding.
  • the encoding result is used as the GroupId13, and the content of the Group13 is Output from port 2.
  • the SDN controller sends the Group13 to DPID1 using the OpenFlow protocol.
  • the content and form of Group13 are shown in Table 6 below.
  • the group 21 is generated for the VLAN [1, 30] added in the untagged mode, and the three types of information of the GroupType, the DefaultUntagVlan, and the PortId 1 are encoded by using the system convention coding mode, and the coding result is used as the GroupId21.
  • the content of Group21 is stripped of the VLAN tag and output from port 1.
  • the SDN controller sends the Group21 to DPID2 using the OpenFlow protocol.
  • the content and form of Group21 are shown in Table 7 below.
  • the group 22 is generated for the VLAN [1, 30] added in the tagged mode.
  • the information of the GroupType, DefaultTagVlan, and PortId 2 is encoded by the system-defined encoding.
  • the encoding result is the GroupId22, and the content of the Group22 is Output from port 2.
  • the SDN controller sends the Group22 to DPID2 using the OpenFlow protocol.
  • the content and form of Group22 are shown in Table 8 below.
  • the SDN controller After the group table of each port on the forwarding device is generated, the SDN controller sends an OPenFlow flow table to the relevant forwarding device according to the TOPO information. Taking the communication from the first host Host1 to the second host Host2 in FIG. 1 as an example, the OpenFlow flow table diagrams sent by the SDN controller to the OF-DPA forwarding devices DPID1 and DPID2 are shown in Table 9 and Table 10, respectively.
  • MAC_H2 is the MAC address of the second host in FIG.
  • the communication process from Host1 to Host2 is as follows:
  • the packet sent by Host1 enters the switch from port 1 of DPID1, matches the flow table with the table-id of 1 on DPID1, and executes the action in the flow table.
  • the packet enters the flow table with the table-id of 2.
  • the action of the flow table with the table-id of 2 is to execute the content in the Group pointed to by the Groupid13. It can be known from Table 6 that the action of Group 13 pointed to by Groupid 13 is output from port 2, and the message enters the DPID2 switch.
  • the packet from the port 2 of the DPID2 is matched with the flow table with the table-id of 1 on the DPID2.
  • the action is executed in the flow table.
  • the packet enters the flow table with the table-id of 2.
  • the action of the flow table with the table-id of 2 is to execute the content in the Group pointed to by the Groupid22.
  • the action of Group 22 pointed to by Groupid 22 is output from port 2, and the message enters Host 2.
  • both Group13 and Group22 can satisfy the communication requirements of Host1 to Host2. It can be seen that the method of combining the groups on the same port provided by the embodiment of the present invention can replace the mode of each group corresponding to one group, thereby saving group resources and reducing group message interaction between the SDN controller and the OpenFlow switch.
  • the merging method of the foregoing invention is not limited to the attributes of the VLAN, and the method provided by the embodiment of the present invention may be used according to specific service attributes.
  • the forwarding device is also not limited to the OF-DPA device, and any OpenFlow forwarding device can be used. In the embodiment of the present invention, only one group table is required for each communication port on the OpenFlow forwarding device, which saves the group resource on the forwarding device and reduces the message interaction between the controller and the forwarding device about the group table.
  • the technical solution provided by the embodiment of the present invention can be applied to the field of communications.
  • the traffic forwarding control method and device, the software-defined network controller, and the computer storage medium provided by the embodiment of the present invention acquire the virtual local area network configuration information of each communication port of the OpenFlow forwarding device (OpenFlow forwarding device), and the virtual local area network configuration information includes: The virtual local area network information added by the port and the joining mode of joining the virtual local area network; then converting all the virtual local area network information of the same manner on each communication port into a corresponding shared virtual local area network information is generated in a group table; that is, the implementation of the present invention
  • a group table in the example corresponds to all the virtual local area networks corresponding to the same joining mode on the communication port, and not one group table corresponds to one virtual local area network; then the group table is sent to the open stream forwarding device for the open stream forwarding device to forward the traffic.
  • a group table in the embodiment of the present invention corresponds to all virtual local area networks corresponding to the same joining mode on the communication port. Therefore, the number of group tables required for a communication port is equal to the number of joining modes of the virtual local area network, which can be greatly reduced.
  • the software-defined network controller needs to generate and deliver the group table quantity, and can also reduce the group table resources consumed by the open stream forwarding device to improve resource satisfaction.

Landscapes

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

Abstract

The present disclosure relates to a traffic forwarding control method, an apparatus, and a software defined networking controller and a computer storage medium. The method comprises: acquiring VLAN configuration information of communication ports of an OpenFlow forwarding device, and then converting all information of VLANs having the same communication port joining method to corresponding common VLAN information and generating the same in a group table. In the present disclosure, one group table corresponds to all VLANs having the same communication port joining method, rather than one group table corresponding to one VLAN. As a result, for one communication port, the number of group tables required is equal to the number of VLAN joining methods thereof. Thus, the present disclosure can greatly reduce the amount of group tables generated and sent by a software defined networking controller, and can also reduce group table resources consumed by an OpenFlow forwarding device, improving resource utilization.

Description

流量转发控制方法、装置及软件定义网络控制器和计算机存储介质Traffic forwarding control method, device and software defined network controller and computer storage medium 技术领域Technical field
本公开涉及通信领域,尤其涉及一种流量转发控制方法、装置及软件定义网络控制器和计算机存储介质。The present disclosure relates to the field of communications, and in particular, to a traffic forwarding control method and apparatus, and a software defined network controller and a computer storage medium.
背景技术Background technique
基于开放流(OpenFlow)的SDN(Software Defined Networking,软件定义网络)技术,SDN控制器通过对OpenFlow转发设备进行写入开放流流表(OpenFlow流表)和组表(Group表)等操作,指导OpenFlow转发设备进行流量转发。附图1中示意了由第一开放流转发设备(OpenFlow转发设备)和第二开放流转发设备(OpenFlow转发设备,包括但不限于OF-DPA转发设备)以及SDN控制器和第一主机和第二主机构成的组网示意图。Based on the OpenFlow-based SDN (Software Defined Networking) technology, the SDN controller performs operations such as writing an OpenFlow flow table (OpenFlow flow table) and a group table (Group table) to the OpenFlow forwarding device. The OpenFlow forwarding device performs traffic forwarding. 1 is illustrated by a first OpenFlow forwarding device (OpenFlow forwarding device) and a second OpenFlow forwarding device (OpenFlow forwarding device, including but not limited to an OF-DPA forwarding device), and an SDN controller and a first host and A networking diagram of two hosts.
OpenFlow流表中可以将输出通信端口直接写入流表的Action中,参见下表1所示。In the OpenFlow flow table, the output communication port can be directly written into the action of the flow table, as shown in Table 1 below.
表1Table 1
MatchMatch ActionAction
报文中字段Field in the message Output port-id;Output port-id;
也可以将输出通信端口写入指定组表(Group表)的Bucket中,然后将GroupId作为Action写入流表中,如下表2所示的Group表以及表3所示的流表。You can also write the output communication port to the bucket of the specified group table (Group table), and then write the GroupId as an Action into the flow table, such as the Group table shown in Table 2 and the flow table shown in Table 3.
表2Table 2
Figure PCTCN2017104046-appb-000001
Figure PCTCN2017104046-appb-000001
Figure PCTCN2017104046-appb-000002
Figure PCTCN2017104046-appb-000002
表3table 3
MatchMatch ActionAction
报文中字段Field in the message Group group-id;Group group-id;
第二种方式属于间接转发方式,流量匹配上OpenFlow转发设备预先设置好的OpenFlow流表后,先找到流表Action中的组表标识(GroupId),然后根据GroupId找到对应Group表,执行Group表中的动作并将流量从Group中指定通信端口输出。如果在OpenFlow转发设备没有匹配上对应的OpenFlow流表,则转发给SDN控制器生成OpenFlow流表。The second mode belongs to the indirect forwarding mode. After the traffic is matched with the OpenFlow flow table set by the OpenFlow forwarding device, the group table identifier (GroupId) in the flow table action is found first, and then the corresponding group table is found according to the GroupId, and the group table is executed. Action and output traffic from the specified communication port in the Group. If the OpenFlow flow table does not match the corresponding OpenFlow flow table, the SDN controller is forwarded to generate an OpenFlow flow table.
OpenFlow转发设备采用上述第二种间接转发的方式,Group表的内容是根据出通信端口配置的VLAN(Virtual Local Area Network,虚拟局域网)属性,对报文所带的VLAN标签进行处理后从出通信端口输出。通信端口的VLAN属性及对应的Group表内容有如下两种:①通信端口以不带标签(untagged)的方式加入VLAN,则对应的Group表内容为,剥掉报文中的VLAN标签,然后从出通信端口输出;②通信端口以带标签(tagged)的方式加入VLAN,则对应Group表的内容为,将报文原封不动地从出通信端口输出。包含出通信端口信息的Group表的GroupId由如下三部分信息按照特定的方式编码而成:GroupType,VLANId,PortId。The OpenFlow forwarding device adopts the above-mentioned second indirect forwarding mode. The content of the Group table is based on the VLAN (Virtual Local Area Network) attribute of the outbound communication port, and the VLAN tag carried by the packet is processed and then the outgoing communication is performed. Port output. The VLAN attribute of the communication port and the corresponding Group table are as follows: 1 The communication port is added to the VLAN in untagged mode. The corresponding group table content is stripped of the VLAN tag in the packet, and then The communication port is output; 2 the communication port is added to the VLAN in a tagged manner, and the content of the corresponding Group table is, and the message is output from the outbound communication port as it is. The GroupId of the Group table containing the communication port information is encoded in a specific manner by the following three parts of information: GroupType, VLANId, and PortId.
OpenFlow转发设备上同一个通信端口可以以untagged的方式加入多个VLAN, 同时也可以tagged的方式加入多个VLAN,且两种方式加入的VLAN取值不重叠。而VLAN的取值范围是[1,4094](1≤VLAN≤4094),所以当OpenFlow转发设备上每个通信端口上加入的VLAN较多时,SDN控制器需要通过大量的OpenFlow消息将Group表项下发到OpenFlow转发设备上,同时OpenFlow转发设备也将消耗大量的Group表项资源。The same communication port on the OpenFlow forwarding device can join multiple VLANs in untagged mode. You can also add multiple VLANs in tagged mode. The VLANs added in the two modes do not overlap. The value of the VLAN is [1, 4094] (1 ≤ VLAN ≤ 4094). Therefore, when there are many VLANs added to each communication port on the OpenFlow forwarding device, the SDN controller needs to use a large number of OpenFlow messages to group the entries. It is delivered to the OpenFlow forwarding device, and the OpenFlow forwarding device also consumes a large number of Group entry resources.
发明内容Summary of the invention
本发明实施例提供的一种流量转发控制方法、装置及软件定义网络控制器,主要解决的技术问题是:解决现有软件定义网络控制器需要下发大量组表到开放流转发设备以及开放流转发设备对应的需要消耗大量的组表资源的问题。The method and device for controlling traffic forwarding and the software-defined network controller provided by the embodiments of the present invention mainly solve the technical problem that the existing software-defined network controller needs to deliver a large number of group tables to the open stream forwarding device and open circulation. The problem that the sending device needs to consume a large amount of group table resources.
本发明实施例提供一种流量转发控制方法,包括:The embodiment of the invention provides a method for controlling traffic forwarding, including:
获取开放流转发设备各通信端口的虚拟局域网配置信息,所述虚拟局域网配置信息包含:通信端口所加入的虚拟局域网信息以及加入各虚拟局域网的加入方式;Obtaining virtual local area network configuration information of each communication port of the open flow forwarding device, where the virtual local area network configuration information includes: virtual local area network information added by the communication port and joining mode of joining each virtual local area network;
将所述各通信端口上加入方式相同的所有虚拟局域网信息转换为对应一个共用虚拟局域网信息,并将得到的共用虚拟局域网信息生成于类型与所述加入方式相对应的组表中;Converting all the virtual local area network information of the same manner to the corresponding one of the virtual local area network information, and generating the obtained shared virtual local area network information in a group table corresponding to the joining mode;
将所述组表下发给所述开放流转发设备,以供所述开放流转发设备转发流量。And sending the group table to the OpenFlow forwarding device, where the OpenFlow forwarding device forwards traffic.
为解决上述技术问题,本发明实施例提供一种流量转发控制装置,包括:To solve the above technical problem, an embodiment of the present invention provides a traffic forwarding control apparatus, including:
信息获取模块,设置为获取开放流转发设备各通信端口的虚拟局域网配置信息,所述虚拟局域网配置信息包含:通信端口所加入的虚拟局域网信息以及加入各虚拟局域网的加入方式;The information obtaining module is configured to obtain virtual local area network configuration information of each communication port of the open flow forwarding device, where the virtual local area network configuration information includes: virtual local area network information added by the communication port and joining mode of joining the virtual local area network;
组表配置模块,设置为将所述各通信端口上以加入方式相同的所有虚拟局域网信息转换为对应一个共用虚拟局域网信息,并将得到的共用虚拟局域网信息生成于类型与所述加入方式相对应的组表中;The group table configuration module is configured to convert all the virtual local area network information in the same manner as the shared virtual local area network information on the communication ports, and generate the obtained shared virtual local area network information in a type corresponding to the joining mode. In the group table;
下发模块,设置为所述组表下发给所述开放流转发设备,以供所述开放流转发设备转发流量。The sending module is configured to send the group table to the open stream forwarding device, so that the open stream forwarding device forwards the traffic.
为解决上述技术问题,本发明实施例提供一种软件定义网络控制器,包括如上所述的流量转发控制装置To solve the above technical problem, an embodiment of the present invention provides a software defined network controller, including the traffic forwarding control device as described above.
本发明实施例还提供一种计算机存储介质,所述计算机存储介质中存储有计算机 可执行指令,所述计算机可执行指令用于执行前述的流量转发控制方法。The embodiment of the invention further provides a computer storage medium, wherein the computer storage medium stores a computer Executable instructions for performing the aforementioned traffic forwarding control method.
本发明实施例提供的技术方案至少具有以下有益效果:The technical solution provided by the embodiment of the present invention has at least the following beneficial effects:
根据本发明实施例提供的流量转发控制方法、装置、软件定义网络控制器及计算机存储介质,获取开放流转发设备(OpenFlow转发设备)各通信端口的虚拟局域网配置信息,虚拟局域网配置信息包含:通信端口所加入的虚拟局域网信息以及加入各虚拟局域网的加入方式;然后将各通信端口上加入方式相同的所有虚拟局域网信息转换为对应一个共用虚拟局域网信息生成于一个组表中;也即本发明实施例中的一个组表对应通信端口上通过相同加入方式对应的所有虚拟局域网,并非一个组表对应一个虚拟局域网;然后将组表下发给开放流转发设备,以供开放流转发设备转发流量。本发明中的一个组表对应通信端口上通过相同加入方式对应的所有虚拟局域网,因此对于一个通信端口,所需的组表个数等于其加入虚拟局域网的加入方式个数,可以大大减少软件定义网络控制器需要生成以及下发的组表量,同时也可以降低开放流转发设备消耗的组表资源,提升资源满意度。The traffic forwarding control method and device, the software-defined network controller, and the computer storage medium provided by the embodiment of the present invention acquire the virtual local area network configuration information of each communication port of the OpenFlow forwarding device (OpenFlow forwarding device), and the virtual local area network configuration information includes: The virtual local area network information added by the port and the joining mode of joining the virtual local area network; then converting all the virtual local area network information of the same manner on each communication port into a corresponding shared virtual local area network information is generated in a group table; that is, the implementation of the present invention A group table in the example corresponds to all the virtual local area networks corresponding to the same joining mode on the communication port, and not one group table corresponds to one virtual local area network; then the group table is sent to the open stream forwarding device for the open stream forwarding device to forward the traffic. A group table in the present invention corresponds to all virtual local area networks corresponding to the same joining mode on the communication port, so the number of group tables required for one communication port is equal to the number of joining modes of joining the virtual local area network, which can greatly reduce the software definition. The network controller needs to generate and deliver the group table quantity, and can also reduce the group table resources consumed by the open stream forwarding device, thereby improving resource satisfaction.
附图说明DRAWINGS
图1为一种组网结构示意图;1 is a schematic diagram of a networking structure;
图2为本发明实施例一中的流量转发控制方法流程示意图;2 is a schematic flowchart of a flow forwarding control method according to Embodiment 1 of the present invention;
图3为本发明实施例一中的流表生成过程示意图;3 is a schematic diagram of a flow table generation process in Embodiment 1 of the present invention;
图4为本发明实施例二中的软件定义网络控制器结构示意图;4 is a schematic structural diagram of a software-defined network controller in Embodiment 2 of the present invention;
图5为本发明实施例二中的流量转发控制装置结构示意图;FIG. 5 is a schematic structural diagram of a traffic forwarding control apparatus according to Embodiment 2 of the present invention;
图6为本发明实施例二中的另一流量转发控制装置结构示意图。FIG. 6 is a schematic structural diagram of another traffic forwarding control apparatus according to Embodiment 2 of the present invention.
具体实施方式detailed description
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例只是本发明中一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。The technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present invention. It is obvious that the described embodiments are only a part of the embodiments of the present invention, but not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.
实施例一: Embodiment 1:
本发明实施例提供的一种流量转发控制方法参见图2所示,包括:A method for controlling traffic forwarding according to an embodiment of the present invention is shown in FIG. 2, and includes:
S201:获取开放流转发设备(OpenFlow转发设备)各通信端口的虚拟局域网配置信息。S201: Acquire virtual local area network configuration information of each communication port of the OpenFlow forwarding device (OpenFlow forwarding device).
本实施例中通信端口的虚拟局域网配置信息包含:通信端口所加入的虚拟局域网信息以及加入各虚拟局域网的加入方式,当然还可包括通信端口的端口标识。The virtual local area network configuration information of the communication port in this embodiment includes: the virtual local area network information that the communication port joins, the joining mode of joining the virtual local area network, and of course, the port identifier of the communication port.
本实施例中开放流转发设备可以是配置管理员根据网络上的业务部署,对开放流转发设备的通信端口进行的虚拟局域网配置得到的。当然并不限于这种获取方式,可以通过其他任意途径获取通信端口的虚拟局域网配置信息。In this embodiment, the OpenFlow forwarding device may be configured by the configuration administrator to perform virtual local area network configuration on the communication port of the OpenFlow forwarding device according to service deployment on the network. Of course, it is not limited to this acquisition mode, and the virtual local area network configuration information of the communication port can be obtained by any other means.
S202:对于开放流转发设备的每一通信端口,将该通信端口上加入方式相同的所有虚拟局域网信息转换为对应一个共用虚拟局域网信息,并将该共用虚拟局域网信息生成于一个类型与该加入方式对应的组表中。S202: For each communication port of the OpenFlow forwarding device, convert all the virtual local area network information of the same manner to the corresponding one of the shared virtual local area network information, and generate the shared virtual local area network information into a type and the joining mode. Corresponding to the group table.
该步骤中,具体根据加入各虚拟局域网的加入方式选择对应的共用虚拟局域网信息,并将选择的共用虚拟局域网信息以及端口标识和组表类型进行编码生成组表标识。In this step, the corresponding shared virtual local area network information is selected according to the joining mode of joining the virtual local area networks, and the selected shared virtual local area network information and the port identifier and the group table type are encoded to generate a group table identifier.
S203:将得到的组表下发给开放流转发设备,以供开放流转发设备进行后续的流量转发使用。S203: The obtained group table is sent to the OpenFlow forwarding device for use by the OpenFlow forwarding device for subsequent traffic forwarding.
本实施例中,虚拟局域网信息为虚拟局域网标识值(VLAN ID),加入方式为带标签(tagged)方式或不带标签(untagged)方式;本实施例中的共用虚拟局域网信息包括默认带标签虚拟局域网值(DefaultTagVLAN)和默认不带标签虚拟局域网值(DefaultUntagVLAN)。In this embodiment, the virtual local area network information is a virtual local area network identifier (VLAN ID), and the join mode is a tagged mode or an untagged mode. The shared virtual local area network information in this embodiment includes a default tagged virtual network. LAN value (DefaultTagVLAN) and default unlabeled virtual LAN value (DefaultUntagVLAN).
根据加入各虚拟局域网的加入方式选择对应的共用虚拟局域网信息包括:Selecting the corresponding shared virtual local area network information according to the joining mode of joining each virtual local area network includes:
对于加入方式为带标签(tagged)方式,选择默认带标签虚拟局域网值(DefaultTagVLAN);For the tagged mode, select the default tagged virtual LAN value (DefaultTagVLAN).
对于加入方式为不带标签(untagged)方式,选择默认不带标签虚拟局域网值(DefaultUntagVLAN)。For the untagged mode, the default unlabeled virtual LAN value (DefaultUntagVLAN) is selected.
这样,具体根据加入各虚拟局域网的加入方式选择对应的共用虚拟局域网信息,并将选择的共用虚拟局域网信息(DefaultTagVLAN或DefaultUntagVLAN)以及端口标识(Port ID)和组表类型(Group Type)进行编码生成组表标识Group ID。In this way, the corresponding shared virtual local area network information is selected according to the joining mode of joining the virtual local area networks, and the selected shared virtual local area network information (DefaultTagVLAN or DefaultUntagVLAN), port identifier (Port ID), and group table type (Group Type) are encoded and generated. The group table identifies the Group ID.
应当理解的是,本实施例中,对于加入方式为取消带标签(untagged)方式,生成 的组表内容包括剥掉报文中的虚拟局域网标签,然后从指定通信端口输出;It should be understood that, in this embodiment, the untagged mode is generated for the joining mode. The group table content includes stripping the virtual local area network label in the message and then outputting from the designated communication port;
对于加入方式为带标签(tagged)方式,生成的组表内容包括将报文原封不动地从指定通信端口输出。If the join mode is a tagged mode, the generated group table content includes outputting the message from the designated communication port as it is.
可见,实施例中,对于开放流转发设备的各通信端口,只需要分别对应tagged方式和untagged方式分别生成一个组表即可,也即对于开放流转发设备的每个通信端口,只需要生成两个组表即可,相对现有针对通信端口加入的每个VLAN ID都需要生成一个组表来说。且本实施例中的组表可以由SDN控制器生成。因此,本实施例可以大大减少SDN控制器所需生成的组表数量,以及大大减少开放流转发设备的组表资源的占用,减少SDN控制器与开放流转发设备之间组表数量的交互,提升资源利用率。It can be seen that, in the embodiment, for each communication port of the OpenFlow forwarding device, only one group table is generated corresponding to the tagged mode and the untagged mode respectively, that is, for each communication port of the OpenFlow forwarding device, only two communication ports need to be generated. A group table can be used, and each group ID added to the communication port needs to generate a group table. And the group table in this embodiment can be generated by the SDN controller. Therefore, the embodiment can greatly reduce the number of group tables that the SDN controller needs to generate, and greatly reduce the occupation of the group table resources of the OpenFlow forwarding device, and reduce the interaction of the number of group tables between the SDN controller and the OpenFlow forwarding device. Improve resource utilization.
本实施例中,基于上述过程生成组表并下发到开放流转发设备上后,开放流转发设备接收到流量后,可以基于组表进行流量的转发。对于开放流转发设备接收到的流量后,其将流量报文中的匹配字段与本地的流表中的匹配字段进行匹配,如果匹配到对应的流表,则提取该流表中的组表标识(Group ID),然后去匹配到对应的组表,执行匹配到的组表。如果没有匹配到流表,则将该流量转发给SDN控制器,由SDN控制器为该流量生成流表。生成流表的过程参见图3所示,包括:In this embodiment, after the group table is generated and sent to the OpenFlow forwarding device, the OpenFlow forwarding device can forward the traffic based on the group table after receiving the traffic. After the traffic received by the OpenFlow forwarding device is matched, the matching field in the traffic packet matches the matching field in the local flow table. If the corresponding flow table is matched, the group table identifier in the flow table is extracted. (Group ID), then go to the corresponding group table and execute the matched group table. If the flow table is not matched, the traffic is forwarded to the SDN controller, and the SDN controller generates a flow table for the traffic. The process of generating a flow table is shown in Figure 3, including:
S301:获取流量的输出端口的端口标识Port ID、虚拟局域网标识值VLAN ID;S301: a port identifier port ID of the output port that obtains the traffic, and a VLAN ID of the virtual local area network identifier;
S302:根据虚拟局域网标识值VLAN ID确定出输出端口加入流量中的虚拟局域网的加入方式进而提取对应的共用虚拟局域网信息DefaultTagVLAN或DefaultUntagVLAN。S302: Determine, according to the VLAN ID of the virtual local area network, the joining manner of the virtual local area network in which the output port is added to the traffic, and then extract the corresponding shared virtual local area network information DefaultTagVLAN or DefaultUntagVLAN.
S303:根据输出端口的端口标识Port ID、共用虚拟局域网信息(DefaultTagVLAN或DefaultUntagVLAN)以及对应的组表类型(Group Type)进行编码生成组表标识(Group ID)加入流表中发给输出端口对应的开放流转发设备。这样转发设备后续接收到这类流量报文时即可匹配到对应的流表,进而获取到对应的Group ID,匹配到对应的Group表进行流量转发。S303: According to the port ID of the output port, the shared virtual local area network information (DefaultTagVLAN or DefaultUntagVLAN), and the corresponding group table type (Group Type), the group name is added to the flow table and sent to the output port. Open stream forwarding device. In this way, the forwarding device can match the corresponding flow table after receiving the traffic packet, and then obtain the corresponding group ID, and match the corresponding group table to forward the traffic.
下面以开放流转发设备为OF-DPA转发设备为示例进行说明。The following describes an OpenFlow forwarding device as an OF-DPA forwarding device as an example.
配置管理员根据网络上的业务部署,对OF-DPA转发设备上的通信端口进行VLAN属性配置。Configure the administrator to configure VLAN attributes for the communication ports on the OF-DPA forwarding device according to the service deployment on the network.
对于通信端口上以untagged的方式加入的VLAN,不使用实际加入的VLANId 作为GroupId编码的一部分,而是使用系统约定的默认值DefaultUntagVLAN;对于以tagged方式加入的VLAN,也不使用实际加入的VLANId作为GroupId编码的一部分,而是使用系统约定的默认值DefaultTagVLAN。The VLAN that is added in the untagged mode on the communication port does not use the VLAN ID actually added. As part of the GroupId encoding, the system defaults DefaultUntagVLAN is used. For VLANs added in tagged mode, the actual added VLANId is not used as part of the GroupId encoding. Instead, the system default value DefaultTagVLAN is used.
同一个通信端口上,对于所有以untagged方式加入的VLAN,共用一个Group,其GroupId由如下三部分信息按照特定的方式编码而成:GroupType,DefaultUntagVLAN,PortId,Group的内容为剥掉报文中的VLAN标签,然后从PortId指定通信端口输出;同一个通信端口,对于所有以tagged方式加入的VLAN,共用一个Group,其GroupId由如下三部分信息按照特定的方式编码而成:GroupType,DefaultTagVLAN,PortId,Group的内容为将报文原封不动地从PortId指定通信端口输出。On the same communication port, all the VLANs that are added in the untagged mode share a group. The GroupId is encoded in the following three parts: GroupType, DefaultUntagVLAN, PortId, and the content of the Group is in the stripped packet. The VLAN tag is used to specify the communication port output from the portId. The same communication port shares a group for all the VLANs added in the tagged mode. The GroupId is encoded in the following three parts: GroupType, DefaultTagVLAN, PortId, The content of the Group is to output the message from the PortId designated communication port intact.
SDN控制器为流量生成流表是,可以根据网络的拓扑信息(TOPO信息),获得流量的出通信端口PortId,并获取流量中的VLAN标签作为VLANId。根据PortId、VLANId及之前配置的通信端口的虚拟局域网配置信息,可以获知通信端口是以untagged方式还是tagged方式加入VLAN,并以此来决定使用DefaultUntagVLAN还是DefaultTagVLAN作为GroupId中VLAN部分的信息。SDN控制器将生成的GroupId写入流表(也即流量转发表)的Action中,并将流表下发给OF-DPA转发设备。The SDN controller generates a flow table for the traffic, and obtains the outbound communication port PortId of the traffic according to the topology information (TOPO information) of the network, and obtains the VLAN tag in the traffic as the VLANId. Based on the configuration of the port, the VLAN ID, and the configuration of the previously configured communication port, you can know whether the communication port is added to the VLAN in untagged or tagged mode. In this case, you can use the DefaultUntagVLAN or the DefaultTagVLAN as the VLAN part of the GroupId. The SDN controller writes the generated GroupId into the action of the flow table (that is, the traffic forwarding table), and sends the flow table to the OF-DPA forwarding device.
可见,对于OF-DPA转发设备上的每一个通信端口,如果通信端口加入4094个VLAN,使用原有处理方法,控制器需要向OF-DPA设备下发4094个Group表,而使用本发明实施例中的Group处理方法,最多只需要2个Group表。综上所述,本发明实施例对原有OF-DPA转发设备上Group的处理方法进行了改进,达到节省转发设备上的Group资源,减少控制器和转发设备间关于Group表的消息交互。It can be seen that, for each communication port on the OF-DPA forwarding device, if the communication port is added to 4094 VLANs, the controller needs to send 4094 Group tables to the OF-DPA device, and the embodiment of the present invention is used. In the Group processing method, only at most 2 Group tables are needed. In summary, the embodiment of the present invention improves the processing method of the group on the original OF-DPA forwarding device, saves the Group resource on the forwarding device, and reduces the message interaction between the controller and the forwarding device about the Group table.
实施例二:Embodiment 2:
本实施例提供了一种软件定义网络控制器,参见图4所示,包括如流量转发控制装置1。其中,流量转发控制装置1参见图5所示,包括:This embodiment provides a software-defined network controller, as shown in FIG. 4, including, for example, the traffic forwarding control device 1. The traffic forwarding control device 1 is shown in FIG. 5 and includes:
信息获取模块11,设置为获取开放流转发设备各通信端口的虚拟局域网配置信息。The information obtaining module 11 is configured to acquire virtual local area network configuration information of each communication port of the open flow forwarding device.
本实施例中通信端口的虚拟局域网配置信息包含:通信端口所加入的虚拟局域网信息以及加入各虚拟局域网的加入方式,当然还可包括通信端口的端口标识。 The virtual local area network configuration information of the communication port in this embodiment includes: the virtual local area network information that the communication port joins, the joining mode of joining the virtual local area network, and of course, the port identifier of the communication port.
本实施例中开放流转发设备可以是配置管理员根据网络上的业务部署,对开放流转发设备的通信端口进行的虚拟局域网配置得到的。当然并不限于这种获取方式,可以通过其他任意途径获取通信端口的虚拟局域网配置信息。In this embodiment, the OpenFlow forwarding device may be configured by the configuration administrator to perform virtual local area network configuration on the communication port of the OpenFlow forwarding device according to service deployment on the network. Of course, it is not limited to this acquisition mode, and the virtual local area network configuration information of the communication port can be obtained by any other means.
组表配置模块12,设置为将各通信端口上以加入方式相同的所有虚拟局域网信息转换为对应一个共用虚拟局域网信息,并将该共用虚拟局域网信息生成于一个类型与该加入方式对应的组表中。The group table configuration module 12 is configured to convert all the virtual local area network information with the same join mode on each communication port into a corresponding shared virtual local area network information, and generate the shared virtual local area network information in a group table corresponding to the join mode. in.
具体用于根据加入各虚拟局域网的加入方式选择对应的共用虚拟局域网信息,并将选择的共用虚拟局域网信息以及端口标识和组表类型进行编码生成组表标识。The method is specifically configured to select the corresponding shared virtual local area network information according to the joining mode of joining the virtual local area networks, and encode the selected shared virtual local area network information, the port identifier, and the group table type to generate a group table identifier.
下发模块13,设置为将获取的各通信端口的组表下发给开放流转发设备,以供开放流转发设备转发流量。The sending module 13 is configured to send the obtained group table of each communication port to the OpenFlow forwarding device, so that the OpenFlow forwarding device forwards the traffic.
本实施例中,虚拟局域网信息为虚拟局域网标识值(VLAN ID),加入方式为带标签(tagged)方式或不带标签(untagged)方式;本实施例中的共用虚拟局域网信息包括默认带标签虚拟局域网值(DefaultTagVLAN)和默认不带标签虚拟局域网值(DefaultUntagVLAN)。In this embodiment, the virtual local area network information is a virtual local area network identifier (VLAN ID), and the join mode is a tagged mode or an untagged mode. The shared virtual local area network information in this embodiment includes a default tagged virtual network. LAN value (DefaultTagVLAN) and default unlabeled virtual LAN value (DefaultUntagVLAN).
本实施例中的组表配置模块12根据加入各虚拟局域网的加入方式选择对应的共用虚拟局域网信息包括:The group table configuration module 12 in this embodiment selects the corresponding shared virtual local area network information according to the joining mode of joining the virtual local area networks, including:
对于加入方式为带标签(tagged)方式,选择默认带标签虚拟局域网值(DefaultTagVLAN);For the tagged mode, select the default tagged virtual LAN value (DefaultTagVLAN).
对于加入方式为不带标签(untagged)方式,选择默认不带标签虚拟局域网值(DefaultUntagVLAN)。For the untagged mode, the default unlabeled virtual LAN value (DefaultUntagVLAN) is selected.
这样,具体根据加入各虚拟局域网的加入方式选择对应的共用虚拟局域网信息,并将选择的共用虚拟局域网信息(DefaultTagVLAN或DefaultUntagVLAN)以及端口标识(Port ID)和组表类型(Group Type)进行编码生成组表标识Group ID。In this way, the corresponding shared virtual local area network information is selected according to the joining mode of joining the virtual local area networks, and the selected shared virtual local area network information (DefaultTagVLAN or DefaultUntagVLAN), port identifier (Port ID), and group table type (Group Type) are encoded and generated. The group table identifies the Group ID.
应当理解的是,本实施例中,对于加入方式为取消带标签(untagged)方式,生成的组表内容包括剥掉报文中的虚拟局域网标签,然后从指定通信端口输出;It should be understood that, in this embodiment, for the untagged mode, the generated group table content includes stripping the virtual local area network label in the packet, and then outputting from the designated communication port;
对于加入方式为带标签(tagged)方式,生成的组表内容包括将报文原封不动地从指定通信端口输出。If the join mode is a tagged mode, the generated group table content includes outputting the message from the designated communication port as it is.
可见,实施例中,对于开放流转发设备的各通信端口,只需要分别对应tagged方式和untagged方式分别生成一个组表即可,也即对于开放流转发设备的每个通信 端口,只需要生成两个组表即可,相对现有针对通信端口加入的每个VLAN ID都需要生成一个组表来说,本实施例可以大大减少SDN控制器所需生成的组表数量,以及大大减少开放流转发设备的组表资源的占用,减少SDN控制器与开放流转发设备之间组表数量的交互,提升资源利用率。It can be seen that, in the embodiment, each communication port of the OpenFlow forwarding device only needs to respectively generate a group table corresponding to the tagged mode and the untagged mode, that is, each communication for the OpenFlow forwarding device. The port only needs to generate two group tables. Compared with the existing group ID for each VLAN ID that is added to the communication port, this embodiment can greatly reduce the number of group tables that the SDN controller needs to generate. And greatly reducing the occupation of the group table resources of the OpenFlow forwarding device, reducing the interaction of the number of group tables between the SDN controller and the OpenFlow forwarding device, and improving resource utilization.
本实施例中,基于上述过程生成组表并下发到开放流转发设备上后,开放流转发设备接收到流量后,可以基于组表进行流量的转发。对于开放流转发设备接收到的流量后,其将流量报文中的匹配字段与本地的流表中的匹配字段进行匹配,如果匹配到对应的流表,则提取该流表中的组表标识(Group ID),然后去匹配到对应的组表,执行匹配到的组表。如果没有匹配到流表,则将该流量转发给SDN控制器,由SDN控制器为该流量生成流表。参见图6所示,本实施例中的流量转发控制装置还包括流表配置模块14,设置为获取流量的输出端口的端口标识、虚拟局域网标识值;根据虚拟局域网标识值确定出输出端口加入流量中的虚拟局域网的加入方式进而提取对应的共用虚拟局域网信息;以及设置为根据输出端口的端口标识、共用虚拟局域网信息以及对应的组表类型进行编码生成组表标识加入流表中发给所述输出端口对应的开放流转发设备。In this embodiment, after the group table is generated and sent to the OpenFlow forwarding device, the OpenFlow forwarding device can forward the traffic based on the group table after receiving the traffic. After the traffic received by the OpenFlow forwarding device is matched, the matching field in the traffic packet matches the matching field in the local flow table. If the corresponding flow table is matched, the group table identifier in the flow table is extracted. (Group ID), then go to the corresponding group table and execute the matched group table. If the flow table is not matched, the traffic is forwarded to the SDN controller, and the SDN controller generates a flow table for the traffic. As shown in FIG. 6, the traffic forwarding control apparatus in this embodiment further includes a flow table configuration module 14 configured to obtain a port identifier of the output port of the traffic and a virtual local area network identifier value, and determine an output port to join the traffic according to the virtual local area network identifier value. The method of adding the virtual local area network further extracts the corresponding shared virtual local area network information; and is configured to perform the coding according to the port identifier of the output port, the shared virtual local area network information, and the corresponding group table type, and generate the group table identifier into the flow table and send the information to the The open stream forwarding device corresponding to the output port.
本实施例中的上述各模块的功能可以由SDN控制器中的处理器或控制器实现。且显然,本领域的技术人员应该明白,上述各模块的功能可以通过服务器中的处理器或控制器实现。也即本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在计算机存储介质(ROM/RAM、磁碟、光盘)中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。所以,本发明不限制于任何特定的硬件和软件结合。The functions of the above modules in this embodiment may be implemented by a processor or a controller in the SDN controller. It will be apparent to those skilled in the art that the functions of the various modules described above can be implemented by a processor or controller in a server. That is, the modules or steps of the embodiments of the present invention may be implemented by a general-purpose computing device, which may be centralized on a single computing device or distributed over a network of multiple computing devices. Alternatively, they may Implemented by program code executable by the computing device, such that they can be stored in a computer storage medium (ROM/RAM, disk, optical disk) by a computing device, and in some cases, may be different from this The steps shown or described are performed sequentially, or they are separately fabricated into individual integrated circuit modules, or a plurality of modules or steps thereof are fabricated into a single integrated circuit module. Therefore, the invention is not limited to any particular combination of hardware and software.
实施例三:Embodiment 3:
为了更好的理解本发明,本实施例以图1所示的组网应用场景为示例,对本发明做进一步示例说明。For a better understanding of the present invention, the present embodiment is further illustrated by taking the networking application scenario shown in FIG. 1 as an example.
本实施例是利用SDN控制器对要下发给OF-DPA转发设备的Group进行合并处 理,从而达到节省转发设备上的Group资源,减少控制器和转发设备间关于OpenFlow Group表的消息交互。In this embodiment, the SDN controller is used to merge the group to be sent to the OF-DPA forwarding device. To save the Group resources on the forwarding device and reduce the message interaction between the controller and the forwarding device about the OpenFlow Group table.
下面仅以基于OpenFlow环境下通过SDN控制器对OF-DPA转发设备上的Group进行合并处理的方法为例,也可能应用于其他的软件定义网络中,也可以是其他OpenFlow转发设备。The following is an example of a method for merging a group on an OF-DPA forwarding device by using an SDN controller in an OpenFlow environment, and may be applied to other software-defined networks or other OpenFlow forwarding devices.
图1所示中SDN控制器通过OpenFlow协议控制两台开放流转发设备。示例中,2台OF-DPA交换机分别以DPID 1、DPID 2进行示例,分别有编号(即通信端口标识)为1、2的通信端口。The SDN controller shown in Figure 1 controls two OpenFlow forwarding devices through the OpenFlow protocol. In the example, two OF-DPA switches are respectively exemplified by DPID 1 and DPID 2, and respectively have communication ports whose numbers (ie, communication port identifiers) are 1, 2.
对DPID1和DPID2的端口进行如下VLAN属性配置:DPID1的1号端口以untagged的方式加入VLAN 10,并以tagged的方式加入VLAN[21,30];DPID1的2号端口以tagged的方式加入VLAN[1,30];DPID2的1号端口以untagged的方式加入VLAN[1,30];DPID2的2号端口以tagged方式加入VLAN[1,30]。Configure the following VLAN attributes for the ports of DPID1 and DPID2: Port 1 of DPID1 is added to VLAN 10 in untagged mode and added to the VLAN in tagged mode [21, 30]; port 2 of DPID1 is added to the VLAN in tagged mode. 1,30]; port 1 of DPID2 is added to VLAN [1, 30] in untagged mode; port 2 of DPID2 is added to VLAN in tagged mode [1, 30].
SDN控制器使用OpenFlow协议对DPID1和DPID2进行Group表下发,具体步骤如下:The SDN controller sends the group table to DPID1 and DPID2 using the OpenFlow protocol. The specific steps are as follows:
对于DPID1的1号端口,为以untagged方式加入的VLAN 10生成Group11,使用系统约定编码方式对GroupType,DefaultUntagVlan,PortId 1三个信息进行编码,编码结果作为GroupId11。Group11的内容是剥掉VLAN标签,从1号端口输出。SDN控制器使用OpenFlow协议将Group11下发给DPID1。Group11的内容及形式如下表4所示:For the port 1 of the DPID1, the group 11 is generated for the VLAN 10 that is added in the untagged mode. The three types of information, namely, GroupType, DefaultUntagVlan, and PortId1, are encoded in the system-assigned encoding mode. The encoded result is used as the GroupId11. The content of Group11 is stripped of the VLAN tag and output from port 1. The SDN controller sends the Group11 to DPID1 using the OpenFlow protocol. The content and form of Group11 are shown in Table 4 below:
表4Table 4
Figure PCTCN2017104046-appb-000003
Figure PCTCN2017104046-appb-000003
Figure PCTCN2017104046-appb-000004
Figure PCTCN2017104046-appb-000004
表中的Code(group-type,DefaultUntagVlan,port-id):为一种对group-type,DefaultUntagVlan,port-id进行编码,生成group-id的方式。The code (group-type, DefaultUntagVlan, port-id) in the table is a way to encode the group-type, DefaultUntagVlan, and port-id to generate a group-id.
对于DPID1的1号端口,为以tagged的方式加入的VLAN[21,30]生成Group12,使用系统约定的编码方式对GroupType,DefaultTagVlan,PortId 1三个信息进行编码,编码结果作为GroupId12。Group12的内容是从1号端口输出。SDN控制器使用OpenFlow协议将Group12下发给DPID1。Group12的内容及形式如下表5所示。For the port 1 of the DPID1, the group 12 is generated for the VLAN [21, 30] added in the tagged manner, and the three types of information of the GroupType, the DefaultTagVlan, and the PortId1 are encoded by using the system-defined coding scheme, and the coding result is used as the GroupId12. The contents of Group12 are output from port 1. The SDN controller sends the Group12 to DPID1 using the OpenFlow protocol. The content and form of Group12 are shown in Table 5 below.
表5table 5
Figure PCTCN2017104046-appb-000005
Figure PCTCN2017104046-appb-000005
对于DPID1的2号端口,为以tagged方式加入的VLAN[1,30]生成Group13,使用系统约定的编码方式对GroupType,DefaultTagVlan,PortId 2三个信息进行编码,编码结果作为GroupId13,Group13的内容是从2号端口输出。SDN控制器使用OpenFlow协议将Group13下发给DPID1。Group13的内容及形式如下表6所示。For the port 2 of the DPID1, the group 13 is generated for the VLAN [1, 30] added in the tagged mode, and the three types of information of the GroupType, DefaultTagVlan, and PortId 2 are encoded by using the system-defined encoding. The encoding result is used as the GroupId13, and the content of the Group13 is Output from port 2. The SDN controller sends the Group13 to DPID1 using the OpenFlow protocol. The content and form of Group13 are shown in Table 6 below.
表6Table 6
Figure PCTCN2017104046-appb-000006
Figure PCTCN2017104046-appb-000006
Figure PCTCN2017104046-appb-000007
Figure PCTCN2017104046-appb-000007
对于DPID2的1号端口,为以untagged方式加入的VLAN[1,30]生成Group21,使用系统约定编码方式对GroupType,DefaultUntagVlan,PortId 1三个信息进行编码,编码结果作为GroupId21。Group21的内容是剥掉VLAN标签,从1号端口输出。SDN控制器使用OpenFlow协议将Group21下发给DPID2。Group21的内容及形式如下表7所示。For the port 1 of the DPID 2, the group 21 is generated for the VLAN [1, 30] added in the untagged mode, and the three types of information of the GroupType, the DefaultUntagVlan, and the PortId 1 are encoded by using the system convention coding mode, and the coding result is used as the GroupId21. The content of Group21 is stripped of the VLAN tag and output from port 1. The SDN controller sends the Group21 to DPID2 using the OpenFlow protocol. The content and form of Group21 are shown in Table 7 below.
表7Table 7
Figure PCTCN2017104046-appb-000008
Figure PCTCN2017104046-appb-000008
对于DPID2的2号端口,为以tagged方式加入的VLAN[1,30]生成Group22,使用系统约定的编码方式对GroupType,DefaultTagVlan,PortId 2三个信息进行编码,编码结果作为GroupId22,Group22的内容是从2号端口输出。SDN控制器使用OpenFlow协议将Group22下发给DPID2。Group22的内容及形式如下表8所示。 For the port 2 of the DPID2, the group 22 is generated for the VLAN [1, 30] added in the tagged mode. The information of the GroupType, DefaultTagVlan, and PortId 2 is encoded by the system-defined encoding. The encoding result is the GroupId22, and the content of the Group22 is Output from port 2. The SDN controller sends the Group22 to DPID2 using the OpenFlow protocol. The content and form of Group22 are shown in Table 8 below.
表8Table 8
Figure PCTCN2017104046-appb-000009
Figure PCTCN2017104046-appb-000009
转发设备上各个端口的Group表生成之后,SDN控制器根据TOPO信息,在相关的转发设备上下发OPenFlow流表。以图1中第一主机Host1到第二主机Host2的通信为例,SDN控制器下发给OF-DPA转发设备DPID1和DPID2的OpenFlow流表示意图分别如表9和表10所示所示。After the group table of each port on the forwarding device is generated, the SDN controller sends an OPenFlow flow table to the relevant forwarding device according to the TOPO information. Taking the communication from the first host Host1 to the second host Host2 in FIG. 1 as an example, the OpenFlow flow table diagrams sent by the SDN controller to the OF-DPA forwarding devices DPID1 and DPID2 are shown in Table 9 and Table 10, respectively.
表9Table 9
Figure PCTCN2017104046-appb-000010
Figure PCTCN2017104046-appb-000010
表10Table 10
Figure PCTCN2017104046-appb-000011
Figure PCTCN2017104046-appb-000011
Figure PCTCN2017104046-appb-000012
Figure PCTCN2017104046-appb-000012
上表中MAC_H2为图1中第二主机的MAC地址。In the above table, MAC_H2 is the MAC address of the second host in FIG.
Host1到Host2的通信流程如下:The communication process from Host1 to Host2 is as follows:
Host1发出的报文从DPID1的1号端口进入交换机,匹配上DPID1上Table-id为1的流表,执行流表中Action,报文进入Table-id为2的流表。The packet sent by Host1 enters the switch from port 1 of DPID1, matches the flow table with the table-id of 1 on DPID1, and executes the action in the flow table. The packet enters the flow table with the table-id of 2.
Table-id为2的流表的Action为去执行Groupid13所指向的Group中的内容。从表6可以获知,Groupid13指向的Group13的动作是从2号口输出,报文进入DPID2交换机。The action of the flow table with the table-id of 2 is to execute the content in the Group pointed to by the Groupid13. It can be known from Table 6 that the action of Group 13 pointed to by Groupid 13 is output from port 2, and the message enters the DPID2 switch.
从DPID2的2号端口进入的报文,匹配上DPID2上Table-id为1的流表,执行流表中Action,报文进入Table-id为2的流表。The packet from the port 2 of the DPID2 is matched with the flow table with the table-id of 1 on the DPID2. The action is executed in the flow table. The packet enters the flow table with the table-id of 2.
Table-id为2的流表的Action为去执行Groupid22所指向的Group中的内容。从图4可以获知,Groupid22指向的Group22的动作是从2号口输出,报文进入Host2。The action of the flow table with the table-id of 2 is to execute the content in the Group pointed to by the Groupid22. As can be seen from FIG. 4, the action of Group 22 pointed to by Groupid 22 is output from port 2, and the message enters Host 2.
从上述流程可知,如果Host1所属的VLAN改为[1,30]内的其他值,Group13和Group22都可以满足Host1到Host2的通信需要。由此可见,采用本发明实施例提供的对同一个端口上Group合并的方式可以代替每一个VLAN对应一个Group的方式,达到节省Group资源,减少SDN控制器和OpenFlow交换机之间Group的消息交互。It can be seen from the above process that if the VLAN to which Host1 belongs is changed to other values in [1, 30], both Group13 and Group22 can satisfy the communication requirements of Host1 to Host2. It can be seen that the method of combining the groups on the same port provided by the embodiment of the present invention can replace the mode of each group corresponding to one group, thereby saving group resources and reducing group message interaction between the SDN controller and the OpenFlow switch.
显然,本领域的技术人员应该明白,上述发明的合并方法不局限在VLAN的属性上,可以根据具体的业务属性使用本发明实施例提供的方法。转发设备也不局限于OF-DPA设备,可以使用任何OpenFlow转发设备。本发明实施例对于OpenFlow转发设备上的每一个通信端口,最多只需要2个Group表,达到节省转发设备上的Group资源,减少控制器和转发设备间关于Group表的消息交互。Obviously, those skilled in the art should understand that the merging method of the foregoing invention is not limited to the attributes of the VLAN, and the method provided by the embodiment of the present invention may be used according to specific service attributes. The forwarding device is also not limited to the OF-DPA device, and any OpenFlow forwarding device can be used. In the embodiment of the present invention, only one group table is required for each communication port on the OpenFlow forwarding device, which saves the group resource on the forwarding device and reduces the message interaction between the controller and the forwarding device about the group table.
以上内容是结合具体的实施方式对本发明实施例所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。 The above is a detailed description of the embodiments of the present invention in conjunction with the specific embodiments, and the specific embodiments of the present invention are not limited to the description. It will be apparent to those skilled in the art that the present invention may be made without departing from the spirit and scope of the invention.
工业实用性Industrial applicability
本发明实施例提供的技术方案可以应用于通信领域。根据本发明实施例提供的流量转发控制方法、装置、软件定义网络控制器及计算机存储介质,获取开放流转发设备(OpenFlow转发设备)各通信端口的虚拟局域网配置信息,虚拟局域网配置信息包含:通信端口所加入的虚拟局域网信息以及加入各虚拟局域网的加入方式;然后将各通信端口上加入方式相同的所有虚拟局域网信息转换为对应一个共用虚拟局域网信息生成于一个组表中;也即本发明实施例中的一个组表对应通信端口上通过相同加入方式对应的所有虚拟局域网,并非一个组表对应一个虚拟局域网;然后将组表下发给开放流转发设备,以供开放流转发设备转发流量。本发明实施例中的一个组表对应通信端口上通过相同加入方式对应的所有虚拟局域网,因此对于一个通信端口,所需的组表个数等于其加入虚拟局域网的加入方式个数,可以大大减少软件定义网络控制器需要生成以及下发的组表量,同时也可以降低开放流转发设备消耗的组表资源,提升资源满意度。 The technical solution provided by the embodiment of the present invention can be applied to the field of communications. The traffic forwarding control method and device, the software-defined network controller, and the computer storage medium provided by the embodiment of the present invention acquire the virtual local area network configuration information of each communication port of the OpenFlow forwarding device (OpenFlow forwarding device), and the virtual local area network configuration information includes: The virtual local area network information added by the port and the joining mode of joining the virtual local area network; then converting all the virtual local area network information of the same manner on each communication port into a corresponding shared virtual local area network information is generated in a group table; that is, the implementation of the present invention A group table in the example corresponds to all the virtual local area networks corresponding to the same joining mode on the communication port, and not one group table corresponds to one virtual local area network; then the group table is sent to the open stream forwarding device for the open stream forwarding device to forward the traffic. A group table in the embodiment of the present invention corresponds to all virtual local area networks corresponding to the same joining mode on the communication port. Therefore, the number of group tables required for a communication port is equal to the number of joining modes of the virtual local area network, which can be greatly reduced. The software-defined network controller needs to generate and deliver the group table quantity, and can also reduce the group table resources consumed by the open stream forwarding device to improve resource satisfaction.

Claims (11)

  1. 一种流量转发控制方法,包括:A traffic forwarding control method includes:
    获取开放流转发设备各通信端口的虚拟局域网配置信息,所述虚拟局域网配置信息包含:通信端口所加入的虚拟局域网信息以及加入各虚拟局域网的加入方式;Obtaining virtual local area network configuration information of each communication port of the open flow forwarding device, where the virtual local area network configuration information includes: virtual local area network information added by the communication port and joining mode of joining each virtual local area network;
    将所述各通信端口上加入方式相同的所有虚拟局域网信息转换为对应一个共用虚拟局域网信息,并将得到的共用虚拟局域网信息生成于类型与所述加入方式相对应的组表中;Converting all the virtual local area network information of the same manner to the corresponding one of the virtual local area network information, and generating the obtained shared virtual local area network information in a group table corresponding to the joining mode;
    将所述组表下发给所述开放流转发设备,以供所述开放流转发设备转发流量。And sending the group table to the OpenFlow forwarding device, where the OpenFlow forwarding device forwards traffic.
  2. 如权利要求1所述的流量转发控制方法,其中,所述虚拟局域网配置信息还包括通信端口的端口标识;The traffic forwarding control method according to claim 1, wherein the virtual local area network configuration information further comprises a port identifier of the communication port;
    将通信端口上加入方式相同的所有虚拟局域网信息转换为对应一个共用虚拟局域网信息,并将得到的共用虚拟局域网信息生成于所述组表中包括:Converting all the virtual local area network information of the same manner to the corresponding one of the virtual local area network information on the communication port, and generating the obtained shared virtual local area network information in the group table includes:
    根据所述通信端口加入所述各虚拟局域网的加入方式选择对应的共用虚拟局域网信息,将该共用虚拟局域网信息设置于类型与所述加入方式相对应一个组表中;并将选择的共用虚拟局域网信息以及所述通信端口的端口标识和该组表的类型进行编码生成该组表的组表标识。Selecting corresponding shared virtual local area network information according to the joining mode of the communication port joining the virtual local area networks, setting the shared virtual local area network information to a group table corresponding to the joining mode; and selecting the selected shared virtual local area network The information and the port identification of the communication port and the type of the set of tables are encoded to generate a group table identifier for the set of tables.
  3. 如权利要求2所述的流量转发控制方法,其中,所述虚拟局域网信息为虚拟局域网标识值,所述加入方式为带标签方式或不带标签方式。The traffic forwarding control method of claim 2, wherein the virtual local area network information is a virtual local area network identification value, and the joining mode is a labeled mode or a non-labeled mode.
  4. 如权利要求3所述的流量转发控制方法,其中,所述共用虚拟局域网信息包括默认带标签虚拟局域网值和默认不带标签虚拟局域网值;The traffic forwarding control method according to claim 3, wherein the shared virtual local area network information comprises a default tagged virtual local area network value and a default unlabeled virtual local area network value;
    所述根据各虚拟局域网的加入方式选择对应的共用虚拟局域网信息包括:The selecting the corresponding shared virtual local area network information according to the joining manner of each virtual local area network includes:
    对于加入方式为带标签方式,选择默认带标签虚拟局域网值;For the join mode is labeled mode, select the default tagged virtual local area network value;
    对于加入方式为不带标签方式,选择默认不带标签虚拟局域网值。For the join mode, there is no label mode, and the default unlabeled virtual LAN value is selected.
  5. 如权利要求3或4所述的流量转发控制方法,其中,The traffic forwarding control method according to claim 3 or 4, wherein
    对于加入方式为取消带标签方式,生成的组表内容包括:剥掉报文中的虚拟局域网标签,然后从指定通信端口输出;If the join mode is the unlabeled mode, the generated group table content includes: stripping the virtual local area network label in the packet, and then outputting from the designated communication port;
    对于加入方式为带标签方式,生成的组表内容包括:将报文直接从指定通信端口输出。 For the join mode, the generated group table includes: directly outputting the packet from the designated communication port.
  6. 如权利要求3或4所述的流量转发控制方法,其中,所述方法还包括:The method of controlling traffic forwarding according to claim 3 or 4, wherein the method further comprises:
    获取流量的输出端口的端口标识、虚拟局域网标识值;Obtain the port ID and virtual local area network identifier of the output port of the traffic;
    根据所述虚拟局域网标识值确定所述输出端口加入所述流量中的虚拟局域网的加入方式,进而提取对应的共用虚拟局域网信息;Determining, by the virtual local area network identifier, the joining manner of the output port to join the virtual local area network in the traffic, and extracting the corresponding shared virtual local area network information;
    根据所述输出端口的端口标识、所述共用虚拟局域网信息以及对应的组表类型进行编码生成组表标识加入流表中发给所述输出端口对应的开放流转发设备。And performing the encoding according to the port identifier of the output port, the shared virtual local area network information, and the corresponding group table type to generate an open flow forwarding device corresponding to the output port in the join flow table.
  7. 一种流量转发控制装置,包括:A traffic forwarding control device includes:
    信息获取模块,设置为获取开放流转发设备各通信端口的虚拟局域网配置信息,所述虚拟局域网配置信息包含:通信端口所加入的虚拟局域网信息以及加入各虚拟局域网的加入方式;The information obtaining module is configured to obtain virtual local area network configuration information of each communication port of the open flow forwarding device, where the virtual local area network configuration information includes: virtual local area network information added by the communication port and joining mode of joining the virtual local area network;
    组表配置模块,设置为将所述各通信端口上以加入方式相同的所有虚拟局域网信息转换为对应一个共用虚拟局域网信息,并将得到的共用虚拟局域网信息生成于类型与所述加入方式相对应的组表中;The group table configuration module is configured to convert all the virtual local area network information in the same manner as the shared virtual local area network information on the communication ports, and generate the obtained shared virtual local area network information in a type corresponding to the joining mode. In the group table;
    下发模块,设置为所述组表下发给所述开放流转发设备,以供所述开放流转发设备转发流量。The sending module is configured to send the group table to the open stream forwarding device, so that the open stream forwarding device forwards the traffic.
  8. 如权利要求7所述的流量转发控制装置,其中,所述虚拟局域网信息为虚拟局域网标识值,所述加入方式为带标签方式或不带标签方式;所述配置信息还包括通信端口的端口标识;The traffic forwarding control device of claim 7, wherein the virtual local area network information is a virtual local area network identification value, the joining mode is a labeled mode or a non-labeled mode; and the configuration information further includes a port identifier of the communication port. ;
    所述组表配置模块设置为根据所述通信端口加入所述各虚拟局域网的加入方式选择对应的共用虚拟局域网信息,将该共用虚拟局域网信息生成于类型与所述加入方式相对应一个组表中,并将选择的共用虚拟局域网信息以及所述通信端口的端口标识和该组表的类型进行编码生成该组表的组表标识。The group table configuration module is configured to select corresponding shared virtual local area network information according to the joining manner of the communication port joining the virtual local area networks, and generate the shared virtual local area network information in a group table corresponding to the joining mode. And encoding the selected shared virtual local area network information and the port identifier of the communication port and the type of the group table to generate a group table identifier of the group table.
  9. 如权利要求8所述的流量转发控制装置,其中,还包括流表配置模块,设置为获取流量的输出端口的端口标识、虚拟局域网标识值,根据所述虚拟局域网标识值确定出所述输出端口加入所述流量中的虚拟局域网的加入方式进而提取对应的共用虚拟局域网信息;以及用于根据所述输出端口的端口标识、所述共用虚拟局域网信息以及对应的组表类型进行编码生成组表标识加入流表中发给所述输出端口对应的开放流转发设备。The traffic forwarding control device of claim 8, further comprising a flow table configuration module, configured to obtain a port identifier of the output port of the traffic, a virtual local area network identifier value, and determine the output port according to the virtual local area network identifier value Adding a virtual local area network in the traffic to extract the corresponding shared virtual local area network information; and performing coding to generate a group table identifier according to the port identifier of the output port, the shared virtual local area network information, and the corresponding group table type The flow table is added to the open flow forwarding device corresponding to the output port.
  10. 一种软件定义网络控制器,其中,包括如权利要求7-9任一项所述的流量转 发控制装置。A software-defined network controller, comprising the traffic flow according to any one of claims 7-9 Hair control device.
  11. 一种计算机存储介质,所述计算机存储介质中存储有计算机可执行的一个或多个程序,所述一个或多个程序被所述计算机执行时使所述计算机执行如根据权利要求1-6中任一项所述的流量转发控制方法。 A computer storage medium having stored therein one or more programs executable by a computer, the one or more programs being executed by the computer to cause the computer to perform as in claims 1-6 The traffic forwarding control method according to any one of the preceding claims.
PCT/CN2017/104046 2016-09-28 2017-09-28 Traffic forwarding control method, apparatus, and software defined networking controller and computer storage medium WO2018059503A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610859115.5 2016-09-28
CN201610859115.5A CN107872343B (en) 2016-09-28 2016-09-28 Flow forwarding control method and device and software defined network controller

Publications (1)

Publication Number Publication Date
WO2018059503A1 true WO2018059503A1 (en) 2018-04-05

Family

ID=61761835

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/104046 WO2018059503A1 (en) 2016-09-28 2017-09-28 Traffic forwarding control method, apparatus, and software defined networking controller and computer storage medium

Country Status (2)

Country Link
CN (1) CN107872343B (en)
WO (1) WO2018059503A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114205236A (en) * 2020-09-18 2022-03-18 中兴通讯股份有限公司 Network configuration method, terminal, system and storage medium
CN114827209A (en) * 2022-05-07 2022-07-29 南京四维智联科技有限公司 Data acquisition method and device, electronic equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103023779A (en) * 2012-08-13 2013-04-03 中兴通讯股份有限公司 Method and device for processing data message
CN103765823A (en) * 2011-07-08 2014-04-30 瑞典爱立信有限公司 Controller driven OAM for OpenFlow
CN104660511A (en) * 2015-01-16 2015-05-27 杭州华三通信技术有限公司 Transmission method and equipment for multicast message in SDN network
CN105791174A (en) * 2014-12-25 2016-07-20 中兴通讯股份有限公司 Line card determining method and apparatus, line card determining and processing method and apparatus and line card determining system
US20160234067A1 (en) * 2015-02-10 2016-08-11 Alcatel-Lucent Canada Inc. Method and system for identifying an outgoing interface using openflow protocol

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8776207B2 (en) * 2011-02-16 2014-07-08 Fortinet, Inc. Load balancing in a network with session information
JP6275850B2 (en) * 2013-08-31 2018-02-07 華為技術有限公司Huawei Technologies Co.,Ltd. Method and apparatus for processing operation requests in a storage system
CN103763367A (en) * 2014-01-17 2014-04-30 浪潮(北京)电子信息产业有限公司 Method and system for designing distributed virtual network in cloud calculating data center

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103765823A (en) * 2011-07-08 2014-04-30 瑞典爱立信有限公司 Controller driven OAM for OpenFlow
CN103023779A (en) * 2012-08-13 2013-04-03 中兴通讯股份有限公司 Method and device for processing data message
CN105791174A (en) * 2014-12-25 2016-07-20 中兴通讯股份有限公司 Line card determining method and apparatus, line card determining and processing method and apparatus and line card determining system
CN104660511A (en) * 2015-01-16 2015-05-27 杭州华三通信技术有限公司 Transmission method and equipment for multicast message in SDN network
US20160234067A1 (en) * 2015-02-10 2016-08-11 Alcatel-Lucent Canada Inc. Method and system for identifying an outgoing interface using openflow protocol

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114205236A (en) * 2020-09-18 2022-03-18 中兴通讯股份有限公司 Network configuration method, terminal, system and storage medium
WO2022057477A1 (en) * 2020-09-18 2022-03-24 中兴通讯股份有限公司 Network configuration method, terminal, system, and storage medium
EP4117233A4 (en) * 2020-09-18 2023-10-25 ZTE Corporation Network configuration method, terminal, system, and storage medium
CN114827209A (en) * 2022-05-07 2022-07-29 南京四维智联科技有限公司 Data acquisition method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN107872343B (en) 2022-05-06
CN107872343A (en) 2018-04-03

Similar Documents

Publication Publication Date Title
CN111683011B (en) Message processing method, device, equipment and system
WO2018205982A1 (en) Method and device for implementing broadcast and multicast in software-defined network and storage medium
US9900263B2 (en) Non-overlay resource access in datacenters using overlay networks
AU2014236926B2 (en) Software-defined multinetwork bridge
US10484303B2 (en) Replication with dedicated metal deployment in a cloud
US8934486B2 (en) System and method for implementing multicast over a label-switched core network
US8817782B2 (en) Method to route multicast data in SPB network by establishing the virtual PIM adjacency across the SPB networks in a single PIM domain
US20130077625A1 (en) Extension of the interpretation and definition of the is-is tlv/sub-tlv
US20140003428A1 (en) Multicast Data Forwarding Method and Device Supporting Virtual Terminal
CN102281181B (en) Method, device and system for realizing multicast forwarding in EVB (Extended VLAN (Virtual Local Area Network) Bridge) equipment
US8855118B2 (en) Source discovery for non-flooding multicast using openflow
EP3069471B1 (en) Optimized multicast routing in a clos-like network
US20170078115A1 (en) Multi-homed access
CN109121026B (en) Method and system for realizing VOLT (Voice over Internet protocol) based on logic port
WO2014121468A1 (en) Method and device for establishing multicast data channel in network virtualization system
WO2017157206A1 (en) Method of interconnecting cloud data centers, and device
CN108965226B (en) Data acquisition method and device based on video network
CN110545395B (en) Video networking conference switching method and device
WO2019033910A1 (en) Multi-port multicast method and device, and computer readable storage medium
US10243884B2 (en) Packet transmission method and apparatus
WO2018059503A1 (en) Traffic forwarding control method, apparatus, and software defined networking controller and computer storage medium
US10749741B1 (en) Methods and systems for auto-discovery of VXLAN VTEPs using PIM BSR
CN103716244A (en) Method and device enabling extra-VPN forwarding of multicasts to be achieved
WO2014169856A1 (en) Multicast communication method and aggregation switch
CN110753135A (en) IP address configuration method, configuration equipment and storage medium

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17854953

Country of ref document: EP

Kind code of ref document: A1