Professional Documents
Culture Documents
This is a simplified model of TCP/IP over Ethernet behaviour of a single TCP connection intended to provide insight into throughput limitations of TCP/IP due to network transit latency. In the model, TCP/IP sends the maximum TCP receive window size worth of application data (filling the maximum possible receive buffer), then waits for a single acknowledgement for the entire max. window size burst. The model also assumes that the instant the acknowledgement is sent, the data is emptied from the receive buffer and the entire window size is again fully available. Analysis assumes no lost data (no retransmits are required, no delay associated with retransmit timer waits & no ACK timer waits); All datagrams sent are maximum size; No allowance for TCP slow start algorithm delay; This results in an upper bound style result. Bear in mind that this simulates the performance of a single application, not an aggregate usage model of multiple simultaneous users on a network. Furthermore, at the upper limit of TCP performance the model assumes that computer hardware and network equipment can sustain the peak TCP allowed data rates.
In Basic TCP, the maximum number of bytes that can be in transit (specified by the TCP receive window size) is limited to 64KB by the 16 bit window size in the TCP header. Often the 64KB value is used to illustrate the maximum theoretical throughput of TCP. This is only partially true. In the early 1990s Van Jacobsen et Al. recognized that higher bandwidths were becoming available and that TCP needed to be updated to support high bandwidth, high latency networks. The work culminated in 1992 with the publication of RFC1323 which specified modifications to TCP to support the high bandwidth, high latency networks. This removed the 64 KB limit, in theory. In practise, most TCP stacks do not support RFC 1323 extensions and still have a maximum TCP window size on the order of 8 KB. An example is Microsoft TCP/IP v.2.0 used in Windows NT. It has a 8760 Byte maximum receive window. Windows 2000, while supporting RFC 1323 extensions, by default has a maximum receive window of 17520 Bytes. To enable the RFC1323 extensions in Windows 2000, registry entries must be manually adjusted.
Gigabit Ethernet
65536
Custom TCP Receive Window (for best perf. Use even multiples of 1460)
Gigabit Ethernet
Round Trip Latency (2T) Maximum User Data Throughput (64KB Window) Maximum User Data Throughput (WinNT) Maximum User Data Throughput (Win2K) Maximum User Data Throughput (Custom)
803,755 Kbps 696,915 Kbps 550,550 Kbps 454,993 Kbps 387,702 Kbps 337,750 Kbps 205,418 Kbps 147,591 Kbps 115,170 Kbps 94,427 Kbps
403,166 Kbps 255,931 Kbps 147,903 Kbps 104,003 Kbps 80,199 Kbps 65,262 Kbps 33,793 Kbps 22,799 Kbps 17,203 Kbps 13,812 Kbps
565,965 Kbps 403,166 Kbps 255,931 Kbps 187,468 Kbps 147,903 Kbps 122,128 Kbps 65,262 Kbps 44,528 Kbps 33,793 Kbps 27,228 Kbps
803,755 Kbps 696,915 Kbps 550,550 Kbps 454,993 Kbps 387,702 Kbps 337,750 Kbps 205,418 Kbps 147,591 Kbps 115,170 Kbps 94,427 Kbps
Data:
Ethernet Frame Size Ethernet Preamble Interframe Gap Total Inter-Frame Time Ethernet Overhead Ethernet Data IP Datagram Overhead TCP Datagram Overhead Maximum User Data per Ethernet Frame Line Rate Ethernet Fast Ethernet Gigabit Ethernet 1518 8 12 1538 38 1500 20 20 1460
Maximum TCP Receive Window Maximum Windows NT TCP Receive Window (on Ethernet)
Application Throughput: Application Data Size/(Ethernet Serialization Delay + Round Trip Latency)
Bytes
Bytes Bytes
Bytes