ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 20.10.2024
Просмотров: 103
Скачиваний: 0
СОДЕРЖАНИЕ
226 Глава 7_____________________________________
228 Глава 7_______________________________________
7.7. Национальные спецификации протокола ТфОп
230 Глава 7________________________
8.1. Протокол назначения несущих каналов
234 Глава 8_______________________________________
238 Глава 8_______________________________________
8.2. Протокол управления трактами интерфейса v5.2
246 Глава 8_______________________________________
248 Глава 8______________________________________
250 Глава 8_______________________________________
252 Глава 8_______________________________________
254 Глава 8 __________________________________
9.1. Модель взаимодействия открытых систем
258 Глава 9 ___________________________________
260 Глава 9 __________________________________
9.2. Сети с коммутацией пакетов х.25
262 Глава 9___________________________________.
264 Глава 9 ________________ _______________
266 Глава 9_______________________________________
9.4. Применения протокола х.25
10.1. Протоколы tcp/ip и модель osi
270 Глава 10______________________________________
10.2. Протокол управления передачей tcp
272 Глава 10____________________________________
274 Глава 10______________________________________
276 Глава 10______________________________________
278 Глава 10 ___________________________________
280 Глава 10___________________
282 Глава 10______________________________________
10.5. Протоколы нижнего уровня
Как видно из рис. 10.1, протоколы TCP и IP приблизительно соответствуют транспортному и сетевому уровням модели OSI, в связи с чем область применения TCP/IP не ограничена какими-либо конкретными аппаратными платформами. Они могут работать также над рассмотренным в предыдущей главе протоколом передачи данных в сетях с коммутацией пакетов Х.25, который охватывает три нижних уровня модели OSI.
Рис. 10.1. Соответствие между архитектурами OSI и TCP/IP
Различие между подходом модели OSI и прагматическим подходом семейства протоколов TCP/IP связано, в частности, с количеством уровней: пятиуровневая модель TCP/IP и семиуровневая модель OSI.
270 Глава 10______________________________________
В предыдущей главе обсуждались реализованные в OSI принципы, ориентированные на максимальную общность и функциональность, что вносит, естественно, некоторую избыточность. Так, например, протокол Х.25 дублирует ряд функций на каждом уровне, чтобы обеспечить максимальную независимость уровней друг от друга. Подсчитываются контрольные суммы и устанавливается таймер на ожидание событий и на уровне звена, и на сетевом уровне, что повышает надежность, однако увеличивает стоимость реализации и снижает эффективность протокола в целом.
Подобная избыточность проявляется также во введении двух следующих уровней семиуровневой модели OSI: сеансового уровня и уровня представления данных. Наличие сеансового уровня можно считать целесообразным для телекоммуникационных протоколов, в которых необходимы процедуры установления сеанса (LOGIN) и завершения этого сеанса. Эти процедуры должны выполняться многократно, например, при организации доступа пользователей к общесетевым ресурсам. Но для целого ряда приложений функциональная полезность сеансового уровня вызывает сомнения. Не выглядит абсолютно необходимым и выделение в отдельный уровень телекоммуникационного протокола функций представления данных. Сжатие, конвертирование, кодирование, форматирование и распознавание структур данных выполняются не только на этом уровне, эти же самые операции выполняются на других уровнях — звена данных и прикладном.
Высказанные критические замечания к архитектуре OSI можно уравновесить не менее критическими оценками протоколов TCP/IP, причем не только ради справедливости, но и для технического анализа. Эта критика отчасти связана с различным функциональным наполнением одноименных уровней в протоколах TCP/IP и в модели OSI, что показано на рис. 10.1. Так, рассматриваемая ниже система пересылки файлов FTP представляется гораздо более тривиальной, чем протокол FTAM, а электронная почта TCP/IP, по мнению автора, выглядит несколько ограниченной на фоне почтового сервиса протокола Х.400, соответствующего модели OSI. Действительно, тезис о том, что наши недостатки являются продолжением наших достоинств, справедлив не только для человеческих характеров.
Особенности обеих архитектур обуславливают актуальность проблемы их совместного функционирования при обеспечении электронного обмена данными и реализации сложных функций
Протоколы Интернет 271
управления телекоммуникационными сетями. Одним из решений проблемы согласования TCP/IP и OSI является метод шлюзов. Не слишком высокое быстродействие этого метода делает его недостаточно эффективным для сетевых приложений, работающих в реальном времени, но для электронной почты или для пересылки небольших файлов его возможностей вполне достаточно. Доказательством тому служит, в частности, наличие на рынке шлюзов прикладного уровня FTAM — FTP и Х.400 — SMTP. Известны также, весьма простой метод двухпротокольного стека и метод, предусматривающий использование моста транспортного сервиса (transport-service bridge). Такой мост, работая как маршрутизатор, позволяет выполнять прикладные программы OSI в TCP/IP-сетях. Он осуществляет маршрутизацию блоков данных протоколов OSI, упаковывая их так, чтобы они эмулировали TCP/IP.
Несколько слов о рассматриваемых в этой главе протоколах Интернет. TCP/IP — это не один протокол, а набор, содержащий более 100 протоколов, каждый из которых нацелен на конкретное приложение в рамках объединенной сети. Данный фактор делает TCP/IP чрезвычайно гибким, поскольку каждый протокол можно использовать независимо от других с разной технологией транспортировки, но ограничивает возможность вразумительно описать характеристики этих протоколов в одной главе.
10.2. Протокол управления передачей tcp
Протокол управления передачей (TCP — Transmission Control Protocol) приблизительно соответствует транспортному уровню модели OSI, но содержит и некоторые функции сеансового уровня. С его помощью реализуется организация сеанса связи между двумя пользователями в сети. Кроме того, в его функции включается исправление ошибок и, что очень важно, преобразование информации к виду дейтаграмм, передача дейтаграмм и отслеживание их прохождения по сети. TCP служит также для организации повторной передачи потерянных дейтаграмм и обеспечения их надежности. Наконец, в компьютере-адресате TCP извлекает сообщение из дейтаграммы и направляет его прикладной программе-адресату. Протокол TCP, как и протокол дейтаграммы пользователя UDP, считаются протоколами поставщика услуг, причем TCP является протоколом, ориентированным на соединение, в то время как UDP — не ориентированный на соединение протокол.
www.kiev-security.org.ua BEST rus DOC FOR FULL SECURITY |
272 Глава 10____________________________________
Оба они опираются на услуги протокола IP, но могут транспортироваться через сетевые уровни Х.25, ISDN или Frame Relay.
Рассматриваемые в параграфе 10.7 прикладные протоколы FTP, TELNET, NNTP и др. помещают данные в протокольные блоки данных PDU, уже упоминавшиеся в этом и в первом томах. В зависимости от контекста, на разных уровнях для этих PDU используются различные термины. Иногда блок данных PDU, передаваемый от транспортного уровня TCP к сетевому уровню IP, называется «сегментом». Термин «дейтаграмма» используется применительно к PDU, передаваемым из сетевого уровня IP в Ethernet. В протоколах, не ориентированных на соединение, например, в UDP, дейтаграммы зачастую называются «блоками данных», передаваемыми из IP на уровень звена данных. Если блок данных прошел через разные уровни и передается на физический уровень, он считается «кадром». Если блок данных прошел через сеть, он называется «пакетом». Эти термины и определения следует рассматривать не как охватывающий все и вся стандарт, а как попытку согласования различных терминологий, а более откровенно — как расплату за ранее принятое автором опрометчивое решение собрать в одной монографии разнообразные телекоммуникационные протоколы, терминология для каждого из которых имеет свою исторически обусловленную специфику.
Функционально, впрочем, все выглядит весьма просто. Для создания дейтаграммы протокол TCP добавляет к поступающим от прикладного уровня данным заголовок, содержащий управляющую информацию. Протокол IP добавляет к дейтаграмме свой заголовок, содержащий дополнительные инструкции. Локальная сеть вводит в дейтаграмму свою управляющую информацию в виде еще одного заголовка. Таким образом, дейтаграмма включает в себя три отдельных заголовка, каждый из которых содержит управляющую информацию различного назначения: Ethernet-заголовок, IP-заголовок и TCP-заголовок. Структура TCP-заголовка изображена на рис. 10.2.
Поля порта источника (source port) и порта назначения (destination port) содержат номера портов взаимодействующих программ. Это связано с тем, что адресация на уровне протокола TCP предназначена, скорее, для передачи дейтаграмм между логическими объектами внутри компьютера, чем для фактического соединения пользователя с сетью. Более того, и рассматриваемый в следующем параграфе адрес IP тоже не является физическим адресом,
Протоколы Интернет 273
а характеризует соединение с сетью и идентифицирует пользователя. Поэтому номера портов назначения и источника представляют собой числа длиной 16 битов, идентифицирующие приложения, которые используют услуги TCP (например, FTP, TELNET, протоколы электронной почты SMTP, POP3 и т.п.). Номера порта от 0 до 255 определены заранее и не могут задаваться операторами, а номера после 255 могут произвольно определяться для каждой конкретной сети. Примеры фиксированных номеров портов, определяемые протоколом TCP: данные FTP — 20; управление FTP — 21; TELNET — 23; протокол SMTP — 25; сервер имен главного компьютера — 42; сервер имен домена— 53; почтовый протокол РОР2 - 109.
Рис. 10.2. Заголовок TCP
Порядковый номер блока данных (sequence number) длиной 32 бита используется для проверки того, что все блоки данных получены. Если принятый порядковый номер не соответствует очередности и срабатывает таймер TCP, все неподтвержденные блоки данных должны быть переданы повторно. Следует отметить, что предусматривается только положительное подтверждение, а отрицательных подтверждений не существует. Номер подтверждения (acknowledgement number) следует за порядковым номером и идентифицирует следующий ожидаемый порядковый номер.
Поле смещения данных (4 бита) определяет, где начинаются данные заголовка TCP, т.е. сколько 32-битовых слов находится в заголовке, предшествующем полю данных пользователя.