Прокси-сервер, повышающий производительность
Прокси-серверы повышения производительности ( PEP ) — это сетевые агенты, предназначенные для улучшения сквозной производительности некоторых протоколов связи . Стандарты PEP определены в RFC 3135 (PEP, предназначенные для уменьшения ухудшения качества связи) и RFC 3449 (последствия асимметрии сетевых путей на производительности TCP).
Классификация
[ редактировать ]Доступные реализации PEP используют различные методы повышения производительности.
- Тип прокси: PEP может либо «разделить» соединение, либо «отслеживать» его. В первом случае прокси притворяется противоположной конечной точкой соединения в каждом направлении, буквально разделяя соединение на две части. В последнем случае прокси-сервер контролирует передачу TCP-сегментов в обоих направлениях путем фильтрации и реконструкции подтверждений в существующем соединении (см. Подмена протокола ). Это основано на уровне реализации PEP на уровне OSI. [1]
- Распространение: ПДЛ могут быть интегрированными или распределенными. Интегрированный PEP будет работать на одном устройстве, тогда как распределенный PEP потребуется установить на обеих сторонах канала, что приведет к снижению производительности. Это довольно часто встречается в коммерческих устройствах PEP, которые действуют как черный ящик , используя для связи между собой более или менее открытые протоколы вместо TCP.
- Симметрия: реализация PEP может быть симметричной или асимметричной. Симметричные PEP используют идентичное поведение в обоих направлениях; действия, предпринимаемые PEP, происходят независимо от того, от какого интерфейса получен пакет. Асимметричные PEP работают по-разному в каждом направлении, что может привести к повышению производительности, например, только в одном направлении канала.
Типы
[ редактировать ]Существует целый ряд различных типов PEP. Каждый из них используется для решения проблемы, связанной со ссылкой. Некоторые распространенные типы включают в себя:
- Сплит-TCP
- Подтверждение децимации
- Снуп
- D-прокси
Разделить TCP
[ редактировать ]Разделенный TCP обычно используется для решения проблем TCP с большими временами задержки в обоих направлениях . Типичная система использует Split TCP PEP для улучшения производительности TCP по спутниковому каналу . Разделение функций TCP путем разделения сквозного соединения на несколько соединений и использования разных параметров для передачи данных по разным ветвям. Конечные системы используют стандартный TCP без каких-либо модификаций, и им не нужно знать о существовании промежуточных PEP. Разделенный TCP перехватывает TCP-соединения от конечных систем и завершает их. Это позволяет конечным системам работать без изменений и может решить некоторые проблемы, связанные с размерами окон TCP на конечных системах, которые установлены слишком маленькими для спутниковой связи.
Фильтрация/прореживание подтверждений
[ редактировать ]Фильтрация или прореживание подтверждений используется на сильно асимметричных каналах. В асимметричных каналах скорости восходящего и нисходящего потоков сильно различаются. Типичным примером является спутниковая широкополосная связь, где нисходящий спутниковый канал обеспечивает значительно большую пропускную способность, чем восходящий коммутируемый модемный канал. В этом сценарии скорость, с которой модем может возвращать подтверждения TCP, может быть ограничивающим фактором. Поскольку TCP-подтверждения кумулятивно подтверждаются, некоторые из них могут быть прорежены или отфильтрованы для повышения производительности.
Снуп
[ редактировать ]Прокси-сервер Snoop [2] является примером интегрированного прокси. Он предназначен для сокрытия помех или потери пакетов из-за коллизий в беспроводном канале связи. Прокси-серверы Snoop обнаруживают потери, отслеживая TCP-передачи на наличие дублирующих подтверждений. Когда Snoop получает повторяющиеся подтверждения TCP, указывающие на потерю пакета, они будут автоматически отброшены, а потерянный пакет данных будет передан повторно. Отправитель TCP не должен знать об утрате. Это должно предотвратить ненужное уменьшение TCP-окна отправителями TCP.
D-прокси
[ редактировать ]D-прокси [3] [4] также предназначен для сокрытия потери пакетов из-за помех или коллизий в беспроводном канале связи. D-Proxy — это новый распределенный TCP-прокси, требующий прокси-сервера по обе стороны канала с потерями. Как и Snoop, он использует порядковые номера TCP для обнаружения потерянных пакетов. Однако он использует упреждающий подход, отслеживая порядковые номера TCP в пакетах данных, а не в подтверждениях. При потере пакета поток TCP будет временно буферизован до тех пор, пока недостающий пакет не будет восстановлен и повторно упорядочен.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ [1] : ПРОКСИ ПОВЫШЕНИЯ ПРОИЗВОДИТЕЛЬНОСТИ (PEP): TCP в беспроводной сети.
- ^ Балакришнан, Хари; Шринивасан Сешан; Рэнди Х. Кац (декабрь 1995 г.). «Улучшение производительности TCP/IP в беспроводных сетях». Беспроводные сети ACM . 1 (4). дои : 10.1007/BF01985757 . S2CID 2204005 .
- ^ Мюррей, Дэвид; Терри Козинец; Майкл Диксон (2009). «Решение проблемы неэффективности подтверждения в сетях 802.11». Международная конференция IEEE по архитектуре и приложениям мультимедийных систем Интернета .
- ^ Мюррей, Дэвид; Терри Козинец; Майкл Диксон (2010). «D-Proxy: надежность беспроводных сетей». 16-я Азиатско-Тихоокеанская конференция по коммуникациям (APCC) .
Внешние ссылки
[ редактировать ]- PEPsal : GPL. , имеющая лицензию Linux интегрированная реализация PEP на базе
- Сервер PEP MediaSputnik : Сервер PEP MediaSputnik 2402 был разработан MediaSputnik как I-PEP-совместимый сервер, соответствующий рекомендациям SatLabs Group (ESA) для поддержки стандартов и сетей DVB-RCS.
- RFC 3135 : весь RFC (прокси-серверы повышения производительности, предназначенные для смягчения ухудшения качества связи)