SMART Multicast - SMART Multicast

SMART Multicast это экспериментальный метод безопасной и надежной IP-рассылки. Это позволяет пользователю пересылать IP-дейтаграммы неограниченной группе получателей. См. Статью о многоадресная передача для общего обсуждения этой темы - эта статья специально о SMART IP Multicast.

SMART Multicast использует

Например, IP Multicast успешно развернут в частных и контролируемых сетевых средах; IP по оптоволокну - операторы кабельного телевидения, образовательные учреждения со значительным количеством студенческих общежитий на территории кампуса и приложения финансового сектора, такие как биржевые тикеры и гудеть и кричать системы. Однако многоадресная IP-рассылка медленно внедрялась в среде междоменной маршрутизации. Это связано с тем, что в текущей междоменной инфраструктуре отсутствуют необходимые инструменты для эффективной обработки потери пакетов и безопасности, необходимые для создания функциональной бизнес-модели.

SMART IP Multicast - это экспериментальный протокол, который обеспечивает междоменную передачу Secure Reliable IP Multicast, тем самым преодолевая проблемы развертывания глобальной междоменной многоадресной IP-передачи. SMART IP Multicast упрощает развертывание глобальной многоадресной IP-рассылки точно так же, как MFTP (Multicast File Transfer Protocol) выполняет эту задачу для передачи файлов, а именно обеспечивает безопасность и надежность для обеспечения полной совместимости.

Распространение файлов IP Multicast было наиболее успешным использованием IP Multicast в университетских и коммерческих сетях. Для распространения файлов большинство из них использовали какой-то вариант экспериментального протокола MFTP (Multicast File Transfer Protocol). MFTP безопасен и надежен и работает поверх протокола IP Multicast. Как и MFTP, SMART Multicast - это оболочка, которая работает поверх IP Multicast, используя преимущества эффективности IP Multicast. SMART Multicast безопасен, надежен и обеспечивает двунаправленную обратную связь.

Для получения дополнительной информации см. RFC3170 - Приложения многоадресной IP-рассылки: проблемы и решения

История и вехи

SMART поддерживает MBONE как реализация многоадресной рассылки между сайтами посредством использования динамически выделяемых многоадресных туннелей. SMART использует преимущества SIMPLE (самореализация эскалации уровня многоадресного протокола)

Экспериментальная структура протокола SMART

Структура пакета для SRM-P2MPDATA PACKET Message TYP = 0x00 (двоичное 00) ACCESS_SYNCH_CODE 8PACKET_TYPE 2CMD 2RESERVED 4PACKET SIZE 16PACKET_NUMBER 16PACKET FORMAT 9 2DECRYPT_Y_N 1QUIET 4RESERVED 1 5 1 ... 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Синхронизация доступа | TYP CMD RESRV | Размер пакета | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Последовательность пакетов | FMT D QUIET R ЗАЩИЩЕНО | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Полезная нагрузка [1] | + - - + | ........... | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + (6 битов, 64 типа) СООБЩЕНИЯ Тип сообщения = 0x01 (двоичный 1) ACCESS_SYNCH_CODE 8PACKET_TYPE 2CMD 6PACKET_SIZE 16 [... PAYLOAD] ADDR_RANGE CHANGE CMD = 01 (двоичный 000001) 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Синхронизация доступа | TYP CMD | Размер пакета | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Адрес [1] | + - - + | Адрес [2] | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + USAGE_REPORT_JOIN CMD = 0x0002 (двоичный 000010) 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Синхронизация доступа | TYP CMD RESRV | Размер пакета | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Адрес [1] | + - - + | Адрес [2] | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + USAGE_REPORT_LEAVE CMD = 0x0003 (двоичный 000011) 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Синхронизация доступа | TYP CMD RESRV | Размер пакета | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Адрес [1] | + - - + | Адрес [2] | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + ERROR_REPORT CMD = 0x000B (двоичный 001011) 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Синхронизация доступа | TYP CMD RESRV | Размер пакета | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Адрес для отчетности [1] | + - - + | По поводу адреса [2] | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Данные сообщения [1] | + - - + | Данные сообщения [2] | + - - + | Данные сообщения [3] | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + PROBLEM_REPORT CMD = 0x0010 Двоичный (010000) 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Синхронизация доступа | TYP CMD RESRV | Размер пакета | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Адрес для отчетности [1] | + - - + | По поводу адреса [2] | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Данные сообщения [1] | + - - + | Данные сообщения [2] | + - - + | Данные сообщения [3] | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + СООБЩЕНИЯ Тип сообщения = 0x02 (двоичный 10) Запросы на замену ACCESS_SYNCH_CODE 8PACKET_TYPE 2CMD 6PACKET_SIZE 16 [... PAYLOAD] REPLACEMENT CMD = 01 (двоичный 000001) 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Синхронизация доступа | TYP CMD | Размер пакета | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Многоадресный адрес [1] | + - - + | Последовательность № | | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + QUIET = 0x0002 (двоичный 000010) 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Синхронизация доступа | TYP CMD RESRV | Размер пакета | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Многоадресный адрес [1] | + - - + | Продолжительность # | | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + СООБЩЕНИЯ Тип сообщения = 0x03 (двоичный 11) Запросы туннелирования ACCESS_SYNCH_CODE 8PACKET_TYPE 2CMD 6PACKET_SIZE 16 [... PAYLOAD] REQUEST_TUNNEL CMD = 01 (двоичный 2 00000 1) 0 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Синхронизация доступа | TYP CMD | Размер пакета | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Адрес [1] | + - - + | Адрес [2] | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + LEAVE_TUNNEL = 0x0002 (двоичный 000010) 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Синхронизация доступа | TYP CMD RESRV | Размер пакета | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + | Адрес [1] | + - - + | Адрес [2] | + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +

Обращение

Существует четыре формы IP-адресации, каждая из которых имеет свои уникальные свойства.

  • Unicast: Наиболее распространенное понятие IP-адреса - это одноадресный адрес. Обычно это относится к одному отправителю или одному получателю.
  • Транслировать: Отправка данных во все возможные места назначения. Например, для отправки на все адреса в сети с префиксом 192.0.2 направленный широковещательный IP-адрес будет 192.0.2.255.
  • Многоадресная рассылка: Многоадресный адрес связан с группой заинтересованных получателей. В соответствии с RFC 3171, адреса с 224.0.0.0 по 239.255.255.255 обозначаются как многоадресные. Маршрутизаторы заботятся о создании копий дейтаграмм и отправке их всем получателям, которые зарегистрировали свою заинтересованность в получении целевых данных.
  • Anycast: Подобно широковещательной и многоадресной рассылке, anycast представляет собой топологию маршрутизации «один ко многим». Однако поток данных не передается на все приемники, а только на тот, который маршрутизатор определяет как «ближайший» в сети. Anycast полезен для балансировки нагрузки данных. Он используется в DNS и UDP.

Протоколы IP Multicast

Смотрите также