IP Library Granted Patent US 9,197,675
Granted Patent B2
US 9,197,675 · App. 14/055,721 · Granted Nov 24, 2015

Application wire

View Patent ↗
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 9,197,675
App. No.
14/055,721
Granted
Nov 24, 2015
Kind
B2
Abstract

Transferring data over a network includes identifying an application flow and mapping the application flow to a network bound connection.

Claims (56)

1. A method, comprising:

in response to determining that data packets of an application flow received by an edge node device exceed an available data rate of a first pseudowire:

identifying a first subset of the data packets having a defined priority based on a parameter associated with the application flow;

assigning the first subset of the data packets to a first data stream;

mapping the first data stream to the first pseudowire;

assigning a second subset of the data packets that excludes the first subset of the data packets to a second data stream;

mapping the second data stream to a second pseudowire;

encapsulating a first data packet of the first data stream with a first pseudowire header based on selection of the first pseudowire; and

encapsulating a second data packet of the second data stream with a second pseudowire header based on selection of the second pseudowire.

2. The method of claim 1 , wherein the mapping the first data stream comprises mapping the first data stream to the first pseudowire based on a determination that a defined priority of the first pseudowire has a higher priority than another defined priority of the second pseudowire.

3. The method of claim 1 , further comprising:

examining header information of at least one of the data packets received by the edge node device; and

identifying the application flow based on the header information.

4. The method of claim 3 , further comprising mapping the at least one of the data packets to the application flow based on the header information.

5. The method of claim 1 , wherein at least one of the first pseudowire header or the second pseudowire header comprises at least one of a packet label field, a sequence number field, a service differentiation field, a service guarantee field, or a flow control field.

6. The method of claim 3 , further comprising determining the parameter based on the identifying of the application flow.

7. The method of claim 1 , wherein the encapsulating the first data packet yields a first encapsulated data packet, and the encapsulating the second data packet yields a second encapsulated data packet, and the method further comprises:

transferring the first encapsulated data packet over the first pseudowire via one or more first multi-protocol label switching devices; and

transferring the second encapsulated data packet over the second pseudowire via one or more second multi-protocol label switching devices.

8. A device, comprising:

a memory that stores executable instructions; and

a processor, communicatively coupled to the memory, that executes or facilitates execution of the executable instructions to at least:

in response to a determination that data packets of an application flow received at the device exceed a defined data rate of a first pseudowire,

determine a first subset of the data packets that have a defined priority based on a parameter associated with the application flow;

assign the first subset of the data packets to a first data stream;

assign the first data stream to the first pseudowire;

assign a second subset of the data packets that excludes the first subset of the data packets to a second data stream;

assign the second data stream to a second pseudowire

encapsulate a first data packet of the first data stream with a first pseudowire header corresponding to the first pseudowire to yield a first encapsulated data packet; and

encapsulate a second data packet of the second data stream with a second pseudowire header corresponding to the second pseudowire to yield a second encapsulated data packet.

9. The device of claim 8 , wherein the processor further executes or facilitates the execution of the computer-executable instructions to map the first data stream to the first pseudowire based on a determination that a first priority of the first pseudowire exceeds a second priority of the second pseudowire.

10. The device of claim 8 , wherein the processor further executes or facilitates the execution of the computer-executable instructions to identify the application flow based on header information contained in at least one of the data packets.

11. The device of claim 10 , wherein the processor further executes or facilitates the execution of the computer-executable instructions to map the at least one of the data packets to the application flow based on the header information.

12. The device of claim 8 , wherein at least one of the first pseudowire header or the second pseudowire header comprises at least one of a packet label field, a sequence number field, a service differentiation field, a service guarantee field, or a flow control field.

13. The device of claim 10 , wherein the processor further executes or facilitates the execution of the computer-executable instructions to identify the parameter based on identification of the application flow.

14. The device of claim 8 , wherein the processor further executes or facilitates the execution of the computer-executable instructions to:

send the first encapsulated data packet over the first pseudowire via one or more first multi-protocol label switching devices; and

send the second encapsulated data packet over the second pseudowire via one or more second multi-protocol label switching devices.

15. A computer-readable storage device having stored thereon computer-executable instructions that, in response to execution, cause a device comprising a processor to perform operations, comprising:

determining that data packets of an application flow received at the device exceed an available data rate of a first pseudowire;

in response to the determining,

identifying a first subset of the data packets,

assigning the first subset of the data packets to a first data stream,

mapping the first data stream to the first pseudowire,

assigning a second subset of the data packets excluding the first subset to a second data stream,

mapping the second data packets data stream to a second pseudowire,

encapsulating a first data packet of the first data stream with a first pseudowire header corresponding to the first pseudowire, and

encapsulating a second data packet of the second data stream with a second pseudowire header corresponding to the second pseudowire;

wherein selection of the first subset of the data packets is based on a parameter associated with the application flow.

16. The computer-readable storage device of claim 15 , wherein the mapping the first data stream comprises mapping the first data stream to the first pseudowire based on determining that a first priority associated with the first pseudowire exceeds a second priority associated with the second pseudowire.

17. The computer-readable storage device of claim 15 , wherein the operations further comprise identifying the application flow based on header information contained in at least one of the data packets.

18. The computer-readable storage device of claim 15 , wherein at least one of the first pseudowire header or the second pseudowire header comprises at least one of a packet label field, a sequence number field, a service differentiation field, a service guarantee field, or a flow control field.

19. The computer-readable storage device of claim 17 , wherein the operations further comprise identifying the parameter based on identification of the application flow.

20. The computer-readable storage device of claim 15 , wherein the encapsulating the first data packet yields a first encapsulated data packet, and the encapsulating the second data packet yields a second encapsulated data packet, and the operations further comprise:

sending the first encapsulated data packet over the first pseudowire via one or more first multi-protocol label switching devices; and

sending the second encapsulated data packet over the second pseudowire via one or more second multi-protocol label switching devices.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2020
From: GLOBAL INNOVATION AGGREGATORS, LLC
To: K.MIZRA LLC
Reel/Frame 051579/0773 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 16, 2017
From: BRIXHAM SOLUTIONS LTD.
To: GLOBAL INNOVATION AGGREGATORS LLC.
Reel/Frame 043312/0218 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 16, 2013
From: HAMMERHEAD SYSTEMS, INC.
To: BRIXHAM SOLUTIONS LTD.
Reel/Frame 031419/0791 →