Прежде чем познакомиться с tc qdisc, давайте сначала объясним, что такое tc (управление трафиком) — это инструмент управления сетевым трафиком в ядре Linux. Его можно использовать для управления пропускной способностью, задержкой, потерей пакетов и другими параметрами сетевого трафика для обеспечения работы сети. оптимизация и управление трафиком. Подробное описание см. в официальной документации и руководстве пользователя инструмента Linux TC. qdisc (дисциплины организации очередей), который является частью инструмента tc, называется дисциплиной очередей. Это механизм, который может определять правила очереди сетевого трафика Linux. Он может выполнять построение очереди трафика, планирование, ограничение скорости и другие операции для достижения контроля над сетью. Прекрасный контроль и управление трафиком. Вот несколько примеров qdisc:
Сделайте небольшую рекламу
tc qdiscиз очень мощный,Может приехать не только штраф за контроль и управление сетевым трафиком.,Также используйте его для моделирования некоторых производственных сред, в которых могут возникнуть сбои сети.,напримерПотеря сетевых пакетов, задержка, повреждениеСцена ожидания,нода Хотите достичьприезжатьтакиз Добиться эффективных результатов и быстро восстановиться непросто.。Платформа Tencent Cloud Chaos DrillОбеспечивает различные действия по диагностике сетевых сбоев.,Охватывает CVM/TKE и другие продукты.,Способен быстро вводить и восстанавливаться,Контролируемый радиус взрыва,Удобно и быстро,Готов из коробки,иметьнуждатьсяиз Друзья Может Перейти кПлатформа Tencent Cloud Chaos Drill Библиотека действийИспользуйте его часто~
Сбой сети CVM:
Сбой сети ТКЕ:
проходитьверно Пакеты данных передаютсяочередь(queuing),нас Можетданные решенияизотправлятьСпособ。Здесь важноизнемногода:насТолько верноотправлять данные (передавать) можно изменить(shape the data)。 Механизм работы ИнтернетаРешать ПонятноПринимающая сторона не может напрямую контролировать отправку излишков для。Это похоже на электронную почту вашей компании.:Если только вы не можете связатьсяприезжать Местоиметьлюди(скажи им безтакой Пожалуйста, не пишите мне письмо), В противном случае вы не сможете контролировать, сколько писем попадет в ваш почтовый ящик.
Но в отличие от реальной жизни, Интернет основан на стеке протоколов TCP/IP. Хотя TCP/IP не может заранее знать пропускную способность сети между двумя хостами, вначале он будет отправлять данные со все более высокой скоростью (медленный старт) до тех пор, пока не будет достигнута максимальная скорость. В это время начинает происходить потеря пакетов. В это время он знает, что нет свободного места для хранения этих пакетов, которые будут отправлены, и это снизит скорость отправки. TCP/IP на самом деле работает умнее.
Это все равно, что не читать свою электронную почту и надеяться, что другие перестанут отправлять вам новые электронные письма, увидев это. ужасно жаль,Этот метод работает только в Интернете.,верно Адрес электронной почты вашей компании недействителен :-)
Правила поворота без категории(classless queueing дисциплины) могут быть применены к сети интерфейс(interface)начальствоиз Местоиметьтранспортный потокБеспорядочная пластическая хирургия。включатьверно Обработка данных:
Наиболее часто используемые в настоящее время неклассифицированные правила детоксикации да pfifo_fast,Это такжедаоченьмногосистеманачальствоиз Правила поворота по умолчанию。
Базовая структура pfifo_fast выглядит следующим образом:
pfifo_fast имеет 3 очереди (0, 1, 2). Эти три очереди имеют определенные правила и ограничения:
pfifo_fast
Принадлежит к правилу поворота категорииhat (classful), поскольку для содержит Содержит Понятнотрииндивидуальный очередь, и эти очередь На самом деле даиметь разницу из. Но с точки зрения конфигурации пользователя это classless из,потому чтодляэтоттрииндивидуальныйвнутренний class Пользователь да не может пройти tc Команда configure из. )Код pfifo_fast qdiscдасуществовать жестко запрограммирован, и изменить его конфигурацию невозможно.
priomap
Решать Понятно Как поставить ядроизpacket В какую очередь помещаются приоритетные пакеты. Этот приоритет находится в поле TOS.
Поле TOS занимает 4 бита.
двоичный код | десятичная система | значение |
---|---|---|
1000 | 8 | Minimize Delay (Минимизировать задержку, мд) |
0100 | 4 | Максимальная пропускная способность (мт) |
0010 | 2 | Максимальная надежность (г-н) |
0001 | 1 | Минимизация денежных затрат (MMC) |
0000 | 0 | Нормальный сервис |
Можетиспользоватьtcpdump -i <Имя сетевой карты> -vv
Проверьте значение tos.
Таблица значений TOS:
TOS | Bits | Means | Linux Priority | Queue |
---|---|---|---|---|
0x0 | 0 | Normal Service | 0 Best Effort | 1 |
0x2 | 1 | Minimize Monetary Cost | 1 Filler | 2 |
0x4 | 2 | Maximize Reliability | 0 Best Effort | 1 |
0x6 | 3 | mmc+mr | 0 Best Effort | 1 |
0x8 | 4 | Maximize Throughput | 2 Bulk | 2 |
0xa | 5 | mmc+mt | 2 Bulk | 2 |
0xc | 6 | mr+mt | 2 Bulk | 2 |
0xe | 7 | mmc+mr+mt | 2 Bulk | 2 |
0x10 | 8 | Minimize Delay | 6 Interactive | 0 |
0x12 | 9 | mmc+md | 6 Interactive | 0 |
0x14 | 10 | mr+md | 6 Interactive | 0 |
0x16 | 11 | mmc+mr+md | 6 Interactive | 0 |
0x18 | 12 | mt+md | 4 Int. Bulk | 1 |
0x1a | 13 | mmc+mt+md | 4 Int. Bulk | 1 |
0x1c | 14 | mr+mt+md | 4 Int. Bulk | 1 |
0x1e | 15 | mmc+mr+mt+md | 4 Int. Bulk | 1 |
отправлятьочередьдлина,индивидуальный сетевой интерфейс (интерфейс) параметры,Можетиспользовать ifconfig
Настройки команд. Например,ifconfig eth0 txqueuelen 10
。tcКоманда не может изменить значение параметра。
TBF даодининдивидуальный Простой qdisc,верно ВТрафик не превышает заданную скорость и передается напрямую прозрачно.,нотакжемогу терпетьПревышение заданной скорости и кратковременный джиттер(short bursts in excess of this rate)。 TBF Очень простой, дружественный к сети и процессору. Если вы хотите реализовать только ограничение скорости интерфейса, то TBF да Первый выбор.
Реализация TBF состоит из нескольких частей:
Когда посылка прибудет, токен будет получен из корзины, затем будет собрана информация о пакете и, наконец, токен будет удален из корзины. Сочетание этого алгоритма с потоком токенов и потоком данных приведет к трем возможным сценариям:
скорость передачи данных == token ставка
:каждый Вы можете найти все сумкиприезжатьодининдивидуальныйверноотвечатьизtoken,Затем выйдите прямо из поворота,Никакой задержки.скорость передачи данных < token ставка
:нормальныйприезжать Приходитьиз Данные могут быть своевременнымиотправлятьвыходить,Однако Удалить позжеодининдивидуальный token。 Зависит от В token скорость больше скорости передачи данных,Будет генерировать отставание в сегменте,Крайние случаи будут bucket оккупированный。Если скорость передачи данных внезапно превысит token скорость, просто потребляй эти отставанияиз token . Поэтому отставаниеиз token иметьодининдивидуальныйдополнительные преимущества:Способен выдерживать короткие всплески скорости передачи данных。скорость передачи данных > token ставка
:token Скоро оно закончится и тогда TBF отключится (дроссельная заслонка) на некоторое время。Этот вид ситуация называется overlimit(превысить лимит)。Если посылка возвращенадаисточник Нет Постоянноприезжать Приходить,Произойдет потеря пакетов.Третий вид очень важен.,потому чтодляэто делаетнасможетправда, данные могут быть сформированы с использованием пропускной способности。
Наличие невыполненных токенов позволяет отправлять кратковременные данные о дрожании, превышающие ограничение скорости, без потери пакетов, но продолжающаяся перегрузка приведет к постоянной задержке данных, а затем их отбрасыванию.
Обычно никаких изменений не требуется TBF Конфигурацияпараметр.нода Этида Может Конфигурацияиз。
limit
:потому чтождатьобращаться Можетиспользовать token ибыть вставленнымочередьизКоличество байтов。latency
:каждый Сумкасуществовать TBF серединаМаксимальное время пребывания。随后встречабаза В latency、bucket size、rate и пиковая скорость (если установлена) для расчета limit。burst/buffer/maxburst
bucket изразмер,Единица дабайт。累积Можетиспользоватьиз token При поддержке изMAX байтов( maximum amount of bytes that tokens can be available for instantaneously)。Чем большеизвыпрямительставка(shaping ставки) требует большего размера буфера。mpu
Пакеты «нулевой длины» занимают и не занимают нулевую полосу пропускания.(A zero-sized packet does not use zero пропускная способность). Например, в Ethernet любой пакет из Количества байтов будет не менее 64
。 Minimum Packet Единица (минимальная единица упаковки) определяет наименьший размер, используемый в упаковке. token сумма ( minimal token usage for a packet)。rate
Скорость генерации токенов.Если в настоящее время bucket Есть токен и никакого бана bucket из token удалить действие, которое по умолчанию ,это будетУдалить на полной скорости。если Нетожидать Этот вид ХОРОШОдля,Затем Может устанавливает следующие индивидуальные параметры:
peakrate
Как упоминалось ранее, по умолчанию после отправки пакета приезжать Понятно только иметь возможность token будет немедленно отправлен. Это может быть не то, что вы ожидаете, особенно когда. bucket Очень большое время.
peakrate
определяемый Ведро отправить данные с максимальной скоростью。в целом Приходитьобъяснять,это нужно сделатьиз Сразуда:放ХОРОШОодининдивидуальный Сумка - Время ожидания - Выпуск следующего индивидуального пакета. Рассчитав время ожидания, мы наконец достигнем Понятно peakrate
Эффект。действительныйсередина,Зависит от В Unix По умолчанию из 10ms Предел точного считывания таймера,Если среднийкаждый Сумка 10K bits
, Могу только приехать 1Mbps
peakrate
!(10Kb/10ms = 1000Kbps = 1Mbps
)。mtu/minburst
1Mbit/s
из peakrate
Обычно это не очень полезно, поскольку реальная пропускная способность намного больше этой. достичь более высокого peakrate в одну сторону да: каждый timer tick отправлятьмногоиндивидуальный Сумка,существовать Эффектначальство Сразунравитьсянассоздавать Понятновторойиндивидуальный bucket!этотвторойиндивидуальный bucket По умолчанию имеется только один индивидуальный пакет (по умолчанию to a single пакет), не совсем индивидуальный ведро. Вычислите максимально возможное из peakrate
когда, использовать MTU умножить на 100 (точнее, умножить на HZ номер, например Intel Да 100,Alpha Да 1024)。Случайная очередь Fair (SFQ) — семейство алгоритмов Fair Turn — это отдельная простая реализация. По сравнению с другими алгоритмами,SFQ Менее точный одиннекоторый,Но это также требует меньше вычислений,Результат почти полностью справедлив.
SFQ серединаизосновнойда конверсия (сессия) или поток,Соответствует большую часть времени одному TCP session или UDP stream。каждый conversion Соответствует одному FIFO queue,Затем разделите трафик наприезжать Нет такой же очередь. При отправке данных следуйте round robin кстати, каждый session Отправляйте по очереди.
Этот механизмбудет производство очень справедливое по результатам, а не из-за одного человека conversion Слишком большой и поставь другой conversion из Пропускная способность занята。SFQ Это называется «случайным из» (стохастическим), потому что на самом деле для каждого его не существует. session выделить queue,идаиспользоватьалгоритмХешировать трафик в группу очередей。
ноэтот Сатокайиметьодининдивидуальныйвопрос:многоиндивидуальный session Уилл Мэй Хэш приедеттакой жеодининдивидуальный ведро (хеш-слот), Что, в свою очередь, приводит к каждому session из quota становится меньше и не достигает ожидаемой полосы выпрямления (или скорости)。дляизбегай этогоиндивидуальныйвопрос Проходить Вочевидный,SFQ будет постоянно преобразовывать его, используя алгоритм хеширования.,В конце концов, любой конфликт между двумя сессиями не будет длиться очень долго.,Это займет всего несколько секунд.
SFQ эффективен только тогда, когда фактическая исходящая полоса пропускания уже полностью заполнена.,Это очень важно! в противном случае, Linux Его нет на машине queue,потому чтоэтоттакже Сразубезиспользовать Эффект。буду смотреть позжеприезжатьКак использовать SFQ с другими qdisc объединяется для достижения общего случая из справедливой очередности。
объяснятьизболее явныйнемного:Не существует соответствующей конфигурации выпрямителя из слов, просто существует (соединение modem из) Конфигурация интерфейса Ethernet Установить SFQ бессмысленныйиз。
SFQ В большинстве случаев достаточно параметров по умолчанию.
perturb
каждыймногонемногоВторой
Сразуснова Конфигурация哈希алгоритм。Если этоиндивидуальный Параметры не установлены,Алгоритм хеширования никогда не перенастраивается。 Рекомендуется указать это явно.индивидуальныйпараметр,Не будь пустым,В противном случае могут легко возникнуть вышеупомянутые проблемы с перемещением.quantum
существоватьколесоприезжать Внизодининдивидуальный queue отправлять Извперед,когдавперед queue Разрешить удаление из очереди (dequeue) из максимального количества байтов。по умолчаниюда одининдивидуальный МТУ. Не рекомендуется устанавливать значение меньше MTU изценить。limit
SFQ Максимальное количество пакетов, которые можно кэшировать (превышение этого порога приведет к потере пакетов).Пример:
1$ tc qdisc add dev eth1 root sfq perturb 5
2
3$ tc -s -d qdisc ls
4qdisc sfq 764c: dev eth1 quantum 1514b limit 128p flows 234/1024 perturb 5sec 5 Sent 4812 bytes 62 pkts (dropped 0, overlimits 0)
объяснять:
764c:
:автоматическое распределениеиз handle номер (номер ручки)limit 128p
:Максимальный кэш 128 индивидуальный Сумкаflows 234/1024
:этотиндивидуальный SFQ иметь 1024 индивидуальныйхеш-слот(hash buckets),Чтосередина 234индивидуальныйкогдавпередиметь Ожидание данныхотправлять.perturb 5sec
:каждый 5s Измените алгоритм хеширования.Техническое название | описывать |
---|---|
Дисциплина очередей (правило qdisc, дисциплина очередей) | Управление очередями устройств of устройств) из алгоритма, можетда управления входящими (входящим/входящим )очередь,Также Мэнда управляет исходящей очередью (исходящая/выходная). |
правило root qdisc (корневая дисциплина очередей) | attach приезжатьсетевое оборудованиеиз которого индивидуальныйqдиск. |
Бесклассовый qdisc (бесклассовая дисциплина массового обслуживания) | верно Местоиметь Сумкаодин Видетьтакой или,такой жеждатьвернообращатьсяждатьвернообращаться |
Классы | каждый classful qdisc может включать в себя несколько класс, это все qdisc Видно внутри. верно в каждом индивидуальный класс, тоже да Может потом к нему добавить в Другие class из。потому чтоэтот,одининдивидуальный class из parent Может даодининдивидуальный qdisc,также Можетда Другойодининдивидуальный class。Leaf class дабезиметь child class из сорт. Этот вид class середина attach Понятноодининдивидуальный qdisc , ответственный за class изданныеотправлять.создаватьодининдивидуальный class автоматически attach одининдивидуальный fifo qdisc。икогда Кэтотиндивидуальный class добавить в child class час,этотиндивидуальный fifo qdisc будет автоматически удалено. для leaf class,Можетиспользоватьодининдивидуальныйболее подходящийиз qdisc Приходитьзаменятьэтотиндивидуальныйfifo qдиск. Вы даже можете использовать индивидуальный classful qdisc Чтобы заменить этого человека fifo qdisc, так что Можетдобавить в Другие сорт. |
Классификатор | каждый classful qdisc Нужно решить, куда положить каждую сумку, индивидуальную. сорт. Это делается через классификатор |
Фильтр | Процесс классификации(Classification)Можетпроходить Проходить滤器(filters)Заканчивать。Проходить滤器Сумка Содержит许многоизсудить Условие разрыва, оно будет учитываться после соответствия условию filter Матч прошел успешно. |
Планирование | С помощью классификатора существования из,одининдивидуальный qdisc Можете судить, должен ли тот или иной пакет выйти до того, как будут отправлены другие пакеты, это Процесс индивидуального называется планированием, а «может» упоминается выше, например, приезжатьиз. pfifo_fast qdisc Заканчивать. Планирование также Это называется переупорядочением, но последнее может сбить с толку. |
Формирование | существовать Сумкаотправлятьвыходить Извперед进ХОРОШОЗадерживатьиметь дело с,Добиться того, чтобы приехать в заданный режим с максимальной отдачей процесса. Пластическая хирургиядасуществовать egress Сделать из (ранее упомянутое приезжать Понятно, въезд Направление из не называется формирование, называемое полиции, примечание переводчика). Грубо говоря, процесс отбрасывания пакетов для уменьшения трафика также называется формированием. |
полиция,Решите, стоит ли отбрасывать пакет) | Задерживатьиливыбросить(delaying or сброс) пакета для достижения заданной пропускной способности процесса. существовать Linux начальство, policing Пакеты можно только отбрасывать, но не задерживать. —— Нет «входящей очереди» («входящая queue”)。 |
qdisc, экономящий работу (qdisc по требованию) | work-conserving qdisc Отправьте, как только появится посылка, доступная для отправки. Другими словами, пока доступна сетевая карта. статус отправки (для egress qdisc Приходитьобъяснять),это никогда Нетвстреча Задерживать Сумкаизотправлять. |
qdisc, не сохраняющий работу (qdisc, не предназначенный для использования на ходу) | некоторый qdisc, например TBF, перед отправкой пакета может быть задержка на некоторое время для достижения желаемой пропускной способности. . Это означает, что они иногда не отправляют сообщения, даже если у них есть такая возможность. |
Желтый прямоугольник на рисунке выше представляет Linux Ядро. Крайняя левая стрелка указывает на трафик, поступающий на хост из внешней сети. затем введите Ingress Qdisc,Здесь будет верный пакет для фильтрации (применить фильтры),По результатамРешите, стоит ли выбрасывать эту сумку。этотиндивидуальныйпроцесссказатьдля “Policing”。Этот индивидуальный процесс происходит на очень ранней стадии обработки ядра.,существовать进入大部分Ядробаза础程序Извперед。Поэтому здесь очень эффективно отбрасывать пакеты.,Не потребляет много процессора.
Если будет определено, что этому пакету разрешено прохождение, то его пунктом назначения может быть приложение на локальном компьютере (локальный приложение), и в этом случае оно войдет в ядро IP Стек протоколов выполняет дальнейшую обработку и, наконец, передается соответствующей программе пользовательского режима. Кроме того, этот пункт назначения пакета также может использоваться на других хостах. В этом случае вам необходимо использовать этот компьютер. Egress Classifier Отправьте его еще раз. Хост-программа также может отправлять данные, и в этом случае они также будут передаваться. Egress Classifier отправлять.
Egress Classifier серединавстречаиспользоватьприезжатьоченьмного qdisc。По умолчанию Толькоиметьодининдивидуальный:pfifo_fast
qdisc , он всегда получит пакет, расположенный по адресу qdisc середина Понятно, дождитесь вызова ядра, а затем передайте сетевой интерфейс (сетевой интерфейс) отправляется. .
кначальстворисованиеизда Одна сетевая картаиз Состояние。В случае наличия нескольких сетевых карт каждая сетевая карта имеет входные и выходные перехватчики.。
когда Вход в трафикприезжатьодининдивидуальныйclassful Когда qdisc (далее именуемый CQ), этотиндивидуальныйqdiscвстречанастраиватьиспользоватьФильтрыверно Пакеты данных передаются Классификация Проходить滤,Возвращает индивидуальное значение флага,qdisc поставит в очередь приезжатьверно соответствующую категорию изCQсередина на основе этого индивидуального значения. Следующий процесс аналогичен,постоянно фильтрую,Присоединяйтесь к команде. Если в qdisc нет других фильтров,Пакеты будут поставлены в очередь прибытия изqdiscсередина.
pfifo_fast
qdisc。О ручке:
<major>:<minor>
。1:
,этотда 1:0
Сокращение от из.0
。О классе:
Пример уровня дескриптора.
Пакеты будут проходить только root qdisc Присоединяйтесь к командеили Удаление из очереди(get enqueued and dequeued), который является единственной частью ядра, с которой он взаимодействует. На картинке выше середина зеленая стрелка из пути Может рассматривается как да1:0 → 10:2 Упаковка в процессе цепной передачи. После серии проходов он наконец достигнет класса. 10:2изqdiscизочередьсередина,этот Внутрикаждыйnodeгородиметьодининдивидуальныйfilter, судитьперерывданные Сумкаизпуть распространения,Когда Однако это индивидуальный регулярный процесс,когда Однако МожетдобавлятьодининдивидуальныйfilterНепосредственно разделитьприезжать10:2。:-)
Проходит ли пакет данных через сетевой порт, решает ядро. когда ядро решило удалить одного человека из qdiscсередина packet При отправке на сетевой порт будет вызван root. qdisc из dequeue метод(и будет вызывать только root qdiscиз)。кначальствокартинадляпример,Предположим, что только иметь 10:2иметь ожидает отправки пакетов.,настройка ядраиспользоватьroot метод qdiscизdequeue, корень qdiscполучатьприезжатьнастраиватьиспользовать Из后,Будет переведен на 1:1,1:1 переведет его на следующий уровень,Идите вниз по порядку; каждый qdisc будет запрашивать их братьев и сестер.,и попробуйте вызвать dequeue.
Проще говоря,Вложенный класс (вложенный классы) будут соответствовать только им parent qdiscs связи и никогда не взаимодействуйте напрямую с сетевым портом.。Ядро Тольковстречанастраиватьиспользовать root qdisc из dequeue()
метод.
PRIO qdisc
Трафик не будет формироваться, а будет классифицироваться по установленным фильтрам.
когдаодининдивидуальныйданные Сумка enqueue приезжать PRIO qdisc
После этого оно будет основываться на настройках из filters выбиратьодининдивидуальный class и отправьте посылку приезжать этому человеку сорт. По умолчанию создаются три человека class。каждый class По умолчанию они содержат индивидуальныйчистый FIFO qdisc
,Никакой другой внутренней структуры,Можетиспользовать Что Другие типыиз qdisc заменять ФИФО. Когда из PRIO qdisc Вынимая (удаляя из очереди) индивидуальную сумку, вы сначала попробуете :1. только lower bands/classes Попробую только тогда, когда пакет недоступен higher занятия. Если вы хотите основываться на tc filters И не только да TOS flags При классификации приоритета трафика этот индивидуальный qdisc Это будет очень полезно. Также может быть к этим трем индивидуальным пресетам из classes добавить в дополнительном из qdisc, в конце концов pfifo_fast
Толькоможет предоставить Простойиз FIFO qdisc。
параметриспользование
Следующие индивидуальные параметры могут быть tc
Идентификация:
bands
Нужно создать из band количество。этотиндивидуальныйкаждый band действительныйначальство Даодининдивидуальный сорт. Если вы измените эту индивидуальную конфигурацию, еще нужен такой Изменить, когда же priomap
параметр.priomap
Если не предусмотрено tc filters Чтобы узнать, как классифицировать трафик, PRIO qdisc будет основано на TC_PRIO
Приоритет определяет приоритет. Здесь из работает так же, как pfifo_fast
qdisc дапохожийиз。PRIO qdisc
Внутри band Да класс, по умолчанию имена major:1
、 major:2
、 major:3
, Так что если вы PRIO qdisc
да 10:
,Что tc filter доставлятьприезжать 10:1
трафик имеет более высокий приоритет.
Каждый раз вам приходится решать, какую посылку отправить для проживанияиндивидуальный class При обработке будет вызываться так называемый «классификатор» цепь» (категория цепь для посуды)。этотиндивидуальный chain Зависит от attach приезжать classful qdisc из Местоиметь filter составляют.
Также предыдущий пример индивидуального проживания (включая окончательное проживание) 10:2
)
При постановке в очередь отдельного пакета каждое отдельное ответвление должно запрашивать соответствующие правила фильтрации.
Типичная конфигурация:
1:1
Конфигурацияодининдивидуальный отфильтровать, отправить посылку куда приехать 10:
。10:
Конфигурацияодининдивидуальный отфильтровать, отправить посылку куда приехать10:2
。Другая конфигурация: объединить два индивидуальных filters Все Конфигурациясуществовать 1:1
,нобудет точнее из filter Децентрализовать проживание ниже изпозициониметь помогает повысить производительность。нужно вниманиеизда,Сумкада无法Кначальство Проходить滤из。 Пакет может идти только вниз enqueue。когда dequeue час,они появятся снова,прибыл, чтобы вывести его из сетевого интерфейса.
Варианты использования
Следующее содержание сценария использования нескольких индивидуальных фильтров:
1tc filter add dev eth0 protocol ip prio 1 u32 match ip src 192.168.1.100 flowid 1:1
Эта отдельная команда классифицирует сетевой трафик, исходящий с IP-адреса для 192.168.1.100изприезжать1:1изочередьсередина.1tc filter add dev eth0 protocol ip prio 1 u32 match ip sport 80 0xffff flowid 1:1
Эта отдельная команда классифицирует сетевой трафик, поступающий с порта номер 80изприезжать1:1изочередьсередина.1tc filter add dev eth0 protocol ip prio 1 u32 match ip protocol 6 0xff flowid 1:1
Эта отдельная команда классифицирует сетевой трафик по протоколу TCP на 1:1изочередьсередина. Ниже приведены параметры приведенной выше команды:
tc filter add
:добавить индивидуальный фильтр правил.dev eth0
:Укажите для фильтрацииизсетьинтерфейсдляeth0。protocol ip
:Укажите для фильтрацииизпротоколтипдляIPпротокол。prio 1
:Укажите правила фильтрацииизприоритетдля1,Чем меньше число, тем выше приоритет.u32
:обозначениеиспользоватьu32Правила сопоставления фильтров。match
:Укажите правила соответствия。ip src 192.168.1.100
:Укажите соответствующий источникIPадресдля192.168.1.100изсетевой трафик。flowid 1:1
:Указывает, что оно будет соответствоватьизсетевой трафик Классификацияприезжать1:1изочередьсередина。ip sport 80 0xffff
:Укажите соответствующий источникномер портадля80изсетевой трафик。ip protocol 6 0xff
:Укажите соответствиеTCPпротоколизсетевой трафик。Несмотря на использование TC-фильтра «Можетверно трафик» для точного управления,нода Конфигурацияпоказыватьи Легко увидетьБолее сложный,Чем тоньше управление, тем больше параметров задействовано.,Буровая платформа Хаоса скрывает эти детали конфигурации.,Пользователю необходимо только ввести значение параметра,Остальное оставьте Платформе Хаоса. Например, проводите повторные тренировки сети.,Требуется, конечно, конкретный трафик для повторных тренировок.,Если ручная настройка полностью принята,Большая загруженность и вероятность ошибок,Платформа Хаоса объединяет это в одно атомарное действие.,Удобно и быстро。
существоватьсетевой трафикконтрольсередина,TCсерединаизqdisc (правило очередности) является очень важной индивидуальной концепцией. через qdisc,Возможно, к сетевому трафику применяются такие операции, как поворот, планирование и ограничение скорости.,Таким образом достигается точный контроль и управление сетевым трафиком. существуетэта статьясередина,Простойпредставлять Понятно Правила поворота без категориии Категорияизочередьправилода Два общихизqdiscтехнология。
существоватьдействительныйотвечатьиспользоватьсередина,Необходимо выбрать подходящую технологию изготовления дисков в соответствии с реальной ситуацией. Если сетевой трафик относительно прост,«Выберите неклассифицированные правила очереди, если вам нужен точный контроль сетевого трафика»;,Можетвыбирать Категорияизочередьправило。такой При чтении также необходимо обратить внимание на параметр конфигурации qdiscиз номер, напримерпропускная способность、Задерживать、оставлять Сумкаждатьпараметр,Для достижения более совершенного контроля и управления сетевым трафиком.
TC Хотя qdisciz является мощным инструментом, он не только обеспечивает точный контроль и управление сетевым трафиком, но также использует qdisciz для настройки параметров. напримерпропускная способность、Задерживать、оставлять Сумкаждатьпараметрмоделированиеодиннекоторыйсеть方面из Сценарий отказа,Может проводит сетевые учения,Но да также можно узнать из краткого описания этой статьи середина,Настройка qdisc на самом деле довольно сложна.,Если есть необходимость в сетевых тренировках,МожетиспользоватьПлатформа Tencent Cloud Chaos Drill,Обеспечьте понимание различных типов сетей из-за неисправностей,ЧтосерединаодиннекоторыйнапримерПотеря сетевых пакетов, повреждение сетиждать Сценарий отказа Сразудабаза Вtc qdiscвыполнитьиз,Может Готов из коробки,Иди и испытай это~