Единственное различие между этими двумя, как вы их записали, состоит в том, что (2) отправит один частичный сегмент без задержки, даже если есть незакрытые сегменты, если эти сегменты имеют полный размер.Т.е. если он недавно отправлял только полноразмерные сегменты, а некоторые из них все еще «в воздухе».
Это хорошо, потому что такая ситуация не указывает на болтливое соединение, которое использует небольшие пакеты.Такая ситуация часто возникает в конце массовой передачи данных.Если размер передаваемого файла не делится точно на размер сегмента TCP, так что последний фрагмент заполняет сегмент, что маловероятно, пакет данных будет иметь неполный сегмент в качестве последнего фрагмента.
Нет смысла откладывать отправку последнего фрагмента массовой передачи только потому, что он меньше.
Правило 1 будет тормозить почти каждую передачу HTTP, заставляя отправителя ввести бессмысленную задержку перед отправкойпоследний кусок.
(Вы уверены, что это настоящее правило? Обратите внимание на комментарий Николая Н. Фетисова, обязательно прочитайте реальный RFC, а не подержанные источники.)