큐 서비스 정책 (Queue Service Discipline)

Download Report

Transcript 큐 서비스 정책 (Queue Service Discipline)

큐 서비스 정책
(Queue Service Discipline)
1998.10.20.
컴퓨터 공학과
송민석
CS Lab.
1
개요 (Outline)




소개 (Introduction)
큐 서비스 정책의 요구 조건
대표적인 스케줄러
작업 비보존 (Non-work-conserving) 큐 서비스 정책



RCSP (Rate-Controlled Static Priority)
Stop-and-Go
작업 보존(Work-conserving) 큐 서비스 정책


WFQ (Weighted Fair Queuing)
WF2Q (Worst Case Fair Weighted Fair Queuing)
CS Lab.
2
소개
1. 큐 서비스 정책이란?
2. 입력 큐잉(Input queuing)과 출력 큐잉(Output queuing)
3. 큐 서비스 정책이 할 수 있는 일은?
CS Lab.
3
큐 서비스 정책이란?

장소(Where)



정의


스위치의 출력 큐(at the output of the switch or router)
스위치의 입력 큐(at the input of the switch or router)
A mechanism that determines which packet will be
transmitted next on the output link
동의어



트래픽 스케줄링 알고리즘
셀 스케줄링 알고리즘
스케줄링 정책
CS Lab.
4
스위치의 구조
CAC
SM
A
BA
Cell
Switch
Fabric
B
A AAA
SM :switch management, CAC: Connection Admission Control
CS Lab.
5
입력 큐잉과 출력 큐잉의 비교

입력 큐잉



매칭 (matching)
HOL (Head-of-Line) blocking problem
출력 큐잉

스케줄링
 작업 보존(work-conserving)
 작업 비보존(non-work-conserving)

확장성(scalability)의 문제점
CS Lab.
6
큐 서비스 정책이 할 수 있는 일은?


서로 다른 연결에 다른 QoS 부여
적절한 큐 서비스 정책의 선택




대역폭 (bandwidth) 보장
종단간 지연 한계 (end-to-end delay bound) 보장
지터 한계 (delay jitter bound) 보장
공평성 (fairness) 보장
CS Lab.
7
스케줄링 정책의 요구 사항
1.공평성(Fairness)
2.성능 보장(Performance guarantees)
3.구현의 용이성(Ease of implementation)
4.다른 요구 사항(Other requirements)
CS Lab.
8
공평성

스케줄링 정책의 주요 기능



대역폭 할당
An allocation is fair if it satisfies max-min
weighted fairness
Max-min weighted fairness



각 연결에 가중(weight)에 맞는 대역폭을 할당
어느 연결도 가중 이상의 대역폭을 할당 받을 수 없음
초과되는 대역폭은 연결들의 가중에 비례해서 분배됨
CS Lab.
9
성능 보장

일반적인 인자들 (Common parameters)





대역폭 (bandwidth)
지연 (delay)
지터 (delay-jitter)
손실 (loss)
지연 요구사항 (Requirements of delay behaviors)



다른 연결의 트래픽 형태에 영향을 받지 않음.
연결의 개수에 영향을 받지 않음
지연 한계를 제어할 수 있는 기능
CS Lab.
10
구현의 용이성

고속의 네트워크 (High Speed network)


짧은 계산 시간
하드웨어 구현의 용이성

버퍼 용량
CS Lab.
11
기타 요구 사항




연결의 분리 (Isolation of flows)
네트워크 이용률 (Utilization)
확장 가능성 (Scalability)
연결 수락 제어의 용이성 (Ease of admission
control)
CS Lab.
12
대표적인 스케줄러
(Representative Scheduler)
1.스케줄러의 구분
2.가상 시계 (Virtual Clock)
3.GPS (Generalized Processor Sharing)
4.WRR (Weighted Round Robin)
5.Delay Earliest Due Date
CS Lab.
13
스케줄러의 구분

작업 보존과 작업 비보존 방식

작업 보존
 output link is never idle

작업 비보존
 delay packets till eligible

정렬 우선 순위(sorted priority queue) 방식과
프레임(frame) 방식

정렬 우선순위 방식
 타임 스탬프에 의한 큐의 정렬

프레임 방식
 프레임이란 시간 단위를 통한 패킷의 서비스
CS Lab.
14
가상 시계 방식


시 분할 방식(Time division multiplexing)의 모방
가상 시계

시분할 방식으로 했을 때의 서비스 시간
TS i  max( AT , TSi
k

k 1
)
Lk i
i
서비스 방식

가상 시계 값이 적은 패킷부터 서비스
CS Lab.
15
GPS (Generalized Processor Sharing)

가장 이상적인(ideal) 방식



유체 모델에 기반
max-min weighted fairness의 만족
서비스 방법
CS Lab.
16
WRR 방식

가정



동작 개요


비어 있지 않은 큐에서 가중만큼 패킷을 서비스
장점


각 연결은 가중을 미리 할당 받음
각 연결은 따로 큐를 따로 가지고 있음
단순성
단점


패킷 길이의 평균값을 알아야 함
ATM 망에는 적합하나, 인터넷 망에는 부적합
CS Lab.
17
Delay Earliest Due Date

패킷에 데드라인 부여


대역폭


Deadline = expected arrival time +delay bound
장점


PCR (Peak Cell Rate) 로 할 당
데드라인 계산 방법


데드라인 순서에 따른 서비스
대역폭과 지연 한계의 분리
단점


공평성
구현의 복잡함
CS Lab.
18
RCSP and Stop-and-Go
Multimedia systems journal 96
CS Lab.
19
Stop-and-Go

프레임 기반 방식

arriving frame , departing frame
입력프레임
출력프레임
패킷
CS Lab.
20
Stop-and-Go

특성



(r,T) smooth : T 프레임동안 전달된 비트의 총 수가 rT 보다
작을때
정리 1 : 네트워크 진입점에서 (r,T) smoothness 를
만족하고,stop-and-go 정책을 사용하면, 네트워크 전체의
각 서버에서는 (r,T) smoothness 를 만족한다.
r= (3*packet_size)/T bits/sec
0
T
2T
3T
0
T
2T
3T
CS Lab.
21
Stop-and-Go (멀티프레임 정책)

Stop-and-Go 단일프레임 정책의 단점

지연 한계와 대역폭의 강한 상호 관계
 지연을 줄이기 위해서는 작은 T 가 필요
 대역폭 할당 단위를 줄이기 위해서는 큰 T 가 필요

멀티프레임 정책
CS Lab.
22
RCSP


조절기(regulator) 와 스케줄러(scheduler)의 분리
DJ (delay jitter) regulator

서비스 가능 시간(eligibility time)의 계산
ET0k  AT0k
ETi k  ETi k1  d i 1   i
ETi k 1  ETi k  AT0k 1  AT0k


정리2 : 만약 확정적인 지연 한계가 보장이 된다면,
네트워크 진입점에서의 트래픽 형태와 각 스위치에서
regulator 의 결과 의 트래픽 형태는 동일하다.
스케줄러

비선점형 우선 순위 큐
CS Lab.
23
RCSP

RCSP 의 구조
CS Lab.
24
Stop-and-Go 과 RCSP의 비교

Stop-and-Go 와 RCSP 의 공통점



Stop-and-Go 와 RCSP 의 차이점


트래픽 특성의 유지
다양한 우선순위 레벨 정책을 사용
지연 한계와 대역폭 할당의 연관성
Stop-and-Go 의 비율 제어화

정리3 : n 개의 프레임 크기를 갖는 멀티프레임 Stop-andGo 서버는 DJ regulator 와 n 개의 정적 우선순위
스케줄러로 구현이 가능하다.
ETi k  ATi k  Aheadik1  
CS Lab.
25
Stop-and-Go 과 RCSP의 비교

Rate-controlled Stop-and-Go 방식과 RCSP 의
차이점
CS Lab.
26
연결 수락 제어 및 종단간 지연
(Stop-and-Go)

정리1

n개의 프레임 크기를 갖는 Stop-and-Go 서버에서 Cq 가
q
레벨 q에서의 연결의 집합이고, Cq 가 (rj , Tq ) 를
만족하고,최대 패킷 크기를 S max 라고 하면, 다음의
경우에 Stop-and-go 서버의 기능을 만족한다.
( l ;링크
스피드)
m
q
 q 1 jCq rj Tm  S max  lTm

정리2

프레임 크기가 T 이고 정리 1이 유지되면 종단간 지연
시간은 다음과 같다. (단 ,  i : i-1 스위치에서 i
스위치까지의 지연시간)
D  in2  i
nT  D  2nT
CS Lab.
27
연결 수락 제어 및 종단간 지연
(RCSP)

RCSP에서 종단간 지연을 결정 짓는 요소



Holding time : 조절기에서 기다리는 시간
Waiting time : 스케줄러에서 기다리는 시간
정리 3





조건  i : upper bound delay ,  i^
: low bound
delay
네트워크 진입점에서 b j (.) 제한 함수를 만족한다.
n
n
종단간 지연 :  i 1 Di   i  2  i
^
지연 지터 : d n   n   n
(단, Di : i 스위치에서의 모든 패킷의 최대 지연)
CS Lab.
28
연결 수락 제어와 유체 모델 분석

Backlog, Busy period
CS Lab.
29
연결 수락 제어와 유체 모델 분석

정리



Stop-and-Go 서버


maximum busy-period : 작업 보존 서버의 최대 지연
maximum Backlog : FCFS 서버의 지연 한계
busy period < T
RCSP 서버

단일 우선 순위의 지연 한계
 maximum backlog / link speed

우선순위가 여러 개일 때 지연 한계:
 보다 복잡한 테스트 요구

요점
 Bound < maximum busy-period
CS Lab.
30
버퍼 공간

버퍼 공간을 결정 짓는 요소



패킷이 스위치에서 머무는 최대 시간
스위치에 도달할 수 있는 패킷의 속도
Stop-and-Go

(r,T) 모델에서는 3rT

RCSP
 ( X min , X ave , I , S max )

작업 보존 서버

모델 : [di 1  di / X min ]S max
일정 버퍼 크기(constant buffer size) 보존의 어려움
CS Lab.
31
MPEG 트래픽 추적 (이용률 비교)

MPEG 트래픽 (10분)



3가지 종류의 트래픽


색의 변화가 다양하고 빠른 화면전환의 비디오
2가지 화면만을 갖는 비디오
RCSP/D-BIND , RCSP/ X min , Stop-and-Go/(r,T)
특징





Peak rate allocation scheme : 29 연결 수용
DMG( Determinstic Multiplexing Gain) : 10 msec => 38
연결 ; 1.31
최대 DMG : (S,G) :1.72 RCSP/D-BIND : 2.79
D-BIND 모델의 장점 : 소스 모델의 정확한 특성화
S-G/(r,T) 의 낮은 이용률 : Busy period bound
CS Lab.
32
MPEG 트래픽 추적 (이용률 비교)

가능한 연결수의 비교
CS Lab.
33
구현 이슈 (Stop-and-Go)

링크 레벨


큐 관리 레벨



1 FIFO 큐 : 현재 보내져야 하는 패킷의 저장
2 FIFO 큐 : 현재 보낼 수 없는 패킷의 저장
장점


프레임 구조를 지원할 수 있는 동기화 요구
RCSP 보다 간단하게 구현이 가능
RCSP와의 차이점

프레임 단위의 서비스 가능 시간 (eligibility time)의 계산
CS Lab.
34
구현 이슈 (구조)

Stop-and-Go 와 RCSP 의 구현 방법
CS Lab.
35
구현 이슈 (RCSP)

조절기(Regulator) 의 기능



달력 큐 (calendar queue ) 매커니즘


배열 인덱싱 ,패킷의 삽입 , 패킷의 삭제
스케줄러의 기능


서비스 가능 (eligibility) 시간의 계산
서비스 가능 시간까지의 패킷의 보유
비지 않는 가장 높은 우선순위의 큐에서 패킷 보냄
특징

rate-jitter-regulator
 타임 스탬프 를 없앰
CS Lab.
36
WF2Q
(Worst-case Fair Weighted Fair Queuing)
IEEE Infocom’ 96
CS Lab.
37
소개

패킷 망에서의 큐 서비스 방식

이상적이나 실현 불가능한 방식
 GPS (Generalized Processor Sharing)

GPS를 모방한 방식
 FQ (Fair Queuing) 방식
 WFQ (Weighted Fair Queuing)

WFQ 방식의 단점


군집성 유발
WF2Q

WFQ 방식의 단점 극복
CS Lab.
38
GPS

정의
Wi (t1 , t2 ) i

W j (t1 , t2 )  j

정리
r i (t1 , t2 ) 
*

i
jBGPS

(t ) j
r
1
CS Lab.
ri 
i


j 1 j
N
r
39
WFQ

WFQ 방법



Find the finish time of a packet, had we been doing
GPS
Then serve packets in order of their finish time
WFQ에 관한 정리
Lmax
d i ,W FQ  d i ,GPS 
, i, k
r
Wi ,GPS (0, )  Wi ,W FQ(0, )  Lmax, i, k
k
k
CS Lab.
40
WFQ VS. GPS

패킷 도착 순서
CS Lab.
41
WFQ VS. GPS

GPS 서비스 순서
CS Lab.
42
WFQ VS. GPS

WFQ 서비스 순서
CS Lab.
43
WF2Q 서비스 순서
CS Lab.
44
GPS 와 R-GPS
CS Lab.
45
요약



큐 서비스 정책의 요구 조건
성능 보장, 공평성, 구현 용이성
대표적인 스케줄러

작업 비보존 (Non-work-conserving) 큐 서비스 정책
 RCSP (Rate-Controlled Static Priority)
 Stop-and-Go

작업 보존(Work-conserving) 큐 서비스 정책
 WFQ (Weighted Fair Queuing)
 WF2Q (Worst Case Fair Weighted Fair Queuing)
CS Lab.
46