IP Library Patent Application 15993575
Patent Application
App. No. 15/993,575

Application-Level Mechanism for Multi-Path Transport

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
15/993,575
Abstract

This disclosure describes an application-level multi-path transport protocol (MPTP) mechanism for establishing a plurality of communication paths between a sender device and a receiver device to transmit and receive data packets. The mechanism at the sender end includes a plurality of send connectors each being a sender endpoint of a communication path, a path table that maintains characteristics of the bi-directional communication paths, a scheduler that determines a suitable send connector over which to transmit each data packet, and a send buffer that buffers the data packets prior to transmission. The mechanism at the receiver end includes a plurality of receive connectors each being a receiver endpoint of a communication path, a path table that maintains characteristics of the bi-directional communication paths, a receive buffer that buffers the data packets received by the receive connectors, and an assembler that reassembles the plurality of data packets in the receive buffer.

Claims (42)

1 . A multi-path transport protocol (MPTP) API for establishing a plurality of bi-directional communication paths between a sender device and a receiver device to transmit and receive a plurality of data packets, comprising:

a send MPTP API for the sender device including:

a plurality of send connectors each being a sender endpoint of a communication path established between the sender device and the receiver device;

a path table configured to maintain characteristics of the plurality of communication paths;

a scheduler configured to determine a suitable send connector to transmit each data packet using one of the plurality of communication paths between the sender device and the receiver device; and

a send buffer configured to buffer the plurality of data packets prior to transmitting each data packet to the selected send connector; and

a receive MPTP API for the receiver device including:

a plurality of receive connectors each being a receiver endpoint of a communication path established between the sender device and the receiver device;

a path table configured to maintain characteristics of the plurality of bi-directional communication paths;

a receive buffer configured to buffer the plurality of data packets received by the receive connectors; and

an assembler configured to reassemble the plurality of data packets in the receive buffer.

2 . The MPTP API as set forth in claim 1 , wherein the path table stores characters of each communication path's throughput, latency, loss rate, and congestion window.

3 . The MPTP API as set forth in claim 1 , wherein the assembler further provides feedback on a communication path to the scheduler.

4 . The MPTP API as set forth in claim 1 , wherein the scheduler is configured to transmit each data packet over a plurality of communication paths each consisting of at least one intermediate node.

5 . The MPTP API as set forth in claim 1 , wherein the scheduler is configured to transmit each data packet over a plurality of communication paths each consisting of zero to a plurality of intermediate nodes.

6 . The MPTP API as set forth in claim 1 , wherein the plurality of send and receive connectors are configured to support establishing communication paths using Transport Control Protocol.

7 . The MPTP API as set forth in claim 1 , wherein the plurality of send and receive connectors are configured to support establishing communication paths using User Datagram Protocol.

8 . A method for establishing a plurality of bi-directional communication paths between a sender device and a receiver device to transmit and receive a plurality of data packets, comprising:

providing a send MPTP API in the sender device having:

a plurality of send connectors each being a sender endpoint of a communication path established between the sender device and the receiver device;

a path table configured to maintain characteristics of the plurality of communication paths;

a scheduler configured to determine a suitable send connector to transmit each data packet using one of the plurality of communication paths between the sender device and the receiver device; and

a send buffer configured to buffer the plurality of data packets prior to transmitting each data packet to the selected send connector; and

providing a receive MPTP API in the receiver device having:

a plurality of receive connectors each being a receiver endpoint of a communication path established between the sender device and the receiver device;

a path table configured to maintain characteristics of the plurality of bi-directional communication paths;

a receive buffer configured to buffer the plurality of data packets received by the receive connectors; and

an assembler configured to reassemble the plurality of data packets in the receive buffer.

9 . The method as set forth in claim 8 , wherein the path table stores characters of each communication path's throughput, latency, loss rate, and congestion window.

10 . The method as set forth in claim 8 , wherein the assembler further provides feedback on a communication path to the scheduler.

11 . The method as set forth in claim 8 , wherein the scheduler transmits each data packet over a plurality of communication paths each consisting of at least one intermediate node.

12 . The method as set forth in claim 8 , wherein the scheduler transmits each data packet over a plurality of communication paths each consisting of zero to a plurality of intermediate nodes.

13 . The method as set forth in claim 8 , wherein the plurality of send and receive connectors establish communication paths using Transport Control Protocol.

14 . The method as set forth in claim 8 , wherein the plurality of send and receive connectors establish communication paths using User Datagram Protocol.

15 . A multi-path transport protocol (MPTP) API for establishing a plurality of bi-directional communication paths between two end points to transmit and receive a plurality of data packets, comprising:

a plurality of connectors each being a network interface for a communication path established between the two end points;

a path table configured to maintain characteristics of the plurality of communication paths;

a scheduler configured to determine a suitable connector to transmit each data packet using one of the plurality of communication paths between the two end points;

a buffer configured to buffer the plurality of data packets prior to transmission or receiving to or from the connectors; and

an assembler configured to reassemble the plurality of data packets received from the connectors and stored in the buffer.

16 . The MPTP API as set forth in claim 15 , wherein the scheduler is configured to transmit each data packet over a plurality of communication paths each consisting of zero to a plurality of intermediate nodes.

17 . The MPTP API as set forth in claim 15 , wherein the plurality of send and receive connectors are configured to support establishing communication paths using Transport Control Protocol/User Datagram Protocol.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 13, 2020
From: SMARTIPLY, INC.
To: WISTRON AIEDGE CORPORATION
Reel/Frame 052103/0737 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2019
From: LI, SHUNGE
To: SMARTIPLY, INC.
Reel/Frame 050898/0551 →