МЕНЮ


Фестивали и конкурсы
Семинары
Издания
О МОДНТ
Приглашения
Поздравляем

НАУЧНЫЕ РАБОТЫ


  • Инновационный менеджмент
  • Инвестиции
  • ИГП
  • Земельное право
  • Журналистика
  • Жилищное право
  • Радиоэлектроника
  • Психология
  • Программирование и комп-ры
  • Предпринимательство
  • Право
  • Политология
  • Полиграфия
  • Педагогика
  • Оккультизм и уфология
  • Начертательная геометрия
  • Бухучет управленчучет
  • Биология
  • Бизнес-план
  • Безопасность жизнедеятельности
  • Банковское дело
  • АХД экпред финансы предприятий
  • Аудит
  • Ветеринария
  • Валютные отношения
  • Бухгалтерский учет и аудит
  • Ботаника и сельское хозяйство
  • Биржевое дело
  • Банковское дело
  • Астрономия
  • Архитектура
  • Арбитражный процесс
  • Безопасность жизнедеятельности
  • Административное право
  • Авиация и космонавтика
  • Кулинария
  • Наука и техника
  • Криминология
  • Криминалистика
  • Косметология
  • Коммуникации и связь
  • Кибернетика
  • Исторические личности
  • Информатика
  • Инвестиции
  • по Зоология
  • Журналистика
  • Карта сайта
  • TCP/IP

    TCP/IP

    Описание протоколов TCP/IP

    Спасибо неизвестному автору (и переводчику?)

    Форматирование произведено Владимиром Романовым (Поликом Про)

    Содержание

    1. Введение 1

    2. Основы TCP/IP 2

    2.1. Модуль IP создает единую логическую сеть 2

    2.2. Структура связей протокольных модулей 2

    2.3. Терминология 3

    2.4. Потоки данных 3

    2.5. Работа с несколькими сетевыми интерфейсами 4

    3. Ethernet 5

    3.1. Аналогия с разговором 6

    4. Протокол ARP 6

    4.1. ARP-таблица для преобразования адресов 6

    4.2. Порядок преобразования адресов 7

    4.4. Продолжение преобразования адресов 8

    5. Межсетевой протокол IP 8

    5.1. Прямая маршрутизация 9

    5.2. Косвенная маршрутизация 9

    5.3. Правила маршрутизации в модуле IP 10

    5.4. IP-адрес 11

    5.5. Выбор адреса 12

    5.6. Подсети 12

    5.7. Как назначать номера сетей и подсетей 13

    5.8. Имена 13

    5.9. IP-таблица маршрутов 14

    5.10. Подробности прямой маршрутизации 14

    5.11. Порядок прямой маршрутизации 15

    5.12. Подробности косвенной маршрутизации 15

    5.13. Порядок косвенной маршрутизации 16

    6. Установка маршрутов 17

    6.1. Фиксированные маршруты 17

    6.2. Перенаправление маршрутов 18

    7. Протокол UDP 21

    7.1. Порты 22

    7.2. Контрольное суммирование 22

    8. Протокол TCP 22

    9.1. Протокол TELNET 23

    9.2. Протокол FTP 24

    9.3. Протокол SMTP 24

    9.4. r-команды 24

    9.5. NFS 24

    9.6. Протокол SNMP 25

    9.7. X-Window 25

    10. Взаимозависимость протоколов семейства TCP/IP 25

    1. Введение

    Семейство протоколов TCP/IP широко применяется во всем мире для объединения

    компьютеров в сеть Internet. Единая сеть Internet состоит из множества

    сетей различной физической природы, от локальных сетей типа Ethernet и

    Token Ring, до глобальных сетей типа NSFNET. Основное внимание в книге

    уделяется принципам организации межсетевого взаимодействия. Многие

    технические детали, исторические вопросы опущены. Более подробную

    информацию о протоколах TCP/IP можно найти в RFC (Requests For Comments)

    специальных документах, выпускаемых Сетевым Информационным Центром (Network

    Information Center - NIC). Приложение 1 содержит путеводитель по RFC, а

    приложение 2 отражает положение дел в области стандартизации протоколов

    семейства TCP/IP на начало 1991 года

    В книге приводятся примеры, основанные на реализации TCP/IP в ОС UNIX.

    Однако основные положения применимы ко всем реализациям TCP/IP

    Надеюсь, что эта книга будет полезна тем, кто профессионально работает или

    собирается начать работать в среде TCP/IP: системным администраторам,

    системным программистам и менеджерам сети

    2. Основы TCP/IP

    Термин “TCP/IP” обычно обозначает все, что связано с протоколами TCP и IP.

    Он охватывает целое семейство протоколов, прикладные программы и даже саму

    сеть. В состав семейства входят протоколы UDP, ARP, ICMP, TELNET, FTP и

    многие другие. TCP/IP это технология межсетевого взаимодействия,

    технология internet. Сеть, которая использует технологию internet,

    называется “internet”. Если речь идет о глобальной сети, объединяющей

    множество сетей с технологией internet, то ее называют Internet

    2.1. Модуль IP создает единую логическую сеть

    Архитектура протоколов TCP/IP предназначена для объединенной сети,

    состоящей из соединенных друг с другом шлюзами отдельных разнородных

    пакетных подсетей, к которым подключаются разнородные машины. Каждая из

    подсетей работает в соответствии со своими специфическими требованиями и

    имеет свою природу средств связи. Однако предполагается, что каждая подсеть

    может принять пакет информации (данные с соответствующим сетевым

    заголовком) и доставить его по указанному адресу в этой конкретной подсети.

    Не требуется, чтобы подсеть гарантировала обязательную доставку пакетов и

    имела надежный сквозной протокол. Таким образом, две машины, подключенные к

    одной подсети могут обмениваться пакетами

    Когда необходимо передать пакет между машинами, подключенными к разным

    подсетям, то машина-отправитель посылает пакет в соответствующий шлюз (шлюз

    подключен к подсети также как обычный узел). Оттуда пакет направляется по

    определенному маршруту через систему шлюзов и подсетей, пока не достигнет

    шлюза, подключенного к той же подсети, что и машина-получатель; там пакет

    направляется к получателю. Объединенная сеть обеспечивает датаграммный

    сервис

    Проблема доставки пакетов в такой системе решается путем реализации во всех

    узлах и шлюзах межсетевого протокола IP. Межсетевой уровень является по

    существу базовым элементом во всей архитектуре протоколов, обеспечивая

    возможность стандартизации протоколов верхних уровней

    2.2. Структура связей протокольных модулей

    Логическая структура сетевого программного обеспечения, реализующего

    протоколы семейства TCP/IP в каждом узле сети internet, изображена на рис

    1. Прямоугольники обозначают обработку данных, а линии, соединяющие

    прямоугольники, - пути передачи данных. Горизонтальная линия внизу рисунка

    обозначает кабель сети Ethernet, которая используется в качестве примера

    физической среды; “о” - это трансивер. Знак “*” - обозначает IP-адрес, а

    “@” - адрес узла в сети Ethernet (Ethernet-адрес). Понимание этой

    логической структуры является основой для понимания всей технологии

    internet. В дальнейшем мы будем часто ссылаться на эту схему

    ------------------------------

    | прикладные процессы |

    | ... \ | / ... \ | / ... |

    | ------- ------- |

    | | TCP | | UDP | |

    | ------- ------- |

    | \ / |

    | ------ |

    | ------- | IP | |

    | | ARP | -*---- |

    | ------- | |

    | \ | |

    | -------- |

    | | ENET | |

    | ---@---- |

    | | |

    ------------|-----------------

    ------------о--------кабель Ethernet

    Рис.1. Структура протокольных модулей в узле сети TCP/IP

    2.3. Терминология

    Введем ряд базовых терминов, которые мы будем использовать в дальнейшем

    Драйвер это программа, непосредственно взаимодействующая с сетевым

    адаптером. Модуль это программа, взаимодействующая с драйвером, сетевыми

    прикладными программами или другими модулями. Драйвер сетевого адаптера и,

    возможно, другие модули, специфичные для физической сети передачи данных,

    предоставляют сетевой интерфейс для протокольных модулей семейства TCP/IP

    Название блока данных, передаваемого по сети, зависит от того, на каком

    уровне стека протоколов он находится. Блок данных, с которым имеет дело

    сетевой интерфейс, называется кадром; если блок данных находится между

    сетевым интерфейсом и модулем IP, то он называется IP-пакетом; если он

    между модулем IP и модулем UDP, то UDP-датаграммой; если между модулем IP

    и модулем TCP, то TCP-сегментом (или транспортным сообщением); наконец,

    если блок данных находится на уровне сетевых прикладных процессов, то он

    называется прикладным сообщением

    Эти определения, конечно, несовершенны и неполны. К тому же они меняются от

    публикации к публикации. Более подробные определения можно найти в RFC-

    1122, раздел 1.3.3

    2.4. Потоки данных

    Рассмотрим потоки данных, проходящие через стек протоколов, изображенный на

    рис 1. В случае использования протокола TCP (Transmission Control Protocol

    - протокол управления передачей), данные передаются между прикладным

    процессом и модулем TCP. Типичным прикладным процессом, использующим

    протокол TCP, является модуль FTP (File Transfer Protocol - протокол

    передачи файлов). Стек протоколов в этом случае будет FTP/TCP/IP/ENET. При

    использовании протокола UDP (User Datagram Protocol протокол

    пользовательских датаграмм), данные передаются между прикладным процессом и

    модулем UDP. Например, SNMP (Simple Network Management Protocol - простой

    протокол управления сетью) пользуется транспортными услугами UDP. Его стек

    протоколов выглядит так: SNMP/UDP/IP/ENET

    Модули TCP, UDP и драйвер Ethernet являются мультиплексорами n x 1

    Действуя как мультиплексоры, они переключают несколько входов на один

    выход. Они также являются демультиплексорами 1 x n. Как демультиплексоры,

    они переключают один вход на один из многих выходов в соответствии с полем

    типа в заголовке протокольного блока данных (рис 2)

    Когда Ethernet-кадр попадает в драйвер сетевого интерфейса Ethernet, он

    может быть направлен либо в модуль ARP (Address Resolution Protocol -

    адресный протокол), либо в модуль IP (Internet Protocol - межсетевой

    протокол). На то, куда должен быть направлен Ethernet-кадр, указывает

    значение поля типа в заголовке кадра

    Если IP-пакет попадает в модуль IP, то содержащиеся в нем данные могут быть

    переданы либо модулю TCP, либо UDP, что определяется полем “протокол” в

    заголовке IP-пакета

    Если UDP-датаграмма попадает в модуль UDP, то на основании значения поля

    “порт” в заголовке датаграммы определяется прикладная программа, которой

    должно быть передано прикладное сообщение. Если TCP-сообщение попадает в

    модуль TCP, то выбор прикладной программы, которой должно быть передано

    сообщение, осуществляется на основе значения поля “порт” в заголовке TCP-

    сообщения

    Мультиплексирование данных в обратную сторону осуществляется довольно

    просто, так как из каждого модуля существует только один путь вниз. Каждый

    протокольный модуль добавляет к пакету свой заголовок, на основании

    которого машина, принявшая пакет, выполняет демультиплексирование

    1 2 3 .... n | 1 2 3 .... n ^

    \ | | / | \ | | / |

    ----------------- поток ------------------- поток

    | мультиплексор | данных | демультиплексор | данных

    ----------------- | ------------------- |

    | | ^ |

    v V | |

    1 1

    Рис.2. Мультиплексор n x 1 и демультиплексор 1 x n

    Данные от прикладного процесса проходят через модули TCP или UDP, после

    чего попадают в модуль IP и оттуда - на уровень сетевого интерфейса

    Хотя технология internet поддерживает много различных сред передачи данных,

    здесь мы будем предполагать использование Ethernet, так как именно эта

    среда чаще всего служит физической основой для IP-сети. Машина на рис 1

    имеет одну точку соединения с Ethernet. Шестибайтный Ethernet-адрес

    является уникальным для каждого сетевого адаптера и распознается драйвером

    Машина имеет также четырехбайтный IP-адрес. Этот адрес обозначает точку

    доступа к сети на интерфейсе модуля IP с драйвером. IP-адрес должен быть

    уникальным в пределах всей сети Internet

    Работающая машина всегда знает свой IP-адрес и Ethernet-адрес

    2.5. Работа с несколькими сетевыми интерфейсами

    Машина может быть подключена одновременно к нескольким средам передачи

    данных. На рис 3 показана машина с двумя сетевыми интерфейсами Ethernet.

    Заметим, что она имеет 2 Ethernet-адреса и 2 IP-адреса

    Из представленной схемы видно, что для машин с несколькими сетевыми

    интерфейсами модуль IP выполняет функции мультиплексора n x m и

    демультиплексора m x n (рис 4)

    ---------------------------------

    | прикладные процессы |

    | ... \ | / .... \ | / ... |

    | ------- ------- |

    | | TCP | | UDP | |

    | ------- ------- |

    | \ / |

    | ------ |

    | ------- | IP | ------- |

    | | ARP | -*--*- | ARP | |

    | ------- | | ------- |

    | \ | | / |

    | -------- -------- |

    | | ENET | | ENET | |

    | ---@---- ---@---- |

    | | | |

    ----------|---------|------------

    | |

    | ---о---------------

    --------------о---- Ethernet 2

    Ethernet 1

    Рис.3. Узел сети TCP/IP с двумя сетевыми интерфейсами

    1 2 3 .... n | 1 2 3 ...... n ^

    \ | | / | \ | | / |

    ----------------- поток ------------------- поток

    | мультиплексор | данных | демультиплексор | данных

    ----------------- | ------------------- |

    / | | ... \ V / | | ..... \ |

    1 2 3 m 1 2 3 m

    Рис.4. Мультиплексор n x m и демультиплексор m x n

    Таким образом, он осуществляет мультиплексирование входных и выходных

    данных в обоих направлениях. Модуль IP в данном случае сложнее, чем в

    первом примере, так как может передавать данные между сетями. Данные могут

    поступать через любой сетевой интерфейс и быть ретранслированы через любой

    другой сетевой интерфейс. Процесс передачи пакета в другую сеть называется

    ретрансляцией IP-пакета. Машина, выполняющая ретрансляцию, называется

    шлюзом[1]

    Как показано на рис 5, ретранслируемый пакет не передается модулям TCP или

    UDP. Некоторые шлюзы вообще могут не иметь модулей TCP и UDP

    3. Ethernet

    В этом разделе мы кратко рассмотрим технологию Ethernet

    Кадр Ethernet содержит адрес назначения, адрес источника, поле типа и

    данные. Размер адреса в Ethernet - 6 байт. Каждый сетевой адаптер имеет

    свой Ethernet-адрес. Адаптер контролирует обмен информацией, происходящий в

    сети, и принимает адресованные ему Ethernet-кадры, а также Ethernet-кадры с

    адресом “FF:FF:FF:FF:FF:FF” (в 16-ричной системе), который обозначает

    “всем”, и используется при широковещательной передаче

    ------- -------

    | TCP | | UDP |

    ------- -------

    \ /

    ----------

    | |

    | IP |

    | ____ |

    | / \ |

    ----------

    / \

    данные данные

    поступают отправляются

    отсюда сюда

    Рис 5 Пример межсетевой ретрансляции пакета модулем IP

    Ethernet реализует метод МДКН/ОС (множественный доступ с контролем несущей

    и обнаружением столкновений). Метод МДКН/ОС предполагает, что все

    устройства взаимодействуют в одной среде, в каждый момент времени может

    передавать только одно устройство, а принимать могут все одновременно. Если

    два устройства пытаются передавать одновременно, то происходит столкновение

    передач, и оба устройства после случайного (краткого) периода ожидания

    пытаются вновь выполнить передачу

    3.1. Аналогия с разговором

    Хорошей аналогией взаимодействиям в среде Ethernet может служить разговор

    группы вежливых людей в небольшой темной комнате. При этом аналогией

    электрическим сигналам в коаксиальном кабеле служат звуковые волны в

    комнате

    Каждый человек слышит речь других людей (контроль несущей). Все люди в

    комнате имеют одинаковые возможности вести разговор (множественный доступ),

    но никто не говорит слишком долго, так как все вежливы. Если человек будет

    невежлив, то его попросят выйти (т е. удалят из сети). Все молчат, пока кто-

    то говорит. Если два человека начинают говорить одновременно, то они сразу

    обнаруживают это, поскольку слышат друг друга (обнаружение столкновений). В

    этом случае они замолкают и ждут некоторое время, после чего один из них

    вновь начинает разговор. Другие люди слышат, что ведется разговор, и ждут,

    пока он кончится, а затем могут начать говорить сами. Каждый человек имеет

    собственное имя (аналог уникального Ethernet-адреса) Каждый раз, когда кто-

    нибудь начинает говорить, он называет по имени того, к кому обращается, и

    свое имя, например, “Слушай Петя, это Андрей, . ля-ля-ля . ” Если кто-то

    хочет обратиться ко всем, то он говорит: “Слушайте все, это Андрей, . ля-

    ля-ля . ” (широковещательная передача)

    4. Протокол ARP

    В этом разделе мы рассмотрим то, как при посылке IP-пакета определяется

    Ethernet-адрес назначения. Для отображения IP-адресов в Ethernet-адреса

    используется протокол ARP (Address Resolution Protocol - адресный

    протокол). Отображение выполняется только для отправляемых IP-пакетов, так

    как только в момент отправки создаются заголовки IP и Ethernet

    4.1. ARP-таблица для преобразования адресов

    Преобразование адресов выполняется путем поиска в таблице. Эта таблица,

    называемая ARP-таблицей, хранится в памяти и содержит строки для каждого

    узла сети. В двух столбцах содержатся IP- и Ethernet-адреса. Если требуется

    преобразовать IP-адрес в Ethernet-адрес, то ищется запись с соответствующим

    IP-адресом. Ниже приведен пример упрощенной ARP-таблицы

    ---------------------------------------------

    | IP-адрес Ethernet-адрес |

    ---------------------------------------------

    | 223.1.2.1 08:00:39:00:2F:C3 |

    | 223.1.2.3 08:00:5A:21:A7:22 |

    | 223.1.2.4 08:00:10:99:AC:54 |

    ---------------------------------------------

    Табл.1. Пример ARP-таблицы

    Принято все байты 4-байтного IP-адреса записывать десятичными числами,

    разделенными точками. При записи 6-байтного Ethernet-адреса каждый байт

    Страницы: 1, 2, 3, 4


    Приглашения

    09.12.2013 - 16.12.2013

    Международный конкурс хореографического искусства в рамках Международного фестиваля искусств «РОЖДЕСТВЕНСКАЯ АНДОРРА»

    09.12.2013 - 16.12.2013

    Международный конкурс хорового искусства в АНДОРРЕ «РОЖДЕСТВЕНСКАЯ АНДОРРА»




    Copyright © 2012 г.
    При использовании материалов - ссылка на сайт обязательна.