Электронная библиотека » Марк Блау » » онлайн чтение - страница 10


  • Текст добавлен: 26 июня 2018, 17:41


Автор книги: Марк Блау


Жанр: Компьютеры: прочее, Компьютеры


Возрастные ограничения: +12

сообщить о неприемлемом содержимом

Текущая страница: 10 (всего у книги 34 страниц) [доступный отрывок для чтения: 10 страниц]

Шрифт:
- 100% +
2. Data Link layer (Канальный уровень)

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

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

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

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

1. Physical layer (Физический уровень)

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

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

Повторение – мать учения

Итак, какие выводы можно сделать в заключение?

1. Модель OSI – это логическая модель работы сети. Это значит, что в ней учтены все возможные моменты передачи информации. При этом передача информации рассматривается очень обобщенно и включает в себя даже традиционные методы связи. Хорошим упражнением может быть анализ какого-нибудь из таких традиционных методов с помощью модели OSI. Например, в ямской почте, работавшей в России в XVIII–XIX веках, неожиданно обнаруживается и сетевой, и канальный уровень.

2. Главное назначение модели OSI – упорядочение и стандартизация протоколов связи. В этом смысле значение модели OSI для теории и практики сетевой связи сравнимо со значением таблицы Д. И. Менделеева для химии, в которой находится место для любого из множества существующих в природе химических элементов. Конечно, можно заниматься химией и не знать о таблице Менделеева. Но лучше все-таки знать. Точно так же знание модели OSI позволяет сразу же определить место и назначение даже неизвестного раннее протокола. И, поставив этот протокол на правильное место, понять его назначение.

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

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

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

5.1. На физическом уровне определяются физические (механические, электрические, оптические) характеристики линий связи.

5.2. На канальном уровне определяются правила передачи данных между узлами локальной сети.

5.3. Сетевой уровень отвечает за адресацию и доставку пакетов по всему Интернету.

5.4. На транспортном уровне формируются пакеты информации, пересылаемые по сети, и контролируется очередность прохождения этих пакетов.

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

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

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

6. Модель OSI – теоретическая. Как говорится, нет ничего практичнее хорошей теории. Однако Интернет жив не теориями, а практическим воплощением этих теорий в жизнь. А как реализуется модель OSI? Она реализуется двояко: либо в виде электронных схем, соединяемых с компьютером, либо в виде программ, устанавливаемых на компьютере. И та, и другая реализация взаимозаменяемы. Любую схему можно реализовать как сложную (или не очень) программу. Любую программу можно заменить электронной схемой. Дело только в экономической целесообразности. Обычно нижние уровни модели OSI реализуют в виде электронных схем, размещаемых на платах, которые вставляют в один из свободных разъемов шины компьютера. Это обеспечивает высокое быстродействие, необходимое на физическом и канальном уровнях. Кроме того, аппаратная реализация протоколов позволяет быстро и в массовом порядке тиражировать необходимые решения. Помните, что сделал Роберт Меткалф, когда ему удалось убедить представителей крупных компьютерных фирм принять изобретенный им протокол Ethernet? Открыл компанию 3Com для производства сетевых карт, реализующих этот протокол, и стал миллионером! На более высоких уровнях модели OSI реализация протоколов осуществляется в виде программных решений, включаемых в операционную систему.

Протоколы TCP/IP – основа Интернета

В одном из предыдущих разделов стек протоколов TCP/IP был назван двигателем Интернета. Ну вот, пришла пора немного разобраться в том, как этот двигатель работает.

Почему TCP/IP называется стеком протоколов? Потому что на самом деле это – не один и не два, а несколько десятков протоколов передачи данных, которые обеспечивают межкомпьютерный обмен информацией. В стек TCP/IP входят протоколы разных уровней. При этом, как положено, протоколы верхнего уровня базируются на протоколах нижнего уровня. В свою очередь, протоколы нижнего уровня обслуживают протоколы верхнего уровня.

Протокол Ethernet

Протокол Ethernet – это протокол физического и канального уровней. Он описывает, как передаются данные: по коаксиальному кабелю, по витой паре или по оптическому кабелю. Протокол Ethernet был изобретен 22 мая 1973 года Робертом Меткалфом (см. Часть 1). Сорок лет назад все начиналось с коаксиального кабеля – толстого медного провода со специальной изолирующей оплеткой и изоляцией. Сейчас коаксиальный кабель окончательно «ушел на покой». Его заменила витая пара из двух тонких телефонных проводов.

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

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

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

Как разрешается коллизия? Все компьютеры прекращают передачу, замолкают каждый на некоторый случайный промежуток времени, после чего пытаются возобновить передачу. А поскольку каждый из компьютеров «молчал» разное время, есть большая вероятность того, что кому-то из них удастся «заговорить» первым, после чего его никто не сможет прервать, пока он не завершит передачу.


Возникновение коллизии в сети Ethernet


А теперь предположим, что в сети, изображенной на рисунке, узлы А и E одновременно начали передачу и успели ее закончить раньше, чем приняли сигнал друг друга. Это возможно, если передаваемое сообщение достаточно короткое, а кабель, наоборот, достаточно длинный. В этом случае каждый из передатчиков коллизии не зарегистрирует – передачу-то он завершил без проблем. Значит, повторная передача не состоится. А вот другие компьютеры (на нашем рисунке это компьютеры С и D) получат сумму сигналов, пришедших от А и от E и, естественно, не смогут корректно принять ни один из этих сигналов.

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

Разработчики технологии Ethernet нашли оптимальное соотношение между приемлемыми размерами сети (несколько десятков метров) и минимальным размером кадра. В результате сложных расчетов минимальный размер кадра установили в 64 байта. Проблема устранения коллизий была решена. Но не навсегда. При увеличении протяженности сетевого кабеля она возникает вновь.

Поэтому реальную сеть избегают делать слишком длинной и разбивают на сегменты с помощью специальных сетевых устройств, концентраторов. По-английски концентратор называется «hub». Концентратор соединяет между собой несколько узлов сети, находящихся недалеко друг от друга (например, в одной комнате) и устраняет возникновение коллизий между ними. Благодаря концентратору все «переговоры» между компьютерами внутри сегмента не выходят наружу и вероятность возникновения коллизий во всей сети сильно снижается. Принцип действия концентратора описан далее.

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

Внешне витая пара похожа на обычный телефонный кабель. Да и сетевые разъемы внешне напоминают телефонные. Правда, они шире и вместо двух контактов у них восемь. Одна пара контактов используется для передачи данных. Это контакты 1 и 2, к которым обычно присоединяют провода оранжевого и бело-оранжевого цветов. Другая пара контактов используется для приема. Это контакты 3 и 6, к которым, как правило, присоединяются зеленый и бело-зеленый провода. Центральную пару контактов, 4 и 5, специально оставили свободной для телефонной линии. Если в более широкую сетевую розетку вставить телефонный разъем, то он займет как раз эти контакты. Это позволяет использовать один кабель и для сети, и для телефона.


Разъем «витая пара»


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

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

Витая пара представляет собой совсем иной тип кабеля, чем кабель коаксиальный. Например, витой парой нельзя соединить несколько компьютеров одновременно, этот кабель может соединить только два узла. Поэтому применение концентраторов и другого сетевого оборудования становится обязательным. Однако сетевое оборудование сейчас стоит относительно недорого, а применение витой пары позволяет не только значительно упростить, но и удешевить прокладку сетевых кабелей. Кроме того, витая пара повышает пропускную способность сети и позволяет использовать «быстрый» Интернет. Так что экономический эффект налицо. Еще больше пропускную способность сетевых кабелей позволяет реализовать переход на использование оптического кабеля.

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


Сетевая карта компьютера


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

Internet Protocol (IP)

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

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

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

Каждый узел в такой сети имеет свой уникальный номер-адрес (IP-адрес).

IP-адрес – это двоичное число, имеющее 32 разряда. Таким образом, общее число уникальных IP-адресов – 232 или свыше 4,2 миллиарда. Решение о том, чтобы сделать IP-адрес 32-битным, принималось давным-давно, еще во времена великого Джона Постела (см. Часть 1), и он сам участвовал в обсуждении этого вопроса. По его воспоминаниям, тогда никто не мог представить, что в мире будет когда-нибудь 4 миллиарда компьютеров, которые понадобится объединить в одну сеть. Но в 1980-х годах, когда Сеть действительно стала всемирной, ее размер начал расти в геометрической прогрессии. Тогда-то и оказалось, что этот сверхбольшой ограничительный порог достижим. В 1990-х годах исчерпание адресов Интернета стало очевидной перспективой. В 1998 году была разработана новая, шестая, версия протокола IP (IPv6). В отличие от пока еще действующей четвертой версии (IPv4), она предполагает увеличить длину IP-адреса до 128 бит. Посчитайте сами, насколько увеличивается при этом количество уникальных адресов. Более подробно о сетевых адресах будет рассказано в одном из следующих разделов.

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

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

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

Протокол TCP

Протокол контроля передачи (TCP) изобрели в 1974 году два американца, Винт Серф и Боб Кан (см. Часть 1). Они же изобрели и межсетевой протокол. И действуют эти протоколы в связке. По этой причине их название чаще всего и пишут вместе, вот так: TCP/IP.

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

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

Как нам уже известно, у любого компьютера для «общения с внешним миром» есть специальные разъемы, которые называются портами. Операционная система тоже организует для связи компьютера с внешним миром специальные каналы, которые называются виртуальными портами. Каждый виртуальный порт имеет уникальный номер. Конкретные Интернет-сервисы закреплены за конкретными стандартными номерами портов. Например, веб-сервис привязан к порту 80, поэтому браузер по умолчанию использует для обмена данными с Интернетом этот порт. Почтовые сервисы используют по крайней мере два порта. Входящая почта поступает через порт 25, а исходящая отправляется через порт ПО. Обмен файлами происходит через порт 21.

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

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

Внимание! Это не конец книги.

Если начало книги вам понравилось, то полную версию можно приобрести у нашего партнёра - распространителя легального контента. Поддержите автора!

Страницы книги >> Предыдущая | 1 2 3 4 5 6 7 8 9 10
  • 0 Оценок: 0

Правообладателям!

Данное произведение размещено по согласованию с ООО "ЛитРес" (20% исходного текста). Если размещение книги нарушает чьи-либо права, то сообщите об этом.

Читателям!

Оплатили, но не знаете что делать дальше?


Популярные книги за неделю


Рекомендации