CISCO IOS. Протоколы транспортного уровня
Выбери формат для чтения
Загружаем конспект в формате pdf
Это займет всего пару минут! А пока ты можешь прочитать работу в формате Word 👇
ЛЕКЦИЯ
CISCO IOS. ПРОТОКОЛЫ ТРАНСПОРТНОГО УРОВНЯ
Cisco IOS. Файлы Bootset. Процесс загрузки маршрутизатора. Вывод
данных
команды
show
version. Настройка
маршрутизатора
Cisco.
Настройка исходных параметров. Действия по настройке параметров
маршрутизатора.
Настройка
интерфейсов. Настройка
интерфейсов
LAN. Проверка конфигурации интерфейса. Настройка параметров шлюза по
умолчанию. Использование шлюза по умолчанию на узле. Использование
шлюза по умолчанию на коммутаторе. Упражнение для выполнения: чтение
схемы. Транспортный уровень. Работа в аудитории: игра «Испорченный
телефон». Протоколы транспортного уровня. Передача данных. Значение
транспортного уровня. Мультиплексирование сеансов связи. Надёжность
транспортного уровня. Протокол TCP. Протокол UDP. Соответствующий
протокол транспортного уровня для соответствующего приложения.
1
Cisco IOS
Рабочие характеристики системы Cisco IOS отличаются в зависимости
от использования различных межсетевых устройств, их предназначения и
набора функций. Тем не менее, система Cisco IOS для маршрутизаторов
обеспечивает следующие возможности.
− Адресация
− Интерфейсы
− Маршрутизация
− Безопасность
− QoS
− Управление ресурсами
Размер самого файла IOS составляет несколько мегабайт, и, как и в
случае с коммутаторами Cisco IOS, этот файл хранится во флеш-памяти.
Использование флеш-памяти позволяет обновлять систему IOS до новых
версий или расширять её функции. Во время загрузки IOS копируется из
флеш-памяти в ОЗУ. Динамическое ОЗУ (DRAM) работает значительно
быстрее, чем флеш-память; следовательно, копирование IOS в ОЗУ
повышает производительность устройства.
Файлы Bootset
Как показано на рисунке, при загрузке маршрутизатора в ОЗУ
добавляются следующие два файла.
Файл образа IOS: система IOS упрощает общую работу компонентов
оборудования устройства. Образ IOS хранится во флеш-памяти.
Файл загрузочной конфигурации: содержит команды, используемые
для начальной настройки маршрутизатора и создания файла текущей
конфигурации, который хранится в ОЗУ. Файл загрузочной конфигурации
хранится в энергонезависимом ОЗУ (NVRAM). Все изменения конфигурации
2
сохраняются в файл текущей конфигурации и незамедлительно внедряются
системой IOS.
Текущая конфигурация изменяется в том случае, когда сетевой
администратор выполняет настройку устройства. После изменения файла
running-config его необходимо сохранить в энергонезависимую память
NVRAM в виде файла загрузочной конфигурации — на случай, если
маршрутизатор будет перезагружен или отключён от сети.
Процесс загрузки маршрутизатора
На рис. 1 показаны три основных этапа загрузки.
1. Выполнение самотестирования при включении питания (POST) и
запуск программы начальной загрузки.
2. Поиск и загрузка программного обеспечения Cisco IOS.
3. Поиск и загрузка файла загрузочной конфигурации или переход в
режим настройки.
Рисунок 1 − Три основных этапа загрузки.
1. Выполнение самотестирования при включении питания (POST)
и запуск программы начальной загрузки (рис. 2)
3
Рисунок 2 − Выполнение самотестирования при включении питания
(POST) и запуск программы начальной загрузки
Самотестирование при включении питания (POST) — это процесс,
который выполняется практически на любом компьютере во время загрузки.
Процесс
POST
служит
для
тестирования
аппаратного
обеспечения
маршрутизатора. При включении питания маршрутизатора программа в чипе
ПЗУ выполняет процесс POST. Во время самотестирования маршрутизатор
из ПЗУ выполняет диагностические процедуры на нескольких компонентах
аппаратного обеспечения, включая использование ЦП, ОЗУ и NVRAM.
После завершения процедуры POST маршрутизатор запускает программу
начальной загрузки.
После выполнения самотестирования POST программа начальной
загрузки копируется из ПЗУ в ОЗУ. После копирования в ОЗУ центральный
процессор выполняет инструкции программы начальной загрузки. Основная
цель программы начальной загрузки — найти систему Cisco IOS и загрузить
её в ОЗУ.
2. Поиск и загрузка Cisco IOS (рис. 3)
4
Рисунок 3 − Поиск и загрузка Cisco IOS
Как правило, система IOS хранится во флеш-памяти и копируется в
ОЗУ для выполнения центральным процессором. Вовремя самораспаковки
файла образа IOS отображается линия символов «решётка» (#).
Если образ IOS во флеш-памяти не обнаружен, маршрутизатор может
попытаться найти его с помощью сервера TFTP. Если полный образ системы
IOS обнаружить не удастся, тогда из ПЗУ в ОЗУ будет скопирована её
сокращённая версия. Эта версия IOS предназначена для диагностики проблем
и может быть использована для загрузки полной версии IOS в ОЗУ.
3. Поиск и загрузка файла конфигурации (рис. 4)
5
Рисунок 4 − Поиск и загрузка файла конфигурации
Затем
программа
начальной
загрузки
начинает
поиск
файла
загрузочной конфигурации (который также называется startup-config) в
памяти NVRAM. В этом файле находятся ранее сохранённые команды и
параметры конфигурации. Если этот файл найден, он копируется в ОЗУ как
файл текущей конфигурации, running-config. Файл running-config содержит
адреса интерфейса, запускает процессы маршрутизации, настраивает пароли
маршрутизатора и указывает другие характеристики маршрутизатора.
Если
файл
running-config
в
памяти
NVRAM
отсутствует,
маршрутизатор может попытаться найти сервер упрощённого протокола
передачи файлов (TFTP). Если маршрутизатор обнаружит наличие активного
подключения к другому настроенному маршрутизатору, он отправит
широковещательный запрос для поиска файла конфигурации в активном
канале.
Если сервер TFTP не найден, маршрутизатор отобразит окно режима
настройки. Режим настройки — это серия вопросов, на которые должен
ответить пользователь, чтобы предоставить информацию об основной
конфигурации. Режим настройки не предназначен для ввода сложных
параметров
маршрутизатора,
и
он
редко
используется
сетевыми
администраторами.
6
Вывод данных команды show version
Команда show version позволяет проверить некоторые основные
средства программно-аппаратного обеспечения маршрутизатора, а также
устранить связанные с ними неполадки. Эта команда отображает версию
системы Cisco IOS, которая используется на маршрутизаторе в настоящий
момент, а также версию программы начальной загрузки и информацию о
конфигурации оборудования, включая количество системной памяти.
После выполнения команды show version выводятся следующие
выходные данные.
Версия IOS — версия операционной системы Cisco в ОЗУ,
используемой маршрутизатором.
Программа начальной загрузки ПЗУ: отображает версию программы
начальной загрузки системы, хранящейся в ПЗУ, которая первоначально
использовалась для загрузки маршрутизатора.
Расположение системы IOS: отображает место расположения и
загрузки программы начальной загрузки системы Cisco IOS, а также полное
имя файла образа IOS.
ЦП и количество ОЗУ: в первой части этой строки указывается тип
центрального процессора, установленного на маршрутизаторе. Последняя
часть этой строки отображает количество динамической оперативной памяти
(DRAM). Маршрутизаторы некоторых серий, например, Cisco 1941 ISR,
используют часть памяти DRAM в качестве памяти пакетов. Память пакетов
используется для их буферизации. Чтобы определить общее количество
памяти DRAM на маршрутизаторе, необходимо сложить оба значения.
Интерфейсы
—
информация
о
физических
интерфейсах
маршрутизатора. В этом примере маршрутизатор Cisco 1941 ISR имеет два
интерфейса Gigabit Ethernet и два низкоскоростных последовательных
интерфейса.
7
Количество памяти NVRAM и флеш-памяти — это количество памяти
NVRAM и флеш-памяти, доступной на маршрутизаторе. Память NVRAM
используется для хранения файла startup-config, а флеш-память используется
для постоянного хранения системы Cisco IOS.
В последней строке команды show version отображается текущее
настроенное
значение
конфигурационного
регистра
программы
в
шестнадцатеричном формате. Если в скобках отображается второе значение,
оно
указывает
на
значение
конфигурационного
регистра,
которое
используется во время следующей загрузки.
Конфигурационный регистр используется в нескольких случаях,
включая
восстановление
пароля.
По
умолчанию
производитель
устанавливает 0x2102 в качестве значения конфигурационного регистра. Это
значение указывает, что маршрутизатор будет пытаться загрузить образ
системы Cisco IOS из флеш-памяти, а файл загрузочной конфигурации — из
памяти NVRAM.
Настройка маршрутизатора Cisco
Настройка исходных параметров
Действия по настройке параметров маршрутизатора
Маршрутизаторы
и
коммутаторы
Cisco
имеют
много
общих
особенностей. Они поддерживают похожие модульные операционные
системы, используют подобные структуры команд и поддерживают
множество идентичных команд. Кроме того, при внедрении этих двух
устройств в сеть выполняются одинаковые настройки.
Как и для настройки коммутатора, для настройки исходных параметров
маршрутизатора необходимо выполнить следующие действия.
1. Присвойте имя устройства с помощью команды глобальной
конфигурации hostname. (Рисунок 5)
8
Рисунок 5 − Присвойте имя устройства с помощью команды
глобальной конфигурации hostname
2. Укажите пароли. (Рисунок 6)
Рисунок 6 − Укажите пароли
Обеспечьте безопасность доступа к привилегированному режиму с
помощью команды enable secret.
Обеспечьте безопасность доступа к исполнительскому режиму с
использованием команды login на порте консоли и команды passwordдля
установки пароля.
9
Обеспечьте безопасность виртуального доступа аналогично защите
доступа к исполнительскому режиму, кроме порта VTY.
Используйте команду глобальной конфигурации service passwordencryption, чтобы не допустить отображения паролей в виде простого текста
в файле конфигурации.
3. Укажите правовое уведомление с помощью команды глобальной
конфигурации banner motd (сообщение текущего дня [MOTD]). (Рис. 7)
Рисунок 7 − Укажите правовое уведомление с помощью команды
глобальной конфигурации banner motd
4. Сохраните конфигурации с помощью команды copy run start. (Рис. 8)
10
Рисунок 8 − Сохраните конфигурации с помощью команды copy run
start
5. Проверьте конфигурацию с помощью команды show run.
Настройка интерфейсов
Настройка интерфейсов LAN
Для обеспечения доступности маршрутизаторов необходимо настроить
соответствующие
интерфейсы.
Следовательно,
чтобы
активировать
определённый интерфейс, необходимо войти в режим конфигурации
интерфейса, используя для этого команду режима глобальной конфигурации
interface type-and-number.
На
маршрутизаторах
Cisco используется
множество различных
интерфейсов. В этом примере маршрутизатор Cisco 1941 оснащён двумя
интерфейсами Gigabit Ethernet и последовательной интерфейсной платой
WAN (WIC), состоящий из двух интерфейсов; ниже приведены имена
интерфейсов.
Gigabit Ethernet 0/0 (G0/0)
Gigabit Ethernet 0/1 (G0/1)
Serial 0/0/0 (S0/0/0)
Serial 0/0/1 (S0/0/1)
Чтобы
активировать
интерфейс
маршрутизатора,
необходимо
настроить следующие параметры.
IPv4-адрес и маска подсети: настройка IP-адреса и маски подсети с
использованием команды конфигурации интерфейса ip address subnet-mask.
Активация интерфейса: по умолчанию интерфейсы LAN и WAN не
активированы. Для активации интерфейса следует использовать команду no
shutdown. Это действие аналогично подаче питания на интерфейс. Для
активации физического уровня интерфейс должен быть также подключён к
11
другому
устройству
(концентратору,
коммутатору
или
другому
маршрутизатору).
Хотя это и не является обязательным, рекомендуется настроить
описание на каждом интерфейсе, чтобы фиксировать сетевую информацию в
письменном виде. Текст описания не должен превышать 240 символов. В
сетях производственных предприятий использование описания может быть
полезно в процессе поиска и устранения неполадок, предоставляя
информацию о типе сети, к которой подключён интерфейс, а также о
наличии в этой сети дополнительных маршрутизаторов. Если интерфейс
подключён
к
рекомендуется
поставщику
указать
услуг
данные
о
Интернета
или
подключении
оператору
третьей
связи,
стороны
и
контактную информацию.
Проверка конфигурации интерфейса
Для
проверки
конфигурации
интерфейса
можно
использовать
несколько команд. Наиболее полезная из них — командаshow ip interface.
Полученная информация содержит все интерфейсы, их IP-адреса и текущее
состояние. Активные и действующие интерфейсы представлены значением
«up» в столбцах «Status» и «Protocol». Любые другие значения будут
означать наличие проблемы либо с настройками, либо с подключением
кабелей.
Подключение можно проверить с интерфейса, используя команду ping.
Маршрутизаторы Cisco отправляют пять последовательных эхо-запросов и
определяют минимальное, среднее и максимальное время прохождения
сигнала в прямом и обратном направлении. Восклицательные знаки
подтверждают наличие подключения.
К
дополнительным
командам
проверки
интерфейса
относятся
следующие.
12
−
show ip route — отображает содержимое таблицы маршрутизации
IPv4, сохраненной в ОЗУ.
−
show interfaces — отображает статистические сведения по всем
интерфейсам устройства.
−
show ip interface - отображает статистику IPv4 для всех
интерфейсов на маршрутизаторе.
Не забудьте сохранить конфигурацию с помощью команды copy
running-config startup-config.
Настройка параметров шлюза по умолчанию
Использование шлюза по умолчанию на узле
Большинство маршрутизаторов имеют как минимум два интерфейса.
Для каждого интерфейса настраивается отдельный IP-адрес в отдельной сети.
Чтобы оконечное устройство могло обмениваться данными по сети,
ему необходимо присвоить правильный IP-адрес, включая адрес шлюза по
умолчанию. Шлюз по умолчанию используется только в том случае, когда
конкретный узел хочет отправить пакет на устройство другой сети. Адресом
шлюза
по
умолчанию,
как
правило,
является
адрес
интерфейса
маршрутизатора, связанный с локальной сетью, в которой находится узел.
Несмотря на то, что адрес фактически настроенного на интерфейсе
маршрутизатора не имеет значения, IP-адрес главного устройства и адрес
интерфейса маршрутизатора должны находиться в одной и той же сети.
На
рисунках
изображена
топология
маршрутизатора
с
двумя
отдельными интерфейсами. Каждый интерфейс подключён к отдельной сети.
G0/0 подключён к сети 192.168.10.0, а G0/1 — к сети 192.168.11.0. Для
каждого главного устройства указан соответствующий адрес шлюза по
умолчанию.
На рис. 9 ПК1 (PC1) посылает пакет на ПК2 (PC2). В этом примере
шлюз по умолчанию не используется; вместо этого ПК1 (PC1) присваивает
13
пакету IP-адрес ПК2 (PC2) и пересылает пакет через коммутатор напрямую
на ПК2 (PC2).
Рисунок 9 − ПК1 (PC1) посылает пакет на ПК2 (PC2)
На рис. 10 ПК1 (PC1) посылает пакет на ПК3. В этом примере ПК1
(PC1) присваивает пакету IP-адрес ПК3, но затем пересылает пакет на
маршрутизатор. Маршрутизатор принимает пакет, проверяет таблицу
маршрутизации, чтобы на основании адреса назначения определить
подходящий
выходной
интерфейс,
и
затем
отправляет
пакет
из
соответствующего интерфейса на ПК3.
14
Рисунок 10 − ПК1 (PC1) посылает пакет на ПК3
Использование шлюза по умолчанию на коммутаторе
Шлюз по умолчанию используется всеми устройствами, которым
необходим маршрутизатор для определения наилучшего пути к удалённому
адресату. Адреса шлюзов по умолчанию требуются оконечным устройствам,
однако они также необходимы и промежуточным устройствам, таким как
коммутатор Cisco IOS.
IP-адрес на коммутаторе необходим только для удалённого управления
коммутатором. Другими словами, чтобы подключаться к коммутатору по
протоколу Telnet, коммутатор должен иметь IP-адрес для использования в
Telnet. Если доступ к коммутатору выполняется только с устройств в
пределах локальной сети, требуется только IP-адрес.
Настройка IP-адреса на коммутаторе выполняется с помощью
виртуального интерфейса коммутатора (SVI):
S1(config)# interface vlan1
S1(config-vlan)# ip address 192.168.10.50 255.255.255.0
S1(config-vlan)# no shut
15
Тем не менее, если коммутатор должен быть доступен в другой сети,
для него необходимо настроить адрес шлюза по умолчанию, поскольку
пакеты, создаваемые коммутатором, обрабатываются, как и пакеты,
создаваемые главным устройством. Следовательно, пакеты, создаваемые
коммутатором и предназначенные для устройства в этой же сети,
пересылаются непосредственно на соответствующее устройство. Пакеты,
создаваемые коммутатором и адресованные устройству в удалённой сети,
должны пересылаться на шлюз по умолчанию для определения пути.
Чтобы настроить шлюз по умолчанию на коммутаторе, используйте
следующую команду глобальной конфигурации:
S1(config)# ip default-gateway 192.168.10.1
На рис. 11 показан администратор, который подключается к
коммутатору в удалённой сети. Чтобы коммутатор мог пересылать ответные
пакеты администратору, требуется настройка шлюза по умолчанию.
Рисунок 11 − Администратор, подключается к коммутатору в
удалённой сети
Распространено
заблуждение,
согласно
которому
коммутатор
использует свой настроенный адрес шлюза по умолчанию, чтобы определить
место пересылки пакетов, которые создаются узлами, подключёнными к
коммутатору,
и
которые
адресованы
узлам
в
удалённой
сети.
В
16
действительности IP-адрес и шлюз по умолчанию используются только для
пакетов, которые создаются коммутатором. Пакеты, которые создаются
узлами,
подключёнными
к
коммутатору,
уже
должны
содержать
информацию о шлюзе по умолчанию, настроенном для обмена данными в
удалённых сетях.
Упражнение для выполнения в классе: чтение схемы
Преподаватель предоставит вам выходные данные, полученные в
результате ввода команды show ip route на маршрутизаторе. Воспользуйтесь
данной информацией о маршрутизации, чтобы создать модель топологии с
помощью программы Packet Tracer.
В вашей модели топологии по меньшей мере должны присутствовать
следующие компоненты.
−
1 коммутатор Catalyst 2960
−
1 маршрутизатор Cisco Series 1941 с одной модульной картой с
коммутационным портом для встраиваемого модуля HWIC-4ESW, а также
IOS версии 15.1 или более поздней
−
3 персональных компьютера (серверы, универсальные ПК,
ноутбуки и т. д.)
Используйте инструмент для создания заметок программы Packet
Tracer, чтобы обозначить адреса интерфейсов маршрутизаторов и вероятные
адреса оконечных устройств, выбранных для вашей модели. В файле
программы Packet Tracer отметьте все оконечные устройства, порты и адреса,
полученные с помощью таблицы результатов/маршрутизации после ввода
команды show ip route. Сохраните результаты работы в бумажном или
электронном формате, чтобы поделиться ими с другими учащимися.
Заключение
Сетевой уровень, или уровень 3 OSI, предоставляет сервисы,
позволяющие оконечным устройствам обмениваться данными по сети. Чтобы
17
обеспечить такую передачу данных, сетевой уровень использует четыре
основных процесса: IP-адресацию оконечных устройств, инкапсуляцию,
маршрутизацию и деинкапсуляцию.
IPv4 по-прежнему является наиболее распространённым протоколом
сетевого уровня и широко применяется в сети Интернет. Пакет IPv4
содержит IP-заголовок и полезную нагрузку. При этом у IPv4 имеется
ограниченное количество доступных уникальных общедоступных IP-адресов.
Это послужило причиной разработки IP версии 6 (IPv6). Упрощённый
заголовок IPv6 предлагает ряд преимуществ по сравнению с IPv4, включая
более эффективную маршрутизацию, упрощённые заголовки расширений и
обработку каждого отдельного потока. Кроме того, IPv6-адреса используют
128-битную
иерархическую
использующего
32
бита.
адресацию
Это
в
отличие
существенно
от
адреса
увеличивает
IPv4,
количество
доступных IP-адресов.
Помимо иерархической адресации сетевой уровень также отвечает за
маршрутизацию.
Узлам требуется локальная таблица маршрутизации, чтобы пакеты
направлялись в нужную сеть назначения. Локальная таблица узла, как
правило, содержит прямое подключение, маршрут локальной сети и
локальный маршрут по умолчанию. Локальный маршрут по умолчанию —
это маршрут к шлюзу по умолчанию.
Шлюз по умолчанию — это IP-адрес интерфейса маршрутизатора,
подключённого к локальной сети. Когда узлу необходимо переслать пакет на
адрес назначения, который не находится в одной сети с узлом, пакет
пересылается на шлюз по умолчанию для дальнейшей обработки.
Когда маршрутизатор, такой как шлюз по умолчанию, получает пакет,
он изучает IP-адрес назначения для определения сети назначения. Таблица
маршрутизации маршрутизатора хранит информацию о маршрутах с прямым
подключением и об удалённых маршрутах. Если в таблице маршрутизации
имеется запись о сети назначения, маршрутизатор отправляет пакет. Если же
18
подобная запись отсутствует, то маршрутизатор может направить этот пакет
по собственному стандартному маршруту, если он имеется, или сбросит его.
Записи таблиц маршрутизации можно настроить вручную на каждом
маршрутизаторе,
чтобы
обеспечить
статическую
маршрутизацию.
Маршрутизаторы также могут динамически обмениваться между собой
данными о маршрутах с помощью протокола маршрутизации.
Чтобы получить доступ к маршрутизаторам, необходимо настроить
параметры их интерфейса. Чтобы активировать определённый интерфейс,
необходимо войти в режим конфигурации интерфейса, используя для этого
команду режима глобальной конфигурации interface type-and-number.
Рисунок 12 – Маршрутизатор с прямым и удаленным подключением к
сетям
Транспортный уровень
Введение
Сети передачи данных и Интернет поддерживают сети, объединяющие
людей, обеспечивая между ними надёжную связь. Одно устройство
позволяет использовать различные приложения и сервисы, такие как
19
электронная почта, веб-ресурсы и обмен мгновенными сообщениями, чтобы
отправлять сообщения или получать информацию. Почтовые клиенты, веббраузеры, программы для обмена мгновенными сообщениями и другие
приложения позволяют использовать компьютеры и сети для отправки
сообщений и поиска нужной информации.
Данные каждого из этих приложений упаковываются, передаются и
доставляются соответствующему приложению на устройстве назначения.
Процессы, описанные в транспортном уровне OSI, обеспечивают приём
данных от уровня приложений и их подготовку для пересылки на сетевом
уровне.
Транспортный уровень подготавливает данные для передачи по сети.
Компьютер источника устанавливает связь с принимающим компьютером,
чтобы определить, как разделить данные на сегменты, как предотвратить их
потери и как проверить, все ли сегменты были доставлены. Размышляя о
транспортном уровне, представьте себе отдел отгрузки продукции, который
занимается подготовкой к отправке одного заказа, состоящего из нескольких
пакетов.
В этой главе мы подробно рассмотрим роль транспортного уровня в
процессе
инкапсуляции
прикладных
данных
для
их
последующего
использования сетевым уровнем. Транспортный уровень также выполняет
следующие функции:
−
Обеспечивает возможность использования по сети нескольких
приложений
(например,
электронной
почты
и
социальных
сетей)
одновременно на одном устройстве.
−
Обеспечивает (в случае необходимости) получение данных без
потерь и в заданном порядке соответствующим приложением.
−
Задействует механизмы обработки ошибок.
20
Протоколы транспортного уровня
Передача данных
Значение транспортного уровня
Транспортный уровень отвечает за установление временного сеанса
связи и передачу данных между двумя приложениями. Приложение создаёт
данные,
которые
пересылаются
из
приложения
на
исходном
узле
приложению на узле назначения независимо от типа узла назначения, а также
среды, в которой должны передаваться данные, маршрута, используемого
данными, перегрузки канала или размера сети. Как показано на рисунке,
транспортный уровень — это канал между уровнем приложений и нижними
уровнями, которые отвечают за передачу по сети.
Транспортный уровень обеспечивает такой способ передачи данных по
сети, который гарантирует, что на принимающей стороне данные будут
скомпонованы без ошибок. Транспортный уровень также использует
разделение данных на сегменты и предлагает элементы управления,
необходимые для повторной сборки этих сегментов в различные потоки
обмена данными. В TCP/IP для выполнения процессов сегментации и
повторной сборки можно использовать два абсолютно разных протокола
транспортного уровня — TCP (протокол управления передачей) и UDP
(протокол пользовательских датаграмм).
Основные функции протоколов транспортного уровня:
−
Отслеживание отдельных сеансов передачи данных между
приложениями на узле-источнике и узле-получателе
−
Сегментирование данных для управления ими, а также для их
повторной компоновки в потоки прикладных данных на узле-адресате
−
Идентификация соответствующего приложения для каждого
потока обмена данными
21
Отслеживание отдельных сеансов связи
На транспортном уровне каждый определённый набор данных,
передаваемых между приложением источника и приложением назначения,
называется сеансом связи. Узел может иметь несколько приложений,
которые одновременно обмениваются данными по сети.
Разделение данных на сегменты и их последующая сборка
Данные необходимо подготовить для пересылки в среде в виде
управляемых частей. В большинстве сетей существуют ограничения на
объём данных, которые могут быть включены в один пакет. Протоколы
транспортного
уровня
имеют
сервисы,
которые
разделяют
данные
приложений на отдельные блоки необходимого размера. Такой сервис
включает инкапсуляцию, необходимую для каждой части данных. Заголовок,
используемый для повторной сборки, добавляется к каждому блоку данных.
Этот заголовок позволяет отслеживать поток данных.
Определение приложений
На каждом узле в сети может быть запущено множество приложений
или
сервисов.
Чтобы
переслать
потоки
данных
соответствующим
приложениям, транспортному уровню необходимо определить целевое
приложение.
Для
выполнения
присваивает
каждому
этой
приложению
задачи
отдельный
транспортный
уровень
идентификатор.
Этот
идентификатор называется номером порта.
Мультиплексирование сеансов связи
При передаче по сети данных некоторых типов (например, потокового
видео) в виде одного полного потока может использоваться вся доступная
22
полоса пропускания, что в свою очередь приведёт к блокированию других
процессов передачи данных, выполняемых в это же время. Кроме того, это
усложняет
восстановление
после
ошибок
и
повторную
передачу
повреждённых данных.
Как показано на рисунке, сегментация данных на более мелкие блоки
позволяет осуществлять чередование (мультиплексирование) большого
количества
разных
процессов
передачи
данных
между
многими
пользователями в одной и той же сети. Сегментация данных протоколами
транспортного уровня также обеспечивает возможности как для отправки,
так и для получения данных, когда на одном компьютере запущены
несколько приложений.
Рисунок 13 − Сегментация данных
Без сегментации получать данные сможет только одно приложение.
Например, при передаче потокового видео вся среда будет полностью
использоваться этим процессом, поэтому для других приложений она будет
недоступна. Работа с электронной почтой, использование программ для
быстрого обмена сообщениями или просмотр веб-страниц одновременно с
передачей видеоизображения будут невозможны.
Чтоб определить каждый сегмент данных, транспортный уровень
добавляет к нему заголовок, который содержит двоичные данные. Этот
заголовок содержит поля битов. Именно значения в этих полях активируют
23
различные протоколы транспортного уровня для выполнения различных
функций при управлении передачей данных.
Надёжность транспортного уровня
Транспортный уровень также отвечает за обеспечение надёжности
сеанса связи. Различные приложения имеют разные требования относительно
надёжности передачи данных.
IP-сеть отвечает только за структуру, адресацию и маршрутизацию
пакетов. IP не определяет способ доставки или транспортировки пакетов.
Транспортные протоколы предписывают способ передачи сообщений между
узлами. Как показано на рисунке, TCP/IP предоставляет два протокола
транспортного уровня: TCP (протокол управления передачей) и UDP
(протокол пользовательских датаграмм). IP использует эти транспортные
протоколы для обеспечения связи и передачи данных между узлами.
TCP считается надёжным и полнофункциональным протоколом
транспортного уровня, который обеспечивает передачу всех данных на узел
назначения. UDP в отличие от него — очень простой протокол
транспортного уровня, не гарантирующий надёжность.
Протокол TCP
Как уже упоминалось ранее, TCP считается надёжным транспортным
протоколом,
а
это
значит, что
он
использует
процессы, которые
обеспечивают надёжную передачу данных между приложениями с помощью
подтверждения доставки. Передача с использованием TCP аналогична
отправке пакетов, которые отслеживаются от источника к получателю. Если
заказ службы Federal Express разбивается на несколько отправок, заказчик
может зайти на веб-сайт компании и просмотреть порядок доставки.
TCP использует следующие три основные операции для обеспечения
надёжности:
−
отслеживание переданных сегментов данных
24
−
подтверждение полученных данных
−
повторная отправка всех неподтвержденных данных
TCP разбивает сообщение на фрагменты меньшего размера, которые
называются сегментами. Этим сегментам присваиваются порядковые номера,
после чего они передаются IP-протоколу, который собирает их в пакеты. TCP
отслеживает количество сегментов, отправленных на тот или иной узел тем
или иным приложением. Если отправитель не получает подтверждения в
течение определённого периода времени, то TCP рассматривает эти сегменты
как утраченные и повторяет их отправку. Повторно отправляется только
утраченная часть сообщения, а не все сообщение целиком. Протокол TCP на
принимающем узле отвечает за повторную сборку сегментов сообщений и их
передачу соответствующему приложению. Протокол передачи файлов (FTP)
и протокол передачи гипертекста (HTTP) — это примеры приложений,
которые используют TCP для доставки данных.
Протокол UDP
В то время как функции надёжности TCP обеспечивают более
стабильное взаимодействие между приложениями, они также потребляют
больше ресурсов и могут стать причиной задержек при передаче данных.
Существует некий компромисс между надёжностью и той нагрузкой,
которую она представляет для сетевых ресурсов. Дополнительная нагрузка
для обеспечения надёжности некоторых приложений может снизить
полезность самого приложения и даже отрицательно сказаться на его
производительности. В таких случаях использование протокола UDP более
предпочтительно.
UDP обеспечивает только основные функции для отправки сегментов
данных между соответствующими приложениями, при этом незначительно
используя ресурсы и проверку данных. UDP известен как протокол
негарантированной доставки данных. Применительно к компьютерным сетям
негарантированная доставка считается ненадёжной, поскольку при этом
25
отсутствует подтверждение о получении отправленных данных на узле
назначения. UDP не задействует процессы транспортного уровня, которые
сообщают отправителю об успешной доставке данных.
Соответствующий протокол транспортного уровня для
соответствующего приложения
Как TCP, так и UDP являются эффективными транспортными
протоколами. В зависимости от требований приложений можно использовать
любой из них (а в некоторых случаях — даже оба). На основании этих
требований
разработчики
приложений
должны
определить,
какой
транспортный протокол подходит для них лучше всего.
Некоторым приложениям необходимо, чтобы сегменты передаваемых
данных поступали в строго определённой последовательности, в которой они
могут быть успешно обработаны. Другим приложениям требуется, чтобы все
данные были получены полностью, иначе они не будут считаться
пригодными для использования. В обоих этих случаях TCP используется в
качестве транспортного протокола. Например, таким приложениям, как базы
данных, веб-браузеры и клиентские программы для работы с электронной
почтой необходимо, чтобы все отправленные данные поступили на узел
назначения в своем первоначальном состоянии. Отсутствие какой-либо
информации может привести к повреждению данных, которые в таком
случае будут переданы не полностью или будут нечитаемыми. Поэтому эти
приложения разрабатывались исключительно для работы по протоколу TCP.
Такие приложения создают дополнительную нагрузку на сеть.
В других случаях потеря некоторых данных во время передачи по сети
может быть допустима для приложения, но при этом задержки передачи
являются
недопустимыми.
Таким
приложениям
лучше
использовать
протокол UDP, поскольку он задействует меньше сетевых ресурсов.
Протокол UDP более предпочтителен для потокового воспроизведения
аудио, видео и передачи голосовой информации по протоколу IP (VoIP).
26
Подтверждение доставки только замедлит процесс передачи данных, но при
этом повторная доставка нежелательна.
Например, если один или два сегмента видеопотока не будут
доставлены,
это
вызовет
кратковременные
помехи
при
передаче
изображения. В таком случае возможно искажение изображения, однако
пользователь этого может и не заметить. С другой стороны, качество
изображения в потоковом видео значительно ухудшится, если устройство
назначения должно отвечать за утраченную информацию и задерживать
поток, ожидая повторной пересылки данных. В этом случае лучше передать
видео максимально возможного качества, используя уже полученные
сегменты, и пожертвовать надёжностью.
Ещё одним примером приложения, которое использует протокол UDP,
является интернет-радио. Если какое-либо сообщение затерялось в пути
доставки по сети, оно не будет отправляться повторно. Пропадание
нескольких пакетов будет восприниматься слушателем как кратковременное
пропадание
звука.
Если
для
этого
использовать
протокол
TCP,
предусматривающий повторную доставку потерянных пакетов, то процесс
передачи данных приостановится для приёма потерянных пакетов, что
заметно ухудшит качество воспроизведения.
27