Телекоммуникационные технологии. Том 1



         

New_tcp


4.4.3.3 Новый протокол TCP

Семенов Ю.А. (ГНЦ ИТЭФ)

Современная версия протокола ТСР (RFC-793, -1323) имеет ряд недостатков (см. , а также RFC-2525 или [1]):

  • Практически не защищена от атак злоумышленников (подбор ISN, “человек по середине”, посылка ложного флага FIN

    или RST, переполнение буфера SYN-запросами, прерывание сессии с помощью сообщения ICMP "адресат недоступен" и т.д.)

  • Не обеспечивает оптимального использования виртуального соединения в условиях перегрузки (управление CWND)
  • Имеет неэффективность процедуры установления соединения (три операции обмена) и разрыва связи (4 операции обмена)
  • Логика работы протокола плохо адаптируется к изменениям ситуации в сети
  • Протокол плохо приспособлен для работы со скоростными каналами (10Гбит/c и больше, в частности из-за ограничений размера окна или поля идентификатора пакета)

  • Попытки адаптировать действующую версию протокола имели существенный, но ограниченный успех (модели Tahoe, Reno (см. также RFC-2582), Vegas, Т/ТСР (см. RFC-1644), SACK (см. RFC-2018, -2883, -3517) и другие (см., например, RFC-2309, -3042, -3168)), а также альтернативный протокол XTP. Некоторые недостатки были частично устранены (синдром узкого окна, алгоритм Нагля).

    Следует, впрочем, заметить, что радикальные изменения протокола ТСР не предпринимались неслучайно. Программные продукты, используемые на сотнях миллионов ЭВМ не поменять в одночасье. И нужно искать решение, которое позволяло бы работать со старыми версиями программного обеспечения, базирующегося на протоколе ТСР (Tahoe или Reno).

    В данной статье предлагается принципиально иная модель таботы транспортного протокола ТСР (NTCP). В запросе SYN этого протокола должен присутствовать код опции NTCP (код поля опции вид может равняться, например, 20) и, если поддерживающий NTCP объект получает такой сегмент, он должен послать соответствующий отклик отправителю.

    Сначала рассмотрим, что мешает традиционному ТСР работать в сверхскоростных каналах. Здесь наиважнейшими параметрами являются window > RTT×B/MSS и поле идентификатора пакета, где В - полоса пропускания канала, измеряемая в битах в сек, максимальный размер сегмента MSS здесь и далее задан в битах), а RTT-сумма времен доставки сегмента от отправителя до получателя и отклика от получателя до отправителя.


    Содержание  Назад  Вперед