发明名称 Reducing TCP connection establishment time in an overlay network
摘要 Applications that run on an overlay network-based managed service achieve high performance gains using a set of TCP optimizations. In a first optimization, a typical single TCP connection between a client and an origin server is broken into preferably three (3) separate TCP connections. These connections are: an edge-to-client connection, an edge-to-edge connection, and edge-to-origin connection. A second optimization replicates TCP state along the connection to increase fault tolerance. In this approach, preferably a given TCP connection is maintained on two servers. When a packet is received by one server, called the primary, its state is updated and then passed to a second server, called the backup. Only when the backup sends an acknowledgement back to the primary can it then send a TCP acknowledgement back to the host that originally sent the packet. Another optimization reduces connection establishment latency.
申请公布号 US2015381771(A1) 申请公布日期 2015.12.31
申请号 US201514852644 申请日期 2015.09.14
申请人 Akamai Technologies, Inc. 发明人 Fletcher Gregory;Harmon Kevin;Williams Brandon;Sears William
分类号 H04L29/06;H04L12/66;H04L29/08 主分类号 H04L29/06
代理机构 代理人
主权项 1. An article comprising a non-transitory computer product implemented in an overlay network, the overlay network comprising at least one or more edge regions, and one or more gateway regions, wherein each edge region and each gateway region comprises one or more servers, and wherein a client is coupled to an edge region to communicate with an origin server coupled to a gateway region, and wherein a first hardware processor and associated memory are associated with a server in an edge region, and a second hardware processor and associated memory are associated with a server in a gateway region, the computer product comprising: first program code executed by the first hardware processor as a client attempts to communicate with the origin server (i) to establish a connection and initiate a data transfer between the server in the edge region and the server in the gateway region; (ii) to send the server in the gateway region a SYN over a first TCP connection; (iii) to fake receipt of a dummy SYN/ACK for the first TCP connection following sending of the SYN; (iv) to send one or more data packets to the server in the gateway region before a real SYN/ACK is received; and (v) to receive the real SYN/ACK; and second program code executed by the second hardware processor as the client attempts to communicate with the origin server (i) to establish a second TCP connection, the second TCP connection directed back to the server in the edge region; (ii) to generate the real SYN/ACK; (iii) to send the SYN/ACK back to the server in the edge region; and (iv) to receive the one or more data packets.
地址 Cambridge MA US