infatuation

감시 Algorithm 본문

Study/ICE

감시 Algorithm

화령 2008. 8. 31. 16:32

⦁UPC & NPC

UPC는 Traffic망과 Cell Looping의 적법성에 기초해서 사용자 Traffic을 감시하고 제어하기 위해 망에서 이루어지는 일련의 활동으로 정의된다. NPC는 UPC와 그 기능 및 목적은 같고 UPC가 T 기준점에 협상된 파라미터들의 QoS에 영향을 미칠 수 있는 악의적이거나 비고의적인 잘못될 행동들로부터 망 자원을 보호하기 위한 것이다. 따라서 정보전달 단계에서 적용되며 감시 및 제어는 UNI 또는 NNI를 통과하는 모든 연결에 대해 수행된다. UPC/NPC 기능에 의해 이루어지는 제어조치로는 사용자가 약속된 파라미터를 초과하면 위반된 셀들을 폐기 시키는 방법을 생각할 수 있다. 이 경우에 주요 목적을 달성할 수 있지만 파라미터 값을 결정하는데 실제적인 불확실성이 있으므로 적절한 제어 성능을 갖기 위해서는 Control Parameter에 대한 허용여부(Tolerances)가 정의될 필요가 있다. 동의된 파라미터 값을 초과하는 셀을 폐기시키는 이외에 다른 방법으로 위반 셀들에 표시를 하여 통과시키거나 연결을 해제시키는 두 가지의 다른 대안도 고려될 수 있다.

1) VSA (Virtual Scheduling Algorithm)

▸Generic cell rate algorithm(GCRA)
"virtual scheduling algorithm" or "continuous-state leaky bucket"으로 알려져 있다. (by ATM Forum)

GCRA은 ATM에서 연결 통로의 트래픽 계약을 기준으로 수행 성능을 정의하는 알고리즘이다. 각 셀이 도착하면, GCRA는 셀이 트래픽 계약에 일치하는지 판단한다.
▸Virtual LB : VLB방식은 망 인터페이스에서 셀을 폐기시키는 대신 위반된 셀들에 대해 셀헤더에 위반 표시를 하여 망으로 진입시키는 방법이다. 따라서 모든 셀들이 망으로 진입되면 위반된 셀들은 체증이 발생했을 때만 망노드에서 폐기된다. 망노드에서는 새로운 셀이 도착했을 때 노드의 버퍼상태가 체크되면 다음과 같이 처리될 수 있다.

- 버퍼가 가득차지 않은 경우 셀을 받아들인다.
- 버퍼가 가득 차 있고 셀에 표시가 되어 있지 않은 경우, 버퍼의 셀 중에 표시된 것 이 있으면 도착된 셀 을 받아들이고 표시된 셀을 폐기시킨다.
- 버퍼가 가득 차 있고 셀에 표시가 되어 있지 않은 경우, 버퍼의 셀 중에 표시된 것 이 없으면 도착된 셀 은 폐기된다.

이 방식은 망노드가 체증상태일 때 정상 셀들로부터 표시된 셀을 구별하는 처리시간이 부가적으로 요구되는 단점과 망사업자 입장에서 사용량에 따라 요금부과 방법이 어려워지는 문제가 있으니 망의 처리량을 높일 수 있고 정상적인 셀들을 망의 잘못된 판단으로 폐기시키는 오류를 피할 수 있다는 장점이 있다.

2) LB (Leaky Bucket)

간단히 설명하면 ATM에서 사용자나 네트워크에서 보내는 셀 플로우가 규칙에 일치하는지 점검하는데 사용되는 GCRA를 가리키는 은유적인 표현이라고 할 수 있다. 양동이의 구멍은 셀을 수용할 수 있는 지속적인 속도에 해당하며, 양동이 깊이는 일정한 기간 동안 셀 버스트를 감당할 수 있는 정도에 해당한다.
Leaky Bucket (LB)은 UPC/NPC 기능의 구현 및 체증제어의 한 수단으로 가장 많이 연구되어 온 방법이며, 그 형태에 따라 LB, VLB(Virtual LB), SVLB(VLB with spacer), DLB(Dual LB)등으로 구분된다. LB방식은 그림과 같은 대기모형으로 나타낼 수 있으며 시스템에서는 주기적으로 토큰을 생성시키고 도착된 셀들은 토큰을 받은 경우만 망으로 진입시킨다.
도착된 셀들은 토큰이 없는 경우에는 용량이 B인 입력버퍼에서 대기할 수 있으며 버퍼가 차 있는 경우 새로 도착된 셀들은 폐기된다. 일정 시간마다 생성되는 토큰들은 용량 M인 토큰풀에 저장되고 토큰풀이 가득 차 있는 경우에는 폐기된다. 따라서 토큰생성 주기에 따라 Traffic파라미터중의 평균 비트율을 제어할 수 있으며 버퍼 및 토큰풀의 크기에 따라 어느 정도의 PCR 및 Burstness를 제어할 수 있다. Network로 전송되는 Traffic을 아주 단순히 제어하고 조절 가능하며, 구현이 쉽고 Network 내의 한 종류의 Traffic 양을 조절하는 임의의 임계치(threshold)로 사용가능하다. 단점으로는 여러 종류의 Traffic 속도를 지원해야 하는 경우에는 비효율적이며, Leak late이 고정된 값을 가지므로 Network 자원의 여유가 많은 때에도 충분히 활용할 수 있는 적응성이 부족하다.

3) JW (Jumping Window) = fixed window

Jumping Window 메커니즘은 일정기간 동안 발생한 셀의 개수를 제한하는 방법으로 이 일정기간을 윈도우 크기(Window Size : T)라 한다. T시간 후에 새로운 윈도우가 시작되므로 " Jumping Window "라고 한다. 이 메커니즘의 구현에는 윈도우 크기를 나타내는 시간 측정기와 윈도우 기간에 발생하는 셀의 개수를 세는 계수기가 필요하다. 윈도우 기간 내에 셀이 발생할 때마다 계수기를 1씩 증가시키고 윈도우가 끝나면 계수기의 값을 0으로 하는 새로운 윈도우가 시작되며, 최대 허용 셀 개수를 초과하여 발생하는 셀은 폐기시키고, 윈도우 크기와 윈도우내에 발생하는 최대 허용 셀 개수를 나타내는 한계 값들로써 소스 Traffic을 감시한다.
Jumping Window 의 개량형으로 기동Jumping Window (Triggered Jumping Window )메커니즘이 있고, 이 Triggered Jumping Window 메커니즘은 Jumping Window 메커니즘에서 윈도우가 셀의 도착 시간에 관계없이 겹치지 않게 연속적으로 배치되어 있는 것을 개량하여 윈도우의 첫 부분을 셀이 도착하는 시간과 동기 시켜 윈도우가 시작되게 하는 것을 제외하고 Jumping Window메커니즘과 동일하다.

4) SW (Sliding Window)

▸Sliding window flow control(이동하는 윈도우 흐름 제어)
윈도우(화면표시의 일부분)이 가득 찰 때까지 수신 장치가 송신 장치에게 데이터를 전송하도록 허가해 주는 흐름 제어 방식을 말한다. 윈도우가 가득차면, 송신 장치는 수신 장치가 윈도우에 여유가 생겼다고 알릴 때까지 전송을 멈추어야 한다. TCP, 그 외의 전송 프로토콜, 그리고 여러 가지 데이터 링크 레이어 프로토콜은 이 흐름 제어 방식을 사용한다.
Sliding Window 메커니즘은 "Dangerous Bridge"라고도 부르며 일정한 크기 (T)의 윈도우가 시간 축을 따라 이동하며, 셀이 발생할 때마다 계수기를 1씩 증가시키고 현재의 기준으로 T이전에 발생했던 셀이 나타나면 계수기를 1씩 감소시킴으로써 지난 T동안 얼마나 많은 셀이 통과되었는지 계수기의 값을 통해 알 수 있다. T기간 동안 발생할 수 있는 최대 허용 셀 개수 (N)를 제한함으로써 계수기의 값이 N일 때 발생하는 셀은 폐기(또는, 표시)시킴으로써 소스 Traffic을 감시한다. Sliding Window 메커니즘은 T기간 동안 발생한 셀의 개수 뿐만 아니라, 각 셀의 도착시간에 대한 정보를 기억하고 있어야 하므로 하드웨어 구현이 복잡하다.

5) EWMA (Exponentially Weighted Moving Average)

EWMA메커니즘에서의 윈도우 운용은 Jumping Window와 같다. 그러나 Jumping Window메커니즘에서는 각 윈도우에서 허용되는 최대 셀 개수가 변하지 않으나 EWMA메커니즘에서는 현재 윈도우에서 허용되는 최대 셀 개수가 이전 윈도에서 발생된 셀 수에 따라 변하게 된다. 다시 말해서 이전 윈도우에서 셀이 최대 허용 개수보다 작게 발생하면 현재 윈도우에서는 최대 허용 셀 개수를 약간 증가시킨다.

6) PC(Peak Counters)

Peak Counters(PC : Input rate Control)
PC메커니즘은 두 개의 계수기로 구현되는데 첫 번째 계수기는 평균계수기로 LB메커니즘에서의 가상대기 (계수기)와 유사하며 이 계수기는 평균계수기 문턱값과 최대값, 그리고 평균계수기 감소율을 가지고 입력소스 Traffic의 평균비트율의 감시에 사용되며, 두번째 계수기는 최대 계수기로써 최대 계수기 최대값과 감소율이 얼마나 오랫동안 평균계수기 값이 평균계수기 문턱값이상에서 동작되었는가를 감시하는데 사용된다. 소스로부터 셀이 발생하였을 때 평균계수기의 문턱값보다 작으면 평균계수기의 값을 1씩 증가시키고 문턱밧보다 크면 최대계수기의 값을 1씩 증가시킨다. 만약 소스로부터 셀이 발생하였을 때 평균계수기의 값이 최대값이거나 최대계수기의 값이 문턱값이면 이 셀을 폐기시킨다.

'Study > ICE' 카테고리의 다른 글

GSM과 CDMA의 차이점  (0) 2008.08.31
Erlang  (0) 2008.08.31
정통망 Quiz ( Crosstalk & Echo canceller )  (0) 2008.08.31
디지털전송기술 Quiz  (0) 2008.08.31