20.11.2012 Views

Contents Telektronikk - Telenor

Contents Telektronikk - Telenor

Contents Telektronikk - Telenor

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Time [ms]<br />

Time [ms]<br />

3.6<br />

3.2<br />

2.8<br />

2.4<br />

2.0<br />

1.6<br />

1.2<br />

.8<br />

.4<br />

0<br />

3.6<br />

3.2<br />

2.8<br />

2.4<br />

2.0<br />

1.6<br />

1.2<br />

.8<br />

.4<br />

0<br />

0<br />

0<br />

SBA-200/2.2.6 - driver<br />

SBA-200/2.2.6 - total<br />

SBA-100/2.2.6 - driver<br />

SBA-100/2.2.6 - total<br />

SBA-100/2.0 - driver<br />

SBA-100/2.0 - total<br />

SBA-200/2.2.6 - driver<br />

SBA-200/2.2.6 - total<br />

SBA-100/2.2.6 - driver<br />

SBA-100/2.2.6 - total<br />

not fully representative for performance<br />

when the protocol operates like stop-andgo.<br />

In order to explain the Sparc2 and<br />

Sparc10 relative performance for smaller<br />

window sizes when using SBA-100<br />

adapters, we measured the throughput<br />

with TCP operating as a stop-and-go protocol<br />

for these configurations. This was<br />

achieved by setting the window size<br />

equal to the user data size. The throughput<br />

under such a behavior is shown in<br />

Figure 5 for both host architectures. Up<br />

to a user data size between 2048 and<br />

2560 bytes the slower Sparc2 has a higher<br />

throughput. This is most likely due to<br />

the longer Sbus access time combined<br />

with the relatively longer interrupt time.<br />

4 Initial throughput<br />

measurements<br />

2048 4096 6144 8192<br />

Segment size [byte]<br />

(a) Sparc2 send times<br />

2048 4096 6144 8192<br />

Segment size [byte]<br />

(c) Sparc10 send times<br />

This section presents the initial throughput<br />

measurements for the reference architecture,<br />

the Sparc2 with the SBA-100<br />

network adapter with the first network<br />

driver version, i.e. version 2.0. Figure 6<br />

(a) presents the measured TCP end-toend<br />

memory-to-memory throughput for<br />

Time [ms]<br />

Time [ms]<br />

3.6<br />

3.2<br />

2.8<br />

2.4<br />

2.0<br />

1.6<br />

1.2<br />

.8<br />

.4<br />

0<br />

3.6<br />

3.2<br />

2.8<br />

2.4<br />

2.0<br />

1.6<br />

1.2<br />

.8<br />

.4<br />

0<br />

0<br />

0<br />

SBA-200/2.2.6 - driver<br />

SBA-200/2.2.6 - total<br />

SBA-100/2.2.6 - driver<br />

SBA-100/2.2.6 - total<br />

SBA-100/2.0 - driver<br />

SBA-100/2.0 - total<br />

SBA-200/2.2.6 - driver<br />

SBA-200/2.2.6 - total<br />

SBA-100/2.2.6 - driver<br />

SBA-100/2.2.6 - total<br />

Figure 4 Segment send and receive processing times<br />

different user data sizes and different<br />

window sizes. The throughput dependent<br />

on window size for a fixed user data size<br />

of 8192 bytes is presented in Figure 6<br />

(b), and the corresponding CPU utilization<br />

in Figure 6 (c). Both the user data<br />

size and the window size affect measured<br />

throughput. From the graphs it is clear<br />

that increasing the TCP window size<br />

above 32 kbytes has no increasing effect<br />

on the throughput. On the contrary, such<br />

an increase in window size results in a<br />

significantly varying throughput dependent<br />

on user data size. The reason is cell<br />

loss at the receiving host which causes<br />

TCP packet loss and retransmissions of<br />

lost packets.<br />

In general, the receive operation is<br />

known to be more time consuming than<br />

the transmit operation. At the receive<br />

side, there are among other things<br />

demultiplexing and scheduling points<br />

and interrupts which do not occur at the<br />

send side. In addition, reading from<br />

memory is more time consuming than<br />

writing to memory. Clearly, this is evident<br />

from the driver processing times<br />

presented in Figure 4. Furthermore, the<br />

processor (CPU) utilization histograms in<br />

2048 4096 6144 8192<br />

Segment size [byte]<br />

(b) Sparc2 receive times<br />

2048 4096 6144 8192<br />

Segment size [byte]<br />

(d) Sparc10 receive times<br />

Figure 6 (c) show the receiver to be<br />

heavier loaded than the sender. When the<br />

TCP connection starts losing packets due<br />

to cell loss at the receiver, both the<br />

throughput and CPU utilization are<br />

degraded. TCP employs positive<br />

acknowledgment with go-back-n retransmission.<br />

The sender fills the window,<br />

and if every byte is not acknowledged, it<br />

relies on retransmission timers to go off<br />

before it starts sending at the point of the<br />

Throughput |Mbit/s]<br />

30<br />

20<br />

10<br />

Sparc2<br />

Sparc10<br />

0<br />

0 1024 2048 3072 4096<br />

user data = window = segment size [byte]<br />

Figure 5 Sparc2 versus Sparc10 segment<br />

processing, SBA-100/2.2.6<br />

159

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!