Цитата(kolobok0 @ Nov 20 2014, 18:12)

Вы утверждаете, что контрольая сумма даёт сбои при конкретной реализации и посему TCP не надёжен в плане сетевой передачи?
Пропускают ошибки
любые методы контроля. Вопрос в вероятности. А по этому критерию CRC32 несравнимо лучше обычной суммы.
И если поддаться паранойе, то можно не ограничиваться 32 разрядами. Есть полиномы и на большие разрядности.
Цитата(Сергей Борщ @ Nov 20 2014, 19:12)

Хорошо, в TCP простая сумма. Но этот TCP идет поверх Ethernet, в котором как раз таки CRC-32.
А где ТС пишет, что клиент и сервер находятся в одной Ethernet-сети?
Он вроде про Интернет пишет. А значит - на пути следования пакета могут быть различные физические+канальные среды передачи.
Плюс - переход пакета из одного сегмента сети в другой, через кучу маршрутизаторов.
Не здесь-ли и возникают сбои, приводящие к ошибкам в принятых по FTP файлах?
А ещё - как я понимаю для Ethernet обязательно только формирование кадров с CRC, но не обязателен контроль этой CRC на приёмной стороне.
Цитата(Golikov A. @ Nov 20 2014, 18:26)

Такая контрольная сумма весьма не дурна, но не гениальна. Она не замечает перестановку слов, и двойную ошибку одного бита. Учитывая сетевой протокол, избыточное кодирование и прочее она годиться для ТСР (вот теперь сижу вспоминаю а есть ли там избыточное кодирование

), и дает единицы ошибок в год, но CRC32 в разы надежнее...
Я бы сказал - не в разы, а на порядки. Учитывая кол-во разрядов в контрольной сумме TCP и в CRC32. Уж не говоря о том что даже CRC16 будет надёжнее обычной суммы.
Кодирование - это функция вроде канального или физического уровня протокола (в частности - Ethernet-уровня или какой там канальный/физический уровень в данном сегменте). А TCP - это более высокий уровень OSI.