У меня 64-разрядная машина с Windows 7 с двумя отдельными приложениями, работающими на одной машине. Одно приложение записывает данные через 4 TCP-соединения (тот же IP, разные порты). Другое приложение считывает эти данные. Все это является внутренним для машины, хотя она подключена к сети.
Данные, совокупно около 8 МБ, записываются каждую секунду. Размер отдельных сообщений составляет от 50 КБ до ~ 60 КБ. 10-15 таких сообщений отправляются на каждый сокет раз в секунду. Это означает, что одно из подключений сбрасывает 5 Мбайт за раз (грубо говоря) каждую секунду.
Я установил следующие параметры:
Tcp1323Opts=1
netsh int tcp set heuristics disabled
Я использовал setsockopts, чтобы установить для буфера приема значение 8 МБ для загруженного соединения и 2 МБ для соединений с меньшим дампом данных.
Наконец, вопросы: