WO2013082983A1 - Method and apparatus for data transmission between openflow network domains - Google Patents

Method and apparatus for data transmission between openflow network domains Download PDF

Info

Publication number
WO2013082983A1
WO2013082983A1 PCT/CN2012/084021 CN2012084021W WO2013082983A1 WO 2013082983 A1 WO2013082983 A1 WO 2013082983A1 CN 2012084021 W CN2012084021 W CN 2012084021W WO 2013082983 A1 WO2013082983 A1 WO 2013082983A1
Authority
WO
WIPO (PCT)
Prior art keywords
network
network domain
domain
information
controller
Prior art date
Application number
PCT/CN2012/084021
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 WO2013082983A1 publication Critical patent/WO2013082983A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams

Definitions

  • the present invention relates to the field of communications, and in particular to a method and an apparatus for transmitting data between OpenFlow network domains.
  • BACKGROUND OF THE INVENTION The Stanford University in the United States proposed the OpenFlow protocol in 2008.
  • the protocol uses a forwarding/control separation architecture.
  • the external control plane entity uses the OpenFlow protocol to control the forwarding plane device to implement various forwarding logics.
  • the main function of the forwarding plane device is to control according to OpenFlow.
  • the flow table sent by the device performs controlled forwarding, and its behavior is standardized: Receive a message, take out the L2/L3/L4 related field value of its header, and use it as a key to find the flow table, matching After an entry is made, the packet field is transformed according to the instruction set in the content of the entry, and then forwarded to a logical or physical port according to the indication.
  • This protocol further evolved to become the basis of Software Defined Network (SDN) technology, which can implement various complex network applications by software programming on the control plane, and the forwarding plane device does not need any change, because the control plane adopts Universal server + general-purpose operating system, and can be implemented using a common software programming tool or a scripting language such as Python, which makes the support of the new network protocol very simple, and the new technology deployment cycle is greatly shortened.
  • a basic OpenFlow network consists of two main control entities: the network controller (Controller) and the switch (OpenFlow Switch).
  • a centralized network controller is deployed in the network responsible for the management domain control of all OpenFlow switches throughout the network domain.
  • a single centralized controller can become a bottleneck for network scale.
  • OpenFlow network For example, the delay of establishing a flow of a switch far away from the controller increases, the throughput of a single controller processing the exchange path request is limited, and the end-to-end path bandwidth is limited. Poor controllability, etc.
  • the academic community proposes a distributed network controller solution, but these solutions generally deploy multiple controllers on the network, and implement common management and control of multiple network controllers with consistent status through event message synchronization or storage sharing.
  • OpenFlow network In an actual network deployment, an OpenFlow network is generally deployed in an area. OpenFlow networks in multiple areas are interconnected through a limited number of links, but different OpenFlow network domains do not interfere with each other, that is, a network in a region.
  • the controller is only responsible for data exchange within the local domain, and cannot exchange data between the local network domain and other network domains. That is, in the related art, there is no data exchange solution for different OpenFlow network domains. In view of the above problems in the related art, an effective solution has not yet been proposed. SUMMARY OF THE INVENTION In the related art, a technical problem of a solution for data exchange between different OpenFlow network domains has not been proposed.
  • the present invention provides a method and an apparatus for transmitting data between OpenFlow network domains to solve at least the above technical problem.
  • a method for transmitting data between OpenFlow network domains including: a controller of a local network domain acquires global network information, where the global network information is the local network domain and a neighboring network. Information required for data exchange between domains; for data packets whose destination address is not in the local network domain, the controller of the local network domain controls the switch of the local network domain according to the global network information The data message is sent to the neighboring network domain.
  • the global network information includes: link state information between the local network domain and the neighboring network domain, and network information of other network domains except the local network domain.
  • the foregoing link state information is obtained by: the controller of the local network domain instructing the switch of the local network domain to forward the first link probe message to the phase via a switch of the neighboring network domain a controller of the local domain; the controller of the local network domain receives the first link probe message forwarded by a controller from the neighboring domain to obtain the link state information.
  • the foregoing link state information is obtained by: receiving, by the controller of the local network domain, a second link detection message reported by the switch of the local network domain, where the second link detection message is from The switch of the neighboring network domain; the controller of the local network domain acquires the link state information according to the received second link probe message.
  • the network information of the other network domain is obtained by: acquiring, by the controller of the local network domain, network information of the other network domain from a controller of the neighboring network domain.
  • the network information of the other network domain includes: terminal device address information and/or address information prefix and/or network domain identifier information of the neighboring network domain, and the neighboring network domain and the other network domain.
  • the global network information further includes: link path information between the local network domain and the destination network domain indicated by the destination address.
  • an apparatus for transmitting data between OpenFlow network domains which is located in a local network domain, and includes: an obtaining module, configured to acquire global network information, where the global network information is the local network Information required for data exchange between the domain and the neighboring network domain; a control module, configured to control a data packet whose destination address is not in the local network domain, and control the switch of the local network domain according to the global network information
  • the data message is sent to the neighboring network domain.
  • the global network information includes: link state information between the local network domain and the neighboring network domain, and network information of other network domains except the local network domain.
  • the obtaining module includes: a sending unit, configured to instruct the switch of the local network domain to forward the first link probe message to the controller of the neighboring domain via the switch of the neighboring network domain; a receiving unit, configured to receive the first link detection message that is forwarded by a controller from the neighboring domain, where the first acquiring unit is configured to acquire the link state information according to the first link detection message.
  • the obtaining module includes: a second receiving unit, configured to receive a second link probe message reported by the switch of the local network domain, where the second link probe message is from the neighboring network domain And a second acquiring unit, configured to acquire the link state information according to the received second link probe message.
  • the acquiring module is configured to acquire network information of the other network domain from a controller of the neighboring network domain.
  • the controller of the local network domain controls the switch of the local network domain to send the data packet whose destination address is not in the local domain to the adjacent network domain according to the global network information, and solves the related art.
  • the technical problem of the solution for data exchange between different OpenFlow network domains can achieve the effect of data exchange between different OpenFlow network domains.
  • FIG. 1 is a flowchart of a method for transmitting data between OpenFlow network domains according to an embodiment of the present invention
  • FIG. 5 is a schematic diagram of a process of exchanging data packets in a source network domain according to an embodiment of the present invention;
  • FIG. 7 is a schematic flowchart of a method for a controller to establish a global network information database according to an embodiment of the present invention.
  • FIG. 1 is a flowchart of a method for transmitting data between OpenFlow network domains according to an embodiment of the present invention.
  • the method includes: Step S102: A controller of a local network domain acquires global network information, where the global network information is required for data exchange between the local network domain and a neighboring network domain. Information;
  • a global network information database may be established in the controller of the local network domain to store the global network information.
  • Step S104 For a data packet whose destination address is not in the local network domain, the controller of the local network domain controls, according to the global network information, a switch of the local network domain to send the data packet to the Adjacent network domain.
  • the controller of the local network domain can control the switch of the local network domain to send the data packet whose destination address is not in the local domain to the adjacent network domain, according to the obtained global network information, thus implementing different OpenFlow networks. Data exchange between domains.
  • the controller of the local network domain can determine whether the data packet needs to be exchanged across the network domain, for example, according to the data packet, for the data packet reported by the switch in the local domain.
  • the destination address is used to determine whether a cross-network domain exchange is required.
  • the controller of the local network domain sends a flow table directly to the local domain switch to establish a switching path.
  • Data packet according to the path selection policy, the controller of the local network domain selects an edge switch as an egress switch, and controls the data packet to be forwarded to the adjacent network domain.
  • the global network information may include the following information: link state information between a local network domain and a neighboring network domain, and network information of other network domains except the local network domain. .
  • a new networking method based on the OpenFlow network can be implemented by using the processing steps in the step S102, the step S104, and the global network information. For example, the following networking method can be implemented:
  • the OpenFlow network is composed of at least one network domain, and at least one network link exists between the adjacent network domains; the network domain is composed of a controller and at least one switch; the controller of the network domain is responsible for the switch device in the domain. Management, and exchange path control of data packets within the domain; controllers of the network domain collect link state information with neighboring network domains, and exchange controllers of other network domains with controllers of the neighboring domains Network information, establishing a global network information database; the controller of the network domain controls the local domain switch to send the data packet to the domain and the phase according to the global network information database information for the data packet whose destination address is not in the local domain. On the link of the neighbor's connection.
  • the foregoing link state information may be obtained by means of active detection or passive detection.
  • the specific process of active detection is as follows:
  • the controller of the local network domain indicates the local network domain.
  • the switch forwards the first link probe message to the controller of the neighboring domain via the switch of the neighboring network domain;
  • the controller of the local network domain receives the forwarder from the controller of the neighboring domain
  • the first link probe message is obtained to obtain the link state information.
  • the controller of the local network domain instructs the switch of the network domain to send a network connection probe message on all ports, if the controller of the neighboring domain receives the report reported by the switch of the neighboring domain.
  • the network connection probe message the controller of the neighboring domain forwards the network connection probe message to a controller of the network domain.
  • the specific process of the passive detection is as follows: the controller of the local network domain receives the second link detection message reported by the switch of the local network domain, where the second link detection message is from the phase a switch of the neighboring network domain; the controller of the local network domain acquires the link state information according to the received second link probe message.
  • the controller of the local network domain receives the network connection probe message sent by the neighboring domain switch reported by the switch of the local network domain, and collects the network domain according to the network connection probe message. Link state information of the neighboring domain.
  • the network information of the other network domain may be obtained by: performing, by the controller of the local network domain, data exchange with the neighboring network domain to obtain network information of the foregoing other network domain, that is, from the foregoing
  • the network information of the other network domain is obtained from a controller of a neighboring network domain.
  • the network information of the other network domain includes: terminal device address information and/or address information prefix and/or network domain identifier information of the neighboring network domain, and between the neighboring network domain and the other network domain. Link status information.
  • the foregoing global network information further includes: link path information between the local network domain and the destination network domain indicated by the destination address, and may include, for example, the following path information: The intermediate network domain between the domain (local network domain) and the destination network domain, and/or the link path between adjacent network domains on the path, and so on.
  • a data transmission device between the OpenFlow network domains is also provided.
  • the device is located in the local network domain, and is used to implement the foregoing embodiments and preferred embodiments.
  • the module is described in the device.
  • the term "module" may implement a combination of software and/or hardware of a predetermined function.
  • the device includes: an obtaining module 20, configured to acquire global network information, where the global network information is information required for data exchange between the local network domain and a neighboring network domain;
  • the module 22 is coupled to the obtaining module 20, configured to: for the data packet whose destination address is not in the local network domain, control, by the global network information, the switch of the local network domain to send the data packet to the phase Neighbor network domain.
  • the global network information includes: link state information between the local network domain and the neighboring network domain, and network information of other network domains except the local network domain.
  • the obtaining module 20 may include the following unit, configured to obtain the foregoing link state information in an active detection manner: a sending unit, configured to: indicate, by the switch of the local network domain, that the first link detection message is sent by using the neighboring link The switch of the network domain is forwarded to the controller of the neighboring domain; the first receiving unit is coupled to the sending unit, configured to receive the first link probe message forwarded by the controller of the neighboring domain; The acquiring unit is coupled to the first receiving unit, configured to acquire the link state information according to the first link detection message.
  • the obtaining module 20 may further include: a unit for acquiring the link state information in a passive detection manner: a second receiving unit, configured to receive a second link detection message reported by the switch of the local network domain, where The second link detection message is sent from the switch of the neighboring network domain; the second acquisition unit is coupled to the second receiving unit, and configured to acquire the chain according to the received second link detection message.
  • Road status information Preferably, the obtaining module 20 is configured to acquire network information of the other network domain from a controller of the neighboring network domain.
  • a controller of each network domain interacts with controllers of other network domains to detect network link information between adjacent domains, and Exchange information with other network domain controllers to collect global network information.
  • the network controller directly sends a flow table to the local domain switch to establish a switching path.
  • the network controller controls the local network switch to send the data packet to the link connecting the local domain and the adjacent domain according to the global network information database information of the domain.
  • Embodiment 1 As described in the above embodiment, a new OpenFlow network networking method can be implemented based on the data transmission method between OpenFlow network domains described in the foregoing embodiments.
  • the networking includes: a network domain A, a network domain B, and a network domain.
  • OpenFlow network domain A is composed of controller A and at least one switch 301, and hosts or terminals 302 in the network are connected to OpenFlow network domain B and network domain C through switch 301.
  • the adjacent OpenFlow network domains are connected by at least one link, and the multiple OpenFlow network domains form an interconnected OpenFlow network.
  • the controller A of the OpenFlow network domain A is only responsible for the management and control of the switch 301 in the local domain.
  • the controllers A of the plurality of OpenFlow network domains A form a control plane network 303, and exchange network topology information to construct a local global network information base.
  • the controllers of the network domain control the data packets sent by the switch in the local domain according to the destination address of the data packet, or forward the data packet to the switch in the local domain or On the terminal, or forward the data packet to the switch in the adjacent domain.
  • the behavior of the switches in the respective OpenFlow network domains is the same as that of the OpenFlow switch in the related art, that is, data forwarding is performed only according to the flow table sent by the controller of the network domain.
  • FIG. 4 is a schematic diagram of a flow of a link detection process of a neighboring network domain by a controller of a local network domain according to an embodiment of the present invention.
  • the following is an example of the process of data exchange between network domain A and network domain B.
  • the controller instructs the switch to send a link probe message on all ports, and when the switch adjacent to the switch receives the link probe message, the link probe message is reported to The controller of the network domain to which it belongs. For switches adjacent to other network domains, the link probe message is connected by the switch of the adjacent domain.
  • Step S402 The new switch AS1 joins the network domain A, and establishes a connection with the controller A to perform related operations such as security verification, basic information reporting, and switch configuration.
  • step S404 the controller A instructs the switch AS1 to perform a network detection process.
  • the controller A periodically sends an instruction to the switch AS1 to instruct the switch AS1 to send the specified network probe message on the designated port.
  • Step S406 The network probe message is sent to the port connected to the switch BS1 of the network domain B by the switch AS1.
  • step S408 the switch BS1 receives the network probe message and further reports it through the OpenFlow protocol.
  • Controller B of network domain B Controller B receives the network probe message reported by the switch BS1, and determines that the network probe message is from the network domain A, and is forwarded to the controller A of the network domain A through the control plane network;
  • the controller B of the network domain B learns the control of the network domain A.
  • the mode of the device A is solved in the control plane network.
  • the controller of the network domain A downloads the controller information configuration file of other network domains, and the network domain A The controller information is reported to the controller of the other network domain.
  • the controller A receives the network probe message forwarded by the controller B, and the network probe message sent in step 202 is used to collect the switch BS1 of the network domain B.
  • Step S414-Step S422 the controller B periodically instructs the switch BS1 to initiate a network detection process. Similar to the steps S404-S414, the link detection message initiated by the switch BS1 is reported to the controller A through the switch AS1, and the controller A further controls.
  • the face network forwards back to the controller controller B to collect the link state between the switch AS1 of the network domain A and the port of the switch BS1 of the network domain B.
  • the link detection message is a Link Layer Discovery Protocol (LLDP) message, or a Link Management Protocol (LMP) message, or other link can be implemented.
  • the protocol message of the probe can be determined according to the specific network environment.
  • network link detection between OpenFlow network domains can also be passive.
  • the controller instructs the switch to send a link probe message on all ports, and when the switch of the neighboring domain receives the link probe message, the controller of the adjacent domain according to the neighbor
  • the link probe message content reported by the switch of the domain can determine the inter-domain link state, that is, through the steps S404-S408, the controller B of the network domain B can collect the switch of the switch AS1 and the network domain B of the network domain A.
  • the link state between the ports of the BS1; in step S414-S418, the controller A of the network domain A can collect the link state between the switch BS1 of the network domain B and the port of the switch AS1 of the network domain A.
  • Embodiment 2 In the source network domain, for a data packet whose destination address is another network domain, the controller controls the local domain switch to forward the data packet to the adjacent network domain, and more specifically, to the adjacent network domain. On the switch port. As shown in FIG. 5, the specific steps are as follows: Step S502: The host AH1 in the source network domain A sends a data packet to the network, and the destination address is a network domain.
  • Step S506 According to the OpenFlow protocol rule, the data packet cannot be forwarded according to the local flow table. The switch AS2 reports the packet to the controller A of the local domain through the OpenFlow message.
  • step S508 the controller A queries the local global network information database according to the information reported by the switch AS2, and identifies the destination address of the data packet in the network domain. B, and further selecting the switch AS1 to forward to the adjacent network domain according to the configured switching path rule; here, the controller A queries the result according to the local global network information database, and the configured switching path rule, or directly routes the data packet to Destination network domain, or route data packets to an intermediate network domain Transit; In step S510, the controller A sends a forwarding flow table to the switch AS2, indicating that the current flow is forwarded to the switch AS1 on the switch AS2. In step S512, the controller A sends a forwarding flow table to the switch AS1, indicating that the current flow is in the switch.
  • the AS1 forwards the port to the network domain B.
  • the switch AS2 forwards the data packet to the switch AS1 according to the instruction in the flow table entry sent by the controller A.
  • the switch AS1 is based on The local flow table entry forwards the data packet to the port interconnected with the network domain B.
  • the controller controls the local domain switch to forward the data packet to the network host or terminal of the local domain for the data packet whose destination address is the local domain. As shown in FIG.
  • Step S602 The switch BS1 connected to the source network domain receives a data packet; Step S604, the switch BS1 queries the local flow table miss entry; here, according to the OpenFlow protocol
  • the routing rule is as follows: If the switch BS1 receives the data packet belonging to the current flow, the switch AS1 may have a valid flow table entry, and the switch BS1 directly forwards the data packet according to the flow table; Step S606, according to The OpenFlow protocol rule, for the data packet that cannot be forwarded according to the local flow table, the switch BS1 reports the packet to the controller B of the local domain through the OpenFlow message; in step S608, the controller B identifies the datagram according to the information reported by the switch BS1.
  • the destination address of the text is located in the local area, and the switch BS2 is further forwarded to the host BH1 according to the configured switching path rule.
  • the controller B determines the destination address of the data packet to be located in another network according to the local global network information database query result. Domain, or route data packets directly to the destination network domain, or The message is routed to an intermediate network domain for forwarding.
  • the controller B sends a forwarding flow table to the switch BS1, indicating that the current flow is forwarded to the switch BS2 on the switch BS1.
  • Step S612 the controller B goes to the switch BS2.
  • FIG. 7 is a schematic flowchart of a method for a controller to establish a global network information database according to an embodiment of the present invention.
  • the controller when the OpenFlow network domain joins the interconnected OpenFlow network, the controller needs to establish a global network information database:
  • the controller of an OpenFlow network domain needs to determine the destination address of the data packet or the data stream, and the required global network information includes , the terminal address information belonging to each network domain, or specific address information such as a MAC address and/or an IP address, or an address prefix.
  • the controller of an OpenFlow network domain determines the data path of the data packet or the data stream.
  • the required global network information includes the intermediate network domain between the source network domain and the destination network domain, and the adjacent network on the path. What are the link paths between domains?
  • Step S702 an OpenFlow network domain applies to join an interconnected OpenFlow network
  • Step S704 the controller of the OpenFlow network domain collects The network topology information in the domain, including the identity of the switch, the port configuration and status, the link status between the switches, and the learning of the terminal MAC address in the local domain (for the implementation of the Layer 3 routing network, the IP address of the learning terminal is also required);
  • Step S706 the controller of the OpenFlow network domain exchanges global network topology information with the controller of the other network domain, including the network domain identifier, the host/terminal information, and the link state information between the network domains, etc.;
  • Step S708 The controller of the OpenFlow network domain indicates that the switch in the local domain performs inter-domain topology detection, and collects link state information between the local domain and the neighbor network domain.
  • Step S710 The controller of the OpenFlow network domain establishes a local global network information database according to the collected related information.
  • the inter-domain topology information can be further simplified by network planning in a specific implementation.
  • the domain ID of an OpenFlow network domain X is pre-configured to be 01
  • the intra-domain switch ID prefix is 01.
  • the intra-domain host/terminal is 0A ⁇ 12
  • the IP address prefix of the host/terminal in the domain is 10.12.* or 30.10.*.
  • Table 1 The format of the global network information database finally established by the controller of the OpenFlow network domain is as shown in Table 1:
  • Table 1 shows the format of the global network information data stored by the controller.
  • the technical solution provided by the foregoing embodiment can solve the problem of data exchange between different OpenFlow network domains.
  • the controllers of the different OpenFlow network domains form network information between the control plane network interaction network domains, and the controller of the OpenFlow network domain is only responsible for the management and control of the switches in the domain. Easy to manage independent OpenFlow networks to communicate with each other.
  • software is also provided for performing the technical solutions described in the above embodiments and preferred embodiments.
  • a storage medium is provided, the software being stored, including but not limited to: an optical disk, a floppy disk, a hard disk, a rewritable memory, and the like.
  • modules or steps of the embodiments of the present invention can be implemented by a general computing device, which can be concentrated on a single computing device or distributed in multiple computing devices. Alternatively, they may be implemented by program code executable by the computing device, such that they may be stored in the storage device by the computing device and, in some cases, may be different from 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.
  • embodiments of the invention are not limited to any specific combination of hardware and software.
  • the above is only the preferred embodiment of the present invention, and is not intended to limit the present invention, and various modifications and changes can be made to the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and scope of the present invention are intended to be included within the scope of the present invention.

Landscapes

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

Abstract

The present invention provides a method and an apparatus for data transmission between OpenFlow network domains, wherein the method comprises: the controller of the local network domain obtains global network information, wherein the global network information is the information needed for the data switching between the local network domain and neighbor network domains; for the data packets whose destination addresses are not in the local network domain, the controller of the local network domain controls, according to the global network information, the switch of the local network domain to forward the data packets to the neighbor network domains. Using the technical solution provided by the present invention, the effect that the data switching between different OpenFlow network domains can be realized is achieved.

Description

OpenFlow网络域间的数据发送方法及装置 技术领域 本发明涉及通信领域, 具体而言, 涉及一种 OpenFlow网络域间的数据发送方法 及装置。 背景技术 美国斯坦福大学于 2008年提出了 OpenFlow协议,该协议采用转发 /控制分离架构, 外置控制面实体采用 OpenFlow协议控制转发面设备实现各种转发逻辑, 而转发面设 备主要功能就是根据 OpenFlow控制器下发的流表 (Flow Table)执行受控转发, 其行 为是标准化的: 收到一条报文, 取出其头部 L2/L3/L4相关字段值, 以其作为关键字查 找流表, 匹配到一个表项后, 根据表项内容中的指令集对报文字段进行变换, 完毕后 根据指示转发到某一逻辑或物理端口。 此协议进一步演进, 成为软件定义网络 (Software Defined Network, 简称为 SDN) 技术的基础, 即可以在控制面采用软件编 程实现各种复杂的网络应用, 而转发面设备无需任何改变, 由于控制面采用通用服务 器 +通用操作系统, 并且可以使用通用的软件编程工具, 也可以使用 Python这样的脚 本编程语言实现, 这使得新的网络协议的支持变得非常简单, 而且新技术部署周期大 大缩短。 一个基本的 OpenFlow 网络包括网络控制器 (Controller) 和交换机 (OpenFlow Switch) 两个主要的控制实体。 通常地, 在网络中部署一个集中的网络控制器, 负责 整个网络域中所有的 OpenFlow交换机的管理域控制。 然而, 单个集中式的控制器会 成为网络规模化的瓶颈, 如与控制器距离较远的交换机建立流的时延增加, 单个控制 器处理交换路径请求的吞吐量受限, 端到端的路径带宽可控性差等。 为此, 学术界提 出分布式网络控制器方案, 但这些方案一般是在网络上部署多个控制器, 通过事件消 息同步或存储共享等方案,实现状态一致的多个网络控制器共同管理与控制 OpenFlow 网络。 然而, 在实际的网络部署中, 一般是一个区域独立部署 OpenFlow网络, 多个区 域的 OpenFlow网络之间通过有限的链路互联,但不同的 OpenFlow网络域之间互不干 涉, 即一个区域的网络控制器只负责本域内的数据交换, 而不能实现本地网络域与其 它网络域之间的数据交换, 即相关技术中, 尚未有针对不同 OpenFlow网络域之间的 数据交换解决方案。 针对相关技术中的上述问题, 目前尚未提出有效的解决方案。 发明内容 针对相关技术中, 尚未提出针对不同 OpenFlow网络域之间的数据交换的解决方 案的技术问题, 本发明提供一种 OpenFlow网络域间的数据发送方法及装置, 以至少 解决上述技术问题。 根据本发明的一个方面, 提供了一种 OpenFlow网络域间的数据发送方法, 包括: 本地网络域的控制器获取全局网络信息, 其中, 所述全局网络信息为所述本地网络域 和相邻网络域之间进行数据交换所需要的信息; 对于目的地址不在所述本地网络域的 数据报文, 所述本地网络域的控制器根据所述全局网络信息, 控制所述本地网络域的 交换机将所述数据报文发送到所述相邻网络域。 优选地, 上述全局网络信息包括: 本地网络域与相邻网络域间的链路状态信息, 以及除所述本地网络域之外的其它网络域的网络信息。 优选地, 上述链路状态信息通过以下方式获取: 所述本地网络域的控制器指示所 述本地网络域的交换机将第一链路探测消息经由所述相邻网络域的交换机转发给所述 相邻域的控制器; 所述本地网络域的控制器接收来自所述相邻域的控制器转发的所述 第一链路探测消息, 以获取所述链路状态信息。 优选地, 上述链路状态信息通过以下方式获取: 所述本地网络域的控制器接收所 述本地网络域的交换机上报的第二链路探测消息, 其中, 所述第二链路探测消息来自 于所述相邻网络域的交换机; 所述本地网络域的控制器根据接收的所述第二链路探测 消息获取所述链路状态信息。 优选地, 上述其它网络域的网络信息通过以下方式获取: 所述本地网络域的控制 器从所述相邻网络域的控制器中获取所述其它网络域的网络信息。 优选地, 上述其它网络域的网络信息包括: 所述相邻网络域的终端设备地址信息 和 /或地址信息前缀和 /或网络域标识信息,以及所述相邻网络域与所述其它网络域之间 的链路状态信息。 优选地, 上述全局网络信息还包括: 所述本地网络域与所述目的地址指示的目的 网络域之间的链接路径信息。 根据本发明的另一方面, 提供了一种 OpenFlow网络域间的数据发送装置, 位于 本地网络域, 包括: 获取模块, 用于获取全局网络信息, 其中, 所述全局网络信息为 所述本地网络域和相邻网络域之间进行数据交换所需要的信息; 控制模块, 用于对目 的地址不在所述本地网络域的数据报文, 根据所述全局网络信息控制所述本地网络域 的交换机将所述数据报文发送到所述相邻网络域。 优选地, 上述全局网络信息包括: 本地网络域与相邻网络域间的链路状态信息和 以及除所述本地网络域之外的其它网络域的网络信息。 优选地, 上述获取模块包括: 发送单元, 用于指示所述本地网络域的交换机将第 一链路探测消息经由所述相邻网络域的交换机转发给所述相邻域的控制器; 第一接收 单元, 用于接收来自所述相邻域的控制器转发的所述第一链路探测消息; 第一获取单 元, 用于根据所述第一链路探测消息获取所述链路状态信息。 优选地, 上述获取模块包括: 第二接收单元, 用于接收所述本地网络域的交换机 上报的第二链路探测消息, 其中, 所述第二链路探测消息来自于所述相邻网络域的交 换机; 第二获取单元,用于根据接收的所述第二链路探测消息获取所述链路状态信息。 优选地, 上述获取模块, 用于从所述相邻网络域的控制器中获取所述其它网络域 的网络信息。 通过本发明, 采用本地网络域的控制器根据全局网络信息, 控制本地网络域的交 换机将目的地址不在本域的数据报文发送到相邻网络域的技术手段, 解决了相关技术 中, 尚未提出针对不同 OpenFlow网络域之间的数据交换的解决方案的技术问题, 进 而达到了不同 OpenFlow网络域之间可以实现数据交换的效果。 附图说明 此处所说明的附图用来提供对本发明的进一步理解, 构成本申请的一部分, 本发 明的示意性实施例及其说明用于解释本发明, 并不构成对本发明的不当限定。 在附图 中- 图 1为根据本发明实施例的 OpenFlow网络域间的数据发送方法流程图; 图 2为根据本发明实施例的 OpenFlow网络域间的数据发送装置的结构框图; 图 3为根据本发明实施例的网络域间的数据交换网络架构示意图; 图 4为根据本发明实施例的本地网络域的控制器主动进行相邻网络域链路探测流 程示意图; 图 5为根据本发明实施例的数据报文在源网络域内的交换流程示意图; 图 6为根据本发明实施例的数据报文在目的网络域内的交换流程示意图; 图 7为根据本发明实施例的控制器建立全局网络信息数据库的方法流程示意图。 具体实施方式 下文中将参考附图并结合实施例来详细说明本发明。 需要说明的是, 在不冲突的 情况下, 本申请中的实施例及实施例中的特征可以相互组合。 图 1 为根据本发明实施例的 OpenFlow网络域间的数据发送方法流程图。 如图 1 所示, 该方法包括: 步骤 S102, 本地网络域的控制器获取全局网络信息, 其中, 所述全局网络信息为 所述本地网络域和相邻网络域之间进行数据交换所需要的信息; 在具体实施时, 可以 在本地网络域的控制器建立一个全局网络信息数据库, 以存储上述全局网络信息。 步骤 S104, 对于目的地址不在所述本地网络域的数据报文, 所述本地网络域的控 制器根据所述全局网络信息, 控制所述本地网络域的交换机将所述数据报文发送到所 述相邻网络域。 通过上述处理步骤, 由于本地网络域的控制器可以根据获取的全局网络信息, 控 制本地网络域的交换机将目的地址不在本域的数据报文发送到相邻网络域, 因此, 实 现了不同 OpenFlow网络域之间的数据交换。 在具体应用时,在步骤 S104中之前,所述本地网络域的控制器对于本域的交换机 上报的数据报文, 可以判断数据报文是否需要进行跨网络域的交换, 例如可以根据数 据报文的目的地址判断是否需要进行跨网络域的交换: 当目的地址为本地网络域时, 本地网络域的控制器直接向本域交换机下发流表, 建立交换路径; 对于目的地址为其 它域终端的数据报文, 根据路径选择策略, 本地网络域的控制器选择一个边缘交换机 作为出口交换机, 控制数据报文转发到相邻网络域。 在本发明的一个优选实施方式中, 上述全局网络信息可以包括以下信息: 本地网 络域与相邻网络域间的链路状态信息, 以及除所述本地网络域之外的其它网络域的网 络信息。 事实上, 利用步骤 S102、 步骤 S104中的处理步骤, 以及上述全局网络信息, 可 以实现一种基于 OpenFlow网络的新的组网方法, 例如可以实现以下组网方法: TECHNICAL FIELD The present invention relates to the field of communications, and in particular to a method and an apparatus for transmitting data between OpenFlow network domains. BACKGROUND OF THE INVENTION The Stanford University in the United States proposed the OpenFlow protocol in 2008. The protocol uses a forwarding/control separation architecture. The external control plane entity uses the OpenFlow protocol to control the forwarding plane device to implement various forwarding logics. The main function of the forwarding plane device is to control according to OpenFlow. The flow table sent by the device performs controlled forwarding, and its behavior is standardized: Receive a message, take out the L2/L3/L4 related field value of its header, and use it as a key to find the flow table, matching After an entry is made, the packet field is transformed according to the instruction set in the content of the entry, and then forwarded to a logical or physical port according to the indication. This protocol further evolved to become the basis of Software Defined Network (SDN) technology, which can implement various complex network applications by software programming on the control plane, and the forwarding plane device does not need any change, because the control plane adopts Universal server + general-purpose operating system, and can be implemented using a common software programming tool or a scripting language such as Python, which makes the support of the new network protocol very simple, and the new technology deployment cycle is greatly shortened. A basic OpenFlow network consists of two main control entities: the network controller (Controller) and the switch (OpenFlow Switch). Typically, a centralized network controller is deployed in the network responsible for the management domain control of all OpenFlow switches throughout the network domain. However, a single centralized controller can become a bottleneck for network scale. For example, the delay of establishing a flow of a switch far away from the controller increases, the throughput of a single controller processing the exchange path request is limited, and the end-to-end path bandwidth is limited. Poor controllability, etc. To this end, the academic community proposes a distributed network controller solution, but these solutions generally deploy multiple controllers on the network, and implement common management and control of multiple network controllers with consistent status through event message synchronization or storage sharing. OpenFlow network. However, in an actual network deployment, an OpenFlow network is generally deployed in an area. OpenFlow networks in multiple areas are interconnected through a limited number of links, but different OpenFlow network domains do not interfere with each other, that is, a network in a region. The controller is only responsible for data exchange within the local domain, and cannot exchange data between the local network domain and other network domains. That is, in the related art, there is no data exchange solution for different OpenFlow network domains. In view of the above problems in the related art, an effective solution has not yet been proposed. SUMMARY OF THE INVENTION In the related art, a technical problem of a solution for data exchange between different OpenFlow network domains has not been proposed. The present invention provides a method and an apparatus for transmitting data between OpenFlow network domains to solve at least the above technical problem. According to an aspect of the present invention, a method for transmitting data between OpenFlow network domains is provided, including: a controller of a local network domain acquires global network information, where the global network information is the local network domain and a neighboring network. Information required for data exchange between domains; for data packets whose destination address is not in the local network domain, the controller of the local network domain controls the switch of the local network domain according to the global network information The data message is sent to the neighboring network domain. Preferably, the global network information includes: link state information between the local network domain and the neighboring network domain, and network information of other network domains except the local network domain. Preferably, the foregoing link state information is obtained by: the controller of the local network domain instructing the switch of the local network domain to forward the first link probe message to the phase via a switch of the neighboring network domain a controller of the local domain; the controller of the local network domain receives the first link probe message forwarded by a controller from the neighboring domain to obtain the link state information. Preferably, the foregoing link state information is obtained by: receiving, by the controller of the local network domain, a second link detection message reported by the switch of the local network domain, where the second link detection message is from The switch of the neighboring network domain; the controller of the local network domain acquires the link state information according to the received second link probe message. Preferably, the network information of the other network domain is obtained by: acquiring, by the controller of the local network domain, network information of the other network domain from a controller of the neighboring network domain. Preferably, the network information of the other network domain includes: terminal device address information and/or address information prefix and/or network domain identifier information of the neighboring network domain, and the neighboring network domain and the other network domain. Link status information between. Preferably, the global network information further includes: link path information between the local network domain and the destination network domain indicated by the destination address. According to another aspect of the present invention, an apparatus for transmitting data between OpenFlow network domains is provided, which is located in a local network domain, and includes: an obtaining module, configured to acquire global network information, where the global network information is the local network Information required for data exchange between the domain and the neighboring network domain; a control module, configured to control a data packet whose destination address is not in the local network domain, and control the switch of the local network domain according to the global network information The data message is sent to the neighboring network domain. Preferably, the global network information includes: link state information between the local network domain and the neighboring network domain, and network information of other network domains except the local network domain. Preferably, the obtaining module includes: a sending unit, configured to instruct the switch of the local network domain to forward the first link probe message to the controller of the neighboring domain via the switch of the neighboring network domain; a receiving unit, configured to receive the first link detection message that is forwarded by a controller from the neighboring domain, where the first acquiring unit is configured to acquire the link state information according to the first link detection message. Preferably, the obtaining module includes: a second receiving unit, configured to receive a second link probe message reported by the switch of the local network domain, where the second link probe message is from the neighboring network domain And a second acquiring unit, configured to acquire the link state information according to the received second link probe message. Preferably, the acquiring module is configured to acquire network information of the other network domain from a controller of the neighboring network domain. According to the present invention, the controller of the local network domain controls the switch of the local network domain to send the data packet whose destination address is not in the local domain to the adjacent network domain according to the global network information, and solves the related art. The technical problem of the solution for data exchange between different OpenFlow network domains can achieve the effect of data exchange between different OpenFlow network domains. BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings, which are set to illustrate,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 1 is a flowchart of a method for transmitting data between OpenFlow network domains according to an embodiment of the present invention; FIG. 2 is a structural block diagram of a data transmission device between OpenFlow network domains according to an embodiment of the present invention; Schematic diagram of a data exchange network architecture between network domains according to an embodiment of the present invention; 4 is a schematic diagram of a process for actively detecting a link of a neighboring network domain in a local network domain according to an embodiment of the present invention; FIG. 5 is a schematic diagram of a process of exchanging data packets in a source network domain according to an embodiment of the present invention; FIG. 7 is a schematic flowchart of a method for a controller to establish a global network information database according to an embodiment of the present invention. FIG. BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, the present invention will be described in detail with reference to the accompanying drawings. It should be noted that the embodiments in the present application and the features in the embodiments may be combined with each other without conflict. FIG. 1 is a flowchart of a method for transmitting data between OpenFlow network domains according to an embodiment of the present invention. As shown in FIG. 1 , the method includes: Step S102: A controller of a local network domain acquires global network information, where the global network information is required for data exchange between the local network domain and a neighboring network domain. Information; In a specific implementation, a global network information database may be established in the controller of the local network domain to store the global network information. Step S104: For a data packet whose destination address is not in the local network domain, the controller of the local network domain controls, according to the global network information, a switch of the local network domain to send the data packet to the Adjacent network domain. Through the foregoing processing steps, the controller of the local network domain can control the switch of the local network domain to send the data packet whose destination address is not in the local domain to the adjacent network domain, according to the obtained global network information, thus implementing different OpenFlow networks. Data exchange between domains. In a specific application, before the step S104, the controller of the local network domain can determine whether the data packet needs to be exchanged across the network domain, for example, according to the data packet, for the data packet reported by the switch in the local domain. The destination address is used to determine whether a cross-network domain exchange is required. When the destination address is a local network domain, the controller of the local network domain sends a flow table directly to the local domain switch to establish a switching path. Data packet, according to the path selection policy, the controller of the local network domain selects an edge switch as an egress switch, and controls the data packet to be forwarded to the adjacent network domain. In a preferred embodiment of the present invention, the global network information may include the following information: link state information between a local network domain and a neighboring network domain, and network information of other network domains except the local network domain. . In fact, a new networking method based on the OpenFlow network can be implemented by using the processing steps in the step S102, the step S104, and the global network information. For example, the following networking method can be implemented:
OpenFlow网络由至少一个网络域组成,相邻的所述网络域之间存在至少一条网络 链接; 所述网络域由控制器和至少一个交换机组成; 所述网络域的控制器负责本域 内的交换机设备管理, 以及数据报文在本域内的交换路径控制; 所述网络域的控制器 收集与相邻网络域之间的链路状态信息, 并与所述相邻域的控制器交换其它网络域的 网络信息, 建立全局网络信息数据库; 所述网络域的控制器对于目的地址不在本域的 数据报文, 根据全局网络信息数据库信息, 控制本域交换机将所述数据报文发往本域 与相邻域的连接的链路上。 在本发明的一个优选实施过程中, 上述链路状态信息可以通过主动探测或被动探 测的方式获取: 其中, 主动探测实现的具体过程如下: 所述本地网络域的控制器指示所述本地网 络域的交换机将第一链路探测消息经由所述相邻网络域的交换机转发给所述相邻域的 控制器; 所述本地网络域的控制器接收来自所述相邻域的控制器转发的所述第一链路 探测消息, 以获取所述链路状态信息。 简而言之, 即所述本地网络域的控制器指示所 述网络域的交换机在所有端口发送网络连接探测消息, 若所述相邻域的控制器收到所 述相邻域的交换机上报的所述网络连接探测消息, 则所述相邻域的控制器将所述网络 连接探测消息转发给所述网络域的控制器。 其中, 被动探测实现的具体过程如下: 所述本地网络域的控制器接收所述本地网 络域的交换机上报的第二链路探测消息, 其中, 所述第二链路探测消息来自于所述相 邻网络域的交换机; 所述本地网络域的控制器根据接收的所述第二链路探测消息获取 所述链路状态信息。 简而言之, 即所述本地网络域的控制器收到所述本地网络域的交 换机上报的相邻域交换机发送的网络连接探测消息, 并根据所述网络连接探测消息收 集所述网络域与所述相邻域的链路状态信息。 正如以上所述, 上述其它网络域的网络信息可以通过以下方式获取: 所述本地网 络域的控制器与所述相邻网络域进行数据交换来获取上述其它网络域的网络信息, 即 从所述相邻网络域的控制器中获取所述其它网络域的网络信息。 上述其它网络域的网络信息包括: 所述相邻网络域的终端设备地址信息和 /或地址 信息前缀和 /或网络域标识信息, 以及所述相邻网络域与所述其它网络域之间的链路状 态信息。 在本发明实施例的一个具体实施方式中, 上述全局网络信息还包括: 所述本地网 络域与所述目的地址指示的目的网络域之间的链接路径信息, 例如可以包括以下路径 信息: 源网络域(本地网络域)和目的网络域之间需路经的中间网络域, 和 /或路径上 相邻的网络域之间的链接路径有哪些等等。 在本实施例中还提供了一种 OpenFlow网络域间的数据发送装置, 该装置位于本 地网络域, 用于实现上述实施例及优选实施方式, 已经进行过说明的不再赘述, 下面 对该装置中涉及到模块进行说明。 如以下所使用的, 术语"模块"可以实现预定功能的 软件和 /或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件, 或者软件和硬件的组合的实现也是可能并被构想的。 图 2 为根据本发明实施例的 OpenFlow网络域间的数据发送装置的结构框图。 如图 2所示, 该装置包括: 获取模块 20, 用于获取全局网络信息, 其中, 所述全局网络信息为所述本地网络 域和相邻网络域之间进行数据交换所需要的信息; 控制模块 22,耦合至获取模块 20,用于对目的地址不在所述本地网络域的数据报 文, 根据所述全局网络信息控制所述本地网络域的交换机将所述数据报文发送到所述 相邻网络域。 优选地, 上述全局网络信息包括: 本地网络域与相邻网络域间的链路状态信息和 以及除所述本地网络域之外的其它网络域的网络信息。 优选地,上述获取模块 20可以包括以下单元用于以主动探测方式实现获取上述链 路状态信息: 发送单元, 用于指示所述本地网络域的交换机将第一链路探测消息经由 所述相邻网络域的交换机转发给所述相邻域的控制器; 第一接收单元, 耦合至发送单 元,用于接收来自所述相邻域的控制器转发的所述第一链路探测消息; 第一获取单元, 耦合至第一接收单元, 用于根据所述第一链路探测消息获取所述链路状态信息。 优选地,上述获取模块 20还可以包括以下单元用于以被动探测方式实现获取上述 链路状态信息: 第二接收单元, 用于接收所述本地网络域的交换机上报的第二链路探 测消息, 其中, 所述第二链路探测消息来自于所述相邻网络域的交换机; 第二获取单 元, 耦合至第二接收单元, 用于根据接收的所述第二链路探测消息获取所述链路状态 信息。 优选地, 上述获取模块 20, 用于从所述相邻网络域的控制器中获取所述其它网络 域的网络信息。 为了更好地理解上述实施例以及优选实施例, 以下结合具体实例和相关附图详细 说明。 以下实施例的基本思想在于, 在若干相互隔离的 OpenFlow网络域中, 每个网 络域的控制器与其他网络域的控制器之间进行交互,探测相邻域之间的网络链接信息, 并通过与其他网络域控制器进行信息交换来收集全局网络信息。对于数据报文的转发, 当数据报文的目的地址为本域终端时, 网络控制器直接向本域交换机下发流表, 建立 交换路径; 当数据报文的目的地址为其他网络域终端时, 网络控制器控制根据本域的 全局网络信息数据库信息, 控制本域交换机将数据报文发往本域与相邻域的连接的链 路上。 实施例 1 正如上述实施例中所述的, 可以基于上述实施例所述的 OpenFlow网络域间的数 据发送方法, 实现一种新的 OpenFlow网络的组网方法。 如图 3所示, 该组网包括: 网络域 A、 网络域 B和网络域〔。 以网络域 A为例, OpenFlow网络域 A由控制器 A和至少一个交换机 301组成,网络中的主机或终端 302 通过交换机 301连接到 OpenFlow网络域 B和网络域 C。相邻 OpenFlow网络域之间通 过至少一条链路相连, 多个 OpenFlow网络域组成一个互联的 OpenFlow网络。 在本实施例中, OpenFlow网络域 A的控制器 A仅负责本域内交换机 301的管理 与控制。 多个 OpenFlow网络域 A的控制器 A之间组成控制面网络 303, 并交换网络 拓扑信息构建本地的全局网络信息库。 在进行数据报文交换时, 各个网络域的控制器 对于本域的交换机上报的数据报文, 根据数据报文的目的地址, 控制本域的交换机或 者将数据报文转发到本域内的交换机或终端上, 或者将数据报文转发到相邻域的交换 机上。 上述各个 OpenFlow网络域的交换机的行为与相关技术中的 OpenFlow交换机一 致, 即仅根据本网络域的控制器下发的流表进行数据转发。 图 4为根据本发明实施例的本地网络域的控制器主动进行相邻网络域链路探测流 程示意图。 以下以网络域 A和网络域 B 进行数据交换的流程为例。 在交换机加入 OpenFlow网络域时,控制器指示所述交换机在所有端口发送链路探测消息, 与所述交 换机相邻的交换机收到所述链路探测消息时, 所述链路探测消息被上报到所属网络域 的控制器。 对于与其它网络域相邻的交换机, 所述链路探测消息被相邻域的交换机接 收, 并被上报到相邻域的控制器上, 所述相邻域的控制器需要通过控制面网络将所述 链路探测消息转发给发起网络探测的网络域的控制器, 完成网络探测流程。 具体步骤 如下: 步骤 S402, 新交换机 AS1加入网络域 A, 与控制器 A建立连接进行相关的安全 验证、 基本信息上报、 交换机配置等操作; 步骤 S404, 控制器 A指示交换机 AS1进行网络探测流程; 其中, 一般控制器 A向交换机 AS1周期性下发指令, 指示交换机 AS1在指定端 口上发送指定的网络探测消息; 步骤 S406, 网络探测消息发送到交换机 AS1与网络域 B的交换机 BS1相连的端 口上; 这里,省略了 AS1与网络域 A内部其它交换机相连的端口上发送的网络探测消息 的处理流程, 因为与本发明技术无法; 步骤 S408, 交换机 BS1收到网络探测消息, 进一步通过 OpenFlow协议上报到网 络域 B的控制器 B; 步骤 S410, 控制器 B收到交换机 BS1上报的网络探测消息上报, 判断所述网络 探测消息来自网络域 A, 通过控制面网络转发到网络域 A的控制器 A; 这里, 网络域 B的控制器 B获知网络域 A的控制器 A的方式在控制面网络解决, 如预配置方式, 网络域 A请求加入其它互联的 OpenFlow网络时, 网络域 A的控制器 下载其它网络域的控制器信息配置文件, 并将网络域 A的控制器信息通报给其它网络 域的控制器; 步骤 S412, 控制器 A收到控制器 B转发的所述网络探测消息, 结合步骤 202下 发的网络探测消息, 可以收集到网络域 B的交换机 BS1和网络域 A的交换机 AS1的 端口之间的链路状态。 步骤 S414-步骤 S422, 控制器 B周期性指示交换机 BS1发起网络探测流程, 类似 步骤 S404-步骤 S414, 交换机 BS1发起的链路探测消息, 经交换机 AS1上报到控制器 A, 控制器 A进一步通过控制面网络转发回控制器 控制器 B收集到网络域 A的交 换机 AS1和网络域 B的交换机 BS1的端口之间的链路状态。 这里, 所述的链路探测消息, 为链路层发现协议 (Link Layer Discovery Protocol, 简称为 LLDP)消息, 或者为连接管理协议(Link Management Protocol, 简称为 LMP) 消息, 或者其他可以实现链路探测的协议消息, 可以根据由具体网络环境决定。 另夕卜, OpenFlow网络域之间的网络链路探测也可以采用被动的方式。在交换机加 入 OpenFlow网络域时, 控制器指示所述交换机在所有端口发送链路探测消息, 当相 邻域的交换机收到所述链路探测消息时, 相邻域的控制器根据所述相邻域的交换机上 报的所述链路探测消息内容可以判断域间链路状态, 即通过步骤 S404-步骤 S408, 网 络域 B的控制器 B可以收集到网络域 A的交换机 AS1和网络域 B的交换机 BS1的端 口之间的链路状态; 通过步骤 S414-步骤 S418, 中, 网络域 A的控制器 A可以收集到 网络域 B的交换机 BS1和网络域 A的交换机 AS1的端口之间的链路状态。 实施例 2 源网络域中, 对于目的地址为其它网络域的数据报文, 控制器控制本域交换机将 数据报文转发到相邻网络域, 更具体地是转发到与相邻网络域相连的交换机端口上。 如图 5所示, 具体步骤如下: 步骤 S502, 源网络域 A中的主机 AH1向网络发送数据报文, 目的地址为网络域The OpenFlow network is composed of at least one network domain, and at least one network link exists between the adjacent network domains; the network domain is composed of a controller and at least one switch; the controller of the network domain is responsible for the switch device in the domain. Management, and exchange path control of data packets within the domain; controllers of the network domain collect link state information with neighboring network domains, and exchange controllers of other network domains with controllers of the neighboring domains Network information, establishing a global network information database; the controller of the network domain controls the local domain switch to send the data packet to the domain and the phase according to the global network information database information for the data packet whose destination address is not in the local domain. On the link of the neighbor's connection. In a preferred implementation of the present invention, the foregoing link state information may be obtained by means of active detection or passive detection. The specific process of active detection is as follows: The controller of the local network domain indicates the local network domain. The switch forwards the first link probe message to the controller of the neighboring domain via the switch of the neighboring network domain; the controller of the local network domain receives the forwarder from the controller of the neighboring domain The first link probe message is obtained to obtain the link state information. In short, the controller of the local network domain instructs the switch of the network domain to send a network connection probe message on all ports, if the controller of the neighboring domain receives the report reported by the switch of the neighboring domain. The network connection probe message, the controller of the neighboring domain forwards the network connection probe message to a controller of the network domain. The specific process of the passive detection is as follows: the controller of the local network domain receives the second link detection message reported by the switch of the local network domain, where the second link detection message is from the phase a switch of the neighboring network domain; the controller of the local network domain acquires the link state information according to the received second link probe message. In short, the controller of the local network domain receives the network connection probe message sent by the neighboring domain switch reported by the switch of the local network domain, and collects the network domain according to the network connection probe message. Link state information of the neighboring domain. As described above, the network information of the other network domain may be obtained by: performing, by the controller of the local network domain, data exchange with the neighboring network domain to obtain network information of the foregoing other network domain, that is, from the foregoing The network information of the other network domain is obtained from a controller of a neighboring network domain. The network information of the other network domain includes: terminal device address information and/or address information prefix and/or network domain identifier information of the neighboring network domain, and between the neighboring network domain and the other network domain. Link status information. In a specific implementation of the embodiment of the present invention, the foregoing global network information further includes: link path information between the local network domain and the destination network domain indicated by the destination address, and may include, for example, the following path information: The intermediate network domain between the domain (local network domain) and the destination network domain, and/or the link path between adjacent network domains on the path, and so on. In this embodiment, a data transmission device between the OpenFlow network domains is also provided. The device is located in the local network domain, and is used to implement the foregoing embodiments and preferred embodiments. The module is described in the device. As used hereinafter, the term "module" may implement a combination of software and/or hardware of a predetermined function. Although the apparatus described in the following embodiments is preferably implemented in software, hardware, or a combination of software and hardware, is also possible and conceivable. 2 is a structural block diagram of an apparatus for transmitting data between OpenFlow network domains according to an embodiment of the present invention. As shown in FIG. 2, the device includes: an obtaining module 20, configured to acquire global network information, where the global network information is information required for data exchange between the local network domain and a neighboring network domain; The module 22 is coupled to the obtaining module 20, configured to: for the data packet whose destination address is not in the local network domain, control, by the global network information, the switch of the local network domain to send the data packet to the phase Neighbor network domain. Preferably, the global network information includes: link state information between the local network domain and the neighboring network domain, and network information of other network domains except the local network domain. Preferably, the obtaining module 20 may include the following unit, configured to obtain the foregoing link state information in an active detection manner: a sending unit, configured to: indicate, by the switch of the local network domain, that the first link detection message is sent by using the neighboring link The switch of the network domain is forwarded to the controller of the neighboring domain; the first receiving unit is coupled to the sending unit, configured to receive the first link probe message forwarded by the controller of the neighboring domain; The acquiring unit is coupled to the first receiving unit, configured to acquire the link state information according to the first link detection message. Preferably, the obtaining module 20 may further include: a unit for acquiring the link state information in a passive detection manner: a second receiving unit, configured to receive a second link detection message reported by the switch of the local network domain, where The second link detection message is sent from the switch of the neighboring network domain; the second acquisition unit is coupled to the second receiving unit, and configured to acquire the chain according to the received second link detection message. Road status information. Preferably, the obtaining module 20 is configured to acquire network information of the other network domain from a controller of the neighboring network domain. In order to better understand the above embodiments and preferred embodiments, the following detailed description will be made in conjunction with the specific examples and related drawings. The basic idea of the following embodiments is that, in a plurality of isolated OpenFlow network domains, a controller of each network domain interacts with controllers of other network domains to detect network link information between adjacent domains, and Exchange information with other network domain controllers to collect global network information. For the forwarding of data packets, when the destination address of the data packet is the domain terminal, the network controller directly sends a flow table to the local domain switch to establish a switching path. When the destination address of the data packet is another network domain terminal, The network controller controls the local network switch to send the data packet to the link connecting the local domain and the adjacent domain according to the global network information database information of the domain. Embodiment 1 As described in the above embodiment, a new OpenFlow network networking method can be implemented based on the data transmission method between OpenFlow network domains described in the foregoing embodiments. As shown in FIG. 3, the networking includes: a network domain A, a network domain B, and a network domain. Taking network domain A as an example, OpenFlow network domain A is composed of controller A and at least one switch 301, and hosts or terminals 302 in the network are connected to OpenFlow network domain B and network domain C through switch 301. The adjacent OpenFlow network domains are connected by at least one link, and the multiple OpenFlow network domains form an interconnected OpenFlow network. In this embodiment, the controller A of the OpenFlow network domain A is only responsible for the management and control of the switch 301 in the local domain. The controllers A of the plurality of OpenFlow network domains A form a control plane network 303, and exchange network topology information to construct a local global network information base. When the data packet is exchanged, the controllers of the network domain control the data packets sent by the switch in the local domain according to the destination address of the data packet, or forward the data packet to the switch in the local domain or On the terminal, or forward the data packet to the switch in the adjacent domain. The behavior of the switches in the respective OpenFlow network domains is the same as that of the OpenFlow switch in the related art, that is, data forwarding is performed only according to the flow table sent by the controller of the network domain. FIG. 4 is a schematic diagram of a flow of a link detection process of a neighboring network domain by a controller of a local network domain according to an embodiment of the present invention. The following is an example of the process of data exchange between network domain A and network domain B. When the switch joins the OpenFlow network domain, the controller instructs the switch to send a link probe message on all ports, and when the switch adjacent to the switch receives the link probe message, the link probe message is reported to The controller of the network domain to which it belongs. For switches adjacent to other network domains, the link probe message is connected by the switch of the adjacent domain. And receiving, and being reported to the controller of the adjacent domain, the controller of the adjacent domain needs to forward the link detection message to the controller of the network domain that initiates the network detection through the control plane network, and complete the network detection process. . The specific steps are as follows: Step S402: The new switch AS1 joins the network domain A, and establishes a connection with the controller A to perform related operations such as security verification, basic information reporting, and switch configuration. In step S404, the controller A instructs the switch AS1 to perform a network detection process. The controller A periodically sends an instruction to the switch AS1 to instruct the switch AS1 to send the specified network probe message on the designated port. Step S406: The network probe message is sent to the port connected to the switch BS1 of the network domain B by the switch AS1. Here, the processing flow of the network probe message sent by the AS1 to the port connected to the other switches in the network domain A is omitted, because the technology of the present invention cannot be used; in step S408, the switch BS1 receives the network probe message and further reports it through the OpenFlow protocol. Controller B of network domain B; Step S410, controller B receives the network probe message reported by the switch BS1, and determines that the network probe message is from the network domain A, and is forwarded to the controller A of the network domain A through the control plane network; Here, the controller B of the network domain B learns the control of the network domain A. The mode of the device A is solved in the control plane network. For example, when the network domain A requests to join other interconnected OpenFlow networks, the controller of the network domain A downloads the controller information configuration file of other network domains, and the network domain A The controller information is reported to the controller of the other network domain. In step S412, the controller A receives the network probe message forwarded by the controller B, and the network probe message sent in step 202 is used to collect the switch BS1 of the network domain B. The link status between the port of switch AS1 and network domain A. Step S414-Step S422, the controller B periodically instructs the switch BS1 to initiate a network detection process. Similar to the steps S404-S414, the link detection message initiated by the switch BS1 is reported to the controller A through the switch AS1, and the controller A further controls. The face network forwards back to the controller controller B to collect the link state between the switch AS1 of the network domain A and the port of the switch BS1 of the network domain B. Here, the link detection message is a Link Layer Discovery Protocol (LLDP) message, or a Link Management Protocol (LMP) message, or other link can be implemented. The protocol message of the probe can be determined according to the specific network environment. In addition, network link detection between OpenFlow network domains can also be passive. When the switch joins the OpenFlow network domain, the controller instructs the switch to send a link probe message on all ports, and when the switch of the neighboring domain receives the link probe message, the controller of the adjacent domain according to the neighbor The link probe message content reported by the switch of the domain can determine the inter-domain link state, that is, through the steps S404-S408, the controller B of the network domain B can collect the switch of the switch AS1 and the network domain B of the network domain A. The link state between the ports of the BS1; in step S414-S418, the controller A of the network domain A can collect the link state between the switch BS1 of the network domain B and the port of the switch AS1 of the network domain A. . Embodiment 2 In the source network domain, for a data packet whose destination address is another network domain, the controller controls the local domain switch to forward the data packet to the adjacent network domain, and more specifically, to the adjacent network domain. On the switch port. As shown in FIG. 5, the specific steps are as follows: Step S502: The host AH1 in the source network domain A sends a data packet to the network, and the destination address is a network domain.
B的主机 BH1 ; 步骤 S504, 与主机 AH1相连的交换机 AS2收到数据报文, 查询本地流表无命中 的表项; 这里,根据 OpenFlow协议的流转发规则,如果主机 AH1和主机 BH1之间已经进 行过通讯,交换机 AS2上可能存在有效的流表表项,此时交换机 AS2直接按照流表转 发数据报文即可; 步骤 S506, 根据 OpenFlow协议规则, 对于根据本地流表无法转发的数据报文, 交换机 AS2将报文通过 OpenFlow消息向本域的控制器 A进行上报; 步骤 S508, 控制器 A根据交换机 AS2上报的信息, 查询本地的全局网络信息数 据库, 识别数据报文的目的地址位于网络域 B, 并进一步根据配置的交换路径规则选 择交换机 AS1向相邻网络域转发; 这里, 控制器 A根据本地的全局网络信息数据库查询结果, 以及配置的交换路径 规则, 或者将数据报文直接路由到目的网络域, 或者将数据报文路由到一个中间网络 域进行中转; 步骤 S510, 控制器 A向交换机 AS2下发转发流表, 指示本次流在交换机 AS2上 向交换机 AS 1转发; 步骤 S512, 控制器 A向交换机 AS1下发转发流表, 指示本次流在交换机 AS1上 向与网络域 B互联的端口进行转发; 步骤 S514, 交换机 AS2根据控制器 A下发的流表表项中的指令, 将数据报文转 发到交换机 AS 1 ; 步骤 S516, 交换机 AS 1根据本地流表表项, 将数据报文转发到与网络域 B互联 的端口上。 在目的网络域, 交换机收到来自其它网络域的数据报文时, 对于目的地址为本域 的数据报文, 控制器控制本域交换机将数据报文转发到本域的网络主机或终端上。 如 图 6所示, 具体步骤如下: 步骤 S602, 与源网络域相连的交换机 BS1收到一个数据报文; 步骤 S604, 交换机 BS1查询本地流表无命中的表项; 这里, 根据 OpenFlow协议的流转发规则, 如果交换机 BS1 以及收到过属于本次 流的数据报文, 交换机 AS2上可能存在有效的流表表项,此时交换机 BS1直接按照流 表转发数据报文即可; 步骤 S606, 根据 OpenFlow协议规则, 对于根据本地流表无法转发的数据报文, 交换机 BS1将报文通过 OpenFlow消息向本域的控制器 B进行上报; 步骤 S608, 控制器 B根据交换机 BS1上报的信息, 识别数据报文的目的地址位 于本域, 并进一步根据配置的交换路径规则选择交换机 BS2向主机 BH1进行转发; 这里, 控制器 B根据本地的全局网络信息数据库查询结果, 判断数据报文的目的 地址位于其它网络域, 或者将数据报文直接路由到目的网络域, 或者将数据报文路由 到一个中间网络域进行中转; 步骤 S610, 控制器 B向交换机 BS1下发转发流表, 指示本次流在交换机 BS1上 向交换机 BS2转发; 步骤 S612, 控制器 B向交换机 BS2下发转发流表, 指示本次流在交换机 BS2上 转发到与主机 BH1相连的端口上; 步骤 S614, 交换机 BS1根据控制器 B下发的流表表项中的指令, 将数据报文转 发到交换机 BS2; 步骤 S616, 交换机 BS2根据本地流表表项, 将数据报文转发到与主机 BH1相连 的端口上。 实施例 3 图 7为根据本发明实施例的控制器建立全局网络信息数据库的方法流程示意图。 本实施例中, 在 OpenFlow网络域加入互联的 OpenFlow网络时, 控制器需要建立全局 网络信息数据库: 一个 OpenFlow网络域的控制器要判断数据报文或数据流的目的地 址, 需要的全局网络信息包括, 属于每个网络域的终端地址信息, 或者具体的地址信 息如 MAC地址和 /或 IP地址, 或者是地址前缀。 一个 OpenFlow网络域的控制器要决 定数据报文或数据流的交换路径, 需要的全局网络信息包括, 源网络域和目的网络域 之间的需要经过那些中间网络域, 以及路径上相邻的网络域之间的链接路径有哪些。 当一个 OpenFlow网络域加入互联的 OpenFlow网络时,控制器建立全局网络信息数据 库的方法描述如下 步骤 S702, 一个 OpenFlow网络域申请加入一个互联的 OpenFlow网络; 步骤 S704, 所述 OpenFlow网络域的控制器收集本域内网络拓扑信息, 包括交换 机的标识、 端口配置与状态, 交换机之间的链路状态, 以及本域内的终端 MAC地址 学习 (对于三层路由网络的实现, 还需要学习终端的 IP地址); 步骤 S706, 所述 OpenFlow网络域的控制器与其他网络域的控制器交换全局网络 拓扑信息, 包括网络域标识、 主机 /终端信息, 以及网络域之间的链路状态信息等; 步骤 S708,所述 OpenFlow网络域的控制器指示本域的交换机进行域间拓扑探测, 收集本域与邻居网络域之间的链路状态信息; 这里, 所述域间拓扑探测与步骤 S704, 中的域内拓扑探测是同步进行的, 涉及域 间网络探测的方法及流程参照上述实施例中的描述。 步骤 S710, 所述 OpenFlow网络域的控制器根据收集到的相关信息建立本地全局 网络信息数据库。 具体地, 域间拓扑信息在具体实施中可以通过网络规划进一步简化。 例如预配置 一个 OpenFlow网络域 X的域标识为 01, 域内交换机标识前缀为 01, 域内主机 /终端 的 MAC地址前缀为 0A~12, 域内主机 /终端的 IP地址前缀为 10.12.*或 30.10.*。 则 OpenFlow网络域的控制器最终建立的全局网络信息数据库格式如表 1所示: The host BH1 of B; Step S504, the switch AS2 connected to the host AH1 receives the data packet, and queries the local flow table without a hit entry; here, according to the flow forwarding rule of the OpenFlow protocol, if the host AH1 and the host BH1 are already After the communication is performed, a valid flow table entry may exist on the switch AS2. In this case, the switch AS2 can directly forward the data packet according to the flow table. Step S506: According to the OpenFlow protocol rule, the data packet cannot be forwarded according to the local flow table. The switch AS2 reports the packet to the controller A of the local domain through the OpenFlow message. In step S508, the controller A queries the local global network information database according to the information reported by the switch AS2, and identifies the destination address of the data packet in the network domain. B, and further selecting the switch AS1 to forward to the adjacent network domain according to the configured switching path rule; here, the controller A queries the result according to the local global network information database, and the configured switching path rule, or directly routes the data packet to Destination network domain, or route data packets to an intermediate network domain Transit; In step S510, the controller A sends a forwarding flow table to the switch AS2, indicating that the current flow is forwarded to the switch AS1 on the switch AS2. In step S512, the controller A sends a forwarding flow table to the switch AS1, indicating that the current flow is in the switch. The AS1 forwards the port to the network domain B. In step S514, the switch AS2 forwards the data packet to the switch AS1 according to the instruction in the flow table entry sent by the controller A. In step S516, the switch AS1 is based on The local flow table entry forwards the data packet to the port interconnected with the network domain B. In the destination network domain, when the switch receives the data packet from the other network domain, the controller controls the local domain switch to forward the data packet to the network host or terminal of the local domain for the data packet whose destination address is the local domain. As shown in FIG. 6, the specific steps are as follows: Step S602: The switch BS1 connected to the source network domain receives a data packet; Step S604, the switch BS1 queries the local flow table miss entry; here, according to the OpenFlow protocol The routing rule is as follows: If the switch BS1 receives the data packet belonging to the current flow, the switch AS1 may have a valid flow table entry, and the switch BS1 directly forwards the data packet according to the flow table; Step S606, according to The OpenFlow protocol rule, for the data packet that cannot be forwarded according to the local flow table, the switch BS1 reports the packet to the controller B of the local domain through the OpenFlow message; in step S608, the controller B identifies the datagram according to the information reported by the switch BS1. The destination address of the text is located in the local area, and the switch BS2 is further forwarded to the host BH1 according to the configured switching path rule. Here, the controller B determines the destination address of the data packet to be located in another network according to the local global network information database query result. Domain, or route data packets directly to the destination network domain, or The message is routed to an intermediate network domain for forwarding. In step S610, the controller B sends a forwarding flow table to the switch BS1, indicating that the current flow is forwarded to the switch BS2 on the switch BS1. Step S612, the controller B goes to the switch BS2. Sending a forwarding flow table, indicating that the current flow is forwarded on the switch BS2 to the port connected to the host BH1; In step S614, the switch BS1 forwards the data packet to the switch BS2 according to the instruction in the flow table entry sent by the controller B. Step S616, the switch BS2 forwards the data packet to the host BH1 according to the local flow table entry. Connected to the port. Embodiment 3 FIG. 7 is a schematic flowchart of a method for a controller to establish a global network information database according to an embodiment of the present invention. In this embodiment, when the OpenFlow network domain joins the interconnected OpenFlow network, the controller needs to establish a global network information database: The controller of an OpenFlow network domain needs to determine the destination address of the data packet or the data stream, and the required global network information includes , the terminal address information belonging to each network domain, or specific address information such as a MAC address and/or an IP address, or an address prefix. The controller of an OpenFlow network domain determines the data path of the data packet or the data stream. The required global network information includes the intermediate network domain between the source network domain and the destination network domain, and the adjacent network on the path. What are the link paths between domains? When an OpenFlow network domain is added to the interconnected OpenFlow network, the method for the controller to establish the global network information database is described as follows: Step S702, an OpenFlow network domain applies to join an interconnected OpenFlow network; Step S704, the controller of the OpenFlow network domain collects The network topology information in the domain, including the identity of the switch, the port configuration and status, the link status between the switches, and the learning of the terminal MAC address in the local domain (for the implementation of the Layer 3 routing network, the IP address of the learning terminal is also required); Step S706, the controller of the OpenFlow network domain exchanges global network topology information with the controller of the other network domain, including the network domain identifier, the host/terminal information, and the link state information between the network domains, etc.; Step S708, The controller of the OpenFlow network domain indicates that the switch in the local domain performs inter-domain topology detection, and collects link state information between the local domain and the neighbor network domain. Here, the inter-domain topology detection and the intra-domain topology detection in step S704. Synchronous, involving inter-domain network detection Embodiment described above with reference to a flow. Step S710: The controller of the OpenFlow network domain establishes a local global network information database according to the collected related information. Specifically, the inter-domain topology information can be further simplified by network planning in a specific implementation. For example, the domain ID of an OpenFlow network domain X is pre-configured to be 01, and the intra-domain switch ID prefix is 01. The intra-domain host/terminal The MAC address prefix is 0A~12, and the IP address prefix of the host/terminal in the domain is 10.12.* or 30.10.*. The format of the global network information database finally established by the controller of the OpenFlow network domain is as shown in Table 1:
表 1 控制器存储的全局网络信息数据格式示意 Table 1 shows the format of the global network information data stored by the controller.
Figure imgf000014_0001
Figure imgf000014_0001
上述实施例提供的技术方案, 可以解决不同 OpenFlow网络域之间的数据交换问 题。 根据上述实施例所提供的上述技术方案, 不同 OpenFlow网络域的控制器之间形 成控制面网络交互网络域之间的网络信息, 而 OpenFlow网络域的控制器只负责本域 内交换机的管理与控制, 便于独立管理的 OpenFlow网络相互通信。 在另外一个实施例中, 还提供了一种软件, 该软件用于执行上述实施例及优选实 施方式中描述的技术方案。 在另外一个实施例中, 还提供了一种存储介质, 该存储介质中存储有上述软件, 该存储介质包括但不限于: 光盘、 软盘、 硬盘、 可擦写存储器等。 显然, 本领域的技术人员应该明白, 上述的本发明实施例的各模块或各步骤可以 用通用的计算装置来实现, 它们可以集中在单个的计算装置上, 或者分布在多个计算 装置所组成的网络上, 可选地, 它们可以用计算装置可执行的程序代码来实现, 从而, 可以将它们存储在存储装置中由计算装置来执行, 并且在某些情况下, 可以以不同于 此处的顺序执行所示出或描述的步骤, 或者将它们分别制作成各个集成电路模块, 或 者将它们中的多个模块或步骤制作成单个集成电路模块来实现。 这样, 本发明实施例 不限制于任何特定的硬件和软件结合。 以上所述仅为本发明的优选实施例而已, 并不用于限制本发明, 对于本领域的技 术人员来说, 本发明可以有各种更改和变化。 凡在本发明的精神和原则之内, 所作的 任何修改、 等同替换、 改进等, 均应包含在本发明的保护范围之内。 The technical solution provided by the foregoing embodiment can solve the problem of data exchange between different OpenFlow network domains. According to the above technical solution provided by the foregoing embodiment, the controllers of the different OpenFlow network domains form network information between the control plane network interaction network domains, and the controller of the OpenFlow network domain is only responsible for the management and control of the switches in the domain. Easy to manage independent OpenFlow networks to communicate with each other. In another embodiment, software is also provided for performing the technical solutions described in the above embodiments and preferred embodiments. In another embodiment, a storage medium is provided, the software being stored, including but not limited to: an optical disk, a floppy disk, a hard disk, a rewritable memory, and the like. Obviously, those skilled in the art should understand that the above modules or steps of the embodiments of the present invention can be implemented by a general computing device, which can be concentrated on a single computing device or distributed in multiple computing devices. Alternatively, they may be implemented by program code executable by the computing device, such that they may be stored in the storage device by the computing device and, in some cases, may be different from 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. Thus, embodiments of the invention are not limited to any specific combination of hardware and software. The above is only the preferred embodiment of the present invention, and is not intended to limit the present invention, and various modifications and changes can be made to the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and scope of the present invention are intended to be included within the scope of the present invention.

Claims

权 利 要 求 书 Claim
1. 一种 OpenFlow网络域间的数据发送方法, 包括: A method for transmitting data between OpenFlow network domains, including:
本地网络域的控制器获取全局网络信息, 其中, 所述全局网络信息为所述 本地网络域和相邻网络域之间进行数据交换所需要的信息;  The controller of the local network domain obtains global network information, where the global network information is information required for data exchange between the local network domain and the neighboring network domain;
对于目的地址不在所述本地网络域的数据报文, 所述本地网络域的控制器 根据所述全局网络信息, 控制所述本地网络域的交换机将所述数据报文发送到 所述相邻网络域。  For a data packet whose destination address is not in the local network domain, the controller of the local network domain controls, according to the global network information, a switch of the local network domain to send the data packet to the neighboring network. area.
2. 根据权利要求 1所述的方法, 其中, 所述全局网络信息包括: 2. The method according to claim 1, wherein the global network information comprises:
本地网络域与相邻网络域间的链路状态信息, 以及除所述本地网络域之外 的其它网络域的网络信息。  Link state information between the local network domain and the neighboring network domain, and network information of other network domains except the local network domain.
3. 根据权利要求 2所述的方法, 其中, 所述链路状态信息通过以下方式获取: 所述本地网络域的控制器指示所述本地网络域的交换机将第一链路探测消 息经由所述相邻网络域的交换机转发给所述相邻域的控制器; 3. The method according to claim 2, wherein the link state information is obtained by: the controller of the local network domain instructing a switch of the local network domain to send a first link probe message via the a switch of a neighboring network domain forwards to a controller of the neighboring domain;
所述本地网络域的控制器接收来自所述相邻域的控制器转发的所述第一链 路探测消息, 以获取所述链路状态信息。  The controller of the local network domain receives the first link probe message forwarded by a controller from the neighboring domain to obtain the link state information.
4. 根据权利要求 2所述的方法, 其中, 所述链路状态信息通过以下方式获取: 所述本地网络域的控制器接收所述本地网络域的交换机上报的第二链路探 测消息, 其中, 所述第二链路探测消息来自于所述相邻网络域的交换机; 所述本地网络域的控制器根据接收的所述第二链路探测消息获取所述链路 状态信息。 The method according to claim 2, wherein the link state information is obtained by: receiving, by a controller of the local network domain, a second link probe message reported by a switch of the local network domain, where And the second link detection message is obtained from the switch of the neighboring network domain; the controller of the local network domain acquires the link state information according to the received second link detection message.
5. 根据权利要求 2所述的方法, 其中, 所述其它网络域的网络信息通过以下方式 获取- 所述本地网络域的控制器从所述相邻网络域的控制器中获取所述其它网络 域的网络信息。 The method according to claim 2, wherein the network information of the other network domain is obtained by: obtaining, by the controller of the local network domain, the other network from a controller of the neighboring network domain Domain network information.
6. 根据权利要求 2所述的方法, 其中, 所述其它网络域的网络信息包括: The method of claim 2, wherein the network information of the other network domain comprises:
所述相邻网络域的终端设备地址信息和 /或地址信息前缀和 /或网络域标识 信息, 以及所述相邻网络域与所述其它网络域之间的链路状态信息。 Terminal device address information and/or address information prefix and/or network domain identification information of the neighboring network domain, and link state information between the neighboring network domain and the other network domain.
7. 根据权利要求 1至 6任一项所述的方法, 其中, 所述全局网络信息还包括: 所 述本地网络域与所述目的地址指示的目的网络域之间的链接路径信息。 The method according to any one of claims 1 to 6, wherein the global network information further comprises: link path information between the local network domain and a destination network domain indicated by the destination address.
8. 一种 OpenFlow网络域间的数据发送装置, 位于本地网络域, 其中, 所述装置 包括: 8. An apparatus for transmitting data between OpenFlow network domains, located in a local network domain, where the apparatus includes:
获取模块, 用于获取全局网络信息, 其中, 所述全局网络信息为所述本地 网络域和相邻网络域之间进行数据交换所需要的信息;  An acquiring module, configured to obtain global network information, where the global network information is information required for data exchange between the local network domain and a neighboring network domain;
控制模块, 用于对目的地址不在所述本地网络域的数据报文, 根据所述全 局网络信息控制所述本地网络域的交换机将所述数据报文发送到所述相邻网络 域。  The control module is configured to control, by the switch of the local network domain, the data packet sent by the local network domain to the neighboring network domain according to the data packet whose destination address is not in the local network domain.
9. 根据权利要求 8所述的装置, 其中, 所述全局网络信息包括: 9. The device according to claim 8, wherein the global network information comprises:
本地网络域与相邻网络域间的链路状态信息和以及除所述本地网络域之外 的其它网络域的网络信息。  Link state information between the local network domain and the neighboring network domain and network information of other network domains except the local network domain.
10. 根据权利要求 9所述的装置, 其中, 所述获取模块包括: The device according to claim 9, wherein the obtaining module comprises:
发送单元, 用于指示所述本地网络域的交换机将第一链路探测消息经由所 述相邻网络域的交换机转发给所述相邻域的控制器;  a sending unit, configured to instruct the switch of the local network domain to forward the first link probe message to the controller of the neighboring domain via a switch of the neighboring network domain;
第一接收单元, 用于接收来自所述相邻域的控制器转发的所述第一链路探 测消息;  a first receiving unit, configured to receive the first link probe message forwarded by a controller from the neighboring domain;
第一获取单元, 用于根据所述第一链路探测消息获取所述链路状态信息。  a first acquiring unit, configured to acquire the link state information according to the first link detection message.
11. 根据权利要求 9所述的装置, 其中, 所述获取模块包括: The device according to claim 9, wherein the obtaining module comprises:
第二接收单元, 用于接收所述本地网络域的交换机上报的第二链路探测消 息, 其中, 所述第二链路探测消息来自于所述相邻网络域的交换机;  a second receiving unit, configured to receive a second link detection message reported by the switch of the local network domain, where the second link detection message is from a switch of the neighboring network domain;
第二获取单元, 用于根据接收的所述第二链路探测消息获取所述链路状态 信息。  And a second acquiring unit, configured to acquire the link state information according to the received second link probe message.
12. 根据权利要求 9所述的装置, 其中, 所述获取模块, 用于从所述相邻网络域的 控制器中获取所述其它网络域的网络信息。 The device according to claim 9, wherein the acquiring module is configured to acquire network information of the other network domain from a controller of the neighboring network domain.
PCT/CN2012/084021 2011-12-08 2012-11-02 Method and apparatus for data transmission between openflow network domains WO2013082983A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201110406333.0 2011-12-08
CN201110406333.0A CN103166876B (en) 2011-12-08 2011-12-08 Data transmission method for uplink and device between OpenFlow network domains

Publications (1)

Publication Number Publication Date
WO2013082983A1 true WO2013082983A1 (en) 2013-06-13

Family

ID=48573544

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2012/084021 WO2013082983A1 (en) 2011-12-08 2012-11-02 Method and apparatus for data transmission between openflow network domains

Country Status (2)

Country Link
CN (1) CN103166876B (en)
WO (1) WO2013082983A1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104753828A (en) * 2013-12-31 2015-07-01 华为技术有限公司 SDN controller, data central system and route connection method
CN104852847A (en) * 2015-04-07 2015-08-19 胡汉强 Data transmission method, control plane equipment and forwarding plane equipment
WO2015157979A1 (en) * 2014-04-17 2015-10-22 华为技术有限公司 Method and apparatus for path establishment
US9596172B2 (en) 2014-06-27 2017-03-14 International Business Machines Corporation Mechanism for exchange of routing data between controllers
CN106656793A (en) * 2016-12-29 2017-05-10 中山大学 Data interaction method of SDN network and IP network
CN111654438A (en) * 2017-06-20 2020-09-11 华为技术有限公司 Method, controller and system for establishing forwarding path in network

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3002931B1 (en) 2013-06-26 2019-08-28 Huawei Technologies Co., Ltd. Ip address allocation system and method
CN103401791B (en) * 2013-07-25 2016-12-28 杭州华三通信技术有限公司 The recognition methods of a kind of boundary port and equipment
CN103647658B (en) * 2013-11-27 2016-12-07 华为技术有限公司 The management method of the network equipment and controller in a kind of software defined network system
CN103595647B (en) 2013-11-27 2014-08-06 北京邮电大学 OpenFlow-based downlink signaling processing method for SDN (Software Defined Network) virtualization platform
CN104735734B (en) * 2013-12-19 2019-07-30 中兴通讯股份有限公司 A kind of method of business processing, network controller and forwarding device
CN104754762B (en) * 2013-12-30 2019-12-03 中兴通讯股份有限公司 Automatically method, controller and the system of controller are found in the customized network of software
EP3598703A1 (en) 2013-12-31 2020-01-22 Huawei Technologies Co., Ltd. Packet transmission method, device, and communications system
CN103825954B (en) * 2014-03-10 2017-12-01 中国联合网络通信集团有限公司 A kind of OpenFlow control methods and corresponding plug-in unit, platform and network
CN105376197B (en) * 2014-08-22 2019-02-22 中国电信股份有限公司 The method and system of implementation level network abstraction
CN104243270B (en) * 2014-09-25 2017-11-24 新华三技术有限公司 A kind of method and apparatus for establishing tunnel
CN104243317B (en) * 2014-09-26 2018-04-20 新华三技术有限公司 A kind of method and apparatus for realizing IP routing forwardings
CN105450532B (en) * 2014-09-28 2018-10-09 新华三技术有限公司 Three-layer forwarding method in software defined network and device
CN104363173A (en) * 2014-10-31 2015-02-18 武汉烽火网络有限责任公司 Forwarding router information generation method, controller and software-defined networking system
WO2016082203A1 (en) * 2014-11-28 2016-06-02 华为技术有限公司 Network communication method and device, and internet system
EP3917084A1 (en) 2014-12-31 2021-12-01 Huawei Technologies Co., Ltd. Network as service service cross-domain orchestration method, orchestration device, and control device
CN106161148B (en) * 2015-04-01 2019-12-13 安富科技股份有限公司 audio network establishing method for multi-domain media device
CN106330781B (en) * 2015-06-26 2020-02-07 中兴通讯股份有限公司 Method, device and switch for separating protocol control and forwarding link of stacking system
CN106161457B (en) * 2016-07-26 2019-09-27 刘昱 Network domains isolating device and method based on SDN
CN107078962B (en) * 2016-09-13 2021-02-23 深圳前海达闼云端智能科技有限公司 Data processing method, device and system in SDN, electronic equipment and computer storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011083780A1 (en) * 2010-01-05 2011-07-14 日本電気株式会社 Communication system, control apparatus, processing rule setting method, packet transmitting method and program
CN102594689A (en) * 2012-02-22 2012-07-18 中兴通讯股份有限公司 Distributed network control method and device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101459610B (en) * 2008-12-18 2011-05-25 北京邮电大学 Routing apparatus and method oriented to multi-layer multi-domain distributed optical network
JP5408243B2 (en) * 2009-03-09 2014-02-05 日本電気株式会社 OpenFlow communication system and OpenFlow communication method
JP5493926B2 (en) * 2010-02-01 2014-05-14 日本電気株式会社 Interface control method, interface control method, and interface control program

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011083780A1 (en) * 2010-01-05 2011-07-14 日本電気株式会社 Communication system, control apparatus, processing rule setting method, packet transmitting method and program
CN102594689A (en) * 2012-02-22 2012-07-18 中兴通讯股份有限公司 Distributed network control method and device

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104753828A (en) * 2013-12-31 2015-07-01 华为技术有限公司 SDN controller, data central system and route connection method
US10454806B2 (en) 2013-12-31 2019-10-22 Huawei Technologies Co., Ltd. SDN controller, data center system, and routing connection method
CN104753828B (en) * 2013-12-31 2019-10-25 华为技术有限公司 A kind of SDN controller, data center systems and routing connection method
WO2015157979A1 (en) * 2014-04-17 2015-10-22 华为技术有限公司 Method and apparatus for path establishment
US9596172B2 (en) 2014-06-27 2017-03-14 International Business Machines Corporation Mechanism for exchange of routing data between controllers
CN104852847A (en) * 2015-04-07 2015-08-19 胡汉强 Data transmission method, control plane equipment and forwarding plane equipment
CN106656793A (en) * 2016-12-29 2017-05-10 中山大学 Data interaction method of SDN network and IP network
CN106656793B (en) * 2016-12-29 2019-12-13 中山大学 Data interaction method for SDN network and IP network
CN111654438A (en) * 2017-06-20 2020-09-11 华为技术有限公司 Method, controller and system for establishing forwarding path in network
CN111654438B (en) * 2017-06-20 2023-09-26 华为技术有限公司 Method, controller and system for establishing forwarding path in network

Also Published As

Publication number Publication date
CN103166876A (en) 2013-06-19
CN103166876B (en) 2018-05-04

Similar Documents

Publication Publication Date Title
WO2013082983A1 (en) Method and apparatus for data transmission between openflow network domains
TWI821373B (en) System for first hop gateway redundancy in a network computing environment
AU2012291753B2 (en) Packet broadcast mechanism in a split architecture network
US9537741B2 (en) Data path performance measurement using test messages in a software defined network
US9843513B2 (en) Multicast flow overlay using registration over a reliable transport
EP2820809B1 (en) Dynamic service insertion in a fabric switch
US20200396162A1 (en) Service function chain sfc-based communication method, and apparatus
US8804723B2 (en) Efficient control packet replication in data plane
KR20160056191A (en) System and method for virtual network-based distributed multi-domain routing
Tarnaras et al. SDN and ForCES based optimal network topology discovery
CN102055665B (en) OSPF point-to-multipoint over broadcast or NBMA mode
WO2014090020A1 (en) Dht-based control network implementation method and system, and network controller
WO2014139564A1 (en) Method and system for controlling an underlying physical network by a software defined network
WO2012103731A1 (en) Method and device for establishing router neighbor
WO2014047784A1 (en) Method for determining packet forwarding path, network device and control device
JP2014504812A (en) Mapping server device, network system, packet transfer method and program
Lin et al. BTSDN: BGP-based transition for the existing networks to SDN
JP2011160363A (en) Computer system, controller, switch, and communication method
WO2015010519A1 (en) Topology structure discovery method and device
US8432909B2 (en) Methods and systems for using a link management interface to distribute information in a communications network
WO2011118574A1 (en) Communications system, control device, delay measuring method, and program
JPWO2014069502A1 (en) COMMUNICATION SYSTEM, ROUTE INFORMATION EXCHANGE DEVICE, COMMUNICATION NODE, ROUTE INFORMATION TRANSFER METHOD, AND PROGRAM
US20120166658A1 (en) Gmpls network-based inter-domain interface apparatus and method
WO2021004213A1 (en) Method and apparatus for determining path tag of fusion network, storage medium, and electronic device
JPWO2014104277A1 (en) Control device, communication system, communication node control method and program

Legal Events

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

Ref document number: 12855397

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

Country of ref document: EP

Kind code of ref document: A1