Скорость сокета на компьютере составляет 120 МБ / с, это нормально?

Я тестировал производительность передачи данных из программы в другую через сокет на одном компьютере, и скорость составляет 120 МБ / с , это нормально ?

Мои серверная и клиентская программы чрезвычайно просты.

Мой компьютер - AMD Athlon X2 4000+, оперативная память 4G DDR2 667 и windows xp sp3.

Мой друг сказал, что это медленно и должно быть быстрее. Но я не знаю, как я могу их улучшить, и есть ли другие библиотеки, которые я могу попробовать увеличить скорость?

ОБНОВЛЕНИЕ

Серверная и клиентская программы были на моем компьютере, a одиночный компьютер . Сетевая карта будет ограничивать скорость или нет?


Server.java

import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;

public class SimpleServer {
    public static void main(String[] args) throws Exception {
        ServerSocket server = new ServerSocket(6666);
        Socket socket = server.accept();
        OutputStream output = socket.getOutputStream();

        byte[] bytes = new byte[10 * 1024]; // 10K
        for (int i = 0; i < bytes.length; i++) { bytes[i] = 12; } // fill the bytes

        // send them again and again
        while (true) {
            output.write(bytes);
        }
    }
}

Client.java

public class SimpleClient {

    public static void main(String[] args) throws Exception {
        Socket socket = new Socket("127.0.0.1", 6666);
        InputStream input = socket.getInputStream();
        long total = 0;
        long start = System.currentTimeMillis();

        byte[] bytes = new byte[10240]; // 10K

        // read the data again and again
        while (true) {
            int read = input.read(bytes);
            total += read;
            long cost = System.currentTimeMillis() - start;
            if (cost > 0 && System.currentTimeMillis() % 1000 == 0) {
                 System.out.println("Read " + total + " bytes, speed: " + (total / (1024.0*1024)) / (cost / 1000.0) + " MB/s");
            }
        }
    }

}
11
задан Freewind 26 October 2011 в 13:58
поделиться