KR102011184B1 - 캐스케이드 구조 기반의 큐 관리 장치 및 방법 - Google Patents
캐스케이드 구조 기반의 큐 관리 장치 및 방법 Download PDFInfo
- Publication number
- KR102011184B1 KR102011184B1 KR1020160167829A KR20160167829A KR102011184B1 KR 102011184 B1 KR102011184 B1 KR 102011184B1 KR 1020160167829 A KR1020160167829 A KR 1020160167829A KR 20160167829 A KR20160167829 A KR 20160167829A KR 102011184 B1 KR102011184 B1 KR 102011184B1
- Authority
- KR
- South Korea
- Prior art keywords
- packet discard
- discard probability
- queue length
- window size
- current
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0829—Packet loss
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/27—Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 발명은 캐스케이드 구조 기반의 큐 관리 장치 및 방법에 관한 것으로, 상기 큐 관리 장치는 패킷 폐기 확률을 고려하여 현재 윈도우 크기를 조정하는 내부 루프 제어부; 및 상기 내부 루프 제어부에 의해 조정된 윈도우 크기와 입력 트래픽의 용량을 기반으로 상기 현재 큐 길이를 재산출한 후, 상기 재산출된 큐 길이와 목표 큐 길이를 기반으로 상기 패킷 폐기 확률을 재산출하여 상기 내부 루프 제어부에 제공하는 외부 루프 제어부를 포함할 수 있다.
Description
본 발명은 큐 관리 장치 및 방법에 관한 것으로, 특히 스마트 그리드를 구현하기 위한 고압 지능형 검침 인프라(AMI) 네트워크 장비에 탑재되는 큐의 버퍼블로팅 발생을 사전 차단하기 위한 캐스케이드 구조 기반의 큐 관리 장치 및 방법에 관한 것이다.
스마트 그리드는 에너지 관리 애플리케이션과 함께 다양한 실시간 애플리케이션(예를 들어, 센서)을 통합한 시스템으로, 소비자, 자산 및 액세스 권한이 있는 사용자 간의 금융, 정보 및 전기 배달과 같은 다양한 서비스를 지원하는 인프라를 제공한다.
이러한 스마트 그리드 시스템을 더 효율적으로 사용할 수 있는 핵심적인 기술로 각광 받고 있는 것이 바로 AMI(Advanced Metering Infrastructure, 고압 지능형 검침 인프라)이다. AMI는 스마트 미터에서 측정한 데이터를 원격 검침기를 통해 측정하여 전력 사용 분석을 자동으로 진행하는 기술로 스마트 미터가 집에서 사용되는 전력의 사용량을 자동으로 검침하고 그 정보를 통신망을 통해 전달되도록 한다. 그리고 AMI에서 제공하는 데이터를 바탕으로 전력회사들은 소비자의 전력 사용량에 맞춰 전기요금을 부과하도록 한다. 특히 이렇게 제공된 정보들을 통해 사용자별 전기 사용의 패턴 등을 파악해 최적화 된 전력을 공급하여 전기요금 절약 및 전력낭비를 예방할 수 있게 된다.
한편, 메모리의 가격이 급속히 하락하면서 최근 AMI 네트워크뿐만 아니라 모든 네트워크에서 대량의 메모리를 네트워크를 구성하는 장비들(예를 들면, 인터넷의 라우터, 셀룰러망의 교환기)에 탑재하고 있다.
이럴 경우, 메모리로 구현되는 큐가 오버플로우(overflow)되어 발생하는 패킷 손실률(packet loss)은 줄어 처리율(throughput)은 향상되나, 이에 비례하여 패킷이 큐에서 기다리는 지연(latency, delay)도 증가하는 문제점이 발생한다. 이런 문제점을 버퍼블로팅(bufferbloating)이라고 부른다.
버퍼블로팅은 특히 스마트 그리드와 같이 지연에 민감한 응용에서는 심각한 문제를 초래한다. 스마트 그리드의 경우, 전력회사 또는 수요반응사업자에 계량값을 송신한다던지 전력회사 또는 수요반응사업자로부터 제어정보를 수신할 때 반드시 실시간으로 이루어져야만 하며, 허용범위를 벗어나는 큰 지연은 전력제어에 심각한 문제점을 초래하기 때문이다.
이에 버퍼블로팅 발생을 차단하기 위한 활성 큐 관리(AQM) 방법이 제안된 바 있다. 대부분의 리눅스 커널(Linux kernel)과 일부 오픈 소스 라우터(CerowRT)는 일부 최신 AQM 알고리즘과 통합된다. 예를 들어, 병목 현상이 발생한 위치에 따라 리눅스 사용자는 sysctl 또는 tc(트래픽 제어) 명령을 통해 다른 AQM qdisc(큐 분야)를 사용하도록 컴퓨터를 변경할 수 있다.
최적화, 큐잉 및 제어 이론을 이용한 툴을 이용하는 Controlled Delay (CoDel), Stochastic Flow Queuing CoDel(sfqCoDel), PI(Proportional Integral Enhanced) 등과 같은 AQM 후보 알고리즘이 있으며, 그 중 제어 이론 접근법(CoDel)은 스마트 그리드 네트워크 장비로의 적용에 있어, 매개 변수화 제어기, 및 좋은 기준 추적(well reference tracking)과 같은 몇 가지 장점을 가지고 있다. 이론적으로 제어 기반의 AQM 알고리즘은 TCP의 AIMD(additive increase multiplicative decrease) 모델과 연속적인 유체-흐름 큐 근사법을 이용한다. 그런 다음 특정 컨트롤러의 파라미터는 전체 시스템의 폐 루프 전달 함수에 따라 설계된다.
그러나 이러한 모델은 혼합 트래픽 시나리오에서 큰 오버 슛과 허용되지 않는 랙(지연)의 문제가 있는 큐 길이에 대해서만 단일 루프 제어를 수행하도록 설계되었다. 서로 다른 네트워크 계층에서 작동하는 루프가 많을수록 전체 시스템 성능, 특히 입력 지연 과도(오버 슛) 동작을 개선해야 하는 문제가 있다.
D. Wischik and N. McKeown, "Part I: buffer sizes for core routers," ACM SIGCOMM Computer Communication Review, vol. 35, no. 3, pp. 75-78, 2005.
D. Taht and J. Gettys, "Best practices for benchmarking codel and fq codel,"Wiki Page on bufferbloat.netWeb Site, 2012.
이에 상기와 같은 문제점을 해결하기 위한 것으로서, 본 발명은 캐스케이드 구조를 가지는 두 개의 제어 루프를 제안하고, 이를 통해 큰 오버 슛을 줄여 지연 과도 현상을 보다 효과적으로 개선할 수 있도록 하는 캐스케이드 구조 기반의 큐 관리 장치 및 방법을 제공하고자 한다.
본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 본 발명이 속하는 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
상기 과제를 해결하기 위한 수단으로서, 본 발명의 일 실시 형태에 따르면, 패킷 폐기 확률을 고려하여 현재 윈도우 크기를 조정하는 내부 루프 제어부; 및 상기 내부 루프 제어부에 의해 조정된 윈도우 크기와 입력 트래픽의 용량을 기반으로 상기 현재 큐 길이를 재산출한 후, 상기 재산출된 큐 길이와 목표 큐 길이를 기반으로 상기 패킷 폐기 확률을 재산출하여 상기 내부 루프 제어부에 제공하는 외부 루프 제어부를 포함하는 캐스케이드 구조 기반의 큐 관리 장치를 제공한다.
상기 내부 루프 제어부는 상기 현재 윈도우 크기와 상기 패킷 폐기 확률간의 차이값을 획득한 후, 상기 차이값을 고려하여 상기 패킷 폐기 확률을 조정하는 패킷 폐기 확률 조정부; 및 상기 조정된 패킷 폐기 확률을 기반으로 상기 현재 원도우 크기를 조정하는 윈도우 크기 조정부를 포함하는 것을 특징으로 한다.
상기 패킷 폐기 확률 조정부는 ", "의 식에 따라 패킷 폐기 확률 조정 동작을 수행하는 것을 특징으로 하며, 상기 p2는 패킷 폐기 확률, e2는 윈도우 크기와 패킷 폐기 확률간의 차이값, Ts는 샘플링 간격, , kI는 상태 매트릭스와 입력 매트릭스에 의해 결정되는 파라메타 값, T는 입력 매트릭스에 의해 결정되는 파라메타 값을 각각 의미하는 것을 특징으로 한다.
상기 외부 루프 제어부는 상기 내부 루프 제어부에 의해 조정된 윈도우 크기와 상기 입력 트래픽의 용량을 기반으로 상기 현재 큐 길이를 산출하는 큐 길이 산출부; 및 상기 큐 길이 산출부에 의해 산출된 현재 큐 길이와 상기 목표 큐 길이를 비교하여 큐 길이차를 확인하고, 상기 큐 길이차에 기반으로 상기 패킷 폐기 확률을 산출하여 상기 내부 루프 제어부에 제공하는 패킷 폐기 확률 산출부를 포함하는 것을 특징으로 한다.
상기 패킷 폐기 확률 산출부는 ""의 식에 따라 패킷 폐기 확률 조정 동작을 수행하는 것을 특징으로 하며, 상기 p1는 패킷 폐기 확률, e1는 현재 큐 길이와 목표 큐 길이간의 길이차, Ts는 샘플링 간격, , , , , , , , , , R0는 최초 구동시 라운드 트립 시간에 의해 결정되는 파라메터 값을 각각 의미하는 것을 특징으로 한다.
상기 패킷 폐기 확률 산출부는 ""의 식에 따라 패킷 폐기 확률 조정 동작을 수행하는 것을 특징으로 하며, 상기 p1는 패킷 폐기 확률, e1는 현재 큐 길이와 목표 큐 길이간의 길이차, , Ts는 샘플링 간격, , , , , , , , , , , R0는 최초 구동시 라운드 트립 시간에 의해 결정되는 파라메터 값을 각각 의미하는 것을 특징으로 한다.
상기 장치는 목표 지연 값과 네트워크 전송 용량을 기반으로 상기 목표 큐 길이를 결정하는 큐 길이 결정부를 더 포함하는 것을 특징으로 한다.
상기 과제를 해결하기 위한 수단으로서, 본 발명의 다른 실시 형태에 따르면, 목표 지연 값과 네트워크 전송 용량을 기반으로 목표 큐 길이를 결정하는 큐 길이 결정 단계; 상기 목표 큐 길이와 현재 큐 길이를 기반으로 패킷 폐기 확률을 산출하는 패킷 폐기 확률 산출 단계; 현재 윈도우 크기를 기반으로 상기 패킷 폐기 확률을 조정하는 패킷 폐기 확률 조정 단계; 상기 조정된 패킷 폐기 확률을 기반으로 상기 현재 윈도우 크기를 조정하는 윈도우 크기 조정 단계; 및 상기 조정된 윈도우 크기와 입력 트랙픽의 용량을 기반으로 상기 현재 큐 길이를 재산출하는 큐 길이 산출 단계;를 포함하며, 상기 윈도우 크기 조정 단계를 통해 조정된 윈도우 크기는 현재 윈도우 크기로써 상기 패킷 폐기 확률 조정 단계에 다시 제공되고, 상기 큐 길이 산출 단계를 통해 재산출된 큐 길이는 현재 윈도우 크기로써 상기 패킷 폐기 확률 산출 단계에 다시 제공되는 것을 특징으로 한다.
본 발명의 캐스케이드 구조 기반의 큐 관리 장치 및 방법은 기존의 TCP 상태 공간 모델을 변형하여 캐스케이드(cascade) 구조를 가지는 내부 루프와 외부 루프를 구현한 후, 이들을 통해 패킷 폐기 확률과 TCP의 윈도우 크기를 함께 제어할 수 있도록 한다. 그 결과, 큰 오버 슛이 감소되어 지연 과도 현상 또한 보다 효과적으로 개선되게 된다.
도1은 본 발명의 일 실시예에 따른 캐스케이드 구조 기반의 큐 관리 장치를 도시한 도면이다.
도2은 본 발명의 일 실시예에 따른 캐스케이드 구조 기반의 큐 관리 방법을 설명하기 위한 도면이다.
도2은 본 발명의 일 실시예에 따른 캐스케이드 구조 기반의 큐 관리 방법을 설명하기 위한 도면이다.
본 발명에서 사용되는 기술적 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 발명에서 사용되는 기술적 용어는 본 발명에서 특별히 다른 의미로 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 의미로 해석되어야 하며, 과도하게 포괄적인 의미로 해석되거나, 과도하게 축소된 의미로 해석되지 않아야 한다. 또한, 본 발명에서 사용되는 기술적인 용어가 본 발명의 사상을 정확하게 표현하지 못하는 잘못된 기술적 용어일 때에는, 당업자가 올바르게 이해할 수 있는 기술적 용어로 대체되어 이해되어야 할 것이다. 또한, 본 발명에서 사용되는 일반적인 용어는 사전에 정의되어 있는 바에 따라, 또는 전후 문맥상에 따라 해석되어야 하며, 과도하게 축소된 의미로 해석되지 않아야 한다.
또한, 본 발명에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함한다. 본 발명에서, "구성된다" 또는 "포함한다" 등의 용어는 발명에 기재된 여러 구성 요소들, 또는 여러 단계를 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복된 설명은 생략하기로 한다.
또한, 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 발명의 사상을 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 발명의 사상이 제한되는 것으로 해석되어서는 아니 됨을 유의해야 한다.
도1은 본 발명의 일 실시예에 따른 캐스케이드 구조 기반의 큐 관리 장치를 도시한 도면이다.
도1에 도시된 바와 같이, 본 발명의 큐 관리 장치는 큐 길이 결정부(10), 내부 루프 제어부(20) 및 외부 루프 제어부(30) 등을 포함하며, 내부 루프 제어부(20)와 외부 루프 제어부(30)는 캐스케이드(cascade) 구조를 가지도록 한다.
큐 길이 결정부(10)는 목표 지연 값과 네트워크 전송 용량을 기반으로 목표 큐 길이를 결정한다. 이때, 목표 지연 값 및 네트워크 전송 용량에 대한 정보는 상위 네트워크 장치로부터 제공받을 수 있으나, 경우에 따라서는 장치 관리자 등에 의해 수동 설정될 수도 있다. 또한 네트워크 전송 용량은 대상 네트워크 장치가 이용하는 다수의 통신 채널들 중 어느 하나의 채널 용량일 수 있으나, 가장 바람직하게는 병목 현상이 발생한 통신 채널의 전송 용량일 수 있다.
내부 루프 제어부(20)는 패킷 폐기 확률 조정부(21)와 윈도우 크기 조정부(22)를 구비하고, 패킷 폐기 확률 조정부(21)를 통해 큐 관리 장치의 현재 윈도우 크기와 외부 루프 제어부(30)에 의해 통보되는 패킷 폐기 확률을 이용하여, 현재 윈도우 크기를 조정하도록 한다. 그리고 윈도우 크기 조정부(22)를 통해 현재 윈도우 크기와 패킷 폐기 확률간의 차이값을 획득한 후, 이를 고려하여 패킷 폐기 확률을 조정하도록 한다.
외부 루프 제어부(30)는 윈도우 크기 조정부(22)의 뒷단에 위치되는 큐 길이 산출부(31)와 패킷 폐기 확률 조정부(21)의 앞단에 위치되는 패킷 폐기 확률 산출부(32)을 구비하고, 큐 길이 산출부(31)를 통해 내부 루프 제어부(20)에 의해 조정된 윈도우 크기와 입력 트래픽의 용량을 기반으로 현재 큐 길이를 재산출한다. 그리고 패킷 폐기 확률 산출부(32)를 통해 큐 길이 산출부(31)에 의해 재산출된 큐 길이와 큐 길이 결정부(10)에 결정된 목표 큐 길이를 기반으로 패킷 폐기 확률을 산출하여 내부 루프 제어부(20)에 제공하도록 한다.
즉, 본 발명은 캐스케이드(cascade) 구조를 가지는 내부 루프 제어부(20)와 외부 루프 제어부(30)를 구현하고, 이를 통해 패킷 폐기 확률과 TCP의 윈도우 크기를 함께 제어하도록 함으로써 큰 오버 슛을 감소시키고, 이에 따라 지연 과도 현상을 보다 효과적으로 개선될 수 있도록 한다.
상기와 같이 구성되는 큐 관리 장치는 이하와 같은 원리에 의해 설계된다.
본 발명은 TCP 상태 공간 모델을 변형 및 활용하여 캐스케이드 구조를 가지는 내부 루프와 외부 루프를 설계하고, 이들을 통해 큐 관리 동작을 수행하도록 한다.
1) TCP 상태 공간 모델
본 발명은 TCP 소스와 상호 작용하는 네트워크 라우터에서 광범위하게 연구되고 있는 비선형 미분 방정식에 기반한 TCP 유체 흐름 모델을 이용한다. TCP 유체 흐름 모델은 늦은 시작 및 시간 초과 메커니즘 없이 TCP의 AIMD(additive increase multiplicative decrease)기능을 캡처하나, 이러한 결함은 TCP 시스템의 구동 초기에만 영향을 미치며, 일단 시스템이 안정 점에 도달하면, 미분 방정식 프로그램(differential equations solver)는 네트워크의 변화를 잘 추적 할 수 있다.
[수학식 1]
[수학식 2]
이때, w는 평균 TCP 원도우 크기(packets), q는 케이블 모뎀(packets)에서의 큐 길이, p(ㅇ)는 패킷 폐기 확률 함수(0≤p≤1), Cl는 통신 링크의 전송 용량(packets/sec), R는 라운드-트립 시간(sec), N는 TCP 세션들의 개수 각각을 나타내며, 전파 지연 Tp인 경우에 R(t)는 Tp + q(t)/Cl이다.
수학식1은 AIMD에 기반한 TCP-Reno-sender 동작을 설명하고, 수학식2는 M/M/1 큐와 같은 대표적인 큐잉 모델에서와 같이 이산(discrete)이 아닌 연속(continuous)으로 트래픽 도착을 허용할 수 있는 유체 대기열을 모델링한다.
[수학식 3]
[수학식 4]
시스템 상태 벡터를 로, 제어 입력 벡터를 로, 외부 분산을 로, 및 시스템 출력 벡터를 로 정의하면, TCP 시스템은 상태 공간 모델링 접근법을 통해 연속적인 시간-불변 타입(time-invariant type)으로 재작성될 수 있다.
[수학식 5]
이때, A(Ad), B, C, 및 G는 상태(시스템), 입력, 출력, 분산 매트릭스 각각을 의미하며, 이들은 다음과 같이 표현될 수 있다.
[수학식 6]
그러면, 트래픽 흐름(입력)을 큐 길이(출력)으로 매핑하는 시스템 모델 방정식은 수학식 7과 같이 표현될 수 있다.
[수학식 7]
이때, s는 입력, D=1/R0이다
이와 같은 상태-공간 TCP/IP 시스템 모델을 이용하면, 다음과 같은 요구 사항들을 가지는 효율적인 컨트롤러를 설계할 수 있다.
(i) 큐 길이는 가능한 짧아야 함.
(ii) 네트워크 파라메타에 대한 민감도(Sensitivity)는 낮아야 함.
(iii) 링크 비용을 낭비하지 않도록 링크 사용율은 높아야 함.
(iv) 패킷 폐기율은 낮아야 함.
그러나 실제의 시스템에서 상기의 요구 사항 모두를 동시에 충족시키란 불가능하므로, 본 발명에서는 최적의 절충안을 찾도록 한다. 예를 들어, 패킷 폐기율을 최소로 증가하되, 큐 길이를 최대로 줄일 수 있도록 한다. 즉, 상기의 요구 사항들 모두를 충족시키는 최적의 동작점을 찾도록 한다.
2) 무한 버퍼(BufferBloat)의 최적화
대표적인 M/M/1 큐잉 모델은 스마트 그리드 변전소 라우터의 무한 버퍼 또는 완충 현상을 잘 표현한다. 목적 함수 및 제약 조건의 비선형성과 문제 크기에 따라 기하급수적으로 증가되는 실행 시간으로 인해 M/M/1과 같은 간단한 큐 성능을 최적화하는 것은 용이하지 않다. M/M/1 큐에 적용 가능하며, 상태 확률 pk을 최소화하도록 하는 콘벡스(convex) 최적화 문제가 제안되었으나, 버퍼블로팅(bufferbloat) 문제 처리를 위해 큐 길이를 최소화하는 것이 중요하다. 이에 본 발명에서는 앞서 설명한 TCP 상태 공간 모델에 의한 제약 조건하에서, 무한 버퍼의 큐 길이와 윈도우 크기를 직접적으로 최적화하는 최적화 문제를 공식화한다.
[수학식 8]
이때, 최적화 변수는 w 및 q이고, 제한 파라메타는 N, Cl 및 R이다.
본 발명은 TCP 상태 공간 시스템 모델을 변형 및 활용하여, EDDC(Enqueue-Dequeue Dropping Cascade control scheme)이라 불리는 제어 방식을 제안한다. 이는 두 개의 주요 설계 요건을 가진다. 첫 번째 요건은 연속 시간 도메인에서 설계되도록 하는 것이고, 두 번째 요건은 스마트 그리드 산업용 라우터에 적용 가능하도록, 폐기 확률 공식을 이산 도메인으로 변환하는 것이다.
3) 첫 번째 설계 요건 : 연속 시간 도메인에서의 EDDC
3-1) 내부 루프는 외부 루프가 현재 큐 길이(또는 큐 길이 평균 측정값)과 목표 큐 길이간의 차이값에 따라 산출한 패킷 폐기율(p1)과 TCP의 현재 윈도우 크기(w(t))를 이용하여, 새로운 패킷 폐기율(p2)을 산출한다.
내부 루프는 빠른 응답성을 가져야 한다. 수학식 7을 참고하면, 내부 제어 목표는 선형 1차 타입으로, ""로 표현된다. 이때 kI는 , T는 이다. 따라서, 내부 루프의 통합 I 제어함수는 수학식 9에서와 같이 표현되고, 내부 루프의 폐-루프 전달 함수는 수학식 10에서와 같이 표현될 수 있다.
[수학식 9]
[수학식 10]
전달함수(I(s))는 주파수 w를 통해 주파수 영역으로 변환되며, 이는 수학식 11로 표현될 수 있다.
[수학식 11]
폐-루프 제어 시스템의 품질 요구 사항들 중 하나인, 로 표현되는 품질 요구 사항은 출력이 입력 신호와 동일하도록 하는 것이거나, 제어함수 이 최적 이득 및 위상 마진 튜닝 방법이라고 불릴 수 있는 " = 1"을 전체 주파수 대역(∀w)에 대해 만족시키도록 하는 것이다. 그러나 시스템의 여러 가지 이유 때문에 모든 주파수 w에 대한 요구 사항은 충족되기가 실제 어려우므로, 허용 가능한 설계는 저주파수의 넓은 대역 w에서 ""을 만족시키는 정도이다.
3-2) 외부 루프
외부 루프의 폐-루프 전달 함수는 수학식 12로 표현될 수 있다.
[수학식 12]
외부 제어 목표를 제로-폴 형식(zero-pole form)으로 표현하면, 수학식 13이 된다.
[수학식 13]
외부 루프에 대해, 목표 함수(objective function)은 I(s)의 포함에 의해, 선형 3차 타입이 된다. 따라서 외부 루프는 내부 루프에서와 동일한 방식을 이용하거나, 또는 ""을 이용하는 PID(proportional-integral-derivative) 제어함수를 선택하도록 한다.
[수학식 14]
4) 두 번째 설계 요건 : 이산 시간 도메인에서의 EDDC
4-1) 이산 외부 루프 제어함수는 수학식 15와 같이 표현될 수 있다.
[수학식 15]
이때, e1(s)는 현재 큐 길이와 목표 큐 길이간의 차이값이고, p1(s)는 외부 루프의 출력이다.
후방 차분 방법(backward difference method)을 적용하여, 외부 루프 제어기 Cqueue(s)를 z-변환(z-transform)하면 수학식 16에서와 같이 표현된다.
[수학식 16]
수학식 16을 다시 시간 도메인으로 변환하면, 수학식 17 또는 수학식18과 같은 외부 루프 제어함수 Cqueue의 간략 형태로 표현될 수 있다.
[수학식 17]
[수학식 18]
이때, 파라메타 aO, bO, cO는 [수학식 17]에서 유도된 것으로 [수학식 17]을 e1(t), e1(t-1), e1(t-2)로 정리했을 때의 계수를 각각 aO, bO, cO 이다. 따라서,로 정의된다.
4-2) 이산 내부 루프 제어함수는 수학식 19와 같이 표현될 수 있다.
[수학식 19]
이때, e2(s)는 p1과 혼잡 윈도우 크기 w(s)간의 차이값이고, p2(s)는 외부 루프의 출력이다.
그리고 수학식 19의 내부 루프 제어함수 Cwin는 수학식 20에서와 같이 간략화될 수 있다.
[수학식 20]
이때, Ts는 샘플링 간격으로, 예를 들어, Ts=1/8000 sec로 설정할 수 있다.
그리고 본 발명에서는 상기의 설계 결과가 반영된 Cwin, PTCPwin, Pqueue, Cqueue 각각을 패킷 폐기 확률 조정부(21), 윈도우 크기 조정부(22), 패킷 폐기 확률 산출부(32) 각각에 적용함으로써, 본 발명의 큐 관리 장치가 앞서 설명한 TCP 상태 공간 모델에 의한 제약 조건하에서 큐 길이와 윈도우 크기를 직접적으로 최적화할 수 있도록 해준다.
도2은 본 발명의 일 실시예에 따른 캐스케이드 구조 기반의 큐 관리 방법을 설명하기 위한 도면이다.
만약, 상위 네트워크 장치 또는 장치 관리자에 의해 목표 지연 값과 네트워크 전송 용량이 설정 또는 변경되면, 큐 길이 결정부(10)는 이들 목표 지연 값과 네트워크 전송 용량을 기반으로 목표 큐 길이를 결정하도록 한다(S1).
그러면, 큐 길이 결정부(10)의 뒷단에 위치하는 외부 루프의 패킷 폐기 확률 산출부(32)는 단계 S1에 의해 결정된 목표 큐 길이와 큐 관리 장치의 현재 큐 길이를 비교하여 길이 차이값(e1)을 산출한 후, 이를 Cqueue 제어 함수에 입력하여 길이 차이값(e1)에 대응되는 폐킷 폐기 확률(p1)을 산출하도록 한다(S2).
그러면, 패킷 폐기 확률 산출부(32)의 뒷단에 위치하는 내부 루프의 패킷 폐기 확률 조정부(21)는 단계 S2를 통해 산출된 패킷 폐기 확률(p1)과 큐 관리 장치의 현재 윈도우 크기(w(t))간 차이(e2)를 파악한 후, 이를 Cwin 제어 함수에 입력하여 조정된 폐킷 폐기 확률(p2)을 산출하도록 한다(S3).
그러면, 패킷 폐기 확률 조정부(21)의 뒷단에 위치하는 내부 루프의 윈도우 크기 조정부(22)는 단계 S3을 통해 조정된 폐킷 폐기 확률(p2)을 PTCPwin 제어 함수에 입력하여 조정된 윈도우 크기(w(t))를 산출한다(S4).
그리고 단계 S4를 통해 조정된 윈도우 크기(w(t))는 패킷 폐기 확률 조정부(21)에 다시 제공되어, 패킷 폐기 확률 조정부(21)가 다음 동작시에 이를 통해 조정된 폐킷 폐기 확률(p2)을 산출할 수 있도록 한다. 그리고 윈도우 크기 조정부(22)의 뒷단에 위치하는 외부 루프의 큐 길이 산출부(31) 또한 단계 S4D에 의해 조정된 윈도우 크기를 입력받고, 이와 입력 트래픽의 용량을 Pqueue 제어 함수에 함께 입력하여, 현재의 큐 길이를 재산출하도록 한다(S5).
단계 S5에 의해 현재의 큐 길이가 재산출되면, 이 또한 다시 패킷 폐기 확률 산출부(32)에 제공되어, 패킷 폐기 확률 산출부(32)도 다음 동작시에 이를 기반으로 한 패킷 폐기 확률 산출 동작을 수행할 수 있도록 한다.
상술한 실시예에 설명된 특징, 구조, 효과 등은 본 발명의 적어도 하나의 실시예에 포함되며, 반드시 하나의 실시예에만 한정되는 것은 아니다. 나아가, 각 실시예에서 예시된 특징, 구조, 효과 등은 실시예들이 속하는 분야의 통상의 지식을 가지는 자에 의하여 다른 실시예들에 대해서도 조합 또는 변형되어 실시 가능하다.
따라서 이러한 조합과 변형에 관계된 내용들은 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다. 또한, 이상에서 실시예들을 중심으로 설명하였으나 이는 단지 예시일 뿐 본 발명을 한정하는 것이 아니며, 본 발명이 속하는 분야의 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다. 예를 들어, 실시예들에 구체적으로 나타난 각 구성 요소는 변형하여 실시할 수 있는 것이다. 그리고 이러한 변형과 응용에 관계된 차이점들은 첨부한 청구 범위에서 규정하는 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.
Claims (8)
- 패킷 폐기 확률을 고려하여 현재 윈도우 크기를 조정하는 내부 루프 제어부; 및
상기 내부 루프 제어부에 의해 조정된 윈도우 크기와 입력 트래픽의 용량을 기반으로 현재 큐 길이를 재산출한 후, 상기 재산출된 큐 길이와 목표 큐 길이를 기반으로 상기 패킷 폐기 확률을 재산출하여 상기 내부 루프 제어부에 제공하는 외부 루프 제어부를 포함하되,
상기 내부 루프 제어부는
상기 현재 윈도우 크기와 상기 패킷 폐기 확률간의 차이값을 획득한 후, 상기 차이값을 고려하여 상기 패킷 폐기 확률을 조정하는 패킷 폐기 확률 조정부; 및
상기 조정된 패킷 폐기 확률을 기반으로 상기 현재 윈도우 크기를 조정하는 윈도우 크기 조정부를 포함하고,
상기 패킷 폐기 확률 조정부는
", "의 식에 따라 패킷 폐기 확률 조정 동작을 수행하는 것을 특징으로 하며,
상기 p2는 패킷 폐기 확률, e2는 윈도우 크기와 패킷 폐기 확률간의 차이값, Ts는 샘플링 간격, , kI는 상태 매트릭스와 입력 매트릭스에 의해 결정되는 파라메타 값, T는 입력 매트릭스에 의해 결정되는 파라메타 값을 각각 의미하는 것을 특징으로 하는 캐스케이드 구조 기반의 큐 관리 장치. - 삭제
- 삭제
- 제1항에 있어서, 상기 외부 루프 제어부는
상기 내부 루프 제어부에 의해 조정된 윈도우 크기와 상기 입력 트래픽의 용량을 기반으로 상기 현재 큐 길이를 산출하는 큐 길이 산출부; 및
상기 큐 길이 산출부에 의해 산출된 현재 큐 길이와 상기 목표 큐 길이를 비교하여 큐 길이차를 확인하고, 상기 큐 길이차에 기반으로 상기 패킷 폐기 확률을 산출하여 상기 내부 루프 제어부에 제공하는 패킷 폐기 확률 산출부를 포함하는 것을 특징으로 하는 캐스케이드 구조 기반의 큐 관리 장치. - 제1항에 있어서,
목표 지연 값과 네트워크 전송 용량을 기반으로 상기 목표 큐 길이를 결정하는 큐 길이 결정부를 더 포함하는 것을 특징으로 하는 캐스케이드 구조 기반의 큐 관리 장치. - 목표 지연 값과 네트워크 전송 용량을 기반으로 목표 큐 길이를 결정하는 큐 길이 결정 단계;
상기 목표 큐 길이와 현재 큐 길이를 기반으로 패킷 폐기 확률을 산출하는 패킷 폐기 확률 산출 단계;
현재 윈도우 크기와 상기 패킷 폐기 확률간의 차이값을 획득한 후, 상기 차이값을 고려하여 상기 패킷 폐기 확률을 조정하는 패킷 폐기 확률 조정 단계;
상기 조정된 패킷 폐기 확률을 기반으로 상기 현재 윈도우 크기를 조정하는 윈도우 크기 조정 단계; 및
상기 조정된 윈도우 크기와 입력 트랙픽의 용량을 기반으로 상기 현재 큐 길이를 재산출하는 큐 길이 산출 단계;를 포함하며,
상기 윈도우 크기 조정 단계를 통해 조정된 윈도우 크기는 현재 윈도우 크기로써 상기 패킷 폐기 확률 조정 단계에 다시 제공되고,
상기 큐 길이 산출 단계를 통해 재산출된 큐 길이는 현재 윈도우 크기로써 상기 패킷 폐기 확률 산출 단계에 다시 제공되고,
상기 패킷 폐기 확률 조정 단계는
", "의 식에 따라 패킷 폐기 확률 조정 동작을 수행하는 것을 특징으로 하며,
상기 p2는 패킷 폐기 확률, e2는 윈도우 크기와 패킷 폐기 확률간의 차이값, Ts는 샘플링 간격, , kI는 상태 매트릭스와 입력 매트릭스에 의해 결정되는 파라메타 값, T는 입력 매트릭스에 의해 결정되는 파라메타 값을 각각 의미하는 것을 특징으로 하는 캐스케이드 구조 기반의 큐 관리 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160167829A KR102011184B1 (ko) | 2016-12-09 | 2016-12-09 | 캐스케이드 구조 기반의 큐 관리 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160167829A KR102011184B1 (ko) | 2016-12-09 | 2016-12-09 | 캐스케이드 구조 기반의 큐 관리 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180066696A KR20180066696A (ko) | 2018-06-19 |
KR102011184B1 true KR102011184B1 (ko) | 2019-08-14 |
Family
ID=62790671
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160167829A KR102011184B1 (ko) | 2016-12-09 | 2016-12-09 | 캐스케이드 구조 기반의 큐 관리 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102011184B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102391804B1 (ko) | 2020-11-23 | 2022-04-28 | 엘아이지넥스원 주식회사 | FQ-CoDel 알고리즘의 매개변수 최적화 방법 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100918731B1 (ko) | 2001-04-09 | 2009-09-24 | 텔레폰악티에볼라겟엘엠에릭슨(펍) | 큐 버퍼를 제어하는 방법 |
-
2016
- 2016-12-09 KR KR1020160167829A patent/KR102011184B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100918731B1 (ko) | 2001-04-09 | 2009-09-24 | 텔레폰악티에볼라겟엘엠에릭슨(펍) | 큐 버퍼를 제어하는 방법 |
Non-Patent Citations (1)
Title |
---|
‘Cascade Probability Control to Mitigate Bufferbloat under Multiple Real-World TCP Stacks’, Mathematical Problems in Engineering, Vol.2015, No.628583, pp.1-13, 2015.08.13.* |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102391804B1 (ko) | 2020-11-23 | 2022-04-28 | 엘아이지넥스원 주식회사 | FQ-CoDel 알고리즘의 매개변수 최적화 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20180066696A (ko) | 2018-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Xu et al. | A new TCP/AQM system analysis | |
CN104737581B (zh) | 增强aqm以对抗无线损失 | |
CN104486166A (zh) | 一种基于QoS的网络化控制系统采样周期调整方法 | |
US9350669B2 (en) | Network apparatus, performance control method, and network system | |
Altman et al. | TCP network calculus: The case of large delay-bandwidth product | |
Wigren | Robust $\mathcal {L} _ {2} $ Stable Networked Control of Wireless Packet Queues in Delayed Internet Connections | |
KR102011184B1 (ko) | 캐스케이드 구조 기반의 큐 관리 장치 및 방법 | |
Wang et al. | A robust proportional controller for AQM based on optimized second-order system model | |
Deart et al. | Fuzzy logic queue discipline processing over bottleneck link | |
CN103095601A (zh) | 一种用于通信网络拥塞控制的主动队列管理方法 | |
Humaid et al. | Development of model predictive controller for congestion control problem | |
Guan et al. | Control of queueing delay in a buffer with time-varying arrival rate | |
Lee et al. | Congestion Control of Active Queue Management Routers Based on LQ-Servo Control. | |
Vilanova et al. | Robust 2-DoF PID control for Congestion control of TCP/IP Networks | |
Xiong et al. | On the modeling and optimization of discontinuous network congestion control systems | |
Avrachenkov et al. | Convergence of trajectories and optimal buffer sizing for AIMD congestion control | |
Zhang et al. | PACC: A Proactive CNP Generation Scheme for Datacenter Networks | |
Zhang et al. | Adaptive fast TCP | |
Manikandan et al. | Active queue management based congestion control protocol for wireless networks | |
Sonkoly et al. | Understanding highspeed TCP: A control-theoretic perspective. | |
Lee et al. | Optimal Tracking Controller Design for Active Queue Management Routers via LQ‐Servo | |
Liu | Network traffic control based on modern control techniques: fuzzy logic and network utility maximization | |
Chydzinski et al. | Burst Ratio of Packet Losses in Individual Network Flows | |
Hayes et al. | Robust active queue management using a quantitative feedback theory based loop-shaping framework | |
Xu et al. | A new scheme for network congestion control based on modified adaptive Smith predictor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |