- •Sctp Материал из Википедии — свободной энциклопедии
- •Многопоточность
- •Достоинства
- •Причины появления
- •Сравнение возможностей протоколов транспортного уровня
- •Архитектура sctp
- •Функционирование sctp
- •Sctp Материал из Wiki.Inattack.Ru.
- •Проблемы tcp
- •Свойства sctp
- •Многодомность
- •Инициация
- •Передача данных
- •Отключение
- •[Править] Безопасное установление подключения
- •[Править] Поэтапное завершение передачи данных
- •[Править] Многопоточность
- •[Править] Достоинства
- •[Править] Причины появления
- •[Править] Безопасность
- •[Править] Сравнение возможностей протоколов транспортного уровня
- •[Править] Формирование кадров сообщения
- •[Править] Структура пакета
- •[Править] Обработка ошибок
- •[Править] Реализации
- •[Править] Примечания
- •[Править] Ссылки
Инициация
Оба протокола и SCTP, и TCP, ориентированы на установление соединения, и они требуют определения состояния соединения на каждом хосте. Соединение TCP определяется двумя IP-адресами и двумя номерами портов. Пусть имеется два хоста A и Z, тогда соединение TCP определяется как [IP-A]+[Port-A]+[IP-Z]+[Port-Z], где IP-A и Port-A — это один конец соединения, а IP-Z и Port-Z — другой.
Ассоциация SCTP определяется как [набор IP-адресов на хосте A]+[Port-A]+[набор IP-адресов на хосте Z]+[Port-Z]. Любые из IP-адресов на любом хосте могут указываться в качестве отправителя или получателя в IP-пакете и это корректно идентифицирует ассоциацию. Инициация
Оба протокола и SCTP, и TCP, ориентированы на установление соединения, и они требуют определения состояния соединения на каждом хосте. Соединение TCP определяется двумя IP-адресами и двумя номерами портов. Пусть имеется два хоста A и Z, тогда соединение TCP определяется как [IP-A]+[Port-A]+[IP-Z]+[Port-Z], где IP-A и Port-A — это один конец соединения, а IP-Z и Port-Z — другой.
Ассоциация SCTP определяется как [набор IP-адресов на хосте A]+[Port-A]+[набор IP-адресов на хосте Z]+[Port-Z]. Любые из IP-адресов на любом хосте могут указываться в качестве отправителя или получателя в IP-пакете и это корректно идентифицирует ассоциацию.

рис. 2
Прежде, чем начнется обмен данными, два SCTP-хоста должны передать друг другу информацию о состоянии соединений (в том числе задействованные IP-адреса) с помощью четырехэтапной процедуры установки соединения, показанной на рис. 2. В трехэтапной процедуре установки соединения в TCP, процедура, предусмотренная протоколом SCTP, позволяет защититься от DoS-атак. Получателю сообщения о намерении установить контакт INIT в четырехэтапной процедуре установки соединения не требуется сохранять никакую информацию о состоянии или резервировать какие-либо ресурсы. Вместо этого он посылает в ответ сообщение INIT-ACK, которое включает в себя специальную запись (cookie) состояния, содержащую всю информацию необходимую отправителю INIT-ACK для того, чтобы сформировать свое состояние. Спецзапись состояния подписывается цифровой подписью (см., например, [10]). Оба сообщения, INIT и INIT-ACK, содержат несколько параметров, необходимых для установки начального состояния:
список всех IP-адресов, которые станут частью ассоциации;
номер транспортной последовательности, который используется для надежной передачи данных;
тег инициации, который должен быть включен в каждый входящий пакет SCTP;
число выходящих потоков, запрашиваемых каждой из сторон;
число входящих потоков, которые способна поддерживать каждая из сторон.
После обмена этими сообщениями, отправитель INIT возвращает назад спецзапись состояния в виде сообщения COOKIE-ECHO, которое также может содержать связанные с ним пользовательские сообщения DATA (при наличии связанных путем ограничений на максимальный размер передаваемого элемента). При получении COOKIE-ECHO получатель полностью меняет свое состояние и отправляет обратное сообщение COOKIE-ACK, подтверждающее, что настройка завершена. Этот COOKIE-ACK также может сопровождаться пользовательскими сообщениями DATA.
