19290

TCP/IP как основа межсетевых коммуникаций

Лекция

Информатика, кибернетика и программирование

Лекция 6 TCP/IP как основа межсетевых коммуникаций Структура TCP/IP TCP/IP TCP/IP это обширное семейство протоколов которые могут использоваться в гетерогенных сетях UNIX NetWare Windows NT обеспечивая при этом маршрутизацию. TCP/IP основан на модели открытых систем и состо...

Русский

2013-07-11

227 KB

2 чел.

Лекция 6

TCP/IP как основа межсетевых коммуникаций

Структура TCP/IP

TCP/IP

 TCP/IP  - это   обширное семейство протоколов, которые могут использоваться в гетерогенных сетях (UNIX, NetWare, Windows NT), обеспечивая при этом маршрутизацию. TCP/IP основан на модели открытых систем и состоит из протокола транспортного уровня TCP и сетевого протокола IP.  Дейтаграммный протокол  IP содержит целевой адрес пакетов и интерфейсы с уровнем TCP. TCP, ориентированный на виртуальное соединение, обеспечивает гарантированную связь.

На   рисунке 6_1. показана реализация Microsoft  для  TCP/IP, которая содержит небольшие расширения в виде поддержки NetBIOS,  интерфейсов TDI и NDIS. 

Прикладной уровень

Сокеты Windows

NetBIOS

NetBIOS поверх

TCP/IP

Уровень приложения

Представительский уровень

Сеансовый уровень

Интерфейс TDI

Транспортный уровень

TCP

UDP

Транспортный уровень

Сетевой уровень

ICMP

IGNP

IP

ARP

RARP

Интерфейс NDIS

Межсетевой уровень

Канальный уровень

Ethernet

FDDI

Драйверы сетевых карт

РРР

Трансляция кадров

Уровень сетевого интерфейса

Физический уровень

Сетевые адаптеры

Рис. 6_1. Архитектура TCP\IP

Рассмотренный стек протоколов TCP/IP  на самом деле включает в себя целое семейство других протоколов, функционирующих в среде вычислительных сетей:

UDP (User Datagram Protocol) -  протокол пользовательских дейтаграмм для посылки коротких сообщений, который не предусматривает сборку и разборку сообщений. Прикладные программы, использующие услуги UDP, каждой посланной дейтаграмме ставят в соответствие тайм-аут, по которому определяется неудачная доставка, и организуют повторную посылку потерянной дейтаграммы.

TCP (Transmission Control Protocol) – обеспечивает надежную передачу данных от одного узла к другому в рамках устанавливаемого виртуального соединения по принципу «трехстороннего рукопожатия».

IP (Internet Protocol) – межсетевой дейтаграммный протокол, обеспечивающий доставку пакетов из одной сети в другую, или из одного сетевого сегмента в другой.

ARP (Address Resolution  Protocol) -  протокол преобразования IP-адресов в адреса конкретной сетевой карты (МАС-адрес).

RARP (Reverse Address Resolution Protocol) – протокол обратного определения адресов, позволяющий по МАС-адресу определить IP-адрес.

ICMP (Internet Control Management Protocol) – протокол, используемый IP и другими вышележащими  протоколами для отправки и получения сообщений о статусе передаваемой информации (рис. 6_2).

Рис. 6_2.  Настройки протокола ICMP

IGMP(Internet Group Management Protocol ) – протокол  отправки широковещательных сообщений (Рис. 6_3). Используется для пересылки группе получателей.

Рис. 6_3. Настройки протокола  IGMP

Помимо рассмотренных протоколов, на стек TCP/IP опираются следующие протоколы и службы:

Протокол SMTP (Simple Mail Transfer Protocol) - это простой протокол для электронного обмена сообщениями.

SNMP (Simple Network Management Protocol) - простой протокол управления сетью, работает на базе UDP и предназначен к использованию сетевыми управляющими станциями для сбора информации;

TELNET - протокол прикладного уровня, используется для входа в другие компьютеры сети Internet. Обеспечивает доступ к открытым серверам, библиотечным каталогам и различным базам данных. TELNET эмулирует терминалы  vt100 и vt330 фирмы DEC.

FPT - протокол пересылки файлов (File Transfer Protocol) позволяет передавать данные между рабочей станцией и хост-системой Unix или Novell NetWare NFS, или Windows NT.

 

Рис.6_4. Настройка TCP/IP

Для поддержки стека TCP/IP в  состав операционной системы Windows  входят следующие службы (Рис.6_ 4):

  •  WINS – служба определения имен Интернета, которая именам NetBIOS ставит в соответствие адреса IP.
  •  DNS – служба формирования имен узлов, когда по именам узлов определяются их IP - адреса, например eai.mephi.ru соответствует адрес 194.67.66.75.
  •  DHCP – протокол динамической конфигурации узла, когда IP - адрес выдается станции на какое-то время (аренда адреса) из определенного интервала возможных адресов

Все эти протоколы предназначены для объединения в единую сеть с коммутацией пакетов  разнородных подсетей, которые соединяются через устройства сопряжения (мосты routers или шлюзы gateways). Эта единая сеть носит название Интернет и охватывает почти все континенты.

По мере прохождения информации от прикладного уровня вниз, меняется название блоков данных. Сформированное на верхнем уровне прикладное сообщение преобразуется в транспортное сообщение (TCP - сегмент)  или UDP - дейтаграмму. Они в свою очередь разбиваются на  нумерованные IP - пакеты, а попав в Ethernet , получают название кадров.

Для каждого такого узла TCP/IP , несмотря  на использование различных  сетевых сегментов, всегда известны два адреса: сорокавосьмибитный адрес карты Ethernet  и  тридцатидвухбитный адрес  IP, уникальный в пределах всей сети Интернет.

ARP-протокол 

Рассмотрим подробнее механизм преобразования IP - адресов в Ethernet - адреса, который использует ARP - протокол при посылке пакетов. Этот процесс называется разрешением физических адресов.

Преобразование адресов осуществляется с помощью ARP-таблиц, где каждой строке ставится в соответствие IP-адрес компьютера и соответствующий ему адрес сетевой карты Ethernet. IP-адрес назначается администратором сети с учетом  места подключения компьютера  в сети Интернет. Если меняется положение компьютера по отношению к узлам Интернет, меняется и его IP- адрес. Адрес сетевой карты  присваивает  изготовитель исходя из адресного пространства, соответствующего  его лицензии. Этот адрес не может быть изменен, пока работает данная сетевая карта.

При посылке  IP-пакета протоколом ARP определяется адрес сетевой карты узла-приемника. При этом происходит обращение к  соответствующей строке ARP-таблицы, где каждому IP-адресу ставится в соответствие хотя бы один Ethernet-адрес. Эта ARP-таблица содержится в кэше данного компьютера. В случае отсутствия соответствующей строки,  формируется специальный ARP-запрос, который упаковывается в широковещательный кадр Ethernet, адресованный всем станциям данной локальной сети. Исходящий IP-пакет, для которого пока невозможно преобразование адресов, задерживается и ставится в очередь.

В локальной сети каждый сетевой адаптер принимает широковещательный кадр Ethernet. В случае успешной доставки, по двухбайтовому полю типа определяется, что это ARP- запрос, и он передается протоколу ARP локального узла. Обратите внимание, что речь идет об истинном Ethernet (Ethernet_II),  где в каждом кадре имеется двухбайтовое поле типа протокола верхнего уровня. Для сетей IEEE 802.3 и ISO 8802.3  поле типа заменено на двухбайтовое поле длины данных (Ethernet 802_2, Ethernet 802_3), а идентификация протоколов вышележащих уровней ведется по номеру точки доступа к канальной услуге SAP, содержащейся в первом байте поля данных  (Ethernet 802_2).

Протокольный объект ARP проверяет поле IP-адреса приемника и, если оно не совпадает с его собственным адресом, сбрасывает пакет.

Если адреса совпадают, то по принципу эхо формируется  ARP-ответ, где в поле  искомого адреса  вставляется собственный Ethernet-адрес. Данный ARP-ответ запаковывается в кадр Ethernet с индивидуальными адресами и выталкивается в сеть.

Получив такой кадр, сетевой адаптер распаковывает его и передает ARP-ответ  протоколу ARP  узла - источника запроса, который обновляет свою таблицу, добавив в нее еще одну строку. Эта строка должна сохраняться в ARP - кэше по умолчанию 10 минут. Но в Windows обновление ARP - кэше производится по мере его переполнения, даже если срок давности строки не истек.

Теперь, после обновление ARP-таблицы, для задержанного IP-пакета становится, возможно, преобразование  адресов.  Для этого формируется соответствующий кадр и выталкивается в сеть. В случае отсутствия ARP-ответа, IP-пакет будет сброшен. Протоколы верхних уровней не могут отличить  потерю кадров в среде Ethernet от отсутствия  адреса-приемника.  

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

Каждому узлу TCP/IP может соответствовать несколько разных сетевых карт и для каждой из них поддерживается своя собственная ARP-таблица.

Теперь давайте рассмотрим процесс определения адресов с участием маршрутизатора. Получив запрос на посылку IP - запроса в удаленную сеть, компьютер определяет это по маске подсети и ищет в кэше аппаратный Ethernet адрес шлюза по умолчанию, т. е. маршрутизатора. Если этот адрес не найден, то формируется широковещательный ARP-запрос на аппаратный адрес маршрутизатора. Получив ответ, компьютер отправляет при помощи ICMP эхо-запрос приемнику через маршрутизатор. При этом маршрутизатор начинает свой собственный ARP-сеанс поиска далее по сети, и т.д. Наконец, узел-приемник сообщает своему локальному маршрутизатору свой аппаратный адрес, а также ответ на ICMP-запрос. Этот процесс определения удаленного аппаратного адреса называется ARP-прокси.

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

При возникновении ошибок, что наиболее частая проблема, которая возникает при разрешении адреса, связана с неверными масками подсетей. Если маска определена неверно, то удаленный адрес трактуется системой как локальный и производится непрерывная широковещательная атака для определения адреса.  Такое явление называется широковещательный штормом.

RARP-протокол

Протокол обратного определения адреса позволяет по данному аппаратному адресу определит адрес IP  и используется в основном на бездисковых рабочих станциях.

IP-протокол 

Ядром  IP- протокола является таблица маршрутизации, содержание которой  формирует  администратор сети.

В сети Интернет  используются два вида маршрутизации: прямая и косвенная.

При прямой  маршрутизации  взаимодействие  двух IP-протоколов происходит напрямую, без участия каких-либо дополнительных устройств типа шлюза. Microsoft называет это устройство шлюзом по умолчанию. В этом случае кадр, выпускаемый в канал связи, адресован тому же узлу, на который указывает IP-адрес приемника. При косвенной адресации взаимодействуют узлы, находящиеся в разных сетях, соединенных через шлюз.

В данном случае шлюз представим как узел IP с единственным протоколом IP, взаимодействующим сразу с несколькими сетевыми картами Ethernet,  каждая со своей  ARP-таблицей и уникальным адресом  Ethernet.

Пакет, адресованный станции, упаковывается в кадр, адресованный сетевой карте шлюза. Получив означенный пакет, IP-шлюз ретранслирует его, т.е. опознает как собственный и упаковывает  этот пакет в другой кадр, адресованный  уже непосредственно станции B. Таким образом, для пришедшего с верхнего уровня протокола связи IP-протокол должен выбрать способ  маршрутизации и определить Ethernet-адрес сетевой карты.

Для пришедших по сети пакетов, IP-протокол решает, нужно ли ретранслировать его в другую сеть, передать  ли на верхний уровень  своей архитектуры связи или просто сбросить.

Структуру IP-адреса такова, что в него входит не только номер узла, но и номер сети. В ряде случаев, адресное пространство Internet  может  быть разделено на непересекающиеся подпространства - подсети, каждая из которых обычно  соответствует одной физической сети, например Ethernet.

Использование подсетей необязательно, но очень экономично: если каждой из физических сегментов Ethernet Вы назначите свой номер сети, то машины вне ваших сегментов должны поддерживать  все записи о маршрутах доступа  к каждой из этих новых IP-сетей. Если  используются подсети, то  извне маршрутизация определяется только для одного номера сети, а описание конфигурации подсетей есть  внутреннее дело Вашей организации и не видно из других сетей. Таким образом, компьютеры вне Вашей организации видят только одну большую IP-сеть и поддерживают маршруты доступа к шлюзу, соединяющему Ваши подсети с остальной частью Internet. В этом случае легче модернизировать свои подсети.

Используя подсети, необходимо выбрать маску подсети. Эта маска используется протоколом для выделения номера подсети из IP-адреса: биты, определяющие номер IP-сети, должны быть равны 1, а биты, соответствующие номерам узла -0. Информация о маске вносится в файл конфигурации сети.

Кроме того, в специальных файлах с именем  hosts  хранится информация о соответствии IP-адресов логическим именам компьютеров, взаимодействующим по сети, причем каждому такому имени может соответствовать более одного IP-адреса. В файле networks содержится информация о соответствии логических имен IP-сетей их номерам. Название этих файлов менять нельзя!

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

Протокол UDP 

Протокол UDP является одним из основных протоколов, пользующихся услугами IP.  Протокол UDP обеспечивают доставку дейтаграмм и не гарантирует отсутствие потерь. Запросы к UDP от прикладных процессов поступают в нумерованные  UDP-порты, упаковываются в дейтаграммы с помощью полей контрольной суммы и  номера логического порта и выталкиваются на уровень IP.  Логический порт имеет огромное значение при доставке дейтаграмм.  Среди всего множества возможных номеров логических портов часть номеров являются общеизвестными и предназначены для взаимодействия между зарезервированными сетевыми службами. Например, простой протокол управления сетью SNMP , использующий UDP для передачи своих блоков данных, приписан к общеизвестному порту 161 и свои сообщения может адресовать только через указанный номер.

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

В случае неверной адресации, несовпадающей контрольной суммы или переполнения буфера приема дейтаграмм, эти дейтаграммы немедленно сбрасываются.

Протокол TCP 

Протокол TCP относится к группе протоколов транспортных протоколов надежной доставки и работает с установлением виртуального канала.

Подобно всем транспортным протоколам, он использует понятие логического порта  доступа к услугам связи, и часть этих портов является общеизвестными. Например, прикладной протокол TELNET назначается на общеизвестный порт 23, и все логические каналы между протокольными объектами TCP, обслуживающие доставку сообщений TELNET, адресуются именно этому порту.

По своей реализации, протокол TCP сходен с транспортным протоколом класса 4 ISO и использует все механизмы надежной доставки.

Услугами надежной транспортной связи TCP пользуются прикладные протоколы FPT и TELNET.

В таблице 6_1 приведены номера портов, используемых различными службами по умолчанию.

                                                         Таблица  6_1. Номера портов TCP и  UDP

Протокол

Номер порта

Описание

TCP

20

FTP, канал данных

21

FTP, управляющий канал

23

Виртуальный терминал TELNET

25

Пересылка сообщений по SMTP

80

Гипертекст WWW

139

Служба сеансов NetBIOS

UDP

53

Запросы имен DNS

69

Простой протокол переноса данных TFPT

137

Служба имен NetBIOS

138

Служба дейтаграмм NetBIOS

161

Простой управляющий протокол SNMP

PAGE   \* MERGEFORMAT 1


 

А также другие работы, которые могут Вас заинтересовать

81327. Зупинення виконавчого провадження (поняття, види, порядок і строки зупинення) 29.99 KB
  Виконавче провадження підлягає обовязковому зупиненню у випадках: смерті стягувача або боржника оголошення померлим чи визнання безвісно відсутнім стягувача або боржника або припинення існування сторони юридичної особи якщо установлені судом правовідносини допускають правонаступництво; визнання стягувача або боржника недієздатним; проходження боржником строкової військової служби в Збройних Силах України та інших військових формуваннях якщо за умовами служби провадження виконавчих дій неможливе чи на прохання стягувача який проходить...
81328. Підстави та порядок повернення виконавчого документа стягувачеві 27.76 KB
  Виконавчий документ який прийнятий державним виконавцем до виконання і за яким стягнення не провадилося або було проведено частково повертається стягувачеві: за письмовою заявою стягувача; якщо в боржника відсутнє майно на яке може бути звернено стягнення і здійснені державним виконавцем відповідно до Закону заходи щодо розшуку такого майна виявилися безрезультатними; якщо стягувач відмовився залишити за собою майно боржника не реалізоване під час виконання рішення одержати певні предмети що повинні бути передані йому від боржника...
81329. Повернення виконавчого документу до суду або іншого органу (посадовій особі), який його видав 22.35 KB
  Виконавчий документ прийнятий державним виконавцем до виконання повертається до суду який його видав у разі відновлення судом строку для подання апеляційної скарги на рішення за яким видано виконавчий документ та прийняття такої апеляційної скарги до розгляду крім виконавчих документів що підлягають негайному виконанню.
81330. Оголошення розшуку боржника, дитини та розшуку транспортних засобів боржника 26.22 KB
  Підставами для оголошення розшуку є відсутність в ході виконавчого провадження відомостей про місце проживання місцезнаходження боржника його майна а також дитини. У разі відсутності відомостей про місце проживання місцезнаходження боржника за виконавчими документами про стягнення аліментів...
81331. Поворот виконання 28.31 KB
  Поворот виконання це спосіб захисту майнових прав відповідача який полягає у поверненні позивачем стягувачем відповідачу боржнику всього одержаного за скасованим рішенням. Загальних правил які б передбачали поворот виконання немає що примушує знову звертатися до процесуального процедурного чи іншого законодавства яке передбачає винесення і виконання юрисдикційного рішення яке підлягає виконанню у порядку ст. Питання про поворот виконання вирішує суд який переглядає судові рішення постанови і до компетенції якого входить...
81332. Виконавчий збір 28.08 KB
  Виконавчий збір не стягується із страховиків які здійснюють державне обовязкове особисте страхування при виконанні державними виконавцями рішень про стягнення коштів за державним обовязковим особистим страхуванням та з осіб звільнених від його сплати згідно з законодавством а також за виконавчими документами про конфіскацію майна стягнення періодичних платежів стягнення виконавчого збору накладення арешту на майно для забезпечення позовних вимог. Постанова про стягнення виконавчого збору виноситься при першому надходженні виконавчого...
81333. Витрати на здійснення виконавчих дій та їх види 26.9 KB
  До інших витрат на організацію виконавчих дій належать витрати на виплату винагороди державним виконавцям відповідно до статті 47 Закону; придбання службових житлових приміщень; придбання службових приміщень; страхування державних виконавців; забезпечення державних виконавців форменим одягом
81334. Розподіл стягнутих з боржника грошових сум і черговість задоволення вимог стягувачів 27.72 KB
  Розподіл стягнутих державним виконавцем з боржника за виконавчим провадженням грошових сум у тому числі одержаної від реалізації майна боржника здійснюється у такому порядку: у першу чергу повертається авансовий внесок сторін та інших осіб на організацію та проведення виконавчих дій...
81335. Закінчення та відновлення виконавчого провадження 27.23 KB
  Про закінчення виконавчого провадження державний виконавець виносить постанову, яка затверджується начальником відповідного органу державної виконавчої служби. Копія постанови у триденний строк надсилається сторонам та суду або іншому органу (посадовій особі), які видали виконавчий документ, або за належністю до іншого органу державної виконавчої служби