Подмена протокола - Protocol spoofing
Подмена протокола используется при передаче данных для повышения производительности в ситуациях, когда существующий протокол является неадекватным, например, из-за длительных задержек или большого количества ошибок.
Примечание: В компьютерная безопасность контекст спуфинг относится к различным формам фальсификации данных, не связанных с обсуждаемыми здесь методами. Видеть спуфинговая атака.
Спуфинговые методы
В большинстве приложений спуфинга протоколов такое устройство связи, как модем или же маршрутизатор имитирует («подделывает») удаленную конечную точку соединения с локально подключенным хостом, используя более подходящий протокол для связи с совместимым удаленным устройством, которое выполняет эквивалентную подделку на другом конце канала связи.
Подмена передачи файлов
Протоколы исправления ошибок и передачи файлов обычно работают, вычисляя контрольная сумма или же CRC для блока данных, известного как пакет, и передача полученного числа в конце пакета. На другом конце соединения получатель повторно вычисляет число на основе полученных данных и сравнивает этот результат с тем, что было отправлено с удаленного компьютера. Если они совпадают, пакет был передан правильно, и получатель отправляет ACK чтобы сигнализировать, что он готов к приему следующего пакета.
Время передать ACK возврат к отправителю - это функция телефонных линий, в отличие от модем скорость, и обычно около1⁄10 секунды на коротких ссылках и может быть намного дольше на междугородных ссылках или сетях передачи данных, таких как X.25. Для протокола, использующего небольшие пакеты, эта задержка может быть больше, чем время, необходимое для отправки пакета. Например, UUCP протокол "g" и Кермит оба используют 64-байтовые пакеты, что на канале 9600 бит / с занимает около1⁄20 секунды для отправки. XMODEM использовал немного больший 128-байтовый пакет, который занимает около1⁄10 секунды для отправки.
Следующий пакет данных не может быть отправлен до ACK за предыдущий пакет получен. В случае XMODEM, например, это означает, что требуется минимум2⁄10 секунды на весь цикл для одного пакета. Это означает, что общая скорость составляет только половину теоретического максимума, 50% эффективность канала.
Подмена протокола решает эту проблему за счет того, что локальный модем распознает, что идет передача данных, часто путем поиска заголовков пакетов. Когда они видны, модем ищет конец пакета, обычно зная количество байтов в одном пакете. XMODEM, например, имеет 132 байта в пакете из-за того, что заголовок и контрольная сумма добавляются к 128 байтам фактических данных. Когда модем видит, что пакет закончился, он немедленно отправляет поддельный ACK сообщение обратно хосту. Это приводит к тому, что локальный компьютер немедленно отправляет другой пакет, избегая задержки при ожидании ACK с удаленной машины. Данные для нескольких пакетов хранятся во внутреннем буфере, пока модем отправляет их на удаленную машину. Это позволяет отправлять пакеты непрерывно, что значительно повышает эффективность канала. Однако для этого также требуется, чтобы связь между двумя системами была безошибочной, поскольку модем уже ACKредактировал пакеты еще до их отправки. Обычно это решалось с помощью протокола исправления ошибок на уровне модема, например Сетевые протоколы Microcom.
Подмена протокола также широко использовалась с другой функцией более ранних высокоскоростных модемов. До введения эхоподавление в v.32 и более поздних протоколов, высокоскоростные модемы обычно имели очень медленный «обратный канал» для отправки таких сообщений ACKобратно отправителю. На ~ 18 500 бит / с TrailBlazer, например, модем мог отправлять до 35 пакетов UUCP в секунду на приемник, но обратный канал предлагал только 75 бит / с, что недостаточно для 35 байтов, 280 бит, ACK сообщения, созданные удаленным хостом.
В этом случае спуфинг позволил отправляющему модему продолжить отправку пакетов с максимальной скоростью. В то же время модем на удаленном приемном конце сбросил ACK пакеты, генерируемые программным обеспечением локального компьютера, сохраняют обратный канал в чистоте. Поскольку эффективность канала стала серьезной проблемой только на скоростях выше 2400 бит / с, а модемы, способные работать быстрее, чем обычно, имели значительную вычислительную мощность, спуфинг протокола в основном был связан с этими высокоскоростными системами.
Подмена TCP
Соединения TCP могут страдать от ограничений производительности из-за недостаточного размера окна для ссылок с высоким продукт задержки полосы пропускания, а также на ссылках с большой задержкой, например, на GEO спутники, TCP медленный старт алгоритм значительно задерживает запуск соединения. Маршрутизатор с подделкой завершает TCP-соединение локально и преобразует TCP в протоколы, адаптированные для длительных задержек по спутниковому каналу, например XTP.
Подмена RIP / SAP
SAP и RIP периодически транслируют сетевую информацию, даже если таблицы маршрутизации / обслуживания не изменились. дозвон по запросу WAN-ссылки в IPX поэтому сети никогда не простаивают и не отключаются. Маршрутизатор или модем с подменой перехватывают широковещательные рассылки SAP и RIP и повторно транслируют рекламные объявления из своей собственной таблицы маршрутизации / услуг, которую он обновляет только тогда, когда канал активен по другим причинам.
Смотрите также
внешняя ссылка
- Протокол UUCP `g '
- Ишак, Джозеф; Оллман, Марк (2001). «О производительности TCP Spoofing в спутниковых сетях» (PDF). Архивировано из оригинал (PDF) на 2006-10-11. Получено 2005-12-29. Цитировать журнал требует
| журнал =
(помощь)