Назад | Перейти на главную страницу

Почему повреждение TCP не более заметно?

Прежде всего, извиняюсь, если это кажется несколько упрощенным вопросом.

В соответствии с этот ответ, Пакеты TCP повреждены все время без контрольной суммы.

Если это происходит так часто, почему это не более заметно? Разве это не должно приводить к повреждению изображений, файлам сценария, содержащим неправильные символы ascii и т. Д.?

Конечно, люди склонны запускать контрольную сумму md5 для критических файлов, но почему для обычных и ежедневных сетевых приложений это не вызывает большего разрушения, чем кажется? (кажется, что этого даже не происходит, но статистика и логика подтверждают этот ответ)

Если это случается так часто ...

Это не так, и ответ, на который вы ссылаетесь, не утверждает, что это так. "Часто"будет означать, что большое количество пакетов повреждено родственник к абсолютному количеству переданных пакетов. Но это не так. В ответе вы говорите о том, что много пакеты повреждены повреждение все еще редкий по сравнению с абсолютный количество переданных пакетов.

Помимо этого, помимо TCP могут быть дополнительные средства защиты. Например, TLS (используемый в HTTPS) будет замечать практически все повреждения данных, поскольку HMAC, используемый для обнаружения манипуляций с данными, намного более надежен (но также имеет больше накладных расходов), чем простой CRC, используемый в TCP. Хотя обнаружение проблем на этом этапе не вызовет повторной передачи данных, как это было бы с ошибками контрольной суммы TCP, соединение будет просто считаться разорванным и, таким образом, будет неотличимо от многих других ошибок, которые возникают при разрыве соединения на ежедневной основе. Аналогично, из-за того, как работают форматы изображений, поврежденные данные в изображении обычно либо практически не видны, либо приводят к повреждению всего изображения (не удается отрисовать или обрезать по середине), что также похоже на типичные проблемы с подключением.

Вы описываете систематическую ошибку выборки. Тот факт, что вы лично не заметили многих проблем с коррупцией при использовании TCP, не означает, что это происходит не постоянно. Оно делает. Ответы, на которые вы ссылаетесь, довольно полны по этому вопросу.