KR100937218B1 - 패킷 스케줄링 시스템 및 방법 - Google Patents

패킷 스케줄링 시스템 및 방법 Download PDF

Info

Publication number
KR100937218B1
KR100937218B1 KR1020070130345A KR20070130345A KR100937218B1 KR 100937218 B1 KR100937218 B1 KR 100937218B1 KR 1020070130345 A KR1020070130345 A KR 1020070130345A KR 20070130345 A KR20070130345 A KR 20070130345A KR 100937218 B1 KR100937218 B1 KR 100937218B1
Authority
KR
South Korea
Prior art keywords
traffic
time
packet
priority
output
Prior art date
Application number
KR1020070130345A
Other languages
English (en)
Other versions
KR20090062878A (ko
Inventor
황현용
이범철
이정희
박영호
박대근
이승우
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020070130345A priority Critical patent/KR100937218B1/ko
Publication of KR20090062878A publication Critical patent/KR20090062878A/ko
Application granted granted Critical
Publication of KR100937218B1 publication Critical patent/KR100937218B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 패킷 스케줄링 시스템 및 방법에 관한 것으로, 입력되는 트래픽이 기 설정된 허용 대역을 초과하는 경우, 대역 초과를 발생시키는 비정상적인 플로우 패킷들의 출력시간과 우선순위를 조정하는 입력 스케줄러 및 입력 스케줄러에서 결정된 패킷의 출력시간과 우선순위에 따라 패킷을 차등적으로 처리하는 출력 스케줄러를 포함한다. 본 발명에 따르면, 입력 트래픽을 실시간 트래픽과 비실시간 트래픽으로 분류하여 트래픽을 구성하는 패킷들의 출력시간과 우선순위를 결정하고 출력 스케줄러는 입력 스케줄러에서 결정된 패킷들의 출력시간과 우선순위에 따라서 패킷을 전송하기 때문에 입력된 트래픽의 속성을 보존하면서, 출력 트래픽의 대역을 자동적으로 조절할 수 있는 이점이 있다.
입력 스케줄러, 출력 스케줄러, 패킷, 우선순위, 출력시간

Description

패킷 스케줄링 시스템 및 방법{ System and method for packet scheduling }
본 발명은 패킷 스케줄링 시스템 및 방법에 관한 것으로, 특히 입력된 트래픽을 실시간 트래픽과 비실시간 트래픽으로 구분하고, 미리 결정된 허용 대역과 비교하여 트래픽의 속성 및 대역 초과 여부에 따라 패킷을 차등적으로 처리하는 패킷 스케줄링 시스템 및 방법에 관한 것이다.
본 발명은 정보통신부 및 정보통신연구진흥원의 IT성장동력기술개발의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2007-S-012-01, 과제명: 멀티미디어 컨버전스 네트워크 온 칩 기술 개발].
현재 데이터 패킷망에서는 VoIP(Voice over IP), VoD(Video on Demand), IPTV(Internet Protocol Television) 등의 실시간 처리를 요구하는 다양한 멀티미디어 서비스를 제공한다. 이때, 데이터 패킷망에서 적용되는 스위치들은 일반적인 데이터 전송을 위한 비실시간 트래픽과 다양한 멀티미디어 서비스를 위한 실시간 트래픽을 구분하고, 각 트래픽의 특성에 따라서 차별적으로 처리해주는 방식이 요구된다.
일반적으로, 데이터 패킷망에서 입력 트래픽이 스위치에 허용된 대역을 초과 하는 경우에 대역 조절을 위하여 분류 기반의 대역 관리 방식을 사용한다. 이때, 분류 기반 대역 관리 방법은 각 단말에서 보내는 패킷을 스위치에서 2 계층부터 상위 계층까지 분석하고, 그 결과에 따라 패킷의 속성별로 세밀하게 분류한 마이크로 플로우를 생성한다.
여기서, 분류 기반 대역 관리 방법은 마이크로 플로우 단위로 각각의 대역을 관리하기 때문에 모든 마이크로 플로우마다 속성 정보(QoS Descriptor)를 미리 결정해주어야 하고, 스위치 내부의 모든 마이크로 플로우별로 대역을 측정하고 조절해야 하므로, 그 과정이 매우 복잡하다.
또한, 일반적인 스위치의 대역 제한 방법은 다음과 같다. 입력포트로 들어온 패킷은 입력포트 로직, 스위치 패브릭, 그리고 출력포트 로직을 경유하여 출력포트)로 나간다. 출력포트 로직에 트래픽의 과부하가 발생하는 경우에 트래픽 모니터는 폭주가 발생되었음을 출력포트 컨트롤러에 알린다. 출력포트 컨트롤러는 플로우 컨트롤 정보를 입력포트 컨트롤러에 전송한다. 입력포트 컨트롤러는 대역 제한 필터를 통하여 출력포트로 전송되는 패킷의 일부를 제거한다.
그러나, 이러한 대역 제한 방법은 정상적으로 전송되는 패킷뿐만이 아니라 폭주에 의하여 제거될 패킷까지 처리하게 되므로, 불필요한 부하가 발생함에 따라 그 효율성이 저하되는 문제가 있다.
본 발명의 목적은, 입력 트래픽을 실시간 트래픽과 비실시간 트래픽으로 구 분하여 차등적인 출력시간과 우선순위를 부여함에 따라 트래픽의 속성을 유지하고, 입력 트래픽의 대역 조절을 위하여 대역 초과를 발생시키는 비정상적인 플로우만을 입력포트에서 효과적으로 처리하도록 하는 패킷 스케줄링 시스템 및 방법을 제공함에 있다.
본 발명에 따른 패킷 스케줄링 방법은, 입력포트를 통해 수신된 패킷을 이용하여 적어도 하나의 플로우를 생성하는 단계, 상기 플로우를 포함하는 트래픽을 실시간 트래픽과 비실시간 트래픽으로 분류하고, 그 대역을 측정하는 단계, 상기 각 트래픽의 대역을 기 설정된 허용대역과 비교하여, 상기 허용대역을 초과하지 않는 트래픽에 포함된 각 플로우에 대해 우선순위 및 출력시간을 설정하는 단계, 및 상기 각 플로우에 대해 설정된 우선순위 및 출력시간에 따라 상기 각 플로우에 포함된 패킷을 순차적으로 전송하는 단계를 포함하며, 상기 우선순위 및 출력시간을 설정하는 단계는, 상기 실시간 트래픽에 포함된 각 플로우에 대한 출력시간이 상기 비실시간 트래픽에 포함된 각 플로우에 대한 출력시간 보다 앞선 시간으로 설정된다.
상기 우선순위 및 출력시간을 설정하는 단계는, 상기 실시간 트래픽에 포함된 각 플로우에 대한 우선순위가 상기 비실시간 트래픽에 포함된 각 플로우에 대한 우선순위 보다 높게 설정되며, 상기 실시간 트래픽에 포함된 각 플로우에 대한 출력시간이 상기 비실시간 트래픽에 포함된 각 플로우에 대한 출력시간 보다 앞선 시간으로 설정된다.
또한, 상기 적어도 하나의 플로우 생성 시, 각 플로우에 대한 생성 시간을 감지하는 단계를 더 포함하며, 상기 각 트래픽의 대역을 기 설정된 허용대역과 비교하여 상기 허용대역을 초과하는 경우, 해당 트래픽에 포함된 플로우 중 그 생성 시간이 가장 늦은 플로우를 제어 플로우로 설정하는 단계를 더 포함한다.
또한, 상기 제어 플로우에 대한 우선순위 및 출력시간을 설정하는 단계를 더 포함하며, 상기 제어 플로우에 대한 우선순위가 상기 허용대역을 초과하지 않는 트래픽에 포함된 플로우에 대해 설정된 우선순위 보다 낮은 우선순위를 갖도록 설정되며, 상기 제어 플로우에 대한 출력시간이 상기 허용대역을 초과하지 않는 트래픽에 포함된 플로우에 대해 설정된 출력시간 보다 지연된 시간으로 설정된다.
또한, 상기 패킷 전송 시 높은 우선순위를 갖는 패킷 순으로 전송하며, 동일 우선순위의 패킷 중에서 빠른 출력시간을 갖는 패킷 순으로 전송한다.
또한, 본 발명에 따른 패킷 스케줄링 시스템은, 입력포트를 통해 수신된 패킷과 그를 포함하는 트래픽의 속성에 따라 상기 패킷에 대한 우선순위 및 출력시간을 차등적으로 설정하는 입력 스케줄러, 및 상기 입력 스케줄러를 통해 설정된 상기 패킷의 우선순위 및 출력시간에 따라 순차적으로 패킷을 전송하는 출력 스케줄러를 포함하며, 상기 입력 스케줄러는, 상기 트래픽을 실시간 트래픽과 비실시간 트래픽으로 분류하고, 상기 실시간 트래픽에 포함된 패킷이 상기 비실시간 트래픽에 포함된 패킷보다 빠른 출력시간을 갖도록 설정한다.
상기 입력 스케줄러는 상기 트래픽을 실시간 트래픽과 비실시간 트래픽으로 분류하고, 상기 실시간 트래픽에 포함된 패킷이 상기 비실시간 트래픽에 포함된 패킷보다 높은 우선순위를 갖도록 설정하며, 상기 트래픽을 실시간 트래픽과 비실시간 트래픽으로 분류하고, 상기 실시간 트래픽에 포함된 패킷이 상기 비실시간 트래픽에 포함된 패킷보다 빠른 출력시간을 갖도록 설정한다.
또한, 상기 입력 스케줄러는 상기 각 트래픽의 대역을 측정하여 기 설정된 허용대역을 초과하는 경우, 상기 트래픽에 포함된 비정상 패킷을 제외시키고, 상기 비정상 패킷에 대해 낮은 우선순위를 갖도록 설정한다.
한편, 상기 출력 스케줄러는 일정한 시간 간격을 갖는 날짜 큐와, 서로 다른 우선순위를 갖는 우선순위 큐를 포함하며, 상기 패킷은 상기 패킷에 대해 설정된 우선순위 및 출력시간에 대응하는 큐에 각각 저장된다.
본 발명에 따른 패킷 스케줄링 시스템 및 방법은, 입력 트래픽을 실시간 트래픽과 비실시간 트래픽으로 분류하여 트래픽을 구성하는 패킷들의 출력시간과 우선순위를 결정하고 출력 스케줄러는 입력 스케줄러에서 결정된 패킷들의 출력시간과 우선순위에 따라서 패킷을 전송하기 때문에 입력된 트래픽의 속성을 보존하면서, 출력 트래픽의 대역을 자동적으로 조절할 수 있는 이점이 있다.
또한, 입력 스케줄러를 통해 대역 초과를 발생시키는 비정상적인 플로우만을 검색하고 출력시간과 우선순위를 재조정하므로 비교적 간단한 방법으로 대역을 조절하는 것이 가능한 이점이 있다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 설명하면 다음과 같다.
도 1은 본 발명의 일실시예에 따른 패킷 스케줄링 시스템에 적용되는 스위치의 구성이 도시된 도면이다. 도 1을 참조하면, 본 발명에 따른 패킷 스케줄링 시스템에 적용되는 스위치는 입력포트(10), 입력 스케줄러(20), 출력 스케줄러(30), 스위치 패브릭(40) 및 출력포트(50)를 포함한다.
입력 스케줄러(20)는 입력포트(10)를 통해 입력되는 패킷을 이용하여 적어도 하나의 플로우를 생성하고, 이때 생성된 플로우를 포함하는 트래픽을 실시간 트래픽과 비실시간 트래픽으로 각각 분류한다. 이때, 입력 스케줄러(20)는 각 플로우에 포함된 패킷과, 각 플로우를 포함하는 트래픽의 속성에 따라 출력시간과 우선순위를 결정한다.
출력 스케줄러(30)는 입력 스케줄러(20)에서 결정된 패킷의 출력시간과 우선순위에 기초하여 각 패킷을 출력포트(50)를 통해 외부로 전송되며, 출력포트(50) 별로 각각 독립적으로 동작된다. 이때, 출력 스케줄러(30)는 각 패킷에 대해 결정된 출력시간에 패킷을 전송하기 위하여 일정한 시간 간격(Discrete Time)을 갖는 날짜 큐와, 패킷의 우선순위에 따라서 패킷을 전송하기 위하여 여러 개의 우선순위를 갖는 우선순위 큐로 구성된다.
상기와 같이 구성되는 패킷 스케줄링 시스템은 그의 동작 흐름을 통해 좀 더 상세히 설명하고자 한다.
도 2 및 도 4는 본 발명의 일실시예에 따른 패킷 스케줄링 방법에 대한 동작 흐름이 도시된 순서도이다.
먼저, 도 2는 입력 스케줄러에서의 패킷 스케줄링 동작을 도시한 순서도이다. 도 2를 참조하면, 입력 스케줄러(20)는 입력포트(10)로부터 수신된 패킷을 입력받는다(S100). 이때, 입력 스케줄러(20)는 수신된 입력 패킷을 포함하는 적어도 하나의 플로우를 생성하고, 플로우의 생성 시간을 측정한다(S110).
또한, 입력 스케줄러(20)는 생성된 적어도 하나의 플로우를 포함하는 트래픽을 실시간 트래픽과 비실시간 트래픽으로 분류하고, 분류된 실시간 트래픽과 비실 시간 트래픽의 대역을 각각 측정한다(S130, S160)
입력 스케줄러(20)는 'S130' 과정에서 측정된 실시간 트래픽의 대역과 기 설정된 허용 대역(W1)을 비교하여, 측정된 실시간 트래픽의 대역이 기 설정된 허용 대역(W1)을 초과하는지 판별한다(S140). 만일, 허용 대역(W1)을 초과하는 경우, 가장 최근에 생성된 플로우를 제어 플로우로 설정하고(S143), 제어 플로우를 제외한 나머지 플로우들로 구성된 실시간 트래픽의 대역을 측정한다(S146).
한편, 입력 스케줄러(20)는 측정된 실시간 트래픽의 대역이 허용 대역(W1)을 초과하지 않는 경우(S140), 각 플로우에 대한 우선순위 및 출력시간을 설정한다(S150). 이때, 대역 초과를 발생시키지 않는 정상 플로우에는 우선순위를 높게 부여하고, 출력시간은 빠른 시간 내에 전송할 수 있도록 결정한다. 한편, 대역 초과를 발생시킨 제어 플로우에는 우선순위를 낮게 부여하고, 출력시간은 시간 지연을 두고 나중에 전송할 수 있도록 결정한다.
또한, 입력 스케줄러(20)는 'S160' 과정에서 측정된 비실시간 트래픽의 대역과 기 설정된 허용 대역(W2)을 비교하여, 측정된 비실시간 트래픽의 대역이 기 설정된 허용 대역(W2)을 초과하는지 판별한다(S170). 만일, 허용 대역(W2)을 초과하는 경우, 가장 최근에 생성된 플로우를 제어 플로우로 설정하고(S173), 제어 플로우를 제외한 나머지 플로우들로 구성된 비실시간 트래픽의 대역을 측정한다(S176).
한편, 입력 스케줄러(20)는 측정된 비실시간 트래픽의 대역이 허용 대역(W2)을 초과하지 않는 경우(S170), 각 플로우에 대한 우선순위 및 출력시간을 설정한다(S180). 이때, 대역 초과를 발생시키지 않는 정상 플로우에는 우선순위를 높게 부여하고, 출력시간은 빠른 시간 내에 전송할 수 있도록 결정한다. 한편, 대역 초과를 발생시킨 제어 플로우에는 우선순위를 낮게 부여하고, 출력시간은 시간 지연을 두고 나중에 전송할 수 있도록 결정한다.
이때, 입력 스케줄러(20)는 실시간 트래픽의 출력시간이 비실시간 트래픽의 출력시간 보다 엄격한 시간 관리를 통하여 전송한다. 또한, 실시간 트래픽의 우선순위를 비실시간 트래픽의 우선순위 보다 높게 설정한다.
마지막으로, 입력 스케줄러(20)는 실시간 트래픽에 포함된 플로우와, 비실시간 트래픽에 포함된 플로우에 대한 우선순위 및 출력시간 정보를 출력 스케줄러(30)로 전송한다(S190).
도 3은 도 2의 동작을 설명하기 위해 참조되는 도면이다. 도 3에 도시된 바와 같이, 입력포트(10)를 통해 입력된 패킷을 포함하여 플로우1(F1), 플로우2(F2) 및 플로우3(F3)을 각각 생성하고, 각 플로우(F1, F2, F3)가 생성된 시간(t1, t2, t3)을 측정한다. 만일, 이때 생성된 플로우(F1, F2, F3)를 모두 포함하는 트래픽이 실시간 트래픽으로 분류된 경우, 입력 스케줄러(20)는 분류된 실시간 트래픽의 대역(BW1)을 측정하고, 기 설정된 허용대역(W1)을 초과하는지 판단한다. 만일, 분류된 실시간 트래픽의 대역 BW1이 기 설정된 허용대역(W1)을 초과하는 것으로 판단되면, 가장 최근에 생성된 플로우인 F3을 제어 플로우로 결정하고, 플로우 F3을 제외한 나머지 플로우(F1, F2)로 구성된 실시간 트래픽의 대역(BW2)을 측정한다.
이때, 입력 스케줄러(20)는 정상 플로우인 'F1'과 'F2'에 대해 높은 우선순위를 부여하고, 출력시간은 빠른 시간 내에 전송할 수 있도록 결정한다. 한편, 제어 플로우인 'F3'은 정상 플로우인 'F1'과 'F2' 보다 낮은 우선순위를 부여하고, 출력시간은 시간 지연을 두고 나중에 전송할 수 있도록 결정한다.
도 4는 출력 스케줄러에서의 패킷 스케줄링 동작을 도시한 순서도이다. 도 4를 참조하면, 출력 스케줄러(30)는 입력 스케줄러(20)로부터 각 플로우에 대한 우선순위 및 출력시간 정보를 수신하고(S200), 수신된 정보에 기초하여 각 플로우에 포함된 패킷을 저장한다(S210). 이때, 각 패킷은 설정된 우선순위에 대응하는 우선순위 큐(Priority Que, PQ)에 각각 저장되며, 설정된 출력시간에 대응하는 날짜 큐(Date Que, DQ)에 각각 저장된다.
한편, 출력 스케줄러(30)는 현재시간 정보(TC)를 수신한다(S220). 출력 스케줄러(30)는 수신된 현재시간 정보(TC)와 일치하는 출력시간을 갖는 현재 날짜 큐(DC)를 검색하여 선택하고(S230), 이때 가장 높은 우선순위를 갖는 우선순위 큐(PQ)를 선택한다(S240).
만일, 동일 우선순위 큐 중에서 현재 날짜 큐(DC) 보다 이전 날짜 큐에 패킷이 저장되어 있는 경우(S250), 출력 스케줄러(30)는 이전 날짜 큐에 저장되어 있는 패킷을 먼저 전송한 후(S260), 현재 날짜 큐에 저장된 패킷을 전송한다(S270, S280). 이때, 현재 날자 큐에 저장된 패킷이 존재하지 않거나(S270), 혹은 현재 날 짜 큐에 저장된 패킷 전송이 완료된 경우(S280), 출력 스케줄러(30)는 우선순위 등급을 변경하여, 다음 우선순위를 갖는 우선순위 큐를 선택한다(S300). 물론, 다음 우선순위를 갖는 우선순위 큐에 대해서도 'S250' 내지 'S300'의 과정을 반복하여 수행하도록 한다.
반면, 출력 스케줄러(30)는 현재시간 정보(TC)로부터 다음 날짜 큐의 시간이 경과하면, 현재 날짜 큐를 다음 날짜 큐로 변경한다(S290). 여기서, 'S290' 과정은 이전 날짜 큐에 저장된 패킷 전송이 모두 종료된 후의 시점일 수도 있으나, 이전 날짜 큐에 저장된 패킷 전송이 완료되기 이전의 시점일 수도 있다.
출력 스케줄러(30)는 현재 날짜 큐가 변경된 후, 저장된 모든 패킷을 전송할 때까지 'S240' 내지 'S300'의 과정을 반복하여 수행한다.
도 5는 도 4의 동작을 설명하기 위해 참조되는 도면이다. 앞서 설명한 바와 같이, 출력 스케줄러(30)는 각 패킷에 대해 결정된 출력시간에 패킷을 전송하기 위하여 일정한 시간 간격(Discrete Time)을 가지는 날짜 큐(DQ)와, 각 패킷의 우선순위에 따라 패킷을 전송하기 위하여 여러 개의 우선순위를 가지는 우선순위 큐(PQ)로 구성된다. 이때 출력 스케줄러(30)는 입력 스케줄러(20)로부터 전달받은 패킷의 출력시간과 우선순위 정보를 이용하여 각 날짜 큐와 우선순위 큐에 대응되는 패킷을 각각 저장한다.
다시 말해, 도 5의 D0, D1, D2, ... , Dm은 시간 순서에 따라 일정 시간 간격을 갖는 날짜 큐이고, P0, P1, P2, ... , Pn은 각각 서로 다른 우선순위를 갖는 우선 순위 큐이다. 이때, D0, D1, D2, ... , Dm 중 D0가 가장 빠른 시간순서를 가지며, Dm이 가장 느린 시간순서를 갖는다. 마찬가지로, P0, P1, P2, ... , Pn 중 P0는 가장 높은 우선순위를 갖는 큐이고, Pn은 가장 낮은 우선순위를 갖는 큐로서, 높은 우선순위부터 차례로 배열된다.
입력 스케줄러(20)를 통해 입력된 패킷은 각 패킷에 대해 결정된 출력시간과 우선순위에 대응되는 큐에 각각 저장된다. 즉, 수신된 패킷이 (가), (나), (다), (라), (마), (바)라고 가정했을 때, 출력 스케줄러(30)는 수신된 현재시간 정보(TC)가 D2의 시간과 일치하는 경우, D2를 현재 날짜 큐로 설정한다. 이때, 가장 높은 우선순위를 갖는 P0에서 이전 날짜 큐인 D0, D1에 저장된 패킷이 존재하지 않으므로, 현재 날짜 큐인 D2에 저장된 (가)를 전송한다.
또한, 출력 스케줄러(30)는 P0에서 D2에 저장된 패킷 전송 완료 후, 우선순위 등급을 변경하여 다음 우선순위를 갖는 P1에 저장된 패킷을 전송한다. 이때, 이전 날짜 큐인 D1에 저장된 패킷인 (나)가 존재하므로, (나)를 먼저 전송한 후에 현재 날짜 큐인 D2에 저장된 패킷인 (다)를 전송한다. 마찬가지로, P1에서 D2에 저장된 패킷 전송 완료 후, 우선순위 등급을 변경하여 다음 우선순위를 갖는 P2에 저장된 패킷을 전송한다. 이때, 이전 날짜 큐인 D0에 저장된 패킷인 (라)가 존재하므로, (나)를 먼저 전송한다. 한편, 현재 날짜 큐인 D2에 저장된 패킷이 존재하지 않으므로, 우선순위 등급을 변경하여 Pn에 저장된 패킷인 (바)를 전송한다.
출력 스케줄러(30)는 수신된 현재시간 정보(TC)에 따라 현재 날짜 큐를 D3, ... , Dm으로 변경하며, D2에서와 마찬가지로 저장된 패킷을 전송한다. 이와 같은 동작에 의해 (마)에 저장된 패킷까지 모두 전송되면, 출력 스케줄러(30)는 입력 스케줄러(20)로부터 다음 입력되는 패킷의 출력시간 및 우선순위에 따른 전송 동작을 반복하여 수행하게 된다.
따라서, 본 발명에 따른 패킷 스케줄링 시스템 및 방법은 각 패킷과 그 패킷이 포함된 트래픽의 속성에 따라 우선순위 및 출력시간을 차등적으로 설정하고, 각 패킷에 대해 설정된 우선순위 및 출력시간에 따라 패킷을 전송함으로써, 스위치로 입력된 트래픽을 보다 효과적으로 처리할 수 있게 된다.
이상과 같이 본 발명에 의한 패킷 스케줄링 시스템 및 방법은 예시된 도면을 참조로 설명하였으나, 본 명세서에 개시된 실시예와 도면에 의해 본 발명은 이에 한정되지 않고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 응용될 수 있다.
도 1 은 본 발명의 일실시예에 따른 패킷 스케줄링 시스템에 적용되는 스위치의 구성이 도시된 도,
도 2 는 본 발명의 일실시예에 따른 입력 스케줄러에서의 패킷 스케줄링 동작이 도시된 순서도,
도 3 은 도 2의 동작을 설명하는데 참조되는 도,
도 4 는 본 발명의 일실시예에 따른 출력 스케줄러에서의 패킷 스케줄링 동작이 도시된 순서도, 그리고
도 5 는 도 4의 동작을 설명하는데 참조되는 도이다.
<도면의 주요 부분에 관한 부호의 설명>
10: 입력포트 20: 입력 스케줄러
30: 출력 스케줄러 40: 스위치 패브릭
50: 출력포트

Claims (19)

  1. 입력포트를 통해 수신된 패킷을 이용하여 적어도 하나의 플로우를 생성하는 단계;
    상기 플로우를 포함하는 트래픽을 실시간 트래픽과 비실시간 트래픽으로 분류하고, 그 대역을 측정하는 단계;
    상기 각 트래픽의 대역을 기 설정된 허용대역과 비교하여, 상기 허용대역을 초과하지 않는 트래픽에 포함된 각 플로우에 대해 우선순위 및 출력시간을 설정하는 단계; 및
    상기 각 플로우에 대해 설정된 우선순위 및 출력시간에 따라 상기 각 플로우에 포함된 패킷을 순차적으로 전송하는 단계;를 포함하며,
    상기 우선순위 및 출력시간을 설정하는 단계는,
    상기 실시간 트래픽에 포함된 각 플로우에 대한 출력시간이 상기 비실시간 트래픽에 포함된 각 플로우에 대한 출력시간 보다 앞선 시간으로 설정되는 것을 특징으로 하는 패킷 스케줄링 방법.
  2. 제 1 항에 있어서, 상기 우선순위 및 출력시간을 설정하는 단계는,
    상기 실시간 트래픽에 포함된 각 플로우에 대한 우선순위가 상기 비실시간 트래픽에 포함된 각 플로우에 대한 우선순위 보다 높게 설정되는 것을 특징으로 하는 패킷 스케줄링 방법.
  3. 삭제
  4. 제 1 항에 있어서,
    상기 적어도 하나의 플로우 생성 시, 각 플로우에 대한 생성 시간을 감지하는 단계;를 더 포함하는 패킷 스케줄링 방법.
  5. 제 4 항에 있어서,
    상기 각 트래픽의 대역을 기 설정된 허용대역과 비교하여, 상기 허용대역을 초과하는 경우, 해당 트래픽에 포함된 플로우 중 그 생성 시간이 가장 늦은 플로우를 제어 플로우로 설정하는 단계;를 더 포함하는 패킷 스케줄링 방법.
  6. 제 5 항에 있어서,
    상기 제어 플로우를 제외한 나머지 플로우를 포함하는 트래픽의 대역을 측정하는 단계;를 더 포함하는 패킷 스케줄링 방법.
  7. 제 5 항에 있어서,
    상기 제어 플로우에 대한 우선순위 및 출력시간을 설정하는 단계;를 더 포함하는 패킷 스케줄링 방법.
  8. 제 7 항에 있어서,
    상기 제어 플로우에 대한 우선순위가 상기 허용대역을 초과하지 않는 트래픽에 포함된 플로우에 대해 설정된 우선순위 보다 낮은 우선순위를 갖도록 설정되는 것을 특징으로 하는 패킷 스케줄링 방법.
  9. 제 7 항에 있어서,
    상기 제어 플로우에 대한 출력시간이 상기 허용대역을 초과하지 않는 트래픽에 포함된 플로우에 대해 설정된 출력시간 보다 지연된 시간으로 설정되는 것을 특징으로 하는 패킷 스케줄링 방법.
  10. 제 1 항에 있어서,
    상기 패킷 전송 시 높은 우선순위를 갖는 패킷 순으로 전송하는 것을 특징으로 하는 패킷 스케줄링 방법.
  11. 제 1 항에 있어서,
    상기 패킷 전송 시 동일 우선순위의 패킷 중에서 빠른 출력시간을 갖는 패킷 순으로 전송하는 것을 특징으로 하는 패킷 스케줄링 방법.
  12. 입력포트를 통해 수신된 패킷과 그를 포함하는 트래픽의 속성에 따라 상기 패킷에 대한 우선순위 및 출력시간을 차등적으로 설정하는 입력 스케줄러; 및
    상기 입력 스케줄러를 통해 설정된 상기 패킷의 우선순위 및 출력시간에 따라 순차적으로 패킷을 전송하는 출력 스케줄러;를 포함하며,
    상기 입력 스케줄러는, 상기 트래픽을 실시간 트래픽과 비실시간 트래픽으로 분류하고, 상기 실시간 트래픽에 포함된 패킷이 상기 비실시간 트래픽에 포함된 패킷보다 빠른 출력시간을 갖도록 설정하는 것을 특징으로 하는 패킷 스케줄링 시스템.
  13. 제 12 항에 있어서,
    상기 입력 스케줄러는, 상기 트래픽을 실시간 트래픽과 비실시간 트래픽으로 분류하고, 상기 실시간 트래픽에 포함된 패킷이 상기 비실시간 트래픽에 포함된 패킷보다 높은 우선순위를 갖도록 설정하는 것을 특징으로 하는 패킷 스케줄링 시스템.
  14. 삭제
  15. 제 12 항에 있어서,
    상기 입력 스케줄러는, 상기 각 트래픽의 대역을 측정하여 기 설정된 허용대역을 초과하는 경우, 상기 트래픽에 포함된 비정상 패킷을 제외시키고,
    상기 비정상 패킷에 대해 낮은 우선순위를 갖도록 설정하는 것을 특징으로 하는 패킷 스케줄링 시스템.
  16. 제 15 항에 있어서,
    상기 입력 스케줄러는, 상기 비정상 패킷에 대해 지연된 출력시간을 갖도록 설정하는 것을 특징으로 하는 패킷 스케줄링 시스템.
  17. 제 12 항에 있어서,
    상기 출력 스케줄러는, 일정한 시간 간격을 갖는 날짜 큐와, 서로 다른 우선순위를 갖는 우선순위 큐를 포함하며,
    상기 패킷은, 상기 패킷에 대해 설정된 우선순위 및 출력시간에 대응하는 큐에 각각 저장되는 것을 특징으로 하는 패킷 스케줄링 시스템.
  18. 제 12 항에 있어서,
    상기 출력 스케줄러는, 상기 패킷 전송 시 높은 우선순위를 갖는 패킷 순으로 전송하는 것을 특징으로 하는 패킷 스케줄링 시스템.
  19. 제 18 항에 있어서,
    상기 출력 스케줄러는, 상기 패킷 전송 시 동일 우선순위의 패킷 중에서 빠른 출력시간을 갖는 패킷 순으로 전송하는 것을 특징으로 하는 패킷 스케줄링 시스템.
KR1020070130345A 2007-12-13 2007-12-13 패킷 스케줄링 시스템 및 방법 KR100937218B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070130345A KR100937218B1 (ko) 2007-12-13 2007-12-13 패킷 스케줄링 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070130345A KR100937218B1 (ko) 2007-12-13 2007-12-13 패킷 스케줄링 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20090062878A KR20090062878A (ko) 2009-06-17
KR100937218B1 true KR100937218B1 (ko) 2010-01-20

Family

ID=40992059

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070130345A KR100937218B1 (ko) 2007-12-13 2007-12-13 패킷 스케줄링 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR100937218B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101506448B1 (ko) 2013-09-25 2015-03-27 에스케이 텔레콤주식회사 M2m 트래픽 관리 방법 및 장치

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102269068B1 (ko) 2017-03-10 2021-06-24 한국전자통신연구원 스위칭을 위한 스케줄링 방법 및 스케줄러
KR102519838B1 (ko) * 2018-04-04 2023-04-11 한국전자통신연구원 데이터 융합 스위칭 장치 및 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000039013A (ko) * 1998-12-10 2000-07-05 이계철 비동기 전달 모드 스위치망의 입력 제어 장치 및 그 방법
KR20040053859A (ko) * 2002-12-16 2004-06-25 한국전자통신연구원 이동통신에서의 하향 링크 패킷 스케줄링 시스템 및 그방법, 그에 따른 프로그램이 저장된 기록매체
KR20050067933A (ko) * 2003-12-29 2005-07-05 엘지전자 주식회사 네트워크 혼잡 제어 장치 및 방법
KR20060073471A (ko) * 2004-12-23 2006-06-28 한국전자통신연구원 통합 트래픽을 위한 패킷 레벨 자원 할당 방법 및 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000039013A (ko) * 1998-12-10 2000-07-05 이계철 비동기 전달 모드 스위치망의 입력 제어 장치 및 그 방법
KR20040053859A (ko) * 2002-12-16 2004-06-25 한국전자통신연구원 이동통신에서의 하향 링크 패킷 스케줄링 시스템 및 그방법, 그에 따른 프로그램이 저장된 기록매체
KR20050067933A (ko) * 2003-12-29 2005-07-05 엘지전자 주식회사 네트워크 혼잡 제어 장치 및 방법
KR20060073471A (ko) * 2004-12-23 2006-06-28 한국전자통신연구원 통합 트래픽을 위한 패킷 레벨 자원 할당 방법 및 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101506448B1 (ko) 2013-09-25 2015-03-27 에스케이 텔레콤주식회사 M2m 트래픽 관리 방법 및 장치

Also Published As

Publication number Publication date
KR20090062878A (ko) 2009-06-17

Similar Documents

Publication Publication Date Title
CN111600754B (zh) 一种面向tsn和非tsn互联的工业异构网络调度方法
CN108833279B (zh) 软件定义网络中基于业务分类的多约束QoS路由的方法
US7146425B2 (en) Measurement-based admission control utilizing effective envelopes and service curves
CN107454015B (zh) 一种基于OF-DiffServ模型的QoS控制方法及系统
CN109600319B (zh) 一种实时传输机制中的流量调度方法
CN113746748B (zh) 一种命名数据网络中显式拥塞控制方法
JP2008518552A (ja) 粗細試験期間を使用したネットワーク・パケットの経験的スケジューリング法
CN109905330B (zh) 一种基于队列长度的动态加权公平队列列车网络调度方法
US10666568B2 (en) Timing transport method in a communication network
Sanchez-Iborra et al. On the similarities between urban traffic management and communication networks: Application of the random early detection algorithm for self-regulating intersections
KR100937218B1 (ko) 패킷 스케줄링 시스템 및 방법
Iswadi et al. Adaptive switching PCQ-HTB algorithms for bandwidth management in routerOS
EP2985963A1 (en) Packet scheduling networking device
Doan et al. Interplay between priority queues and controlled delay in programmable data planes
Koo et al. A comparative study of queue, delay, and loss characteristics of AQM schemes in QoS-enabled networks
Sivasubramaniam et al. Enhanced core stateless fair queuing with multiple queue priority scheduler
Asaduzzaman et al. The Eight Class of Service Model-An Improvement over the Five Classes of Service
Li et al. Rpq: Resilient-priority queue scheduling for delay-sensitive applications
Choi et al. The effect of burst assembly on performance of optical burst switched networks
Phuritatkul et al. Resource allocation algorithms for controllable service differentiation in optical burst switching networks
Wu et al. Design and implementation of an adaptive feedback queue algorithm over openflow networks
Asaduzzaman et al. Improving Quality of Service in Computer Networks Applying the Eight Classes of Service
Rahouti et al. QoSP: A priority-based queueing mechanism in software-defined networking environments
Ozu et al. Adaptive Priority Control Method for ABR Streaming to Reduce Congestion Levels
El Masri et al. Multimedia support in wireless mesh networks using interval type-2 fuzzy logic system

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee