Middlebox является компьютерными сетями устройства, преобразующими, инспектирует, фильтры, и манипулирует трафик для других целей , чем пересылки пакетов . [1] Эти посторонние функции мешали производительности приложений и подвергались критике за нарушение «важных архитектурных принципов», таких как принцип непрерывности . Примеры промежуточных ящиков включают межсетевые экраны , трансляторы сетевых адресов (NAT), балансировщики нагрузки и блоки глубокой проверки пакетов (DPI). [2]
Профессор Калифорнийского университета в Лос-Анджелесе Ликсия Чжан ввела термин « промежуточный ящик» в 1999 году. [1] [3]
Применение
Мидлбоксы широко используются как в частных, так и в общедоступных сетях. Выделенное промежуточное оборудование широко используется в корпоративных сетях для повышения безопасности и производительности сети, однако даже домашние сетевые маршрутизаторы часто имеют встроенный межсетевой экран, NAT или другие функции промежуточного ящика. [4] В одном исследовании 2017 года насчитывалось более 1000 развертываний в автономных системах в обоих направлениях потоков трафика и в широком диапазоне сетей, включая мобильных операторов и сети центров обработки данных. [2]
Примеры
Ниже приведены примеры часто используемых промежуточных ящиков:
- Брандмауэры фильтруют трафик на основе набора предопределенных правил безопасности, определенных администратором сети. Межсетевые экраны IP отклоняют пакеты «исключительно на основе полей в заголовках IP и транспорта (например, запрещают входящий трафик к определенным номерам портов , запрещают любой трафик к определенным подсетям и т. Д.)» [1] Другие типы межсетевых экранов могут использовать более сложные наборы правил, в том числе те, которые проверяют трафик на уровне сеанса или приложения. [5]
- Системы обнаружения вторжений (IDS) отслеживают трафик и собирают данные для автономного анализа аномалий безопасности. В отличие от брандмауэров, IDS не фильтруют пакеты в реальном времени, поскольку они способны к более сложной проверке и должны решать, принимать или отклонять каждый пакет по мере его поступления. [6]
- Трансляторы сетевых адресов (NAT) заменяют исходные и / или целевые IP-адреса пакетов, которые их пересекают. Как правило, NAT развертываются, чтобы позволить нескольким конечным хостам совместно использовать один IP-адрес : хостам, находящимся за NAT, назначается частный IP-адрес, а их пакеты, предназначенные для общедоступного Интернета, проходят через NAT, который заменяет их внутренний частный адрес общим публичный адресс. [7] Они широко используются операторами сотовой связи для управления ограниченными ресурсами. [8]
- Оптимизаторы WAN улучшают потребление полосы пропускания и воспринимаемую задержку между конечными точками. Обычно оптимизаторы WAN развертываются на крупных предприятиях рядом с конечными точками передачи и приема данных; затем устройства координируются для кэширования и сжатия трафика, проходящего через Интернет. [9]
- Балансировщики нагрузки обеспечивают одну точку входа в службу, но перенаправляют потоки трафика на один или несколько хостов, которые фактически предоставляют службу.
- В сотовых сетях используются промежуточные ящики, чтобы гарантировать эффективное использование ограниченных сетевых ресурсов, а также для защиты клиентских устройств.
Критика и вызовы
Мидлбоксы породили технические проблемы при разработке приложений и вызвали «презрение» и «тревогу» в сообществе сетевой архитектуры [10] из- за нарушения сквозного принципа проектирования компьютерных систем. [11]
Вмешательство приложений
Некоторые промежуточные ящики мешают работе приложений, ограничивая или препятствуя правильной работе приложений конечного хоста.
В частности, преобразователи сетевых адресов (NAT) представляют проблему, поскольку устройства NAT разделяют трафик, предназначенный для общедоступного IP-адреса, между несколькими приемниками. Когда соединения между хостом в Интернете и хостом за NAT инициируются хостом за NAT, NAT узнает, что трафик для этого соединения принадлежит локальному хосту. Таким образом, когда трафик, поступающий из Интернета, направляется на общедоступный (общий) адрес на конкретном порту , NAT может направить трафик на соответствующий хост. Однако соединения, инициированные хостом в Интернете, не предоставляют NAT никакой возможности «узнать», к какому внутреннему хосту принадлежит соединение. Более того, сам внутренний хост может даже не знать свой собственный общедоступный IP-адрес, чтобы сообщить потенциальным клиентам, к какому адресу подключиться. Для решения этой проблемы было предложено несколько новых протоколов. [12] [13] [14]
Кроме того, поскольку развертывание промежуточных ящиков операторами сотовой связи, такими как AT&T и T-Mobile , непрозрачно, разработчики приложений часто «не знают о политиках промежуточных ящиков, применяемых операторами», в то время как операторы не имеют полной информации о поведении и требованиях приложений. Например, один оператор связи установил «агрессивное значение тайм-аута для быстрой утилизации ресурсов, удерживаемых неактивными TCP- соединениями в брандмауэре, неожиданно вызывая частые сбои в долгоживущих, а иногда и неактивных соединениях, поддерживаемых такими приложениями, как электронная почта на основе push- уведомлений и обмен мгновенными сообщениями ». . [8]
К другим распространенным проблемам приложений, связанных с промежуточным ящиком, относятся веб-прокси, обслуживающие «устаревший» или устаревший контент [15], и брандмауэры, отклоняющие трафик на желаемых портах. [16]
Расширяемость и дизайн Интернета
Одна из критических замечаний по поводу промежуточных ящиков заключается в том, что они могут ограничивать выбор транспортных протоколов, тем самым ограничивая дизайн приложений или услуг. Мидлбоксы могут фильтровать или отбрасывать трафик, который не соответствует ожидаемому поведению, поэтому новые или необычные протоколы или расширения протоколов могут быть отфильтрованы. [17] В частности, то, что промежуточные ящики делают хосты в областях частных адресов неспособными «передавать дескрипторы, позволяющие другим хостам связываться с ними», препятствует распространению новых протоколов, таких как Session Initiation Protocol (SIP), а также различных одноранговых сетей. системы. [10] [18] Это прогрессирующее снижение гибкости было описано как окостенение протокола . [19] [20]
И наоборот, некоторые промежуточные ящики могут помочь в развертывании протокола, обеспечивая перевод между новыми и старыми протоколами. Например, IPv6 можно развернуть на общедоступных конечных точках, таких как балансировщики нагрузки , прокси-серверы или другие формы NAT, с внутренним трафиком, маршрутизируемым через IPv4 или IPv6.
Смотрите также
- Сквозная связь
- Установление интерактивного подключения (ICE)
- Утилиты обхода сеанса для NAT (STUN)
- Обход с использованием Relay NAT (TURN)
- Многослойный переключатель
Рекомендации
- ^ a b c Брайан Карпентер . «Мидлбоксы: систематика и проблемы» . RFC 3234 .
- ^ а б Шань Хуанг; Стив Улиг; Феликс Куадрадо (2017). «Мидлбоксы в Интернете: перспектива HTTP» . Конференция по измерению и анализу сетевого трафика (TMA) 2017 года . С. 1–9. DOI : 10,23919 / TMA.2017.8002906 . ISBN 978-3-901882-95-1. S2CID 34925433 .
- ^ Kromhout, Wileen Вонг (2 февраля 2012), «Lixia Чжан назван UCLA Джонатан Б. Постел кафедры компьютерных наук» , UCLA Newsroom , архивируются с оригинала на 25 апреля 2019 года , восстановлена 2015-06-14
- ^ Идо Дубравски и Уэс Нунан. «Широкополосные маршрутизаторы и межсетевые экраны» . CISCO Press . Проверено 15 июля 2012 года .
- ^ Magalhaes, Рики. «Разница между межсетевыми экранами прикладного и сеансового уровня» . Проверено 17 июля 2012 года .
- ^ «Понимание систем обнаружения вторжений» . Проверено 17 июля 2012 года .
- ^ К. Егеванг и П. Фрэнсис. «Транслятор сетевых IP-адресов (NAT)» . RFC 1631 .
- ^ а б Чжаогуан Ван, Чжиюнь Цянь, Цян Сюй, З. Морли Мао, Мин Чжан (август 2011 г.). «Нерассказанная история мидлбоксов в сотовых сетях» (PDF) . Обзор компьютерных коммуникаций ACM SIGCOMM . Ассоциация вычислительной техники. 41 (4): 374–385. DOI : 10.1145 / 2043164.2018479 .CS1 maint: несколько имен: список авторов ( ссылка )
- ^ По, Роберт. «Что такое оптимизация WAN и чем она может вам помочь?» . Проверено 17 июля 2012 года .
- ^ а б Майкл Уолфиш, Джереми Стриблинг, Максвелл Крон, Хари Балакришнан, Роберт Моррис и Скотт Шенкер (2004). «Мидлбоксы больше не считаются вредными» (PDF) . 6-й симпозиум по разработке и внедрению операционных систем . Ассоциация USENIX: 215–230.CS1 maint: несколько имен: список авторов ( ссылка )
- ^ Уолфиш; и другие. (2004). «Мидлбоксы больше не считаются вредными» (PDF) . OSDI . Проверено 17 июля 2012 года .
- ^ Дж. Розенберг; и другие. «Утилиты обхода сеанса для NAT (STUN)» . RFC 5389 .
- ^ «НАТ-ПМП» . Проверено 17 июля 2012 года .
- ^ «Рабочая группа по протоколу управления портами» . Проверено 17 июля 2012 года .
- ^ «База знаний BlueCoat: прокси-сервер отображает устаревшее содержимое» . Проверено 17 июля 2012 года .
- ^ «Использование FaceTime и iMessage за брандмауэром» . Проверено 17 июля 2012 года .
- ^ Хонда; и другие. (2011). "Можно ли еще расширить TCP?" (PDF) . Конференция по Интернет-измерениям .
- ^ Брайан Форд; Пида Срисуреш; Дэн Кегель (2005). «Одноранговая связь через трансляторы сетевых адресов» (PDF) . 2005 USENIX Ежегодная техническая конференция . Ассоциация USENIX: 179–192. arXiv : cs / 0603074 . Bibcode : 2006cs ........ 3074F .
- ^ Папастержиу, Джорджос; Фэрхерст, Горри; Рос, Дэвид; Брунстрем, Анна; Гриннемо, Карл-Йохан; Хуртиг, Пер; Хадеми, Наим; Таксен, Майкл; Вельцль, Майкл; Дамьянович, Драгана; Мангианте, Симона (2017). «Де-оссификация транспортного уровня Интернета: обзор и перспективы на будущее» . Обзоры и учебные пособия по коммуникациям IEEE . 19 (1): 619–639. DOI : 10,1109 / COMST.2016.2626780 . ЛВП : 2164/8317 . ISSN 1553-877X . S2CID 1846371 . Архивировано (PDF) с оригинала на 2017 год.
- ^ Корбет, Джонатан (29 января 2018 г.). «QUIC как решение проблемы закостенения протокола» . lwn.net . Проверено 14 марта 2020 .