Задержка важнее пропускной способности. Анализ задержек речи и передачи данных по сетям IP и Frame Relay

  • 01.05.2019

Сравним задержки передачи данных в сетях с коммутацией пакетов с задержками в сетях с коммутацией каналов, основываясь на рис. 3.13. Пусть тестовое сообщение, которое нужно передать в обоих видах сетей, составляет 200 000 байт. Отправитель находится от получателя на расстоянии 5000 км. Пропускная способность линий связи составляет 2 Мбит/с. Время передачи данных по сети с коммутацией каналов складывается из времени распространения сигнала, которое для расстояния 5000 км можно оценить примерно в 25 мс, и времени передачи сообщения в канал, которое при пропускной способности 2 Мбит/с и размере сообщения 200 000 байт равно примерно 800 мс, то есть всего передача данных абоненту занимает 825 мс. Оценим дополнительное время, которое требуется для передачи этого сообщения по сети с коммутацией пакетов. Будем считать, что путь от отправителя до получателя пролегает через 10 коммутаторов. Также предположим, что сеть работает в недогруженном режиме и очереди в коммутаторах отсутствуют. Исходное сообщение разбивается на пакеты по 1000 байт, всего 200 пакетов.

Если принять интервал между отправкой пакетов равным 1 мс, тогда время передачи сообщения увеличится на дополнительные 200 мс. Время передачи сообщения в канал также увеличится из-за необходимости передавать заголовки пакетов. Предположим, что доля служебной информации, размещенной в заголовках пакетов, по отношению к общему объему сообщения составляет 10 %. Следовательно, дополнительная задержка, связанная с передачей заголовков пакетов, составляет 10 % от времени передачи исходного сообщения, то есть 80 мс. При прохождении пакетов через каждый коммутатор возникает задержка буферизации пакета.

Эта задержка при величине пакета 1000 байт, заголовке 100 байт и пропускной способности линии 2 Мбит/с составляет 4,4 мс в одном коммутаторе. Плюс задержка коммутации 2 мс. В результате прохождения 10 коммутаторов пакет придет с суммарной задержкой 64 мс, потраченной на буферизацию и коммутацию. В результате дополнительная задержка, созданная сетью с коммутацией пакетов, составляет 344 мс.

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

Что же следует из приведенного примера? Можно ли считать, что сеть с коммутацией каналов более эффективна, чем сеть с коммутацией пакетов? Попробуем ответить на этот вопрос.

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

Circuit switching and packet - it"s methods for solving the generalized problem of switching data in any network technology. Complex technical solutions of the generalized switching tasks in its entirety consists of the particular problems of data transmission networks.

By the special problems of data networks include:

  • define flows and appropriate routes;
  • fixation route configuration parameters, and tables of network devices;
  • recognition flows and data transfer between one device interface;
  • multiplexing / demultiplexing streams;
  • separation medium.

Among the many possible approaches to the solution of the generalized problem of subscribers switching networks allocate two basic, which include channel switching and packet switching. Thus there are traditional applications of each switching techniques, for example, telephone networks continue to be built and constructed using circuit switched technology, computer networks and the vast majority are based on packet switching technique.

Therefore, as information flow in circuit-switched networks are the data exchanged between a pair of subscribers. Accordingly, the global flow feature is a pair of addresses (telephone numbers) subscribers communicate with each other. One feature of circuit-switched networks is the concept of an elementary channel.

Elementary channel

Elemental channel (or channel) - is a basic technical characteristics of the circuit switched network, which is fixed within a given type of network throughput value. Every link in the circuit switched network has a capacity of a multiple channel elementary adopted for this type of network.

In traditional telephone systems the value of the elementary channel speed is equal to 64 kbit / s, which is sufficient for high-quality digital voice.

For high-quality voice uses the frequency of sound vibrations amplitude quantization 8000 Hz (sampling time 125 ms intervals). To represent a measure of the amplitude is most often used 8-bit code, which makes 256 tone gradation (by sampling values).

In this case, the transmission of one voice channel is needed bandwidth 64 kbit / s:

8000 x 8 = 64000 bits / s or 64 kbit / s.

Such a voice channel is called an elementary channel digital telephone networks. A feature of the circuit switched network is that the bandwidth of each link must be equal to an integer number of elementary channels.

The composite channel

Communication constructed by switching (connection) of elementary channels, called a composite channel.

Составной канал

The properties of the composite channel:

  • composite channel throughout its length is made up of the same number of elementary channels;
  • composite channel has a constant and fixed bandwidth throughout its length;
  • composite channel is created temporarily for the period of the session two subscribers;
  • at the session, all the basic channels that are included in the composite channel, enter the exclusive use of subscribers, for which the composite channel has been created;
  • during the communication session in the subscribers can send network data rate not exceeding a channel capacity of the composite;
  • data received in a composite channel, the called subscriber is guaranteed to be delivered without delay, losses, and at the same rate (source rate) regardless of whether there is at this time in the other network connection or not;
  • after the end of the session the basic channels that were included with the corresponding composite channel, declared free and returned to the pool of resources allocated for use by other users.

Connection refused

Connection refused

Connection requests are not always successful.

If the path between the calling and called subscribers are no free channels or called basic node is busy, the malfunction occurs in the connection setup.

The advantage of circuit switching

Circuit switching technology is aimed at minimizing the accidental events in the network, ie a technology. In order to avoid any possible uncertainty much of the work on information exchange is carried out in advance, even before the start the data transfer. First, for a given address, the availability of the required basic channels all the way from the sender to the recipient. But in the case of bursty, this approach is inefficient, since 80% of the time channel may be idle.

Packet Switching

The most important principle of the networks with a packet switched data submission is transmitted over the network in the form of structurally separated from each other pieces of data called packets. Each packet has a header, which contains the destination address, and other supporting information (length of the data field, a checksum, and others.), Used for the delivery to the addressee of the package.

Having address in each packet is one of the most important features of packet switching technology, since each packet can be processed independently of the other switch packets constituting the network traffic. In addition to the title in the package may have one additional field to be placed at the end of the package and so-called trailer. In the trailer is usually placed checksum, which allows you to check whether the information has been corrupted during transmission over the network or not.

Partitioning the data into packets

Partitioning the data into packets takes place in several stages. Chain sender node generates transmission data, which is divided into equal parts. After that occurs the formation of a package by adding the header overhead. And the last stage is assembled packets into the original message to the destination node.

Partitioning the data into packets

Transferring data over a network as a packet

Packet Transmission Network

As in the circuit switched networks, packet switched networks, for each of the streams is determined manually or automatically route fixed in the stored tables for commutation switches. Packets entering the switch are processed and sent on a particular route

Uncertainty and asynchronous movement of data in packet-switched networks makes special demands on the switches in such networks.

The main difference between a packet switch of the switches in the circuit-switched networks is that they have an internal buffer memory for temporarily storing packets. Switch buffers need to harmonize data rates in communication links connected to its interfaces, as well as to harmonize the rate of arrival packets with their switching speed.

Methods of transfer packages

A switch can operate on the basis of one of three methods promote packages:

  • datagram transmission;
  • Transfer to the establishment of a logical connection;
  • Transfer to the establishment of a virtual channel.

Datagram transmission

Datagram transfer method based on the promotion of packet independent from each other. packet processing procedure is only determined by the values of parameters that it carries, and the current state of the network. And every single packet network is considered as a completely independent unit transfer - datagram.

Illustration datagram packet principle

Transfer to the establishment of a logical connection

Transfer to the establishment of a logical connection

Procedure for harmonization of the two end nodes of a network of some parameters of packet exchange process is called the establishment of a logical connection. Options negotiated by the two interacting nodes, called a logical connection parameters.

Virtual channel

Virtual channel

The only pre-padded fixed route connecting end nodes to the packet-switched network, referred to as a virtual channel (virtual circuit or virtual channel). Virtual channels are laid for sustainable information flow. In order to isolate the data flow of the total traffic flow of each packet is marked with a special kind of sign - label. As with the establishment of a logical network connections, the virtual channel begins with a gasket from the source node a special package - the connection request.

Table switching networks using virtual channels is different from the switching table in datagram networks. It contains entries only passing through the switch virtual channels, and not all the possible destination address, as is the case in networks with datagram algorithm transfer.

Comparison circuit-switched and packet

Switching channels Packet Switching
You must first establish a connection No stage of establishing a connection (datagram method)
Location is only required when establishing a connection Address and other service information are transmitted with each packet
The network may refuse a connection to the subscriber The network is always ready to receive data from subscriber
Guaranteed bandwidth (bandwidth) for interacting subscribers Network bandwidth for users is unknown, transmission delays are random
Real-time traffic is transferred without delay Network resources are used effectively when transmitting bursty traffic
High transmission reliability Possible data loss due to buffer overflow
Irrational use of channel capacity, reducing the overall efficiency of the network Automatic dynamic bandwidth allocation of a physical channel between subscribers

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

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


/ фото Thomas Williams

Задержка и ее влияние на качество связи

В сетях, основанных на пакетном обмене, связь между задержкой и пропускной способностью неоднозначна и сложна в определении. При этом время ожидания складывается из следующих компонентов:
  • Задержка сериализации – время, необходимое порту для передачи пакета
  • Задержка распространения – время, требуемое биту информации для достижения приёмника (обусловливается законами физики)
  • Задержка при перегрузке – время, которое кадр проводит в выходной очереди элемента сети
  • Задержка передачи – время, которое сетевой элемент тратит на анализ, обработку и передачу пакета

Управление трафиком

Специалисты компании Ashton, Metzler & Associates определяют термин «управление трафиком» как возможность сети обрабатывать разные виды трафика с разным приоритетом.

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

Для управления трафиком и качеством связи в сети организации инженеры рекомендуют:

  • Настроить сеть так, чтобы можно было проводить мониторинг и классификацию трафика
  • Анализировать трафик в сети для понимания закономерностей работы важных приложений
  • Внедрить подходящее разделение на уровни доступа
  • Вести наблюдение и отчетность, чтобы активно управлять изменяющимися схемами распределения трафика
Наиболее эффективный способ управления трафиком, по мнению специалистов Viavi Solutions, - иерархический контроль качества связи (H-QoS), являющийся комбинацией сетевых политик, фильтрации и управления пропускной способностью трафика. H-QoS не будет снижать скорость работы, если все элементы сети обеспечат ультранизкую задержку и высокую производительность. Главное достоинство H-QoS - сокращение времени ожидания без необходимости увеличения пропускной способности канала.

Использование NID

Устройства сетевого интерфейса (NID) дают возможность проводить мониторинг и оптимизацию трафика при небольших затратах. Обычно такие устройства устанавливаются на территории абонента: сетевых вышках и прочих точках перехода между сетями операторов.

NID обеспечивают контроль за всеми компонентами сети. Если такое устройство поддерживает H-QoS, то провайдер может не только следить за работой сети, но и проводить индивидуальную настройку параметров для каждого подключенного пользователя.

Кэширование

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

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

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

Сжатие данных

Основная задача сжатия данных - сократить размер файлов, которые передаются по сети. В некоторой степени сжатие похоже на кэширование и может дать эффект ускорения, как при увеличении пропускной способности канала. Один из самых распространённых методов сжатия - алгоритм Лемпеля – Зива – Велча, который используется, например, в ZIP-архивировании и утилите сжатия UNIX.

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

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

Одностороннее сжатие данных

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

У этих инструментов есть некоторые преимущества перед двусторонними решениями и прокси-кэшированием. Они значительно дешевле в установке и управлении, чем двусторонние. Кроме того, такие системы могут определять скорость соединения, тип браузера, оптимизировать не только статический, но и динамический контент для конкретного пользователя.

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

Сегодня инженеры постоянно проводят исследования, стараясь повысить производительность и эффективность сетей. Группа IEEE 802.1Qau разрабатывает улучшенные методы управления, которые позволят устранить потерю пакетов при перегрузке портов, команда Internet Engineering Task Force создает протокол для канального уровня связи, способный обеспечить кратчайшее соединение с помощью Ethernet.

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

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

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

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

Последние тесты коммутаторов Ethernet 10 Гбит/с показали, что с точки зрения пропускной способности они значительно отличаются друг от друга. Парадокс состоит в том, что чем быстрее сеть, тем меньшее значение имеет пропускная способность свитча.
Этот фактор, естественно, весьма важен, но только в тех случаях, когда сеть интенсивно загружена пакетами. В то же время задержка (то есть время, необходимое для переключения между портом ввода и порта вывода) играет важную роль для каждого типа движений пакетов, в каждой ситуации и в каждой сети.
Устройства, характеризующиеся большой величиной задержки, уменьшают скорость работы сети - и это происходит вне зависимости от того, загружена ли сеть на 1% или на 100%. Для того, чтобы приложения "запротестовали", задержки вовсе не должны составлять несколько сот миллисекунд.
Если говорить о коммутаторах, оснащенных интерфейсами Ethernet 1 и 10 Гбит/с, то чаще всего задержка у них составляет величину от нескольких десятков до нескольких сотен миллисекунд. До сих пор считается, что задержки, составляющие несколько десятков миллисекунд, не влияют на производительность сетевых приложений.
Отчасти это неверно. Даже небольшие задержки порядка нескольких десятков миллисекунд могут стать причиной резкого уменьшения производительности сетей Ethernet 1 и 10 Гбит/с. "Виновен" в этом, если так можно выразиться, протокол ТСР, а точнее, окна, необходимые этому протоколу для передачи пакетов в сеть.
Как работает ТСР? Отправитель высылает ограниченные порции данных таким образом, чтобы получатель мог выслать в обратном направлении информацию, подтверждающую их получение. Окна обеспечивают подтверждения о получении нескольких пакетов сразу, но если отправитель не получает от получателя за определенное время такого подтверждения, то все пакеты должны быть переданы повторно.
Поскольку в сети Интернет свыше 80% передач происходит с помощью протоколов ТСР, повторная передача пакетов может привести к значительному снижению работоспособности приложений, запущенных в той же среде.
Например, в сети работает коммутатор E1200 (Force10 Networks) и получает пакеты Ethernet длиной 1518 байт, соответствующих максимально возможной длине пакетов Ethernet и обычно используемых при передаче больших объемов данных. Использование сетей на этот момент умеренное, в пределах 10%. Коммутатор принимает 81274 пакета в секунду (один пакет принимается за 12 микросекунд).
В ОС Windows 2000 и XP размер пакета ТСР по умолчанию составляет 16 Кб. Это означает, что в сеть можно отправить без подтверждения их получения не более 11 пакетов. Для 11 пакетов (считая по 12 микросекунд на каждый), каждая задержка более 132 микросекунд будет означать, что данные будут высылаться повторно.
Последние тесты коммутаторов Ethernet 10 Гбит/с показали, что в устройствах Avaya и Force10 Networks задержка при переключении пакетов длиной 1518 байт составляет свыше 40 микросекунд. То есть одиннадцать таких задержек - и мы имеем дело с повторно передаваемыми через протокол ТСР пакетами. Компания Force10 представила свой коммутатор E1200 и сообщила, что задержки удалось уменьшить вполовину (теперь они составляют 23 микросекунды). При таких задержках в сетях Ethernet 10 Гбит/с и дальше происходит повторная передача пакетов, но в сетях 1 Гбит/с протокол ТСР уже не передает их повторно. Но размеры окон изменяются динамически: чем больше окошко, тем большее влияние имеют маленькие задержки.
Можно описать влияние окна ТСР на работу любой сети. Для того, чтобы это сделать, необходимо знать три параметра: длина пакетов, размер окна ТСР и степень использования сети.


Установка протокола TCP/IP

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

IP-адрес - это логический 32-разрядный адрес, однозначно определяющий узел TCP/IP. Каждый IP-адрес состоит из двух частей: идентификатора сети и идентификатора узла. Первый служит для обозначения всех узлов в одной физической сети. Второй обозначает конкретный узел в сети. Каждому компьютеру, использующему TCP/IP, требуется уникальный IP-адрес, например, 194.103.2.200.

Маска подсети выделяет часть IP-адреса и позволяет TCP/IP отличить идентификатор сети от идентификатора узла. Пытаясь связаться, узлы TCP/IP используют маску подсети (например, 255.255.255.0), чтобы определить, находится узел-получатель в локальной или удаленной сети.

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

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

11.04.2007 17:46

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

Среди множества возможных подходов к решению задачи коммутации абонентов в сетях выделяют два основополагающих:

    коммутация каналов (circuit switching);

    коммутация пакетов (packet switching).

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

Рис. 1. Общая структура сети с коммутацией абонентов

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

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

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

Например, если сеть, изображенная на рис. 1, работает по технологии коммутации каналов, то узел 1, чтобы передать данные узлу 7, сначала должен передать специальный запрос на установление соединения коммутатору A, указав адрес назначения 7. Коммутатор А должен выбрать маршрут образования составного канала, а затем передать запрос следующему коммутатору, в данном случае E. Затем коммутатор E передает запрос коммутатору F, а тот, в свою очередь, передает запрос узлу 7. Если узел 7 принимает запрос на установление соединения, он направляет по уже установленному каналу ответ исходному узлу, после чего составной канал считается скоммутированным, и узлы 1 и 7 могут обмениваться по нему данными.

Рис. 2. Установление составного канала

Техника коммутации каналов имеет свои достоинства и недостатки.

Достоинства коммутации каналов

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

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

Недостатки коммутации каналов

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

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

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

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

Коэффициент пульсации трафика отдельного пользователя сети, равный отношению средней интенсивности обмена данными к максимально возможной, может достигать 1:50 или даже 1:100. Если для описанной сессии организовать коммутацию канала между компьютером пользователя и сервером, то большую часть времени канал будет простаивать. В то же время коммутационные возможности сети будут закреплены за данной парой абонентов и будут недоступны другим пользователям сети.

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

Рис. 3. Разбиение сообщения на пакеты

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

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

Тем не менее, общий объем передаваемых сетью компьютерных данных в единицу времени при технике коммутации пакетов будет выше, чем при технике коммутации каналов. Это происходит потому, что пульсации отдельных абонентов в соответствии с законом больших чисел распределяются во времени так, что их пики не совпадают. Поэтому коммутаторы постоянно и достаточно равномерно загружены работой, если число обслуживаемых ими абонентов действительно велико. На рис. 4 показано, что трафик, поступающий от конечных узлов на коммутаторы, распределен во времени очень неравномерно. Однако коммутаторы более высокого уровня иерархии, которые обслуживают соединения между коммутаторами нижнего уровня, загружены более равномерно, и поток пакетов в магистральных каналах, соединяющих коммутаторы верхнего уровня, имеет почти максимальный коэффициент использования. Буферизация сглаживает пульсации, поэтому коэффициент пульсации на магистральных каналах гораздо ниже, чем на каналах абонентского доступа — он может быть равным 1:10 или даже 1:2.

Рис. 4. Сглаживание пульсаций трафика в сети с коммутацией пакетов

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

Задержки в источнике передачи:

    время на передачу заголовков;

    задержки, вызванные интервалами между передачей каждого следующего пакета.

Задержки в каждом коммутаторе:

    время буферизации пакета;

    время коммутации, которое складывается из:

    • времени ожидания пакета в очереди (переменная величина);

      времени перемещения пакета в выходной порт.

Достоинства коммутации пакетов

    Высокая общая пропускная способность сети при передаче пульсирующего трафика.

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

Недостатки коммутации пакетов

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

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

    Возможные потери данных из-за переполнения буферов.
    В настоящее время активно разрабатываются и внедряются методы, позволяющие преодолеть указанные недостатки, которые особенно остро проявляются для чувствительного к задержкам трафика, требующего при этом постоянной скорости передачи. Такие методы называются методами обеспечения качества обслуживания (Quality of Service, QoS).

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

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

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

По такой схеме обычно передаются сообщения, не требующие немедленного ответа, чаще всего сообщения электронной почты. Режим передачи с промежуточным хранением на диске называется режимом "хранения-и-передачи" (store-and-forward).

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

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

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

Сравнение способов коммутации

Сравнение коммутации каналов и коммутации пакетов

Коммутация каналов

Коммутация пакетов

Гарантированная пропускная способность (полоса) для взаимодействующих абонентов

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

Сеть может отказать абоненту в установлении соединения

Сеть всегда готова принять данные от абонента

Трафик реального времени передается без задержек

Ресурсы сети используются эффективно при передаче пульсирующего трафика

Адрес используется только на этапе установления соединения

Адрес передается с каждым пакетом

Постоянная и динамическая коммутация

Как сети с коммутацией пакетов, так и сети с коммутацией каналов можно разделить на два класса:

    сети с динамической коммутацией;

    сети с постоянной коммутацией.

В сетях с динамической коммутацией:

    разрешается устанавливать соединение по инициативе пользователя сети;

    коммутация выполняется только на время сеанса связи, а затем (по инициативе одного из пользователей) разрывается;

    в общем случае пользователь сети может соединиться с любым другим пользователем сети;

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

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

Сеть, работающая в режиме постоянной коммутации:

    разрешает паре пользователей заказать соединение на длительный период времени;

    соединение устанавливается не пользователями, а персоналом, обслуживающим сеть;

    период, на который устанавливается постоянная коммутация, составляет обычно несколько месяцев;

    режим постоянной (permanent) коммутации в сетях с коммутацией каналов часто называется сервисом выделенных (dedicated) или арендуемых (leased) каналов;

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

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

Некоторые типы сетей поддерживают оба режима работы. Например, сети X.25 и ATM могут предоставлять пользователю возможность динамически связаться с любым другим пользователем сети и в то же время отправлять данные по постоянному соединению определенному абоненту.

Пропускная способность сетей с коммутацией пакетов
Одним из отличий метода коммутации пакетов от метода коммутации каналов является неопределенность пропускной способности соединения между двумя абонентами. В случае коммутации каналов после образования составного канала пропускная способность сети при передаче данных между конечными узлами известна — это пропускная способность канала. Данные после задержки, связанной с установлением канала, начинают передаваться на максимальной для канала скорости (рис. 5.). Время передачи сообщения в сети с коммутацией каналов Тк.к. равно сумме задержки распространения сигнала по линии связи и задержки передачи сообщения. Задержка распространения сигнала зависит от скорости распространения электромагнитных волн в конкретной физической среде, которая колеблется от 0,6 до 0,9 скорости света в вакууме. Время передачи сообщения равно V/C, где V — объем сообщения в битах, а C — пропускная способность канала в битах в секунду.

В сети с коммутацией пакетов картина совсем иная.

Рис. 5 Задержки передачи данных в сетях с коммутацией каналов.

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

Рис. 6. Задержки при передаче данных в сетях с коммутацией пакетов.

На рис. 6 показан пример передачи данных в сети с коммутацией пакетов. Предполагается, что по сети передается сообщение того же объема, что и сообщение, передаваемое на рис. 5. однако оно разделено на пакеты, каждый из которых снабжен заголовком. Время передачи сообщения в сети с коммутацией пакетов обозначено на рисунке Тк.п. При передаче этого разбитого на пакеты сообщения по сети с коммутацией пакетов возникают дополнительные задержки. Во-первых, это задержки в источнике передачи, который, помимо передачи собственно сообщения, тратит дополнительное время на передачу заголовков tп.з., к тому же добавляются задержки tинт, вызванные интервалами между передачей каждого следующего пакета (это время уходит на формирование очередного пакета стеком протоколов).

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

Проведем грубую оценку задержки при передаче данных в сетях с коммутацией пакетов по сравнению с сетями с коммутацией каналов на простейшем примере. Пусть тестовое сообщение, которое нужно передать в обоих видах сетей, имеет объем 200 Кбайт. Отправитель находится от получателя на расстоянии 5000 км. Пропускная способность линий связи составляет 2 Мбит/c.

Время передачи данных по сети с коммутацией каналов складывается из времени распространения сигнала, которое для расстояния 5000 км можно оценить примерно в 25 мс (принимая скорость распространения сигнала равной 2/3 скорости света), и времени передачи сообщения, которое при пропускной способности 2 Мбит/c и длине сообщения 200 Кбайт равно примерно 800 мс. При расчете корректное значение К (210), равное 1024, округлялось до 1000, аналогично значение М (220), равное 1048576, округлялось до 1000000. Таким образом, передача данных оценивается в 825 мс.

Ясно, что при передаче этого сообщения по сети с коммутацией пакетов, обладающей такой же суммарной длиной и пропускной способностью каналов, пролегающих от отправителя к получателю, время распространения сигнала и время передачи данных будут такими же — 825 мс. Однако из-за задержек в промежуточных узлах общее время передачи данных увеличится. Давайте оценим, на сколько возрастет это время. Будем считать, что путь от отправителя до получателя пролегает через 10 коммутаторов. Пусть исходное сообщение разбивается на пакеты в 1 Кбайт, всего 200 пакетов. Вначале оценим задержку, которая возникает в исходном узле. Предположим, что доля служебной информации, размещенной в заголовках пакетов, по отношению к общему объему сообщения составляет 10%. Следовательно, дополнительная задержка, связанная с передачей заголовков пакетов, составляет 10% от времени передачи целого сообщения, то есть 80 мс. Если принять интервал между отправкой пакетов равным 1 мс, то дополнительные потери за счет интервалов составят 200 мс. Таким образом, в исходном узле из-за пакетирования сообщения при передаче возникла дополнительная задержка в 280 мс.

Каждый из 10 коммутаторов вносит задержку коммутации, которая может составлять от долей до тысяч миллисекунд. В данном примере будем считать, что на коммутацию в среднем тратится 20 мс. Кроме того, при прохождении сообщений через коммутатор возникает задержка буферизации пакета. Эта задержка при величине пакета 1 Кбайт и пропускной способности линии 2 Мбит/c равна 4 мс. Общая задержка, вносимая 10 коммутаторами, составляет примерно 240 мс. В результате дополнительная задержка, созданная сетью с коммутацией пакетов, составила 520 мс. Учитывая, что вся передача данных в сети с коммутацией каналов заняла 825 мс, эту дополнительную задержку можно считать существенной.

Хотя приведенный расчет носит очень приблизительный характер, он объясняет, почему процесс передачи для определенной пары абонентов в сети с коммутацией пакетов является более медленным, чем в сети с коммутацией каналов.

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

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

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

Рассмотрим, каким образом описанные выше общие подходы к решению проблем построения сетей воплощены в наиболее популярной сетевой технологии — Ethernet. (Заметим, что мы не будем сейчас подробно рассматривать саму технологию — отложим этот важный вопрос до следующего курса, а сегодня остановимся лишь на некоторых принципиальных моментах, иллюстрирующих ряд уже рассмотренных базовых концепций.)
Сетевая технология — это согласованный набор стандартных протоколов и программно-аппаратных средств (например, сетевых адаптеров, драйверов, кабелей и разъемов), достаточный для построения вычислительной сети.

Эпитет "достаточный" подчеркивает то обстоятельство, что речь идет о минимальном наборе средств, с помощью которых можно построить работоспособную сеть. Эту сеть можно усовершенствовать, например, за счет выделения в ней подсетей, что сразу потребует кроме протоколов стандарта Ethernet применения протокола IP, а также специальных коммуникационных устройств — маршрутизаторов. Усовершенствованная сеть будет, скорее всего, более надежной и быстродействующей, но за счет надстроек над средствами технологии Ethernet, которая составила базис сети.

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

Протоколы, на основе которых строится сеть определенной технологии (в узком смысле), создавались специально для совместной работы, поэтому от разработчика сети не требуется дополнительных усилий по организации их взаимодействия. Иногда сетевые технологии называют базовыми технологиями, имея в виду, что на их основе строится базис любой сети. Примерами базовых сетевых технологий могут служить наряду с Ethernet такие известные технологии локальных сетей как Token Ring и FDDI, или же технологии территориальных сетей Х.25 и frame relay. Для получения работоспособной сети в этом случае достаточно приобрести программные и аппаратные средства, относящиеся к одной базовой технологии — сетевые адаптеры с драйверами, концентраторы, коммутаторы, кабельную систему и т. п., — и соединить их в соответствии с требованиями стандарта на данную технологию.

Итак, для сетевой технологии Ethernet характерны:

    коммутация пакетов;

    типовая топология "общая шина";

    плоская числовая адресация;

    разделяемая передающая среда.

Основной принцип, положенный в основу Ethernet, — случайный метод доступа к разделяемой среде передачи данных. В качестве такой среды может использоваться толстый или тонкий коаксиальный кабель, витая пара, оптоволокно или радиоволны (кстати, первой сетью, построенной на принципе случайного доступа к разделяемой среде, была радиосеть Aloha Гавайского университета).

В стандарте Ethernet строго зафиксирована топология электрических связей. Компьютеры подключаются к разделяемой среде в соответствии с типовой структурой "общая шина" (рис. 7.). С помощью разделяемой во времени шины любые два компьютера могут обмениваться данными. Управление доступом к линии связи осуществляется специальными контроллерами — сетевыми адаптерами Ethernet. Каждый компьютер, а точнее, каждый сетевой адаптер, имеет уникальный адрес. Передача данных происходит со скоростью 10 Мбит/с. Эта величина является пропускной способностью сети Ethernet.

Рис. 7. Сеть Ethernet.

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

После того как компьютер убедился, что сеть свободна, он начинает передачу и при этом "захватывает" среду. Время монопольного использования разделяемой среды одним узлом ограничивается временем передачи одного кадра. Кадр — это единица данных, которыми обмениваются компьютеры в сети Ethernet. Кадр имеет фиксированный формат и наряду с полем данных содержит различную служебную информацию, например адрес получателя и адрес отправителя.

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

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

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

Основные достоинства технологии Ethernet
1. Главным достоинством сетей Ethernet, благодаря которому они стали такими популярными, является их экономичность. Для построения сети достаточно иметь по одному сетевому адаптеру для каждого компьютера плюс один физический сегмент коаксиального кабеля нужной длины.
2. Кроме того, в сетях Ethernet реализованы достаточно простые алгоритмы доступа к среде, адресации и передачи данных. Простота логики работы сети ведет к упрощению и, соответственно, снижению стоимости сетевых адаптеров и их драйверов. По той же причине адаптеры сети Ethernet обладают высокой надежностью.
3. И, наконец, еще одним замечательным свойством сетей Ethernet является их хорошая расширяемость, то есть возможность подключения новых узлов.

Другие базовые сетевые технологии, такие как Token Ring и FDDI, хотя и обладают индивидуальными чертами, в то же время имеют много общего с Ethernet. В первую очередь, это применение регулярных фиксированных топологий ("иерархическая звезда" и "кольцо"), а также разделяемых сред передачи данных. Существенные отличия одной технологии от другой связаны с особенностями используемого метода доступа к разделяемой среде. Так, отличия технологии Ethernet от технологии Token Ring во многом определяются спецификой заложенных в них методов разделения среды — случайного алгоритма доступа в Ethernet и метода доступа путем передачи маркера в Token Ring.

Дейтаграммная передача

В сетях с коммутацией пакетов сегодня применяется два класса механизмов передачи пакетов:

    дейтаграммная передача;

    виртуальные каналы.

Примерами сетей, реализующих дейтаграммный механизм передачи, являются сети Ethernet, IP и IPX. С помощью виртуальных каналов передают данные сети X.25, frame relay и ATM. Сначала мы рассмотрим базовые принципы дейтаграммного подхода.

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

Выбор следующего узла — например, коммутатора Ethernet или маршрутизатора IP/IPX — происходит только на основании адреса узла назначения, содержащегося в заголовке пакета. Решение о том, какому узлу передать пришедший пакет, принимается на основе таблицы, содержащей набор адресов назначения и адресную информацию, однозначно определяющую следующий (транзитный или конечный) узел. Такие таблицы имеют разные названия — например, для сетей Ethernet они обычно называются таблицей продвижения (forwarding table), а для сетевых протоколов, таких как IP и IPX, — таблицами маршрутизации (routing table). Далее для простоты будем пользоваться термином "таблица маршрутизации" в качестве обобщенного названия такого рода таблиц, используемых для дейтаграммной передачи на основании только адреса назначения конечного узла.

В таблице маршрутизации для одного и того же адреса назначения может содержаться несколько записей, указывающих, соответственно, на различные адреса следующего маршрутизатора. Такой подход используется для повышения производительности и надежности сети. В примере на рис. 8 пакеты, поступающие в маршрутизатор R1 для узла назначения с адресом N2, А2, в целях баланса нагрузки распределяются между двумя следующими маршрутизаторами — R2 и R3, что снижает нагрузку на каждый из них, а значит, уменьшает очереди и ускоряет доставку. Некоторая "размытость" путей следования пакетов с одним и тем же адресом назначения через сеть является прямым следствием принципа независимой обработки каждого пакета, присущего дейтаграммным протоколам. Пакеты, следующие по одному и тому же адресу назначения, могут добираться до него разными путями и вследствие изменения состояния сети, например отказа промежуточных маршрутизаторов.

Рис. 8. Дейтаграммный принцип передачи пакетов.

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

Механизм виртуальных каналов (virtual circuit или virtual channel) создает в сети устойчивые пути следования трафика через сеть с коммутацией пакетов. Этот механизм учитывает существование в сети потоков данных.

Если целью является прокладка для всех пакетов потока единого пути через сеть, то необходимым (но не всегда единственным) признаком такого потока должно быть наличие для всех его пакетов общих точек входа и выхода из сети. Именно для передачи таких потоков в сети создаются виртуальные каналы. На рисунке 9 показан фрагмент сети, в которой проложены два виртуальных канала. Первый проходит от конечного узла с адресом N1, A1 до конечного узла с адресом N2, A2 через промежуточные коммутаторы сети R1, R3, R7 и R4. Второй обеспечивает продвижение данных по пути N3, A3 — R5 — R7 — R4 — N2, A2. Между двумя конечными узлами может быть проложено несколько виртуальных каналов, как полностью совпадающих в отношении пути следования через транзитные узлы, так и отличающихся.

Рис. 9. Принцип работы виртуального канала.

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

Важной особенностью сетей с виртуальными каналами является использование локальных адресов пакетов при принятии решения о передаче. Вместо достаточно длинного адреса узла назначения (его длина должна позволять уникально идентифицировать все узлы и подсети в сети, например технология АТМ оперирует адресами длиной в 20 байт) применяется локальная, то есть меняющаяся от узла к узлу, метка, которой помечаются все пакеты, перемещаемые по определенному виртуальному каналу. Эта метка в различных технологиях называется по-разному: в технологии X.25 — номер логического канала (Logical Channel number, LCN), в технологии frame relay — идентификатор соединения уровня канала данных (Data Link Connection Identifier, DLCI), в технологии АТМ — идентификатор виртуального канала (Virual Channel Identifier, VCI). Однако назначение ее везде одинаково — промежуточный узел, называемый в этих технологиях коммутатором, читает значение метки из заголовка пришедшего пакета и просматривает свою таблицу коммутации, в которой указывается, на какой выходной порт нужно передать пакет. Таблица коммутации содержит записи только о проходящих через данный коммутатор виртуальных каналах, а не обо всех имеющихся в сети узлах (или подсетях, если применяется иерархический способ адресации). Обычно в крупной сети количество проложенных через узел виртуальных каналов существенно меньше количества узлов и подсетей, поэтому по размерам таблица коммутации намного меньше таблицы маршрутизации, а, следовательно, просмотр занимает гораздо меньше времени и не требует от коммутатора большой вычислительной мощности.

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