Компьютерные сети. Принц, техн, прот 1-303. Книга переведена на английский, испанский, китайский и португальский языки
Скачать 5.49 Mb.
|
коммутацию интерфейсов. Устройство, функциональным назначением которого является коммутация, называется коммутатором. На рис. 2.14 показан коммутатор, который переключает информационные потоки между четырьмя своими интерфейсами. Интерфейс коммутатора (называемый также портом) является физическим модулем, состоящим из приемника и передатчика. В том случае, когда передатчик и приемник работают на дуплексный канал связи, они работают независимо друг от друга, обеспечивая одновременную передачу данных в обоих направлениях. Иногда приемную часть интерфейса называют входным интерфейсом, а выходную часть – выходным интерфейсом. Прежде чем выполнить коммутацию, коммутатор должен распознать поток. Для этого в поступивших данных коммутатор пытается найти признак какого-либо из потоков, заданных в его таблице коммутации. Если произошло совпадение, то эти данные направляются на интерфейс, определенный для них в маршруте. Коммутатором может быть как специализированное устройство, так и универсальный компьютер со встроенным программным механизмом коммутации, в этом случае коммутатор называется программным. Компьютер может совмещать функции коммутации данных с выполнением своих обычных функций как конечного узла. Однако во многих случаях более рациональным является решение, в соответствии с которым некоторые узлы в сети выделяются специально для коммутации. Эти узлы образуют коммутационную сеть, к которой подключаются все остальные. На рис. 2.15 показана коммутационная сеть, образованная из узлов 1, 5, 6 и 8, к которой подключаются конечные узлы 2, 3, 4, 7, 9 и 10. О ТЕРМИНАХ Термины «коммутация», «таблица коммутации» и «коммутатор» в телекоммуникационных сетях могут трактоваться неоднозначно. Мы уже определили коммутацию как процесс соединения абонентов сети через транзитные узлы. Этим же термином мы обозначаем и соединение интерфейсов в пределах отдельного транзитного узла. Коммутатором в широком смысле называется устройство любого типа, способное выполнять операции переключения потока данных с одного интерфейса на другой. Операция коммутации может выполняться в соответствии с различными правилами и алгоритмами. Некоторые способы коммутации и соответствующие им таблицы и устройства получили специальные названия. Например, в технологии IP для обозначения аналогичных понятий используются термины «маршрутизация», «таблица маршрутизации», «маршрутизатор». В то же время за другими специальными типами коммутации и соответствующими устройствами закрепились те же самые названия «коммутация», «таблица коммутации» и «коммутатор», применяемые в узком смысле, например, как коммутация и коммутатор в локальной сети Ethernet. Для телефонных сетей, которые появились намного раньше компьютерных, также характерна аналогичная терминология, «коммутатор» является здесь синонимом «телефонной станции». Мультиплексирование и демультиплексирование Чтобы определить, на какой интерфейс следует передать поступившие данные, коммутатор должен выяснить, к какому потоку они относятся. Эта задача должна решаться независимо от того, поступает на вход коммутатора только один «чистый» поток или «смешанный» поток, являющийся результатом агрегирования нескольких потоков. В последнем случае к задаче распознавания потоков добавляется задача демультиплексирования. Демультиплексирование – разделение суммарного потока на несколько составляющих его потоков. Как правило, операцию коммутации сопровождает также обратная операция мультиплексирования. Мультиплексирование (агрегирование) – образование из нескольких отдельных потоков общего агрегированного потока, который передается по одному физическому каналу связи. Другими словами, мультиплексирование – это способ разделения одного имеющегося физического канала между несколькими одновременно протекающими сеансами связи абонентов сети. Операции мультиплексирования/демультиплексирования имеют такое же важное значение в любой сети, как и операции коммутации, потому что без них пришлось бы для каждого потока предусматривать отдельный канал, что привело бы к большому количеству параллельных связей в сети и свело бы на нет все преимущества неполносвязной сети. На рис. 2.16 показан фрагмент сети, состоящий из трех коммутаторов. Коммутатор 1 имеет четыре сетевых интерфейса. На интерфейс 1 поступают данные с двух интерфейсов – 3 и 4. Их надо передать в общий физический канал, то есть выполнить операцию мультиплексирования. Одним из основных способов мультиплексирования потоков является разделение времени. При этом способе каждый поток время от времени (с фиксированным или случайным периодом) получает физический канал в полное свое распоряжение и передает по нему свои данные. Распространено также частотное разделение канала, когда каждый поток передает данные в выделенном ему частотном диапазоне. Технология мультиплексирования должна позволять получателю такого суммарного потока выполнять обратную операцию – разделение (демультиплексирование) данных на слагаемые потоки. На интерфейсе 3 коммутатор выполняет демультиплексирование потока на три составляющих его подпотока. Один из них он передает на интерфейс 1, другой – на интерфейс 2, третий – на интерфейс 4. Вообще говоря, на одном интерфейсе могут одновременно выполняться обе функции - мультиплексирование и демультиплексирование. Частный случай коммутатора, у которого все входящие информационные потоки коммутируются на один выходной интерфейс, где они мультиплексируются в один агрегированный поток, называется мультиплексором. Коммутатор, который имеет один входной интерфейс и несколько выходных, называется демультиплексором (рис. 2.17). Разделяемая среда передачи данных Во всех рассмотренных примерах мультиплексирования потоков к каждой линии связи подключались только два интерфейса. В том случае, когда линия связи является дуплексным каналом связи, как это показано на рис. 2.18, каждый из интерфейсов монопольно использует канал связи в направлении «от себя». Это объясняется тем, что дуплексный канал состоит из двух независимых сред передачи данных (подканалов), и так как только передатчик интерфейса является активным устройством, а приемник пассивно ожидает поступления сигналов от приемника, то и конкуренции подканалов не возникает. Такой режим использования среды передачи данных является в настоящее время основным в компьютерных локальных и глобальных сетях. Коммутатор S1 Коммутатор S2 Рис. 2.18. Дуплексный канал – разделяемая среда отсутствует Однако если в глобальных сетях такой режим использовался всегда, то в локальных сетях до середины 90-х годов преобладал другой режим, основанный на разделяемой среде передачи данных. Разделяемой средой (shared medium) называется физическая среда передачи данных, к которой непосредственно подключено несколько передатчиков узлов сети. Причем в каждый момент времени только один из передатчиков какого-либо узла сети получает доступ к разделяемой среде и использует ее для передачи данных приемнику другого узла, подключенному к этой же среде. В наиболее простом случае эффект разделения среды возникает при соединении двух интерфейсов с помощью полудуплексного канала связи, то есть такого канала, который может передавать данные в любом направлении, но только попеременно (рис. 2.19). В этом случае к одной и той же среде передачи данных (например, к коаксиальному кабелю или общей радиосредс) подключены два приемника двух независимых узлов сети. При подобном применении среды передачи данных возникает новая задача совместного использования среды независимыми передатчиками таким образом, чтобы в каждый отдельный момент времени по среде передавались данные только одного передатчика. Другими словами, возникает необходимость в механизме синхронизации доступа интерфейсов к разделяемой среде. Обобщением разделяемой среды является случай, показанный на рис. 2.20, когда к каналу связи подключаются более двух интерфейсов (в приведенным примере – три), при этом применяется топология общей шины. Существуют различные способы решения задачи организации совместного доступа к разделяемым линиям связи. Одни из них подразумевают централизованный подход, когда доступом к каналу управляет специальное устройство – арбитр, другие – децентрализованный. Если мы обратимся к организации работы компьютера, то увидим, что доступ к системной шине компьютера, которую совместно используют внутренние блоки компьютера, управляется централизованно – либо процессором, либо специальным арбитром шины. В сетях организация совместного доступа к линиям связи имеет свою специфику из-за существенно большего времени распространения сигналов по линиям связи. Здесь процедуры согласования доступа к линии связи могут занимать слишком большой промежуток времени и приводить к значительным потерям производительности сети. Именно по этой причине механизм разделения среды в глобальных сетях практически не используется. На первый взгляд может показаться, что механизм разделения среды очень похож на механизм мультиплексирования потоков – поскольку и в том и в другом случаях по линии связи передается несколько потоков данных. Однако здесь есть принципиальное различие, касающееся того, как контролируется (управляется) линия связи. При мультиплексировании дуплексная линия связи в каждом направлении находится под полным контролем одного коммутатора, который решает, какие потоки разделяют общий канал связи. Для локальных сетей разделяемая среда сравнительно долго была основным механизмом использования каналов связи, который применялся во всех технологиях локальных сетей – Ethernet, Token Ring, FDDI. При этом в технологиях локальных сетей применялись децентрализованные методы доступа к среде, не требующие наличия арбитра в сети. Популярность техники разделения среды в локальных сетях объяснялась простотой и экономичностью аппаратных решений. Например, для создания сети Ethernet на коаксиальном кабеле никакого другого сетевого оборудования, кроме сетевых адаптеров компьютеров и самого кабеля, не требуется. Наращивание количества компьютеров в локальной сети Ethernet на коаксиальном кабеле также выполняется достаточно просто – путем присоединения нового отрезка кабеля к существующему. Сегодня в проводных локальных сетях метод разделения среды практически перестал применяться. Основной причиной отказа от разделяемой среды явилась ее низкая и плохо предсказуемая производительность, а также плохая масштабируемостьVIII. Низкая производительность объясняется тем, что пропускная способность канала связи делится между всеми компьютерами сети. Например, если локальная сеть Ethernet состоит из 100 компьютеров, а для их связи используются коаксиальный кабель и сетевые адаптеры, работающие на скорости 10 Мбит/с, то в среднем на каждый компьютер приходится только 0,1 Мбит/с пропускной способности. Более точно оценить долю пропускной способности, приходящуюся на какой-либо компьютер сети, трудно, так как эта величина зависит от многих случайных факторов – например, активности других компьютеров. Наверное, к этому моменту читателю уже понятна причина плохой масштабируемости подобной сети – чем больше мы добавляем компьютеров, тем меньшая доля пропускной способности достается каждому компьютеру сети. Описанные недостатки являются следствием самого принципа разделения среды, поэтому преодолеть их полностью невозможно. Появление в начале 90-х недорогих коммутаторов локальных сетей привело к настоящей революции в этой области, и постепенно коммутаторы вытеснили разделяемую среду полностью. Сегодня механизм разделения среды используется только в беспроводных локальных сетях, где среда – радиоэфир – естественным образом соединяет все конечные узлы, находящиеся в зоне распространения сигнала. Пример-аналогия Рассмотренная выше обобщенная задача коммутации является достаточно абстрактной моделью любой сетевой технологии. Поясним эту модель на примере работы традиционной почтовой службы. Почта тоже работает с информационными потоками, которые в данном случае составляют почтовые отправления. Основным признаком почтового потока является адрес получателя. Для упрощения будем рассматривать в качестве адреса только страну, например, Индия, Норвегия, Россия, Бразилия и т. д. Дополнительным признаком потока может служить особое требование к надежности или скорости доставки. Например, пометка «Avia» на почтовых отправлениях в Бразилию выделит из общего потока почты в Бразилию подпоток, который будет доставляться самолетом. Для каждого потока почтовая служба должна определить маршрут, который будет проходить через последовательность почтовых отделений, являющихся аналогами коммутаторов. В результате многолетней работы почтовой службы уже определены маршруты для большинства адресов назначения. Иногда возникают новые маршруты, связанные с появлением новых возможностей – политических, транспортных, экономических. После выбора нового маршрута нужно оповестить о нем сеть почтовых отделений. Как видно, эти действия очень напоминают работу телекоммуникационной сети. Информация о выбранных маршрутах следования почты представлена в каждом почтовом отделении в виде таблицы, в которой задано соответствие между страной назначения и следующим почтовым отделением. Например, в почтовом отделении города Саратова все письма, адресованные в Индию, направляются в почтовое отделение Ашхабада, а письма, адресованные в Норвегию, – в почтовое отделение Санкт-Петербурга. Такая таблица направлений доставки почты является прямой аналогией таблицы коммутации коммуникационной сети. Каждое почтовое отделение работает подобно коммутатору. Все поступающие от абонентов и других почтовых отделений почтовые отправления сортируются, то есть происходит распознавание потоков. После этого почтовые отправления, принадлежащие одному «потоку», упаковываются в мешок, для которого в соответствии с таблицей направлений определяется следующее по маршруту почтовое отделение. ГЛАВА 3 Коммутация каналов и пакетов Среди множества возможных подходов к решению задачи коммутации абонентов в сетях выделяют два основополагающих, к которым относят коммутацию каналов и коммутацию пакетов. Каждый из этих двух подходов имеет свои достоинства и недостатки. При коммутации пакетов, например, учитываются особенности компьютерного трафика, поэтому данный способ коммутации является более эффективным для компьютерных сетей по сравнению с традиционным методом коммутации каналов, применяющимся в телефонных сетях. Коммутация пакетов пытается вытеснить коммутацию каналов из традиционных для нее областей, например из телефонии (в форме интернет- или IP-телефонии), но этот спор пока не решен, и скорее всего, две техники коммутации будут сосуществовать еще долгое время, дополняя друг друга. Коммутация каналов Исторически коммутация каналов появилась намного раньше коммутации пакетов и ведет свое происхождение от первых телефонных сетей. Сети, построенные по принципу коммутации каналов, имеют богатую историю, они и сегодня находят широкое применение в мире телекоммуникаций, являясь основой первичных сетей, позволяющих создавать высокоскоростные магистральные каналы связи. Первые сеансы связи между компьютерами были осуществлены через телефонную сеть, то есть также с применением техники коммутации каналов, а пользователи, которые получают доступ в Интернет по модему, продолжают обслуживаться этими сетями, так как их данные доходят до оборудования провайдера по местной телефонной сети. Сеть с коммутацией каналов представляет собой множество |