Многоадресные транспортные протоколы
Встраивая поддержку многоадресной IP-передачи (multicast) в последние версии своих продуктов, ведущие производители маршрутизаторов и коммутаторов высокого уровня заложили основы нового поколения приложений, предоставляющих возможности многоадресной передачи. Многоадресная IP-передача идеально подходит для тех случаев, когда необходимо направлять информацию из одного или нескольких источников многим адресатам; трафик, исходящий из одного источника, будет тиражироваться по мере его прохождения по сети, причем каждый адресат получит свою собственную копию потока данных. Используя ресурсы сети и сервера, можно доставлять данные одновременно многим получателям так же эффективно, как и одному.
Различные аспекты многоадресности
Большинство пользователей не задумываясь связывают многоадресность с потоковыми мультимедийными приложениями реального времени, такими как настольное видео, видеоконференцсвязь и аудио по Internet. Для работы сложных приложений необходима сеть, предоставляющая определенное качество сервиса. Это означает, что нужно обеспечить неизменность задержки и гарантированную пропускную способность для передачи потока в реальном времени. Но для таких приложений не требуется 100-процентная надежность сквозной передачи, поскольку потеря нескольких пакетов в аудио- и видеопотоке, не вызывающая ухудшения качества, считается приемлемой.
С многоадресными приложениями, для которых требуется 100-процентная надежность сквозной передачи, многие знакомы хуже, чем с потоковыми системами. К ним относятся совместные вычисления и передача информационных потоков в реальном времени и распространение больших объемов информации. Чтобы удовлетворить потребности таких приложений, не поддерживаемых существующими транспортными и сервисными протоколами TCP/IP, разрабатываются новые надежные протоколы многоадресной передачи.
В ближайшие год-два будут определены и приняты в качестве стандартов надежные многоадресные протоколы, удовлетворяющие потребности каждого отдельного класса приложений.
Многие распространенные одноадресные приложения, такие как File Tranfer Protocol (FTP), telnet и Web-браузеры, работают на основе протокола ТСР. Он обеспечивает надежную адресную доставку через прямые IP-соединения. Однако использование ТСР-транспорта для передачи данных из одного источника по многим адресам неэффективно, поскольку для каждого получателя требуется отдельное ТСР-соединение с источником, что требует значительных сетевых и серверных ресурсов.
Многоадресные IP-приложения, в отличие от одноадресных, работают под управлением протокола User Datagram Protocol (UDP), который достаточно просто обеспечивает наилучшую доставку пакета к конкретному порту и, к тому же, способен выявлять в пакете ошибки. Однако UDP не гарантирует 100-процентной доставки каждого пакета, необходимой, например, для систем распространения ПО. Он предоставляет лишь минимальный уровень сервиса, поэтому в многоадресном приложении любую специализированную транспортную функцию, в том числе и надежность, приходится обеспечивать на более высоком уровне, чем в протоколе UDP.
Обобщенный многоадресный протокол TCP сможет решить эти проблемы и обеспечить надежную упорядоченную доставку информации из одного источника многим адресатам. В принципе, можно было бы разработать единый протокол для управления любыми надежными многоадресными приложениями, но скорее всего, для новых классов надежных многоадресных приложений будет создано несколько различных протоколов. В конце прошлого года комитет IETF обратился к исследовательской группе Internet Research Task Force с просьбой взять на себя руководство разработкой стандартов Internet для надежной многоадресной передачи. Необходимо разработать хорошо отлаженные и эффективные протоколы для приложений каждого класса, а не единый обобщенный универсальный протокол, не обеспечивающий эффективной работы. Подобные специализированные многоадресные протоколы должны учитывать специфические требования каждого многоадресного приложения - в зависимости от топологии, масштаба, типа распространяемой информации и необходимости доставки в реальном времени.
Надежные многоадресные приложения
Рассмотрим в качестве примера совместные вычисления. Для их выполнения потребуется многоадресное приложение, обеспечивающее обмен информацией между многими участниками, причем их число даже в больших сеансах, скорее всего, не превышает 50 человек. В подобных приложениях требуется надежная доставка таких данных, как движения курсора по общей электронной "доске" или сигналы джойстика в интерактивных играх. Поскольку эти приложения работают в реальном времени, данные должны надежно доставляться в течение ограниченного времени.
Еще один класс надежных многоадресных приложений - передача в реальном времени данных о курсах акций и новостей - предъявляет другие требования. При этом последовательность дискретных сообщений передается тысячам получателей. Для обеспечения данными в реальном времени может потребоваться надежная, однако не обязательно упорядоченная доставка.
Другим классом надежных многоадресных приложений является многоадресное распространение файлов. Это приложение типа "один источник - много адресатов" может охватывать многие тысячи получателей. В отличие от совместных вычислений и доставки данных в реальном времени передача файлов не относится к приложениям реального времени. Поскольку здесь не требуется соблюдать определенный временной интервал, для повторной передачи потерянных пакетов можно применить более эффективный метод. Вместо того чтобы непрерывно посылать отправителю запросы на повторную передачу, как это происходит в приложении реального времени, при передаче файлов получатели могут не посылать свои запросы на повторную передачу до тех пор, пока от отправителя не поступит приглашение. Это помогает предотвратить резкий рост числа запросов на повторную передачу от многих адресатов одному отправителю.
Корпорация StarBurst Communications разработала надежный многоадресный FTP-протокол (MFTP), в котором используется данная схема. Совместно с компанией Cisco Systems она представила соответствующую спецификацию в комитет IETF в качестве проекта нового стандарта.
Многоадресная IP-передача сулит существенное снижение требований к пропускной способности, поэтому важно, чтобы сетевые администраторы имели представление об этой относительно новой технологии и были в курсе разработок протоколов для надежной многоадресной передачи.
Стефен Коллинз (Stephen Collins) - вице-президент по маркетингу и бизнес-разработкам корпорации StarBurst Communications, разработчика продуктов для многоадресной передачи данных (Конкорд, шт. Массачусетс). Его адрес электронной почты scollins@starburst.com.
Многоадресные транспортные протоколы
Требования |
|||||
Класс приложения | Соединения "один-много" | Соединения "много-много" | Надежная доставка | Упорядоченная доставка | Протокол |
Распространение данных в реальном времени | + | - | Зависит от конкретного приложения | Зависит от конкретного приложения | Официально ничего не предложено |
Совместные вычисления в реальном времени | - | + | + | + | Scalable Reliable Multicast (протокол Mbone) |
Многоадресное распространение файлов | + | - | + | Н/п | Проект для Internet, представленный в IETF компаниями Cisco и StarBurst |
Различные требования многоадресных приложений обуславливают необходимость в разработке нескольких протоколов многоадресной передачи.