Опубликован: 07.08.2007 | Уровень: специалист | Доступ: платный | ВУЗ: Московский физико-технический институт
Лекция 10:

Введение в сети передачи данных

< Лекция 9 || Лекция 10: 12345 || Лекция 11 >
Аннотация: Сетевые топологии, методы доступа к сети, принципы построения сетевых программных интерфейсов. Алгоритмы и применения сетей, алгоритм клиент-сервер и P2P. Классификация сетей.
Ключевые слова: транспортная, шина, локальная сеть, SCSI, ARPANET, advanced, project, agency, network, сеть, SDLC, концентраторы, TDM, time division multiplexing, схема доступа, список, супер-ЭВМ, локальные сети, ПО, LAN, Local, area, MAN, metropolitan area network, WAN, Интернет, бит, сигнал прерывания, ESC, алгоритм, поле, ISDN, байт, SDH, связь, обмен данными, IP, адрес, задержка передачи, ATM, коммутация, коммутатор, перегрузка, кадр, кодирование, преобразование данных, память, конвейерная обработка, MTU, значение, BER, деление, шлюз, Ethernet, IEEE, ISO, DIS, Token Ring, FDDI, топология, 802.17, точка-точка, надежность, расстояние, метод доступа, доступ, мультиплексирование, ALOHA, CSMA/CD, FDM, division, multiple access, carrier, sensitive, with, collision, detection, сеанс, домен, механизм синхронизации, CAN, IBM, буфер, прерывание, время доступа, регистрация, контроль, рабочая станция, вероятность, интервал, цикла, вариация, controller area network, collision avoidance, запись, операции, быстродействие, Эффективность канала, выражение, дерево, поиск, Arcnet, 10BASE5, 10BASE2, 100BASE-TX, UTP, 100BASE-FX, 10GE, таблица, полоса пропускания, длина, CSMA/CA, wavelength, диапазон, WDMA, поток, UDP, запрос, connection request, FTP, Data, slot, время задержки, загрузка, очередь, коммуникационное оборудование, RS-232, физический уровень, операции передачи данных, connection-oriented, connectionless, пользователь, maximum, transfer unit, TCP, stall-on-use, AND, computer communication, new, publishing, вычисление, пропускная способность, механизм семафоров, компонент, transmission, control, идентификатор, приоритет сообщения, TCB, индикатор, прямой, сервер, sequential processing, программирование, программа, устойчивость, опция, ICMP, frame relay, P2P, терминальное устройство, персональная ЭВМ, однородность, DNS, mail, MBONE, PIM, RSVP-TE, мультимедиа, цифровое телевидение, peer-to-peer, ICQ, компьютерные сети, networking, отказоустойчивость, разделение ресурсов, мощность, узел сети, группа, выход, forward, error correction, DESCRIPTION, сохранность данных, Grid, Internet, петабайт, кэширование, поддержка, копирование, распределенное хранилище данных, обмен сообщениями, SUN, сетевой протокол, коррекция, overlay, уникальный идентификатор файла, hash table, direct connection, HDTV, TFRC, MDC, RIAA

Полагаю, что идея компьютерных сетей заимствована из практики использования магистрально-модульных систем, которые служат для передачи данных от различных источников информации в ЭВМ и обратно в режиме реального времени. Такие системы стали активно развиваться с начала 60-х годов прошлого века. Наиболее характерным примером может служить система САМАС, где для передачи данных от или к большому числу объектов использовалась общая аппаратная транспортная среда (шина, как правило, параллельная). Строго говоря, локальная сеть ЭВМ является частным случаем магистрально модульной системы. Другим источником вдохновения могли служить каналы связи ЭВМ с периферийными приборами (например, дисковыми запоминающими устройствами или удаленными терминалами; достаточно вспомнить канал SCSI, который был разработан в том числе и для целей сбора данных). Следует отметить принципиальное различие между такими системами и сетями. В последнем случае данные передаются от ЭВМ к ЭВМ. Важным фактором для развития сетей явилась разработка пакетного принципа передачи данных, который был создан еще до начала Второй мировой войны. Прототипом современных сетей, возможно, явились терминальные сети крупных вычислительных центров.

Первой сетью, где применен пакетный принцип передачи данных, была ARPANET (1969; Advanced Research Project Agency NETwork). Эта сеть имела всего 4 узла. Примерно тогда же стали разрабатываться протоколы последовательной, синхронной (SDLC) и асинхронной ("старт/стоп") передачи данных, интеллектуальные терминалы и канальные концентраторы. В рамках этих работ были разработаны устройства и программы доступа к среде с разделением по времени ( TDMTime Division Multiplexing). Такая схема доступа используется практически во всех многозадачных операционных системах. Все это создало предпосылки для разработки реальных сетей. Целью строительства сетей является эффективное использование ресурсов машин, объединяемых сетью, и повышение надежности системы в целом. Через сеть передаются тексты, сообщения, файлы, изображения, задания, команды, видео- или акустические данные. Попытаемся ответить на вопрос, почему сети получили столь широкое распространение?

Сети делают возможным:

  • доступ к общим ресурсам (быстродействующая печать, диски большой емкости, backup-системы, информационные хранилища, серверы и т.д.);
  • децентрализацию вычислительного процесса, возможность создания распределенных вычислительных систем (системы GRID ), повышение надежности систем за счет резервирования;
  • информационный обмен в издательствах, информационных агентствах, поисковых системах, между обычными людьми, разбросанными по всему миру, в системах сбора и обработки научных, метео- и геофизических данных и т.д.;
  • распределенное управление;
  • всемирные и локальные системы межличностного общения (почта, IСQ, SMS и пр.).

Сети – это системы мультиплексирования доступа к каналам и ресурсам.

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

Сети по своей принадлежности делятся на локальные ( LANLocal Area Network), городские ( MANMetropolitan Area Network), региональные ( WAN – Wide Area Network) и всемирные (Интернет). В настоящее время существует огромное разнообразие сетей. Но есть у них и нечто общее: практически все они базируются на пакетном принципе передачи данных. Пакет представляет собой последовательность нулей и единиц. Нулю и единице (часто их называют логическим нулем и логической единицей ) ставится в соответствие определенный уровень амплитуды или знак перепада. В этой связи во всех сетях приходится решать проблему выделения начала и конца пакетов. Как правило, для этой цели используются уникальные последовательности бит или уникальные коды. При этом возникает проблема, когда подобные сигнатуры встречаются в теле пакета, ведь это может вызвать сбой – система по ошибке может принять такую последовательность за сигнал прерывания обработки пакета. Задача решается с использованием ESC-последовательностей или техники бит-стаффинга. Esc-последовательность представляет собой строку из двух или более символов, первый из которых, как правило, имеет код 27 (десятичный; ESC). Строка имеет такой формат, который не может встретиться в пределах пакета; если же такая последовательность все же встречается, включается алгоритм, обеспечивающий ее преобразование к уникальному виду. Эта последовательность служит для подмены сигнатуры начала или конца пакета, если она встретится в его поле данных. Техника бит-стафинга предполагает добавление в определенных ситуациях нулевого или единичного бита или использование определенных комбинаций сигналов на физическом уровне. Рассмотрим пример сети ISDN, где для выделения начала и конца кадра служит байт 01111110. Если внутри кадра встретится такой байт, то он будет заменен последовательностью 011111010. Приемное устройство преобразует эту последовательность назад в 01111110. Так входная последовательность бит 010011111111111111110010 будет преобразована в

010011111011111011111010010,

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

Эти комбинации решают те же задачи, что и ESC-последовательности, но более экономно.

При передаче данных нужно обеспечивать синхронизацию и стабилизацию уровня регистрации. Синхронизация между передатчиком и приемником необходима прежде всего потому, что не каждому биту в передаваемом коде соответствует изменение уровня сигнала. А это может приводить к тому, что одна из сторон передаст N бит, а другая при этом будет считать, что приняла N-1 или N+1 бит. Синхронизация тактовых частот передатчика и приемника чаще всего осуществляется самой кодовой последовательностью, транспортирующей данные, или независимо, как, например, это делается в сетях SDH.

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

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

В сетях для формирования виртуального канала и транспортировки данных используются схемы с коммутацией каналов и с коммутацией пакетов. Эти схемы представлены на рис. 10.1. В случае коммутации каналов сначала осуществляется формирование связи между инициатором и адресатом и только затем начинается обмен данными (или разговор при телефонном соединении). Канал может реализоваться из медных проводов, оптических волокон или с помощью радио. В качестве параметра при установлении соединения используется код места назначения, например, его телефонный номер или IP-адрес. При наборе первой цифры выбирается номер выхода первого коммутатора, при наборе второй цифры — номер выходного канала второго коммутатора и т.д. Цифры могут группироваться в блоки. Время формирования канала достигает 10 секунд и не зависит от расстояния между клиентами. Зато после сформирования канала характерная задержка передачи данных не превышает 5 мс на 1000 км.

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

Схемы сетей с коммутацией каналов (А) и с коммутацией пакетов (Б)

Рис. 10.1. Схемы сетей с коммутацией каналов (А) и с коммутацией пакетов (Б)

Принцип коммутации каналов применяется системами ISDN, ATM и Х.25. Это не означает, что там ни при каких обстоятельствах не используется коммутация пакетов. Приведенное выше замечание о постоянстве полосы пропускания не исключает, тем не менее, ситуаций перегрузки. Реальные коммутаторы, в отличие от нарисованных, имеют многие сотни и даже тысячи входных/выходных каналов. При поступлении данных по большому числу каналов одновременно коммутатор может не справиться с такой ситуацией. В случае коммутации пакетов один и тот же канал может использоваться большим числом пользователей одновременно. Здесь перегрузка является скорее нормой, чем исключением. В современных системах часто совмещаются методы коммутации каналов и пакетов.

Помимо названных режимов, существует также система коммутации сообщений. Наистарейшим примером такого рода является система передачи телеграмм, где очередная станция получает телеграмму в виде перфоленты, оператор (или специализированный коммутатор) считывает ее адрес и принимает решение о том, по какому из каналов ее следует передать дальше. Такие системы называются "запомнить-и-переадресовать". В современных сетях такой принцип используется при передаче новостей (протокол NNTP — близкий родственник e-mail ). При передаче сообщений не регламентируется их размер, что вынуждает в точках коммутации записывать их на диски. Отсутствие такого рода ограничений приводит к тому, что канал может быть занят достаточно долго. Новое сообщение может быть послано лишь после завершения отправки предыдущего. Все эти проблемы легко разрешаются в системах с коммутацией пакетов, размер которых регламентирован. В этом методе задержка доставки пакета может варьироваться в довольно широких пределах. Более того, может меняться порядок доставляемых пакетов, и кадр, посланный раньше, может быть доставлен позже, — принимающая сторона должна уметь обрабатывать такие события. Пакетный способ транспортировки легко адаптируется к любым форматам, скоростям передачи и алгоритмам формирования и обработки пакетов. Здесь, как правило, исключается возможность монополизации канала каким-либо пользователем, система допускает кодирование или преобразование данных в пакете. Емкость буфера определяется максимальным размером пакета. Для буферизации может использоваться оперативная память маршрутизатора. В данной схеме решение о переадресации может приниматься до того, как пакет будет принят коммутирующим устройством целиком (режим cut-throughкоммутация на пролете).

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

Но даже 155 Мбит/с быстродействия АТМ-коммутаторов не избавляет их от перегрузок. Достаточно попытаться представить, что на вход 1000-канального переключателя пришло одновременно 100 ячеек (а это ординарная ситуация) — здесь могут не спасти даже достаточно большие объемы буферов и изощренные системы конвейерной обработки. Недаром АТМ-коммутаторы так дороги!

Разные участки маршрута могут иметь разные предельные длины пакетов (MTU), и это может требовать фрагментации получаемых пакетов. Значение MTU, как правило, определяется вероятностью ошибки при транспортировке (BER) или предельно допустимым временем занятости канала.

Именно гибкая система фрагментации и дефрагментации пакетов сделало сети Интернет столь универсальными.

Как локальные, так и региональные сети могут отличаться по топологии и методу доступа.

10.1. Сетевые топологии

Среди топологических схем наиболее популярными являются (см. рис. 10.2):

  1. шина;
  2. звезда;
  3. кольцо;
  4. многокаскадные и многосвязные сети.
Примеры сетевых топологий

Рис. 10.2. Примеры сетевых топологий

К первым трем типам топологии относятся 99% всех локальных сетей. Деление сетей на локальные и региональные достаточно условно. Под локальной сетью подразумевается сеть предприятия, конторы, учреждения или кампуса, имеющая, как правило, одного администратора. Такая сеть обычно имеет шлюз, который соединяет ее с региональной сетью. Наиболее популярный тип локальной сети физического уровня — Ethernet — может строиться по схемам 1 и 2 ( рис. 10.2). В нынешнем виде стандарт на сети типа Ethernet был сформулирован сравнительно недавно — в 1985 году (IEEE Std 802.3-1985; ISO DIS 8802/2).

Сети Token Ring и FDDI применяют кольцевую топологию (3 на рис. 10.2), где каждый узел должен иметь два сетевых интерфейса. Эта топология удобна для оптоволоконных каналов, где сигнал может передаваться только в одном направлении (но при наличии двух колец, как в FDDI или 802.17, возможна и двунаправленная передача). Нетрудно видеть, что кольцевая топология строится из последовательности соединений "точка-точка". Именно эта топология используется для построения каналов на базе оптических волокон. В настоящее время разработана технология двунаправленной передачи данных по одному волокну.

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

Вариант А на рис. 10.3 представляет собой схему с полным набором связей (все узлы соединены со всеми), такая схема используется только в случае, когда необходимо обеспечить высокую надежность соединений. Эта версия требует для каждого из узлов наличия N-1 интерфейсов при полном числе узлов N. Вариант Б является примером нерегулярной топологии, а вариант В – иерархический случай связи (древовидная топология).

Различные сетевые топологические схемы

Рис. 10.3. Различные сетевые топологические схемы

Если топологии на рис. 10.3 В чаще применимы для локальных сетей, то топологии на рис. 10.3 А и Б более типичны для региональных и глобальных сетей. Выбор топологии локальной или региональной сети существенно сказывается на ее стоимости и рабочих характеристиках. При этом важным параметром для однородной сети является среднее число шагов между узлами D.

D=\sum_{d=1}^N \frac{dN_d}{N-1},

где Nd – число ЭВМ на расстоянии d ; N – полное число ЭВМ в сети; dрасстояние между ЭВМ. Для сети типа А на рис. 10.3 D = 1. Данная топология гарантирует сохранение связности даже при обрыве любых трех соединений. Она применима при ограниченном числе узлов.

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

Современные вычислительные системы используют и другие топологии (см. рис. 10.4): решетки (А), кубы (В), гипердеревья (Б), гиперкубы и т.д. В некоторых системах топология может программно настраиваться на решаемую задачу.

Некоторые топологии вычислительных систем

Рис. 10.4. Некоторые топологии вычислительных систем
< Лекция 9 || Лекция 10: 12345 || Лекция 11 >
Евгений Виноградов
Евгений Виноградов

Прошел экстерном экзамен по курсу перепордготовки "Информационная безопасность". Хочу получить диплом, но не вижу где оплатить? Ну и соответственно , как с получением бумажного документа?

Илья Сидоркин
Илья Сидоркин

Добрый день! Подскажите пожалуйста как и когда получить диплом, после сдичи и оплаты?????

Иван Бузмаков
Иван Бузмаков
Россия, Сарапул
Никита Сомов
Никита Сомов
Россия, Удмуртская республика