Структура сети Интернет. Базовые определения. Службы Интернет.
Протоколы. Протокол TCP/IP.
Интернет - это технология соединения
компьютерных сетей. Его разработку начали американские военные в 60-х годах ХХ
века. К тому времени уже существовали компьютерные сети и информационные
сетевые технологии, и основная задача, которая ставилась перед Интернет - это
обеспечение компьютерных сетевых коммуникаций
территориально распределенных узлов - компьютерных сетей - при нанесении
противником ударов по территории, в том числе и ядерных, при которых возникают
колоссальные разрушения инфраструктур.
На базе особых правил передачи данных, которые называются
сетевыми протоколами - TCP/IP (Transmission Control Protocol и Internet Protocol), в 1969 в Минобороны США
был завершен проект по совместному использованию ресурсов Минобороны, университетов
и других правительственных учреждений. Создаваемая система сначала называлась ARPANET - Advanced Research Projects Agency Net, затем, после гигантского разрастания по всему миру получил название Internet. Интернет - по замыслу и существу межсетевая система, система,
объединяющая компьютерные сети (по другим источникам первым протоколом сети был
NCP).
В 1971 году появилась первая программа для отправки
электронной почты.
В 1973 через трансатлантический кабель к сети подключились
первые иностранные государства – Норвегия и Великобритания.
В 70-х годах сеть в основном использовалась для отправки
электронной почты, использовались также доски объявлений и новостные группы.
В 1984 году разработана система доменных имен (DNS), а также появилась сеть FIDO. С этого года начинает
активное развитие сеть NSFNet (National Science Foundation Network) – сеть Национального
научного фонда США.
В 1988 году изобретен протокол IRC – появились первые чаты.
В 1989 году в стенах CERN (Швейцария) родилась идея Всемирной
паутины. Ее предложил британец Тим Бернерс-Ли, который в течении двух лет
разработал протокол HTTP, язык HTML и идентификаторы URL.
В 1990 году ARPANET прекратила свое существование проиграв конкуренцию NSFNet.
В 1991 году WWW стала общедоступной в Интернет.
В 1995 году маршрутизацией сети стали заниматься сетевые
провайдеры, а не суперкомпьютеры Национального научного фонда США. В этом же
году по трафику HTTP обогнал FTP, став основным поставщиком информации в Интернет.
В 90-е годы Интернет объединил в себе большинство сетей, за
исключением пожалуй FIDOnet, а также закрытых
специализированных сетей.
В СССР Интернет стал зарождаться с 1952 года благодаря
работам ИТМиВТ АН СССР в рамкам работ по созданию автоматизированной системы
противоракетной обороны. Сеть использовалась для расчета траекторий полета
ракет (также это можно назвать и одной из первых GRID - сетей). С 1972 года работала единая сеть передачи данных в рамках
кассовых операций АСУ «Экспресс» в Министерстве путей и сообщений. Выход во
всемирную среду осуществился 28.08.1990 благодаря Институту атомной энергетики
им. Курчатова и ИПК «Минавтопрома». Домен “ru” зарегистрирован в 1994 году (до этого был su – Soviet Union, который существует до сих
пор).
Интернет состоит из многих тысяч
корпоративных, научных, правительственных и домашних компьютерных сетей.
Объединение сетей разной архитектуры и топологии стало возможно благодаря
протоколу IP (англ. Internet Protocol)
и принципу маршрутизации пакетов данных. В настоящий момент (2010 год) в сети
насчитывается 234 миллиона сайтов.
Компьютер
пользователя с помощью линии связи подключается к компьютеру провайдера,
который, в свою очередь подключен к другому компьютеру сети и т.д. Информация в
сети хранится как на компьютерах провайдера, так и на специальных компьютерах,
которые называются информационными серверами. Компьютеры, к которым подключаются
многие другие компьютеры называют серверами. Провайдером называется
организация, через которую рядовые компьютеры подключаются к глобальной сети.
Рисунок 1. Структура сети Интернет
Отличительной особенностью сети Интернет является высокая надежность:
при выходе из строя части компьютеров и линий связи сеть будет продолжать
функционировать и будет передавать сообщения по другим линиям связи. Такая
надежность обеспечивается тем, что в Интернет нет единого центра управления. Организации,
соединенные друг с другом самыми скоростными линиями связи, образуют базовую
часть сети или хребет. Если провайдер подключен непосредственно к
хребту, то скорость передачи информации пользователям будет максимальной. Провайдеры
могут быть мелкими и крупными. В действительности разница между пользователями
и провайдерами достаточно условна. Любой пользователь может предоставить услуги
подключения к сети другим пользователям.
Типы адресов: физический
(MAC-адрес), сетевой (IP-адрес) и символьный (DNS-имя)
Каждый компьютер в сети
TCP/IP имеет адреса трех уровней:
·
Локальный адрес узла, определяемый технологией, с помощью которой
построена отдельная сеть, в которую входит данный узел. Для узлов, входящих в
локальные сети - это МАС-адрес сетевого адаптера или порта маршрутизатора,
например, 11-А0-17-3D-BC-01. Эти адреса назначаются производителями
оборудования и являются уникальными адресами, так как управляются
централизовано. Для всех существующих технологий локальных сетей МАС-адрес
имеет формат 6 байтов: старшие 3 байта - идентификатор фирмы производителя, а
младшие 3 байта назначаются уникальным образом самим производителем. Для узлов,
входящих в глобальные сети, такие как Х.25 или frame relay, локальный адрес
назначается администратором глобальной сети;
·
IP-адрес, состоящий из 4 байт, например, 109.26.17.100. Этот
адрес используется на сетевом уровне. Он назначается администратором во время
конфигурирования компьютеров и маршрутизаторов. IP-адрес состоит из двух
частей: номера сети и номера узла. Номер сети может быть выбран администратором
произвольно, либо назначен по рекомендации специального подразделения Internet
(Network Information Center, NIC), если сеть должна работать как составная
часть Internet. Обычно провайдеры услуг Internet получают диапазоны адресов у
подразделений NIC, а затем распределяют их между своими абонентами;
·
DNS адрес (Domain Name Service)
- это имя хоста, например (www.rambler.ru в глобальной сети или \\Zeus в
локальной). Основой DNS является представление об иерархической
структуре доменного имени и зонах. Каждый сервер, отвечающий за имя,
может делегировать ответственность за дальнейшую часть домена другому
серверу (с административной точки зрения - другой организации или человеку),
что позволяет возложить ответственность за актуальность информации на сервера
различных организаций (людей), отвечающих только за "свою" часть
доменного имени. DNS важна для работы Интернета, так как для соединения с узлом
необходима информация о его IP-адресе, а для людей проще запоминать буквенные
(обычно осмысленные) адреса, чем последовательность цифр IP-адреса. В некоторых
случаях это позволяет использовать виртуальные серверы, например, HTTP-серверы,
различая их по имени запроса. Первоначально преобразование между доменными и
IP-адресами производилось с использованием специального текстового файла HOSTS,
который составлялся централизованно и обновлялся на каждой из машин сети
вручную. С ростом Сети возникла необходимость в эффективном, автоматизированном
механизме, которым и стала DNS. DNS была разработана П. Мокапетрисом в 1983
году; оригинальное описание механизмов работы описано в RFC 882 и RFC 883. В
1987 публикация RFC 1034 и RFC 1035 изменили спецификацию DNS и отменили RFC
882 и RFC 883 как устаревшие. Некоторые новые RFC дополнили и расширили
возможности базовых протоколов.
Пример: для адреса ru.wikipedia.org , домен
первого уровня – org, домен второго – wikipedia, домен третьего – ru.
Ниже
приводятся несколько примеров доменов:
com
коммерческая организация США
edu
образовательные учреждения
gov
правительственные учреждения США
mil
военные организации и учреждения США
org
частные организации США
net
сети
Домены
также часто включают код страны (если сервер расположен за пределами США). Ниже
приведено несколько примеров.
ca
Канада
br
Бразилия
jp
Япония
au
Австралия
gr
Германия
ru
Россия
su
страны СНГ, включая и Россию
Телеконференции(USENET)
Эта служба работает примерно также, как электронная
почта, но получаемые письма доступны для общего обозрения. Для удобства дискуссий
образованы группы. Дискуссии в группах ведутся по определенной теме. Чтобы
стать членом такой группы, пользователю необходимо подписаться на данную
конференцию у своего провайдера. Часто можно найти ответы на свои вопросы,
подключившись к нужной группе и попросив совета у ее участников.
FTP(File Transfer Protocol)
С помощью этого сервиса сети можно “перекачивать”
файлы с другого компьютера на ваш компьютер. Эти компьютеры называются FTP –
серверами. На них хранятся огромные архивы файлов. Этот сервис является одним
из основных способов распространения бесплатных программ, а также различных
дополнений и исправлений к коммерческим версиям программ.
FTP-протокол передачи файлов позволяет компьютерам
перемещать копию нужного файла на свои компьютеры или в свои локальные системы.
Gopher(суслик)
Эта система вложенных меню, разветвленных, как норы
суслика, была прообразом Всемирной паутины. Gopher – меню ресурсов Internet, в
которых можно отыскать нужную вам информацию. Но так как ходить по паутине
значительно удобнее, чем ползать по норам суслика, в настоящее время эта
система постепенно отмирает.
Internet Relay Chat (IRC)
Беседы через Internet в реальном времени. Сервис похож
на телеконференции. Отличие заключается в том, что вы переговариваетесь с группой
пользователей без задержек, подобно разговору людей, собравшихся в одном
помещении.
Telnet
Этот сервис позволяет управлять с вашего компьютера
работой другого компьютера. Ваш компьютер является удаленным терминалом этого
другого компьютера. Удаленный терминал отличается тем, что не выполняет
собственные вычисления. Все, что вводится на вашей клавиатуре, передается
удаленному компьютеру, а получаемые результаты передаются обратно и выводятся
на ваш монитор. На удаленных компьютерах, как правило, установлена операционная
система UNIX. Поэтому знание основных команд этой операционной системы
обязательно для пользователя. С появлением графических операционных систем,
таких, как Windows, командный режим работы стал менее популярен, и сервис
Telnet в последнее время большинство пользователей не применяют.
Для работы с WWW используется специальный протокол
НТТР (Hyper Text Transfer Protocol) – Протокол передачи гипертекста. Cервис
WWW называют Всемирной паутиной.
Гипертекстовые документы создаются с помощью
специального языка HTML (Hyper Text Markup Language) – языка разметки
гипертекста.
В модели OSI, называемой
также моделью взаимодействия открытых систем (Open Systems Interconnection -
OSI) и разработанной Международной Организацией по Стандартам (International
Organization for Standardization - ISO), средства сетевого взаимодействия делятся
на семь уровней, для которых определены стандартные названия и функции.
Сетевой уровень занимает в
модели OSI промежуточное положение: к его услугам обращаются протоколы
прикладного уровня, сеансового уровня и уровня представления. Для выполнения
своих функций сетевой уровень вызывает функции канального уровня, который в
свою очередь обращается к средствам физического уровня.
Рассмотрим коротко основные
функции уровней модели OSI.
·
Физический уровень выполняет передачу битов по физическим
каналам, таким, как коаксиальный кабель, витая пара или оптоволоконный кабель.
На этом уровне определяются характеристики физических сред передачи данных и
параметров электрических сигналов.
·
Канальный уровень обеспечивает передачу кадра данных между
любыми узлами в сетях с типовой топологией либо между двумя соседними узлами в
сетях с произвольной топологией. В протоколах канального уровня заложена
определенная структура связей между компьютерами и способы их адресации.
Адреса, используемые на канальном уровне в локальных сетях, часто называют
МАС-адресами.
·
Сетевой уровень обеспечивает доставку данных между любыми
двумя узлами в сети с произвольной топологией, при этом он не берет на себя
никаких обязательств по надежности передачи данных.
·
Транспортный уровень обеспечивает передачу данных между
любыми узлами сети с требуемым уровнем надежности. Для этого на транспортном
уровне имеются средства установления соединения, нумерации, буферизации и
упорядочивания пакетов.
·
Сеансовый уровень предоставляет средства управления диалогом,
позволяющие фиксировать, какая из взаимодействующих сторон является активной в
настоящий момент, а также предоставляет средства синхронизации в рамках
процедуры обмена сообщениями.
·
Уровень представления. В отличии от нижележащих уровней,
которые имеют дело с надежной и эффективной передачей битов от отправителя к
получателю, уровень представления имеет дело с внешним представлением данных.
На этом уровне могут выполняться различные виды преобразования данных, такие
как компрессия и декомпрессия, шифровка и дешифровка данных.
·
Прикладной уровень - это в сущности набор разнообразных
сетевых сервисов, предоставляемых конечным пользователям и приложениям.
Примерами таких сервисов являются, например, электронная почта, передача
файлов, подключение удаленных терминалов к компьютеру по сети.
При построении
транспортной подсистемы наибольший интерес представляют функции физического,
канального и сетевого уровней, тесно связанные с используемым в данной сети
оборудованием: сетевыми адаптерами, концентраторами, мостами, коммутаторами,
маршрутизаторами. Функции прикладного и сеансового уровней, а также уровня
представления реализуются операционными системами и системными приложениями
конечных узлов. Транспортный уровень выступает посредником между этими двумя
группами протоколов.
Отметим, что
модель OSI является теоретической, и содержит достаточно много недоработок.
Были попытки строить сети в точном соответствии с моделью OSI, но созданные
таким образом сети были дорогими, ненадёжными и неудобными в эксплуатации.
Реальные сетевые протоколы, используемые в существующих сетях, вынуждены
отклоняться от неё, обеспечивая непредусмотренные возможности, поэтому привязка
некоторых из них к уровням OSI является несколько условной: некоторые протоколы
занимают несколько уровней модели OSI, функции обеспечения надёжности
реализованы на нескольких уровнях модели OSI.
Основная недоработка OSI — непродуманный транспортный уровень. На нём OSI
позволяет осуществлять обмен данными между приложениями (вводя понятие порта —
идентификатора приложения), однако, возможность обмена простыми датаграммами
(по типу UDP) в OSI не предусмотрена — транспортный уровень должен образовывать
соединения, обеспечивать доставку, управлять потоком и т. п. (по типу TCP).
Реальные же протоколы реализуют такую возможность.
Transmission
Control Protocol/Internet Protocol (TCP/IP) - это промышленный стандарт стека
протоколов, разработанный для глобальных сетей. Стандарты TCP/IP опубликованы в
серии документов, названных Request for Comment (RFC). Документы RFC описывают
внутреннюю работу сети Internet. Некоторые RFC описывают сетевые сервисы или
протоколы и их реализацию, в то время как другие обобщают условия применения.
Стандарты TCP/IP всегда публикуются в виде документов RFC, но не все RFC
определяют стандарты.
Стек был
разработан по инициативе Министерства обороны США (Department of Defence, DoD)
более 20 лет назад для связи экспериментальной сети ARPAnet с другими
сателлитными сетями как набор общих протоколов для разнородной вычислительной
среды. Сеть ARPA поддерживала разработчиков и исследователей в военных областях.
В сети ARPA связь между двумя компьютерами осуществлялась с использованием
протокола Internet Protocol (IP), который и по сей день является одним из
основных в стеке TCP/IP и фигурирует в названии стека.
Большой вклад в
развитие стека TCP/IP внес университет Беркли, реализовав протоколы стека в
своей версии ОС UNIX. Широкое распространение ОС UNIX привело и к широкому распространению
протокола IP и других протоколов стека. На этом же стеке работает всемирная
информационная сеть Интернет, чье подразделение Internet Engineering Task Force
(IETF) вносит основной вклад в совершенствование стандартов стека, публикуемых
в форме спецификаций RFC.
Лидирующая роль
стека TCP/IP объясняется следующими его свойствами:
·
это наиболее завершенный стандартный и в то же время
популярный стек сетевых протоколов, имеющий многолетнюю историю;
·
почти все большие сети передают основную часть своего трафика
с помощью протокола TCP/IP;
·
это метод получения доступа к сети Интернет;
·
этот стек служит основой для создания Интернет -
корпоративной сети, использующей транспортные услуги Интернет и гипертекстовую
технологию WWW, разработанную в Интернет;
·
все современные операционные системы поддерживают стек
TCP/IP;
·
это гибкая технология для соединения разнородных систем как
на уровне транспортных подсистем, так и на уровне прикладных сервисов;
·
это устойчивая масштабируемая межплатформенная среда для
приложений клиент-сервер.
Так как стек
TCP/IP был разработан до появления модели взаимодействия открытых систем
ISO/OSI, то, хотя он также имеет многоуровневую структуру, соответствие уровней
стека TCP/IP уровням модели OSI достаточно условно.
Структура протоколов TCP/IP
приведена на рисунке 2.1. Протоколы TCP/IP делятся на 4 уровня.
Рис. 2.1. Стек TCP/IP
Самый нижний
(уровень IV) соответствует физическому и канальному уровням модели OSI. Этот
уровень в протоколах TCP/IP не регламентируется, но поддерживает все популярные
стандарты физического и канального уровня: для локальных сетей это Ethernet,
Token Ring, FDDI, Fast Ethernet, 100VG-AnyLAN, для глобальных сетей - протоколы
соединений "точка-точка" SLIP и PPP, протоколы территориальных сетей
с коммутацией пакетов X.25, frame relay. Разработана также специальная
спецификация, определяющая использование технологии ATM в качестве транспорта
канального уровня. Обычно при появлении новой технологии локальных или
глобальных сетей она быстро включается в стек TCP/IP за счет разработки
соответствующего RFC, определяющего метод инкапсуляции пакетов IP в ее кадры.
Следующий
уровень (уровень III) - это уровень межсетевого взаимодействия, который занимается
передачей пакетов с использованием различных транспортных технологий локальных
сетей, территориальных сетей, линий специальной связи и т. п.
В качестве основного
протокола сетевого уровня (в терминах модели OSI) в стеке используется протокол
IP, который изначально проектировался как протокол передачи пакетов в составных
сетях, состоящих из большого количества локальных сетей, объединенных как
локальными, так и глобальными связями. Поэтому протокол IP хорошо работает в
сетях со сложной топологией, рационально используя наличие в них подсистем и
экономно расходуя пропускную способность низкоскоростных линий связи. Протокол
IP является дейтаграммным протоколом, то есть он не гарантирует доставку
пакетов до узла назначения, но старается это сделать.
К уровню
межсетевого взаимодействия относятся и все протоколы, связанные с составлением
и модификацией таблиц маршрутизации, такие как протоколы сбора маршрутной информации
RIP (Routing Internet Protocol) и OSPF (Open Shortest Path First), а также
протокол межсетевых управляющих сообщений ICMP (Internet Control Message
Protocol). Последний протокол предназначен для обмена информацией об ошибках
между маршрутизаторами сети и узлом - источником пакета. С помощью специальных
пакетов ICMP сообщается о невозможности доставки пакета, о превышении времени
жизни или продолжительности сборки пакета из фрагментов, об аномальных величинах
параметров, об изменении маршрута пересылки и типа обслуживания, о состоянии
системы и т.п.
Следующий
уровень (уровень II) называется основным. На этом уровне функционируют протокол
управления передачей TCP (Transmission Control Protocol) и протокол дейтаграмм
пользователя UDP (User Datagram Protocol). Протокол TCP обеспечивает надежную
передачу сообщений между удаленными прикладными процессами за счет образования
виртуальных соединений. Протокол UDP обеспечивает передачу прикладных пакетов
дейтаграммным способом, как и IP, и выполняет только функции связующего звена
между сетевым протоколом и многочисленными прикладными процессами.
Верхний уровень
(уровень I) называется прикладным. За долгие годы использования в сетях
различных стран и организаций стек TCP/IP накопил большое количество протоколов
и сервисов прикладного уровня. К ним относятся такие широко используемые
протоколы, как протокол копирования файлов FTP, протокол эмуляции терминала
telnet, почтовый протокол SMTP, используемый в электронной почте сети Internet,
гипертекстовые сервисы доступа к удаленной информации, такие как WWW и многие
другие. Остановимся несколько подробнее на некоторых из них.
Протокол
пересылки файлов FTP (File Transfer Protocol) реализует удаленный доступ к
файлу. Для того, чтобы обеспечить надежную передачу, FTP использует в качестве
транспорта протокол с установлением соединений - TCP. Кроме пересылки файлов
протокол FTP предлагает и другие услуги. Так, пользователю предоставляется возможность
интерактивной работы с удаленной машиной, например, он может распечатать
содержимое ее каталогов. Наконец, FTP выполняет аутентификацию пользователей.
Прежде, чем получить доступ к файлу, в соответствии с протоколом пользователи
должны сообщить свое имя и пароль. Для доступа к публичным каталогам
FTP-архивов Internet парольная аутентификация не требуется, и ее обходят за
счет использования для такого доступа предопределенного имени пользователя
Anonymous.
В стеке TCP/IP
протокол FTP предлагает наиболее широкий набор услуг для работы с файлами,
однако он является и самым сложным для программирования. Приложения, которым не
требуются все возможности FTP, могут использовать другой, более экономичный
протокол - простейший протокол пересылки файлов TFTP (Trivial File Transfer
Protocol). Этот протокол реализует только передачу файлов, причем в качестве
транспорта используется более простой, чем TCP, протокол без установления соединения
- UDP.
Протокол telnet
обеспечивает передачу потока байтов между процессами, а также между процессом и
терминалом. Наиболее часто этот протокол используется для эмуляции терминала
удаленного компьютера. При использовании сервиса telnet пользователь фактически
управляет удаленным компьютером так же, как и локальный пользователь, поэтому
такой вид доступа требует хорошей защиты. Поэтому серверы telnet всегда
используют как минимум аутентификацию по паролю, а иногда и более мощные средства
защиты, например, систему Kerberos.
Протокол SNMP
(Simple Network Management Protocol) используется для организации сетевого
управления. Изначально протокол SNMP был разработан для удаленного контроля и
управления маршрутизаторами Internet, которые традиционно часто называют также
шлюзами. С ростом популярности протокол SNMP стали применять и для управления
любым коммуникационным оборудованием - концентраторами, мостами, сетевыми
адаптерами и т.д. и т.п. Проблема управления в протоколе SNMP разделяется на
две задачи.
Первая задача
связана с передачей информации. Протоколы передачи управляющей информации
определяют процедуру взаимодействия SNMP-агента, работающего в управляемом
оборудовании, и SNMP-монитора, работающего на компьютере администратора,
который часто называют также консолью управления. Протоколы передачи определяют
форматы сообщений, которыми обмениваются агенты и монитор.
Вторая задача
связана с контролируемыми переменными, характеризующими состояние управляемого
устройства. Стандарты регламентируют, какие данные должны сохраняться и
накапливаться в устройствах, имена этих данных и синтаксис этих имен. В
стандарте SNMP определена спецификация информационной базы данных управления
сетью. Эта спецификация, известная как база данных MIB (Management Information
Base), определяет те элементы данных, которые управляемое устройство должно сохранять,
и допустимые операции над ними.
Протокол
IPv6 – это новая версия
протокола IP, которая
призвана решить проблему нехватки адресного пространства при использовании
предыдущей версии IPv4, за
счет увеличения длины адреса с 32 до 128 бит. В настоящее время (2009 год) уже
используется более чем в 2000 сетях по всему миру, но пока еще не получил
всеобщего распространения. Планируется плавная замена IPv4 на IPv6, за счет параллельной работы и
постепенного увеличения трафика через последний. Основная проблема замена –
значительная часть оборудования и программного обеспечения разработаны только
под IPv6.
В
качестве альтернативы IPv6 рассматривались
протоколы IPv7 (разработчик
Ullman), TUBA (Gallon), CATNIP, ENCAPS (Hinden), SIPP (Deering) и PIP (Fracis). В
1994 году SIPP
и
PIP слились послужив базой
для IPv6,
другое название которого IPng (IP next generation). Документом фиксирующем
IPv6 является спецификация RFC 1752 «The recommendation for the
IP Next Generation Protocol». В данной спецификации
определенны такие положения как:
·
масштабируемость: идентификация и определение
адресов как минимум 1012 конечных систем и 109
индивидуальных сетей;
·
топологическая гибкость: архитектура
маршрутизации и протокол должны работать в сетях различной топологии;
·
преемственность: обеспечение четкого плана
перехода с текущей версии IPv4;
·
автоматическое конфигурирование хостов и
маршрутизаторов;
·
и так далее.
В
результате работ в протоколе появились следующие нововведения:
·
упрощен стандартный заголовок IP – пакета;
·
расширено адресное пространство;
·
улучшение поддержки мобильных станций;
·
улучшена поддержка иерархической адресации и
агрегирования маршрутов;
·
введены механизмы аутентификации и шифрования на
уровне IP – пакетов;
·
изменено представление необязательных полей
заголовков и т.д.
Введение в протоколе IPv6 поля «Метка потока» позволяет значительно
упростить процедуру маршрутизации однородного потока пакетов. Поток - это
последовательность пакетов, посылаемых отправителем определённому адресату. При
этом предполагается, что все пакеты данного потока должны быть подвергнуты
определённой обработке. Характер данной обработки задаётся дополнительными
заголовками.
Допускается существование нескольких потоков между отправителем и
получателем. Метка потока присваивается узлом-отправителем путём генерации
псевдослучайного 20-битного числа. Все пакеты одного потока должны иметь
одинаковые заголовки, обрабатываемые маршрутизатором.
При получении первого пакета с меткой потока маршрутизатор анализирует
дополнительные заголовки, выполняет предписанные этими заголовками функции и
запоминает результаты обработки (адрес следующего узла, опции заголовка
переходов, перемещение адресов в заголовке маршрутизации и т. д.) в локальном
кэше. Ключом для такой записи является комбинация адреса источника и метки
потока. Последующие пакеты с той же комбинацией адреса источника и метки потока
обрабатываются с учётом информации кэша без детального анализа всех полей
заголовка.
Время жизни записи в кэше составляет не более 6 секунд, даже если пакеты
этого потока продолжают поступать. При обнулении записи в кэше и получении
следующего пакета потока, пакет обрабатывается в обычном режиме и для него
происходит новое формирование записи в кэше. Следует отметить, что указанное
время жизни потока может быть явно определено узлом отправителем с помощью
протокола управления или опций заголовка переходов, и может превышать 6 секунд.
Рисунок 2. Структура заголовка IPv6
Рисунок 3. Структура заголовка IPv4
Приоритезация пакетов обеспечивается маршрутизаторами на основе поля приоритета.
Данное 4-битное поле содержит код требуемого приоритета.
Существуют различные типы адресов IPv6: одноадресные (Unicast), групповые
(Anycast) и многоадресные (Multicast). Адреса типа Unicast хорошо известны.
Пакет, посланный на такой адрес, достигает в точности интерфейса, который этому
адресу соответствует.
Адреса типа Anycast синтаксически неотличимы от адресов Unicast, но они
адресуют группу интерфейсов. Пакет, направленный такому адресу, попадёт в
ближайший (согласно метрике маршрутизатора) интерфейс. Адреса Anycast могут
использоваться только маршрутизаторами.
Адреса типа Multicast идентифицируют группу интерфейсов. Пакет, посланный
на такой адрес, достигнет всех интерфейсов, привязанных к группе многоадресного
вещания.
Широковещательные адреса IPv4 (обычно xxx.xxx.xxx.255) выражаются
адресами многоадресного вещания IPv6.
Адреса IPv6 отображаются как 8 групп шестнадцатеричных цифр, разделенных
двоеточием. Например, 7628:0d18:11a3:09d7:1f34:8a2e:07a0:765d.
Если одна или более групп подряд равны 0000, то они могут быть опущены и
заменены на двойное двоеточие (::). Например,
7628:0000:0000:0000:0000:0000:ae21:ad12 может быть сокращен до 7628::ae21:ad12,
или 0000:0000:0000:0000:0000:0000:ae21:ad12 может быть сокращен
до ::ae21:ad12. Сокращению не могут быть подвергнуты 2 разделенные нулевые
группы из-за возникновения неоднозначности.
Литература:
Вопросы для самопроверки:
1.
Что такое протокол без подтверждения прихода пакета?
2.
Возможно ли реализовать видеоконференцию с помощью
протокола TCP?
3.
Чем отличается FTP от SSL?
4.
Возможно ли существование двух одинаковых IP – адресов?
Двух одинаковых MAC – адресов?
5.
Где находится Mozilla Firefox в стеке
протоколов?