Занялся вот в образовавшийся день оптимизацией

Коллеги, кто-нибудь может строго объяснить такие моменты:

1) Когда сервер работает под большой нагрузкой (обслуживается много параллельно открытых сокетов - запросов), то статистически прилично шустрее работает при разбитии на мелкие порции FOR i := 1 TO 4 WriteBytes(..., 256) END по сравнению с WriteBytes(..., 1024).
Алгоритм Нагля при большой нагрузке начинает пулять более мелкими пакетами и оно быстрее уходит?
Тогда: насколько эти параметры будут зависеть от машины (т.е. не окажется ли совсем наоборот на технике другой производительности, в разных ОС)?

2) Тогда уж до кучи вопрос... Была такая история. В ситуации, когда последним sendbytes записывается малый "хвостик" данных (< 40 байт), был сильный протормоз их отправки (фактически, скорость обслуживания падала примерно в 100 раз). Решилось-то просто (не оставлять такие хвостики), но вот внятного объяснения нет. Это проявлялось и в случае ненагруженного сервера.
Потому что если это алгоритм Нагла, то
а) в ненагруженной ситуации порог кэширования для него должен быть порядка сотен байт (т.е. и со 128-байт куском должна быть такая же задержка, а тут только < 40);
б) тормоза-то не должно быть, ибо ответ о доставке должен быстро приходить (клиент интенсивно читает).