русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Классификация сетей


Дата добавления: 2014-10-07; просмотров: 1045; Нарушение авторских прав


Каждая компьютерная сеть принадлежит к одной из следующих обширных категорий: локальные вычислительные сети - ЛВС (local area networks - LAN), и глобальные вычислительные сети - ГВС (wide area networks - WAN). Локальная сеть, как правило, состоит из нескольких компьютеров, находящихся в одном здании или комплексе зданий. Например, компьютеры, используемые в университетском городке или на одном заводе, могут быть соединены единой локальной сетью. Глобальная сеть соединяет машины, которые могут находиться в противоположных концах города или света. Основное различие между локальными и глобальными сетями заключается в технологиях, используемых для установления путей соединения. Например, использование спутниковых линий связи характерно для глобальных сетей, но не для локальных. В связи с этим сегодня программное обеспечение обычно заключается в небольшой изолированной части всего пакета сетевого программного обеспечения, а это означает, что с точки зрения перспектив развития программного обеспечения различие между локальными и глобальными сетями становится все менее и менее важным.

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

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

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



Другой принцип классификации сетей базируется на том, является ли право собственности на проект внутреннего устройства сети общественным достоянием или же принадлежит отдельной корпорации. Сеть первого типа называется открытой сетью, а второго типа — закрытой, или частной сетью. Сеть Internet является открытой системой. Связь через Internet регулируется открытой системой стандартов, известной как семейство протоколов TCP/IP, которое мы рассмотрим в следующем разделе. В противоположность этому, компания Novell Inc. является главным поставщиком сетевого программного обеспечения, которое было разработано ею и является ее частной собственностью. Таким образом, сетевые системы, устанавливаемые и поддерживаемые с помощью программного обеспечения компании Novell, являются закрытыми.

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

Internet. Если мы соединим несколько уже существующих независимых сетей, то получим сеть из сетей. Наиболее известный пример такой структуры — глобальная суперсеть Internet (пишется всегда с прописной буквы), которая возникла в 1973 году в ходе программы, начатой американским агентством DARPA для проведения различных исследований в интересах министерства обороны США. Цель лекциию этой программы была разработка средств соединения разнообразных компьютерных сетей, позволяющих им функционировать как единая надежная сеть. В настоящее время Internet является глобальным объединением множества локальных и глобальных сетей, включающим миллионы машин. Сети в Internet соединены с помощью специальной машины, называемой маршрутизатором (рис. 2). Маршрутизатор (router) — это машина, принадлежащая к обеим сетям и передающая сообщения из одной сети в другую.

Рисунок 1 - Типы конфигурации сетей

Рисунок 2 - Объединение локальных сетей

 

Иногда вместо термина маршрутизатор используется термин шлюз (gateway). Однако шлюзами обычно называют более сложные соединения, чем типичные маршрутизаторы. Например, "шлюз" чаще всего используется по отношению к машине, соединяющей две надсети из сетей, причем в каждой надсети используется разный межсетевой протокол. В частности, шлюзом будет называться машина, соединяющая локальную корпоративную сеть с Internet.

Концептуально Internet на логическом уровне может рассматриваться как объединение сетевых кластеров, называемых доменами; каждый из доменов обычно состоит из сетей, принадлежащих к одной организации, например университету, компании или государственному учреждению. Каждый домен является автономной системой, конфигурация которой может быть выбрана местным руководством произвольно, вплоть до объединения из нескольких глобальных сетей. Адрес каждой машины в Internet представляет собой строку из 2 бит (рис 3), состоящую из двух частей: первая задает домен, в котором находится машина, а вторая определяет конкретную машину внутри домена. Часть адреса, определяющая домен, называется сетевым идентификатором и присваивается домену организацией InterNIC (Internet Network Information Center — Центр сетевой информации Internet) в процессе создания домена, при регистрации его в InterNIC. Именно эта процедура регистрации гарантирует, что каждый домен в Internet будет иметь уникальный сетевой идентификатор. Часть адреса, определяющая конкретную машину в домене, называется адресом узла. (Термин узел (host) часто используется по отношению к машине в сети с Цель лекциию подчеркнуть ее роль как пункта назначения для запросов, поступающих от других машин.) Адрес узла устанавливается локальной администрацией домена; обычно это администратор сети или системный администратор. Например, сетевой идентификатор Тамбовского государственного технического университета — 195.19.104. Сетевые идентификаторы традиционно записывают в десятичной нотации с точками. Машина в этом домене будет иметь адрес, подобный следующему: 192.207.177.14. Последний байт здесь является адресом узла.

Рисунок 3 – Структура Internet-адреса машины

Представление адресов в битовой форме неудобно для нашего восприятия. Поэтому организация InterNIC присваивает каждому домену также уникальный мнемонический адрес, называемый именем домена. Каждый локальный администратор имеет право расширить это имя домена, чтобы получить мнемоническое имя для машины внутри домена. Например, имя домена Тамбовского государственного технического университета — tstu.ru. Отдельная машина в этом домене может иметь мнемоническое имя www.tstu.ru.

Нотация с точками, используемая в мнемоническом адресе, никак не связана с десятичной нотацией с точками, используемой для представления адресов в битовой форме. Напротив, элементы мнемонического адреса определяют местонахождение машины внутри иерархической системы классификации. В частности, адрес www.tstu.ru определяет машину, которой присвоено имя www в пределах организации tstu, входящий в российский домен ru. Если домен очень большой, локальная администрация может разделить его на поддомены, и тогда мнемонические адреса машин внутри домена станут длиннее. Например, пусть домену университета присвоено имя tstu.ru и пусть принято решение о разделении его на поддомены. Тогда адрес машины в университете может иметь вид ftp.is.tstu.ru; это означает, что машина с сетевым именем ftp находится в поддомене is домена tstu, входящий в домен России ru.

Локальная администрация каждого домена ответственна за ведение каталога, содержащего мнемонические адреса и соответствующие цифровые Internet-адреса машин данного домена. Каталог поддерживается на специально выделенной для этих целей машине данного домена, которая играет роль сервера, именуемого сервером доменных имен (domain name server - DNS). Назначение этого сервера состоит в предоставлении ответов на запросы, касающиеся адресов. Все серверы имён образуют распределённую в Internet систему каталогов, предназначенную для перевода адресов из мнемонической в эквивалентную цифровую форму. В частности, если пользователь хочет послать сообщение, причем адрес места назначения указан им в мнемонической форме, система серверов имен используется для перевода этого адреса в эквивалентную последовательность битов, совместимую с программным обеспечением Internet. Обычно эта задача выполняется за доли секунды.

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

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

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

Рисунок 4 - Взаимодействие серверного оборудования и его программного обеспечения с клиентским оборудования и его программным обеспечением

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

Например, суперсеть Internet в настоящее время является средством публикации мультимедиа-документов, содержащих гипертекст (hypertext), т.е. текст со словами, фразами и графическими изображениями, связанными с другими документами. Читатель такого текста может при необходимости получить доступ к связанным с ним документам. Для этого ему достаточно просто указать на соответствующую ссылку и щелкнуть мышью или выбрать эту ссылку с помощью клавиш со стрелками. Предположим, что в гипертекстовом документе есть следующее предложение: "Исполнение симфоническим оркестром "Болеро" Мориса Равеля было просто выдающимся", причем имя Морис Равель связано с другим документом, возможно, содержащим информацию об этом композиторе. Пользователь может просмотреть этот материал, поместив на имя Морис Равель указатель мыши и нажав кнопку мыши. Более того, если установлены соответствующие ссылки, читатель сможет прослушать аудиозапись указанного произведения, выбрав слово Болеро.

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

Пакеты программ, помогающие пользователям работать с гипертекстовыми документами, относятся к одной из двух категорий: программы, исполняющие роль клиента, и программы-серверы (рис 5). Программа-клиент выполняется на машине пользователя и имеет своей Цель лекциию получение запрошенных пользователем материалов и представление их в подобающем виде. Именно программа-клиент предоставляет пользователю интерфейс, позволяющий этому пользователю получать доступ и просматривать информацию, размещенную в Web. Поэтому такую программу клиент часто называют броузером (browser), или Web-броузером. Сервер гипертекста функционирует на машине, содержащей те документы, к которым запрошен доступ. Задача сервера — предоставить доступ к размещенным на его машине документам (Web-сайту) в соответствии с запросами, поступающими от клиентов. Короче говоря, пользователь получает доступ к гипертекстовым документам, пользуясь услугами функционирующего на его машине броузера, а этот броузер выполняет требования пользователя, обращаясь с запросами к службам гипертекстовых серверов, размещенных в Internet.

Рисунок 5 - Получение доступа к Web-документам

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

Для создания гипертекста необходимо иметь средства установки ссылок между документами. Для этих целей каждый документ идентифицируется уникальным адресом, который называется URL-адресом (Uniform Resource Locator —унифицированный указатель ресурса). Содержащаяся в URL информация позволяет броузеру связаться с соответствующим сервером и запросить требуемый документ. Типичный URL-адрес имеет вид: http://www.is.tstu.ru/is/inph/index.html. Здесь http – протокол для доступа к документу, www.is.tstu.ru – мнемоническое имя узла, на котором находится документ, /is/inph/ - путь к каталогу, определяющий местонахождение документа внутри файловой системы узла, index.html – имя документа. Иногда URL-адрес не указывает явным образом на конкретный документ, а состоит лишь из имени используемого протокола и мнемонического имени машины. В подобных случаях сервер этой машины возвращает определенный документ (обычно называемый основной страницей (home page)), кратко описывающий информацию доступную на этой машине. Такие сокращенные URL-адреса являются средством установления контакта с организациями. Например, URL-адрес http://www.tstu.ru указывает на основную страницу Тамбовского государственного технического университета, содержащую ссылки на многие документы, связанные с этим университетом и образовательные учреждения Тамбова.

Гипертекстовый документ похож на традиционный текстовый тем, что его содержание также символ за символом закодировано с использованием таблицы символов стандарта ASCII или Unicode. Различие же состоит в том, что гипертекстовый документ дополнительно содержит специальные маркеры, подробно описывающие, как этот документ должен выглядеть на экране компьютера и какие элементы этого документа должны быть связаны с другими документами. Данная система маркеров получила название языка разметки гипертекстов HTML (Hyper Text Markup Language). Таким образом, при создании Web страницы автор помещает в нее информацию, необходимую броузеру клиента для выполнения его задач, записывая ее на языке HTML.

В целом работа других служб аналогична, однако для них применяются соответствующие протоколы и сетевое программное обеспечение (см. табл.1). Например, сервис электронной почты обеспечивает направленную передачу сообщений от одного человека к другому. Чтобы воспользоваться электронной почтой, необходимо соблюсти протоколы отправки и принятия сообщений и иметь программу (почтовый клиент) и установить связь с почтовым сервером. Электронная почта использует протоколы SMPT и POP3.

Таблица 1

Служба Протокол Программа сервер Программа клиент
Web-служба (World Wide Web) HTTP Web-сервер Браузер
Электронная почта (E-mail) POP3, SNTP Почтовый сервер Почтовый клиент
Служба новостей (телеконференции Usenet) NNTP Сервер новостей Клиент службы новостей
Служба передачи файлов (FTP-служба) FTP Ftp-сервер Ftp-клиент

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

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

 

2 Сетевые протоколы*

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

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

Говоря коротко, транспортировка запасных частей производится с помощью трехуровневой иерархии служб доставки (рис. 6). Первый уровень это уровень пользователя, он состоит из отправителя и получателя. Второй уровень представлен компанией по перевозке грузов, а третий — авиалинией. Каждый из уровней рассматривает следующий более низкий уровень как некий абстрактный механизм доставки. (Отправитель не вникает в детали работы компании по перевозке грузов, а эта компания не интересуется внутренними делами авиалинии.) На каждом уровне имеются и отправители, и получатели, причем действия получателей противоположны действиям соответствующих отправителей. Сходным образом организовано и программное обеспечение, управляющее взаимодействиями через Internet; только в нем имеется четыре уровня вместо трех, и каждый уровень представляет собой набор стандартных программ, а не людей и организаций.

Рисунок 6 - Пример доставки посылки

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

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

Рисунок 7 - Уровни сетевого программного обеспечения в Internet

Самым верхним уровнем в иерархии программного обеспечения Internet является прикладной уровень, который, несмотря на схожесть названий, не следует путать с прикладным программным обеспечением в классификации, рассмотренной ранее. (В действительности мы скоро увидим, что большая часть программного обеспечения прикладного уровня в иерархии программного обеспечения Internet относится к категории обслуживающих программ.) Этот уровень иерархии состоит из элементов программного обеспечения, которые должны взаимодействовать друг с другом через Internet. Традиционный пример — набор стандартных утилит для передачи файлов по Internet с использованием протокола передачи файлов FTP (File Transfer Protocol). Этот набор стандартных утилит часто оформляется в виде единой прикладной программы с именем FTP, название которой отражает лежащий в ее основе протокол. Другой пример — пакет утилит под именем telnet, который был разработан в целях предоставления пользователям доступа к любой машине в Internet в таком режиме, как если бы они были локальными пользователями этой машины. Как программа FTP, так и пакет telnet первоначально создавались как прикладное программное обеспечение в соответствии с классификацией, приведенной в разделе 3.2. Однако сегодня они стали частью инфраструктуры операционных систем большинства персональных компьютеров. Действительно, эти элементы системного программного обеспечения используются как абстрактные механизмы для конструирования более крупных приложений, подобных Web-браузерам. В этом смысле они превратились теперь в типичные программы класса утилит.

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

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

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

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

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

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

Каждый раз, когда сетевой уровень получает пакет от своего канального уровня, он удаляет из него промежуточный Internet-адрес, прикрепленный сетевым уровнем последней машины-отправителя, и изучает адрес конечного места назначения пакета, находящийся под ним. Если это собственный адрес данной машины, сетевой уровень передает обработанный пакет своему транспортному уровню. В противном случае сетевой уровень решает, что пакет должен быть передан по Internet дальше. Для этого он должен снова "упаковать" пакет, снабдив его новым промежуточным адресом, и вернуть его на свой канальный уровень для дальнейшей передачи. Таким способом пакеты "перепрыгивают" с машины на машину, пока не достигнут конечного места назначения. На каждом промежуточном этапе именно сетевой уровень определяет место назначения следующего прыжка.

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

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

Рисунок 8 - Путь прохождения данных по Internet, включающий две промежуточные машины

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

Управление правом передачи данных.В обязанности канального уровня входит учет всех деталей установки соединений, присущих той сети, где находится данная машина, в том числе задача управления правом машины передавать по сети собственное сообщение. Одним из подходов к координации распределения прав на отправку сообщений является протокол с передачей маркера по сети с кольцевой конфигурацией (Token Ring protocol). Согласно этому протоколу, каждая машина передает сообщения только "направо", а получает их только "слева", как показано на рис. 3.18. Следовательно, сообщение от одной машины к другой передвигается по сети против часовой стрелки до тех пор, пока не достигнет своего места назначения. Когда сообщение поступает по назначению, машина-получатель сохраняет его копию и отправляет ее дальше по сети. Когда отправленная копия достигает машины-отправителя, эта машина определяет, что ее сообщение получено, и удаляет его из кольца. Конечно, такая система зависит от четкого взаимодействия всех машин. Если каждая машина постоянно будет отправлять только свои сообщения, а не пересылать сообщения других машин, то ничего не получится.

Чтобы разрешить эту проблему, по кольцу посылается определенная последовательность битов, называемая маркером (token). Обладание этим маркером дает машине право послать собственное сообщение; в противном случае ей разрешено передавать только чужие сообщения. В обычной ситуации каждая машина просто передает маркер слева направо, точно так же как она передает сообщения. Если машина, получившая маркер, имеет собственные сообщения, которые нужно передать по сети, она посылает одно сообщение, удерживая маркер у себя. Если это сообщение завершит свой кольцевой цикл, машина передаст маркер следующей машине в кольце. Аналогично, когда следующая машина получает маркер, она может или сразу передать маркер дальше, или послать собственное сообщение, перед тем как передать маркер следующей машине. Таким образом, машины в сети имеют равные возможности вводить свои сообщения по мере циркуляции маркера в сети.

Рисунок 9 - Обмен информации в сети с кольцевой конфигурацией

Другой протокол для координации распределения прав отправки сообщений применен в сетях Ethernet — популярной версии сети с шинной конфигурацией. В таких сетях право передачи сообщений регулируется протоколом CSMA/CD (Carrier Sence, Multiple Access with Collision Detection — множественный доступ с опросом несущей и разрешением конфликтов). Этот протокол предусматривает, что каждое посланное сообщение будет передано всем машинам, соединенным шиной (рис. 10). Каждая машина просматривает все поступающие сообщения, но отбирает только те, которые адресованы именно ей. Чтобы отправить собственное сообщение, машина ожидает, пока в шине наступит тишина, затем начинает отправку, одновременно продолжая наблюдать за шиной. Если в этот момент и другая машина пытается отправить свое сообщение, обе обнаруживают конфликт и делают паузу на произвольно короткий промежуток времени, а затем предпринимают попытку вновь начать отправку. В результате складывается ситуация, аналогичная той, которая возникает при разговоре в небольшой группе людей. Если два человека начинают говорить одновременно, оба замолкает. Различие состоит в том, что люди могут выйти из ситуации таким образом: "Простите, что вы хотели сказать?", "Нет, нет, говорите вы первым"; в то время как по протоколу CSMA/CD каждая машина просто делает следующую попытку.

Рисунок 10 - Обмен информации в сети с шинной конфигурацией

Семейство протоколов TCP/IP.Спрос на открытые сети вызвал потребность в разработке открытых стандартов. Следуя этим стандартам, производители могли бы выпускать оборудование и программное обеспечение, корректно взаимодействующее с продуктами других фирм-производителей. Одним из таких стандартов является модель OSI (Open System Interconnection — взаимодействие открытых систем), разработанная Международной организацией по стандартизации (ISO). Этот стандарт предусматривает иерархию из семи уровней, в отличие от четырехуровневой системы, принятой в Internet. На модель OSI часто ссылаются, так как ее поддерживает авторитет международной организации. Но она так и не была окончательно внедрена, главным образом из-за того, что появилась уже после того, как семейство протоколов TCP/IP получило широкое распространение в Internet.

Семейство протоколов TCP/IP представляет собой набор протоколов, определяющих четырехуровневую иерархию, используемую в Internet, основанную на представлении о том, что сетевая инфраструктура содержит четыре вида объектов: ресурсы, процессы, хосты, сети (см. табл. 2).

Таблица 2 – Типы протоколов

Название уровня Объекты Адресация Протоколы Название блока информации
Уровень приложений Ресурсы Определяется конкретным сервисом HTTP, FTP, POP3, SMTP Сообщение
Транспортный уровень Сервисы (процессы) Номер порта TCP, UDP Сегмент (пакет)
Сетевой уровень Сети IP-адрес IP Датаграмма (пакет)
Канальный уровень Хосты (узлы) Локальный адрес узла (MAC-адрес в сетях Ethernet) CSMA/CD (в сетях Ethernet) Кадр (пакет)

В действительности TCP/IР — это название только двух протоколов: TCP (Transmission Control Protocol — протокол управления передачей) и IP (Internet Protocol); так что по отношению ко всему семейству такое название несколько неточно. Говоря точнее, протокол TCP определяет одну из версий транспортного уровня. Мы употребили слово версия, так как в семействе протоколов TCP/IP для представления транспортного уровня существуют два способа; второй определяется протоколом UDP (User Datagram Protocol — протокол датаграмм пользователя). Это напоминает ситуацию, когда при отправке запчастей отправитель имеет возможность выбора среди различных компаний по доставке грузов, каждая из которых предлагает одинаковый набор основных услуг, но имеет собственные характеристики. Таким образом, в зависимости от специфики требуемого обслуживания программное обеспечение прикладного уровня может выбирать, с помощью какой версии транспортного уровня, протокола TCP или UDP, будут отправлены данные.

Протоколы транспортного уровня вводят новый уровень адресации, так называемый номер порта (port number), который определяет, какому процессу на машине передаются данные. Существует список соответствия номеров портов приложениям, определенных в RFC1700 (Request For Comments – запрос для пояснений - данные документы описывают стандарты протоколов Internet и их взаимодействие). Некоторые зарезервированные порты представлены в табл. 3.

Таблица 3 – Функциональное назначение портов

№ порта Сервис Описание
FTP-data Передача данных
FTP Управляющие команды
Telnet Удаленный доступ в систему
SMTP Протокол электронной почты
DNS Сервер доменных имен
HTTP Сервер WWW
POP3 Протокол электронной почты
NNTP Телеконференции

Между протоколами TCP и UDP существуют два основных различия. Первое состоит в том, что, перед тем как передать данные на транспортный уровень, базирующийся на протоколе TCP, посылается сообщение транспортному уровню машины-получателя, уведомляющее о том, что предназначенные ему данные готовы к отправке, и извещающее, какое именно программное обеспечение прикладного уровня должно их принять. Затем транспортный уровень машины-отправителя ожидает уведомления о получении адресатом этого предварительного сообщения, и только после его прихода он приступает к передаче сегментов данных. Говорят, что транспортный уровень с протоколом TCP сначала устанавливает соединение, а затем посылает данные. Транспортный уровень, основанный на UDP, не устанавливает никакие соединения, прежде чем послать данные. Он просто посылает данные по указанному адресу и забывает о них. Для него не имеет значения, работает ли вообще в данный момент машина, указанная как получатель. Поэтому протокол UDP называют протоколом без установки соединения.

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

Протокол IP — это стандарт Internet для сетевого уровня. Одна из его функций состоит в том, что каждый раз, когда использующий протокол IP сетевой уровень с протоколом IP подготавливает пакет к передаче на канальный уровень, он прикрепляет к пакету некоторое значение, называемое счетчиком переходов по сети, или временем жизни пакета. Это значение указывает, сколько раз пакет может пересылаться между машинами в попытках проложить свой путь через Internet. Каждый раз, когда использующий протокол IP сетевой уровень пересылает некоторый пакет, он уменьшает значение его счетчика переходов на единицу. С помощью этого механизма сетевой уровень защищает Internet от бесконечной циркуляции пакетов в системе. Хотя размеры Internet продолжают расти с каждым днем, начальное значение счетчика переходов по сети, равное 64, остается более чем достаточным для того, чтобы позволить пакету найти свой путь в лабиринте локальных и глобальных сетей и маршрутизаторов.



<== предыдущая лекция | следующая лекция ==>
Цель лекции | Безопасность сетей


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.979 сек.