WO2015058705A1 - Data distribution method and apparatus - Google Patents

Data distribution method and apparatus Download PDF

Info

Publication number
WO2015058705A1
WO2015058705A1 PCT/CN2014/089385 CN2014089385W WO2015058705A1 WO 2015058705 A1 WO2015058705 A1 WO 2015058705A1 CN 2014089385 W CN2014089385 W CN 2014089385W WO 2015058705 A1 WO2015058705 A1 WO 2015058705A1
Authority
WO
WIPO (PCT)
Prior art keywords
application
node
data distribution
data
network
Prior art date
Application number
PCT/CN2014/089385
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 WO2015058705A1 publication Critical patent/WO2015058705A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication

Definitions

  • the present invention relates to the field of Internet, and in particular to a data distribution method and apparatus.
  • the existing data distribution technology distributes data through a module embedded in an application.
  • an application selection proxy node is required.
  • This data distribution method is unfriendly to the application, and fluctuations or agents appear on the network.
  • existing data distribution does not guarantee distribution efficiency.
  • the above method is suitable for point-to-point data distribution, and data distribution efficiency for a one-to-many or many-to-many application is low.
  • the main object of the present invention is to provide a data distribution method and apparatus to solve the problem of low data distribution efficiency.
  • a data distribution method includes: the data distribution node receives a data distribution request of the first application to the second application; and the data distribution node determines a data distribution path between the first application and the second application according to the data distribution request And distributing the data distributed by the first application to the second application in accordance with the data distribution path.
  • determining, by the data distribution node, the data distribution path between the first application and the second application according to the data distribution request includes: determining, according to the data distribution request, a location of the first application and the second application in the network; A data distribution path between the first application and the second application is determined according to the location of the first application and the second application in the network.
  • determining, according to the location of the first application and the second application in the network, the data distribution path between the first application and the second application comprises: according to the first application and the second application in the network a location determining whether the first application and the second application are in a neighboring network; if the first application and the second application are in a neighboring network, distributing the first to the second data distribution node via the first data distribution node The data sent by the application to the second application, wherein the first data distribution node is adjacent to the location of the first application in the network, and the second data distribution node is adjacent to the location of the second application in the network.
  • determining, according to the location of the first application and the second application in the network, the data distribution path between the first application and the second application comprises: according to the first application and the second application in the network The location determines whether the first application and the second application are in an adjacent network; if the first application and the second application are in a separate network, the first data distribution node is used to send the data of the first application to the first a core node; transmitting data of the first application to the second data distribution node by using the first core node, wherein the first data distribution node is adjacent to the first application, and the second data distribution node is opposite to the second application
  • the first core node is configured to forward data distributed by the first application to the second application between the first data distribution node and the second data distribution node.
  • determining, according to the location of the first application and the second application in the network, the data distribution path between the first application and the second application comprises: according to the first application and the second application in the network The location determines whether the first application and the second application are in an adjacent network; if the location of the first application and the second application in the network are in separate networks, the first data distribution node transmits the first The data of the application to the first core node; the first core node sends the data of the first application to the second core node; the second core node sends the data of the first application to the second data distribution node, wherein a data distribution node is adjacent to the first application, the second data distribution node is adjacent to the second application, the first core node is adjacent to the first data distribution node, and the second core node is adjacent to the second data distribution node .
  • determining, according to the location of the first application and the second application in the network, the data distribution path between the first application and the second application comprises: if the first application is to the second application and the third The application sends data, determining, according to the location of the first application and the second application in the network, whether the first application and the second application are in an adjacent network, according to the first application and the third application in the network The location in the determination determines whether the first application and the third application are in an adjacent network; if the first application, the second application, and the third application are in mutually separated networks, the first data distribution node is used to send Data of the first application to the first core node, the first core node sends data of the first application to the second core node and the third core node; the second core node sends data of the first application to the second a data distribution node, the third core node sends the data of the first application to the third data distribution node, wherein the first number The distribution node is adjacent to the first application, the second data distribution node is
  • a data distribution apparatus includes: a receiving unit configured to receive the number of the first application to the second application a distribution unit, configured to determine a data distribution path between the first application and the second application according to the data distribution request; and a distribution unit configured to distribute the first application to the second application according to the data distribution path Distributed data.
  • the selecting unit includes: a positioning module configured to determine a location of the first application and the second application in the network according to the data distribution request; and a distribution module configured to be in accordance with the first application and the second application The location in the network determines the data distribution path between the first application and the second application.
  • the distribution module includes: a determining submodule, configured to determine, according to the location of the first application and the second application in the network, whether the first application and the second application are in the adjacent network; the first distribution a module, configured to: when the first application and the second application are in the adjacent network, distribute, by the first data distribution node, the data sent by the first application to the second application to the second data distribution node, where A data distribution node is adjacent to the location of the first application in the network, and the second data distribution node is adjacent to the location of the second application in the network.
  • the distribution module includes: a determining submodule, configured to determine, according to the location of the first application and the second application in the network, whether the first application and the second application are in an adjacent network; the second distribution a submodule, configured to: when the first application and the second application are in the separated network, send the data of the first application to the first core node by using the first data distribution node, and use the first core node to use the first application
  • the data is sent to the second data distribution node, wherein the first data distribution node is adjacent to the first application, the second data distribution node is adjacent to the second application, and the first core node is used in the first data distribution node
  • the data distributed by the first application to the second application is forwarded with the second data distribution node.
  • the distribution module includes: a determining submodule, configured to determine, according to the location of the first application and the second application in the network, whether the first application and the second application are in an adjacent network; a submodule, configured to use the first data distribution node to send data of the first application to the first core node when the first application and the second application are located in a separated network, using the first core
  • the node sends the data of the first application to the second core node, and sends the data of the first application to the second data distribution node by using the second core node, where the first data distribution node is adjacent to the first application,
  • the second data distribution node is adjacent to the second application, the first core node is adjacent to the first data distribution node, and the second core node is adjacent to the second data distribution node.
  • the distribution module includes: a determining submodule configured to determine, according to the location of the first application and the second application in the network, when the first application sends data to the second application and the third application Whether an application and the second application are in an adjacent network, determining whether the first application and the third application are in an adjacent network according to the location of the first application and the third application in the network; Four points a sending submodule, configured to use the first data distribution node to send data of the first application to the first core node when the first application, the second application, and the third application are in mutually separated networks, first The core node sends the data of the first application to the second core node and the third core node, the second core node sends the data of the first application to the second data distribution node, and the third core node The data is sent to the third data distribution node, wherein the first data distribution node is adjacent to the first application, the second data distribution node is adjacent to the second application, and the third data distribution node is adjacent to the third application.
  • the data distribution node receives the data distribution request of the first application to the second application, and determines the data distribution path between the first application and the second application according to the data distribution request, according to the data distribution
  • the method of distributing the data distributed by the first application to the second application solves the problem of low data distribution efficiency, thereby achieving an effect of improving data distribution efficiency.
  • FIG. 1 is a structural diagram of a data distribution system according to an embodiment of the present invention.
  • FIG. 2 is a data flow diagram of a data distribution system in accordance with an embodiment of the present invention.
  • FIG. 3 is a flowchart of a data distribution method according to a first embodiment of the present invention.
  • FIG. 4 is a flow chart of a data distribution method according to a second embodiment of the present invention.
  • Figure 5 is a flow chart for determining a distribution path in accordance with a first embodiment of the present invention
  • Figure 6 is a schematic diagram of a data distribution method corresponding to the embodiment shown in Figure 5;
  • Figure 8 is a schematic diagram of a data distribution method corresponding to the embodiment shown in Figure 7;
  • FIG. 9 is a flowchart of determining a distribution path according to a third embodiment of the present invention.
  • FIG. 10 is a schematic diagram of a data distribution method corresponding to the embodiment shown in FIG. 9; FIG.
  • FIG. 11 is a flowchart of determining a distribution path according to a fourth embodiment of the present invention.
  • Figure 12 is a schematic diagram of a data distribution method corresponding to the embodiment shown in Figure 11;
  • Figure 13 is a schematic diagram of a data distribution apparatus according to a first embodiment of the present invention.
  • Figure 14 is a schematic diagram of a data distribution apparatus according to a second embodiment of the present invention.
  • Figure 15 is a diagram showing a data distribution apparatus according to a third embodiment of the present invention.
  • Figure 16 is a diagram showing a data distribution apparatus according to a fourth embodiment of the present invention.
  • Figure 17 is a diagram showing a data distribution apparatus according to a fifth embodiment of the present invention.
  • Figure 18 is a schematic diagram of a data distribution apparatus in accordance with a sixth embodiment of the present invention.
  • the data distribution system includes an edge node, a core node, and a management node.
  • the edge node in the figure may be the data distribution node in the embodiment of the present invention
  • the core node may be the first core node, the second core node, etc. in the embodiment of the present invention
  • the data distribution node mentioned below All can correspond to the edge nodes in the figure, and will not be described again.
  • An edge node can be a data distribution program that is deployed on each machine in the application system.
  • Each edge node is peer-to-peer, and can be either a sender or a receiver.
  • the main function of the edge node is to provide a universal data transceiver interface for the application, and connect to a core node to access the data distribution system, and dynamically select the transmission path, data processing and other strategies to achieve application addressing and data transmission acceleration.
  • the core node may be composed of multiple servers distributed in various operators and geographical regions. Each core node server may include one or more network outlets to provide good network coverage for each node in the entire data distribution system.
  • the main function of the core node is to provide application ID query to achieve application addressing, and at the same time, the data is forwarded through the network coverage capability of the core node to achieve transmission acceleration.
  • the role of the management node is to manage the entire data distribution system, including the core nodes and the edge nodes of each application.
  • the main functions of the management node are application namespace management, configuration management, monitoring alarms, etc., to ensure the normal operation and maintenance of the data distribution system.
  • the management node does not assume responsibility for data forwarding in actual data forwarding. Therefore, in the absence of a management node, the data distribution system can also distribute data while ensuring distribution efficiency. .
  • the data distribution system can distribute data between the edge node and the edge node, can distribute data between the edge node and the core node, and can also distribute data between the core node and the core node.
  • the data distribution system can distribute data between the edge node and the edge node, can distribute data between the edge node and the core node, and can also distribute data between the core node and the core node.
  • a management node communication between the management node and the edge node or the core node can also be implemented.
  • the solid line is the program data
  • the dotted line is the routing data
  • the dotted line is the management data, wherein the routing data is used to indicate the location information of each node.
  • the solid line 1 in Figure 2 indicates that the application hands the application data to the local edge node for transmission, or obtains application data from the local edge node.
  • the dotted line 2 in Fig. 2 indicates that the edge node acquires the application ID of the local machine from the local configuration or management node, and registers the application ID with the core node or acquires the application ID from the core node.
  • the dotted line 3 in Fig. 2 indicates the application route of each edge node synchronized with each other between the core nodes.
  • the dotted line 4 in Fig. 2 indicates that the edge node queries the application route from the core node, and performs route detection on the target application to select the optimal transmission path.
  • the solid line 5 in FIG. 2 indicates that the edge node forwards the application data to the core node or other edge node according to the routing result, or receives the number of applications sent by the core node.
  • the solid line 6 in Fig. 2 indicates that the core node forwards the data to other core nodes or target edge nodes after receiving the application data.
  • Dotted line 7 in Figure 2 indicates that the edge node sends local statistics to the management node for aggregation.
  • the dotted line 8 in Fig. 2 indicates that the management node distributes information such as application ID, configuration, and the like to the core node and the edge node.
  • the edge node provides a universal data transceiving interface. By simply interacting with adjacent edge nodes, an application can reliably and quickly send data to one or more application targets or receive data from one or more application targets.
  • the edge node is responsible for selecting the best transmission method and transmission path, without the need for the application to understand the network topology and transmission details.
  • An application can describe one or more application targets by a custom hierarchical application ID, such as app1.node1.shanghai.huadong.dx, which describes the application 1 of Telecom East China Shanghai Node 1.
  • the edge node registers the application ID with the core node, the core node maintains the entire application namespace, and the edge node can find a unique application based on the application ID.
  • the edge node interacts with the core node to implement application routing to achieve exact matching or application matching by rules. For example, app1.* indicates that the target is the application 1 on all nodes, and *.huadong.dx indicates that the target is all the nodes of the East China Telecom. application.
  • Both the core node and the edge node have data forwarding capabilities.
  • the optimal transmission speed, transmission protocol and next hop node can be dynamically selected in real time, and the data can be transmitted to the target node reliably and quickly according to the optimal path through the network coverage capability of the core node. Accelerate data distribution across carriers and across geographies.
  • the core node or the edge node can intelligently make route switching to ensure the efficiency and stability of data distribution.
  • the core node or the edge node can intelligently forward multiple targets to the next hop node according to factors such as file size, network bandwidth, number of targets, and target proximity, and the node continues Distribution, thereby effectively reducing the network bandwidth consumption of a single machine and improving transmission efficiency.
  • the embodiment of the invention provides a data distribution method.
  • FIG. 3 is a flow chart of a data distribution method in accordance with a first embodiment of the present invention. As shown, the method includes the following steps:
  • Step S101 the data distribution node receives a data distribution request of the first application to the second application.
  • the data distribution node receives a data distribution request of the first application to the second application
  • the data distribution request may be a second application ID sent to the data distribution node
  • the data distribution node receives the first application by receiving
  • the transmitted second application ID receives a data distribution request from the first application to the second application.
  • the second application ID may be customized according to the needs of the distribution program and the network, may be an ID that represents the application logic, or may describe the application using an accurate or fuzzy ID, where the application ID can be associated with the application.
  • the actual IP address has nothing to do with this naming method to make the description of the application ID more flexible and simple.
  • the data distribution node referred to herein may be one or more data distribution nodes, and the data distribution nodes may further include an edge node, a core node, and a management node.
  • the edge node may be a node that directly sends and receives data to and from the application
  • the core node may be a node that directly transmits and receives data to and from the edge node and the management node
  • the management node may manage ID information of all programs in the network.
  • edge node and the core node mentioned herein are all data distribution nodes, and the data can be distributed, which is only introduced for convenience of description, and does not constitute an improper limitation of the present invention.
  • Step S102 the data distribution node determines a data distribution path between the first application and the second application according to the data distribution request.
  • the data distribution node After receiving the data distribution request, the data distribution node can determine the second application ID, and the second application ID can standardize the location of the second application in the network.
  • the data distribution node is capable of calculating a data distribution path between the first application and the second application according to the location of the second application and the first application. It should be noted that the first and second mentioned herein are used to distinguish different applications, and are not used to limit the order of the applications and the location of the network.
  • the data distribution node may dynamically select an optimal transmission path in the data distribution system according to the current network state or the state of the data distribution node.
  • the data distribution path between the first application and the second application it is possible to avoid the network state is not good or the distribution efficiency is reduced when the data distribution node fails, and the first application data can be reliably and quickly distributed. To the second application.
  • the determined distribution path may distribute the data of the first application through two data distribution nodes in the network, or may distribute the data of the first application through three or more data distribution nodes in the network.
  • Step S103 distributing data distributed by the first application to the second application according to the data distribution path.
  • the data distributed by the first application to the second application is distributed according to the determined data distribution path.
  • Distributing the data of the first application according to the determined sending path may be via the adjacent network
  • the two data distribution nodes of the network distribute the data of the first application, and may also distribute the data of the first application via three or more data distribution nodes in the adjacent network or the separated network.
  • FIG. 4 is a flow chart of a data distribution method in accordance with a second embodiment of the present invention. As shown, the method includes the following steps:
  • Step S201 the data distribution node receives a data distribution request of the first application to the second application.
  • the data distribution node receives a data distribution request of the first application to the second application
  • the data distribution request may be a second application ID sent to the data distribution node
  • the data distribution node receives the second application sent by the first application
  • the ID receives a data distribution request from the first application to the second application.
  • Step S202 determining a location of the first application and the second application in the network according to the data distribution request.
  • the first application may send the second application ID to the data distribution node, and the data distribution node determines the location of the second application based on the second application ID.
  • the first application is adjacent to the first data distribution node, and the first application and the second application are determined to be in an adjacent network or a separated network by determining the locations of the first application and the second application.
  • the location further determines a data distribution path for the first application and the second application.
  • Step S203 determining a data distribution path between the first application and the second application according to the location of the first application and the second application in the network.
  • the first application and the second application may be in a neighboring network or a network, and the data distribution node may determine between the first application and the second application according to the location of the first application and the second application in the network. Data distribution path.
  • data distribution is performed via two data distribution nodes, which may be two edge nodes; in the first application and the second application
  • data distribution is performed via three or more data distribution nodes, and three or more data distribution nodes may include two edge nodes and one core node, wherein the core node is used to receive the first The data distributed by the edge node forwards the data to the second edge node.
  • Step S204 distributing data distributed by the first application to the second application according to the data distribution path. After the data distribution path is determined, data is transmitted via two or three and more than three data distribution nodes in accordance with the data distribution path.
  • Figure 5 is a flow chart for determining a distribution path in accordance with a first embodiment of the present invention. As shown, the flowchart illustrates determining a data distribution path between the first application and the second application according to the location of the first application and the second application in the network, the embodiment of the embodiment shown in FIG.
  • the method for determining the distribution path may be a preferred embodiment of the data distribution method shown in FIG. 4.
  • the method for determining the distribution path includes the following steps:
  • Step S301 Determine, according to the location of the first application and the second application in the network, whether the first application and the second application are in the adjacent network.
  • the data distribution node acquires the location of the first application in the network when receiving the distribution data request of the first application, and after obtaining the second application ID, can determine that the first application and the second application are in the network Adjacent networks or separate networks.
  • Step S302 if the first application and the second application are in the adjacent network, distribute the data sent by the first application to the second application to the second data distribution node via the first data distribution node, where the first data
  • the distribution node is adjacent to the location of the first application in the network
  • the second data distribution node is adjacent to the location of the second application in the network.
  • the first data distribution node may be the edge node P1 in the figure
  • the second data distribution node may be the edge node P2 in the figure, the first application (not shown) and the first data distribution.
  • the node P1 is adjacent to each other.
  • the first data distribution node P1 detects the data distribution node around it, and detects the second data distribution node P2 and the second.
  • the applications are adjacent, and it is determined that the data distribution to be distributed is distributed by the first data distribution node P1 to the second data distribution node P2. Since P1 and P2 are not used to designate a specific data distribution node, the above process may also be that the second distribution node P2 distributes data to the first data distribution node P1, and correspondingly distributes the data of the second application to the first An application.
  • Figure 7 is a flow chart for determining a distribution path in accordance with a second embodiment of the present invention. As shown, the flowchart illustrates determining a data distribution path between the first application and the second application according to the location of the first application and the second application in the network, the embodiment of the embodiment shown in FIG.
  • the method for determining the distribution path may be a preferred embodiment of the data distribution method shown in FIG. 4.
  • the method for determining the distribution path includes the following steps:
  • Step S401 Determine, according to the location of the first application and the second application in the network, whether the first application and the second application are in an adjacent network.
  • the data distribution node already knows the location of the first application in the network when receiving the distribution data request of the first application, and after obtaining the second application ID, can determine that the first application and the second application are in the network Adjacent networks or separate networks.
  • Step S402 if the first application and the second application are in the separated network, the first data distribution node is used to send the data of the first application to the first core node.
  • the data is distributed through the first core node.
  • the first data distribution node may be an edge node P1, and the first data distribution node detects surrounding data distribution nodes, and may detect the first core node C1 and the second data distribution node P2, wherein the second data Distribution node P2 is the target node for data distribution.
  • the first data distribution node P1 distributes the data to be distributed to the first core node C1.
  • Step S403 the data of the first application is sent to the second data distribution node by using the first core node, where the first data distribution node is adjacent to the first application, and the second data distribution node is adjacent to the second application.
  • the first core node is configured to forward data distributed by the first application to the second application between the first data distribution node and the second data distribution node.
  • the first core node detects that the second data distribution node is adjacent to the second application, forwards the data to be distributed to the second data distribution node, and distributes the data to the second application through the second data distribution node.
  • the first data distribution node in this embodiment may be the edge node P1 in the embodiment shown in FIG. 8, and the second data distribution node may be the edge node P2 in the embodiment shown in FIG. 8, and the first core node may be a figure.
  • Figure 9 is a flow chart for determining a distribution path in accordance with a third embodiment of the present invention. As shown, the flowchart illustrates determining a data distribution path between the first application and the second application according to the location of the first application and the second application in the network, the embodiment of the embodiment shown in FIG.
  • the method for determining the distribution path may be a preferred embodiment of the data distribution method shown in FIG. 4.
  • the method for determining the distribution path includes the following steps:
  • Step S501 Determine, according to the location of the first application and the second application in the network, whether the first application and the second application are in an adjacent network.
  • the data distribution node acquires the location of the first application in the network when receiving the distribution data request of the first application, and after obtaining the second application ID, can determine that the first application and the second application are in the network Adjacent networks or separate networks.
  • Step S502 If the locations of the first application and the second application in the network are in different networks, the first data distribution node is used to send the data of the first application to the first core node.
  • the first data distribution node and the second data distribution node may first send the respective adjacent application IDs to the adjacent core nodes, for example, the first data distribution node sends the first application ID to A first core node adjacent to the first data distribution node, the second data distribution node transmitting the second application ID to a second core node adjacent to the second data distribution node.
  • the first core node can synchronize the first application ID to other core nodes in the network.
  • the second core node can also synchronize the second application ID to other core nodes in the network.
  • the first data distribution node receives a distribution request for the first application to distribute data to the second application, and the first data distribution node transmits the data to be distributed to the first core node.
  • the first data distribution node may be the edge node P1 in FIG. 10
  • the first core node may be the core node C1 in FIG.
  • the edge node P1 detects the core node C1, and the core node C1 acquires the second application ID, thereby determining the next
  • the sending node of the step is the core node C2, and the core node C2 in the figure may be the second core node in this embodiment, and the second core node is adjacent to the second data distribution node.
  • Step S503 the first core node sends the data of the first application to the second core node. After the first core node detects that the next transmission target is the second core node, the data of the first application is sent to the second core node. As shown in FIG. 10, after receiving the data of the first application sent by the edge node P1, the core node C1 transmits the first application data to the core node C2.
  • Step S504 the second core node sends the data of the first application to the second data distribution node, where the first data distribution node is adjacent to the first application, and the second data distribution node is adjacent to the second application.
  • the first core node is adjacent to the first data distribution node
  • the second core node is adjacent to the second data distribution node.
  • the core node C2 transmits data to the edge node P2, which is the second data distribution node in this embodiment, and the edge node P2 is adjacent to the second application.
  • the application ID can be first synchronized to the network, and when the data distribution node performs data distribution, the distribution path can be selected according to the application ID, and data distribution can be performed.
  • Figure 11 is a flow chart for determining a distribution path in accordance with a fourth embodiment of the present invention.
  • the flowchart shows a data distribution path between the first application and the second application according to the location of the first application and the second application in the network, and the method for determining the distribution path of the embodiment shown in FIG.
  • the method for determining a distribution path includes the following steps:
  • Step S601 if the first application sends data to the second application and the third application, determining whether the first application and the second application are adjacent according to the location of the first application and the second application in the network. Within the network, it is determined whether the first application and the third application are in an adjacent network according to the location of the first application and the third application in the network. If the first application sends data to the second application and the third application, the data distribution node can detect the locations of the first application, the second application, and the third application, according to the first application and the second application The location determines whether the first application and the second application are in an adjacent network, and determines whether the first application and the third application are in an adjacent network according to the locations of the first application and the third application.
  • Step S602 if the first application, the second application, and the third application are in mutually separated networks, the data of the first application is sent to the first core node by using the first data distribution node.
  • the first data distribution node transmits the data of the first application to the first core node.
  • the first data distribution node may be the edge node P1 in FIG. 12, and the second application may be the edge node P2 in the figure.
  • the third application may be the edge node P3 or the edge node P4 in the figure, and the edge node P2 and the edge node P3 are adjacent to the second application and the third application, respectively.
  • the edge node P4 in Fig. 6 can also be adjacent to the third application.
  • the edge node P4 and the edge node P5 can also directly transmit and receive data.
  • Step S603 the data of the first application is sent to the second core node and the third core node by using the first core node.
  • the first core node of this embodiment may be the core node C1 shown in FIG. 12
  • the second core node may be the core node C2 shown in FIG. 12
  • the third core node may be the core node C3 shown in FIG.
  • the core node C1 distributes the first application data to the core node C2 and the core node C3
  • the core node C2 transmits the first application data to the edge node P2
  • the core node C3 transmits the first application data to the edge node P3.
  • the distribution of the first application data by each core node is independent of the distribution of the first application data by other core nodes, the data distribution of each core node is independent, and the data distribution of the edge nodes is independent of the data distribution of the core nodes.
  • the first data distribution node After the first data distribution node distributes the first application data to the first core node, the first application data is continuously distributed by the first core node, and at the same time, the first data distribution node may continue to send the first core node to the first core node.
  • the other data of an application that is, the process in which the first data distribution node distributes the data and the core node distributes the data, is independent of each other.
  • each node Since the data distribution process of each node is independent, it does not affect the data distribution efficiency of other data distribution nodes or core nodes, and thus, in the process of data forwarding.
  • the data distribution node can dynamically select the distribution path, and each node can distribute data in parallel during data distribution without affecting the distribution efficiency, thereby improving the distribution efficiency and stability of the entire distribution system.
  • Step S604 the second core node sends the data of the first application to the second data distribution node, and the third core node sends the data of the first application to the third data distribution node, where the first data distribution node and the first data distribution node An application is adjacent, the second data distribution node is adjacent to the second application, the third data distribution node is adjacent to the third application, the first core node is adjacent to the first data distribution node, and the second core node is The second data distribution node is adjacent, and the third core node is adjacent to the third data distribution node.
  • the second core node may be the core node C2 in FIG. 12, the second data distribution node may be the edge node P2 in the figure, and the third data distribution node may be the edge node P3 or P4 in the figure.
  • the core node C2 sends the first application data to the edge node P2, and the core node C3 sends the first application data to the edge node P3.
  • Figure 12 also shows that the core node C3 sends the first application data to the edge node P4, and the edge node P4 can send the first application data to the application adjacent thereto, while the edge node P4 can also be the first The application data is forwarded directly to the edge node P5.
  • the edge node P1 in the figure is adjacent to the first application, the edge node P2 is adjacent to the second application, the edge node P3 is adjacent to the third application data, the core node C1 is adjacent to the edge node P1, and the core node C2 and the edge are Node P2 is adjacent, and core node C3 is adjacent to edge node P3.
  • each node selects the node closest to each node for data distribution based on the locations of the first application and the second application when selecting the next distribution node.
  • the path selection is made, the current network condition can be considered, and the path can be selected at each node, so that other nodes can be selected for data distribution when a node cannot transmit data, thereby ensuring data distribution efficiency.
  • one or more of the foregoing data distribution methods may be used, and a plurality of distribution methods may be combined to ensure distribution stability of the data distribution system and improve the data distribution system. Distribution efficiency.
  • the embodiment of the invention also provides a data distribution device.
  • the data distribution method of the embodiment of the present invention may be performed by the data statistics apparatus provided by the embodiment of the present invention.
  • the data distribution apparatus of the embodiment of the present invention may also be configured to perform the data distribution method provided by the embodiment of the present invention.
  • Figure 13 is a schematic diagram of a data distribution apparatus in accordance with a first embodiment of the present invention. As shown, the data distribution apparatus includes a receiving unit 10, a selection unit 20, and a distribution unit 30.
  • the receiving unit 10 is arranged to receive a data distribution request from the first application to the second application.
  • the receiving unit 10 receives a data distribution request of the first application to the second application
  • the data distribution request may be a second application ID sent to the data distribution node
  • the receiving unit 10 receives the second application sent by the first application.
  • the ID receives a data distribution request from the first application to the second application.
  • the second application ID may be customized according to the needs of the distribution program and the network, may be an ID that represents the application logic, or may describe the application using an accurate or fuzzy ID, where the application ID can be associated with the application.
  • the actual IP address has nothing to do with this naming method to make the description of the application ID more flexible and simple.
  • the selection unit 20 is arranged to determine a data distribution path between the first application and the second application in accordance with the data distribution request.
  • the receiving unit 10 can determine the second application ID, which can standardize the location of the second application in the network.
  • the selection unit 20 is capable of calculating a data distribution path between the first application and the second application according to the location of the second application and the first application. Need It is noted that the first and second mentioned herein are used to distinguish different applications, and are not used to define the order of the applications and the location information of the network.
  • the receiving unit 10 may dynamically select an optimal transmission path in the data distribution system according to the current network state or the state of the data distribution node.
  • the receiving unit 10 may dynamically select an optimal transmission path in the data distribution system according to the current network state or the state of the data distribution node.
  • the determined distribution path may distribute the data of the first application through two data distribution nodes in the network, or may distribute the data of the first application through three or more data distribution nodes in the network.
  • the distribution unit 30 is arranged to distribute the data distributed by the first application to the second application in accordance with the data distribution path.
  • the data distributed by the first application to the second application is distributed in accordance with the determined data distribution path.
  • Distributing the data of the first application according to the determined transmission path may be distributing data of the first application via two data distribution nodes in the adjacent network, or may be three or more data distribution nodes in the adjacent network or in the separated network. Distribute the data of the first application.
  • Figure 14 is a schematic diagram of a data distribution apparatus in accordance with a second embodiment of the present invention.
  • the data distribution apparatus includes a receiving unit 10, a selection unit 20, and a distribution unit 30, wherein the selection unit 20 further includes a positioning module 201 and a distribution module 202.
  • the receiving unit 10 and the distributing unit 30 have the same functions as the receiving unit 10 and the distributing unit 30 shown in FIG. 13 and will not be described herein.
  • the location module 201 is arranged to determine the location of the first application and the second application in the network in accordance with the data distribution request.
  • the first application may send the second application ID to the data distribution node, and the data distribution node determines the location of the second application based on the second application ID.
  • the first application is adjacent to the data distribution node, and by determining the location of the first application and the second application, determining that the first application and the second application are in an adjacent network or a separated network, can pass the location. Further determining data distribution paths of the first application and the second application.
  • the distribution module 202 is configured to determine a data distribution path between the first application and the second application based on the location of the first application and the second application in the network.
  • the first application and the second application may be in the same network or different networks, may be in a neighboring network or in a separated network, and the data distribution node may determine the first application according to the location of the first application and the second application in the network.
  • the two data distribution nodes may be two edge nodes; when the first application and the second application are in a separated network, data distribution is performed via three or more data distribution nodes, Three or more data distribution nodes may include two edge nodes and one core node, wherein the core node is configured to receive data distributed by the first edge node and forward the data to the second edge node.
  • Figure 15 is a schematic diagram of a data distribution apparatus in accordance with a third embodiment of the present invention.
  • the data distribution apparatus includes a receiving sub-module 2020 and a first distribution sub-module 2021 in the receiving unit 10, the distribution unit 30, the positioning module 201, and the distribution module 202.
  • the receiving unit 10, the distributing unit 30, and the positioning module 201 in the figure have the same functions as the receiving unit 10, the distributing unit 30, and the positioning module 201 shown in FIG. 14, and are not described herein.
  • the judging sub-module 2020 is configured to determine whether the first application and the second application are in the adjacent network according to the location of the first application and the second application in the network.
  • the receiving unit 10 has acquired the location of the first application in the network when receiving the distribution data request of the first application, and after obtaining the second application ID, determining that the submodule 2020 can determine the first application and according to the application ID.
  • the second application is on a neighboring network or a separate network in the network.
  • the first distribution submodule 2021 is configured to distribute, when the first application and the second application are in the adjacent network, the data sent by the first application to the second application to the second data distribution node via the first data distribution node. Wherein the first data distribution node is adjacent to the location of the first application in the network, and the second data distribution node is adjacent to the location of the second application in the network. When the first application and the second application are in the adjacent network, the first distribution module 2021 transmits the first application data to the second application via the first data distribution node and the second data distribution node.
  • FIG. 16 is a schematic diagram of a data distribution apparatus in accordance with a fourth embodiment of the present invention.
  • the data distribution apparatus includes a receiving unit 10, a distribution unit 30, a positioning module 201, and a judging sub-module 2021 and a first distribution sub-module 2022 in the distribution module 202.
  • the receiving unit 10, the distributing unit 30, and the positioning module 201 in the figure have the same functions as the receiving unit 10, the distributing unit 30, and the positioning module 201 shown in FIG. 14, and are not described herein.
  • the judging sub-module 2020 is configured to determine whether the first application and the second application are in an adjacent network according to the location of the first application and the second application in the network.
  • the data distribution node acquires the location of the first application in the network when receiving the distribution data request of the first application, and after obtaining the second application ID, the determining submodule 2020 can determine the first application according to the application ID.
  • the second application is on a neighboring network or a separate network in the network.
  • the second distribution submodule 2022 is configured to send the data of the first application to the first core node by using the first data distribution node when the first application and the second application are in the separated network, and use the first core node to An application data is sent to the second data distribution node, wherein the first data distribution node and the first application Adjacent to the program, the second data distribution node is adjacent to the second application, and the first core node is configured to forward the first application to the second application between the first data distribution node and the second data distribution node.
  • the data is configured to send the data of the first application to the first core node by using the first data distribution node when the first application and the second application are in the separated network, and use the first core node to An application data is sent to the second data distribution node, wherein the first data distribution node and the first application Adjacent to the program, the second data distribution node is adjacent to the second application, and the first core node is configured to forward the first application to the second application between the first data distribution node and the second data
  • the second distribution submodule 2022 After determining that the first application and the second application are in the separated network, the second distribution submodule 2022 sends the data of the first application to the first core node by using the first data distribution node, and the first core node is used to The data of the application is sent to the second data distribution node.
  • the first data distribution node may be the edge node P1 in FIG. 8, and the first data distribution node detects the surrounding data distribution node, and may detect the first core node C1 and the second data distribution node P2, wherein the second data distribution node P2 The target node for data distribution.
  • the first data distribution node P1 distributes the data to be distributed to the first core node C1.
  • the first core node detects that the second data distribution node is adjacent to the second application, forwards the data to be distributed to the second data distribution node, and distributes the data to the second application through the second data distribution node.
  • the first data distribution node in this embodiment may be the edge node P1 in the embodiment shown in FIG. 8, and the second data distribution node may be the edge node P2 in the embodiment shown in FIG. 8, and the first core node may be a figure.
  • Figure 17 is a diagram showing a data distribution apparatus according to a fifth embodiment of the present invention.
  • the data distribution apparatus includes a receiving unit 10, a distribution unit 30, a positioning module 201, and a determination sub-module 2020 and a third distribution sub-module 2023 in the distribution module 202.
  • the receiving unit 10, the distributing unit 30, and the positioning module 201 in the figure have the same functions as the receiving unit 10, the distributing unit 30, and the positioning module 201 shown in FIG. 14, and are not described herein.
  • the judging sub-module 2020 is configured to determine whether the first application and the second application are in an adjacent network according to the location of the first application and the second application in the network.
  • the data distribution node acquires the location of the first application in the network when receiving the distribution data request of the first application, and after obtaining the second application ID, the determining submodule 2020 can determine the first application according to the application ID.
  • the second application is on a neighboring network or a separate network in the network.
  • the third distribution submodule 2023 is configured to use the first data distribution node to send the data of the first application to the first core node when the location of the first application and the second application in the network are in a separated network, and utilize The first core node sends the data of the first application to the second core node, and sends the data of the first application to the second data distribution node by using the second core node, where the first data distribution node and the first application Adjacent, the second data distribution node is adjacent to the second application, the first core node is adjacent to the first data distribution node, and the second core node is adjacent to the second data distribution node.
  • the first data distribution node and the second data distribution node may first send the respective adjacent application IDs to the adjacent core nodes, for example, the first data distribution node sends the first application ID to A first core node adjacent to the first data distribution node, the second data distribution node transmitting the second application ID to a second core node adjacent to the second data distribution node.
  • the first core node can synchronize the first application ID to other core nodes in the network.
  • the second core node can also synchronize the second application ID to other core nodes in the network.
  • the first data distribution node receives a distribution request for the first application to distribute data to the second application, and the first data distribution node transmits the data to be distributed to the first core node.
  • the first data distribution node may be the edge node P1 in FIG. 10
  • the first core node may be the core node C1 in FIG.
  • the edge node P1 detects the core node C1, and the core node C1 obtains the second application ID, so that the next sending node is the core node C2, and the core node C2 in the figure may be the second core node in this embodiment.
  • the second core node is adjacent to the second data distribution node.
  • the data of the first application is sent to the second core node.
  • the core node C1 transmits the first application data to the core node C2.
  • the core node C2 sends data to the edge node P2, which is the second data distribution node in this embodiment, and the edge node P2 is adjacent to the second application.
  • Figure 18 is a schematic diagram of a data distribution apparatus in accordance with a sixth embodiment of the present invention.
  • the data distribution apparatus includes a receiving sub-module 2020 and a first distribution sub-module 2024 in the receiving unit 10, the distribution unit 30, the positioning module 201, and the distribution module 202.
  • the receiving unit 10, the distributing unit 30, and the positioning module 201 in the figure have the same functions as the receiving unit 10, the distributing unit 30, and the positioning module 201 shown in FIG. 14, and are not described herein.
  • the determining sub-module 2020 is configured to determine the first application and the second application according to the location of the first application and the second application in the network when the first application sends data to the second application and the third application Whether it is in an adjacent network, determining whether the first application and the third application are in an adjacent network according to the location of the first application and the third application in the network.
  • the data distribution node can detect the locations of the first application, the second application, and the third application, according to the first application and the second application The location determines whether the first application and the second application are in an adjacent network, and determines whether the first application and the third application are in an adjacent network according to the locations of the first application and the third application.
  • the fourth distribution sub-module 2024 is configured to use the first data distribution node to send the data of the first application to the first core node when the first application, the second application, and the third application are in the mutually separated network,
  • the first core node sends the data of the first application to the second core node and the third core node
  • the second core node sends the data of the first application to the second data distribution node
  • the third core node sends the first application
  • the data of the program is sent to the third data distribution node, wherein the first data distribution node is adjacent to the first application, the second data distribution node is adjacent to the second application, and the third data distribution node is associated with the third application Adjacent, the first core node is adjacent to the first data distribution node, the second core node is adjacent to the second data distribution node, and the third core node is adjacent to the third data distribution node.
  • the first data distribution node transmits the data of the first application to the first core node.
  • the first data distribution node may be the edge node P1 in FIG. 12
  • the second application may be the edge node P2 in the figure
  • the third application may be the edge node P3 or the edge node P4 in the figure
  • the edge The node P2 and the edge node P3 are adjacent to the second application and the third application, respectively.
  • the edge node P4 in Fig. 6 can also be adjacent to the third application.
  • the edge node P4 and the edge node P5 can also directly transmit and receive data.
  • the first core node of this embodiment may be the core node C1 shown in FIG. 12, the second core node may be the core node C2 shown in FIG. 12, and the third core node may be the core node C3 shown in FIG.
  • the core node C1 distributes the first application data to the core node C2 and the core node C3, the core node C2 transmits the first application data to the edge node P2, and the core node C3 transmits the first application data to the edge node P3.
  • the distribution of the first application data by each core node is independent of the distribution of the first application data by other core nodes, the data distribution of each core node is independent, and the data distribution of the edge nodes is independent of the data distribution of the core nodes.
  • the second core node may be the core node C2 in FIG. 12, the second data distribution node may be the edge node P2 in the figure, and the third data distribution node may be the edge node P3 or P4 in the figure.
  • the core node C2 sends the first application data to the edge node P2, and the core node C3 sends the first application data to the edge node P3.
  • Figure 12 also shows that the core node C3 sends the first application data to the edge node P4, and the edge node P4 can send the first application data to the application adjacent thereto, while the edge node P4 can also be the first The application data is forwarded directly to the edge node P5.
  • the edge node P1 in the figure is adjacent to the first application, the edge node P2 is adjacent to the second application, the edge node P3 is adjacent to the third application data, the core node C1 is adjacent to the edge node P1, and the core node C2 and the edge are Node P2 is adjacent, and core node C3 is adjacent to edge node P3.
  • Embodiments of the present invention also provide a computer storage medium.
  • the computer storage medium may store a program for performing some or all of the steps of the data distribution method described above.
  • the disclosed apparatus may be implemented in other ways.
  • the device embodiments described above are merely illustrative.
  • the division of the above units is only a logical function division. In actual implementation, there may be another division manner. For example, multiple units or components may be combined or integrated. Go to another system, or some features can be ignored or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be electrical or otherwise.
  • the units described above as separate components may or may not be physically separated.
  • the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
  • the above-described integrated unit if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a computer readable storage medium.
  • the technical solution of the embodiments of the present invention may be embodied in the form of a software product in the form of a software product in essence or in a part contributing to the related art, and the computer software product is stored in a storage medium.
  • a number of instructions are included to cause a computer device (which may be a personal computer, server or network device, etc.) to perform all or part of the steps of the above-described methods of various embodiments of the present invention.
  • the foregoing storage medium includes: a U disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a removable hard disk, a magnetic disk, or an optical disk, and the like. .

Abstract

Disclosed in the present invention are a data distribution method and apparatus. The data distribution method comprises: a data distribution node receiving a data distribution request from a first application program to a second application program; the data distribution node determining a data distribution path between the first application program and the second application program according to the data distribution request; and according to the data distribution path, distributing data distributed from the first application program to the second application program. The present invention enables an improvement of the efficiency of data distribution.

Description

数据分发方法和装置Data distribution method and device 技术领域Technical field
本发明涉及互联网领域,具体而言,涉及一种数据分发方法和装置。The present invention relates to the field of Internet, and in particular to a data distribution method and apparatus.
背景技术Background technique
随着互联网技术的发展和各种新型应用的不断出现,越来越多的大规模应用程序需要在互联网中的成千上万台机器之间进行大量的数据分发。现有的数据分发技术是通过内嵌在应用程序中的模块进行数据分发,在进行数据分发时,需要应用选择代理节点,这种数据分发方法对应用程序不友好,在网络出现波动或代理出现故障时,现有的数据分发无法保证分发效率。另外,上述方法适用于点对点的数据分发,对于一对多或者多对多的应用程序的数据分发效率较低。With the development of Internet technology and the emergence of various new applications, more and more large-scale applications require a large amount of data distribution among thousands of machines on the Internet. The existing data distribution technology distributes data through a module embedded in an application. When data distribution is performed, an application selection proxy node is required. This data distribution method is unfriendly to the application, and fluctuations or agents appear on the network. In the event of a failure, existing data distribution does not guarantee distribution efficiency. In addition, the above method is suitable for point-to-point data distribution, and data distribution efficiency for a one-to-many or many-to-many application is low.
针对相关技术中数据分发效率低的问题,目前尚未提出有效的解决方案。In view of the low efficiency of data distribution in related technologies, no effective solution has been proposed yet.
发明内容Summary of the invention
本发明的主要目的在于提供一种数据分发方法和装置,以解决数据分发效率低的问题。The main object of the present invention is to provide a data distribution method and apparatus to solve the problem of low data distribution efficiency.
为了实现上述目的,根据本发明的一个方面,提供了一种数据分发方法。根据本发明的数据分发方法包括:数据分发节点接收第一应用程序向第二应用程序的数据分发请求;数据分发节点根据数据分发请求确定第一应用程序和第二应用程序之间的数据分发路径;以及按照数据分发路径分发第一应用程序向第二应用程序分发的数据。In order to achieve the above object, according to an aspect of the present invention, a data distribution method is provided. The data distribution method according to the present invention includes: the data distribution node receives a data distribution request of the first application to the second application; and the data distribution node determines a data distribution path between the first application and the second application according to the data distribution request And distributing the data distributed by the first application to the second application in accordance with the data distribution path.
可选地,数据分发节点根据数据分发请求确定第一应用程序和第二应用程序之间的数据分发路径包括:根据数据分发请求确定第一应用程序和第二应用程序在网络中的位置;以及根据第一应用程序和第二应用程序在网络中的位置确定第一应用程序和第二应用程序之间的数据分发路径。Optionally, determining, by the data distribution node, the data distribution path between the first application and the second application according to the data distribution request includes: determining, according to the data distribution request, a location of the first application and the second application in the network; A data distribution path between the first application and the second application is determined according to the location of the first application and the second application in the network.
可选地,根据第一应用程序和第二应用程序在网络中的位置确定第一应用程序和第二应用程序之间的数据分发路径包括:根据第一应用程序和第二应用程序在网络中的位置判断第一应用程序和第二应用程序是否处于相邻网络内;如果第一应用程序和第二应用程序处于相邻网络内,经由第一数据分发节点向第二数据分发节点分发第一 应用程序向第二应用程序发送的数据,其中,第一数据分发节点与第一应用程序在网络中的位置相邻,第二数据分发节点与第二应用程序在网络中的位置相邻。Optionally, determining, according to the location of the first application and the second application in the network, the data distribution path between the first application and the second application comprises: according to the first application and the second application in the network a location determining whether the first application and the second application are in a neighboring network; if the first application and the second application are in a neighboring network, distributing the first to the second data distribution node via the first data distribution node The data sent by the application to the second application, wherein the first data distribution node is adjacent to the location of the first application in the network, and the second data distribution node is adjacent to the location of the second application in the network.
可选地,根据第一应用程序和第二应用程序在网络中的位置确定第一应用程序和第二应用程序之间的数据分发路径包括:根据第一应用程序和第二应用程序在网络中的位置判断第一应用程序和第二应用程序是否处于相邻的网络内;如果第一应用程序和第二应用程序处于相隔网络内,利用第一数据分发节点发送第一应用程序的数据至第一核心节点;利用第一核心节点将第一应用程序的数据发送至第二数据分发节点,其中,第一数据分发节点与第一应用程序相邻,第二数据分发节点与第二应用程序相邻,第一核心节点用于在第一数据分发节点和第二数据分发节点之间转发由第一应用程序向第二应用程序分发的数据。Optionally, determining, according to the location of the first application and the second application in the network, the data distribution path between the first application and the second application comprises: according to the first application and the second application in the network The location determines whether the first application and the second application are in an adjacent network; if the first application and the second application are in a separate network, the first data distribution node is used to send the data of the first application to the first a core node; transmitting data of the first application to the second data distribution node by using the first core node, wherein the first data distribution node is adjacent to the first application, and the second data distribution node is opposite to the second application The first core node is configured to forward data distributed by the first application to the second application between the first data distribution node and the second data distribution node.
可选地,根据第一应用程序和第二应用程序在网络中的位置确定第一应用程序和第二应用程序之间的数据分发路径包括:根据第一应用程序和第二应用程序在网络中的位置判断第一应用程序和第二应用程序是否处于相邻的网络内;如果第一应用程序和第二应用程序在网络中的位置处于相隔的网络内,利用第一数据分发节点发送第一应用程序的数据至第一核心节点;第一核心节点将第一应用程序的数据发送至第二核心节点;第二核心节点将第一应用程序的数据发送至第二数据分发节点,其中,第一数据分发节点与第一应用程序相邻,第二数据分发节点与第二应用程序相邻,第一核心节点与第一数据分发节点相邻,第二核心节点与第二数据分发节点相邻。Optionally, determining, according to the location of the first application and the second application in the network, the data distribution path between the first application and the second application comprises: according to the first application and the second application in the network The location determines whether the first application and the second application are in an adjacent network; if the location of the first application and the second application in the network are in separate networks, the first data distribution node transmits the first The data of the application to the first core node; the first core node sends the data of the first application to the second core node; the second core node sends the data of the first application to the second data distribution node, wherein a data distribution node is adjacent to the first application, the second data distribution node is adjacent to the second application, the first core node is adjacent to the first data distribution node, and the second core node is adjacent to the second data distribution node .
可选地,根据第一应用程序和第二应用程序在网络中的位置确定第一应用程序和第二应用程序之间的数据分发路径包括:如果第一应用程序向第二应用程序和第三应用程序发送数据,根据第一应用程序和第二应用程序在网络中的位置判断第一应用程序和第二应用程序是否处于相邻的网络内,根据第一应用程序和第三应用程序在网络中的位置判断第一应用程序和第三应用程序是否处于相邻的网络内;如果第一应用程序、第二应用程序和第三应用程序处于相互相隔的网络内,利用第一数据分发节点发送第一应用程序的数据至第一核心节点,第一核心节点将第一应用程序的数据发送至第二核心节点和第三核心节点;第二核心节点将第一应用程序的数据发送至第二数据分发节点,第三核心节点将第一应用程序的数据发送至第三数据分发节点,其中,第一数据分发节点与第一应用程序相邻,第二数据分发节点与第二应用程序相邻,第三数据分发节点与第三应用程序相邻,第一核心节点与第一数据分发节点相邻,第二核心节点与第二数据分发节点相邻,第三核心节点与第三数据分发节点相邻。Optionally, determining, according to the location of the first application and the second application in the network, the data distribution path between the first application and the second application comprises: if the first application is to the second application and the third The application sends data, determining, according to the location of the first application and the second application in the network, whether the first application and the second application are in an adjacent network, according to the first application and the third application in the network The location in the determination determines whether the first application and the third application are in an adjacent network; if the first application, the second application, and the third application are in mutually separated networks, the first data distribution node is used to send Data of the first application to the first core node, the first core node sends data of the first application to the second core node and the third core node; the second core node sends data of the first application to the second a data distribution node, the third core node sends the data of the first application to the third data distribution node, wherein the first number The distribution node is adjacent to the first application, the second data distribution node is adjacent to the second application, the third data distribution node is adjacent to the third application, and the first core node is adjacent to the first data distribution node, The second core node is adjacent to the second data distribution node, and the third core node is adjacent to the third data distribution node.
为了实现上述目的,根据本发明的另一方面,提供了一种数据分发装置。根据本发明的数据分发装置包括:接收单元,设置为接收第一应用程序向第二应用程序的数 据分发请求;选择单元,设置为根据数据分发请求确定第一应用程序和第二应用程序之间的数据分发路径;以及分发单元,设置为按照数据分发路径分发第一应用程序向第二应用程序分发的数据。In order to achieve the above object, according to another aspect of the present invention, a data distribution apparatus is provided. A data distribution apparatus according to the present invention includes: a receiving unit configured to receive the number of the first application to the second application a distribution unit, configured to determine a data distribution path between the first application and the second application according to the data distribution request; and a distribution unit configured to distribute the first application to the second application according to the data distribution path Distributed data.
可选地,选择单元包括:定位模块,设置为根据数据分发请求确定第一应用程序和第二应用程序在网络中的位置;以及分发模块,设置为根据第一应用程序和第二应用程序在网络中的位置确定第一应用程序和第二应用程序之间的数据分发路径。Optionally, the selecting unit includes: a positioning module configured to determine a location of the first application and the second application in the network according to the data distribution request; and a distribution module configured to be in accordance with the first application and the second application The location in the network determines the data distribution path between the first application and the second application.
可选地,分发模块包括:判断子模块,设置为根据第一应用程序和第二应用程序在网络中的位置判断第一应用程序和第二应用程序是否处于相邻网络内;第一分发子模块,设置为在第一应用程序和第二应用程序处于相邻网络内时,经由第一数据分发节点向第二数据分发节点分发第一应用程序向第二应用程序发送的数据,其中,第一数据分发节点与第一应用程序在网络中的位置相邻,第二数据分发节点与第二应用程序在网络中的位置相邻。Optionally, the distribution module includes: a determining submodule, configured to determine, according to the location of the first application and the second application in the network, whether the first application and the second application are in the adjacent network; the first distribution a module, configured to: when the first application and the second application are in the adjacent network, distribute, by the first data distribution node, the data sent by the first application to the second application to the second data distribution node, where A data distribution node is adjacent to the location of the first application in the network, and the second data distribution node is adjacent to the location of the second application in the network.
可选地,分发模块包括:判断子模块,设置为根据第一应用程序和第二应用程序在网络中的位置判断第一应用程序和第二应用程序是否处于相邻的网络内;第二分发子模块,设置为在第一应用程序和第二应用程序处于相隔网络内时,利用第一数据分发节点发送第一应用程序的数据至第一核心节点,利用第一核心节点将第一应用程序的数据发送至第二数据分发节点,其中,第一数据分发节点与第一应用程序相邻,第二数据分发节点与第二应用程序相邻,第一核心节点用于在第一数据分发节点和第二数据分发节点之间转发由第一应用程序向第二应用程序分发的数据。Optionally, the distribution module includes: a determining submodule, configured to determine, according to the location of the first application and the second application in the network, whether the first application and the second application are in an adjacent network; the second distribution a submodule, configured to: when the first application and the second application are in the separated network, send the data of the first application to the first core node by using the first data distribution node, and use the first core node to use the first application The data is sent to the second data distribution node, wherein the first data distribution node is adjacent to the first application, the second data distribution node is adjacent to the second application, and the first core node is used in the first data distribution node The data distributed by the first application to the second application is forwarded with the second data distribution node.
可选地,分发模块包括:判断子模块,设置为根据第一应用程序和第二应用程序在网络中的位置判断第一应用程序和第二应用程序是否处于相邻的网络内;第三分发子模块,设置为在第一应用程序和第二应用程序在网络中的位置处于相隔的网络内时,利用第一数据分发节点发送第一应用程序的数据至第一核心节点,利用第一核心节点将第一应用程序的数据发送至第二核心节点,利用第二核心节点将第一应用程序的数据发送至第二数据分发节点,其中,第一数据分发节点与第一应用程序相邻,第二数据分发节点与第二应用程序相邻,第一核心节点与第一数据分发节点相邻,第二核心节点与第二数据分发节点相邻。Optionally, the distribution module includes: a determining submodule, configured to determine, according to the location of the first application and the second application in the network, whether the first application and the second application are in an adjacent network; a submodule, configured to use the first data distribution node to send data of the first application to the first core node when the first application and the second application are located in a separated network, using the first core The node sends the data of the first application to the second core node, and sends the data of the first application to the second data distribution node by using the second core node, where the first data distribution node is adjacent to the first application, The second data distribution node is adjacent to the second application, the first core node is adjacent to the first data distribution node, and the second core node is adjacent to the second data distribution node.
可选地,分发模块包括:判断子模块,设置为在第一应用程序向第二应用程序和第三应用程序发送数据时,根据第一应用程序和第二应用程序在网络中的位置判断第一应用程序和第二应用程序是否处于相邻的网络内,根据第一应用程序和第三应用程序在网络中的位置判断第一应用程序和第三应用程序是否处于相邻的网络内;第四分 发子模块,设置为在第一应用程序、第二应用程序和第三应用程序处于相互相隔的网络内时,利用第一数据分发节点发送第一应用程序的数据至第一核心节点,第一核心节点将第一应用程序的数据发送至第二核心节点和第三核心节点,第二核心节点将第一应用程序的数据发送至第二数据分发节点,第三核心节点将第一应用程序的数据发送至第三数据分发节点,其中,第一数据分发节点与第一应用程序相邻,第二数据分发节点与第二应用程序相邻,第三数据分发节点与第三应用程序相邻,第一核心节点与第一数据分发节点相邻,第二核心节点与第二数据分发节点相邻,第三核心节点与第三数据分发节点相邻。Optionally, the distribution module includes: a determining submodule configured to determine, according to the location of the first application and the second application in the network, when the first application sends data to the second application and the third application Whether an application and the second application are in an adjacent network, determining whether the first application and the third application are in an adjacent network according to the location of the first application and the third application in the network; Four points a sending submodule, configured to use the first data distribution node to send data of the first application to the first core node when the first application, the second application, and the third application are in mutually separated networks, first The core node sends the data of the first application to the second core node and the third core node, the second core node sends the data of the first application to the second data distribution node, and the third core node The data is sent to the third data distribution node, wherein the first data distribution node is adjacent to the first application, the second data distribution node is adjacent to the second application, and the third data distribution node is adjacent to the third application. The first core node is adjacent to the first data distribution node, the second core node is adjacent to the second data distribution node, and the third core node is adjacent to the third data distribution node.
通过本发明,采用数据分发节点接收第一应用程序向第二应用程序的数据分发请求,并根据数据分发请求确定所述第一应用程序和第二应用程序之间的数据分发路径,按照数据分发路径分发第一应用程序向第二应用程序分发的数据的方法,解决了数据分发效率低的问题,进而达到了提高数据分发效率的效果。According to the present invention, the data distribution node receives the data distribution request of the first application to the second application, and determines the data distribution path between the first application and the second application according to the data distribution request, according to the data distribution The method of distributing the data distributed by the first application to the second application solves the problem of low data distribution efficiency, thereby achieving an effect of improving data distribution efficiency.
附图说明DRAWINGS
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:The accompanying drawings, which are incorporated in the claims In the drawing:
图1是根据本发明实施例的数据分发系统的结构图;1 is a structural diagram of a data distribution system according to an embodiment of the present invention;
图2是根据本发明实施例的数据分发系统数据流图;2 is a data flow diagram of a data distribution system in accordance with an embodiment of the present invention;
图3是根据本发明第一实施例的数据分发方法的流程图;3 is a flowchart of a data distribution method according to a first embodiment of the present invention;
图4是根据本发明第二实施例的数据分发方法的流程图;4 is a flow chart of a data distribution method according to a second embodiment of the present invention;
图5是根据本发明第一实施例的确定分发路径的流程图;Figure 5 is a flow chart for determining a distribution path in accordance with a first embodiment of the present invention;
图6是与图5所示实施例对应的数据分发方法的示意图;Figure 6 is a schematic diagram of a data distribution method corresponding to the embodiment shown in Figure 5;
图7是根据本发明第二实施例的确定分发路径的流程图;Figure 7 is a flow chart for determining a distribution path in accordance with a second embodiment of the present invention;
图8是与图7所示实施例对应的数据分发方法的示意图;Figure 8 is a schematic diagram of a data distribution method corresponding to the embodiment shown in Figure 7;
图9是根据本发明第三实施例的确定分发路径的流程图;FIG. 9 is a flowchart of determining a distribution path according to a third embodiment of the present invention; FIG.
图10是与图9所示实施例对应的数据分发方法的示意图;FIG. 10 is a schematic diagram of a data distribution method corresponding to the embodiment shown in FIG. 9; FIG.
图11是根据本发明第四实施例的确定分发路径的流程图; 11 is a flowchart of determining a distribution path according to a fourth embodiment of the present invention;
图12是与图11所示实施例对应的数据分发方法的示意图;Figure 12 is a schematic diagram of a data distribution method corresponding to the embodiment shown in Figure 11;
图13是根据本发明第一实施例的数据分发装置的示意图;Figure 13 is a schematic diagram of a data distribution apparatus according to a first embodiment of the present invention;
图14是根据本发明第二实施例的数据分发装置的示意图;Figure 14 is a schematic diagram of a data distribution apparatus according to a second embodiment of the present invention;
图15是根据本发明第三实施例的数据分发装置的示意图;Figure 15 is a diagram showing a data distribution apparatus according to a third embodiment of the present invention;
图16是根据本发明第四实施例的数据分发装置的示意图;Figure 16 is a diagram showing a data distribution apparatus according to a fourth embodiment of the present invention;
图17是根据本发明第五实施例的数据分发装置的示意图;以及Figure 17 is a diagram showing a data distribution apparatus according to a fifth embodiment of the present invention;
图18是根据本发明第六实施例的数据分发装置的示意图。Figure 18 is a schematic diagram of a data distribution apparatus in accordance with a sixth embodiment of the present invention.
具体实施方式detailed description
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。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. The invention will be described in detail below with reference to the drawings in conjunction with the embodiments.
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。The technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present invention. It is an embodiment of the invention, but not all of the embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative efforts shall fall within the scope of the present invention.
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。It is to be understood that the terms "first", "second" and the like in the specification and claims of the present invention are used to distinguish similar objects, and are not necessarily used to describe a particular order or order. It is to be understood that the data so used may be interchanged as appropriate, such that the embodiments of the invention described herein can be implemented, for example, in a sequence other than those illustrated or described herein. In addition, the terms "comprises" and "comprises" and "the" and "the" are intended to cover a non-exclusive inclusion, for example, a process, method, system, product, or device that comprises a series of steps or units is not necessarily limited to Those steps or units may include other steps or units not explicitly listed or inherent to such processes, methods, products or devices.
图1是根据本发明实施例的数据分发系统的结构图。如图所示,该数据分发系统包括边缘节点、核心节点和管理节点。需要说明的是,图中的边缘节点可以是本发明实施例中的数据分发节点,核心节点可以是本发明实施例中的第一核心节点、第二核心节点等,下文提到的数据分发节点都可以对应到图中的边缘节点,不再赘述。 1 is a block diagram of a data distribution system in accordance with an embodiment of the present invention. As shown, the data distribution system includes an edge node, a core node, and a management node. It should be noted that the edge node in the figure may be the data distribution node in the embodiment of the present invention, and the core node may be the first core node, the second core node, etc. in the embodiment of the present invention, and the data distribution node mentioned below All can correspond to the edge nodes in the figure, and will not be described again.
边缘节点可以是部署在应用系统中的各台机器上的数据分发程序。每个边缘节点是对等的,都可以是发送数据者,也可以是接收数据者。边缘节点的主要功能是为应用程序提供通用的数据收发接口,并就近连接到某个核心节点上接入数据分发系统,通过动态选择传输路径、数据处理等策略实现应用寻址与数据传输加速。An edge node can be a data distribution program that is deployed on each machine in the application system. Each edge node is peer-to-peer, and can be either a sender or a receiver. The main function of the edge node is to provide a universal data transceiver interface for the application, and connect to a core node to access the data distribution system, and dynamically select the transmission path, data processing and other strategies to achieve application addressing and data transmission acceleration.
核心节点可以是由多台分布于各个运营商、各个地理区域的服务器组成,每台核心节点服务器可能包括一个或多个网络出口,为整个数据分发系统中的各个节点提供良好的网络覆盖。核心节点的主要功能是提供应用程序ID查询来实现应用寻址,同时通过核心节点的网络覆盖能力对数据进行转发来实现传输加速。The core node may be composed of multiple servers distributed in various operators and geographical regions. Each core node server may include one or more network outlets to provide good network coverage for each node in the entire data distribution system. The main function of the core node is to provide application ID query to achieve application addressing, and at the same time, the data is forwarded through the network coverage capability of the core node to achieve transmission acceleration.
管理节点的作用是管理整个数据分发系统,包括核心节点和各个应用的边缘节点。管理节点的主要功能是应用程序命名空间管理、配置管理、监控报警等,保证数据分发系统的正常运维。但是在本数据分发系统中,该管理节点在实际数据转发中不承担数据转发的责任,因此,在没有管理节点的情况下,本数据分发系统也可以在保证分发效率的情况下进行数据的分发。The role of the management node is to manage the entire data distribution system, including the core nodes and the edge nodes of each application. The main functions of the management node are application namespace management, configuration management, monitoring alarms, etc., to ensure the normal operation and maintenance of the data distribution system. However, in the data distribution system, the management node does not assume responsibility for data forwarding in actual data forwarding. Therefore, in the absence of a management node, the data distribution system can also distribute data while ensuring distribution efficiency. .
图2是根据本发明实施例的数据分发系统数据流图。如图所示,该数据分发系统可以在边缘节点与边缘节点之间进行数据分发,可以在边缘节点与核心节点之间进行数据分发,还可以在核心节点与核心节点之间进行数据分发,同时,在有管理节点的情况下,还可以实现管理节点与边缘节点或者核心节点的通信。以下结合图2对本发明实施例的数据分发系统的数据流交互进行说明。2 is a data flow diagram of a data distribution system in accordance with an embodiment of the present invention. As shown in the figure, the data distribution system can distribute data between the edge node and the edge node, can distribute data between the edge node and the core node, and can also distribute data between the core node and the core node. In the case of a management node, communication between the management node and the edge node or the core node can also be implemented. The data flow interaction of the data distribution system of the embodiment of the present invention will be described below with reference to FIG.
图中实线为程序数据,虚线为路由数据,点线为管理数据,其中,路由数据用于表示各个节点的位置信息。In the figure, the solid line is the program data, the dotted line is the routing data, and the dotted line is the management data, wherein the routing data is used to indicate the location information of each node.
图2中实线1表示应用程序将应用数据交给本地的边缘节点进行发送,或从本地边缘节点上获取应用数据。The solid line 1 in Figure 2 indicates that the application hands the application data to the local edge node for transmission, or obtains application data from the local edge node.
图2中点线2表示边缘节点从本机配置或管理节点获取本机的应用程序ID,并向核心节点注册应用程序ID或从核心节点获取应用程序ID。The dotted line 2 in Fig. 2 indicates that the edge node acquires the application ID of the local machine from the local configuration or management node, and registers the application ID with the core node or acquires the application ID from the core node.
图2中虚线3表示核心节点之间相互同步各个边缘节点的应用路由。The dotted line 3 in Fig. 2 indicates the application route of each edge node synchronized with each other between the core nodes.
图2中虚线4表示边缘节点从核心节点查询应用路由,并对目标应用程序进行路由探测,选择最佳的传输路径。The dotted line 4 in Fig. 2 indicates that the edge node queries the application route from the core node, and performs route detection on the target application to select the optimal transmission path.
图2中实线5表示边缘节点根据路由选择结果,将应用数据转发到核心节点或其它的边缘节点,或者接收核心节点发来的应用数。 The solid line 5 in FIG. 2 indicates that the edge node forwards the application data to the core node or other edge node according to the routing result, or receives the number of applications sent by the core node.
图2中实线6表示核心节点收到应用数据后,将数据转发到其它核心节点或目标边缘节点。The solid line 6 in Fig. 2 indicates that the core node forwards the data to other core nodes or target edge nodes after receiving the application data.
图2中点线7表示边缘节点将本地的统计数据发送到管理节点进行汇总。 Dotted line 7 in Figure 2 indicates that the edge node sends local statistics to the management node for aggregation.
图2中点线8表示管理节点将应用ID、配置等信息分发到核心节点和边缘节点。The dotted line 8 in Fig. 2 indicates that the management node distributes information such as application ID, configuration, and the like to the core node and the edge node.
在该数据分发系统中,边缘节点提供通用的数据收发接口。应用程序只需与相邻的边缘节点进行交互,就可以可靠、快速的将数据发送到一个或多个应用目标,或者从一个或多个应用程序目标上接收数据。边缘节点负责选择最佳传输方式与传输路径,无需应用程序了解网络拓扑和传输细节。In the data distribution system, the edge node provides a universal data transceiving interface. By simply interacting with adjacent edge nodes, an application can reliably and quickly send data to one or more application targets or receive data from one or more application targets. The edge node is responsible for selecting the best transmission method and transmission path, without the need for the application to understand the network topology and transmission details.
应用程序可以通过自定义的层次化的应用ID来描述一个或多个应用程序目标,如app1.node1.shanghai.huadong.dx,这个ID描述的是电信华东上海节点1的应用1。边缘节点向核心节点注册应用程序ID,核心节点维护整个应用命名空间,边缘节点能够根据应用程序ID寻找到唯一的应用程序。边缘节点与核心节点进行应用路由交互,实现精确匹配或按规则匹配的应用寻址,如app1.*表示目标是所有节点上的应用1,*.huadong.dx表示目标是电信华东所有节点的所有应用。An application can describe one or more application targets by a custom hierarchical application ID, such as app1.node1.shanghai.huadong.dx, which describes the application 1 of Telecom East China Shanghai Node 1. The edge node registers the application ID with the core node, the core node maintains the entire application namespace, and the edge node can find a unique application based on the application ID. The edge node interacts with the core node to implement application routing to achieve exact matching or application matching by rules. For example, app1.* indicates that the target is the application 1 on all nodes, and *.huadong.dx indicates that the target is all the nodes of the East China Telecom. application.
核心节点与边缘节点都具有数据转发功能。针对不同的数据和发送目标,可以动态实时选择最佳的传输速度、传输协议和下一跳节点,通过核心节点的网络覆盖能力将数据按最佳路径可靠、快速的传输到目标节点上,实现对跨运营商、跨地理区域的数据分发加速。当网络波动或某个核心节点出现故障时,核心节点或边缘节点可以智能作出路由切换,保证数据分发的效率和稳定性。Both the core node and the edge node have data forwarding capabilities. For different data and transmission targets, the optimal transmission speed, transmission protocol and next hop node can be dynamically selected in real time, and the data can be transmitted to the target node reliably and quickly according to the optimal path through the network coverage capability of the core node. Accelerate data distribution across carriers and across geographies. When the network fluctuates or a core node fails, the core node or the edge node can intelligently make route switching to ensure the efficiency and stability of data distribution.
当发送目标是多个的时候,核心节点或边缘节点可以根据文件大小、网络带宽、目标个数、目标相近度等因素,智能的将多个目标合并转发到下一跳节点,由该节点继续进行分发,从而有效的减小单机的网络带宽消耗并提高传输效率。When the destination is multiple, the core node or the edge node can intelligently forward multiple targets to the next hop node according to factors such as file size, network bandwidth, number of targets, and target proximity, and the node continues Distribution, thereby effectively reducing the network bandwidth consumption of a single machine and improving transmission efficiency.
本发明实施例提供了一种数据分发方法。The embodiment of the invention provides a data distribution method.
图3是根据本发明第一实施例的数据分发方法的流程图。如图所示,该方法包括如下步骤:3 is a flow chart of a data distribution method in accordance with a first embodiment of the present invention. As shown, the method includes the following steps:
步骤S101,数据分发节点接收第一应用程序向第二应用程序的数据分发请求。Step S101, the data distribution node receives a data distribution request of the first application to the second application.
数据分发节点接收第一应用程序向第二应用程序的数据分发请求,数据分发请求可以是向数据分发节点发送的第二应用程序ID,数据分发节点通过接收第一应用程序 发送的第二应用程序ID接收第一应用程序向第二应用程序的数据分发请求。其中,第二应用程序ID可以根据分发程序和网络的需要进行自定义,可以是表征应用逻辑的ID,也可以使用精确或模糊的ID描述应用程序,这里所说的应用程序ID可以与应用程序的实际IP地址无关,通过这种命名方法可以使得应用程序ID的描述更加灵活、简单。The data distribution node receives a data distribution request of the first application to the second application, the data distribution request may be a second application ID sent to the data distribution node, and the data distribution node receives the first application by receiving The transmitted second application ID receives a data distribution request from the first application to the second application. The second application ID may be customized according to the needs of the distribution program and the network, may be an ID that represents the application logic, or may describe the application using an accurate or fuzzy ID, where the application ID can be associated with the application. The actual IP address has nothing to do with this naming method to make the description of the application ID more flexible and simple.
这里所说的数据分发节点可以是一个或多个数据分发节点,这些数据分发节点还可以包括边缘节点、核心节点和管理节点。其中,边缘节点可以是直接与应用程序进行数据收发的节点,核心节点可以是直接与边缘节点和管理节点进行数据收发的节点,管理节点可以管理网络中的所有程序的ID信息。The data distribution node referred to herein may be one or more data distribution nodes, and the data distribution nodes may further include an edge node, a core node, and a management node. The edge node may be a node that directly sends and receives data to and from the application, and the core node may be a node that directly transmits and receives data to and from the edge node and the management node, and the management node may manage ID information of all programs in the network.
需要说明的是,这里所说的边缘节点与核心节点都是数据分发节点,都可以进行数据的分发,只是为了描述方便而引进的,不构成对本发明的不当限定。It should be noted that the edge node and the core node mentioned herein are all data distribution nodes, and the data can be distributed, which is only introduced for convenience of description, and does not constitute an improper limitation of the present invention.
步骤S102,数据分发节点根据数据分发请求确定第一应用程序和第二应用程序之间的数据分发路径。Step S102, the data distribution node determines a data distribution path between the first application and the second application according to the data distribution request.
数据分发节点接收到数据分发请求之后,能够确定第二应用程序ID,第二应用程序ID能够标准第二应用程序在网络中的位置。数据分发节点能够根据第二应用程序和第一应用程序的位置,计算第一应用程序和第二应用程序之间的数据分发路径。需要说明的是,这里所说的第一、第二用于区分不同的应用程序,不用于限定应用程序的先后顺序和所处网络的位置。After receiving the data distribution request, the data distribution node can determine the second application ID, and the second application ID can standardize the location of the second application in the network. The data distribution node is capable of calculating a data distribution path between the first application and the second application according to the location of the second application and the first application. It should be noted that the first and second mentioned herein are used to distinguish different applications, and are not used to limit the order of the applications and the location of the network.
可选地,数据分发节点在接收到数据分发请求之后,可以根据当前的网络状或者数据分发节点的状态动态的在数据分发系统中选择最佳的传输路径。通过动态的选择第一应用程序和第二应用程序之间的数据分发路径,可以避免网络状态不好或者数据分发节点发生故障时降低分发效率,能够保证可靠、快速的将第一应用程序数据分发至第二应用程序。Optionally, after receiving the data distribution request, the data distribution node may dynamically select an optimal transmission path in the data distribution system according to the current network state or the state of the data distribution node. By dynamically selecting the data distribution path between the first application and the second application, it is possible to avoid the network state is not good or the distribution efficiency is reduced when the data distribution node fails, and the first application data can be reliably and quickly distributed. To the second application.
确定的分发路径可以通过网络中的两个数据分发节点分发第一应用程序的数据,也可以通过网络中的三个以上数据分发节点分发第一应用程序的数据。The determined distribution path may distribute the data of the first application through two data distribution nodes in the network, or may distribute the data of the first application through three or more data distribution nodes in the network.
步骤S103,按照数据分发路径分发第一应用程序向第二应用程序分发的数据。Step S103, distributing data distributed by the first application to the second application according to the data distribution path.
在确定数据分发路径之后,按照确定的数据分发路径分发第一应用程序向第二应用程序分发的数据。按照确定的发送路径分发第一应用程序的数据可以是经由相邻网 络的两个数据分发节点分发第一应用程序的数据,也可以是经由相邻网络或相隔网络中的三个以上数据分发节点分发第一应用程序的数据。After determining the data distribution path, the data distributed by the first application to the second application is distributed according to the determined data distribution path. Distributing the data of the first application according to the determined sending path may be via the adjacent network The two data distribution nodes of the network distribute the data of the first application, and may also distribute the data of the first application via three or more data distribution nodes in the adjacent network or the separated network.
图4是根据本发明第二实施例的数据分发方法的流程图。如图所示,该方法包括如下步骤:4 is a flow chart of a data distribution method in accordance with a second embodiment of the present invention. As shown, the method includes the following steps:
步骤S201,数据分发节点接收第一应用程序向第二应用程序的数据分发请求。数据分发节点接收第一应用程序向第二应用程序的数据分发请求,数据分发请求可以是向数据分发节点发送的第二应用程序ID,数据分发节点通过接收第一应用程序发送的第二应用程序ID接收第一应用程序向第二应用程序的数据分发请求。Step S201, the data distribution node receives a data distribution request of the first application to the second application. The data distribution node receives a data distribution request of the first application to the second application, the data distribution request may be a second application ID sent to the data distribution node, and the data distribution node receives the second application sent by the first application The ID receives a data distribution request from the first application to the second application.
步骤S202,根据数据分发请求确定第一应用程序和第二应用程序在网络中的位置。第一应用程序可以将第二应用程序ID发送至数据分发节点,数据分发节点根据第二应用程序ID确定第二应用程序的位置。其中,第一应用程序与第一数据分发节点相邻,通过确定第一应用程序和第二应用程序的位置确定第一应用程序和第二应用程序处于相邻的网络或者相隔的网络,能够通过该位置进一步确定第一应用程序和第二应用程序的数据分发路径。Step S202, determining a location of the first application and the second application in the network according to the data distribution request. The first application may send the second application ID to the data distribution node, and the data distribution node determines the location of the second application based on the second application ID. The first application is adjacent to the first data distribution node, and the first application and the second application are determined to be in an adjacent network or a separated network by determining the locations of the first application and the second application. The location further determines a data distribution path for the first application and the second application.
步骤S203,根据第一应用程序和第二应用程序在网络中的位置确定第一应用程序和第二应用程序之间的数据分发路径。第一应用程序和第二应用程序可以处于相邻网络或相隔网络,数据分发节点可以根据第一应用程序和第二应用程序在网络中的位置,确定第一应用程序和第二应用程序之间的数据分发路径。例如:在第一应用程序和第二应用程序处于相邻网络时,经由两个数据分发节点进行数据分发,这两个数据分发节点可以是两个边缘节点;在第一应用程序和第二应用程序处于相隔的网络时,经由三个或三个以上数据分发节点进行数据分发,三个或三个以上数据分发节点可以包括两个边缘节点和一个核心节点,其中,核心节点用于接收第一边缘节点分发的数据,并将该数据转发至第二边缘节点。Step S203, determining a data distribution path between the first application and the second application according to the location of the first application and the second application in the network. The first application and the second application may be in a neighboring network or a network, and the data distribution node may determine between the first application and the second application according to the location of the first application and the second application in the network. Data distribution path. For example, when the first application and the second application are in a neighboring network, data distribution is performed via two data distribution nodes, which may be two edge nodes; in the first application and the second application When the program is in a separated network, data distribution is performed via three or more data distribution nodes, and three or more data distribution nodes may include two edge nodes and one core node, wherein the core node is used to receive the first The data distributed by the edge node forwards the data to the second edge node.
步骤S204,按照数据分发路径分发第一应用程序向第二应用程序分发的数据。在确定了数据分发路径之后,按照数据分发路径经由两个或者三个及三个以上数据分发节点发送数据。Step S204, distributing data distributed by the first application to the second application according to the data distribution path. After the data distribution path is determined, data is transmitted via two or three and more than three data distribution nodes in accordance with the data distribution path.
图5是根据本发明第一实施例的确定分发路径的流程图。如图所示,该流程图示出了根据第一应用程序和第二应用程序在网络中的位置确定第一应用程序和第二应用程序之间的数据分发路径,图5所示实施例的确定分发路径的方法可以作为图4所示数据分发方法的优选实施方式,该确定分发路径的方法包括如下步骤: Figure 5 is a flow chart for determining a distribution path in accordance with a first embodiment of the present invention. As shown, the flowchart illustrates determining a data distribution path between the first application and the second application according to the location of the first application and the second application in the network, the embodiment of the embodiment shown in FIG. The method for determining the distribution path may be a preferred embodiment of the data distribution method shown in FIG. 4. The method for determining the distribution path includes the following steps:
步骤S301,根据第一应用程序和第二应用程序在网络中的位置判断第一应用程序和第二应用程序是否处于相邻网络内。数据分发节点在接收第一应用程序的分发数据请求的时候已经获取第一应用程序在网络的位置,在获取第二应用程序ID之后,能够确定第一应用程序和第二应用程序在网络中处于相邻网络或者相隔网络。Step S301: Determine, according to the location of the first application and the second application in the network, whether the first application and the second application are in the adjacent network. The data distribution node acquires the location of the first application in the network when receiving the distribution data request of the first application, and after obtaining the second application ID, can determine that the first application and the second application are in the network Adjacent networks or separate networks.
步骤S302,如果第一应用程序和第二应用程序处于相邻网络内,经由第一数据分发节点向第二数据分发节点分发第一应用程序向第二应用程序发送的数据,其中,第一数据分发节点与第一应用程序在网络中的位置相邻,第二数据分发节点与第二应用程序在网络中的位置相邻。如图6所示,第一数据分发节点可以是图中的边缘节点P1,第二数据分发节点可以是图中的边缘节点P2,第一应用程序(图中未示出)与第一数据分发节点P1相邻,在第一应用程序将需要分发的数据发送到第一数据分发节点P1时,第一数据分发节点P1探测其周围的数据分发节点,探测到第二数据分发节点P2与第二应用程序相邻,确定将需要分发的数据分发由第一数据分发节点P1分发到第二数据分发节点P2。由于P1和P2不用于指定某个特定的数据分发节点,因此,上述过程也可以是由第二分发节点P2分发数据至第一数据分发节点P1,相应的将第二应用程序的数据分发至第一应用程序。Step S302, if the first application and the second application are in the adjacent network, distribute the data sent by the first application to the second application to the second data distribution node via the first data distribution node, where the first data The distribution node is adjacent to the location of the first application in the network, and the second data distribution node is adjacent to the location of the second application in the network. As shown in FIG. 6, the first data distribution node may be the edge node P1 in the figure, and the second data distribution node may be the edge node P2 in the figure, the first application (not shown) and the first data distribution. The node P1 is adjacent to each other. When the first application sends the data to be distributed to the first data distribution node P1, the first data distribution node P1 detects the data distribution node around it, and detects the second data distribution node P2 and the second. The applications are adjacent, and it is determined that the data distribution to be distributed is distributed by the first data distribution node P1 to the second data distribution node P2. Since P1 and P2 are not used to designate a specific data distribution node, the above process may also be that the second distribution node P2 distributes data to the first data distribution node P1, and correspondingly distributes the data of the second application to the first An application.
图7是根据本发明第二实施例的确定分发路径的流程图。如图所示,该流程图示出了根据第一应用程序和第二应用程序在网络中的位置确定第一应用程序和第二应用程序之间的数据分发路径,图7所示实施例的确定分发路径的方法可以作为图4所示数据分发方法的优选实施方式,该确定分发路径的方法包括如下步骤:Figure 7 is a flow chart for determining a distribution path in accordance with a second embodiment of the present invention. As shown, the flowchart illustrates determining a data distribution path between the first application and the second application according to the location of the first application and the second application in the network, the embodiment of the embodiment shown in FIG. The method for determining the distribution path may be a preferred embodiment of the data distribution method shown in FIG. 4. The method for determining the distribution path includes the following steps:
步骤S401,根据第一应用程序和第二应用程序在网络中的位置判断第一应用程序和第二应用程序是否处于相邻的网络内。数据分发节点在接收第一应用程序的分发数据请求的时候已经知晓第一应用程序在网络的位置,在获取第二应用程序ID之后,能够确定第一应用程序和第二应用程序在网络中处于相邻网络或者相隔网络。Step S401: Determine, according to the location of the first application and the second application in the network, whether the first application and the second application are in an adjacent network. The data distribution node already knows the location of the first application in the network when receiving the distribution data request of the first application, and after obtaining the second application ID, can determine that the first application and the second application are in the network Adjacent networks or separate networks.
步骤S402,如果第一应用程序和第二应用程序处于相隔网络内,利用第一数据分发节点发送第一应用程序的数据至第一核心节点。Step S402, if the first application and the second application are in the separated network, the first data distribution node is used to send the data of the first application to the first core node.
在确定第一应用程序和第二应用程序处于相隔网络内之后,通过第一核心节点对数据进行分发。如图8所示,第一数据分发节点可以是边缘节点P1,第一数据分发节点探测周围的数据分发节点,可以探测到第一核心节点C1和第二数据分发节点P2,其中,第二数据分发节点P2为数据分发的目标节点。第一数据分发节点P1将需要分发的数据分发至第一核心节点C1。 After determining that the first application and the second application are in a separate network, the data is distributed through the first core node. As shown in FIG. 8, the first data distribution node may be an edge node P1, and the first data distribution node detects surrounding data distribution nodes, and may detect the first core node C1 and the second data distribution node P2, wherein the second data Distribution node P2 is the target node for data distribution. The first data distribution node P1 distributes the data to be distributed to the first core node C1.
步骤S403,利用第一核心节点将第一应用程序的数据发送至第二数据分发节点,其中,第一数据分发节点与第一应用程序相邻,第二数据分发节点与第二应用程序相邻,第一核心节点用于在第一数据分发节点和第二数据分发节点之间转发由第一应用程序向第二应用程序分发的数据。Step S403, the data of the first application is sent to the second data distribution node by using the first core node, where the first data distribution node is adjacent to the first application, and the second data distribution node is adjacent to the second application. The first core node is configured to forward data distributed by the first application to the second application between the first data distribution node and the second data distribution node.
第一核心节点探测到第二数据分发节点与第二应用程序相邻,将需要分发的数据转发至第二数据分发节点,通过第二数据分发节点分发数据至第二应用程序。本实施例中的第一数据分发节点可以是图8所示实施例中的边缘节点P1,第二数据分发节点可以是图8所示实施例中的边缘节点P2,第一核心节点可以是图8所示实施例中的核心节点C1。The first core node detects that the second data distribution node is adjacent to the second application, forwards the data to be distributed to the second data distribution node, and distributes the data to the second application through the second data distribution node. The first data distribution node in this embodiment may be the edge node P1 in the embodiment shown in FIG. 8, and the second data distribution node may be the edge node P2 in the embodiment shown in FIG. 8, and the first core node may be a figure. The core node C1 in the embodiment shown in FIG.
图9是根据本发明第三实施例的确定分发路径的流程图。如图所示,该流程图示出了根据第一应用程序和第二应用程序在网络中的位置确定第一应用程序和第二应用程序之间的数据分发路径,图9所示实施例的确定分发路径的方法可以作为图4所示数据分发方法的优选实施方式,该确定分发路径的方法包括如下步骤:Figure 9 is a flow chart for determining a distribution path in accordance with a third embodiment of the present invention. As shown, the flowchart illustrates determining a data distribution path between the first application and the second application according to the location of the first application and the second application in the network, the embodiment of the embodiment shown in FIG. The method for determining the distribution path may be a preferred embodiment of the data distribution method shown in FIG. 4. The method for determining the distribution path includes the following steps:
步骤S501,根据第一应用程序和第二应用程序在网络中的位置判断第一应用程序和第二应用程序是否处于相邻的网络内。数据分发节点在接收第一应用程序的分发数据请求的时候已经获取第一应用程序在网络的位置,在获取第二应用程序ID之后,能够确定第一应用程序和第二应用程序在网络中处于相邻网络或者相隔网络。Step S501: Determine, according to the location of the first application and the second application in the network, whether the first application and the second application are in an adjacent network. The data distribution node acquires the location of the first application in the network when receiving the distribution data request of the first application, and after obtaining the second application ID, can determine that the first application and the second application are in the network Adjacent networks or separate networks.
步骤S502,如果第一应用程序和第二应用程序在网络中的位置处于相隔的网络内,利用第一数据分发节点发送第一应用程序的数据至第一核心节点。Step S502: If the locations of the first application and the second application in the network are in different networks, the first data distribution node is used to send the data of the first application to the first core node.
如果第一应用程序和第二应用程序在网络中的位置处于相隔的网络内,利用第一数据分发节点、第二数据分发节点和两个核心节点分发第一应用程序向第二应用程序分发的数据。在进行数据分发之前,第一数据分发节点和第二数据分发节点可以先将各自相邻的应用程序ID发送至相邻的核心节点,例如,第一数据分发节点将第一应用程序ID发送至与第一数据分发节点相邻的第一核心节点,第二数据分发节点将第二应用程序ID发送至与第二数据分发节点相邻的第二核心节点。第一核心节点可以将第一应用程序ID同步至网络中的其他核心节点,同理,第二核心节点也可以将第二应用程序ID同步至网络中的其他核心节点。If the location of the first application and the second application in the network are in separate networks, distributing the first application to the second application by using the first data distribution node, the second data distribution node, and the two core nodes data. Before the data distribution is performed, the first data distribution node and the second data distribution node may first send the respective adjacent application IDs to the adjacent core nodes, for example, the first data distribution node sends the first application ID to A first core node adjacent to the first data distribution node, the second data distribution node transmitting the second application ID to a second core node adjacent to the second data distribution node. The first core node can synchronize the first application ID to other core nodes in the network. Similarly, the second core node can also synchronize the second application ID to other core nodes in the network.
第一数据分发节点接收第一应用程序向第二应用程序分发数据的分发请求,第一数据分发节点将需要分发的数据发送至第一核心节点。如图10所示,第一数据分发节点可以是图10中的边缘节点P1,第一核心节点可以是图10中的核心节点C1。边缘节点P1探测到核心节点C1,核心节点C1获取到第二应用程序ID,从而判断出下一 步的发送节点为核心节点C2,图中的核心节点C2可以是本实施例中的第二核心节点,第二核心节点与第二数据分发节点相邻。The first data distribution node receives a distribution request for the first application to distribute data to the second application, and the first data distribution node transmits the data to be distributed to the first core node. As shown in FIG. 10, the first data distribution node may be the edge node P1 in FIG. 10, and the first core node may be the core node C1 in FIG. The edge node P1 detects the core node C1, and the core node C1 acquires the second application ID, thereby determining the next The sending node of the step is the core node C2, and the core node C2 in the figure may be the second core node in this embodiment, and the second core node is adjacent to the second data distribution node.
步骤S503,第一核心节点将第一应用程序的数据发送至第二核心节点。在第一核心节点探测到下一步的发送目标为第二核心节点之后,将第一应用程序的数据发送至第二核心节点。如图10所示,核心节点C1接收到边缘节点P1发送的第一应用程序的数据之后,将第一应用程序数据发送至核心节点C2。Step S503, the first core node sends the data of the first application to the second core node. After the first core node detects that the next transmission target is the second core node, the data of the first application is sent to the second core node. As shown in FIG. 10, after receiving the data of the first application sent by the edge node P1, the core node C1 transmits the first application data to the core node C2.
步骤S504,第二核心节点将第一应用程序的数据发送至第二数据分发节点,其中,第一数据分发节点与第一应用程序相邻,第二数据分发节点与第二应用程序相邻,第一核心节点与第一数据分发节点相邻,第二核心节点与第二数据分发节点相邻。如图10所示,核心节点C2将数据发送至边缘节点P2,边缘节点P2是本实施例中的第二数据分发节点,边缘节点P2与第二应用程序相邻。Step S504, the second core node sends the data of the first application to the second data distribution node, where the first data distribution node is adjacent to the first application, and the second data distribution node is adjacent to the second application. The first core node is adjacent to the first data distribution node, and the second core node is adjacent to the second data distribution node. As shown in FIG. 10, the core node C2 transmits data to the edge node P2, which is the second data distribution node in this embodiment, and the edge node P2 is adjacent to the second application.
通过上述步骤S501至步骤S504,可以通过首先将应用程序ID同步到网络中,在数据分发节点进行数据分发的时候,可以根据应用程序ID寻址,选择分发路径并进行数据分发。Through the above steps S501 to S504, the application ID can be first synchronized to the network, and when the data distribution node performs data distribution, the distribution path can be selected according to the application ID, and data distribution can be performed.
图11是根据本发明第四实施例的确定分发路径的流程图。该流程图示出了根据第一应用程序和第二应用程序在网络中的位置确定第一应用程序和第二应用程序之间的数据分发路径,图11所示实施例的确定分发路径的方法可以作为图4所示数据分发方法的优选实施方式,该确定分发路径的方法包括如下步骤:Figure 11 is a flow chart for determining a distribution path in accordance with a fourth embodiment of the present invention. The flowchart shows a data distribution path between the first application and the second application according to the location of the first application and the second application in the network, and the method for determining the distribution path of the embodiment shown in FIG. As a preferred embodiment of the data distribution method shown in FIG. 4, the method for determining a distribution path includes the following steps:
步骤S601,如果第一应用程序向第二应用程序和第三应用程序发送数据,根据第一应用程序和第二应用程序在网络中的位置判断第一应用程序和第二应用程序是否处于相邻的网络内,根据第一应用程序和第三应用程序在网络中的位置判断第一应用程序和第三应用程序是否处于相邻的网络内。如果第一应用程序向第二应用程序和第三应用程序发送数据,数据分发节点能够探测第一应用程序、第二应用程序和第三应用程序的位置,根据第一应用程序和第二应用程序的位置判断第一应用程序和第二应用程序是否处于相邻的网络,根据第一应用程序和第三应用程序的位置判断第一应用程序和第三应用程序是否处于相邻的网络。Step S601, if the first application sends data to the second application and the third application, determining whether the first application and the second application are adjacent according to the location of the first application and the second application in the network. Within the network, it is determined whether the first application and the third application are in an adjacent network according to the location of the first application and the third application in the network. If the first application sends data to the second application and the third application, the data distribution node can detect the locations of the first application, the second application, and the third application, according to the first application and the second application The location determines whether the first application and the second application are in an adjacent network, and determines whether the first application and the third application are in an adjacent network according to the locations of the first application and the third application.
步骤S602,如果第一应用程序、第二应用程序和第三应用程序处于相互相隔的网络内,利用第一数据分发节点发送第一应用程序的数据至第一核心节点。Step S602, if the first application, the second application, and the third application are in mutually separated networks, the data of the first application is sent to the first core node by using the first data distribution node.
第一数据分发节点发送第一应用程序的数据至第一核心节点。如图12所示,第一数据分发节点可以是图12中的边缘节点P1,第二应用程序可以是图中边缘节点P2, 第三应用程序可以是图中边缘节点P3或者边缘节点P4,边缘节点P2和边缘节点P3分别与第二应用程序和第三应用程序相邻。图6中的边缘节点P4也可以与第三应用程序相邻。其中,边缘节点P4和边缘节点P5之间也可以直接进行数据的收发。The first data distribution node transmits the data of the first application to the first core node. As shown in FIG. 12, the first data distribution node may be the edge node P1 in FIG. 12, and the second application may be the edge node P2 in the figure. The third application may be the edge node P3 or the edge node P4 in the figure, and the edge node P2 and the edge node P3 are adjacent to the second application and the third application, respectively. The edge node P4 in Fig. 6 can also be adjacent to the third application. The edge node P4 and the edge node P5 can also directly transmit and receive data.
步骤S603,利用第一核心节点将第一应用程序的数据发送至第二核心节点和第三核心节点。该实施例的第一核心节点可以是图12所示的核心节点C1,第二核心节点可以是图12所示的核心节点C2,第三核心节点可以是图12所示的核心节点C3。核心节点C1将第一应用程序数据分发至核心节点C2和核心节点C3,核心节点C2将第一应用程序数据发送至边缘节点P2,核心节点C3将第一应用程序数据发送至边缘节点P3。每个核心节点分发第一应用程序数据与其他核心节点分发第一应用程序数据无关,各个核心节点的数据分发都是独立的,边缘节点的数据分发与核心节点的数据分发也是独立的。Step S603, the data of the first application is sent to the second core node and the third core node by using the first core node. The first core node of this embodiment may be the core node C1 shown in FIG. 12, the second core node may be the core node C2 shown in FIG. 12, and the third core node may be the core node C3 shown in FIG. The core node C1 distributes the first application data to the core node C2 and the core node C3, the core node C2 transmits the first application data to the edge node P2, and the core node C3 transmits the first application data to the edge node P3. The distribution of the first application data by each core node is independent of the distribution of the first application data by other core nodes, the data distribution of each core node is independent, and the data distribution of the edge nodes is independent of the data distribution of the core nodes.
在第一数据分发节点将第一应用程序数据分发至第一核心节点之后,由第一核心节点继续分发该第一应用程序数据,同时,第一数据分发节点可以继续向第一核心节点发送第一应用程序的其他数据,也就是第一数据分发节点分发数据与核心节点分发数据是相互独立的过程。After the first data distribution node distributes the first application data to the first core node, the first application data is continuously distributed by the first core node, and at the same time, the first data distribution node may continue to send the first core node to the first core node. The other data of an application, that is, the process in which the first data distribution node distributes the data and the core node distributes the data, is independent of each other.
由于每个节点的数据分发过程都是独立的,不影响其他数据分发节点或者核心节点的数据分发效率,从而,在进行数据转发的过程中。数据分发节点可以动态选择分发路径,并且,在进行数据分发过程中各个节点可以并行分发数据,相互不影响分发效率,从而提高了整个分发系统的分发效率及稳定性。Since the data distribution process of each node is independent, it does not affect the data distribution efficiency of other data distribution nodes or core nodes, and thus, in the process of data forwarding. The data distribution node can dynamically select the distribution path, and each node can distribute data in parallel during data distribution without affecting the distribution efficiency, thereby improving the distribution efficiency and stability of the entire distribution system.
步骤S604,第二核心节点将第一应用程序的数据发送至第二数据分发节点,第三核心节点将第一应用程序的数据发送至第三数据分发节点,其中,第一数据分发节点与第一应用程序相邻,第二数据分发节点与第二应用程序相邻,第三数据分发节点与第三应用程序相邻,第一核心节点与第一数据分发节点相邻,第二核心节点与第二数据分发节点相邻,第三核心节点与第三数据分发节点相邻。Step S604, the second core node sends the data of the first application to the second data distribution node, and the third core node sends the data of the first application to the third data distribution node, where the first data distribution node and the first data distribution node An application is adjacent, the second data distribution node is adjacent to the second application, the third data distribution node is adjacent to the third application, the first core node is adjacent to the first data distribution node, and the second core node is The second data distribution node is adjacent, and the third core node is adjacent to the third data distribution node.
第二核心节点可以是图12中核心节点C2,第二数据分发节点可以是图中的边缘节点P2,第三数据分发节点可以是图中的边缘节点P3或者P4。核心节点C2将第一应用程序数据发送至边缘节点P2,核心节点C3将第一应用程序数据发送至边缘节点P3。图12还示出了核心节点C3将第一应用程序数据发送至边缘节点P4,边缘节点P4可以将第一应用程序数据发送至与其相邻的应用程序,同时,边缘节点P4还可以将第一应用程序数据直接转发给边缘节点P5。 The second core node may be the core node C2 in FIG. 12, the second data distribution node may be the edge node P2 in the figure, and the third data distribution node may be the edge node P3 or P4 in the figure. The core node C2 sends the first application data to the edge node P2, and the core node C3 sends the first application data to the edge node P3. Figure 12 also shows that the core node C3 sends the first application data to the edge node P4, and the edge node P4 can send the first application data to the application adjacent thereto, while the edge node P4 can also be the first The application data is forwarded directly to the edge node P5.
图中的边缘节点P1与第一应用程序相邻,边缘节点P2与第二应用程序相邻,边缘节点P3与第三应用程序数据,核心节点C1与边缘节点P1相邻,核心节点C2与边缘节点P2相邻,核心节点C3与边缘节点P3相邻。The edge node P1 in the figure is adjacent to the first application, the edge node P2 is adjacent to the second application, the edge node P3 is adjacent to the third application data, the core node C1 is adjacent to the edge node P1, and the core node C2 and the edge are Node P2 is adjacent, and core node C3 is adjacent to edge node P3.
从图12中可以看出,每个节点在选择下一个分发节点的时候,以第一应用程序和第二应用程序的位置为依据,选择与每个节点最近的节点进行数据分发。在进行路径选择的时候可以考虑当前的网络状况,在每个节点都可以进行路径的选择,从而能够在某个节点不能传输数据的时候选择其他节点进行数据分发,保证了数据分发效率。As can be seen from FIG. 12, each node selects the node closest to each node for data distribution based on the locations of the first application and the second application when selecting the next distribution node. When the path selection is made, the current network condition can be considered, and the path can be selected at each node, so that other nodes can be selected for data distribution when a node cannot transmit data, thereby ensuring data distribution efficiency.
需要说明的是,可以在本发明的一个实施例中使用上述数据分发方法中的一种或多种,将多种分发方法相结合,能够保证数据分发系统的分发稳定性,提高数据分发系统的分发效率。It should be noted that, in one embodiment of the present invention, one or more of the foregoing data distribution methods may be used, and a plurality of distribution methods may be combined to ensure distribution stability of the data distribution system and improve the data distribution system. Distribution efficiency.
本发明实施例还提供了一种数据分发装置。The embodiment of the invention also provides a data distribution device.
本发明实施例的数据分发方法可以通过本发明实施例所提供的数据统计装置来执行,本发明实施例的数据分发装置也可以设置为执行本发明实施例所提供的数据分发方法。The data distribution method of the embodiment of the present invention may be performed by the data statistics apparatus provided by the embodiment of the present invention. The data distribution apparatus of the embodiment of the present invention may also be configured to perform the data distribution method provided by the embodiment of the present invention.
图13是根据本发明第一实施例的数据分发装置的示意图。如图所示,该数据分发装置包括接收单元10、选择单元20和分发单元30。Figure 13 is a schematic diagram of a data distribution apparatus in accordance with a first embodiment of the present invention. As shown, the data distribution apparatus includes a receiving unit 10, a selection unit 20, and a distribution unit 30.
接收单元10设置为接收第一应用程序向第二应用程序的数据分发请求。接收单元10接收第一应用程序向第二应用程序的数据分发请求,数据分发请求可以是向数据分发节点发送的第二应用程序ID,接收单元10通过接收第一应用程序发送的第二应用程序ID接收第一应用程序向第二应用程序的数据分发请求。其中,第二应用程序ID可以根据分发程序和网络的需要进行自定义,可以是表征应用逻辑的ID,也可以使用精确或模糊的ID描述应用程序,这里所说的应用程序ID可以与应用程序的实际IP地址无关,通过这种命名方法可以使得应用程序ID的描述更加灵活、简单。The receiving unit 10 is arranged to receive a data distribution request from the first application to the second application. The receiving unit 10 receives a data distribution request of the first application to the second application, the data distribution request may be a second application ID sent to the data distribution node, and the receiving unit 10 receives the second application sent by the first application. The ID receives a data distribution request from the first application to the second application. The second application ID may be customized according to the needs of the distribution program and the network, may be an ID that represents the application logic, or may describe the application using an accurate or fuzzy ID, where the application ID can be associated with the application. The actual IP address has nothing to do with this naming method to make the description of the application ID more flexible and simple.
选择单元20设置为根据数据分发请求确定第一应用程序和第二应用程序之间的数据分发路径。The selection unit 20 is arranged to determine a data distribution path between the first application and the second application in accordance with the data distribution request.
接收单元10接收到数据分发请求之后,能够确定第二应用程序ID,第二应用程序ID能够标准第二应用程序在网络中的位置。选择单元20能够根据第二应用程序和第一应用程序的位置,计算第一应用程序和第二应用程序之间的数据分发路径。需要 说明的是,这里所说的第一、第二用于区分不同的应用程序,不用于限定应用程序的先后顺序和所处网络的位置信息。After receiving the data distribution request, the receiving unit 10 can determine the second application ID, which can standardize the location of the second application in the network. The selection unit 20 is capable of calculating a data distribution path between the first application and the second application according to the location of the second application and the first application. Need It is noted that the first and second mentioned herein are used to distinguish different applications, and are not used to define the order of the applications and the location information of the network.
可选地,接收单元10在接收到数据分发请求之后,可以根据当前的网络状或者数据分发节点的状态动态的在数据分发系统中选择最佳的传输路径。通过动态的选择第一应用程序和第二应用程序之间的数据分发路径,可以避免网络状态不好或者数据分发节点发生故障时降低分发效率,能够保证可靠、快速的将第一应用程序数据分发至第二应用程序。Optionally, after receiving the data distribution request, the receiving unit 10 may dynamically select an optimal transmission path in the data distribution system according to the current network state or the state of the data distribution node. By dynamically selecting the data distribution path between the first application and the second application, it is possible to avoid the network state is not good or the distribution efficiency is reduced when the data distribution node fails, and the first application data can be reliably and quickly distributed. To the second application.
确定的分发路径可以通过网络中的两个数据分发节点分发第一应用程序的数据,也可以通过网络中的三个以上数据分发节点分发第一应用程序的数据。The determined distribution path may distribute the data of the first application through two data distribution nodes in the network, or may distribute the data of the first application through three or more data distribution nodes in the network.
分发单元30设置为按照数据分发路径分发第一应用程序向第二应用程序分发的数据。The distribution unit 30 is arranged to distribute the data distributed by the first application to the second application in accordance with the data distribution path.
在选择单元20确定数据分发路径之后,按照确定的数据分发路径分发第一应用程序向第二应用程序分发的数据。按照确定的发送路径分发第一应用程序的数据可以是经由相邻网络中两个数据分发节点分发第一应用程序的数据,也可以是经由相邻网络或相隔网络中的三个以上数据分发节点分发第一应用程序的数据。After the selection unit 20 determines the data distribution path, the data distributed by the first application to the second application is distributed in accordance with the determined data distribution path. Distributing the data of the first application according to the determined transmission path may be distributing data of the first application via two data distribution nodes in the adjacent network, or may be three or more data distribution nodes in the adjacent network or in the separated network. Distribute the data of the first application.
图14是根据本发明第二实施例的数据分发装置的示意图。如图所示,该数据分发装置包括接收单元10、选择单元20和分发单元30,其中,选择单元20还包括定位模块201和分发模块202。其中,接收单元10和分发单元30与图13所示的接收单元10和分发单元30功能相同,在此不做赘述。Figure 14 is a schematic diagram of a data distribution apparatus in accordance with a second embodiment of the present invention. As shown, the data distribution apparatus includes a receiving unit 10, a selection unit 20, and a distribution unit 30, wherein the selection unit 20 further includes a positioning module 201 and a distribution module 202. The receiving unit 10 and the distributing unit 30 have the same functions as the receiving unit 10 and the distributing unit 30 shown in FIG. 13 and will not be described herein.
定位模块201设置为根据数据分发请求确定第一应用程序和第二应用程序在网络中的位置。第一应用程序可以将第二应用程序ID发送至数据分发节点,数据分发节点根据第二应用程序ID确定第二应用程序的位置。其中,第一应用程序与数据分发节点相邻,通过确定第一应用程序和第二应用程序的位置确定第一应用程序和第二应用程序处于相邻的网络或者相隔的网络,能够通过该位置进一步确定第一应用程序和第二应用程序的数据分发路径。The location module 201 is arranged to determine the location of the first application and the second application in the network in accordance with the data distribution request. The first application may send the second application ID to the data distribution node, and the data distribution node determines the location of the second application based on the second application ID. The first application is adjacent to the data distribution node, and by determining the location of the first application and the second application, determining that the first application and the second application are in an adjacent network or a separated network, can pass the location. Further determining data distribution paths of the first application and the second application.
分发模块202设置为根据第一应用程序和第二应用程序在网络中的位置确定第一应用程序和第二应用程序之间的数据分发路径。第一应用程序和第二应用程序可以处于同一网络或不同网络,可以处于相邻网络或相隔网络,数据分发节点可以根据第一应用程序和第二应用程序在网络中的位置,确定第一应用程序和第二应用程序之间的数据分发路径。例如:在第一应用程序和第二应用程序处于相邻网络时,经由两个数 据分发节点进行数据分发,这两个数据分发节点可以是两个边缘节点;在第一应用程序和第二应用程序处于相隔的网络时,经由三个或三个以上数据分发节点进行数据分发,三个或三个以上数据分发节点可以包括两个边缘节点和一个核心节点,其中,核心节点用于接收第一边缘节点分发的数据,并将该数据转发至第二边缘节点。The distribution module 202 is configured to determine a data distribution path between the first application and the second application based on the location of the first application and the second application in the network. The first application and the second application may be in the same network or different networks, may be in a neighboring network or in a separated network, and the data distribution node may determine the first application according to the location of the first application and the second application in the network. The data distribution path between the program and the second application. For example: when the first application and the second application are in a neighboring network, via two numbers According to the distribution node for data distribution, the two data distribution nodes may be two edge nodes; when the first application and the second application are in a separated network, data distribution is performed via three or more data distribution nodes, Three or more data distribution nodes may include two edge nodes and one core node, wherein the core node is configured to receive data distributed by the first edge node and forward the data to the second edge node.
图15是根据本发明第三实施例的数据分发装置的示意图。如图所示,该数据分发装置包括接收单元10、分发单元30、定位模块201和分发模块202中的判断子模块2020和第一分发子模块2021。其中,图中的接收单元10、分发单元30和定位模块201与图14所示的接收单元10、分发单元30和定位模块201功能相同,在此不做赘述。Figure 15 is a schematic diagram of a data distribution apparatus in accordance with a third embodiment of the present invention. As shown, the data distribution apparatus includes a receiving sub-module 2020 and a first distribution sub-module 2021 in the receiving unit 10, the distribution unit 30, the positioning module 201, and the distribution module 202. The receiving unit 10, the distributing unit 30, and the positioning module 201 in the figure have the same functions as the receiving unit 10, the distributing unit 30, and the positioning module 201 shown in FIG. 14, and are not described herein.
判断子模块2020设置为根据第一应用程序和第二应用程序在网络中的位置判断第一应用程序和第二应用程序是否处于相邻网络内。接收单元10在接收第一应用程序的分发数据请求的时候已经获取第一应用程序在网络的位置,在获取第二应用程序ID之后,判断子模块2020能够根据应用程序ID确定第一应用程序和第二应用程序在网络中处于相邻网络或者相隔网络。The judging sub-module 2020 is configured to determine whether the first application and the second application are in the adjacent network according to the location of the first application and the second application in the network. The receiving unit 10 has acquired the location of the first application in the network when receiving the distribution data request of the first application, and after obtaining the second application ID, determining that the submodule 2020 can determine the first application and according to the application ID. The second application is on a neighboring network or a separate network in the network.
第一分发子模块2021设置为在第一应用程序和第二应用程序处于相邻网络内时,经由第一数据分发节点向第二数据分发节点分发第一应用程序向第二应用程序发送的数据,其中,第一数据分发节点与第一应用程序在网络中的位置相邻,第二数据分发节点与第二应用程序在网络中的位置相邻。在第一应用程序和第二应用程序处于相邻网络时,第一分发模块2021经由第一数据分发节点、第二数据分发节点向第二应用程序发送第一应用程序数据。The first distribution submodule 2021 is configured to distribute, when the first application and the second application are in the adjacent network, the data sent by the first application to the second application to the second data distribution node via the first data distribution node. Wherein the first data distribution node is adjacent to the location of the first application in the network, and the second data distribution node is adjacent to the location of the second application in the network. When the first application and the second application are in the adjacent network, the first distribution module 2021 transmits the first application data to the second application via the first data distribution node and the second data distribution node.
图16是根据本发明第四实施例的数据分发装置的示意图。如图所示,该数据分发装置包括接收单元10、分发单元30、定位模块201和分发模块202中的判断子模块2021和第一分发子模块2022。其中,图中的接收单元10、分发单元30和定位模块201与图14所示的接收单元10、分发单元30和定位模块201功能相同,在此不做赘述。Figure 16 is a schematic diagram of a data distribution apparatus in accordance with a fourth embodiment of the present invention. As shown, the data distribution apparatus includes a receiving unit 10, a distribution unit 30, a positioning module 201, and a judging sub-module 2021 and a first distribution sub-module 2022 in the distribution module 202. The receiving unit 10, the distributing unit 30, and the positioning module 201 in the figure have the same functions as the receiving unit 10, the distributing unit 30, and the positioning module 201 shown in FIG. 14, and are not described herein.
判断子模块2020设置为根据第一应用程序和第二应用程序在网络中的位置判断第一应用程序和第二应用程序是否处于相邻的网络内。数据分发节点在接收第一应用程序的分发数据请求的时候已经获取第一应用程序在网络的位置,在获取第二应用程序ID之后,判断子模块2020能够根据应用程序ID确定第一应用程序和第二应用程序在网络中处于相邻网络或者相隔网络。The judging sub-module 2020 is configured to determine whether the first application and the second application are in an adjacent network according to the location of the first application and the second application in the network. The data distribution node acquires the location of the first application in the network when receiving the distribution data request of the first application, and after obtaining the second application ID, the determining submodule 2020 can determine the first application according to the application ID. The second application is on a neighboring network or a separate network in the network.
第二分发子模块2022设置为在第一应用程序和第二应用程序处于相隔网络内时,利用第一数据分发节点发送第一应用程序的数据至第一核心节点,利用第一核心节点将第一应用程序的数据发送至第二数据分发节点,其中,第一数据分发节点与第一应 用程序相邻,第二数据分发节点与第二应用程序相邻,第一核心节点用于在第一数据分发节点和第二数据分发节点之间转发由第一应用程序向第二应用程序分发的数据。在确定第一应用程序和第二应用程序处于相隔网络内之后,第二分发子模块2022利用第一数据分发节点发送第一应用程序的数据至第一核心节点,利用第一核心节点将第一应用程序的数据发送至第二数据分发节点。The second distribution submodule 2022 is configured to send the data of the first application to the first core node by using the first data distribution node when the first application and the second application are in the separated network, and use the first core node to An application data is sent to the second data distribution node, wherein the first data distribution node and the first application Adjacent to the program, the second data distribution node is adjacent to the second application, and the first core node is configured to forward the first application to the second application between the first data distribution node and the second data distribution node. The data. After determining that the first application and the second application are in the separated network, the second distribution submodule 2022 sends the data of the first application to the first core node by using the first data distribution node, and the first core node is used to The data of the application is sent to the second data distribution node.
第一数据分发节点可以是图8中边缘节点P1,第一数据分发节点探测周围的数据分发节点,可以探测到第一核心节点C1和第二数据分发节点P2,其中,第二数据分发节点P2为数据分发的目标节点。第一数据分发节点P1将需要分发的数据分发至第一核心节点C1。The first data distribution node may be the edge node P1 in FIG. 8, and the first data distribution node detects the surrounding data distribution node, and may detect the first core node C1 and the second data distribution node P2, wherein the second data distribution node P2 The target node for data distribution. The first data distribution node P1 distributes the data to be distributed to the first core node C1.
第一核心节点探测到第二数据分发节点与第二应用程序相邻,将需要分发的数据转发至第二数据分发节点,通过第二数据分发节点分发数据至第二应用程序。本实施例中的第一数据分发节点可以是图8所示实施例中的边缘节点P1,第二数据分发节点可以是图8所示实施例中的边缘节点P2,第一核心节点可以是图8所示实施例中的核心节点C1。The first core node detects that the second data distribution node is adjacent to the second application, forwards the data to be distributed to the second data distribution node, and distributes the data to the second application through the second data distribution node. The first data distribution node in this embodiment may be the edge node P1 in the embodiment shown in FIG. 8, and the second data distribution node may be the edge node P2 in the embodiment shown in FIG. 8, and the first core node may be a figure. The core node C1 in the embodiment shown in FIG.
图17是根据本发明第五实施例的数据分发装置的示意图。如图所示,该数据分发装置包括接收单元10、分发单元30、定位模块201和分发模块202中的判断子模块2020和第三分发子模块2023。其中,图中的接收单元10、分发单元30和定位模块201与图14所示的接收单元10、分发单元30和定位模块201功能相同,在此不做赘述。Figure 17 is a diagram showing a data distribution apparatus according to a fifth embodiment of the present invention. As shown, the data distribution apparatus includes a receiving unit 10, a distribution unit 30, a positioning module 201, and a determination sub-module 2020 and a third distribution sub-module 2023 in the distribution module 202. The receiving unit 10, the distributing unit 30, and the positioning module 201 in the figure have the same functions as the receiving unit 10, the distributing unit 30, and the positioning module 201 shown in FIG. 14, and are not described herein.
判断子模块2020设置为根据第一应用程序和第二应用程序在网络中的位置判断第一应用程序和第二应用程序是否处于相邻的网络内。数据分发节点在接收第一应用程序的分发数据请求的时候已经获取第一应用程序在网络的位置,在获取第二应用程序ID之后,判断子模块2020能够根据应用程序ID确定第一应用程序和第二应用程序在网络中处于相邻网络或者相隔网络。The judging sub-module 2020 is configured to determine whether the first application and the second application are in an adjacent network according to the location of the first application and the second application in the network. The data distribution node acquires the location of the first application in the network when receiving the distribution data request of the first application, and after obtaining the second application ID, the determining submodule 2020 can determine the first application according to the application ID. The second application is on a neighboring network or a separate network in the network.
第三分发子模块2023设置为在第一应用程序和第二应用程序在网络中的位置处于相隔的网络内时,利用第一数据分发节点发送第一应用程序的数据至第一核心节点,利用第一核心节点将第一应用程序的数据发送至第二核心节点,利用第二核心节点将第一应用程序的数据发送至第二数据分发节点,其中,第一数据分发节点与第一应用程序相邻,第二数据分发节点与第二应用程序相邻,第一核心节点与第一数据分发节点相邻,第二核心节点与第二数据分发节点相邻。The third distribution submodule 2023 is configured to use the first data distribution node to send the data of the first application to the first core node when the location of the first application and the second application in the network are in a separated network, and utilize The first core node sends the data of the first application to the second core node, and sends the data of the first application to the second data distribution node by using the second core node, where the first data distribution node and the first application Adjacent, the second data distribution node is adjacent to the second application, the first core node is adjacent to the first data distribution node, and the second core node is adjacent to the second data distribution node.
如果第一应用程序和第二应用程序在网络中的位置处于相隔的网络内,利用第一数据分发节点、第二数据分发节点和两个核心节点分发第一应用程序向第二应用程序 分发的数据。在进行数据分发之前,第一数据分发节点和第二数据分发节点可以先将各自相邻的应用程序ID发送至相邻的核心节点,例如,第一数据分发节点将第一应用程序ID发送至与第一数据分发节点相邻的第一核心节点,第二数据分发节点将第二应用程序ID发送至与第二数据分发节点相邻的第二核心节点。第一核心节点可以将第一应用程序ID同步至网络中的其他核心节点,同理,第二核心节点也可以将第二应用程序ID同步至网络中的其他核心节点。Distributing the first application to the second application using the first data distribution node, the second data distribution node, and the two core nodes if the locations of the first application and the second application in the network are in separate networks Distributed data. Before the data distribution is performed, the first data distribution node and the second data distribution node may first send the respective adjacent application IDs to the adjacent core nodes, for example, the first data distribution node sends the first application ID to A first core node adjacent to the first data distribution node, the second data distribution node transmitting the second application ID to a second core node adjacent to the second data distribution node. The first core node can synchronize the first application ID to other core nodes in the network. Similarly, the second core node can also synchronize the second application ID to other core nodes in the network.
第一数据分发节点接收第一应用程序向第二应用程序分发数据的分发请求,第一数据分发节点将需要分发的数据发送至第一核心节点。如图10所示,第一数据分发节点可以是图10中的边缘节点P1,第一核心节点可以是图10中的核心节点C1。边缘节点P1探测到核心节点C1,核心节点C1获取到第二应用程序ID,从而判断出下一步的发送节点为核心节点C2,图中的核心节点C2可以是本实施例中的第二核心节点,第二核心节点与第二数据分发节点相邻。The first data distribution node receives a distribution request for the first application to distribute data to the second application, and the first data distribution node transmits the data to be distributed to the first core node. As shown in FIG. 10, the first data distribution node may be the edge node P1 in FIG. 10, and the first core node may be the core node C1 in FIG. The edge node P1 detects the core node C1, and the core node C1 obtains the second application ID, so that the next sending node is the core node C2, and the core node C2 in the figure may be the second core node in this embodiment. The second core node is adjacent to the second data distribution node.
在第一核心节点探测到下一步的发送目标为第二核心节点之后,将第一应用程序的数据发送至第二核心节点。如图10所示,核心节点C1接收到边缘节点P1发送的第一应用程序的数据之后,将第一应用程序数据发送至核心节点C2。核心节点C2将数据发送至边缘节点P2,边缘节点P2是本实施例中的第二数据分发节点,边缘节点P2与第二应用程序相邻。After the first core node detects that the next transmission target is the second core node, the data of the first application is sent to the second core node. As shown in FIG. 10, after receiving the data of the first application sent by the edge node P1, the core node C1 transmits the first application data to the core node C2. The core node C2 sends data to the edge node P2, which is the second data distribution node in this embodiment, and the edge node P2 is adjacent to the second application.
图18是根据本发明第六实施例的数据分发装置的示意图。如图所示,该数据分发装置包括接收单元10、分发单元30、定位模块201和分发模块202中的判断子模块2020和第一分发子模块2024。其中,图中的接收单元10、分发单元30和定位模块201与图14所示的接收单元10、分发单元30和定位模块201功能相同,在此不做赘述。Figure 18 is a schematic diagram of a data distribution apparatus in accordance with a sixth embodiment of the present invention. As shown, the data distribution apparatus includes a receiving sub-module 2020 and a first distribution sub-module 2024 in the receiving unit 10, the distribution unit 30, the positioning module 201, and the distribution module 202. The receiving unit 10, the distributing unit 30, and the positioning module 201 in the figure have the same functions as the receiving unit 10, the distributing unit 30, and the positioning module 201 shown in FIG. 14, and are not described herein.
判断子模块2020设置为在第一应用程序向第二应用程序和第三应用程序发送数据时,根据第一应用程序和第二应用程序在网络中的位置判断第一应用程序和第二应用程序是否处于相邻的网络内,根据第一应用程序和第三应用程序在网络中的位置判断第一应用程序和第三应用程序是否处于相邻的网络内。The determining sub-module 2020 is configured to determine the first application and the second application according to the location of the first application and the second application in the network when the first application sends data to the second application and the third application Whether it is in an adjacent network, determining whether the first application and the third application are in an adjacent network according to the location of the first application and the third application in the network.
如果第一应用程序向第二应用程序和第三应用程序发送数据,数据分发节点能够探测第一应用程序、第二应用程序和第三应用程序的位置,根据第一应用程序和第二应用程序的位置判断第一应用程序和第二应用程序是否处于相邻的网络,根据第一应用程序和第三应用程序的位置判断第一应用程序和第三应用程序是否处于相邻的网络。 If the first application sends data to the second application and the third application, the data distribution node can detect the locations of the first application, the second application, and the third application, according to the first application and the second application The location determines whether the first application and the second application are in an adjacent network, and determines whether the first application and the third application are in an adjacent network according to the locations of the first application and the third application.
第四分发子模块2024设置为在第一应用程序、第二应用程序和第三应用程序处于相互相隔的网络内时,利用第一数据分发节点发送第一应用程序的数据至第一核心节点,第一核心节点将第一应用程序的数据发送至第二核心节点和第三核心节点,第二核心节点将第一应用程序的数据发送至第二数据分发节点,第三核心节点将第一应用程序的数据发送至第三数据分发节点,其中,第一数据分发节点与第一应用程序相邻,第二数据分发节点与第二应用程序相邻,第三数据分发节点与第三应用程序相邻,第一核心节点与第一数据分发节点相邻,第二核心节点与第二数据分发节点相邻,第三核心节点与第三数据分发节点相邻。The fourth distribution sub-module 2024 is configured to use the first data distribution node to send the data of the first application to the first core node when the first application, the second application, and the third application are in the mutually separated network, The first core node sends the data of the first application to the second core node and the third core node, the second core node sends the data of the first application to the second data distribution node, and the third core node sends the first application The data of the program is sent to the third data distribution node, wherein the first data distribution node is adjacent to the first application, the second data distribution node is adjacent to the second application, and the third data distribution node is associated with the third application Adjacent, the first core node is adjacent to the first data distribution node, the second core node is adjacent to the second data distribution node, and the third core node is adjacent to the third data distribution node.
第一数据分发节点发送第一应用程序的数据至第一核心节点。如图12所示,第一数据分发节点可以是图12中的边缘节点P1,第二应用程序可以是图中边缘节点P2,第三应用程序可以是图中边缘节点P3或者边缘节点P4,边缘节点P2和边缘节点P3分别与第二应用程序和第三应用程序相邻。图6中的边缘节点P4也可以与第三应用程序相邻。其中,边缘节点P4和边缘节点P5之间也可以直接进行数据的收发。The first data distribution node transmits the data of the first application to the first core node. As shown in FIG. 12, the first data distribution node may be the edge node P1 in FIG. 12, the second application may be the edge node P2 in the figure, and the third application may be the edge node P3 or the edge node P4 in the figure, and the edge The node P2 and the edge node P3 are adjacent to the second application and the third application, respectively. The edge node P4 in Fig. 6 can also be adjacent to the third application. The edge node P4 and the edge node P5 can also directly transmit and receive data.
该实施例的第一核心节点可以是图12所示的核心节点C1,第二核心节点可以是图12所示的核心节点C2,第三核心节点可以是图12所示的核心节点C3。核心节点C1将第一应用程序数据分发至核心节点C2和核心节点C3,核心节点C2将第一应用程序数据发送至边缘节点P2,核心节点C3将第一应用程序数据发送至边缘节点P3。每个核心节点分发第一应用程序数据与其他核心节点分发第一应用程序数据无关,各个核心节点的数据分发都是独立的,边缘节点的数据分发与核心节点的数据分发也是独立的。The first core node of this embodiment may be the core node C1 shown in FIG. 12, the second core node may be the core node C2 shown in FIG. 12, and the third core node may be the core node C3 shown in FIG. The core node C1 distributes the first application data to the core node C2 and the core node C3, the core node C2 transmits the first application data to the edge node P2, and the core node C3 transmits the first application data to the edge node P3. The distribution of the first application data by each core node is independent of the distribution of the first application data by other core nodes, the data distribution of each core node is independent, and the data distribution of the edge nodes is independent of the data distribution of the core nodes.
第二核心节点可以是图12中核心节点C2,第二数据分发节点可以是图中的边缘节点P2,第三数据分发节点可以是图中的边缘节点P3或者P4。核心节点C2将第一应用程序数据发送至边缘节点P2,核心节点C3将第一应用程序数据发送至边缘节点P3。图12还示出了核心节点C3将第一应用程序数据发送至边缘节点P4,边缘节点P4可以将第一应用程序数据发送至与其相邻的应用程序,同时,边缘节点P4还可以将第一应用程序数据直接转发给边缘节点P5。The second core node may be the core node C2 in FIG. 12, the second data distribution node may be the edge node P2 in the figure, and the third data distribution node may be the edge node P3 or P4 in the figure. The core node C2 sends the first application data to the edge node P2, and the core node C3 sends the first application data to the edge node P3. Figure 12 also shows that the core node C3 sends the first application data to the edge node P4, and the edge node P4 can send the first application data to the application adjacent thereto, while the edge node P4 can also be the first The application data is forwarded directly to the edge node P5.
图中的边缘节点P1与第一应用程序相邻,边缘节点P2与第二应用程序相邻,边缘节点P3与第三应用程序数据,核心节点C1与边缘节点P1相邻,核心节点C2与边缘节点P2相邻,核心节点C3与边缘节点P3相邻。The edge node P1 in the figure is adjacent to the first application, the edge node P2 is adjacent to the second application, the edge node P3 is adjacent to the third application data, the core node C1 is adjacent to the edge node P1, and the core node C2 and the edge are Node P2 is adjacent, and core node C3 is adjacent to edge node P3.
本发明实施例还提供了一种计算机存储介质。该计算机存储介质可存储有程序,该程序用于执行上述的数据分发方法中的部分或全部步骤。 Embodiments of the present invention also provide a computer storage medium. The computer storage medium may store a program for performing some or all of the steps of the data distribution method described above.
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本发明实施例所必须的。It should be noted that, for the foregoing method embodiments, for the sake of simple description, they are all expressed as a series of action combinations, but those skilled in the art should know that the embodiments of the present invention are not subject to the described action sequence. Limitations, as certain steps may be performed in other orders or concurrently in accordance with embodiments of the present invention. In the following, those skilled in the art should also understand that the embodiments described in the specification are optional embodiments, and the actions and modules involved are not necessarily required by the embodiments of the present invention.
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。In the above embodiments, the descriptions of the various embodiments are different, and the details that are not detailed in a certain embodiment can be referred to the related descriptions of other embodiments.
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。In the several embodiments provided herein, it should be understood that the disclosed apparatus may be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the above units is only a logical function division. In actual implementation, there may be another division manner. For example, multiple units or components may be combined or integrated. Go to another system, or some features can be ignored or not executed. In addition, the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be electrical or otherwise.
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。The units described above as separate components may or may not be physically separated. The components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对相关技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例上述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。The above-described integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the embodiments of the present invention may be embodied in the form of a software product in the form of a software product in essence or in a part contributing to the related art, and the computer software product is stored in a storage medium. A number of instructions are included to cause a computer device (which may be a personal computer, server or network device, etc.) to perform all or part of the steps of the above-described methods of various embodiments of the present invention. The foregoing storage medium includes: a U disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a removable hard disk, a magnetic disk, or an optical disk, and the like. .
以上上述仅为本发明的可选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。 The above is only an alternative 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 (12)

  1. 一种数据分发方法,包括:A data distribution method comprising:
    数据分发节点接收第一应用程序向第二应用程序的数据分发请求;The data distribution node receives a data distribution request of the first application to the second application;
    所述数据分发节点根据所述数据分发请求确定所述第一应用程序和所述第二应用程序之间的数据分发路径;以及Determining, by the data distribution node, a data distribution path between the first application and the second application according to the data distribution request;
    按照所述数据分发路径分发所述第一应用程序向所述第二应用程序分发的数据。Distributing data distributed by the first application to the second application according to the data distribution path.
  2. 根据权利要求1所述的数据分发方法,其中,所述数据分发节点根据所述数据分发请求确定所述第一应用程序和所述第二应用程序之间的数据分发路径包括:The data distribution method according to claim 1, wherein the data distribution node determines, according to the data distribution request, that the data distribution path between the first application and the second application comprises:
    根据所述数据分发请求确定所述第一应用程序和所述第二应用程序在网络中的位置;以及Determining a location of the first application and the second application in a network according to the data distribution request;
    根据所述第一应用程序和所述第二应用程序在网络中的位置确定所述第一应用程序和所述第二应用程序之间的数据分发路径。Determining a data distribution path between the first application and the second application according to a location of the first application and the second application in a network.
  3. 根据权利要求2所述的数据分发方法,其中,根据所述第一应用程序和所述第二应用程序在网络中的位置确定所述第一应用程序和所述第二应用程序之间的数据分发路径包括:The data distribution method according to claim 2, wherein data between said first application and said second application is determined according to a position of said first application and said second application in a network The distribution path includes:
    根据所述第一应用程序和所述第二应用程序在网络中的位置判断所述第一应用程序和所述第二应用程序是否处于相邻网络内;Determining, according to the location of the first application and the second application in the network, whether the first application and the second application are in a neighboring network;
    如果所述第一应用程序和所述第二应用程序处于相邻网络内,经由第一数据分发节点向第二数据分发节点分发所述第一应用程序向所述第二应用程序发送的数据,其中,所述第一数据分发节点与所述第一应用程序在网络中的位置相邻,所述第二数据分发节点与所述第二应用程序在网络中的位置相邻。If the first application and the second application are in a neighboring network, distributing data sent by the first application to the second application to the second data distribution node via the first data distribution node, The first data distribution node is adjacent to a location of the first application in the network, and the second data distribution node is adjacent to a location of the second application in the network.
  4. 根据权利要求2所述的数据分发方法,其中,根据所述第一应用程序和所述第二应用程序在网络中的位置确定所述第一应用程序和所述第二应用程序之间的数据分发路径包括:The data distribution method according to claim 2, wherein data between said first application and said second application is determined according to a position of said first application and said second application in a network The distribution path includes:
    根据所述第一应用程序和所述第二应用程序在网络中的位置判断所述第一应用程序和所述第二应用程序是否处于相邻的网络内; Determining, according to the location of the first application and the second application in the network, whether the first application and the second application are in an adjacent network;
    如果所述第一应用程序和所述第二应用程序处于相隔网络内,利用第一数据分发节点发送所述第一应用程序的数据至第一核心节点;If the first application and the second application are in a separate network, the data of the first application is sent to the first core node by using the first data distribution node;
    利用所述第一核心节点将所述第一应用程序的数据发送至第二数据分发节点,Transmitting, by the first core node, data of the first application to a second data distribution node,
    其中,所述第一数据分发节点与所述第一应用程序相邻,所述第二数据分发节点与所述第二应用程序相邻,所述第一核心节点用于在所述第一数据分发节点和所述第二数据分发节点之间转发由所述第一应用程序向所述第二应用程序分发的数据。The first data distribution node is adjacent to the first application, the second data distribution node is adjacent to the second application, and the first core node is used to be in the first data. Data distributed by the first application to the second application is forwarded between the distribution node and the second data distribution node.
  5. 根据权利要求2所述的数据分发方法,其中,根据所述第一应用程序和所述第二应用程序在网络中的位置确定所述第一应用程序和所述第二应用程序之间的数据分发路径包括:The data distribution method according to claim 2, wherein data between said first application and said second application is determined according to a position of said first application and said second application in a network The distribution path includes:
    根据所述第一应用程序和所述第二应用程序在网络中的位置判断所述第一应用程序和所述第二应用程序是否处于相邻的网络内;Determining, according to the location of the first application and the second application in the network, whether the first application and the second application are in an adjacent network;
    如果所述第一应用程序和所述第二应用程序在网络中的位置处于相隔的网络内,利用第一数据分发节点发送所述第一应用程序的数据至第一核心节点;If the location of the first application and the second application in the network are in a separated network, using the first data distribution node to send the data of the first application to the first core node;
    所述第一核心节点将所述第一应用程序的数据发送至第二核心节点;Transmitting, by the first core node, data of the first application to a second core node;
    所述第二核心节点将所述第一应用程序的数据发送至第二数据分发节点,The second core node sends data of the first application to a second data distribution node,
    其中,所述第一数据分发节点与所述第一应用程序相邻,所述第二数据分发节点与所述第二应用程序相邻,所述第一核心节点与所述第一数据分发节点相邻,所述第二核心节点与所述第二数据分发节点相邻。The first data distribution node is adjacent to the first application, the second data distribution node is adjacent to the second application, the first core node and the first data distribution node Adjacent, the second core node is adjacent to the second data distribution node.
  6. 根据权利要求2所述的数据分发方法,其中,根据所述第一应用程序和所述第二应用程序在网络中的位置确定所述第一应用程序和所述第二应用程序之间的数据分发路径包括:The data distribution method according to claim 2, wherein data between said first application and said second application is determined according to a position of said first application and said second application in a network The distribution path includes:
    如果所述第一应用程序向所述第二应用程序和第三应用程序发送数据,根据所述第一应用程序和所述第二应用程序在网络中的位置判断所述第一应用程序和所述第二应用程序是否处于相邻的网络内,根据所述第一应用程序和所述第三应用程序在网络中的位置判断所述第一应用程序和所述第三应用程序是否处于相邻的网络内; If the first application sends data to the second application and the third application, determining the first application and the location according to the location of the first application and the second application in the network Whether the second application is in the adjacent network, and determining whether the first application and the third application are adjacent according to the location of the first application and the third application in the network Within the network;
    如果所述第一应用程序、所述第二应用程序和所述第三应用程序处于相互相隔的网络内,利用第一数据分发节点发送所述第一应用程序的数据至第一核心节点,Sending, by the first data distribution node, the data of the first application to the first core node, if the first application, the second application, and the third application are in a network separated from each other,
    所述第一核心节点将所述第一应用程序的数据发送至第二核心节点和第三核心节点;The first core node sends data of the first application to a second core node and a third core node;
    所述第二核心节点将所述第一应用程序的数据发送至第二数据分发节点,所述第三核心节点将所述第一应用程序的数据发送至第三数据分发节点,The second core node sends data of the first application to a second data distribution node, and the third core node sends data of the first application to a third data distribution node,
    其中,所述第一数据分发节点与所述第一应用程序相邻,所述第二数据分发节点与所述第二应用程序相邻,所述第三数据分发节点与所述第三应用程序相邻,所述第一核心节点与所述第一数据分发节点相邻,所述第二核心节点与所述第二数据分发节点相邻,所述第三核心节点与所述第三数据分发节点相邻。The first data distribution node is adjacent to the first application, the second data distribution node is adjacent to the second application, and the third data distribution node and the third application are Adjacent, the first core node is adjacent to the first data distribution node, the second core node is adjacent to the second data distribution node, and the third core node is associated with the third data distribution The nodes are adjacent.
  7. 一种数据分发装置,包括:A data distribution device comprising:
    接收单元,设置为接收第一应用程序向第二应用程序的数据分发请求;a receiving unit, configured to receive a data distribution request of the first application to the second application;
    选择单元,设置为根据所述数据分发请求确定所述第一应用程序和所述第二应用程序之间的数据分发路径;以及a selection unit configured to determine a data distribution path between the first application and the second application according to the data distribution request;
    分发单元,设置为按照所述数据分发路径分发所述第一应用程序向所述第二应用程序分发的数据。a distribution unit configured to distribute data distributed by the first application to the second application in accordance with the data distribution path.
  8. 根据权利要求7所述的数据分发装置,其中,所述选择单元包括:The data distribution device according to claim 7, wherein said selection unit comprises:
    定位模块,设置为根据所述数据分发请求确定所述第一应用程序和所述第二应用程序在网络中的位置;以及a positioning module configured to determine a location of the first application and the second application in a network according to the data distribution request;
    分发模块,设置为根据所述第一应用程序和所述第二应用程序在网络中的位置确定所述第一应用程序和所述第二应用程序之间的数据分发路径。a distribution module configured to determine a data distribution path between the first application and the second application according to a location of the first application and the second application in a network.
  9. 根据权利要求8所述的数据分发装置,其中,所述分发模块包括:The data distribution device of claim 8, wherein the distribution module comprises:
    判断子模块,设置为根据所述第一应用程序和所述第二应用程序在网络中的位置判断所述第一应用程序和所述第二应用程序是否处于相邻网络内;a determining submodule, configured to determine, according to the location of the first application and the second application in the network, whether the first application and the second application are in a neighboring network;
    第一分发子模块,设置为在所述第一应用程序和所述第二应用程序处于相邻网络内时,经由第一数据分发节点向第二数据分发节点分发所述第一应用程序向所述第二应用程序发送的数据,其中,所述第一数据分发节点与所述第一 应用程序在网络中的位置相邻,所述第二数据分发节点与所述第二应用程序在网络中的位置相邻。a first distribution submodule configured to distribute the first application to the second data distribution node via the first data distribution node when the first application and the second application are in a neighboring network Data sent by the second application, wherein the first data distribution node and the first The locations of the applications in the network are adjacent, the second data distribution node being adjacent to the location of the second application in the network.
  10. 根据权利要求8所述的数据分发装置,其中,所述分发模块包括:The data distribution device of claim 8, wherein the distribution module comprises:
    判断子模块,设置为根据所述第一应用程序和所述第二应用程序在网络中的位置判断所述第一应用程序和所述第二应用程序是否处于相邻的网络内;a determining submodule, configured to determine, according to the location of the first application and the second application in the network, whether the first application and the second application are in an adjacent network;
    第二分发子模块,设置为在所述第一应用程序和所述第二应用程序处于相隔网络内时,利用第一数据分发节点发送所述第一应用程序的数据至第一核心节点,a second distribution submodule, configured to: when the first application and the second application are in a separated network, send data of the first application to a first core node by using a first data distribution node,
    利用所述第一核心节点将所述第一应用程序的数据发送至第二数据分发节点,Transmitting, by the first core node, data of the first application to a second data distribution node,
    其中,所述第一数据分发节点与所述第一应用程序相邻,所述第二数据分发节点与所述第二应用程序相邻,所述第一核心节点用于在所述第一数据分发节点和所述第二数据分发节点之间转发由所述第一应用程序向所述第二应用程序分发的数据。The first data distribution node is adjacent to the first application, the second data distribution node is adjacent to the second application, and the first core node is used to be in the first data. Data distributed by the first application to the second application is forwarded between the distribution node and the second data distribution node.
  11. 根据权利要求8所述的数据分发装置,其中,所述分发模块包括:The data distribution device of claim 8, wherein the distribution module comprises:
    判断子模块,设置为根据所述第一应用程序和所述第二应用程序在网络中的位置判断所述第一应用程序和所述第二应用程序是否处于相邻的网络内;a determining submodule, configured to determine, according to the location of the first application and the second application in the network, whether the first application and the second application are in an adjacent network;
    第三分发子模块,设置为在所述第一应用程序和所述第二应用程序在网络中的位置处于相隔的网络内时,利用第一数据分发节点发送所述第一应用程序的数据至第一核心节点,a third distribution submodule, configured to: when the first application and the second application are located in a network in a network, use the first data distribution node to send the data of the first application to The first core node,
    利用所述第一核心节点将所述第一应用程序的数据发送至第二核心节点,Transmitting, by the first core node, data of the first application to a second core node,
    利用所述第二核心节点将所述第一应用程序的数据发送至第二数据分发节点,Transmitting, by the second core node, data of the first application to a second data distribution node,
    其中,所述第一数据分发节点与所述第一应用程序相邻,所述第二数据分发节点与所述第二应用程序相邻,所述第一核心节点与所述第一数据分发节点相邻,所述第二核心节点与所述第二数据分发节点相邻。The first data distribution node is adjacent to the first application, the second data distribution node is adjacent to the second application, the first core node and the first data distribution node Adjacent, the second core node is adjacent to the second data distribution node.
  12. 根据权利要求8所述的数据分发装置,其中,所述分发模块包括:The data distribution device of claim 8, wherein the distribution module comprises:
    判断子模块,设置为在所述第一应用程序向所述第二应用程序和第三应用程序发送数据时,根据所述第一应用程序和所述第二应用程序在网络中的位置 判断所述第一应用程序和所述第二应用程序是否处于相邻的网络内,根据所述第一应用程序和所述第三应用程序在网络中的位置判断所述第一应用程序和所述第三应用程序是否处于相邻的网络内;a judging sub-module, configured to be located in the network according to the first application and the second application when the first application sends data to the second application and the third application Determining whether the first application and the second application are in an adjacent network, and determining the first application and the location according to the location of the first application and the third application in a network Whether the third application is in an adjacent network;
    第四分发子模块,设置为在所述第一应用程序、所述第二应用程序和所述第三应用程序处于相互相隔的网络内时,利用第一数据分发节点发送所述第一应用程序的数据至第一核心节点,a fourth distribution submodule, configured to send the first application by using a first data distribution node when the first application, the second application, and the third application are in a network separated from each other Data to the first core node,
    所述第一核心节点将所述第一应用程序的数据发送至第二核心节点和第三核心节点,The first core node sends data of the first application to a second core node and a third core node,
    所述第二核心节点将所述第一应用程序的数据发送至第二数据分发节点,所述第三核心节点将所述第一应用程序的数据发送至第三数据分发节点,The second core node sends data of the first application to a second data distribution node, and the third core node sends data of the first application to a third data distribution node,
    其中,所述第一数据分发节点与所述第一应用程序相邻,所述第二数据分发节点与所述第二应用程序相邻,所述第三数据分发节点与所述第三应用程序相邻,所述第一核心节点与所述第一数据分发节点相邻,所述第二核心节点与所述第二数据分发节点相邻,所述第三核心节点与所述第三数据分发节点相邻。 The first data distribution node is adjacent to the first application, the second data distribution node is adjacent to the second application, and the third data distribution node and the third application are Adjacent, the first core node is adjacent to the first data distribution node, the second core node is adjacent to the second data distribution node, and the third core node is associated with the third data distribution The nodes are adjacent.
PCT/CN2014/089385 2013-10-24 2014-10-24 Data distribution method and apparatus WO2015058705A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310508307.8 2013-10-24
CN201310508307.8A CN103546559B (en) 2013-10-24 2013-10-24 Data distributing method and device

Publications (1)

Publication Number Publication Date
WO2015058705A1 true WO2015058705A1 (en) 2015-04-30

Family

ID=49969598

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/089385 WO2015058705A1 (en) 2013-10-24 2014-10-24 Data distribution method and apparatus

Country Status (2)

Country Link
CN (1) CN103546559B (en)
WO (1) WO2015058705A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020042150A1 (en) * 2018-08-31 2020-03-05 重庆小雨点小额贷款有限公司 Blockchain system, information sharing method and related device

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103546559B (en) * 2013-10-24 2018-02-02 网宿科技股份有限公司 Data distributing method and device
CN106790197A (en) * 2016-12-30 2017-05-31 北京奇虎科技有限公司 A kind of cross-domain transmission method of flow data, device and system
CN106713138A (en) * 2016-12-30 2017-05-24 北京奇虎科技有限公司 Cross-domain transmission method and apparatus of streaming data
CN109981461B (en) * 2017-12-27 2020-10-09 华为技术有限公司 Data transmission method, device and system
CN108366098B (en) * 2018-01-19 2021-02-02 奇安信科技集团股份有限公司 Data interaction method and device for network nodes
CN109919704A (en) * 2019-01-21 2019-06-21 浙江口碑网络技术有限公司 A kind of distribution method of resource data, apparatus and system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070153782A1 (en) * 2005-12-30 2007-07-05 Gregory Fletcher Reliable, high-throughput, high-performance transport and routing mechanism for arbitrary data flows
CN101627374A (en) * 2007-07-20 2010-01-13 科乐美数码娱乐株式会社 Network system, node device, data distribution method, information recording medium, and program
CN103150304A (en) * 2011-12-06 2013-06-12 郑红云 Cloud database system
CN103218267A (en) * 2013-04-16 2013-07-24 百度在线网络技术(北京)有限公司 Method and device for system process of terminal to distribute data to application program process
CN103546559A (en) * 2013-10-24 2014-01-29 网宿科技股份有限公司 Method and device for distributing data

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006069601A2 (en) * 2004-12-29 2006-07-06 Sap Aktiengesellschaft Optimizing vehicle loading operations
JP4172522B1 (en) * 2007-04-12 2008-10-29 ヤマハ株式会社 Multicast distribution system and multicast distribution method
CN101540775B (en) * 2009-04-30 2012-05-23 华为技术有限公司 Method and device for distributing contents and network system for distributing contents
CN103023768B (en) * 2013-01-11 2015-11-04 中国科学院声学研究所 Edge routing node and its method from multi-source prefetching content

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070153782A1 (en) * 2005-12-30 2007-07-05 Gregory Fletcher Reliable, high-throughput, high-performance transport and routing mechanism for arbitrary data flows
CN101627374A (en) * 2007-07-20 2010-01-13 科乐美数码娱乐株式会社 Network system, node device, data distribution method, information recording medium, and program
CN103150304A (en) * 2011-12-06 2013-06-12 郑红云 Cloud database system
CN103218267A (en) * 2013-04-16 2013-07-24 百度在线网络技术(北京)有限公司 Method and device for system process of terminal to distribute data to application program process
CN103546559A (en) * 2013-10-24 2014-01-29 网宿科技股份有限公司 Method and device for distributing data

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020042150A1 (en) * 2018-08-31 2020-03-05 重庆小雨点小额贷款有限公司 Blockchain system, information sharing method and related device

Also Published As

Publication number Publication date
CN103546559B (en) 2018-02-02
CN103546559A (en) 2014-01-29

Similar Documents

Publication Publication Date Title
US11693716B2 (en) Independent datastore in a network routing environment
WO2015058705A1 (en) Data distribution method and apparatus
CN114128229B (en) Method, system and apparatus for service and topology switching protocol
CN114008991B (en) Apparatus, method, and medium for routing using segment-based metrics
JP6369698B2 (en) Traffic switching method, device, and system
US7859992B2 (en) Router redundancy in data communication networks
CN113812122A (en) Source based routing
KR101604970B1 (en) Finding services in a service-oriented architecture(soa) network
US9172550B2 (en) Management of a multicast system in a software-defined network
KR20090034322A (en) Inter-proximity communication within a rendezvous federation
JP2017518007A (en) Network control method and apparatus
WO2008138255A1 (en) Route process method, route processor and router
CN105162704A (en) Multicast replication method and device in Overlay network
CN104717081A (en) Gateway function realization method and device
US20180278577A1 (en) High availability bridging between layer 2 networks
WO2022253087A1 (en) Data transmission method, node, network manager, and system
US20100135168A1 (en) Method for automatically determining a group of pairs located close to another pair in a communication network and associated server, analysis device and communication device
EP2892196A1 (en) Method, network node and system for implementing point-to-miltipoint multicast
CN106375211B (en) Exchange data processing method and interchanger in VRRP load-balancing scenario
WO2021219049A1 (en) Information submitting method, information processing method, apparatus, and device
CN105763374A (en) Route convergence method and device
CN108234311B (en) Bit index explicit copy information transfer method and device
Mercan et al. Virtual direction multicast: An efficient overlay tree construction algorithm
US9306836B2 (en) Searching for multicast consumers in a network of interconnected nodes
US20240152410A1 (en) Single Node and Multiple Node Datastore Architecture in a Network Routing Environment

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

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

Country of ref document: EP

Kind code of ref document: A1