Производительность: tcp_autocorking или пользовательская агрегация - PullRequest
0 голосов
/ 18 июня 2019

Мне интересно, есть ли разница в производительности между использованием tcp_autocorking ядра Linux и пользовательское агрегирование в пользовательском пространстве.

У меня есть заголовок длины и данные (в среднем 120 байтов), которые мне нужно передать. Вариант 1). Запишите длину и полезную нагрузку в двух отдельных системных вызовах. Вариант 2). Суммируйте длину и полезную нагрузку в объединенном буфере и выполняйте только один системный вызов.

Я боюсь, что второй системный вызов из варианта 1) имеет штраф за производительность. С другой стороны, копирование полезной нагрузки без необходимости во второй буфер также может быть значительным дополнительным расходом. Так какое решение, вероятно, быстрее?

...