Patent ID: 11968115
Assignee: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Field: Digital communication (Electrical engineering)
Classification: CPC H | IPC H

Claim 0:
1. A method of transferring data between a sending computer and a receiving computer across a packet switched communications network, wherein said data originates from a sending protocol and is destined for a receiving protocol, the method comprising:
encapsulating data packets from the sending protocol in an additional packet header by an encapsulation module distinct from said sending protocol before said data packets leave the sending computer;
decapsulating said data packets through a decapsulation module by removing the additional packet header after said data packets arrive at the receiving computer but before the data packets are processed by the receiving protocol, the additional packet header comprising a sequence number used to identify each data packet of the data packets, said decapsulation module maintaining a credit total for the encapsulation module, the credit total corresponding to an amount of data packets that sending computer is queued to send;
packet switches within said communications network forwarding said data packets via a plurality of paths between said first computer and said second computer;
said packet switches determining a path, of the plurality of paths, of each data packet of the data packets using a function of values of fields from said additional packet header, said encapsulation module varying the value of fields within said additional packet header used by said function so as to balance load across said plurality of paths;
said decapsulation module sending acknowledgment packets to notify the encapsulation module of packet reception;
said decapsulation module sending credit control messages, wherein credit is expressed as a number of data packets or bytes requested from the sending computer to said encapsulation module indicating the amount of data packets that the encapsulation module is permitted to send;
said encapsulation module using the acknowledgment packets to derive loss and latency information for each of the plurality of paths to said second computer, said encapsulation module tracking loss and latency information for each path and said encapsulation module using said loss and latency information to detect abnormal behavior that affects a subset of paths; and
said encapsulation module sending a quantity of data packets corresponding to said credit from said credit control messages.