System and method for inter-datacenter communication

US10628236B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10628236-B2
Application numberUS-201715615018-A
CountryUS
Kind codeB2
Filing dateJun 6, 2017
Priority dateJun 6, 2017
Publication dateApr 21, 2020
Grant dateApr 21, 2020

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Methods and systems for data communication in a distributed computing environment include: providing a first network node associated with a first data processing location, the first network node providing provide a network interface for a first distributed computing node at the first data processing location; and forwarding task data flow messages from the first distributed computing node to a second distributed computing node at a second data processing location via a second network node associated with the second data processing location.

First claim

Opening claim text (preview).

What is claimed is: 1. A system for data communication in a distributed computing environment, the system comprising: at least one processor configured to: provide a first network node associated with a first data processing location, the first network node configured to: provide a network interface for a first distributed computing node at the first data processing location; encapsulate data flows received from the first distributed computing into application-layer messages, each application-layer message including a field identifying a destination task execution process for each data flow of the data flows; and forward the application-layer messages to a second network node associated with a second data processing location for forwarding to the destination task execution process at a second distributed computing node at the second data processing location. 2. The system of claim 1 , wherein the at least one processor is configured to: provide a controller configured to obtain task data flow information for a plurality of task execution processes operating at the first distributed compute node and a plurality of task execution processes operating at other distributed compute nodes at the first data processing location in the distributed computing environment; and wherein the application-layer messages received from the first distributed computing node are forwarded to the second network node over one or more data connections selected based on the task data flow information. 3. The system of claim 1 , wherein the first network node is configured to establish at least one persistent connection with the second network node over which the application-layer messages are forwarded. 4. The system of claim 3 , wherein the first network node is configured to aggregate data flows received from a plurality of task execution processes operating at a plurality of distributed distinct computing nodes at the first data processing location for transmission over the at least one persistent connection. 5. The system of claim 1 , wherein the first network node is configured to establish a plurality of connections with the second network node. 6. The system of claim 1 , wherein the first network node is a software-implemented application-layer network node. 7. The system of claim 2 , wherein the first network node is configured to forward the application-layer task data messages over the one or more data connections based on a largest flow group first schedule. 8. The system of claim 2 , wherein the controller is configured to obtain data flow information for a plurality of data flows to be transferred between a plurality of tasks scheduled for execution at a plurality of data processing locations over communication links between network nodes associated with each of the data processing locations. 9. The system of claim 8 wherein the controller is configured to: obtain the plurality of data flows to be transferred between the plurality of tasks scheduled for execution at the plurality of data processing locations; for each communication link between each network node associated with a data processing location, determine a total transfer time to transfer all data flow portions routed through the communication link for each allocation of portions of the plurality of data flows; select, from the communication links, a communication link having a largest total transfer time based on the shortest total transfer time for the communication links; and schedule the portions of the plurality of data flows corresponding to the shortest total transfer time for transfer across the selected communication link. 10. The system of claim 9 , wherein the controller is configured to: until the plurality of data flows has been scheduled for transfer across each communication link, repeat: updating the data flow information and the total transfer time for the communication links based on the portions of the plurality of data flows being transferred across a previously selected communication link as scheduled; selecting, from the communication link, the communication link having the largest total transfer time based on the shortest total transfer time for the communication links; and scheduling the portions of the plurality of data flows corresponding to the shortest total transfer time for transfer across the selected communication link. 11. The system of claim 1 , wherein forwarding the application-layer messages comprises forwarding at least a portion of the application-layer messages from the first distributed computing node to the second network node via a third network node. 12. The system of claim 1 , wherein the at least one processor is configured to: generate a multicast distribution graph including: a first branch between the first network node the second network node and a second branch between the second network node and a third node associated with the second data processing location, wherein the first network node is further configured to forward the application-layer messages to the second network node and to a third network node associated with a third data processing location for forwarding to the destination task execution process at a third distributed computing node at the third data processing location based on the multicast distribution graph, and wherein the second network node associated with the second data processing location is assigned a task execution process having a longest execution time. 13. The system of claim 2 , wherein the controller is configured to monitor performance data regarding one or more communication links between the first network node and the second network node, and forward the application-layer messages from the first distributed computing node to the second network node over one or more data connections selected based on the performance data. 14. A method for data communication in a distributed computing environment, the method comprising: receiving, at a first network node associated with a first data processing location, the first network node providing a network interface for a first distributed computing node at the first data processing location; and encapsulating, at the first network node, data flows received from the first distributed computing into application-layer messages, each application-layer message including a field identifying a destination task execution process for each data flow of the data flows; forwarding, by the first network node, the application-layer messages to a second network node associated with a second data processing location for forwarding to the destination task execution process at a second distributed computing node at the second data processing location. 15. The method of claim 14 , comprising: provide a controller configured to obtain task data flow information for a plurality of task execution processes operating at the first distributed compute node and a plurality of task execution processes operating at other distributed compute nodes at the first data processing location in the distributed computing environment; and wherein the application-layer messages received from the first distributed computing node are forwarded to the second network node over one or more data connections selected based on the task data flow information. 16. The method of claim 14 , wherein the first network node is configured to establish at least one persistent connection with the second network node over which the application-layer messages are forwarded. 17. The method of claim 16 , wherein the first network node is configured

Assignees

Inventors

Classifications

  • using management policies (point-in-time backing up or restoration of persistent data G06F11/1446; file migration policies for HSM systems G06F16/185) · CPC title

  • Multiprogramming arrangements · CPC title

  • G06F9/54Primary

    Interprogram communication · CPC title

  • for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title

  • Message passing systems or structures, e.g. queues · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10628236B2 cover?
Methods and systems for data communication in a distributed computing environment include: providing a first network node associated with a first data processing location, the first network node providing provide a network interface for a first distributed computing node at the first data processing location; and forwarding task data flow messages from the first distributed computing node to a …
Who is the assignee on this patent?
Huawei Tech Canada Co Ltd, The Governing Council Of The Univ Of Toronto Banting Institute, The Governing Council Of The Univeristy Of Toronto Banting Inst
What technology area does this patent fall under?
Primary CPC classification G06F9/54. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 21 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).