HOWTO по управлению трафиком с помощью tcng и HTB (ЛП) - Страница 3
Изменить размер шрифта:
### -- в качестве дополнительной меры, вы можете переопределить местоположение утилит# tc и tcc, например:## tc=/usr/local/bin/tc# tcc=/usr/local/tcng/bin/tcc##3.1. Использование tcng для ограничения входящего потока
Пример 2. /etc/sysconfig/tcng/class-selection-path.tcc
/* * Простой пример с комментариями файла управления трафиком для tcng. * * Martin A. Brown <[email protected]">[email protected]> * * Пример: Использование алгоритма выбора класса. * * */#include "fields.tc"[1]#include "ports.tc"#define INTERFACE eth0[2]dev INTERFACE { egress {[3] /* при использовании алгоритма выбора класса, вначале указываются фильтры! DSmark */[4] class ( <$ssh> ) if tcp_sport == 22 && ip_tos_delay == 1 ; class ( <$audio> ) if tcp_sport == 554 || tcp_dport == 7070 ; class ( <$bulk> ) if tcp_sport == PORT_SSH || tcp_dport == PORT_HTTP ;[5] class ( <$other> ) if 1 ;[6] /* секция, в которой мы конфигурируем дисциплины обработки очередей и классы */ htb () {[7] class ( rate 600kbps, ceil 600kbps ) {[8] $ssh = class ( rate 64kbps, ceil 128kbps ) { sfq; } ; [9]$audio = class ( rate 128kbps, ceil 128kbps ) { sfq; } ; $bulk = class ( rate 256kbps, ceil 512kbps ) { sfq; } ; $other = class ( rate 128kbps, ceil 384kbps ) { sfq; } ;[10] } } }}3.2. Использование двухскоростного трехцветного измерителя
Пример 3. /etc/sysconfig/tcng/two-rate-three-color-meter.tcc
/* * Простой пример с комментариями файла управления трафиком для tcng. * * Martin A. Brown <[email protected]">[email protected]> * * Пример: Использование измерителя. * * */#define EXCEPTION 192.168.137.50 #define INTERFACE eth0$meter = trTCM( cir 128kbps, cbs 10kB, pir 256kbps, pbs 10kB );[11]dev eth0 { egress { class ( <$full> ) if ip_src == EXCEPTION ;[12] class ( <$fast> ) if trTCM_green( $meter ) ;[13] class ( <$slow> ) if trTCM_yellow( $meter ) ;[14] drop if trTCM_red( $meter ) ;[15] htb { class ( rate 600kbps, ceil 600kbps ) { $fast = class ( rate 256kbps, ceil 256kbps ) { sfq; } ; $slow = class ( rate 128kbps, ceil 128kbps ) { sfq; } ; $full = class ( rate 600kbps, ceil 600kbps ) { sfq; } ; } } }}4. Разнообразные замечания
К счастью, tcng положил конец маленькому неудобству в использовании tc. Ниже приводится таблица соответствия между сокращениями этих утилит с русским языком.