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

Тема 1.3: Открытые системы и модель OSІ

Тема 1.4: Основы локальных сетей

Тема 1.5: Базовые технологии локальных сетей

Тема 1.6: Основные программные и аппаратные компоненты ЛВС

Локальные сети

1.5. Базовые технологии локальных сетей

1.5.2. Методы обмена данными в локальных сетях

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

Существует несколько групп методов доступа, основанных на временном разделении канала:

  • централизованные и децентрализованные;
  • детерминированные и случайные.

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

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

Централизованный доступ к моноканалу

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

Метод опроса

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

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

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

Метод передачи полномочий (передача маркера)

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

Децентрализованный доступ к моноканалу

Рассмотрим децентрализованный детерминированный и случайный методы доступа к среде передачи данных.

Децентрализованный детерминированный метод доступа

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

Обмен данными в сети с топологией кольцо (децентрализованный детерминированный метод доступа). В данной сети применяется метод доступа “передача маркера”.

Алгоритм передачи следующий:

  1. Узел, желающий передать, ждет свободный маркер, получив который помечает его как занятый (изменяет соответствующие биты), добавляет к нему свой пакет и результат отправляет дальше в кольцо.
  2. Каждый узел, получивший такой маркер, принимает его, проверяет, ему ли адресован пакет.
  3. Если пакет адресован этому узлу, то узел устанавливает в маркере специально выделенный бит подтверждения и отправляет измененный маркер с пакетом дальше.
  4. Передававший узел получает обратно свою посылку, прошедшую через все кольцо, освобождает маркер (помечает его как свободный) и снова посылает маркер в сеть. При этом передававший узел знает, была ли получена его посылка или нет.

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

Обмен данными в сети с топологией шина (децентрализованный случайный метод доступа)

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

Рассмотрим наиболее часто применяющийся метод множественного доступа с контролем несущей и обнаружением коллизий (столкновений) (CSMA/CD).

Суть алгоритма в следующем:

  1. Узел, желающий передавать информацию, следит за состоянием сети, и как только она освободится, то начинает передачу.
  2. Узел передает данные и одновременно контролирует состояние сети (контролем несущей и обнаружением коллизий). Если столкновений не обнаружилось, передача доводится до конца.
  3. Если столкновение обнаружено, то узел усиливает его (передает еще некоторое время) для гарантии обнаружения всеми передающими узлами, а затем прекращает передачу. Также поступают и другие передававшие узлы.
  4. После прекращения неудачной попытки узел выдерживает случайно выбираемый промежуток времени tзад, а затем повторяет свою попытку передать, при этом контролируя столкновения. При повторном столкновении tзад увеличивается. В конечном счете, один из узлов опережает другие узлы и успешно передает данные. Метод CSMA/CD часто называют методом состязаний. Этот метод для сетей с шиной топологией реализуется протоколом Ethernet.

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

Существует несколько групп методов доступа, основанных на временном разделении канала:

централизованные и децентрализованные

детерминированные и случайные

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

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

Централизованный доступ к моноканалу

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

Метод опроса.

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

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

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

Метод передачи полномочий (передача маркера)

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

Децентрализованный доступ к моноканалу.

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

Обмен данными в сети с топологией кольцо (децентрализованный детерминированный методдоступа)

1. В данной сети применяется метод доступа "передача маркера”. Алгоритм передачи следующий:

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

б) каждый узел, получивший такой маркер, принимает его, проверяет, ему ли адресован пакет;

в) если пакет адресован этому узлу, то узел устанавливает в маркере специально выделенный бит подтверждения и отправляет измененный маркер с пакетом дальше;

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

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

Обмен данными в сети с топологией шина (децентрализованный случайный метод доступа)

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

Рассмотрим наиболее часто применяющийся метод множественного доступа с контролем несущей и обнаружением коллизий (столкновений) (CSMA/CD). Суть алгоритма в следующем:

1) узел, желающий передавать информацию, следит за состоянием сети, и как только она освободится, то начинает передачу;

2) узел передает данные и одновременно контролирует состояние сети (контролем несущей и обнаружением коллизий). Если столкновений не обнаружилось, передача доводится до конца;

3) если столкновение обнаружено, то узел усиливает его (передает еще некоторое время) для гарантии обнаружения всеми передающими узлами, а затем прекращает передачу. Также поступают и другие передававшие узлы;

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

При повторном столкновении tзад увеличивается. В конечном счете, один из узлов опережает другие узлы и успешно передает данные. Метод CSMA/CD часто называют методом состязаний. Этот метод для сетей с шиной топологией реализуется протоколом Ethernet.

Рано или поздно при работе с локальной сетью пользователям требуется передать файлы с компьютера на компьютер. Особых проблем с отправкой файлов по локальной сети, как правило, не возникает: можно воспользоваться стандартными средствами операционной системой «Windows»/«Linux» или использовать дополнительное программное обеспечение.

Как передавать файлы по локальной сети между 2 компьютерами?

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

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

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

И любой пользовать компьютера в локальной сети по необходимости сможет копировать в данную папку/из данной папки нужные файлы.

Программа для обмена файлами по локальной сети

Для более продвинутых «юзеров» (кто не желает использовать стандартные средства ОС или хочет получить дополнительные возможности при передаче файлов по локальной сети) разработано стороннее ПО.

К примеру, для обмена файлами в локальной сети подойдет замечательная не требующая установки программа «HTTP File Server».

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

После запуска программы (она свернётся в трей) будут представлены:

Информация о «локальном ip адресе» - он будет указан в адресной строке и он же является адресом сервера;

  • - меню с доступным функционалом;
  • - номер прослушиваемого порта.

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

Итак, чтобы передать файл с компьютера на компьютер через локальную сеть необходимо:

В окне «Virtual File System» нажмите правой кнопкой мышки и выберите «Add File» или «Add folder from disk» (для выбора одного файла или папки в целом);

  • - данными действиями вы поместили файлы на сервер и открыли их для скачивания другим пользователям;
  • - теперь, чтобы скачать данный файл с другого компьютера необходимо зайти по адресу, который указан в верху в адресной строке (в примере это «192.168.1.3»), выбрать нужный файл и скачать его.

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

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

Общие понятия. Протокол. Стек протоколов

Главная цель, которая преследуется при соединении компьютеров в сеть – это возможность использования ресурсов каждого компьютера всеми пользователями сети. Для того, чтобы реализовать эту возможность, компьютеры, подсоединенные к сети, должны иметь необходимые для этого средства взаимодействия с другими компьютерами сети.
Задача разделения сетевых ресурсов включает в себя решение множества проблем – выбор способа адресации компьютеров и согласование электрических сигналов при установление электрической связи, обеспечение надежной передачи данных и обработка сообщений об ошибках, формирование отправляемых и интерпретация полученных сообщений, а также много других не менее важных задач.
Обычным подходом при решении сложной проблемы является ее разбиение на несколько частных проблем – подзадач. Для решения каждой подзадачи назначается некоторый модуль. При этом четко определяются функции каждого модуля и правила их взаимодействия.
Частным случаем декомпозиции задачи является многоуровневое представление, при котором все множество модулей, решающих подзадачи, разбивается на иерархически упорядоченные группы – уровни. Для каждого уровня определяется набор функций-запросов, с которыми к модулям данного уровня могут обращаться модули выше лежащего уровня для решения своих задач.
Такой набор функций, выполняемых данным уровнем для выше лежащего уровня, а также форматы сообщений, которыми обмениваются два соседних уровня в ходе своего взаимодействия, называется интерфейсом.
Правила взаимодействия двух машин могут быть описаны в виде набора процедур для каждого из уровней. Такие формализованные правила, определяющие последовательность и формат сообщений, которыми обмениваются сетевые компоненты, лежащие на одном уровне, но в разных узлах, называются протоколами.
Согласованный набор протоколов разных уровней, достаточный для организации межсетевого взаимодействия, называется стеком протоколов.
При организации взаимодействия могут быть использованы два основных типа протоколов. В протоколах с установлением соединения (connection-oriented network service, CONS) перед обменом данными отправитель и получатель должны сначала установить логическое соединение, то есть договориться о параметрах процедуры обмена, которые будут действовать только в рамках данного соединения. После завершения диалога они должны разорвать это соединение. Когда устанавливается новое соединение, переговорная процедура выполняется заново.
Вторая группа протоколов - протоколы без предварительного установления соединения (connectionless network service, CLNS). Такие протоколы называются также дейтаграммными протоколами. Отправитель просто передает сообщение, когда оно готово.

Модель ISO/OSI

Из того, что протокол является соглашением, принятым двумя взаимодействующими объектами, в данном случае двумя работающими в сети компьютерами, совсем не следует, что он обязательно представляет собой стандарт. Но на практике при реализации сетей стремятся использовать стандартные протоколы. Это могут быть фирменные, национальные или международные стандарты.
Международная Организация по Стандартам (International Standards Organization, ISO) разработала модель, которая четко определяет различные уровни взаимодействия систем, дает им стандартные имена и указывает, какую работу должен делать каждый уровень. Эта модель называется моделью взаимодействия открытых систем (Open System Interconnection, OSI) или моделью ISO/OSI.
В модели OSI взаимодействие делится на семь уровней или слоев (рис.1). Каждый уровень имеет дело с одним определенным аспектом взаимодействия. Таким образом, проблема взаимодействия декомпозирована на 7 частных проблем, каждая из которых может быть решена независимо от других. Каждый уровень поддерживает интерфейсы с выше- и нижележащими уровнями.
Модель OSI описывает только системные средства взаимодействия, не касаясь приложений конечных пользователей. Приложения реализуют свои собственные протоколы взаимодействия, обращаясь к системным средствам. Следует иметь в виду, что приложение может взять на себя функции некоторых верхних уровней модели OSI, в таком случае, при необходимости межсетевого обмена оно обращается напрямую к системным средствам, выполняющим функции оставшихся нижних уровней модели OSI.

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

Итак, пусть приложение обращается с запросом к прикладному уровню, например к файловому сервису. На основании этого запроса программное обеспечение прикладного уровня формирует сообщение стандартного формата, в которое помещает служебную информацию (заголовок) и, возможно, передаваемые данные. Затем это сообщение направляется представительному уровню.
Представительный уровень добавляет к сообщению свой заголовок и передает результат вниз сеансовому уровню, который в свою очередь добавляет свой заголовок и т.д.
Наконец, сообщение достигает самого низкого, физического уровня, который действительно передает его по линиям связи.
Когда сообщение по сети поступает на другую машину, оно последовательно перемещается вверх с уровня на уровень. Каждый уровень анализирует, обрабатывает и удаляет заголовок своего уровня, выполняет соответствующие данному уровню функции и передает сообщение вышележащему уровню.
Кроме термина "сообщение" (message) существуют и другие названия, используемые сетевыми специалистами для обозначения единицы обмена данными. В стандартах ISO для протоколов любого уровня используется такой термин как "протокольный блок данных" - Protocol Data Unit (PDU). Кроме этого, часто используются названия кадр (frame), пакет (packet), дейтаграмма (datagram).

Функции уровней модели ISO/OSI

Физический уровень. Этот уровень имеет дело с передачей битов по физическим каналам, таким, например, как коаксиальный кабель, витая пара или оптоволоконный кабель. К этому уровню имеют отношение характеристики физических сред передачи данных, такие как полоса пропускания, помехозащищенность, волновое сопротивление и другие. На этом же уровне определяются характеристики электрических сигналов, такие как требования к фронтам импульсов, уровням напряжения или тока передаваемого сигнала, тип кодирования, скорость передачи сигналов. Кроме этого, здесь стандартизуются типы разъемов и назначение каждого контакта.
Функции физического уровня реализуются во всех устройствах, подключенных к сети. Со стороны компьютера функции физического уровня выполняются сетевым адаптером или последовательным портом.
Канальный уровень. Одной из задач канального уровня является проверка доступности среды передачи. Другой задачей канального уровня является реализация механизмов обнаружения и коррекции ошибок. Для этого на канальном уровне биты группируются в наборы, называемые кадрами (frames). Канальный уровень обеспечивает корректность передачи каждого кадра, помещая специальную последовательность бит в начало и конец каждого кадра, чтобы отметить его, а также вычисляет контрольную сумму, суммируя все байты кадра определенным способом и добавляя контрольную сумму к кадру. Когда кадр приходит, получатель снова вычисляет контрольную сумму полученных данных и сравнивает результат с контрольной суммой из кадра. Если они совпадают, кадр считается правильным и принимается. Если же контрольные суммы не совпадают, то фиксируется ошибка.
В протоколах канального уровня, используемых в локальных сетях, заложена определенная структура связей между компьютерами и способы их адресации. Хотя канальный уровень и обеспечивает доставку кадра между любыми двумя узлами локальной сети, он это делает только в сети с совершенно определенной топологией связей, именно той топологией, для которой он был разработан. К таким типовым топологиям, поддерживаемым протоколами канального уровня локальных сетей, относятся общая шина, кольцо и звезда. Примерами протоколов канального уровня являются протоколы Ethernet, Token Ring, FDDI, 100VG-AnyLAN.
Сетевой уровень. Этот уровень служит для образования единой транспортной системы, объединяющей несколько сетей с различными принципами передачи информации между конечными узлами.
Сообщения сетевого уровня принято называть пакетами (packets). При организации доставки пакетов на сетевом уровне используется понятие "номер сети". В этом случае адрес получателя состоит из номера сети и номера компьютера в этой сети.
Для того, чтобы передать сообщение от отправителя, находящегося в одной сети, получателю, находящемуся в другой сети, нужно совершить некоторое количество транзитных передач (hops) между сетями, каждый раз выбирая подходящий маршрут. Таким образом, маршрут представляет собой последовательность маршрутизаторов, через которые проходит пакет.
Проблема выбора наилучшего пути называется маршрутизацией и ее решение является главной задачей сетевого уровня. Эта проблема осложняется тем, что самый короткий путь не всегда самый лучший. Часто критерием при выборе маршрута является время передачи данных по этому маршруту, оно зависит от пропускной способности каналов связи и интенсивности трафика, которая может изменяться с течением времени.
На сетевом уровне определяется два вида протоколов. Первый вид относится к определению правил передачи пакетов с данными конечных узлов от узла к маршрутизатору и между маршрутизаторами. Именно эти протоколы обычно имеют в виду, когда говорят о протоколах сетевого уровня. К сетевому уровню относят и другой вид протоколов, называемых протоколами обмена маршрутной информацией. С помощью этих протоколов маршрутизаторы собирают информацию о топологии межсетевых соединений. Протоколы сетевого уровня реализуются программными модулями операционной системы, а также программными и аппаратными средствами маршрутизаторов.
Примерами протоколов сетевого уровня являются протокол межсетевого взаимодействия IP стека TCP/IP и протокол межсетевого обмена пакетами IPX стека Novell.
Транспортный уровень. На пути от отправителя к получателю пакеты могут быть искажены или утеряны. Хотя некоторые приложения имеют собственные средства обработки ошибок, существуют и такие, которые предпочитают сразу иметь дело с надежным соединением. Работа транспортного уровня заключается в том, чтобы обеспечить приложениям или верхним уровням стека - прикладному и сеансовому - передачу данных с той степенью надежности, которая им требуется. Модель OSI определяет пять классов сервиса, предоставляемых транспортным уровнем.
Как правило, все протоколы, начиная с транспортного уровня и выше, реализуются программными средствами конечных узлов сети - компонентами их сетевых операционных систем. В качестве примера транспортных протоколов можно привести протоколы TCP и UDP стека TCP/IP и протокол SPX стека Novell.
Сеансовый уровень. Сеансовый уровень обеспечивает управление диалогом для того, чтобы фиксировать, какая из сторон является активной в настоящий момент, а также предоставляет средства синхронизации. Последние позволяют вставлять контрольные точки в длинные передачи, чтобы в случае отказа можно было вернуться назад к последней контрольной точке, вместо того, чтобы начинать все с начала. На практике немногие приложения используют сеансовый уровень, и он редко реализуется.
Уровень представления. Этот уровень обеспечивает гарантию того, что информация, передаваемая прикладным уровнем, будет понятна прикладному уровню в другой системе. При необходимости уровень представления выполняет преобразование форматов данных в некоторый общий формат представления, а на приеме, соответственно, выполняет обратное преобразование. Таким образом, прикладные уровни могут преодолеть, например, синтаксические различия в представлении данных. На этом уровне может выполняться шифрование и дешифрование данных, благодаря которому секретность обмена данными обеспечивается сразу для всех прикладных сервисов. Примером протокола, работающего на уровне представления, является протокол Secure Socket Layer (SSL), который обеспечивает секретный обмен сообщениями для протоколов прикладного уровня стека TCP/IP.
Прикладной уровень. Прикладной уровень - это в действительности просто набор разнообразных протоколов, с помощью которых пользователи сети получают доступ к разделяемым ресурсам, таким как файлы, принтеры или гипертекстовые Web-страницы, а также организуют свою совместную работу, например, с помощью протокола электронной почты. Единица данных, которой оперирует прикладной уровень, обычно называется сообщением (message).
Существует очень большое разнообразие протоколов прикладного уровня. Приведем в качестве примеров хотя бы несколько наиболее распространенных реализаций файловых сервисов: NCP в операционной системе Novell NetWare, SMB в Microsoft Windows NT, NFS, FTP и TFTP, входящие в стек TCP/IP.

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

Функции всех уровней модели OSI могут быть отнесены к одной из двух групп: либо к функциям, зависящим от конкретной технической реализации сети, либо к функциям, ориентированным на работу с приложениями.
Три нижних уровня - физический, канальный и сетевой - являются сетезависимыми, то есть протоколы этих уровней тесно связаны с технической реализацией сети, с используемым коммуникационным оборудованием.
Три верхних уровня - сеансовый, уровень представления и прикладной - ориентированы на приложения и мало зависят от технических особенностей построения сети. На протоколы этих уровней не влияют никакие изменения в топологии сети, замена оборудования или переход на другую сетевую технологию.
Транспортный уровень является промежуточным, он скрывает все детали функционирования нижних уровней от верхних уровней. Это позволяет разрабатывать приложения, независящие от технических средств, непосредственно занимающихся транспортировкой сообщений.

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

Функциональное соответствие видов коммуникационного оборудования уровням модели OSI

Лучшим способом для понимания отличий между сетевыми адаптерами, повторителями, мостами/коммутаторами и маршрутизаторами является рассмотрение их работы в терминах модели OSI. Соотношение между функциями этих устройств и уровнями модели OSI показано на рисунке 3.

Повторитель, который регенерирует сигналы, за счет чего позволяет увеличивать длину сети, работает на физическом уровне.
Сетевой адаптер работает на физическом и канальном уровнях. К физическому уровню относится та часть функций сетевого адаптера, которая связана с приемом и передачей сигналов по линии связи, а получение доступа к разделяемой среде передачи, распознавание МАС-адреса компьютера - это уже функция канального уровня.
Мосты выполняют большую часть своей работы на канальном уровне. Для них сеть представляется набором МАС-адресов устройств. Они извлекают эти адреса из заголовков, добавленных к пакетам на канальном уровне, и используют их во время обработки пакетов для принятия решения о том, на какой порт отправить тот или иной пакет. Мосты не имеют доступа к информации об адресах сетей, относящейся к более высокому уровню. Поэтому они ограничены в принятии решений о возможных путях или маршрутах перемещения пакетов по сети.
Маршрутизаторы работают на сетевом уровне модели OSI. Для маршрутизаторов сеть - это набор сетевых адресов устройств и множество сетевых путей. Маршрутизаторы анализируют все возможные пути между любыми двумя узлами сети и выбирают самый короткий из них. При выборе могут приниматься во внимание и другие факторы, например, состояние промежуточных узлов и линий связи, пропускная способность линий или стоимость передачи данных.
Для того, чтобы маршрутизатор мог выполнять возложенные на него функции ему должна быть доступна более развернутая информация о сети, нежели та, которая доступна мосту. В заголовке пакета сетевого уровня кроме сетевого адреса имеются данные, например, о критерии, который должен быть использован при выборе маршрута, о времени жизни пакета в сети, о том, какому протоколу верхнего уровня принадлежит пакет.
Благодаря использованию дополнительной информации, маршрутизатор может осуществлять больше операций с пакетами, чем мост/коммутатор. Поэтому программное обеспечение, необходимое для работы маршрутизатора, является более сложным.
На рисунке 3 показан еще один тип коммуникационных устройств - шлюз, который может работать на любом уровне модели OSI. Шлюз (gateway) - это устройство, выполняющее трансляцию протоколов. Шлюз размещается между взаимодействующими сетями и служит посредником, переводящим сообщения, поступающие из одной сети, в формат другой сети. Шлюз может быть реализован как чисто программными средствами, установленными на обычном компьютере, так и на базе специализированного компьютера. Трансляция одного стека протоколов в другой представляет собой сложную интеллектуальную задачу, требующую максимально полной информации о сети, поэтому шлюз использует заголовки всех транслируемых протоколов.

Спецификация IEEE 802

Примерно в то же время, когда появилась модель OSI, была опубликована спецификация IEEE 802, которая фактически расширяет сетевую модель OSI. Это расширение происходит на канальном и физическом уровнях, которые определяют как более чем один компьютер может получить доступ к сети, избежав конфликтов с другими компьютерами сети.
Этот стандарт детализирует эти уровни посредством разбиения канального уровня на 2 подуровня:
– Logical Link Control (LLC) – подуровень управления логической связью. Управляет связями между каналами данных и определяет использование точек логического интерфейса, называемых Services Access Point (Точки доступа у службам), которые другими компьютерами могут использоваться для передачи информации на верхние уровни модели OSI;
– Media Access Control (MAC) – подуровень управления доступом к устройствам. Предоставляет параллельный доступ для нескольких сетевых адаптеров на физическом уровне, имеет прямое взаимодействие с сетевой картой компьютера и отвечает за обеспечение безошибочной передачи данных между компьютерами в сети.

По стеку протоколов

Набор протоколов (или стек протоколов) представляет собой сочетание протоколов, которые совместно работают для обеспечения сетевого взаимодействия. Эти наборы протоколов обычно разбивают на три группы, соответствующие сетевой модели OSI:
– сетевые;
– транспортные;
– прикладные.
Сетевые протоколы предоставляют следующие услуги:
– адресацию и маршрутизацию информации;
– проверку на наличие ошибок;
– запрос повторной передачи;
– установление правил взаимодействия в конкретной сетевой среде.
Популярные сетевые протоколы:
– DDP (Delivery Datagram Protocol – Протокол доставки дейтаграмм). Протокол передачи данных Apple, используемый в AppleTalk.
– IP (Internet Protocol – Протокол Интернет). Часть набора протоколов TCP/IP, обеспечивающая адресную информацию и информацию о маршрутизации.
– IPX (Internetwork Packet eXchange – Межсетевой обмен пакетами) и NWLink. Протокол сетей Novell NetWare (и реализация этого протокола фирмой Microsoft), используемый для маршрутизации и направления пакетов.
– NetBEUI. Разработанный совместно IBM и Microsoft, этот протокол обеспечивает транспортные услуги для NetBIOS.
Транспортные протоколы отвечают за обеспечение надежной транспортировки данных между компьютерами.
Популярные транспортные протоколы:
– ATP (AppleTalk Transaction Protocol – Транзакционный протокол AppleTalk) и NBP (Name Binding Protocol – Протокол связывания имен). Сеансовый и транспортный протоколы AppleTalk.
– NetBIOS/NetBEUI. Первый – устанавливает соединение между компьютерами, а второй – предоставляет услуги передачи данных для этого соединения.
– SPX (Sequenced Packet exchange – Последовательный обмен пакетами) и NWLink. Ориентированный на соединения протокол Novell, используемый для обеспечения доставки данных (и реализация этого протокола фирмой Microsoft).
– TCP (Transmission Control Protocol – Протокол управления передачей). Часть набора протоколов TCP/IP, отвечающая за надежную доставку данных.
Прикладные протоколы, ответственные за взаимодействие приложений.
Популярные прикладные протоколы:
– AFP (AppleTalk File Protocol – Файловій протокол AppleTalk). Протокол удаленного управления файлами Macintosh.
– FTP (File Transfer Protocol – Протокол передачи данных). Еще один член набора протоколов TCP/IP, используемый для обеспечения услуг по передаче файлов.
– NCP (NetWare Core Protocol – Базовый протокол NetWare). Оболочка и редиректоры клиента Novell.
– SMTP (Simple Mail Transport Protocol – Простой протокол передачи почты). Член набора протоколов TCP/IP, отвечающий за передачу электронной почты.
– SNMP (Simple Network Management Protocol – Простой протокол управления сетью). Протокол TCP/IP, используемый для управления и наблюдения за сетевыми устройствами.

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

ОБМЕН ДАННЫМИ В СЕТИ (ТИП - ЗВЕЗДА)- При данной топологии все узлы могут решить передавать информацию одновременно. Чаще всего центральный компонент может производить обмен только с одним узлом. Поэтому в любой момент надо выделить только один периферийный узел, ведущий передачу.

Есть два решения этой проблемы.

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

2. "Пассивный центр". В этом случае центральный компонент не опрашивает, а слушает все периферийные узлы. Те узлы, которые хотят передать, периодически посылают запросы и ждут на них ответа. Когда центр принимает запрос, он отвечает "запросившему узлу (разрешает ему передачу), после чего тот начинает передачу. Приоритеты здесь те же, как и в случае 1.

ОБМЕН ДАННЫМИ В СЕТИ (ТИП - ШИНА). В этой топологии возможно такое же централизованное управление, как и в "звезде". Один из узлов (центральный) посылает всем остальным запросы, выясняя, кто хочет передавать, и затем разрешает передачу тому из них, кто после окончания передачи сообщает об этом. Единственное отличие состоит в том, что он не перекачивает информацию от одного узла к другому, а только управляет доступом.

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

Существует множество алгоритмов доступа, зачастую очень сложных. Мы рассмотрим наиболее часто применяющийся метод множественного доступа с контролем несущей и обнаружением коллизий (столкновений) (CSMA/CD). Суть алгоритма в следующем:



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

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

в) если столкновение обнаружено, то узел усиливает его (передает еще некоторое время) для гарантии обнаружения всеми передающими узлами, а затем прекращает передачу. Также поступают и другие передававшие узлы;

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

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

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

ОБМЕН ДАННЫМИ В СЕТИ (ТИП - КОЛЬЦО).

1. Один из принципов передачи данных в кольцевой сети носит название "передача маркера". Маркер - особый вид сообщения,

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

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

б) каждый узел, получивший такой маркер, принимает его, проверяет, ему ли адресован пакет;

в) если пакет адресован этому узлу, то узел устанавливает в маркере специально выделенный бит подтверждения и отправляет измененный маркер с пакетом дальше;

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

Хотя явно выделенного центра здесь не существует, необходимо, чтобы один из компьютеров или специальное устройство следило за тем, чтобы маркер не потерялся (например, при сбое работы какого-нибудь узла). Следует заметить, что в такой сети есть система приоритета в передаче данных: право передачи переходит к следующему по направлению кольца узлу от последнего передававшего узла. Но это актуально только при большой интенсивности обмена, при маленькой все абоненты равноправны.

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

2. Метод кольцевых сегментов (слотов). Основное отличие этого метода от метода передачи маркера состоит в том, что нескольким узлам разрешена передача и в любой момент, тогда как в маркерном методе всегда передает только один абонент. Вместо маркера в сети используются несколько так называемых слотов (обычно от 2 до 8), которые выполняют, по сути, ту же самую функцию, что и маркер, -. функцию временных меток. Эти слоты идут по кольцу довольно часто, временной интервал между ними невелик, и поэтому между ними может уместиться немного информации (обычно от 8 до 32 байт). При этом состояние слота может быть свободным или занятым.

Алгоритм работы этим методом следующий:

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

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

при данном методе передачи дискретизируется, и поэтому конфликты не происходят.

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

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

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

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