Multi-path network communication

US10659378B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10659378-B2
Application numberUS-201816165041-A
CountryUS
Kind codeB2
Filing dateOct 19, 2018
Priority dateJul 7, 2015
Publication dateMay 19, 2020
Grant dateMay 19, 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.

A method for data communication between a first node and a second node over a number of data paths coupling the first node and the second node includes transmitting messages between the first node and the second node over the number of data paths including transmitting a first subset of the messages over a first data path of the number of data paths, and transmitting a second subset of the messages over a second data path of the number of data paths. The first data path has a first latency and the second data path has a second latency substantially larger than the first latency, and messages of the first subset of the messages are chosen to have first message characteristics and messages of the second subset are chosen to have second message characteristics, different from the first message characteristics.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for transmitting messages between a first node and a second node over a plurality of data paths coupling the first node and the second node, the method comprising: selecting, at the first node and for each particular message, a particular data path of the plurality of data paths based on one or more message characteristics of the particular message, wherein messages having first message characteristics are assigned to a first data path and messages having second message characteristics different from the first message characteristics are assigned to a second data path; transmitting, from the first node and to the second node, messages having the first message characteristics over the first data path; transmitting, from the first node and to the second node, messages having the second message characteristics over the second data path; maintaining, at the first node, an aggregate indication of whether a number of messages received at the second node over the plurality of data paths is sufficient to decode data associated with the messages; and transmitting, from the first node and to the second node, supplemental messages based on the aggregate indication, wherein the aggregate indication is based on a feedback from the second node received at the first node over the plurality of data paths, wherein the supplemental messages include data messages including redundancy data and wherein messages that include original data of the messages are transmitted over the second data path, and wherein the first data path has a first latency and the second data path has a second latency larger than the first latency. 2. The method of claim 1 , wherein messages having the first message characteristics are associated with an initial subset of a data set and messages having the second message characteristics are associated with a subsequent subset of the data set. 3. The method of claim 1 , wherein messages having the first message characteristics include acknowledgement messages and messages having the second message characteristics include data messages. 4. The method of claim 1 , further comprising, for each particular data path of the plurality of data paths, maintaining an indication of successful and unsuccessful delivery of messages over the particular data path and adjusting a congestion window for the particular data path based on the indication. 5. The method of claim 1 , wherein the supplemental messages are transmitted over the first data path. 6. A system for transmitting messages between a plurality of nodes over a plurality of data paths coupling the plurality of nodes, the system comprising: a first node configured to: select, for each particular message, a particular data path of the plurality of data paths based on one or more message characteristics of the particular message, wherein messages having first message characteristics are assigned to a first data path and messages having second message characteristics different from the first message characteristics are assigned to a second data path; transmit, to a second node of the system, messages having the first message characteristics over the first data path; transmit, to the second node, messages having the second message characteristics over the second data path; maintain an aggregate indication of whether a number of messages received at the second node over the plurality of data paths is sufficient to decode data associated with the messages; and transmit, to the second node, supplemental messages based on the aggregate indication, wherein the aggregate indication is based on a feedback from the second node received at the first node over the plurality of data paths, wherein the supplemental messages include data messages including redundancy data and wherein messages that include original data of the messages are transmitted over the second data path, wherein the first data path has a first latency and the second data path has a second latency larger than the first latency. 7. The system of claim 6 , wherein messages having the first message characteristics are associated with an initial subset of a data set and messages having the second message characteristics are associated with a subsequent subset of the data set. 8. The system of claim 6 , wherein messages having the first message characteristics include acknowledgement messages and messages having the second message characteristics include data messages. 9. The system of claim 6 , wherein the first node is further configured to, for each particular data path of the plurality of data paths, maintain an indication of successful and unsuccessful delivery of messages over the particular data path and adjust a congestion window for the particular data path based on the indication. 10. The system of claim 6 , wherein the supplemental messages are transmitted over the first data path. 11. Software stored on a non-transitory computer-readable medium comprising instructions for causing one or more processors to execute a data communication method for transmitting messages between a first node and a second node over a plurality of data paths coupling the first node and the second node, the method comprising: selecting, at the first node and for each particular message, a particular data path of the plurality of data paths based on one or more message characteristics of the particular message, wherein messages having first message characteristics are assigned to a first data path and messages having second message characteristics different from the first message characteristics are assigned to a second data path; transmitting, from the first node and to the second node, messages having the first message characteristics over the first data path; transmitting, from the first node and to the second node, messages having the second message characteristics over the second data path; maintaining, at the first node, an aggregate indication of whether a number of messages received at the second node over the plurality of data paths is sufficient to decode data associated with the messages; and transmitting, from the first node and to the second node, supplemental messages based on the aggregate indication, wherein the aggregate indication is based on a feedback from the second node received at the first node over the plurality of data paths, wherein the supplemental messages include data messages including redundancy data and wherein messages that include original data of the messages are transmitted over the second data path, and wherein the first data path has a first latency and the second data path has a second latency larger than the first latency. 12. The software stored on the non-transitory computer-readable medium of claim 11 , wherein messages having the first message characteristics are associated with an initial subset of a data set and messages having the second message characteristics are associated with a subsequent subset of the data set. 13. The software stored on the non-transitory computer-readable medium of claim 11 , wherein messages having the first message characteristics include acknowledgement messages and messages having the second message characteristics include data messages. 14. The software stored on the non-transitory computer-readable medium of claim 11 , wherein the method further comprises, for each particular data path of the plurality of data paths, maintaining an indication of successful and unsuccessful delivery of messages over the particular data path and adjusting a congestion window for the particular data path based on the indication. 15

Assignees

Inventors

Classifications

  • Physical resource allocation for ACK/NACK (for physical mapping arrangements in ARQ protocols H04L1/1861) · CPC title

  • Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields · CPC title

  • for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection (management of faults, events, alarms or notifications in data switching networks H04L41/06) · CPC title

  • for local area network [LAN], e.g. Ethernet switches · CPC title

  • Distributed coding, e.g. network coding, involving channel coding (coding in both space and time H04L1/0618; cooperative diversity H04B7/022) · 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 US10659378B2 cover?
A method for data communication between a first node and a second node over a number of data paths coupling the first node and the second node includes transmitting messages between the first node and the second node over the number of data paths including transmitting a first subset of the messages over a first data path of the number of data paths, and transmitting a second subset of the mess…
Who is the assignee on this patent?
Strong Force Iot Portfolio 2016 Llc
What technology area does this patent fall under?
Primary CPC classification H04L47/27. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue May 19 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 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).