QUIC — это протокол, разработанный Google для ускорения и повышения эффективности сетевой связи. Он представляет собой стремление к повышению производительности сети и направлен на обеспечение лучшего пользовательского опыта, но в то же время QUIC также создает ряд проблем сетевой безопасности и мониторинга.
В современном цифровом мире скорость сети решает все. Google усердно работает над повышением эффективности и производительности сети, и протокол QUIC является частью этой миссии. Однако с широким распространением QUIC возникли некоторые проблемы безопасности, что вызывает серьезные опасения по поводу сетевой безопасности и наблюдения. Особую озабоченность вызывает тот факт, что большинство традиционных межсетевых экранов и сетевого оборудования неспособны эффективно обрабатывать трафик QUIC, создавая слабое звено в сетевой безопасности.
В этой статье мы подробно рассмотрим, как работает QUIC и как он может повысить производительность сети. В то же время мы рассмотрим влияние QUIC на сетевую безопасность и мониторинг, а также способы решения проблем, связанных с QUIC, чтобы гарантировать, что сети остаются безопасными и надежными. В эпоху цифровых технологий мы должны найти баланс между скоростью и безопасностью, и появление протокола QUIC заставит нас переосмыслить этот баланс.
Истоки протокола QUIC можно проследить до эксперимента Google gQUIC, который изначально был разработан для дальнейшего улучшения производительности HTTP/2 и распространения этой производительности на уровень безопасности и транспортный уровень сети. Этот эксперимент представляет собой смелую и похвальную попытку, поскольку его цель — заменить традиционный протокол HTTP. В 2013 году первая часть gQUIC начала передавать данные в реальном времени между серверами Google и браузером Chrome. Google передает трафик в режиме реального времени от различных сервисов Google клиенту Chrome через протокол gQUIC, и внедрение gQUIC постепенно растет по мере того, как сервисы Google получают от него выгоду.
Данные этого раннего эксперимента позже оказались важными при проектировании и разработке протокола QUIC. Однако стоит отметить, что ранние эксперименты с gQUIC включали два ключевых технических компонента, которые позже были удалены в ходе итераций:
Удаление этих двух функций отражает преждевременную оптимизацию конструкции протокола. По мере развития протокола эти функции стали бременем для обслуживания и были удалены, когда затраты на обслуживание превысили потенциальные выгоды.
QUIC (Quick UDP Internet Connections) — протокол, разработанный Google для повышения скорости и надежности сетевых подключений. Он призван заменить протокол управления передачей (TCP), используемый в текущей инфраструктуре Интернета, и построен на основе протокола пользовательских дейтаграмм (UDP).
QUIC использует технологию шифрования и мультиплексирования для обеспечения более высокой безопасности и более высокой скорости передачи данных. Это позволяет передавать несколько потоков данных по одному соединению, тем самым уменьшая задержку и увеличивая пропускную способность данных. Кроме того, QUIC также включает в себя такие функции, как контроль перегрузки и управление потоком данных для управления перегрузкой сети и обеспечения плавной передачи данных.
Инженерная группа Интернета (IETF) в настоящее время стандартизирует QUIC, и основные веб-браузеры и серверы постепенно внедряют этот протокол. Доказано, что по сравнению с традиционным протоколом TCP QUIC значительно сокращает время загрузки веб-страниц и уменьшает проблемы с отключением соединения, особенно в сетевых средах с высокой задержкой и нестабильной работой, таких как мобильные сети. QUIC был разработан для дальнейшего повышения производительности и безопасности интернет-подключений.
Как видно из картинки выше:
QUIC = HTTP/2 + TLS + UDP
и
UDP + QUIC = транспортный уровень
QUIC, вам просто нужно запомнить два ядра: использование транспортного уровня UDP и использование TLS. 1.3 Соглашение Использование транспортного уровня UDP: QUIC использоватьUDP(пользовательданныегазетапротокол)кактранспортный уровеньпротокол,По сравнению с традиционным изTCP,UDP уменьшает задержку соединения. TCP необходимо пройти три рукопожатия, чтобы установить соединение.,Это вводит 1 время прохождения туда и обратно (1-RTT) из-за задержки. В сравнении,QUICизUDPтранспортный уровень Сократите этот процесс рукопожатия,Сокращено время на построение соединения. Это помогает повысить эффективность общения,особеннода Для тех, у кого более высокие требования к задержкеизприложение。 Используйте TLS 1.3 Соглашение: QUIC интегрирует последнюю версию протокола TLS (Transport Layer Security), известного как TLS. 1.3。TLS 1.3 имеет улучшенные функции безопасности, одной из примечательных функций является поддержка рукопожатия 1-RTT и 0-RTT. Традиционное рукопожатие изTLS требует нескольких циклов передачи данных (RTT), и протокол QUICпроходитTLS. 1.3 Позволяет клиентам отправлять данные приложения до завершения подтверждения TLS. Это означает, что 1-RTT требуется при первом рукопожатии, но после этого подключенный клиент может использовать кэшированную информацию для быстрого возобновления соединения TLS с помощью всего лишь 0-1. РТТ. Это значительно сокращает время, необходимое для установления соединения, позволяя передавать данные быстрее, особенно в случае дублирующихся соединений.
Анализ трафика HTTPS TLS и захвата пакетов QUIC
2012: Предложение QUIC
Протокол QUIC был впервые предложен Google в 2012 году. Его первоначальная цель — улучшить производительность интернет-коммуникаций, особенно скорость загрузки веб-страниц, за счет уменьшения таких проблем, как задержки установления связи в традиционном протоколе TCP.
2016: IETF начинает стандартизировать QUIC.
В 2016 году Инженерная группа Интернета (IETF) приступила к официальной стандартизации протокола QUIC. Это знаменует собой вступление QUIC в более широкий открытый процесс стандартизации, направленный на обеспечение широкого внедрения и совместимости протокола.
2017: Внедрение gQUIC
В 2017 году Google разработала и внедрила первоначальную версию протокола QUIC под названием gQUIC. Это важная веха для QUIC, знаменующая его первоначальное применение и тестирование в реальной сетевой среде.
2021: выпущен RFC900 и официально стандартизирован QUIC.
Официальная стандартизированная версия протокола QUIC RFC900 будет выпущена в 2021 году. Выпуск этой стандартизированной версии подтверждает статус QUIC как нового протокола транспортного уровня, позволяющего применять и продвигать его в более широком диапазоне сетевых сред.
Итог: QUIC по сути построен на HTTP/2, но с более быстрым установлением соединения и мультиплексированием. Он предназначен для уменьшения задержки, повышения производительности и лучшей адаптации к современным сетям.
К основным функциям протокола QUIC относятся:
мультиплексирование
Протокол QUIC содержит примерно три основные функции:
блокировка начала строки
Пакеты данных QUIC состоят из двух основных частей: заголовка (Header) и данных (Data).
Ниже приведено подробное описание этих двух частей:
Протокол QUICпроходить однократное рукопожатие для замены традиционного рукопожатия изTCPиTLS,оти Значительно уменьшает накоплениесоединятьнеобходимыйизвремя。Пара нуждалась в быстром онлайн-сервисеизприложениеи Сервис очень важен。
При использовании HTTP/2 через TCP,может зависеть от блокирующей строки,Это означает, что потеря пакета данных приведет к блокировке последующих пакетов данных. QUIC решает эту проблему, позволяя потокам данных независимо достигать пунктов назначения.,Повышенная надежность.
QUIC поддерживает миграцию,Позволяет соединятьиз сохранять стабильность при изменениях в сети. Даже если IP-адрес изменится,Также возможно восстановить соединение,и Нет необходимости полностью восстанавливать соединение.
QUICпротоколсуществоватьприложениереализация уровня,Нет в ядре операционной системы,Это делает его более гибким и простым в улучшении и развитии. Разработчикам будет проще контролировать и настраивать поведение протоколов.
Протокол QUIC более уязвим к распределенным атакам типа «отказ в обслуживании» (DDoS) и угрозам. Потому что это даниктосоединятьиз,Нет необходимости в трехстороннем рукопожатии, таком как TCP.,Злоумышленникам легче запускать атаки отражения и усиления.,этот подделывает исходные IP-адреса для затопления целевых серверов,Сделайте его недоступным. Отсутствие QUIC затрудняет контроль трафика и доступа.,Это увеличивает вероятность DDoS-атак.
QUICпротокол относительно новый.,Может быть несовместимо с некоторыми старыми устройствами, сетевыми устройствами или брандмауэрами. Некоторые приложения требуют точного контроля над поведением,iQUICиз Новые функции могут применяться не во всех случаях использования. поэтому,При развертывании QUIC,Необходимо учитывать существующую инфраструктуру и оборудование из-за проблем совместимости.
Хотя QUIC предназначен для обеспечения более быстрой и эффективной передачи данных, на скорость его передачи могут влиять механизмы шифрования и аутентификации. QUIC добавляет дополнительные издержки при передаче пакетов, что может привести к снижению скорости передачи небольших пакетов, особенно в сетях с высокой задержкой.
Устранение неполадок сети с помощью QUIC может быть более сложным, чем с TCP. Из-за возможностей шифрования и аутентификации QUIC для диагностики проблем, связанных с потерей пакетов, перегрузкой сети или проблемами производительности, могут потребоваться более совершенные инструменты и опыт мониторинга сети. Устранение проблемы может усложниться, поскольку содержимое пакета и трафик могут быть не видны.
QUIC все еще находится на стадии постоянного развития и эволюции, поэтому могут возникать изменения и обновления спецификаций протокола. Организациям, использующим QUIC, необходимо быть в курсе последних разработок и обновлений, чтобы гарантировать, что реализации протокола всегда актуальны для оптимальной производительности и безопасности.
Приложения для связи в реальном времени, такие как видеозвонки, голосовой чат и обмен мгновенными сообщениями, требуют низкой задержки и надежной передачи данных. QUIC обеспечивает быструю и эффективную передачу данных посредством независимых механизмов контроля потока и перегрузки, что подходит для этих приложений.
Устройства Интернета вещей часто работают в ограниченных сетевых средах, и использование транспортных протоколов, таких как TCP или MQTT, может привести к высокой задержке и потере пакетов. QUIC хорошо работает в условиях сети с высокой задержкой и потерей пакетов, что делает его пригодным для связи с устройствами Интернета вещей, обеспечивая надежную и эффективную альтернативу.
Экосистема подключенных автомобилей требует обмена данными в реальном времени для обеспечения отслеживания транспортных средств, управления дорожным движением и обеспечения безопасности. Возможности QUIC с низкой задержкой, мультиплексированием и восстановлением пакетов помогают обеспечить надежную связь между транспортными средствами и инфраструктурой и повысить производительность подключенных автомобильных систем.
облачные процедуры включают в себя доставку через Интернет вычислительных ресурсов. QUIC может обеспечить низкую задержку и сквозное шифрование.,отиулучшить облакоприложениеизпользовательопытибезопасность。
Приложения для оплаты и электронной Коммерции необходимы безопасные и надежные изданные передачи для защиты конфиденциальной информации пользователей. QUICпроходить Используйте TLSшифрованиеинадежныйизHTTP3поток,Обеспечивает более высокий уровень безопасности для этих приложений.,В то же время улучшается пользовательский опыт.
Протокол QUIC (Quick UDP Internet Connection), как универсальный транспортный протокол, постепенно меняет способ осуществления интернет-коммуникаций. Хотя его можно использовать в различных рабочих процессах в Интернете, одной из наиболее заметных областей внедрения на данный момент является просмотр веб-страниц на основе HTTPS. Давайте посмотрим, кто использует QUIC и его внедрение.
Одно из наиболее значимых приложений QUIC — дапроходить веб-просмотр в QUIC для реализации HTTPS на основе изоединять. Однако,Чтобы использовать QUIC,И клиент, и сервер должны поддерживать этот протокол. Это может создать некоторые препятствия для широкого внедрения.,Потому что в настоящее время лишь несколько веб-сайтов перешли на использование HTTP/3.,иHTTP/3daQUICиз Преемника.
Хотя внедрение QUIC все еще растет, некоторые крупные интернет-гиганты уже начали применять этот протокол. Вот некоторые основные пользователи QUIC:
Экосистема поддержки QUIC постоянно растет и включает браузеры, приложения, серверы, CDN, веб-серверы, балансировщики нагрузки, проекты сообщества и языки программирования. Вот некоторые из ключевых компонентов, поддерживающих QUIC:
Подводя итог этой статьи, преимущества протокола QUIC очевидны, но в настоящее время он не очень развит. Я надеюсь, что протокол QUIC будет становиться все более совершенным, более безопасным и все более широко используемым!
Рекомендовано в прошлом
Битва за виртуализацию: всестороннее сравнение NVGRE и VXLAN