Низкая задержка — это важный фактор, обеспечивающий надежную работу и высокую производительность Ethernet-сетей. Приложения для общения в реальном времени, стриминга и проведения транзакций сильно зависят от уровня латентности. Увеличение задержки всего на несколько миллисекунд может привести к искажению изображения и голосов, «зависанию» приложений и финансовым потерям.
Провайдеры стараются следить за пропускной способностью сети и джиттером, но увеличение «ширины» канала часто не влияет на задержку в работе сети. В этом материале мы рассмотрим основные причины задержки и техники оптимизации качества соединения без чрезмерной перегрузки сети.
![](https://habrastorage.org/files/315/158/663/31515866366b4cfdae966e799249309f.jpg)
/ фото Thomas Williams CC
В сетях, основанных на пакетном обмене, связь между задержкой и пропускной способностью неоднозначна и сложна в определении. При этом источниками латентности являются:
Задержка распространения. После генерации сигнал распространяется по линии связи и достигает маршрутизатора. Время, которое уходит на передачу сигнала, называется задержкой распространения и зависит от длины соединения и физических свойств среды (оптоволокно, медь).
Задержка передачи. Пакеты данных передаются в порядке их поступления в очередь, поэтому каждый следующий пакет будет передан после отправки всех «посылок» в очереди перед ним.
Задержка ожидания. В очереди пакеты ожидают дальнейшей передачи к маршрутизатору. Время задержки ожидания зависит от числа пакетов и может сильно изменяться в различных маршрутизаторах. Если загрузка соединения невысока, то время задержки ожидания либо нулевое, либо очень незначительно, а в случае перегруженности соединения задержка может многократно увеличиться.
Задержка узловой обработки. Это время, которое уходит на чтение заголовка пакета и определение его дальнейшего маршрута. Также на задержку обработки влияют процессы вроде проверки целостности пакета при передаче.
Специалисты компании Ashton, Metzler & Associates называют управление трафиком возможностью сети классифицировать передаваемые пакеты. Этот подход используется в сетях с ограниченной пропускной способностью при работе важных приложений и чувствительных к задержкам приложений. Управление может означать ограничение трафика для конкретных сервисов, например, электронной почты, и выделение части канала под работу критически важных бизнес-приложений.
Для управления трафиком и качеством связи в сети организации рекомендуется:
Наиболее эффективный способ управления трафиком, по мнению специалистов Viavi Solutions, — иерархический контроль качества связи (H-QoS), являющийся комбинацией сетевых политик, фильтрации и управления формой трафика. H-QoS не будет снижать скорость работы, если все элементы сети обеспечат ультранизкую задержку и высокую производительность. Главное достоинство H-QoS — сокращение латентности без необходимости увеличения пропускной способности канала.
Сетевые интерфейсные устройства (NID) дают возможность проводить мониторинг и оптимизацию трафика при небольших затратах. Обычно такие устройства устанавливаются на территории абонента: сетевых вышках и прочих точках перехода между сетями операторов.
NID обеспечивают контроль за всеми компонентами сети. Если такое устройство поддерживает H-QoS, то провайдер может не только следить работой сети, но и проводить индивидуальную настройку параметров для каждого подключенного пользователя.
Относительно небольшое увеличение пропускного канала само по себе не решит проблему низкой производительности сетевых приложений. Кэширование помогает ускорить доставку контента и оптимизировать нагрузку на сеть. Этот процесс можно рассматривать как технику ускорения хранилища ресурсов — сеть работает быстрее, будто после обновления.
Обычно в организациях кэширование используется на нескольких уровнях. Стоит отметить так называемое прокси-кеширование. Когда пользователь запрашивает какие-либо данные, его запрос может быть выполнен локальным прокси-кэшем. Чем выше вероятность исполнения такого запроса, тем сильнее освобождается сетевой канал. Прокси-кэши являются своего рода общей кэш-памятью: они работают с большим числом пользователей и поэтому очень хороши в сокращении времени ожидания и сетевого трафика.
Поэтому одним из полезных вариантов применения прокси-кэширования является возможность подключения нескольких сотрудников к общему пулу интерактивных веб-приложений.
Основная задача сжатия данных — сократить размер файлов, которые передаются по сети. В некоторой степени сжатие похоже на кэширование и может дать эффект ускорения, как при увеличении пропускной способности канала. Но как и кэширование, сжатие данных не решает проблему плохой производительности приложений. Один из самых распространённых методов сжатия — алгоритм Лемпеля – Зива, который используется, например, в ZIP-архивировании и утилите сжатия UNIX.
Однако в некоторых ситуациях компрессия данных может привести к проблемам. Например, сжатие плохо масштабируется в плане использования ресурсов оперативной памяти и процессора. Также компрессия редко приносит пользу, если трафик зашифрован. Большинство алгоритмов шифрования не используют повторяющиеся последовательности, поэтому такие данные не могут быть сжаты стандартными алгоритмами.
Для эффективной работы сетевых приложений необходимо решать проблемы с пропускной способностью и задержкой одновременно. Сжатие данных направлено на разрешение только первой проблемы, поэтому так важно применять её в связке с методиками управления трафиком.
Существует альтернативный подход к сжатию данных — это системы одностороннего ускорения передачи пакетов. Такие системы используют технологии оптимизации веб-страниц, различные стандарты сжатия, методы оптимизации изображений, кодирование данных и кэширование. В итоге с помощью таких систем можно добиться сжатия информации в 2–8 раз в зависимости от содержимого.
У этих инструментов есть некоторые преимущества перед двусторонними решениями и прокси-кэшированием. Главное из них — они значительно дешевле в установке и управлении, чем двусторонние. Кроме того, такие системы могут определять скорость соединения, тип браузера, оптимизировать не только статический, но и динамический контент для конкретного пользователя.
К недостатку одностороннего сжатия относится то, что с его помощью оптимизировать можно только работу отдельно взятых программ и сайтов.
Сегодня технология Ethernet используется повсеместно, но в прошлом она считалась неподходящей для коммутаторной структуры высокоскоростных соединений. Основной причиной была низкая пропускная способность по сравнению с Fibre Channel или InfiniBand, которые используются в суперкомпьютерах и высокопроизводительных системах. После появления технологии 10 Gigabit Ethernet (10 GbE) и Ethernet-адаптеров ситуация изменилась.
Сегодня 10 GbE используется в дата-центрах для коммутаторных структур, позволяя сокращать задержку до 10 микросекунд и освобождать центральный процессор от обработки протокола. Также Ethernet-адаптеры позволяют повысить эффективность потребления энергии в системах конечных пользователей.
Однако инженеры продолжают проводить исследования с целью повышения эффективности Ethernet, чтобы укрепить позиции технологии для использования в дата-центрах:
Поддержание высокого качества соединения в сетях — важная задача для современных организаций. Это позволяет предоставлять клиентам лучшие сервисы и использовать ресурсы сети по максимуму.
Если вам интересна тема оптимизации процессов передачи, хранения и обработки данных, то можете обратить внимание на несколько других материалов из нашего блога:
Провайдеры стараются следить за пропускной способностью сети и джиттером, но увеличение «ширины» канала часто не влияет на задержку в работе сети. В этом материале мы рассмотрим основные причины задержки и техники оптимизации качества соединения без чрезмерной перегрузки сети.
![](https://habrastorage.org/files/315/158/663/31515866366b4cfdae966e799249309f.jpg)
/ фото Thomas Williams CC
Задержка и ее влияние на качество связи
В сетях, основанных на пакетном обмене, связь между задержкой и пропускной способностью неоднозначна и сложна в определении. При этом источниками латентности являются:
Задержка распространения. После генерации сигнал распространяется по линии связи и достигает маршрутизатора. Время, которое уходит на передачу сигнала, называется задержкой распространения и зависит от длины соединения и физических свойств среды (оптоволокно, медь).
Задержка передачи. Пакеты данных передаются в порядке их поступления в очередь, поэтому каждый следующий пакет будет передан после отправки всех «посылок» в очереди перед ним.
Задержка ожидания. В очереди пакеты ожидают дальнейшей передачи к маршрутизатору. Время задержки ожидания зависит от числа пакетов и может сильно изменяться в различных маршрутизаторах. Если загрузка соединения невысока, то время задержки ожидания либо нулевое, либо очень незначительно, а в случае перегруженности соединения задержка может многократно увеличиться.
Задержка узловой обработки. Это время, которое уходит на чтение заголовка пакета и определение его дальнейшего маршрута. Также на задержку обработки влияют процессы вроде проверки целостности пакета при передаче.
Управление трафиком и качество связи
Специалисты компании Ashton, Metzler & Associates называют управление трафиком возможностью сети классифицировать передаваемые пакеты. Этот подход используется в сетях с ограниченной пропускной способностью при работе важных приложений и чувствительных к задержкам приложений. Управление может означать ограничение трафика для конкретных сервисов, например, электронной почты, и выделение части канала под работу критически важных бизнес-приложений.
Для управления трафиком и качеством связи в сети организации рекомендуется:
- Настроить сеть так, чтобы можно было проводить мониторинг и классификацию трафика
- Анализировать трафик в сети для понимания закономерностей работы важных приложений
- Внедрить подходящее разделение на уровни доступа
- Вести наблюдение и отчетность, чтобы активно управлять изменяющимися схемами распределения трафика
Наиболее эффективный способ управления трафиком, по мнению специалистов Viavi Solutions, — иерархический контроль качества связи (H-QoS), являющийся комбинацией сетевых политик, фильтрации и управления формой трафика. H-QoS не будет снижать скорость работы, если все элементы сети обеспечат ультранизкую задержку и высокую производительность. Главное достоинство H-QoS — сокращение латентности без необходимости увеличения пропускной способности канала.
Использование сетевых интерфейсных устройств
Сетевые интерфейсные устройства (NID) дают возможность проводить мониторинг и оптимизацию трафика при небольших затратах. Обычно такие устройства устанавливаются на территории абонента: сетевых вышках и прочих точках перехода между сетями операторов.
NID обеспечивают контроль за всеми компонентами сети. Если такое устройство поддерживает H-QoS, то провайдер может не только следить работой сети, но и проводить индивидуальную настройку параметров для каждого подключенного пользователя.
Кэширование
Относительно небольшое увеличение пропускного канала само по себе не решит проблему низкой производительности сетевых приложений. Кэширование помогает ускорить доставку контента и оптимизировать нагрузку на сеть. Этот процесс можно рассматривать как технику ускорения хранилища ресурсов — сеть работает быстрее, будто после обновления.
Обычно в организациях кэширование используется на нескольких уровнях. Стоит отметить так называемое прокси-кеширование. Когда пользователь запрашивает какие-либо данные, его запрос может быть выполнен локальным прокси-кэшем. Чем выше вероятность исполнения такого запроса, тем сильнее освобождается сетевой канал. Прокси-кэши являются своего рода общей кэш-памятью: они работают с большим числом пользователей и поэтому очень хороши в сокращении времени ожидания и сетевого трафика.
Поэтому одним из полезных вариантов применения прокси-кэширования является возможность подключения нескольких сотрудников к общему пулу интерактивных веб-приложений.
Сжатие данных
Основная задача сжатия данных — сократить размер файлов, которые передаются по сети. В некоторой степени сжатие похоже на кэширование и может дать эффект ускорения, как при увеличении пропускной способности канала. Но как и кэширование, сжатие данных не решает проблему плохой производительности приложений. Один из самых распространённых методов сжатия — алгоритм Лемпеля – Зива, который используется, например, в ZIP-архивировании и утилите сжатия UNIX.
Однако в некоторых ситуациях компрессия данных может привести к проблемам. Например, сжатие плохо масштабируется в плане использования ресурсов оперативной памяти и процессора. Также компрессия редко приносит пользу, если трафик зашифрован. Большинство алгоритмов шифрования не используют повторяющиеся последовательности, поэтому такие данные не могут быть сжаты стандартными алгоритмами.
Для эффективной работы сетевых приложений необходимо решать проблемы с пропускной способностью и задержкой одновременно. Сжатие данных направлено на разрешение только первой проблемы, поэтому так важно применять её в связке с методиками управления трафиком.
Существует альтернативный подход к сжатию данных — это системы одностороннего ускорения передачи пакетов. Такие системы используют технологии оптимизации веб-страниц, различные стандарты сжатия, методы оптимизации изображений, кодирование данных и кэширование. В итоге с помощью таких систем можно добиться сжатия информации в 2–8 раз в зависимости от содержимого.
У этих инструментов есть некоторые преимущества перед двусторонними решениями и прокси-кэшированием. Главное из них — они значительно дешевле в установке и управлении, чем двусторонние. Кроме того, такие системы могут определять скорость соединения, тип браузера, оптимизировать не только статический, но и динамический контент для конкретного пользователя.
К недостатку одностороннего сжатия относится то, что с его помощью оптимизировать можно только работу отдельно взятых программ и сайтов.
Технология Ethernet и дата-центры
Сегодня технология Ethernet используется повсеместно, но в прошлом она считалась неподходящей для коммутаторной структуры высокоскоростных соединений. Основной причиной была низкая пропускная способность по сравнению с Fibre Channel или InfiniBand, которые используются в суперкомпьютерах и высокопроизводительных системах. После появления технологии 10 Gigabit Ethernet (10 GbE) и Ethernet-адаптеров ситуация изменилась.
Сегодня 10 GbE используется в дата-центрах для коммутаторных структур, позволяя сокращать задержку до 10 микросекунд и освобождать центральный процессор от обработки протокола. Также Ethernet-адаптеры позволяют повысить эффективность потребления энергии в системах конечных пользователей.
Однако инженеры продолжают проводить исследования с целью повышения эффективности Ethernet, чтобы укрепить позиции технологии для использования в дата-центрах:
- Группа The Higher Speed Study разрабатывает следующее поколение Ethernet на 40 Гбит и 100 Гбит
- Группа IEEE 802.1Qau разрабатывает улучшенные методы управления, которые бы позволили устранить потерю пакетов при перегрузке портов
- Также ведутся работы над улучшением выборки передачи данных, что позволит распределять неиспользуемые части соединения для различных классов трафика
- Команда Internet Engineering Task Force создает протокол для канального уровня связи для обеспечения кратчайшего соединения с помощью Ethernet
- T11 Working Group ведет разработку спецификации для поддержки протокола Fibre Channel через Ethernet, чтобы упростить работу дата-центров
Поддержание высокого качества соединения в сетях — важная задача для современных организаций. Это позволяет предоставлять клиентам лучшие сервисы и использовать ресурсы сети по максимуму.
Если вам интересна тема оптимизации процессов передачи, хранения и обработки данных, то можете обратить внимание на несколько других материалов из нашего блога:
Поделиться с друзьями
Karroplan
да вы с дуба упали. Статья называется «Как оптимизировать полосу пропускания в Ethernet-сетях», а в самом начале же написано «В этом материале мы рассмотрим основные причины задержки....». Что за херня? Зачем вы вообще всю эту муть и воду пишите? Что-то мне подсказывает, что в следующий раз когда я буду консалтить очередной банк по выбору провайдера IaaS «ИТ-Град» я не включю намерянно.