|
Компьютерные сети и сетевые технологии
Компьютерные сети и сетевые технологии
1 Белорусский государственный экономический университет Курс лекцийКомпьютерные сети и сетевые технологииО.А. СосновскийМинск 2003Лекция 1. Общие понятия компьютерных сетей 1. История развития компьютерных сетей Компьютерные сети являются логическим результатом эволюции развития компьютерных технологий. Постоянно возрастающие потребности пользователей в вычислительных ресурсах обуславливали попытки специалистов компьютерных технологий объединить в единую систему отдельные компьютеры. В начале 60- х годов двадцатого столетия начали развиваться интерактивные (с вмешательством пользователя в протекание вычислительного процесса) многотерминальные системы разделения времени. В таких системах мощный центральный компьютер (мэйнфрейм) отдавался в распоряжение нескольким пользователям. Каждый пользователь получал в свое распоряжение терминал (монитор с клавиатурой без системного блока), с помощью которого он мог вести диалог с компьютером. Компьютер по очереди обрабатывал программы и данные, поступающие с каждого терминала. Поскольку время реакции компьютера на запрос каждого терминала было достаточно мало, то пользователи практически не замечали параллельную работу нескольких терминалов и у пользователей создавалась иллюзия монопольного пользования компьютером. Терминалы, как правило, рассредоточивались по всему предприятию и функции ввода- вывода информации были распределенными, но обработка информации проводилась только центральным компьютером. Такие многотерминальные централизованные системы внешне напоминали локальные вычислительные сети, до создания которых в действительности нужно было пройти еще большой путь. Сдерживающим фактором для развития компьютерных сетей был в первую очередь экономический фактор. Из- за высокой в то время стоимости компьютеров предприятия не могли позволить себе роскошь купить несколько компьютеров, а значит и объединять в вычислительную сеть было нечего. Развитие компьютерных сетей началось с решение более простой задачи- доступ к компьютеру с терминалов, удаленных от него на многие сотни, а то и тысячи километров. Терминалы в этом случае соединялись с компьютером через телефонные сети с помощью специальных устройств модемов. Следующим этапом в развитии компьютерных сетей стали соединения через модем не только «терминал - компьютер», но и «компьютер- компьютер». Компьютеры получили возможность обмениваться данными в автоматическом режиме, что является базовым механизмом любой компьютерной сети. Тогда впервые появились в сети возможности обмена файлами, синхронизация баз данных, использования электронной почты, т.е. те службы, являющимися в настоящее время традиционными сетевыми сервисами. Такие компьютерные сети получили название глобальных компьютерных сетей. Исторически первые компьютерные сети были созданы агентством ARPA по заданию военного ведомства США. В 1964 году была разработана концепция и архитектура первой в мире компьютерной сети ARPANET, в 1967 впервые было введено понятие протокола компьютерной сети. В сентябре 1969 года произошла передача первого компьютерного сообщения между компьютерными узлами Колифорнийского и Стенфордского университетов. В 1977 году сеть ARPANET насчитывала уже 111 узлов, а в 1983 - 4000. Сеть ARPANET прекратила свое существование в 1989 году, не выдержав конкуренцию с набирающей силу сетью Интернет. В начале 70- х годов двадцатого столетия, благодаря развитию микроэлектроники, были созданы мини- компьютеры, которые стали реальными конкурентами мэйнфреймам. Несколько десятков мини- компьютеров выполняли задачи быстрее одного мэйнфрейма, но при этом все вместе стоили дешевле. Даже небольшие подразделения предприятий получили возможность покупать для себя компьютеры. Мини- компьютеры стали широко использоваться в управлении технологическими процессами, складами, в бухгалтерском учете и т.д. В результате шел интенсивный процесс распределения вычислительных ресурсов по всему предприятию, что, однако, через некоторое время привело к необходимости обратного объединения всех вычислительных ресурсов в одну систему. Теперь это объединение происходило уже не базе одного компьютера, а путем подключения к сети отдельных распределенных компьютеров. Такие компьютерные сети стали называться локальными компьютерными сетями. На начальном этапе создания локальных компьютерных сетей для объединения компьютеров использовались самые разнообразные не стандартизованные устройства и программное обеспечение. Создание сети в это время требовало от разработчиков больших изобретательности и усилий. В середине 80- х годов положение дел в локальных компьютерных сетях стало кардинально меняться в сторону создания стандартных технологий объединения компьютеров в единую сеть. Были разработаны специальные методы и правила обмена информацией между компьютерами, среди которых наиболее известными стали стандарты Ethernet, Toking Ring, FDDI, Arcnet. В указанных стандартах были строго регламентированы длина, вид и порядок следования кодов, посылаемых компьютерами в сеть, правила доступа к сети отдельными компьютерами и т.д. Кроме этого в это время интенсивно начали использоваться стандартные персональные компьютеры, которые очень быстро вытеснили мини- компьютеры и мэйнфреймы. Разработанные стандартные сетевые технологии, а так же использование персональных компьютеров значительно упростили процесс создания компьютерных сетей. Для создания сети достаточно стало приобрести специальные сетевые платы (сетевые адаптеры) соответствующего стандарта, например, Ethernet, стандартный кабель со стандартными разъемами и установить на компьютер одну из популярных сетевых операционных систем, например, NetWare. Присоединение каждого нового компьютера к сети не стало вызывать больших трудностей. Появление локальных компьютерных сетей внесло много нового в использование вычислительной техники. Появилась возможность быстрого доступа к разделяемым вычислительным ресурсам, к базе данных сразу несколькими пользователями, причем пользователь использовал на своем сетевом компьютере те же знакомые команды, как и при работе с отдельным компьютером. Задачу обработки этих команд и распределения задач между отдельными компьютерами взяла на себя сетевая операционная система. В настоящее время разделение компьютерных сетей на глобальные и локальные происходит в первую очередь по признаку их территориального размещения, по механизму установления связей между компьютерами и скорости передачи данных. 2. Глобальные и локальные сетиГлобальные сети (WAN, Wide Area Networks) позволяют организовать взаимодействие между компьютерами на больших расстояниях. Эти сети работают на относительно низких скоростях и могут вносить значительные задержки в передачу информации. Протяженность глобальных сетей может составлять тысячи километров и они интегрированы с сетями масштаба страны. Локальные сети (LAN, Local Area Networks) обеспечивают наивысшую скорость обмена информацией между компьютерами и типичная локальная сеть занимает пространство в одно или несколько зданий. Протяженность локальных компьютерных сетей составляет всего лишь несколько километров.Сравнительно недавно появились городские сети или сети мегополисов (MAN, Metropolitan Area Networks). Такие сети предназначены для обслуживания территории крупного города - мегаполиса. В то время как локальные сети наилучшим образом подходят для разделения ресурсов на коротких расстояниях и на больших скоростях (до 100 Мбит), а глобальные сети обеспечивают работу на больших расстояниях и с низкой скоростью (56 и 64 Кбит/с и только на магистралях до 2 Мбит/с), то городские сети занимают промежуточное положение: имеют скорость до 45 Мбит/с и связывают локальные сети в масштабах города с возможностью выхода в глобальные сети.Механизмы передачи данных в глобальных и локальных сетях существенно отличаются. Глобальные сети ориентированы на соединение, т.е. еще до начала передачи данных между компьютерами сети устанавливается соединение, которое подтверждается обменом компьютеров между собой специальными сигналами (кодами). В локальных сетях, как правило, используются методы, не требующие предварительной установки соединения - данные просто передаются в канал связи без подтверждения готовности их принять. В локальных сетях каждый компьютер имеет сетевой адаптер, который достаточно просто соединяет его с каналом передачи. Глобальные сети содержат активные коммутирующие устройства, мощные маршрутизаторы для распределения сообщений и соответствующие развитые службы по обслуживанию сетевого оборудования. Среди глобальных компьютерных сетей в настоящее время наиболее популярной является сеть Internet, которую более подробно рассмотрим ниже. 3. Топология компьютерных сетейПри построении компьютерных сетей важным является выбор физической организации связей между отдельными компьютерами, т.е. топологии сети. При выборе топологии сети, наряду с чисто техническими проблемами передачи электрических сигналов, приходится решать и задачи экономного использования линий связи (1 км оптического волокна, например, стоит несколько тысяч долларов). Рассмотрим некоторые, наиболее часто встречающиеся топологии.Полносвязная топология соответствует сети, в которой каждый компьютер связан со всеми остальными.Полносвязная топология является громоздкой и малоэффективной, т.к. для каждой пары компьютеров выделяется отдельная электрическая линия связи и требуется большое количество коммутационных портов. Чаще всего этот вид топологии используется в глобальных сетях при небольших количествах компьютеров.Топология общая шина является достаточно распространенной топологией для локальных сетей (Рис. 1б). В этом случае компьютеры подключаются к одному общему кабелю (шине), по которому и происходит обмен информацией между компьютерами. Основными преимуществами общей шины являются дешевизна и простота разводки кабеля по отдельным помещениям. Серьезными недостатками такой топологии является низкая надежность, т.к любой дефект общего кабеля полностью парализует всю сеть, а так же невысокая производительность, поскольку в любой момент только один компьютер может передавать данные в сеть. Топология звезда (Рис. 1в) предусматривает подключение каждого компьютера отдельным кабелем к общему устройству, называемому концентратором, который находится в центре сети. Концентратор служит для перенаправления передаваемой информации к одному или всем остальным компьютерам сети. По сравнению с общей шиной эта топология имеет более высокую надежность, т.к. неполадки с кабелем касаются лишь одного компьютера и только неисправность концентратора выводит из строя всю сеть. К недостатком топологии звезда можно отнести ее высокую стоимость ввиду необходимости установки дополнительного оборудования (концентратора). Кроме этого концентратор имеет ограниченное количество портов для подключения компьютеров. Поэтому для сетей с большим количеством компьютеров используется подключение нескольких концентраторов, иерархически соединенных между собой связями типа звезда. В настоящее время иерархическая звезда является самой распространенной топологией как в локальных, так и в глобальных компьютерных сетях.В сетях с кольцевой топологией (Рис.1г) данные передаются по кольцу от одного компьютера к другому, как правило, в одном направлении. Если компьютер распознает данные как «свои», то он их принимает. В сетях с кольцевой топологией всегда принимаются меры для обеспечения работоспособности сети при выходе из строя одного из компьютеров. Такие сети строятся всегда, если требуется контроль предаваемой информации, т.к. данные сделав полный оборот возвращаются к компьютеру- источнику. Отметим, что по описанным типовым топологиям строятся, как правило, небольшие сети. Для крупных сетей характерно наличие произвольных связей между компьютерами, где можно, однако, выделить описанные выше топологии. Такие сети называются сетями со смешанной топологией. 4. Стандартизация компьютерных сетей. Понятия интерфейса, протокола и стекаПо своей сущности компьютерная сети является совокупностью компьютеров и сетевого оборудования, соединенных каналами связи. Поскольку компьютеры и сетевое оборудование могут быть разных производителей, то возникает проблема их совместимости. Без принятия всеми производителя общепринятых правил построения оборудования создание компьютерной сети было бы невозможно. Поэтому разработка и создание компьютерных сетей может происходить только в рамках утвержденных стандартов.В основу стандартизации компьютерных сетей положен принцип декомпозиции, т.е. разделения сложных задач на отдельные более простые подзадачи. Каждая подзадача имеет четко определенные функции и строго установленные связи между подзадачами. При более внимательном рассмотрении работы компьютера в сети можно выделить две основные подзадачи: взаимодействие программного обеспечения пользователя с физическим каналом связи (посредством сетевой карты) в пределах одного компьютера взаимодействие компьютера через канал связи с другим компьютером Современное программное обеспечение компьютера имеет многоуровневую модульную структуру, т.е. программный код, написанный программистом и видимый на экране монитора (модуль верхнего уровня), проходит несколько уровней обработки, прежде чем превратится в электрический сигнал (модуль нижнего уровня), передаваемый в канал связи. При взаимодействии компьютеров через канал связи оба компьютера должны выполнять ряд соглашений. Например, они должны согласовать величину и форму электрических сигналов, длину сообщений, методы контроля достоверности и т.д. Соглашения должны быть такими, чтобы они были поняты каждым модулем на соответствующе уровне каждого компьютера. Суть работы многоуровневого протокола можно пояснить как «письмо в конверте». Каждый уровень протокола надписывает на «конверте» свою информацию. Сетям нужно только понимать «надпись» на «конверте», чтобы предать его в место назначения, а до содержания письма им дела нет. На Рис.2 схематически показана модель взаимодействия двух компьютеров в сети. Для упрощения показаны четыре уровня модулей для каждого компьютера. Процедура взаимодействие каждого уровня этих компьютеров может быть описана в виде набора правил взаимодействия каждой пары модулей соответствующих уровней. Формализованные правила, определяющие последовательность и формат сообщений, которыми обмениваются модули, лежащие на одном уровне, но в различных компьютерах называются протоколами. Модули, реализующие протоколы соседнего уровня и находящиеся в одном компьютере, также взаимодействуют друг с другом в соответствии с четко определенными правилами и с помощью стандартизованных форматов сообщений. Эти правила называются интерфейсом и определяют набор сервисов, предоставляемых данным уровнем соседнему уровню. Другими словами, в сетевых технологиях традиционно принято, что протоколы определяют правила взаимодействия модулей одного уровня, но в разных компьютерах, а интерфейсы - соседних уровней в одном компьютере. Модули, таким образом, должны обрабатывать: во- первых свой собственный протокол, а во- вторых интерфейсы с соседними уровнями. Иерархически организованный набор протоколов для взаимодействия компьютеров в сети называется стеком коммуникационных протоколов. Коммуникационные протоколы могут быть реализованы как программно, так и аппаратно. Протоколы нижних уровней, как правило, реализуются комбинацией программно- аппаратных средств, а протоколы верхних уровней- чисто программными средствами. Отметим, что протоколы каждого уровня обладают независимостью друг от друга, т.е. протокол любого уровня может быть изменен не оказывая при этом никакого влияния на протокол другого уровня. Главное, чтобы интерфейсы между уровнями обеспечивали необходимые связи между ними. Принцип взаимодействия компьютеров в сети можно объяснить на примере сотрудничества двух фирм. Два генеральных менеджера каждой из фирм осуществляют сделки между собой на основании заключенных договоров и соглашений. Указанные взаимодействия являются «протоколом уровня генеральных менеджеров». На каждой из фирм у менеджеров есть секретари, причем каждый менеджер имеет свой метод и стиль работы с секретарем. Один, например, предпочитает устные указания, а второй дает только письменные распоряжения. Таким образом, каждая фирма имеет свой собственный интерфейс «главный менеджер - секретарь», что не мешает, однако, нормально работать генеральным менеджерам между собой. Секретари в свою очередь договорились обмениваться информацией с помощью факсов, реализуя протокол «секретарь - секретарь». В случае, если секретари перейдут на электронную почту, то генеральные менеджеры этого даже и не заметят- главное, чтобы секретари выполняли их распоряжения, т.е. должен безукоризненно работать интерфейс «менеджер - секретарь». С другой стороны, менеджеры могут заключить совершенно новый договор, т.е. изменить «протокол уровня генеральных менеджеров». Передача не старого, а нового договора на уровне секретарей пройдет для этих секретарей абсолютно не замеченной. В рассмотренном примере мы определили два уровня протоколов - уровень генеральных менеджеров и уровень секретарей. Каждый из указанных уровней имеет свой собственный протокол, который может быть изменен независимо от протокола другого уровня. Такую независимость обеспечивает правильное функционирование интерфейсов «менеджер - секретарь». Независимость протоколов каждого уровня друг от друга и взаимодействие самих уровней посредством интерфейсов является важнейшей предпосылкой для создания ряда стандартных протоколов для компьютерных сетей. Лекция 2. Протоколы компьютерных сетей и их взаимодействие 1. Модель OSI В начале 80-х годов двадцатого столетия ряд международных организаций, в их число входила и организация ISO (International Organization of Standardization), разработали стандартную модель сетевого взаимодействия, которую назвали моделью взаимодействия открытых систем (Open System Interconnection). В модели OSI все протоколы сети делятся на семь уровней: физический, канальный, сетевой, транспортный, сеансовый, представительный и прикладной (Рис 1). Рассмотрим принцип взаимодействия двух компьютеров в рамках вышеприведенной модели Взаимодействие компьютеров в сети начинается с того, что приложение (программа пользователя) одного компьютера обращается к прикладному уровню другого компьютера, например, к файловой системе. Приложение первого компьютера формирует с помощью операционной системы сообщение стандартного формата, состоящее из заголовка и поля данных. Заголовок содержит служебную информацию, которую необходимо предать через сеть прикладному уровню другого компьютера, чтобы сообщить ему, какую работу необходимо выполнить. (Например, о размере файла и где он находится). Кроме этого в заголовке имеется информация для следующего нижнего уровня, чтобы он «знал», что делать с этим сообщением. В поле данных находится информация, которую необходимо поместить в найденный файл. Сформировав сообщение, прикладной уровень направляет его вниз представительному уровню. Прочитав заголовок, представительный уровень выполняет требуемые действия над сообщением и добавляет к сообщению собственную служебную информацию - заголовок представительного уровня, в котором содержаться указания для протоколов представительного уровня второго компьютера. Полученное в результате сообщение передается вниз сеансовому уровню, который в свою очередь добавляет свой заголовок и т.д. При достижении сообщением нижнего, физического уровня, у него имеется множество заголовков, добавленных на каждом предыдущем уровне (сообщение вложено внутрь, как в матрешку). В таком виде оно и передается по сети (Рис2). Второй компьютер принимает его на физическом уровне и последовательно перемещает его вверх с уровня на уровень (Рис.3). Каждый уровень анализирует и обрабатывает заголовок своего уровня, выполняя соответствующие этому уровню функции, а затем удаляет этот заголовок и передает сообщение дальше вышележащему уровню. Отметим, что сообщение может оканчиваться также некоторой служебной информацией - «концевиком». (Например, дополнительными контрольными разрядами). Как видно из рис 2., информация, передающаяся в линию связи содержит большое количество служебных заголовков, которые по величине могут превосходить даже собственно данные. В результате взаимодействия протоколов всех уровней и их единому стандарту на прикладном уровне второго компьютера получаются данные, переданные первым компьютером. В стандарте OSI для обозначения единиц данных, с которыми имеют дело протоколы различных уровней, используются специальные названия: кадр (frame), пакет (packet), дейтаграмма (datagram), сегмент (segment). Рассмотри подробнее уровни модели OSI. Физический уровень (Physical layer) имеет дело с передачей битов информации по физическим каналам связи. Такими каналами могут быть, например, коаксиальный кабель, витая пара, оптоволоконный кабель. На этом уровне стандартизируются характеристики электрических сигналов, уровни напряжения и тока, тип кодировки информации, скорость передачи сигналов, а также типы разъемов и назначение каждого контакта. Пример стандарта физического уровня: спецификация 10Base- T технологи Ethernet, которая использует витую пару с волновым сопротивлением 100 Ом, разъем RJ45, максимальную длину 100 метров. Канальный уровень (Data Link layer) обеспечивает надежную передачу данных через физический канал. Канальный уровень оперирует блоками данных, называемых кадрами. Основной задачей канального уровня является прием кадра из сети и отправка его в сеть. При выполнении этой задачи канальный уровень осуществляет физическую адресацию передаваемых сообщений, контролирует соблюдение правил использования физического канала, выявляет неисправности, управляет потоками информацию. Следует отметить, что протоколы канального уровня зависят от структуры связей между компьютерами и способов их адресации. Кадр может быть доставлен по сети к другому компьютеру только в том случае, если протокол соответствует той топологии, для которой он был разработан. К таким топологиям относятся указанные выше топологии общая шина, кольцо и звезда. Примерами протоколов канального уровня для локальных сетей являются протоколы Ethernet, Token Ring, FDDI, 100 VG - AnyLAN, для глобальных - PPP, SLIP, LAP-B, LAP- D. Для реализации протоколов канального уровня используется специальное оборудование: концентраторы, мосты, коммутаторы. Сетевой уровень (Network layer) служит для образования единой системы, объединяющей несколько сетей, причем эти сети могут быть различной топологии, использовать совершенно различные принципы сообщений между конечными узлами и обладать произвольной структурой. Сети соединяются между собой специальными устройствами, называемыми маршрутизаторами. Маршрутизатор - это устройство, которое собирает данные о топологии межсетевых соединений и на ее основании пересылает пакеты информации из одной сети в другую. Последовательность маршрутизаторов, через которые проходит пакет, называется маршрутом, а выбор маршрута называется маршрутизацией. Маршрутизация является главной задачей сетевого уровня. На сетевом уровне действуют три протокола: сетевой протокол - для определения правил передачи пакетов от конечных узлов к маршрутизаторам и между маршрутизаторами; протокол маршрутизации- для сбора информации о топологии сети; протокол разрешения адресов- для отображения адреса узла, используемого на сетевом уровне в локальный адрес сети.(ARP -адрес). Примерами протоколов сетевого уровня являются протокол межсетевого взаимодействия IP стека TCP/ IP и протокол межсетевого обмена пакетами IPX стека Novell. Транспортный уровень (Transport layer) предназначен для оптимизации передачи данных от отправителя к получателю с той степенью надежности, которая требуется. Основная задача транспортного уровня- это обнаружение и исправление ошибок в сообщениях, пришедших с описанных выше уровней. Начиная с транспортного уровня, все дальнейшие протоколы реализуются программным обеспечением компьютера, включаемого обычно в состав сетевой операционной системы. Примерами транспортных протоколов являются протоколы TCP стека TCP/ IP и протокол SPX Novell. Сеансовый уровень (Session layer) управляет диалогом между двумя компьютерами. На этом уровне устанавливаются правила начала и завершения взаимодействия. На сеансовом уровне определяется, какая из сторон является активной в данный момент, а какая принимает данные. Представительный уровень (Presentation layer) выполняет преобразование данных между устройствами с различными форматами данных, не меняя при этом содержания. Благодаря этому уровню информация, передаваемая прикладным уровнем одного компьютера всегда понятна прикладному уровню другого компьютера. На этом уровне, как правило, происходит шифрование и дешифрование данных, благодаря которому обеспечивается секретность предаваемого сообщения. Прикладной уровень (Application layer) является пользовательским интерфейсом для работы с сетью. Этот уровень непосредственно взаимодействует с пользовательскими прикладными программами, предоставляя им доступ в сеть. С помощью протоколов этого уровня пользователи сети получают доступ к разделяемым ресурсам, таким как файлы, принтеры, гипертекстовые Web - страницы, электронная почта и т.д. Необходимо отметить, что три нижних уровня модели OSI - физический, канальный и сетевой- зависят от сети, т.е. их протоколы тесно связаны с технической реализацией сети и с используемым коммутационным оборудованием. Три верхних уровня- сеансовый, представления и прикладной - ориентированы на программное обеспечение и мало зависят от особенностей построения сети (топологии, оборудования и т.д.). Транспортный уровень является промежуточным. Он скрывает детали функционирования нижних уровней от верхних уровней. Благодаря этому уровню можно разрабатывать приложения, не зависящие от технических средств транспортировки сообщений. Модель OSI является так называемой открытой системой, т.е. она имеет опубликованные, общедоступные спецификации и стандарты, принятые в результате достижения согласия многих разработчиков и пользователей после всестороннего обсуждения. Эта модель доступна всем разработчикам и для ее использования не требуется получения специальных лицензий. Если две сети построены с соблюдением правил открытости то у них есть возможность использования аппаратных и программных средств разных производителей, придерживающихся одного и того же стандарта, такие сети легко сопрягаются друг с другом, просты в освоении и обслуживании. Ярким примером открытой системы является глобальная компьютерная сеть Интернет. Эта сеть развивалась в полном соответствии с требованиями, предъявляемыми к открытым системам. В разработке стандартов Интернет принимали и принимают участие тысячи специалистов и пользователей этой сети из различных университетов, научных организаций и фирм- производителей вычислительной аппаратуры и программного обеспечения из разных стран. Само название стандартов, определяющих работу Интернет - Request For Comments - переводится как «запрос на комментарии», т.е. для введения новых стандартов в этой сети проводится открытый опрос мнений пользователей и только затем вносятся изменения. В результате сеть Интернет сумела объединить в себе самое разнообразное оборудование и программное обеспечение огромного числа сетей, разбросанных по всему миру. 2. Методы коммутации в компьютерных сетях В любой компьютерной сети необходимо обеспечить доступность имеющихся физических каналов связи одновременно нескольким компьютерам. Предоставление физических каналов во время сеансов связи между компьютерами в сети называется коммутацией. Существуют три различные схемы коммутации в сетях: коммутация каналов, коммутация пакетов и коммутация сообщений. Сети с коммутацией каналов исторически появились первыми в виде первых телефонных сетей. Коммутация каналов подразумевает образование составного канала из последовательно соединенных отдельных канальных участков для прямой передачи данных между узлами сети. В сети с коммутацией каналов перед передачей данных всегда необходимо выполнить процедуру установления соединения. Например, узел 1 требует установления связи с узлом 5 (Рис.4). Соединясь с узлом 2 узел 1 указывает адрес назначения 5. Узел 2 по своей адресной таблице выбирает маршрут, соединяясь с узлом 3 и т.д. До тех пор пока не будет найден требуемый узел, все предыдущие соединения сохраняются. При установлении связи между узлом 1 и узлом 5 происходит передача сообщений. Указанные сети обладают высокой надежностью, минимальными затратами на маршрутизацию. К недостаткам можно отнести невозможность объединения в один канал узлов работающих с разной скоростью передачи данных, что вызывает пульсацию скорости передачи данных Коммутация пакетов - эта схема была специально разработана для компьютерных сетей, где различные компьютеры сети могут иметь различное быстродействие. При коммутации пакетов все передаваемые сообщения разбиваются передающим компьютером на небольшие части (от 46 до 1500 байт), называемые пакетами. Каждый пакет снабжается заголовком, в котором указывается адресная информация, необходимая для доставки пакета к принимающему компьютеру, а также номер пакета, используемый для «сборки» сообщения на принимающем компьютере. Пакеты транспортируются в сети как независимые информационные блоки. Специальные устройства сети коммутаторы принимают пакеты от передающих компьютеров и на основании адресной информации передают их друг другу до конечного принимающего компьютера. За счет буферизации (задержки) пакета во внутренней памяти коммутатора (если требуемый участок сети занят передачей другой информации) выравнивается скорость передачи данных в сети в целом и повышается пропускная способность сети. Под коммутацией сообщений понимается передача единого блока данных через промежуточные транзитные компьютеры с временной буферизацией этого блока на диске каждого компьютера. Сообщение хранится в транзитном компьютере на диске, причем время хранения может быть достаточно большим. По такой схеме обычно передаются сообщения, не требующие немедленного ответа, чаще всего сообщения электронной почты. Режим коммутации сообщений разгружает сеть для передачи сообщений, требующих быстрого ответа, например, службы WWW сети Интернет. Техника коммутации сообщений появилась в компьютерных сетях раньше техники коммутации пакетов, но потом была вытеснена последней, как более эффективной с точки зрения пропускной способности сети. Сегодня коммутация сообщений работает как служба прикладного уровня только для некоторых не оперативных служб. Лекция 3. Базовые технологии канального уровня (часть 1) 1. Технология Ethernet Ethernet - это самый распространенный на сегодняшний день стандарт локальных сетей, реализуемый на канальном уровне модели OSI. Общее количество работающих по протоколу Ethernet сетей оценивается в 5 миллионов, а количество компьютеров с установленными адаптерами Ethernet - более чем в 50 миллионов. Ethernet - это сетевой стандарт, разработанный фирмой Xerox в 1975 году и принятый комитетом IEEE (Institute of Electrical and Electronics Engineers). Указанный стандарт использует метод разделения среды - метод CSMA/ CD (carrier- sense - multiply- acces with collision detection)- метод коллективного доступа с опознаванием несущей и обнаружением коллизий. Этот метод используется исключительно в сетях с топологией “общая шина”. Все компьютеры в такой топологии имеют доступ к общей шине, все компьютеры имеют возможность немедленно получить данные, которые любой из компьютеров начал передавать на общую шину. Простота подключения предопределяет успех технологии Ethernet. Базовый cтандарт Ethernet предписывает передачу двоичной информации для всех вариантов физической среды со скоростью 10 Мбит/с. Принцип работы Ethernet следующий. Чтобы получить возможность передавать кадр компьютер должен убедиться, канал связи (среда) свободен. Это достигается прослушиванием основной гармоники сигнала, которая также называется несущей частотой (carrier- sense, CS). Признаком незанятости канала является отсутствие на ней несущей частоты (5 - 10 МГц). Если среда свободна, то компьютер начинает передавать кадр. Если в это время другой компьютер пробует начать передачу, но обнаруживает, что канал занят, он вынужден ждать, пока первый компьютер не прекратить передачу кадра. После окончания передачи кадра все компьютеры вынуждены выдержать технологическую паузу в 9,6 мкс. Такая пауза необходима для приведения сетевых адаптеров в исходное состояние. Механизм прослушивания среды не гарантирует от возникновения такой ситуации, когда два или более компьютеров одновременно решают, что среда свободна и начинают передачу своих кадров. В этом случае возникает коллизия, так как оба кадры сталкиваются на общем кабеле и происходит искажение информации. (Рис 1). Для возникновения коллизии не обязательно, чтобы несколько компьютеров начали передачу абсолютно одновременно, такая ситуация маловероятно. Гораздо вероятней, что коллизия возникает из-за того, что один компьютер начинает передачу кадра раньше другого, но до второго компьютера сигнал первого просто не успевает дойти, когда он решает начать передачу. Другими словами, коллизии- это следствия распределенного характера сети. Чтобы отработать коллизию все компьютеры одновременно наблюдают за сигналами на кабеле. Если передаваемые и наблюдаемые сигналы отличаются, то фиксируется коллизия. Для увеличения вероятности скорейшего обнаружения коллизии всеми компьютерами сети тот компьютер, который обнаружил коллизию прерывает передачу своего кадра и усиливает коллизию передачей в сеть специальной последовательности (4 байта), называемой jam- последовательностью. Прекративший передачу компьютер должен сделать паузу в течение короткого случайного интервала времени, а затем снова предпринять попытку захвата канала и передачи кадра. Случайная пауза выбирается следующим образом: Пауза = L x (интервал отсрочки) (1) Интервал отсрочки равен 512 bt - битовым интервалам. В технологии Ethernet битовым интервалом называется интервал времени между появлением двух последовательных бит данных на кабеле. Для скорости канала 10 Мбит/ с величина битового интервала равна 0,1 мкс. L - представляет собой целое число, выбранное с равной вероятностью из диапазона 0, 2 N , где N- номер повторной попытки передачи данного кадра 1,2 ..10. После 10- й попытки интервал остается постоянным. Таким образом случайная пауза может быть от 0 до (1024 х 51,2 = 52428 мкс= 52,4 мс). Если 16 последовательных попыток передачи кадра вызывают коллизию, то передающий компьютер должен прекратить попытки и отбросить кадр. Из вышеописанного видно, что технология передачи Ethernet носит вероятностный характер и вероятность успешного получения в свое распоряжение общего канала зависит от загруженности сети, то есть от интенсивности возникновения компьютеров в передаче кадров. Для надежного распознавания коллизий должно выполняться соотношение T min PDV (2) где Tmin - время передачи кадра минимальной длины , PDV - время за которое сигнал коллизии успевает распространиться до самого дальнего компьютера сети. Так как в худшем случае сигнал должен пройти дважды между наиболее удаленными друг от друга компьютерами сети (в одну сторону проходит неискаженный сигнал, а на обратном пути распространяется уже искаженный сигнал), то это время называется временем двойного оборота (Path Delay Value). При выполнении этого условия передающий компьютер должен успевать обнаружить коллизию, которую вызвал переданный им кадр, еще как он закончить передачу этого кадра. Выполнение условия (2) зависит, с одной стороны, от длины минимального кадра и пропускной способности сети, а с другой стороны, от длины кабельной системы сети и скорости распространения сигнала в кабеле (зависит от типа кабеля). В стандарте Ethernet минимальная длина кадра вместе со служебной информацией установлена в размере 64 байта (46 байт данные + 18 байт служебная информация). Кроме этого в кадр входит 8 байт преамбулы для синхронизации адаптеров. Общая длина кадра составляет 8+64 = 72 байта или 72 х 8 = 576 бит. В стандартном 10 - мегабитном Ethernet время передачи кадра равно 576 х 0, 1 мкс = 57, 5 мкс. Межкадровый интервал устанавливается стандартом в размере 9, 6 мкс. В результате получаем, что период следования кадров минимальной длины составляет 57,5 + 9,6 = 67,1 мкс. (Рис 2.) Отсюда максимальная пропускная способность стандарта Ethernet составляет 1/ 67,1 мкс= 14880 кадр/с. Кадр максимальной длины в стандарте Ethernet составляет 1526 байт или 12208 бит. Максимальная пропускная способность Ethernet при работе с кадрами максимальной длины составляет 813 кадр/ с. Под полезной пропускной способностью протокола понимается принимается скорость передачи полезной информации. Для кадров минимальной длины полезная пропускная способность равна С= 14880 х 46 х 8 = 5, 48 Мбит/с (3) что меньше 10 Мбит/ с. Для кадров максимальной длины полезная пропускная способность: С = 813 х 1526 х 8 = 9, 93 Мбит/с (4) Таким образом передача кадров максимальной длины лучше всего обеспечивает стандарт Ethernet 10 Мбит/с. Для соединения компьютеров между собой используются следующие стандартные физические линии связи: 10 Base- 5 - коаксиальный кабель диаметром 2,17 мм, называемый «толстым» коаксиалом 10 Base- 2 - коаксиальный кабель диаметром 0,89 мм называемый «тонким» коаксиалом 10Base -T - неэкранированная витая пара
Страницы: 1, 2, 3, 4, 5, 6
|
|