Глава 3. Policing: различия между версиями

Материал из Juniper Exam Wiki
Перейти к навигации Перейти к поиску
(Новая страница: «== В общем == - Первая ступень управления трафиком при заторах. Использует bandwidth threshold and max b…»)
 
Строка 1: Строка 1:
== В общем ==
== В общем ==
 
*Первая ступень управления трафиком при заторах. Использует bandwidth threshold and max burst size. Может управлять трафиком, который превысил оба порога (не только шейпить).
- Первая ступень управления трафиком при заторах. Использует bandwidth threshold and max burst size. Может управлять трафиком, который превысил оба порога.
*Применяются ограничения bandwidth для вх и исх трафика.
 
*Обеспечивает соблюдение SLA.
- Применяются ограничения bandwidth для вх и исх трафика.
*Определяет трафик как: in-profile (трафик не превысивший threshold) и out-profile (трафик, превысивший threshold).
 
- Обеспечивает соблюдение SLA.
 
- Определяет трафик как: in-profile и out-profile.


=== Особенности ===
=== Особенности ===
 
- Для создания policer:
- Создается:
:-bandwidth threshold + max burst size
:- policer, применяется на интерфейс.
:-действие: reject, discard, ...
:- policer, он указывается в качестве действия внутри firewall filter, firewall filter вешается на интерфейс.
- Применяется:
 
:- на интерфейс.
- Использует token-bucket algorithm: есть некий burst, до того, как начать влиять на трафик.
:- в качестве действия внутри firewall filter, firewall filter вешается на интерфейс.
- Использует token-bucket алгоритм: есть некий burst, до того, как начать влиять на трафик.


=== Hard/Soft ===
=== Hard/Soft ===
'''Hard''': Все что выходит за рамки ограничения - дропается.


Hard: Все что выходит за рамки ограничения - дропается.
'''Soft''': Трафик который превышает лимит:  
 
#Он "поступает" на устройство, но направляется в определенный forwarding class.
Soft: Трафик который превышает лимит:  
#Он попадает на устройство, но ему присваивается определенное значение PLP, по которому в случае заторов он будет отброшен шедулерами.
 
1. Он "поступает" на устройство, но направляется в определенный forwarding class.
 
2. Он попадает на устройство, но ему присваивается опр значение PLP, по которому в случае заторов он будет отброшен шедулерами.


=== Параметры ===
=== Параметры ===


'''CIR, CBS''': commited information rate/ burst size: зеленый - кол-во трафика < CBS - точняк пройдет. Ед. измерения: бит/с , байт.
'''CIR, CBS''': commited information rate (бит/с) / burst size (байт): зеленый - кол-во трафика < CBS - точняк пройдет.


'''PIR/EIR, PBS/EBS''': peak/exceed information rate, peak/exceed burst size: то, что < PBS - пройдет, но в случае заторов пакеты могут быть дропнуты. То что больше - будет дропаться. Ед. измерения: бит/с, байт.
'''PIR, PBS/EBS''': peak information rate (бит/с), peak/exceed burst size (байт): то, что < PBS - пройдет, но в случае заторов пакеты могут быть дропнуты. То что больше - будет дропаться.


== Single-rate two-color policer ==
== Single-rate two-color policer ==

Версия 21:14, 15 января 2017

В общем

  • Первая ступень управления трафиком при заторах. Использует bandwidth threshold and max burst size. Может управлять трафиком, который превысил оба порога (не только шейпить).
  • Применяются ограничения bandwidth для вх и исх трафика.
  • Обеспечивает соблюдение SLA.
  • Определяет трафик как: in-profile (трафик не превысивший threshold) и out-profile (трафик, превысивший threshold).

Особенности

- Для создания policer:

-bandwidth threshold + max burst size
-действие: reject, discard, ...

- Применяется:

- на интерфейс.
- в качестве действия внутри firewall filter, firewall filter вешается на интерфейс.

- Использует token-bucket алгоритм: есть некий burst, до того, как начать влиять на трафик.

Hard/Soft

Hard: Все что выходит за рамки ограничения - дропается.

Soft: Трафик который превышает лимит:

  1. Он "поступает" на устройство, но направляется в определенный forwarding class.
  2. Он попадает на устройство, но ему присваивается определенное значение PLP, по которому в случае заторов он будет отброшен шедулерами.

Параметры

CIR, CBS: commited information rate (бит/с) / burst size (байт): зеленый - кол-во трафика < CBS - точняк пройдет.

PIR, PBS/EBS: peak information rate (бит/с), peak/exceed burst size (байт): то, что < PBS - пройдет, но в случае заторов пакеты могут быть дропнуты. То что больше - будет дропаться.

Single-rate two-color policer

- One rate threshold (CIR)

- One burst size threshold, creates 2 colors. (CBS)

- Traffic exceed CIR + CBS => dropped / marked / add PLP

Tricolor marking policers

Single-rate tricolor marking policy

- One rate threshold (CIR)

- Two burst size threshold (CBS, EBS). Creates 3 colors.

- Markings:

< CBS - green = low PLP

CBS < x < EBS - yellow = medium-high PLP

> EBS - red - high PLP

Two-rate tricolor marking policy

- Two rates (CIR, PIR). Creating 3 colors.

- Two burst size threshold (CBS, PBS).

- Markings:

< CIR+CBS - green = low PLP

CIR+CBS < x < PIR+PBS - yellow = medium-low PLP

> PIR+PBS - red = high PLP

Color-blind mode

Если приходит не помеченный пакет, то он обрабатывается как и все остальные, ему присваивается какой-то уровень PLP

Color-aware mode

При обработке single-rate tricolor и two-rate tricolor на выходе получается пакет с результирующей меткой + учитывается текущее прохождение пакета.

Статус может увеличиваться, оставаться прежним, но не уменьшаться.

по умолчанию tricolor mode включён только на М120 и МХ серии

Application

Interface policers

- Не часть firewall filter.

- Можно применить к: protocol family, logical int, physical int.

- Можно применить на input и output.

Configuration

set firewall policer int-poli if-exceeding bandwidth-limit 100m
set firewall policer int-poli if-exceeding burst-size-limit 250k
set firewall policer int-poli then discard | loss-priority | forwarding-class
set interfaces xe-0/0/3 unit 351 family inet policer input int-poli
set interfaces xe-0/0/3 unit 351 family inet6 policer input int-poli

В таком случае threshold по трафику на каждую family будет 100 Мбит.

Logical interface policers: полисер применяется к family на интерфейсе, но threshold теперь применяется ко всем family в unit сразу. То есть в нашем случае в общем на xe-0/0/3.351 будет ограничение 100m.

Весь полисер строится также, но нужно добавить:

set firewall policer int-poli logical-interface-policer

Все остальное тоже самое, применяется полисер также.

Policing using a firewall filter

- Можно применять полисеры внутри ff: тогда в then нужно указать не терминирующее действие.

- Могут применяться только к family

- Могут применяться на in/out

Configuration

hard:

set firewall policer hard if-exceeding bandwidth-limit 100m
set firewall policer hard if-exceeding burst-size-limit 200k
set firewall policer hard then discard
set firewall family inet filter hard-f term A from source-address 192.168.1.0/24
set firewall family inet filter hard-f term A then policer hard
set firewall family inet filter hard-f term A then accept
set firewall family inet filter hard-f term all-other then accept

soft:

set firewall policer soft if-exceeding bandwidth-limit 100m
set firewall policer soft if-exceeding burst-size-limit 200k
set firewall policer soft then forwarding-class ef
set firewall family inet filter soft-f term A from source-address 192.168.1.0/24
set firewall family inet filter soft-f term A then policer soft
set firewall family inet filter soft-f term A then forwarding-class af1
set firewall family inet filter soft-f term A then accept
set firewall family inet filter soft-f term all-other then accept
set interfaces ge-1/0/6 unit 910 family inet filter soft-f

В этом случае трафику, in-of-profile будет назначен fw-class af1, а трафику попадающему в out-of-profile - ef.

Filter-specific policer: применяется к term, на все термы суммарно будет одно общее ограничение.

set firewall policer hard filter-specific
set firewall family inet filter hard-f term A from source-address 192.168.1.0/24
set firewall family inet filter hard-f term A then policer hard
set firewall family inet filter hard-f term A then accept
set firewall family inet filter hard-f term B from source-address 192.168.2.0/24
set firewall family inet filter hard-f term B then policer hard
set firewall family inet filter hard-f term B then accept
set firewall family inet filter hard-f term all-other then accept
set interfaces ge-1/0/6 unit 910 family inet filter hard-f

В случае с single-rate/two-rate tricolor marking полисеры и фильтры выглядят по-другому:

set firewall three-color-policer srTCM-A single-rate color-blind
set firewall three-color-policer srTCM-A single-rate committed-information-rate 500m
set firewall three-color-policer srTCM-A single-rate committed-burst-size 1m
set firewall three-color-policer srTCM-A single-rate excess-burst-size 5m

set firewall family inet filter TCM-fil term A then three-color-policer single-rate srTCM-A

ну и для two-rate не сложно догадаться как будет выглядеть.

Physical interface policer

Physical interface policing: дает возможность создать аггрегированный полисер для одного физического интерфейса. Может быть полезным, если хочется создать общий полисер для разных family и разных unit на одном физическом интерфейсе.

set firewall policer int-poli physical-interface-policer
set firewall policer int-poli if-exceeding bandwidth-limit 100m
set firewall policer int-poli if-exceeding burst-size-limit 200k
set firewall policer int-poli then forwarding-class best-effort
set firewall family inet filter phys-int physical-interface-filter
set firewall family inet filter phys-int term A then policer int-poli
set firewall family inet filter phys-int term A then accept
set interfaces ge-1/0/5 unit 0 family inet filter input phys-int
set interfaces ge-1/0/5 unit 0 family inet6 filter input phys-int
set interfaces ge-1/0/5 unit 2 family inet filter input phys-int
set interfaces ge-1/0/5 unit 2 family inet6 filter input phys-int

В этом случае полисер 100 Мбит будет общим для всего физического интерфейса.

Policiers + Firewalls

Можно одновременно повесить на интерфейс и policer и filter.

Вх. трафик будет обрабатываться: 1.policer => 2.filter

Исх. трафик будет обрабатываться: 1.filter => 1.policer