Download Comparing file transfer and encryption performance of Java

Document related concepts
no text concepts found
Transcript
File Transfer Performance: Receiving
5000
4500
Time in Milliseconds
4000
3500
C# -> C#
3000
C# -> Java 1.5 beta
Java 1.5 beta -> C#
2500
Java 1.5 beta -> Java 1.5 beta
2000
Java 1.4.2 -> Java 1.4.2
1500
PureC# -> PureC#
1000
500
0
1Kb
10Kb
100Kb
1Mb
File Size
Fig. 7: The results of the file transfer performance of the applications for sending a file,
including the results for the 10 Mb file
10.4 Discussion of the results
When we compare the two Java versions, being 1.4.2 and 1.5 beta, we don’t
see much of a difference in performance. Java 1.5 beta doesn’t seem to be
more performant then Java 1.4.2, at least, for sending and receiving files over
TCP that is.
Sending and receiving files happens at about the same speed. The small
differences in the data can be explained as noise in the data. C# seems to be
a bit slower in receiving files then the two Java versions. It is clear though
that, by looking at the receiving of files in the non-buffered C# version
(PureC#), C# can be made a lot faster when the TCP packets are being
handled by the .NET Framework, by using the TcpClient class, instead of
programmatically. It is possible that the buffered C# version is slower because
of the fact that each packet is handled twice. Once by the .NET Framework
and once by the program (which reads all incoming data into packets of 5120
bytes), reducing the C# performance.
42