You are on page 1of 8

Ethernet & TCP Performance Model

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.

Select Line Rate:

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)

0.1 mS 0.2 mS 0.4 mS 0.6 mS 0.8 mS 1 mS 2 mS 3 mS 4 mS 5 mS

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

Ethernet & TCP Performance Model


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. 6 mS 7 mS 8 mS 9 mS 10 mS 20 mS 30 mS 40 mS 50 mS 60 mS 70 mS 80 mS 90 mS 100 mS 110 mS 120 mS 130 mS 140 mS 150 mS 160 mS 170 mS 180 mS 190 mS 200 mS 210 mS 220 mS 230 mS 240 mS 250 mS 260 mS 270 mS 280 mS 290 mS 300 mS 310 mS 320 mS 330 mS 340 mS 350 mS 80,016 Kbps 69,421 Kbps 61,304 Kbps 54,886 Kbps 49,685 Kbps 25,510 Kbps 17,160 Kbps 12,929 Kbps 10,371 Kbps 8,658 Kbps 7,431 Kbps 6,509 Kbps 5,790 Kbps 5,214 Kbps 4,742 Kbps 4,349 Kbps 4,016 Kbps 3,730 Kbps 3,482 Kbps 3,266 Kbps 3,074 Kbps 2,904 Kbps 2,751 Kbps 2,614 Kbps 2,490 Kbps 2,377 Kbps 2,274 Kbps 2,180 Kbps 2,093 Kbps 2,012 Kbps 1,938 Kbps 1,869 Kbps 1,804 Kbps 1,744 Kbps 1,688 Kbps 1,636 Kbps 1,586 Kbps 1,540 Kbps 1,496 Kbps 11,538 Kbps 9,907 Kbps 8,680 Kbps 7,723 Kbps 6,957 Kbps 3,491 Kbps 2,330 Kbps 1,749 Kbps 1,400 Kbps 1,167 Kbps 1,000 Kbps 875 Kbps 778 Kbps 700 Kbps 637 Kbps 584 Kbps 539 Kbps 500 Kbps 467 Kbps 438 Kbps 412 Kbps 389 Kbps 369 Kbps 350 Kbps 334 Kbps 318 Kbps 305 Kbps 292 Kbps 280 Kbps 269 Kbps 259 Kbps 250 Kbps 242 Kbps 234 Kbps 226 Kbps 219 Kbps 212 Kbps 206 Kbps 200 Kbps 22,799 Kbps 19,609 Kbps 17,203 Kbps 15,322 Kbps 13,812 Kbps 6,957 Kbps 4,649 Kbps 3,491 Kbps 2,795 Kbps 2,330 Kbps 1,998 Kbps 1,749 Kbps 1,555 Kbps 1,400 Kbps 1,272 Kbps 1,167 Kbps 1,077 Kbps 1,000 Kbps 933 Kbps 875 Kbps 824 Kbps 778 Kbps 737 Kbps 700 Kbps 667 Kbps 637 Kbps 609 Kbps 584 Kbps 560 Kbps 539 Kbps 519 Kbps 500 Kbps 483 Kbps 467 Kbps 452 Kbps 438 Kbps 425 Kbps 412 Kbps 400 Kbps 80,016 Kbps 69,421 Kbps 61,304 Kbps 54,886 Kbps 49,685 Kbps 25,510 Kbps 17,160 Kbps 12,929 Kbps 10,371 Kbps 8,658 Kbps 7,431 Kbps 6,509 Kbps 5,790 Kbps 5,214 Kbps 4,742 Kbps 4,349 Kbps 4,016 Kbps 3,730 Kbps 3,482 Kbps 3,266 Kbps 3,074 Kbps 2,904 Kbps 2,751 Kbps 2,614 Kbps 2,490 Kbps 2,377 Kbps 2,274 Kbps 2,180 Kbps 2,093 Kbps 2,012 Kbps 1,938 Kbps 1,869 Kbps 1,804 Kbps 1,744 Kbps 1,688 Kbps 1,636 Kbps 1,586 Kbps 1,540 Kbps 1,496 Kbps

Ethernet & TCP Performance Model


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. 360 mS 370 mS 380 mS 390 mS 400 mS 410 mS 420 mS 430 mS 440 mS 450 mS 460 mS 470 mS 480 mS 490 mS 500 mS 1,454 Kbps 1,415 Kbps 1,378 Kbps 1,342 Kbps 1,309 Kbps 1,277 Kbps 1,247 Kbps 1,218 Kbps 1,190 Kbps 1,164 Kbps 1,138 Kbps 1,114 Kbps 1,091 Kbps 1,069 Kbps 1,047 Kbps 195 Kbps 189 Kbps 184 Kbps 180 Kbps 175 Kbps 171 Kbps 167 Kbps 163 Kbps 159 Kbps 156 Kbps 152 Kbps 149 Kbps 146 Kbps 143 Kbps 140 Kbps 389 Kbps 379 Kbps 369 Kbps 359 Kbps 350 Kbps 342 Kbps 334 Kbps 326 Kbps 318 Kbps 311 Kbps 305 Kbps 298 Kbps 292 Kbps 286 Kbps 280 Kbps 1,454 Kbps 1,415 Kbps 1,378 Kbps 1,342 Kbps 1,309 Kbps 1,277 Kbps 1,247 Kbps 1,218 Kbps 1,190 Kbps 1,164 Kbps 1,138 Kbps 1,114 Kbps 1,091 Kbps 1,069 Kbps 1,047 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

10000000 100000000 1000000000

10000000 100000000 1000000000 65536 8760

Maximum TCP Receive Window Maximum Windows NT TCP Receive Window (on Ethernet)

Ethernet & TCP Performance Model


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. Maximum Windows 2000 TCP Receive Window 17520

Application Throughput: Application Data Size/(Ethernet Serialization Delay + Round Trip Latency)

Ethernet & TCP Performance Model

Bytes

Ethernet & TCP Performance Model

Ethernet & TCP Performance Model

Bytes Bytes Bytes Bytes Bytes Bytes Bytes Bytes Bytes

Bytes Bytes

Ethernet & TCP Performance Model

Bytes

You might also like