IP Library Granted Patent US 9,094,230
Granted Patent B1
US 9,094,230 · App. 12/901,121 · Granted Jul 28, 2015

Network transfer protocol

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,094,230
App. No.
12/901,121
Granted
Jul 28, 2015
Kind
B1
Abstract

Systems, methods and computer program products facilitate communication on a network by transmitting a communication on the network from a first node to a second node, the communication including a first segment and a second segment. The first segment consists essentially of a destination port and a data length of the communication, and the second segment includes a payload and at least one of a connection ID, a sequence number, and an opcode. A responsive communication is then received from the second node, the responsive communication acknowledging receipt of the communication transmitted from the first node.

Claims (27)

1. A computer-implemented method comprising:

transmitting, by a first node comprising one or more processors, a packet on a network from the first node to a second node, wherein the packet comprises a data segment and exactly one header, and begins with the header, wherein the header consists of a destination port and a data length of the packet, and wherein the data segment consists of (i) application payload data and (ii) at least one of a connection identifier, a sequence number that specifies a sequential position of the packet in a sequence of packets directed to a destination application, or an opcode.

2. The method of claim 1 , wherein the opcode indicates a packet type associated with the packet, wherein the packet type is selected from the group consisting of a SYNC packet type, an OUT OF ORDER ACK packet type, a NORMAL ACK packet type, a DELAY ACK packet type, and a FIN packet.

3. The method of claim 1 , further comprising receiving a responsive packet from the second node, the responsive packet acknowledging receipt of the packet transmitted from the first node.

4. The method of claim 1 , wherein the header consists of 4 bytes.

5. The method of claim 1 , wherein

the connection identifier indicates which of two or more applications that share the destination port are to receive the application data.

6. The method of claim 1 , wherein the packet consists of the data segment and exactly one header.

7. The method of claim 1 , wherein the data segment consists of (i) the application payload data and (ii) data that indicates the connection identifier, the sequence number, and the opcode, only.

8. The method of claim 1 , wherein the header is a contiguous group of bytes.

9. The method of claim 1 , wherein the data segment is a contiguous group of bytes.

10. A system comprising:

one or more computers; and

a non-transitory computer-readable medium coupled to the one or more computers having instructions stored thereon which, when executed by the one or more computers, cause the one or more computers to perform operations comprising:

transmitting a packet on a network from a first node to a second node, wherein the packet comprises a data segment and exactly one header, and begins with the header, wherein the header consists of a destination port and a data length of the packet, and wherein the data segment consists of (i) application payload data and (ii) at least one of a connection identifier, a sequence number that specifies a sequential position of the packet in a sequence of packets directed to a destination application, or an opcode.

11. The system of claim 10 , wherein the opcode indicates a packet type associated with the packet, wherein the packet type is selected from the group consisting of a SYNC packet type, an OUT OF ORDER ACK packet type, a NORMAL ACK packet type, a DELAY ACK packet type, and a FIN packet.

12. The system of claim 10 , wherein the operations further comprise receiving a responsive packet from the second node, the responsive packet acknowledging receipt of the packet transmitted from the first node.

13. The system of claim 10 , wherein the header consists of 4 bytes.

14. The system of claim 10 , wherein

the connection identifier indicates which of two or more applications that share the destination port are to receive the application data.

15. A non-transitory computer storage medium encoded with a computer program, the program comprising instructions that when executed by one or more computers cause the one or more computers to perform operations comprising:

transmitting a packet on a network from a first node to a second node, wherein the packet comprises a data segment and exactly one header, and begins with the header, wherein the header consists of a destination port and a data length of the packet, and wherein the data segment consists of (i) application payload data and (ii) at least one of a connection identifier, a sequence number that specifies a sequential position of the packet in a sequence of packets directed to a destination application, or an opcode.

16. The non-transitory computer storage medium of claim 15 , wherein the opcode indicates a packet type associated with the packet, wherein the packet type is selected from the group consisting of a SYNC packet type, an OUT OF ORDER ACK packet type, a NORMAL ACK packet type, a DELAY ACK packet type, or a FIN packet.

17. The non-transitory computer storage medium of claim 15 ,

wherein the operations further comprise receiving a responsive packet from the second node, the responsive packet acknowledging receipt of the packet transmitted from the first node.

18. The non-transitory computer storage medium of claim 15 , wherein the header consists of 4 bytes.

19. The non-transitory computer storage medium of claim 15 , wherein the connection identifier indicates which of two or more applications that share the destination port are to receive the application data.

Assignments (1)
CHANGE OF NAME Recorded Oct 2, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044334/0466 →