Стек протоколов TCP/IP является наиболее распространенным на сегодняшний день стеком протоколов. Гибкость и возможности маршрутизации трафика позволяют использовать его в сетях различного масштаба. Стек протоколов TCP/IP представляет собой набор сетевых протоколов, регламентирующих все стороны процесса взаимодействия сетевых устройств.

Требования-характеристики:

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

Расширяемость. Протокол должен допускать возможность легкого расширения сети. Добавление к сети новых сегментов не должно приводить к нарушению работы существующих служб.

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

Внутренняя простота. Протокол должен иметь простую структуру, чтобы обеспечивать достаточную производительность

Архитектура: Стек TCP/IP с точки зрения системной архитектуры соответствует эталонной модели OSI (Open Systems Interconnection - взаимодействие открытых систем) и позволяет обмениваться данными по сети приложениям и службам, работающим практически на любой платформе, включая Unix, Windows, Macintosh и другие.

Обзор основных протоколов стека:

ТСP: Протокол управления передачей (Transmission Control Protocol, TCP) берет на себя все обязанности по доставке пакетов, получаемых от протоколов верхних уровней, в неизменном состоянии и в соответствующей последовательности. Поэтому в обязанности протокола транспортного уровня входит функция разбиения этих пакетов на более мелкие TCP-пакеты, которые затем передаются протоколу сетевого уровня.

UDP: В структуре стека протоколов TCP/IP имеется другой протокол, функционирующий на транспортном уровне, который не ориентирован на установку соединения. Речь идет о протоколе пользовательских дейтаграмм (User Datagram Protocol, UDP). Протокол UDP достаточно быстрый протокол, поскольку не включает механизмов, осуществляющих контроль доставки пакетов.

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

ARP: На канальном уровне адресация осуществляется на основе так называемых МАС-адресов. МАС-адрес представляет собой уникальный 48-разрядный идентификационный код, присваиваемый каждому сетевому адаптеру. Этот код записывается (или, как принято говорить, «зашивается») в специальное ПЗУ на плате сетевого адаптера и тем самым навсегда связывается с этим сетевым адаптером. Поскольку адресация на канальном уровне осуществляется посредством МАС-адресов, необходим механизм, который бы обеспечивал трансляцию IP-адресов в соответствующие МАС-адреса. Протокол разрешения адресов ARP (Address Resolution Protocol) и предоставляет такой механизм. Его основная задача -- установка соответствия между IP-адресом и МАС-адресом.

ICMP: Протокол управляющих сообщений Интернета (Internet Control Message Protocol, ICMP) представляет собой механизм, посредством которого хосты могут обмениваться служебной информацией. Протокол ICMP поддерживает два вида служебных сообщений: сообщения об ошибках и управляющие сообщения.

IGMP: Процесс передачи группового трафика регламентируется межсетевым протоколом управления группой (Internet Group Management Protocol, IGMP).

IPsec: Протокол IPsec обеспечивает защиту любых пакетов, передаваемых протоколами верхних уровней

Уровень приложений: Через уровень Приложения модели TCP/IP приложения и службы получают доступ к сети. Доступ к протоколам TCP/IP осуществляется посредством двух программных интерфейсов (API - Application Programming Interface):

  • - Сокеты Windows;
  • - NetBIOS.

Интерфейс сокетов Windows, или как его называют WinSock, является сетевым программным интерфейсом, предназначенным для облегчения взаимодействия между различными TCP/IP - приложениями и семействами протоколов.

Интерфейс NetBIOS используется для связи между процессами (IPC - Interposes Communications) служб и приложений ОС Windows. NetBIOS выполняет три основных функции: определение имен NetBIOS; служба дейтаграмм NetBIOS; служба сеанса NetBIOS.

Уровень транспорта: Уровень транспорта TCP/IP отвечает за установления и поддержания соединения между двумя узлами. Основные функции уровня:

  • - подтверждение получения информации;
  • - управление потоком данных;
  • - упорядочение и ретрансляция пакетов.

В зависимости от типа службы могут быть использованы два протокола:

  • - TCP (Transmission Control Protocol - протокол управления передачей);
  • - UDP (User Datagram Protocol - пользовательский протокол дейтаграмм).

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

Межсетевой уровень: Межсетевой уровень отвечает за маршрутизацию данных внутри сети и между различными сетями. На этом уровне работают маршрутизаторы, которые зависят от используемого протокола и используются для отправки пакетов из одной сети (или ее сегмента) в другую (или другой сегмент сети). В стеке TCP/IP на этом уровне используется протокол IP.

Уровень сетевого интерфейса: Этот уровень модели TCP/IP отвечает за распределение IP-дейтаграмм. Он работает с ARP для определения информации, которая должна быть помещена в заголовок каждого кадра. Затем на этом уровне создается кадр, подходящий для используемого типа сети, такого как Ethernet, Token Ring или ATM, затем IP-дейтаграмма помещается в область данных этого кадра, и он отправляется в сеть.

Утилиты диагностики:

ipconfig /flushdns /registerdns /displaydns /showclassid /setclassid class_id]

/all -- в результате выполнения утилиты выводится полная информация о конфигурации протокола для всех интерфейсов локального компьютера. В том числе и для сетевых интерфейсов, работающих со службой маршрутизации и удаленного доступа (Routing and Remote Access Service, RAS);

/release -- выполнение утилиты с этим ключом приводит к освобождению выделенного IP-адреса. Ключ применим для использования только на клиентах DHCP;

/renew -- использование этого ключа предписывает системе обновить конфигурацию стека протоколов TCP/IP. Если вы указываете имя сетевого адаптера, обновляется конфигурация протокола только для выбранного адаптера. В противном случае обновляется конфигурация стека протоколов для всех сетевых адаптеров;

/displaydns -- в результате выполнения утилиты будет выведена информация о содержимом локального кэша клиента DNS, используемого для разрешения доменных имен;

ping [-t] [-a] [-n count] [-1 size] [-f] [-i ttl] [-v tos] [-r count] [-S count] [[-] host-list] | {-k host-list]] [-w timeout] [-R] [-S srcaddr] [-4] [-6] destination-host

  • -t -- использование данного ключа предписывает системе непрерывно посылать специальные ICMP-пакеты к удаленному компьютеру вплоть до остановки пользователем выполнения утилиты;
  • -а -- использование данного ключа позволяет определить доменное имя удаленного компьютера по его IP-адресу. Полезность этого ключа зачастую недооценивается пользователями. Тем не менее при работе в локальной сети нередко возникают ситуации, когда необходимо узнать доменное имя компьютера по его IP-адресу;
  • -n count -- в отличие от предыдущего ключа, позволяет задать число ICMP-пакетов, которые будут посланы в процессе проверки возможности установления соединения. По умолчанию утилита отправляет четыре пакета;
  • -w timeout -- по умолчанию утилита ping ожидает подтверждения от удаленного хоста в течение одной секунды. По окончании этого времени утилита делает вывод о том, что с хостом невозможно установить соединение. Особенно часто подобная ситуация возникает в случае, когда удаленный компьютер соединяется посредством медленных линий связи. Использование этого ключа позволяет увеличить время ожидания подтверждения до определенного значения, задаваемого в миллисекундах в виде параметра timeout;

tracert [-d] [-h maximum_hops] [-j host-list] [-w timeout] [-R] [-S srcaddr] [-4] [-6] target_name

  • -d -- по умолчанию утилита, предоставляя информацию о проходимых пакетами маршрутизаторах, указывает не только IP-адреса, но и их доменные имена. Использование этого ключа предписывает утилите не производить преобразование IP-адресов в доменные имена. Это позволяет сократить время выполнения утилиты;
  • -h maximum_hops -- использование утилиты с данным ключом позволяет ограничить допустимое число переходов из одной подсети в другую в процессе отслеживания маршрута. Параметр maximum_hops определяет максимально допустимое количество переходов;
  • -w timeout -- ключ позволяет явно определить максимальное время ожидания ответа от удаленного маршрутизатора. При этом время задается параметром timeout в миллисекундах;

target_name -- определяет имя удаленного хоста, маршрут к которому необходимо проследить.

Утилита netstat. Позволяет получить статистическую информацию по некоторым из протоколов стека (TCP, UDP, IP и ICMP), а также приводит сведения о текущих сетевых соединениях.

Утилита nbtstat . Утилита используется для получения информации, связанной с вопросом функционирования NetBIOS поверх TCP/IP. Используя данную утилиту, можно получить информацию как о локальном, так и об удаленном компьютере.

IP-адрес: Согласно концепции TCP/IP, каждый хост, чтобы работать в сети, должен иметь определенный IP-адрес

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

Правила назначения IP-адреса:

  • 1. Компьютеру нельзя присвоить первый адрес в данной сети (адрес, заканчивающийся на число 0). Такие адреса зарезервированы для обозначения всей сети.
  • 2. Компьютеру нельзя присвоить последний адрес в данной сети (адрес, заканчивающийся на число 255). Такие адреса служат для широковещательных передач (broadcasting) -- обращения ко всем компьютерам в сети.
  • 3. Каждый из октетов -- это число в диапазоне от 0 до 255.
  • 4. IP-адрес каждого компьютера должен быть уникален в пределах сети. Если присвоить новому компьютеру уже существующий в сети адрес, то возникнет конфликт адресов. Операционная система сообщит о конфликте, показав окно предупреждения, и оба компьютера не будут допущены к работе в сети до исправления ситуации.

Адрес подсети и адрес хоста: В любом IP-адресе можно выделить две составляющие: адрес подсети и адрес хоста в этой подсети. На этапе разработки создатели протокола разделили все IP-адреса на три категории, объединив их в три класса подсетей -- А, В и С.

Подсети класса А самые дорогие, поэтому они по карману только крупным корпорациям. Все пулы адресов класса А уже распределены. В качестве их держателей выступают такие корпорации, как IBM, Xerox, Apple и Hewlett-Packard.

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

Деление на подсети: Маска подсети -- один из ключевых терминов TCP/IP, она представляет собой 32-битовое число, которое используется для выделения из IP-адреса адреса подсети.


В связи с этим биты маски подсети, установленные в 1, обозначают разряды которые используются в IP-адресе для определения адреса подсети. Выделение осуществляется методом логического умножения (операции AND) IP-адреса и маски подсети.

Адрес ROOT: 11000000 10101000 00000001 00000001

Адрес подсети: 11000000 10101000 00000001

Адрес STORE: 11000000 10101000 00000001 00010101

Маска подсети: 11111111 11111111 11111111 00000000

Адрес подсети STORE: 11000000 10101000 00000001

Адрес подсети ROOT: 11000000 10101000 00000001

Внутренние IP-адреса: Для локальных сетей, в зависимости от их размера, организацией IANA (Internet Assigned Numbers Authority), отвечающей за присвоение IP-адресов в Интернете, выделены следующие диапазоны адресов:

  • 10.0.0.0 -- 10.255.255.255
  • 172.16.0.0 -- 172.31.255.255
  • 192.168.0.0 -- 192.168.255.255

Службы DHCP, DNS,WINS

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

Система доменных имен (DNS - domain name services) является методом регистрации имен компьютеров и их IP-адресов.

Служба имен Интернет для Windows (WINS) используется как служба разрешения имен NetBIOS в IP-адреса в сегментированных сетях.

Серверы доменных имен - инструменты данной системы, обеспечивающие ее функционирование.

Система доменных имен (DNS) - иерархическая распределенная база данных, содержащая сопоставления доменных имен DNS с различными типами данных, таких как IP-адреса. DNS позволяет находить компьютеры и службы по понятным именам, а также просматривать другие сведения из базы данных.

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

DNS-сервер - сервер, содержащий сведения о части базы данных DNS, отвечающий на запросы DNS и разрешающий их.

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

Пространство доменных имен:

В случае группировки по организационному уровню имена доменов первого уровня образуются тремя символами:

Edu (образовательные учреждения),

Com (коммерческие организации),

Org (некоммерческие организации),

Gov (правительственные организации),

Mil (военные учреждения) и др.

Выход Интернета за пределы США привел к тому, что возникла необходимость в учете национальной принадлежности организаций и учреждений. В связи с этим система построения пространства имен DNS была модифицирована. Было предложено группировать домены по их принадлежности к некоторому государству. Для этого используются имена, состоящие из двух символов. Например:

Ru (Россия),

Ie (Ирландия),

Аu (Австралия)

Помимо этого существует еще один домен первого уровня, который используется для группировки обратных доменов (reverse domains). Обратные домены применяются для осуществления поиска доменного имени хоста по его IP-адресу. Этот специальный домен получил название.аrра, и он являлся единственным доменом первого уровня, имеющим имя из четырех символов. Домен содержит только несколько доменов второго уровня: .in-addr.arpa., ip6.arpa

Вопросами создания доменов первого и второго уровней занимается специальная организация -- Корпорация Интернета по выделению имен и адресов (Internet Corporation for Assigned Names and Numbers, ICANN).

Архитектура службы DNS

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

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

Модули распределяются по функциональным уровням, которые организуются в виде ВЕРТИКАЛЬНОГО СТЕКА:

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

Таким образом, функциональные уровни внутри одной системы взаимодействуют на строго иерархической основе.

Архитектура процессов в компьютерной сети

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

В 1983 году в целях упорядочения принципов взаимодействия устройств в сетях передачи данных Международная организация по стандартизации (МОС, ISO) утвердила в качестве международного стандарта 7-ми уровневую модель для архитектуры коммуникационных протоколов. Предполагалось , что эта модель должна послужить основой для разработки международных стандартов протоколов. Модель получила название - Эталонная модель Взаимодействия Открытых Систем ВОС (стандарт ISO #7498, рекомендация Международного Союза электросвязи МСЭ-Т Х.200). Разработчики модели полагали, что эта модель и протоколы, разрабатываемые в ее рамках, будут преобладать в средствах компьютерной связи, и, в конце концов, вытеснят фирменные протоколы и конкурирующие модели, такие как TCP/IP. Хотя этого не произошло, в рамках модели было создано много полезных протоколов. И в настоящее время, большинство разработчиков и поставщиков сетевого оборудования определяют свои продукты в терминах эталонной модели ВОС или OSI (Open System Interconnection).

Термин "открытая система " означает возможность использования в сети компьютеров разных типов и классов, с различным программным и аппаратным обеспечением. Главное, чтобы сетевые устройства использовали открытые (то есть, известные, стандартизованные) форматы данных, протоколы взаимодействия и интерфейсы. Это гарантирует возможность обмена информацией между пользователями сети, независимо от способов программной и аппаратной реализации используемых сетевых устройств. Такая сеть является открытой.

В соответствии с моделью OSI взаимодействие прикладных процессов пользователей в сети разбивается на 7 функциональных уровней.

Нумерация функциональных уровней идет снизу вверх. На рисунке показаны названия уровней ВОС и соответствующих уровневых протоколов.

На стороне передаче пересылаемый блок данных проходит вниз через все функциональные уровни компьютера-отправителя, а на приеме - проходит снизу вверх через все функциональные уровни получателя.

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

Функциональные уровни 1-4 (физический – транспортный) предоставляют транспортные услуги по доставке блока данных от прикладного процесса компьютера – источника до прикладного процесса компьютера – получателя информации.

Пакет, поступающий от смежного вышестоящего уровня, называется блоком данных протокола этого уровня PDU (Protocol Data Unit). Например, блок данных сетевого уровня может включать в себя собственно данные прикладного процесса пользователя (Данные ППП) и заголовки "Сет -….- Прик".

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

Правила, определяющие последовательность и формат сообщений, которыми обмениваются сетевые компоненты (модули, сущности) одного функционального уровня, но работающие в разных узлах, называются протоколом уровня.

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

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

Набор уровней и протоколов называется архитектурой сети.

Физический уровень обеспечивает передачу/прием неструктурированного потока бит в физической среде.

Уровень определяет механические , электрические и функциональные параметры физической связи, то есть описывает процесс прохождения сигналов через среду передачи между сетевыми устройствами. На этом уровне решаются вопросы: какое количество контактов должно быть в сетевом разъеме и для чего используется каждый контакт, какие сигналы используются для передачи битов "1" и "0" в последовательности данных, чему должна быть равна скорость модуляции В (число импульсов в секунду), как устанавливается начальное физическое соединение и как оно разрывается, как обеспечивается синхронизация приемника с поступающими сигналами.

Сетевое устройство - Повторитель или хаб (hub, repeater) выполняет только функции физического уровня. Функции хаба – усиление и ретрансляция сигналов. Хаб имеет несколько сетевых разъемов (портов) для подключения среды передачи (кабеля). Сигнал, поступивший на вход одного из портов, пересылается параллельно на все выходные порты (за исключением входного).

Канальный уровень (уровень звена данных). Звено данных – это участок сети, включающий два соседних сетевых устройства и физическую линию связи между ними. Например, компьютер пользователя – линия связи кабель UTP 5e – коммутатор.

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

Протокол канального уровня в глобальной (региональной) сети Wide Area Network (WAN) обеспечивает доставку кадра между соседними в сети узлами, соединенными индивидуальной линией связи.

Протокол канального уровня в локальной сети Local Area Network (LAN) может обеспечить доставку кадра между любыми узлами этой сети, но в современных сетях при этом задействуются протоколы вышестоящих уровней – сетевого и транспортного.

Локальные сети изначально строились с использованием разделяемой (share) среды передачи. В настоящее время методы разделения среды передачи в локальной сети используются на участках беспроводного доступа (например, WI-FI). Поэтому, канальный уровень LAN разделен на два подуровня (стандарты IEEE 802.x):

· LLC (Logical Link Control) - подуровень управления логическим каналом (взаимодействие с сетевым уровнем, управление потоком кадров, передача кадров между рабочими станциями сети в соответствии с определенной процедурой: 1) без установления логического соединения и без подтверждения правильного приема кадра; 2) с установлением логического соединения, нумерацией передаваемых кадров и повторной передачей искаженных кадров; 3) без установления логического соединения, но с подтверждением.

· MAC (Media Access Control) - подуровень управления доступом к среде передачи (реализация алгоритма доступа к среде, адресация узлов сети по физическим (аппаратным) адресам сетевых карт, проверка принятого кадра на наличие ошибок).

Сетевые устройства, выполняющие функции канального уровня –коммутатор (SW-switch), мост (bridge), сетевой адаптер (сетевая карта) узла в локальной сети (NIC – Network Interface Card).

Сетевой уровень отвечает за организацию маршрута передачи пакетов в сложной сети, состоящей из множества сегментов (подсетей), и позволяет работать в произвольных сетевых топологиях. Внутри сегментов могут использоваться совершенно разные принципы передачи сообщений между конечными узлами – компьютерами. Примером такой сети является сеть Интернет. Основным функциональным устройством сетевого уровня является маршрутизатор (router). Маршрутизатор всегда реализуется программно, протоколы сетевого уровня включаются в состав сетевой операционной системы компьютера.

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

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

Маршрутизатор (R, router) принимает решение о том, куда направлять поступающие пакеты данных, исходя из информации в заголовке сетевого уровня. Заголовок содержит сетевой адрес отправителя и адрес получателя, то есть числовые идентификаторы, которые позволяют однозначно определить устройство в сети.

Работу маршрутизатора поддерживают два процесса. Один процесс обрабатывает приходящие пакеты и выбирает для них по своей таблице маршрутизации исходящую линию (исходящий порт). Второй процесс отвечает за заполнение и обновление таблиц маршрутизации. Второй процесс работает в соответствии с определенным алгоритмом выбора маршрута – алгоритмом маршрутизации .

Алгоритмы маршрутизации можно разбить на два основных класса: адаптивные и неадаптивные .

Неадаптивные алгоритмы (статическая маршрутизация ) не учитывают топологию и текущее состояние сети и не измеряют трафик на линиях связи. Список маршрутов загружается в память маршрутизатора заранее и не изменяется при изменении состояния сети.

Адаптивные алгоритмы (динамическая маршрутизация ) изменяют решение о выборе маршрутов при изменении топологии сети и в зависимости от загруженности линий.

Маршрутизатор (router) определяет оптимальный (лучший) путь передачи пакета, вычисляя количественные показатели, которые называются метриками . Обычно лучший путь – это путь с наименьшей метрикой.

Переход пакета через маршрутизатор часто называют скачком (hop) или хопом .

Простейшие алгоритмы маршрутизации определяют маршрут на основании наименьшего числа транзитных узлов на пути к адресату (дистанционно-векторные алгоритмы DVA или маршрутизация по вектору расстояния, протокол маршрутизации RIP – routinginformationprotocol). Более сложные алгоритмы учитывают несколько показателей, например, общую задержку при передаче пакетов до узла назначения, пропускную способность каналов связи или денежную стоимость связи (протокол OSPF, алгоритмы состояния связей LSA, алгоритм Дейкстры – поиск оптимального маршрута на графе).

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

Транспортный уровень фактически отделяет приложение пользователя и три верхних уровня, которые отвечают за обработку данных , от физических и функциональных особенностей коммуникационной сети. Главная задача транспортного уровня – обеспечить надежный и прозрачный перенос данных между конечными точками (компьютерами пользователей, компьютером и сервером) через сеть.

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

Модель OSI определяет 5 классов сервиса (услуг), предоставляемых транспортным уровнем. Они отличаются срочностью, возможностью восстановления прерванного соединения, а главное – обнаружением и исправлением ошибок в принятых пакетах.

К средствам обнаружения и устранения ошибок транспортными протоколами относятся: предварительное установление логического соединения, вычисление контрольных сумм, нумерация пакетов (сегментов), установление таймеров доставки, повторная передача пакетов через сеть и т.д.

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

Представительный уровень или уровень представления определяет синтаксис передаваемых сообщений, то есть, набор символов алфавита и способы их представления в виде двоичных чисел (первичный код). Уровень обеспечивает процесс согласования различных кодировок, а также может выполнять шифрование, дешифрование и сжатие данных.

Прикладной уровень обеспечиваетдоступ дляприложений пользователя к сетевым службам , таким как доступ к файлам, пересылка электронной почты, обработчик запросов к базам данных. Уровень отвечает за семантику , то есть смысловое содержание сообщений, которыми обмениваются удаленные приложения.

Устройство, которое занимается распределение информационных потоков в сети и которое выполняет функции всех уровней до прикладного уровня включительно, называется шлюз (gateway ).


Похожая информация.


В этой статье будут рассказаны основы модели TCP/IP. Для лучшего понимания описаны основные протоколы и службы. Главное - не торопиться и стараться понимать каждую вещь поэтапно. Все они взаимосвязаны и без понимания одной, трудно будет понять другую. Здесь скомпонована весьма поверхностная информация, так что эту статью смело можно назвать «стеком протоколов TCP/IP для чайников». Однако, многие вещи здесь не так трудны для понимания, как может показаться на первый взгляд.

TCP/IP

Стек TCP/IP - сетевая модель передачи данных в сети, она определяет порядок взаимодействия устройств. Данные поступают на канальный уровень и обрабатываются поочередно каждым уровнем выше. Стек представлен в виде абстракции, которая объясняет принципы обработки и приема данных.

Стек протоколов сети TCP/IP имеет 4 уровня:

  1. Канальный (Link).
  2. Сетевой (Internet).
  3. Транспортный (Transport).
  4. Прикладной (Application).

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

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

  • HTTP;
  • SMTP;

Каждый протокол определяет собственный порядок и принципы работы с данными.

HTTP (HyperText Transfer Protocol) предназначен для передачи данных. По нему отправляются, например, документы в формате HTML, которые служат основой веб-страницы. Упрощенно схема работы представляется как «клиент - сервер». Клиент отправляет запрос, сервер его принимает, должным образом обрабатывает и возвращает конечный результат.

Служит стандартом передачи файлов в сети. Клиент посылает запрос на некий файл, сервер ищет этот файл в своей базе и при успешном обнаружении отправляет его как ответ.

Используется для передачи электронной почты. SMTP-операция включает в себя три последовательных шага:

  1. Определение адреса отправителя. Это необходимо для возвращения писем.
  2. Определение получателя. Этот шаг может повторяться некоторое количество раз при указании нескольких адресатов.
  3. Определение содержимого сообщения и отправка. В качестве служебной информации передаются данные о типе сообщения. Если сервер подтверждает готовность принять пакет, то совершается сама транзакция.

Заголовок (Header)

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

Например, заголовок, вложенный на транспортном уровне, на другой стороне может быть обработан только транспортным уровнем. Другие просто его проигнорируют.

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

На транспортном уровне полученная информация обрабатывается как единый блок, вне зависимости от содержимого. Полученные сообщения делятся на сегменты, к ним добавляется заголовок, и все это отправляется ниже.

Протоколы передачи данных:

Самый распространенный протокол. Он отвечает за гарантированную передачу данных. При отправке пакетов контролируется их контрольная сумма, процесс транзакции. Это значит, что информация дойдет «в целости и сохранности» независимо от условий.

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

TCP или UDP?

У каждого из этих протоколов есть своя область применения. Она логически обусловлена особенностями работы.

Основное преимущество UDP заключается в скорости передачи. TCP является сложным протоколом с множеством проверок, в то время как UDP представляется более упрощенным, а значит, и более быстрым.

Недостаток кроется в простоте. Ввиду отсутствия проверок не гарантируется целостность данных. Таким образом, информация просто отправляется, а все проверки и подобные манипуляции остаются за приложением.

UDP используется, например, для просмотра видео. Для видеофайла не критична потеря небольшого количества сегментов, в то время как скорость загрузки - важнейший фактор.

Однако если необходимо отправить пароли или реквизиты банковской карты, то необходимость использования TCP очевидна. Потеря даже самой мизерной части данных может повлечь за собой катастрофические последствия. Скорость в этом случае не так важна, как безопасность.

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

Сетевой уровень из полученной информации образует пакеты и добавляет заголовок. Наиболее важной частью данных являются IP и MAC-адреса отправителей и получателей.

IP-адрес (Internet Protocol address) - логический адрес устройства. Содержит информацию о местоположении устройства в сети. Пример записи: .

MAC-адрес (Media Access Control address) - физический адрес устройства. Используется для идентификации. Присваивается сетевому оборудованию на этапе изготовления. Представлен как шестибайтный номер. Например: .

Сетевой уровень отвечает за:

  • Определение маршрутов доставки.
  • Передачу пакетов между сетями.
  • Присвоение уникальных адресов.

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

Самый популярный протокол этого уровня - IP.

IP (Internet Protocol) - интернет-протокол, предназначенный для адресации в сети. Используется для построения маршрутов, по которым происходит обмен пакетами. Не обладает никакими средствами проверки и подтверждения целостности. Для обеспечения гарантий доставки используется TCP, который использует IP в качестве транспортного протокола. Понимание принципов этой транзакции во многом объясняет основу того, как работает стек протоколов TCP/IP.

Виды IP-адресов

В сетях используются два вида IP-адресов:

  1. Публичные.
  2. Приватные.

Публичные (Public) используются в Интернете. Главное правило - абсолютная уникальность. Пример их использования - маршрутизаторы, каждый из которых имеет свой IP-адрес для взаимодействия с сетью Интернет. Такой адрес называется публичным.

Приватные (Private) не используются в Интернете. В глобальной сети такие адреса не являются уникальными. Пример - локальная сеть. Каждому устройству присваивается уникальный в пределах данной сети IP-адрес.

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

IPv4

Самая распространенная версия интернет-протокола. Предшествует IPv6. Формат записи - четыре восьмибитных числа, разделенные точками. Через знак дроби указывается маска подсети. Длина адреса - 32 бита. В подавляющем большинстве случаев, когда речь идет об IP-адресе, имеется в виду именно IPv4.

Формат записи: .

IPv6

Эта версия предназначается для решения проблем предыдущей версией. Длина адреса - 128 бит.

Основная проблема, которую решает IPv6 - это исчерпание адресов IPv4. Предпосылки начали проявляться уже в начале 80-х годов. Несмотря на то, что эта проблема вступила в острую стадию уже в 2007-2009 годах, внедрение IPv6 очень медленно «набирает обороты».

Главное преимущество IPv6 - более быстрое интернет-соединение. Это происходит из-за того, что для этой версии протокола не требуется трансляции адресов. Выполняется простая маршрутизация. Это является менее затратным и, следовательно, доступ к интернет-ресурсам предоставляется быстрее, чем в IPv4.

Пример записи: .

Существует три типа IPv6-адресов:

  1. Unicast.
  2. Anycast.
  3. Multicast.

Unicast - тип одноадресных IPv6. При отправке пакет достигает только интерфейса, расположенного на соответствующем адресе.

Anycast относится к групповым IPv6-адресам. Отправленный пакет попадет в ближайший сетевой интерфейс. Используется только маршрутизаторами.

Multicast являются многоадресными. Это значит, что отправленный пакет достигнет всех интерфейсов, находящихся группе мультивещания. В отличие от broadcast, который является «вещанием для всех», multicast вещает лишь определенной группе.

Маска подсети

Маска подсети выявляет из IP-адреса подсеть и номер хоста.

Например, IP-адрес имеет маску . В таком случае формат записи будет выглядеть так . Число «24» - это количество бит в маске. Восемь бит равняется одному октету, который также может называться байтом.

Если подробнее, то маску подсети можно представить в двоичной системе счисления таким образом: . В ней имеется четыре октета, и запись состоит из «1» и «0». Если сложить количество единиц, то получим в сумме «24». К счастью, считать по единице не обязательно, ведь в одном октете - 8 значений. Видим, что три из них заполнены единицами, складываем и получаем «24».

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

Рассмотрим небольшой пример. Есть IP-адрес и маска подсети . Считаем и записываем: . Теперь сопоставляем маску с IP-адресом. Те октеты маски, в которых все значения равны единице (255) оставляют соответствующие им октеты в IP-адресе без изменения. Если же в значении нули (0), то октеты в IP-адресе также становятся нулями. Таким образом, в значении адреса подсети получаем .

Подсеть и хост

Подсеть отвечает за логическое разделение. По сути, это устройства, использующие одну локальную сеть. Определяется диапазоном IP-адресов.

Хост - это адрес сетевого интерфейса (сетевой карты). Определяется из IP-адреса с помощью маски. Например: . Так как первые три октета - подсеть, то остается . Это и есть номер хоста.

Диапазон адресов хоста - от 0 до 255. Хост под номером «0» является, собственно, адресом самой подсети. А хост под номером «255» является широковещательным.

Адресация

Для адресации в стеке протоколов TCP/IP используются три типа адресов:

  1. Локальные.
  2. Сетевые.
  3. Доменные имена.

Локальными называются MAC-адреса. Они используются для адресации в таких технологиях локальной сети как, например, Ethernet. В контексте TCP/IP слово «локальные» означает, что они действуют лишь в пределах подсети.

Сетевым адресом в стеке протоколов TCP/IP является IP-адрес. При отправке файла из его заголовка считывается адрес получателя. С его помощью маршрутизатор узнает номер хоста и подсеть и, основываясь на этой информации, прокладывает маршрут к конечному узлу.

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

Домен первого уровня представляет конкретную информацию. Общие (.org, .net) не ограничены какими-либо строгими границами. Обратная ситуация - с локальными (.us, .ru). Они, как правило, привязаны территориально.

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

Например, "www.test.quiz.sg" - корректное доменное имя, где «sg» - локальный домен первого (верхнего) уровня, «quiz.sg» - домен второго уровня, «test.quiz.sg» - домен третьего уровня. Доменные имена также могут называться DNS-именами.

Устанавливает соответствие между доменными именами и публичным IP-адресом. При наборе доменного имени в строке браузера DNS обнаружит соответствующий IP-адрес и сообщит устройству. Устройство обработает этот и вернет его в виде веб-страницы.

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

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

Самые распространенные протоколы:

  1. Ethernet.
  2. WLAN.

Ethernet - наиболее распространенная технология проводных локальных сетей.

WLAN - локальная сеть на основе беспроводных технологий. Взаимодействие устройств происходит без физических кабельных соединений. Пример самого распространенного метода - Wi-Fi.

Настройка TCP/IP для использования статического IPv4-адреса

Статический IPv4-адрес назначается напрямую в настройках устройства или автоматически при подключении к сети и является постоянным.

Для настройки стека протоколов TCP/IP на использование постоянного IPv4-адреса необходимо ввести в консоль команду ipconfig/all и найти следующие данные.

Настройка TCP/IP для использования динамического IPv4-адреса

Динамический IPv4-адрес используется какое-то время, сдается в аренду, после чего меняется. Присваивается устройству автоматически при подключении к сети.

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

Способы передачи данных

Данные передаются через физическую среду тремя способами:

  • Simplex.
  • Half-duplex.
  • Full Duplex.

Simplex - это односторонняя связь. Передача ведется только одним устройством, в то время как другое только принимает сигнал. Можно сказать, что информация транслируется только в одном направлении.

Примеры симплексной связи:

  • Телевещание.
  • Сигнал от спутников GPS.

Half-duplex - это двусторонняя связь. Однако только один узел может передавать сигнал в определенный момент времени. При такой связи два устройства не могут одновременно использовать один канал. Полноценная может быть невозможна физически или приводить к коллизиям. Говорится, что они конфликтуют за среду передачи. Этот режим применяется при использовании коаксиального кабеля.

Пример полудуплексной связи - общение по рации на одной частоте.

Full Duplex - полноценная двусторонняя связь. Устройства могут одновременно транслировать сигнал и производить прием. Они не конфликтуют за среду передачи. Этот режим применяется при использовании технологии Fast Ethernet и соединении с помощью витой пары.

Пример дуплексной связи - общение по телефону через мобильную сеть.

TCP/IP vs OSI

Модель OSI определяет принципы передачи данных. Уровни стека протоколов TCP/IP прямо соответствуют этой модели. В отличие от четырехуровневого TCP/IP имеет 7 уровней:

  1. Физический (Physical).
  2. Канальный (Data Link).
  3. Сетевой (Network).
  4. Транспортный (Transport).
  5. Сеансовый (Session).
  6. Представительский (Presentation).
  7. Прикладной (Application).

В данный момент не стоит сильно углубляться в эту модель, но необходимо хотя бы поверхностное понимание.

Прикладной уровень в модели TCP/IP соответствует трем верхним уровням OSI. Все они работают с приложениями, поэтому можно отчетливо проследить логику такого объединения. Такая обобщенная структура стека протоколов TCP/IP способствует облегченному пониманию абстракции.

Транспортный уровень остается без изменений. Выполняет одинаковые функции.

Сетевой уровень также не изменен. Выполняет ровно те же задачи.

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

Физический представляет собой собственно физическую связь - электрические сигналы, коннекторы и т.п. В стеке протоколов TCP/IP было решено объединить эти два уровня в один, так как они оба работают с физической средой.

Стек протоколов TCP/IP (англ. Transmission Control Protocol/Internet Protocol - протокол управления передачей) - набор сетевых протоколов разных уровней модели сетевого взаимодействия DOD, используемых в сетях. Протоколы работают друг с другом в стеке (англ. stack , стопка) - это означает, что протокол, располагающийся на уровне выше, работает «поверх» нижнего, используя механизмы инкапсуляции. Например, протокол TCP работает поверх протокола IP.

Стек протоколов TCP/IP основан на модели сетевого взаимодействия DOD и включает в себя протоколы четырёх уровней:

· прикладного (application),

· транспортного (transport),

· сетевого (network),

· канального (data link).

Протоколы этих уровней полностью реализуют функциональные возможности модели OSI. На стеке протоколов TCP/IP построено всё взаимодействие пользователей в IP-сетях. Стек является независимым от физической среды передачи данных.

[править]Физический уровень

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

[править]Канальный уровень

Канальный уровень описывает, каким образом передаются пакеты данных через физический уровень, включая кодирование (то есть специальные последовательности бит, определяющих начало и конец пакета данных). Ethernet, например, в полях заголовка пакета содержит указание того, какой машине или машинам в сети предназначен этот пакет.

Примеры протоколов канального уровня - Ethernet, IEEE 802.11Wireless Ethernet, SLIP, Token Ring, ATM и MPLS.

PPP не совсем вписывается в такое определение, поэтому обычно описывается в виде пары протоколов HDLC/SDLC.

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

Канальный уровень иногда разделяют на 2 подуровня - LLC и MAC.

[править]Сетевой уровень

Сетевой уровень изначально разработан для передачи данных из одной (под)сети в другую. Примерами такого протокола является X.25 и IPC в сети ARPANET.

С развитием концепции глобальной сети в уровень были внесены дополнительные возможности по передаче из любой сети в любую сеть, независимо от протоколов нижнего уровня, а также возможность запрашивать данные от удалённой стороны, например в протоколе ICMP (используется для передачи диагностической информации IP-соединения) и IGMP (используется для управления multicast-потоками).



ICMP и IGMP расположены над IP и должны попасть на следующий - транспортный - уровень, но функционально являются протоколами сетевого уровня, и поэтому их невозможно вписать в модель OSI.

Пакеты сетевого протокола IP могут содержать код, указывающий, какой именно протокол следующего уровня нужно использовать, чтобы извлечь данные из пакета. Это число - уникальный IP-номер протокола . ICMP и IGMP имеют номера, соответственно, 1 и 2.

К этому уровню относятся: DHCP , DVMRP, ICMP, IGMP, MARS, PIM, RIP, RIP2, RSVP

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

Протоколы транспортного уровня могут решать проблему негарантированной доставки сообщений («дошло ли сообщение до адресата?»), а также гарантировать правильную последовательность прихода данных. В стеке TCP/IP транспортные протоколы определяют, для какого именно приложения предназначены эти данные.

Протоколы автоматической маршрутизации, логически представленные на этом уровне (поскольку работают поверх IP), на самом деле являются частью протоколов сетевого уровня; например OSPF (IP идентификатор 89).

TCP (IP идентификатор 6) - «гарантированный» транспортный механизм с предварительным установлением соединения, предоставляющий приложению надёжный поток данных, дающий уверенность в безошибочности получаемых данных, перезапрашивающий данные в случае потери и устраняющий дублирование данных. TCP позволяет регулировать нагрузку на сеть, а также уменьшать время ожидания данных при передаче на большие расстояния. Более того, TCP гарантирует, что полученные данные были отправлены точно в такой же последовательности. В этом его главное отличие от UDP.

UDP (IP идентификатор 17) протокол передачи датаграмм без установления соединения. Также его называют протоколом «ненадёжной» передачи, в смысле невозможности удостовериться в доставке сообщения адресату, а также возможного перемешивания пакетов. В приложениях, требующих гарантированной передачи данных, используется протокол TCP.



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

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

См. также: Список портов TCP и UDP

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

На прикладном уровне работает большинство сетевых приложений.

Эти программы имеют свои собственные протоколы обмена информацией, например, HTTP для WWW, FTP (передача файлов), SMTP (электронная почта), SSH (безопасное соединение с удалённой машиной), DNS (преобразование символьных имён в IP-адреса) и многие другие.

В массе своей эти протоколы работают поверх TCP или UDP и привязаны к определённому порту, например:

· HTTP на TCP-порт 80 или 8080,

· FTP на TCP-порт 20 (для передачи данных) и 21 (для управляющих команд),

· SSH на TCP-порт 22,

· запросы DNS на порт UDP (реже TCP) 53,

· обновление маршрутов по протоколу RIP на UDP-порт 520.

Эти порты определены Агентством по выделению имен и уникальных параметров протоколов (IANA).

К этому уровню относятся: Echo, Finger, Gopher, HTTP, HTTPS, IMAP, IMAPS, IRC, NNTP, NTP, POP3, POPS, QOTD, RTSP, SNMP, SSH, Telnet, XDMCP.

Методы доступа в сети

Метод доступа – набор правил, определяющих использование сети.

Реализуется на физическом уровне.

Задачей метода доступа является решение вопроса об использовании кабеля, соединяющего пользователей в сети.

Метод Ethernet

Множественный доступ с прослушиванием несущей и разрешением конфликтов.

Любой ПК в сети «слышит» каждую передачу, однако не любой ПК ее принимает.

Любой ПК передает сообщение, в котором есть адрес приемника и отправителя. Все ПК слышат сообщения, но только один распознает его, принимает, посылает подтверждение.

Конфликт происходит, если два ПК одновременно передают сообщения. Тогда они прекращают передачу на случайный интервал времени, а затем возобновляют ее.

Метод Archnet

Метод доступа с эстафетной передачей для сети со звездообразной топологией.

ПК может передать сообщение, если получит маркер (token) – последовательность битов, созданную одним из ПК. Маркер перемещается по цепи как по кольцу. Все ПК имеют номер (от 0 до 255). Маркер идет от ПК к ПК. Когда ПК получает маркер, он может передать пакет данных (до 512 байт), включая адрес отправителя и приемника. Весь пакет идет от узла к узлу, пока не достигнет адресата. В этом узле данные выводятся, а маркер идет дальше.

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

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

Метод TokenRing

Передача маркера по кольцу (кольцевая топология)

При получении пустого маркера ПК может передать сообщение в течении определенного времени. Такое сообщение называется кадр (frame). Приемник копирует сообщение в свою память, но не выводит его из кольца. Это делает передающий компьютер, когда получает свое сообщение обратно.

Существует механизм приоритетов.

Преимущество – надежность и простота.

Можно отключать неисправные ПК

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Введение

1. Иерархия протоколов TCP/IP

2. Архитектура протоколов TCP/IP

3. Основные протоколы семейства TCP/IP

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

4.1 Маршрутизация

Заключение

Список литературы

Введение

Сеть Internet - это сеть сетей, объединяющая как локальные сети, так и глобальные сети. Поэтому центральным местом при обсуждении принципов построения сети является семейство протоколов межсетевого обмена TCP/IP. Под термином "TCP/IP" обычно понимают все, что связано с протоколами TCP и IP. Это не только собственно сами проколы с указанными именами, но и протоколы построенные на использовании TCP и IP, и прикладные программы. Главной задачей стека TCP/IP является объединение в сеть пакетных подсетей через шлюзы.

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

Маршрутизация - это процедура определения пути следования пакета из одной сети в другую.

Такой механизм доставки становится возможным благодаря реализации во всех узлах сети протокола межсетевого обмена IP. Если обратиться к истории создания сети Internet, то с самого начала предполагалось разработать спецификации сети коммутации пакетов. Это значит, что любое сообщение, которое отправляется по сети, должно быть при отправке "нашинковано" на фрагменты. Каждый из фрагментов должен быть снабжен адресами отправителя и получателя, а также номером этого пакета в последовательности пакетов, составляющих все сообщение в целом. Такая система позволяет на каждом шлюзе выбирать маршрут, основываясь на текущей информации о состоянии сети, что повышает надежность системы в целом. При этом каждый пакет может пройти от отправителя к получателю по своему собственному маршруту. Порядок получения пакетов получателем не имеет большого значения, т.к. каждый пакет несет в себе информацию о своем месте в сообщении. При создании этой системы принципиальным было обеспечение ее живучести и надежной доставки сообщений, т.к. предполагалось, что система должна была обеспечивать управление Вооруженными Силами США в случае нанесения ядерного удара по территории страны.

1. Иерархия протоколов TCP/IP

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

Семейство TCP/IP принято подразделять на четыре уровня:

1. Канальный уровень (link layer, data-link layer), или уровень сетевого интерфейса (network interface), содержит две основные компоненты: аппаратный сетевой интерфейс компьютера (сетевую карту) и со от соответствующий драйвер этого сетевого интерфейса в операционной системе. Вместе они обеспечивают как физическое подключение к кабелю (или к другой физической среде), так и управление всеми аппаратными процессами передачи.

2. Сетевой уровень (network layer, internet layer) отвечает за перемещение пакетов по тому или иному маршруту в сети. В семействе протоколов ТСР/IР сетевой уровень представлен: протоколами: IP (Internet Protocol), ICMP (Internet Control Message Protocol) и IGMP (Internet Group Management Protocol).

3. Транспортный уровень (transport, layer) организует для вышестоящего прикладного уровня обмен данными между двумя компьютерами и сети. В семействе протоколов TCP/IP одновременно используются два существенно различных транспортных протокола: TCP (Transmission Control Protocol -- протокол управления передачей данных) и UDP (User Datagram Protocol -- протокол дейтаграмм пользователя). TCP обеспечивает надежную передачу потоков данных между двумя компьютерами в сети. В его задачи входит: разделять данные, поступающие от обслуживаемых им приложений, на блоки приемлемого размера для нижестоящего сетевого уровня; подтверждать получение пришедших к нему по сети пакетов; в течение установленных им периодов времени (таймаутов) ожидать прихода подтверждений о получении отправленных им пакетов и т. п. Поскольку TCP берет нa себя все проблемы обеспечения надежной доставки врученных ему данных по назначению, то прикладной уровень освобождается от этих забот. Напротив, UDP предоставляет прикладному уровню намного более примитивный сервис. Он лишь рассылает данные адресатам в виде пакетов, называемых UDP-дейтаграммами (UDP datagrams), без гарантии их доставки, Предполагается, что требуемая степень надежности пересылки должна обеспечиваться самим прикладным уровнем. Каждый из этих двух транспортных протоколов находит соответствующее его достоинствам и недостаткам применение. Причины, по которым для одних приложений предпочтителен TCP, а для других -- UDP, станут понятны при рассмотрении самих приложений.

4. Прикладной уровень (application layer) обеспечивает выполнение разнообразных прикладных задач. Существует определенный "классический” набор стандартных прикладных сервисов, которые предлагаются в большинстве реализаций семейства TCP/IP. В их числе:

· Telnet - протокол удаленного доступа,

· FTP (File Transfer Protocol) -- протокол передачи файлов.

· SMTP (Simple Mail Transfer Protocol) -- простой протокол обмена электронной почтой,

· SNMP (Simple Network Management Protocol) -- простой протокол управления сетью.

2. Архитектура протоколов TCP/IP

Архитектура протоколов TCP/IP предназначена для объединенной сети, состоящей из соединенных друг с другом шлюзами отдельных разнородных пакетных подсетей, к которым подключаются разнородные машины. Каждая из подсетей работает в соответствии со своими специфическими требованиями и имеет свою природу средств связи. Однако предполагается, что каждая подсеть может принять пакет информации (данные с соответствующим сетевым заголовком) и доставить его по указанному адресу в этой конкретной подсети. Не требуется, чтобы подсеть гарантировала обязательную доставку пакетов и имела надежный сквозной протокол. Таким образом, две машины, подключенные к одной подсети могут обмениваться пакетами.

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

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

3. Основные протоколы семейства TCP/IP

В семействе протоколов TCP/IP на транспортном уровне действуют протоколы TCP и UDP. Оба опираются на протокол IP в качестве нижележащего сетевого уровня.

TCP обеспечивает надежную транспортную службу поверх ненадежного сервиса IP.

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

Основным протоколом сетевого уровня является IР. Он обслуживает как TCP, так и UDP. Каждая порция данных формируемых TCP или UDP для пересылки по интерсети, проходит через уровень IP как на оконечных хостах, так и на каждом промежуточном маршрутизаторе. Также некий пользовательский процесс, имеющий прямой доступ к IP. Это допустимое исключение -- некоторые протоколы маршрутизации напрямую контактируют с IP; кроме того, эта возможность используется и при проведении экспериментов с новыми протоколами транспортного уровня

Протокол IСМР примыкает к IP. Он служит для обмена сообщениями об ошибках и иной важной информацией с IP-модулем другого хоста или маршрутизатора. Хотя ICMP используется в основном протоколом IP, прикладная задача также может иметь к нему доступ. Мы увидим, что два наиболее популярных средства диагностики, Ping и Traceroute, обращаются к ICMP непосредственно, минуя IP.

IGMP используется при групповой пересылке данных, то есть когда UDP-дейтаграммы предназначены одновременно нескольким хостам. Мы расскажем об основных свойствах широковещательной (broadcasting) передачи UDP-дейтаграмм, адресованных всем хостам указанной сети, и о групповой пересылке данных (multicasting).

ARP и RARP -- специализированные протоколы, используемые определенными типами сетевых интерфейсов (например, Ethernet или Token Ring) для отображения адресов уровня IP в соответствующие им адреса канального уровня.

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

В семействе TCP/IP протоколу IP отведена роль "рабочей лошадки": в IP-дейтаграммах передаются все данные TCP, UDP, ICMP иIGMP. Однако доставка IP-дейтаграмм -- это по определению ненадежный и не поддерживающий соединение сервис.

Ненадежный сервис не гарантирует того, что IP-дейтаграмма успешно доберется к месту назначения. О такой доставке пакетов принято говорить, что делается все возможное, но успех попытки зависит от обстоятельств (best effort deliveiy). Если на промежуточном узле происходит сбой (например, временно переполнен буфер маршрутизатора), то его IP-модуль действует просто: он уничтожает дейтаграмму. Предполагается, что требуемая степень надежности должна обеспечиваться протоколами верхних уровней (например,TCP).

Термин не поддерживающий соединение (connectionless) означает, что IP не ведет никакого учета очередности доставки дейтаграмм и каждая обрабатывается независимо от остальных. Как следствие, очередность доставки может нарушаться. Когда хост одну за другой последовательно отправляет две дейтаграммы (сначала А, потом В) одному и тому же адресату, маршрутизация обеих происходит независимо. Маршруты их продвижения могут оказаться разными, причем такими, что В прибудет раньше А.

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

4.1 Маршрутизация

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

Заключение

Семейство протоколов TCP/IP работает на любых моделях компьютеров, произведенных различными производителями компьютерной техники и работающих под управлением различных операционных систем. С помощью протоколов TCP/IP можно объединить практически любые компьютеры. И что самое удивительное, сегодняшние реализации протокола TCP/IP очень далеки от того, как он задумывался исходно. В конце 60-х годов начался исследовательский проект, финансируемый правительством США, по разработке сети пакетной коммутации, а в 90-х годах результаты этих исследований превратились в наиболее широко используемую форму сетевого взаимодействия между компьютерами. В настоящее время это действительно открытая система, а именно, семейство протоколов и большое количество бесплатных реализаций (либо достаточно дешевых). Они составляют основу того, что в настоящее время называется словом Internet.

Список литературы

сетевой интерфейс пользовательский

1. Брежнев А.Ф., Смелянский Р.Л. «Семейство протоколов TCP/IP»

2. Н. Угринович «Информатика и информационные технологии»

3. http://www.citforum.ru/internet/comer/contents.shtml

4. http://tcpips.ru/?Obzor_TCP%2FIP:Realizacii_TCP%2FIP_v_Unix

5. http://tcpip.pp.ru/

Размещено на Allbest.ru

...

Подобные документы

    Механизм создания и обмена пакетами в сети передачи информации на основе стека протоколов ZigBee. Принцип действия, особенности работы и коммутации с другими протоколами, определение основных методов и способов защиты информации, передаваемой в сети.

    курсовая работа , добавлен 12.09.2012

    Стеки протоколов общемировой сетевой базе. Формат кадра сообщения NetBIOS. Использование в сети стеков коммуникационных протоколов: IPX/SPX, TCP/IP, OSI и DECnet. Дистанционное управление освещением. Особенности использования коммуникационных протоколов.

    презентация , добавлен 21.02.2015

    Стандартные сети коммуникационных протоколов. Стек OSI. Стек TCP/IP. Принципы объединения сетей на основе протоколов сетевого уровня. Ограничения мостов и коммутаторов. Модем как средство связи между компьютерами. Международные стандарты модемов.

    курсовая работа , добавлен 06.07.2008

    Разработка структуры локально-вычислительной сети ГБОУ СПО "ВПТ". Обоснование топологии, выбор аппаратного обеспечения для коммутации и сегментации. Установка и настройка сетевых протоколов и служб. Система мониторинга сетевых узлов и сетевого трафика.

    дипломная работа , добавлен 25.10.2013

    Общие понятия, задачи и характеристика компьютерной сети TMN: технология управления, состав и назначение основных элементов, функциональные возможности, архитектура. Реализация управления в модели ВОС. Сравнительная характеристика протоколов SNMP и CMIP.

    курсовая работа , добавлен 18.03.2011

    Формализация требований к локально-вычислительной сети (ЛВС). Выбор и обоснование аппаратного обеспечения для коммутации и сегментации ЛВС. Установка и настройка сетевых протоколов и служб. Тестирование и отладка ЛВС: выявление неисправностей и пр.

    дипломная работа , добавлен 17.09.2017

    Элементы коммуникационной сети. Сетевое сообщение согласно модели ISO. Уровни сетевых протоколов. Устойчивость сетей к ошибкам, их обнаружение и реконфигурация. Задачи проектирования. Функционирование сети Ethernet, структура пакета. Схема работы GPRS.

    лекция , добавлен 24.01.2014

    Разработка первой программы для отправки электронной почты по сети. Развитие протоколов передачи данных. Роль Джона Постела в разработке и стандартизации сетевых протоколов. Способы подключения к Интернету. Настройка СТРИМ. Доступ через сотовую связь.

    презентация , добавлен 30.04.2014

    Локальная вычислительная сеть управления систем связи и телекоммуникаций автомастерской. Пропускная способность каналов между клиентами сети и серверами. Отличия стека протоколов 100Base-T от стека протоколов 10Base-T. Расчет работоспособности сети.

    курсовая работа , добавлен 18.01.2016

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