QoS Flashcards
QoS
[리드] 한정된 NW 대역폭 효율적 사용
[정의] 네트워크 트래픽 정책별 제어기반 인터넷 종단간 서비스 품질 확보 기술
[품질지표/제어기법] (대지터패)
- 대역폭(대역폭확장, DWDM, MPEG4), 지연(MPLS, CDN, 라우팅 고속화), 패킷손실(혼잡회피, IPv6,RED, WRED), 지터(Dos/DDos 대응, 신뢰경로, 전용선)
[구현기술]
- 패킷 예약 : IntServ, DiffServ
- 혼잡회피 (TRW) : Tail-Drop, RED(Random Early Drop), WRED(Weighted RED)
- 트래픽 보장 : Traffic Policy(기준 이상 Drop), Traffic Shaping(버퍼에 패킷 임시 저장)
- 트래픽 쉐이핑 (토리) : Token Bucket(속도 제어), Leaky Bucket(용량 제어), Hybrid
- Queuing : FIFO, PQ, CBQ, CQ, WFQ, CBWFQ
DiffServ
[정의] 패킷 DS(Diff-Service) 필드에 DSCP(DS Code Point)를 마킹하여 서비스 클래스 별 PHB(Per Hop Behavior) 우선순위 기반 QoS 보장 서비스 모델
[특징] IntServ 모델의 현실적 한계를 극복, 흐름 집합 단위로 특정 패킷에 대한 차별화 된 서비스 수행
[절차] Packet –> Edge - Core - Core - Edge –> 수신
<Edge>
1. 입력 트래픽 분류하여 정의된 DSCP 마킹
2. 마킹된 DSCP 기반 정의된 CoS(Condition) 적용
3. 절차대로 수행되는 상태 확인/측정
<Core>
1. 입력 트래픽 분류, 해당 DSCP 기반 Forwarding
2. 모든 Core Node에서 동일한 절차 수행
</Core></Edge>
IntServ
[정의] 종단 간 개별 트래픽 흐름 단위로 경로 상 라우터 자원 예약(RSVP) 기반 QoS 보장 모델
[특징] RSVP 프로토콜
[절차] Tspec 전송 → path 메시지 → RESV 응답 → 라우터 버퍼 할당
1. TSpec 포함 Path 메시지 전달
2. RESV 메시지로 응답
Traffic Policing
[정의] 네트워크 혼잡 회피를 위해 정해진 기준 초과 트래픽을 Drop 하여 대역폭을 제어하는 기술
[특징]
- 대역폭 이상 트래픽 발생 시 Drop
- 실시간성이 중요한 스트리밍, 영상/음성 서비스에 적합
[구성요소]
- Meter : 수신되는 Packet의 유입률(bps)를 측정
- Drop : 유입률이 약속된 대역폭 이상이면 Packt을 Drop
- Mark : 유입률이 약속된 대역폭 이하이면 Marking후 포워딩
[알고리즘] RED, WRED, Tail Dop
[비교] Traffic Shaping vs Traffic Policing
- 동작방식 : 버퍼저장 / DROP
- 구성요소 : CBS, CIR, EBS / Meter, Drop, Mark
- 적용 : 유입패킷 임시 저장, Outbound / Inbound/Outbound 모두 적용 , 주로 Inbound
- 장점 : 초과패킷 삭제 가능성 낮은, TCP 응용 / 구현용이, 실시간 응용 적합
- 단점 : 버퍼추가지연발생, 메모리 점유, 구현어려움 / 전체출력속도저하, TCP 기반 패킷손실 발생
- 알고리즘 : Leaky Bucket, Token Bucket, Hybrid Bucket / RED, WRED, Tail Dop
Traffic Shaping
[정의] 기준 초과된 트래픽에 대해 버퍼(메모리)에 저장 후 기준 이하로 트래픽 저하 시 내보내는 기술
[특징]
- 대역폭 이상 트래픽 발생 시 버퍼에 저장 (패킷 버퍼 필요)
- 전송 신뢰성이 중요한 데이터 전송 서비스에 적합
[구성요소]
- CBS : 허용 버스트 크기(Committed Burst Size)
- CIR : 허용 정보율 (Committed Information Rate), CIR = CBS / T bps
- EBS : 초과 버스트 크기 (Excess Burst Size)
[알고리즘] Leaky Bucket (버킷 용량), Token Bucket(토큰 유무에 따라 흐름 제어), Hybrid Bucket
리키 버킷(Leaky Bucket)
[정의] 불규칙적 인입 트래픽 데이터율을 평균으로 만들어 버스트 트래픽을 고정 데이터율 트래픽으로 조정하는 트래픽 처리량 제어 기술
[알고리즘]
1. 클럭의 틱에서 카운터를 버킷 크기 n 으로 초기화
2. n 이 패킷 크기보다 크면 패킷을 송신하고 카운터를 패킷 크기만큼 감소
3. n 이 패킷 크기보다 작을 때까지 ②단계를 반복
4. 카운터를 리셋(reset)하고 ①단계로 이동
토큰 버킷
[정의] 규정된 최고 데이터율 범위 내 버스트 트래픽을 허용하도록 트래픽 제어용 토큰의 유무에 따라 트래픽을 조정하는 트래픽 처리량 제어 기술
[알고리즘]
1. 토큰을 카운터로 구현하며, 0 으로 초기화
2. 클럭의 틱 마다 토큰이 추가되며 카운터가 1 씩 증가
3. 데이터 단위(unit) 하나가 송신될 때 마다 카운터가 1 씩 감소
4. ② 단계와 ③단계를 반복하며 카운터가 0 이 되면 호스트는 데이터 송신 불가
* 리키 버킷은 트래픽의 속도를 제한, 토큰 버킷은 트래픽이 사용하는 토큰을 제한하며 두 기술의 복합 사용 가능
패킷 스케줄링
[패킷 스케줄링 기법]
- FIFO : 단순 구조, QoS 적용 불가
- PQ (Priority Queue) : 차등 트래픽 서비스, 기아 현상
- CBQ(Class Based Queuing)
- CQ (Custom Queue) : 클래스 별 Round-Robin, 16개의 클래스로 분류, PQ 문제 해결, 차등 불가
- WFQ (Weighted Fair Queue) : 클래스 별 가중치, 4096개의 클래스, PQ와 CQ 단점을 해결, 혼잡 회피 방식 Tail-Drop만 가능, RED, WRED 사용 불가
- CBWFQ (Class-Base WFQ) : 클래스마다 대역폭, 가중치, 패킷 제한 정책 정의, WFQ의 단점을 해결, 긴급 트래픽도 정책에 따라 대기
- LLQ (Low Latency Queue) : 긴급 트래픽 PQ 적용, 나머지 트래픽 CBWFQ적용, Voice 트래픽 처리 가능, 구현 및 정책 적용 어려움
[Queue Full발생시 Congestion Avoidance 기법]
1. Tail-Drop, 2. RED, 3. WRED
혼잡회피
[정의] 네트워크 혼잡 회피 위해 전송 장비 큐(Queue) 인입 패킷이 처리 패킷보다 많은 상황에서 패
킷 처리하는 기법
[회피 기법]
- Tail Drop : Queue Full 상태 시 이후 인입 패킷 Drop (No / Tail-Drop)
- RED (Random Early Drop) : 3단계 패킷 분류 (No / Random / Tail-Drop)
- WRED (Weight Random Early Drop) : 패킷 우선순위 기반 최소 임계값 기준 변경 (No/ Random / Tail-Drop)