주 메뉴 열기

wwiki β

Queueing Disciplines

Jhkim (토론 | 기여)님의 2020년 11월 20일 (금) 02:09 판 (새 문서: {{DISPLAYTITLE:Queueing Disciplines}} tc명령어에서 qdisc의 묶음 === Simple classless Queueing Disciplines === 데이터를 수락한 후, qdisc에 따라서 일정을...)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)


tc명령어에서 qdisc의 묶음

목차

Simple classless Queueing Disciplines

데이터를 수락한 후, qdisc에 따라서 일정을 조정, 지연 또는 삭제한다.

  • pfifo_fast(First In First Out): 설정이 없는 하드웨어 기본값
  • Token Bucket Filter(TBF): 인터페이스 속도를 늦추는
  • Stochastic Fairness Queueing(SFQ): round robin(원형큐를 돌면서 시간할당량만큼 처리)처럼 확률적으로 공정한 대기열, 각 세션이 기회를 얻는다.

Token Bucket Filter (TBF)

인터페이스의 속도를 늦추기 위해서 간단하고 쉽다.

#tc qdisc add dev eth1 root tbf rate 220kbit latency 50ms burst 1540 

설명:

qdisc - 대기열 규칙 오브젝트를 사용하겠다.
latency - 지연값(number of bytes that can be queued waiting for tokens to become available.)
burst - 버킷 크기(Size of the bucket, in bytes.)
rate - speedknob

Stochastic Fairness Queueing (SFQ)

라운드 로빈 방식으로 각 세션이 턴마다 데이터를 보낼 수 있는 기회를 제공한다. 간격 내에서 해싱 알고리즘을 변경한다. 단일 세션은 나가는 대역폭을 지배할 수 없다.

#tc qdisc add dev eth1 root sfq perturb 10

설명:

qdisc - qdisc사용
perturb - 해싱을 한번에 재구성할 시간(초)

Testing Classless Queueing

실행상태를 체크하기 위해서

#tc -s -d qdisc show dev eth1

삭제하려면

#tc qdisc del dev eth1 root

Classful Queueing Disciplines

트래픽의 우선순위를 다른 종류로 설정하도록 도와준다.

  • Class Based Queueing (CBQ): 오래되고 복합한
  • Hierarchical Token Bucket (HTB)

Hierarchical Token Bucket (HTB)