Master Dissertation

SCTP performance test - HTTP protocol

Scenario: COP as server, SOLDIER as client. Two network sceneries were used:

Server application adapted: thttpd version 2.25b

Client application adapted: httperf version 0.8

The SCTP tests were done with 1, 10 and 100 streams, that correspond to 1, 10 and 100 files transferred per association. In TCP, exactly one connection is created per transferred file, since thttpd server does not support HTTP pipelining (neither do most HTTP servers and browsers).

100Mbps throughput - variation of file size

File sizeTCPSCTP - 1 streamSCTP - 10 streamsSCTP - 100 streams
1001008,7537,61243,92221,3
10002315,01458,64043,16281,7
100007688,25613,46397,29954,1
10000010693,310226,18880,511314,1

File sizes in bytes, throughput in KBytes/s (1KByte = 1024 bytes)

1Mbps throughput - variation of file size

File sizeTCPSCTP - 1 streamSCTP - 10 streamsSCTP - 100 streams
1003,32,239,488,9
100010.77,261,7100,2
1000056,433,973,6115,3
100000117,795,3110,4108,0

File sizes in bytes, throughput in KBytes/s (1KByte = 1024 bytes)

Comments

Using only one streams, SCTP is slower than TCP. This is congruent with the other tests, but here there is an additional problem: a lot of associations are creates (one per file) and it hurts SCTP further since association creation overhead is bigger than TCP connextion creation.

In the other hand, SCTP surpassed TCP when it was allowed to use several streams per association, in particular when small files were transferred (most Web files are small). In 1Mbps network scenario, that approximates a typical end-user ADSL connection, SCTP gain on TCP was even bigger.

As bigger files are used, SCTP multiple streams lead is narrowed because network bandwidth becomes the ultimate botteneck.