Коммутаторы локальных сетей, основные функции, принцип работы
Вид материала | Документы |
СодержаниеПротокол надежной доставки TCP-сообщений Сегменты и потоки Реализация скользящего окна в протоколе TCP Автоматизация процесса назначения IP адресов – протокол DHCP. Алгоритм маршрутизации |
- Тема: Основные понятия локальных сетей. Особенности организации локальных сетей, 171.05kb.
- Тема Организация локальных компьютерных сетей Урок Назначение и состав локальных сетей., 131.8kb.
- Методические указания к лабораторной работе №5 по курсу "Системы передачи данных" Проектирование, 49.75kb.
- Сетевое передающее оборудование, 891.88kb.
- Программа подготовки магистров по направлению подготовки 230100 «Информатика и вычислительная, 24.68kb.
- "Основные устройства эвм, их функции и взаимосвязь в процессе работы. Магистрально, 144.73kb.
- Учебная программа по дисциплине администрирование локальных сетей растягаев Д. В. Цели, 88.29kb.
- Взаимодействие локальных и глобальных сетей, 772.19kb.
- Интерфейсы, протоколы, стеки протоколов, 593.76kb.
- Рабочей программы учебной дисциплины б3+ Администрирование компьютерных сетей Уровень, 72.29kb.
Протокол надежной доставки TCP-сообщенийПротокол IP является дейтаграммным протоколом и поэтому по своей природе не может гарантировать надежность передачи данных. Эту задачу - обеспечение надежного канала обмена данными между прикладными процессами в составной сети -решает протокол TCP (Transmission Control Protocol), относящийся к транспортному уровню. Протокол TCP работает непосредственно над протоколом IP и использует для транспортировки своих блоков данных потенциально ненадежный протокол IP. Надежность передачи данных протоколом TCP достигается за счет того, что он основан на установлении логических соединений между взаимодействующими процессами. До тех пор пока программы протокола TCP продолжают функционировать корректно, а составная сеть не распалась на несвязные части, ошибки в передаче данных на уровне протокола IP не будут влиять на правильное получение данных. Протокол IP используется протоколом TCP в качестве транспортного средства. Перед отправкой своих блоков данных протокол TCP помещает их в оболочку IP-пакета. При необходимости протокол IP осуществляет любую фрагментацию и сборку блоков данных TCP, требующуюся для осуществления передачи и доставки через множество сетей и промежуточных шлюзов. На рис. 5.22 показано, как процессы, выполняющиеся на двух конечных узлах, устанавливают с помощью протокола TCP надежную связь через составную сеть, все узлы которой используют для передачи сообщений дейтаграммный протокол IP. ПортыПротокол TCP взаимодействует через межуровневые интерфейсы с ниже лежащим протоколом IP и с выше лежащими протоколами прикладного уровня или приложениями. В то время как задачей сетевого уровня, к которому относится протокол IP, является передача данных между произвольными узлами сети, задача транспортного уровня, которую решает протокол TCP, заключается в передаче данных между любыми прикладными процессами, выполняющимися на любых узлах сети. Действительно, после того как пакет средствами протокола IP доставлен в компьютер-получатель, данные необходимо направить конкретному процессу-получателю. Каждый компьютер может выполнять несколько процессов, более того, прикладной процесс тоже может иметь несколько точек входа, выступающих в качестве адреса назначения для пакетов данных. Пакеты, поступающие на транспортный уровень, организуются операционной системой в виде множества очередей к точкам входа различных прикладных процессов. В терминологии TCP/IP такие системные очереди называются портами. Таким образом, адресом назначения, который используется протоколом TCP, является идентификатор (номер) порта прикладной службы. Номер порта в совокупности с номером сети и номером конечного узла однозначно определяют прикладной процесс в сети. Этот набор идентифицирующих параметров имеет название сокет (socket). Назначение номеров портов прикладным процессам осуществляется либо централизованно, если эти процессы представляют собой популярные общедоступные службы (например, номер 21 закреплен за службой удаленного доступа к файлам FTP, a 23 - за службой удаленного управления telnet), либо локально для тех служб, которые еще не стали столь распространенными, чтобы закреплять за ними стандартные (зарезервированные) номера. Централизованное присвоение службам номеров портов выполняется организацией Internet Assigned Numbers Authority (IANA). Эти номера затем закрепляются и опубликовываются в стандартах Internet (RFC 1700). Локальное присвоение номера порта заключается в том, что разработчик некоторого приложения просто связывает с ним любой доступный, произвольно выбранный числовой идентификатор, обращая внимание на то, чтобы он не входил в число зарезервированных номеров портов. В дальнейшем все удаленные запросы к данному приложению от других приложений должны адресоваться с указанием назначенного ему номера порта. Протокол TCP ведет для каждого порта две очереди: очередь пакетов, поступающих в данный порт из сети, и очередь пакетов, отправляемых данным портом в сеть. Процедура обслуживания протоколом TCP запросов, поступающих от нескольких различных прикладных служб, называется мультиплексированием. Обратная процедура распределения протоколом TCP поступающих от сетевого уровня пакетов между набором высокоуровневых служб, идентифицированных номерами портов, называется демультиплексированием Сегменты и потокиЕдиницей данных протокола TCP является сегмент. Информация, поступающая к протоколу TCP в рамках логического соединения от протоколов более высокого уровня, рассматривается протоколом TCP как неструктурированный поток байтов. Поступающие данные буферизуются средствами TCP. Для передачи на сетевой уровень из буфера «вырезается» некоторая непрерывная часть данных, которая и называется сегментом (см. рис. 5.23). В отличие от многих других протоколов, протокол TCP подтверждает получение не пакетов, а байтов потока. Не все сегменты, посланные через соединение, будут одного и того же размера, однако оба участника соединения должны договориться о максимальном размере сегмента, который они будут использовать. Этот размер выбирается таким образом, чтобы при упаковке сегмента в IP-пакет он помещался туда целиком, то есть максимальный размер сегмента не должен превосходить максимального размера поля данных IP-пакета, В противном случае пришлось бы выполнять фрагментацию, то есть делить сегмент на несколько частей, чтобы разместить его в IP-пакете, СоединенияДля организации надежной передачи данных предусматривается установление логического соединения между двумя прикладными процессами. Поскольку соединения устанавливаются через ненадежную коммуникационную систему, основанную на протоколе IP, то во избежание ошибочной инициализации соединений используется специальная многошаговая процедура подтверждения связи. Соединение в протоколе TCP идентифицируется парой полных адресов обоих взаимодействующих процессов - сокетов. Каждый из взаимодействующих процессов может участвовать в нескольких соединениях. Формально соединение можно определить как набор параметров, характеризующий процедуру обмена данными между двумя процессами. Помимо полных адресов процессов этот набор включает и параметры, значения которых определяются в результате переговорного процесса модулей TCP двух сторон соединения. К таким параметрам относятся, в частности, согласованные размеры сегментов, которые может посылать каждая из сторон, объемы данных, которые разрешено передавать без получения на них подтверждения, начальные и текущие номера передаваемых байтов. Некоторые из этих параметров остаются постоянными в течение всего сеанса связи, а некоторые адаптивно изменяются. В рамках соединения осуществляется обязательное подтверждение правильности приема для всех переданных сообщений и при необходимости выполняется повторная передача. Соединение в TCP позволяет вести передачу данных одновременно в обе Стороны, то есть полнодуплексную передачу. Реализация скользящего окна в протоколе TCPВ рамках установленного соединения правильность передачи каждого сегмента должна подтверждаться квитанцией получателя. Квитирование - это один из традиционных методов обеспечения надежной связи. В протоколе TCP используется частный случай квитирования - алгоритм скользящего окна. Особенность использования алгоритма скользящего окна в протоколе TCP состоит в том, что, хотя единицей передаваемых данных является сегмент, окно определено на множестве нумерованных байтов неструктурированного потока данных, поступающих с верхнего уровня и буферизуемых протоколом TCP. Получающий модуль TCP отправляет «окно» посылающему модулю TCP. Данное окно задает количество байтов (начиная с номера байта, о котором уже была выслана квитанция), которое принимающий модуль TCP готов в настоящий момент принять. Квитанция (подтверждение) посылается только в случае правильного приема данных, отрицательные квитанции не посылаются. Таким образом, отсутствие квитанции означает либо прием искаженного сегмента, либо потерю сегмента, либо потерю квитанции. В качестве квитанции получатель сегмента отсылает ответное сообщение (сегмент), в которое помещает число, на единицу превышающее максимальный номер байта в полученном сегменте. Это число часто называют номером очереди. 38. ссылка скрыта, основные функции, формат UDP , назначение полей заголовка. Протокол UDP (User Datagram Protocol, Протокол пользовательских дейтаграмм) описан в RFC 768. Он предоставляет прикладным процессам простейшие услуги транспортного уровня. Две основные функции UDP – распределение дейтаграмм между процессами (на основании номеров портов) и контроль передачи пользовательских данных (не только заголовка, как в протоколе IP). Как и IP, UDP не гарантирует доставку и не поддерживает установку соединений. Сообщение протокола UDP называется пользовательской дейтаграммой (User datagram) и состоит из заголовка и пользовательских данных. Заголовок состоит из четырех 16-битовых полей: Порт отправителя (может заполняться нулями, если не используется) Порт получателя Длина сообщения (в байтах) Контрольная сумма. Сразу за заголовком идут пользовательские данные. Нулевое значение в поле “Контрольная сумма” означает, что контрольная сумма не вычислялась. Для расчета контрольной суммы к началу дейтаграммы приписывается псевдозаголовок, состоящий из пяти полей: IP-адрес отправителя IP-адрес получателя Нули (8 бит) Протокол (8 бит) Длина дейтаграммы (16 бит) Кроме того, к концу дейтаграммы, возможно, добавляют нулевой байт, чтобы ее длина (вместе с псевдозаголовком) была кратна 16 битам. Затем вычисляется контрольная сумма (как в протоколе IP), и псевдозаголовок отбрасывается. 39, Протокол обмена управляющими сообщениями ICMP. Три типа сообщений:
ICMP сообщение разбивают на три группы:
Специализированные ICMP запросы:
а) использование службы точного времени (NTP протокол) б) служба сервиса времени внутри домена
Протокол динамической конфигурации ЭВМ DHCP (Dynamic Host Configuration Protocol, RFC-2131, -2132, -2485, -2563, -2610, -2855, -2937, -2939, -3004, -3011, -3046; [22], [23], [24] и [25]) служит для предоставления конфигурационных параметров ЭВМ, подключенных к Интернет. DHCP имеет два компонента: протокол предоставления специфических для ЭВМ конфигурационных параметров со стороны DHCP-сервера и механизм предоставления ЭВМ сетевых адресов. Протокол DHCP используется, помимо загрузки бездисковых станций или Х-терминалов (BOOTP), сервис-провайдерами для пулов модемов, когда число одновременно занятых модемов существенно меньше их полного числа. Это позволяет сэкономить заметное число IP-адресов. Протокол эффективен для случая распределения адресов за Firewall, где ЭВМ в защищенной зоне все равно бессмысленно выделять реальные IP-адреса. DHCP построен по схеме клиент-сервер, где DHCP-сервер выделяет сетевые адреса и доставляет конфигурационные параметры динамически конфигурируемым ЭВМ. DHCP поддерживает три механизма выделения IP-адресов. При «автоматическом выделении», DHCP присваивает клиенту постоянный IP-адрес. При «динамическом присвоении», DHCP присваивает клиенту IP-адрес на ограниченное время. При «ручном выделении», IP-адрес выделяется клиенту сетевым администратором, а DHCP используется просто для передачи адреса клиенту. Конкретная сеть использует один или более этих механизмов, в зависимости от политики сетевого администратора. Динамическое присвоение адресов представляет собой единственный механизм, который позволяет автоматически повторно использовать адрес, который не нужен клиенту. Таким образом, динамическое присвоение адресов является оптимальной схемой для клиентов, подключаемых к сети временно, или совместно использующих один и тот же набор IP-адресов и не нуждающихся в постоянных адресах. 41. Утилиты ping и traceroute, их применение для тестирования сетей TCP/IP. Утилита Ping позволяет проверить существование указанного узла и измерить время передачи до него одного пакета (можно задавать разные размеры пакета для исследования промежуточных сетей). Эта утилита выполняет передачу ICMP-сообщения типа 8 (Echo request), на которое получатель должен ответить ICMP-сообщением типа 0 (Echo reply). Ping – утилита, предназначенная для проверки доступности узла или сети в стеке TCP/IP. Программа посылает спец. пакет, в ответ получает ICMP сообщение. Обычно PING используется для проверки возникшей проблемы при связи с сетью, хостом. Утилита PING работает только с реальными IP адресами. Формат пакета:
Работа программы: В первом пакете значение порядкового номера ставится ноль, и при посылке каждого следующего пакета увеличивается на 1. это для того, чтобы было возможно обнаружить потери, дублирование, нарушение следования пакетов. В зависимости от отклика: 1) отклик произошел (время жизни регулируется) 2) сеть достижима, но пакет не дошел 3) сеть не достижима, узел не достижим Можно использовать и для других целей:
Можно изменять время жизни, количество пакетов (по умолчанию 4), размер пакета (32 или 64). Существует возможность через опции – запись маршрутизатора( /R). В результате этого можно отследить список IP адресов. Недостаток: показывает связь узлов только на 3 уровне. Все проблемы возникшие на уровне транспортных протоколов данная программа протестировать не может. Утилита Traceroute показывает последовательность узлов, через которые проходит пакет на пути к получателю. Реализовано это следующим образом: последовательно отправляются пакеты с возрастающим значением в поле TTL: 1,2,3 и т.д. Тот маршрутизатор, который уменьшит TTL до нуля, обязан будет отправить ICMP-сообщение типа 11 (Time exceeded). В результате будут получены такие ICMP-сообщения по очереди от всех маршрутизаторов на пути пакета к получателю. 42. Принципы и алгоритмы маршрутизации. Маршрутизатор, как и, например, мост, имеет несколько портов и должен для каждого поступающего пакета решить – отфильтровать его или передать на какой-то другой порт. Как и мосты, маршрутизаторы решают эту задачу с помощью специальной таблицы – таблицы маршрутизации. По этой таблице маршрутизатор определяет, на какой порт нужно передавать пакет, чтобы он достиг нужной подсети (не обязательно сразу). Если сеть содержит петли, в таблицах маршрутизации может быть несколько записей на одну подсеть, описывающих разные возможные маршруты. Каждый порт маршрутизатора рассматривается, как отдельный узел сети. Другие узлы должны знать его адрес и направлять пакеты для передачи в другие подсети на этот адрес, а не просто выдавать их в канал (как при прозрачных мостах). Будем рассматривать принципы маршрутизации на примере сети, изображенной на рис. Здесь S1..S13 – подсети, M1..M13 – маршрутизаторы. Порты маршрутизаторов будем обозначать сочетанием имени маршрутизатора и сети, например, M5/S2 – порт маршрутизатора M5, подключенный к сети S2. Для маршрутизатора M7 (см. рис.) таблица маршрутизации должна была бы выглядеть следующим образом (все адреса – сетевые):
![]() Алгоритм маршрутизации – правило назначения выходной линии связи (порта) на основе данных, содержащихся в заголовке пакета, данных, описывающих состояние маршрутизатора и сети в целом. Эффективность алгоритмов характеризуется:
Для повышения эффективности желательно, чтобы каждый маршрутизатор имел информацию, как о топологии сети, так и состоянии узлов и связей между ними. Классификация алгоритмов: A. Одношаговые алгоритмы
Б. От источника Адаптивные алгоритмы:
Маршрутизаторы:
Локальных сетей |