KR20110106732A - A buffer space securing method and apparatus for real time data transmission according to data increase/decrease rate - Google Patents

A buffer space securing method and apparatus for real time data transmission according to data increase/decrease rate Download PDF

Info

Publication number
KR20110106732A
KR20110106732A KR1020100025945A KR20100025945A KR20110106732A KR 20110106732 A KR20110106732 A KR 20110106732A KR 1020100025945 A KR1020100025945 A KR 1020100025945A KR 20100025945 A KR20100025945 A KR 20100025945A KR 20110106732 A KR20110106732 A KR 20110106732A
Authority
KR
South Korea
Prior art keywords
buffer
data
value
phase
overflow
Prior art date
Application number
KR1020100025945A
Other languages
Korean (ko)
Other versions
KR101084629B1 (en
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 KR1020100025945A priority Critical patent/KR101084629B1/en
Publication of KR20110106732A publication Critical patent/KR20110106732A/en
Application granted granted Critical
Publication of KR101084629B1 publication Critical patent/KR101084629B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints
    • H04W28/14Flow control between communication endpoints using intermediate storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0278Traffic management, e.g. flow control or congestion control using buffer status reports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0289Congestion control

Landscapes

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

Abstract

본 발명은 버퍼를 관리하는 방법에 관한 것으로서, 더욱 상세히는 트래픽 유입에 따른 버퍼의 상태를 고려하여 중요한 데이터의 실시간 전달을 보장하기 위한 다중위상 적응형 대응 버퍼 관리방법에 관한 것이다.The present invention relates to a method for managing a buffer, and more particularly, to a multi-phase adaptive corresponding buffer management method for ensuring real-time delivery of important data in consideration of the state of a buffer according to traffic inflow.

Description

데이터 증감률에 따라 중요 데이터를 실시간으로 전달하기 위한 버퍼공간 확보 방법 및 장치{A buffer space securing method and apparatus for real time data transmission according to data increase/decrease rate}A buffer space securing method and apparatus for real time data transmission according to data increase / decrease rate}

본 발명은 버퍼 관리방법에 관한 것이다.The present invention relates to a buffer management method.

기존의 RED(random early detection), W-RED(weighted random early detection), 테일드롭(tail-drop)과 같은 패킷드랍(packet drop) 방식은 버퍼가 오버플로우(over flow) 되는 경우 중요데이터가 손실되는 것을 허용하였다. 즉, 기존의 버퍼 관리 기법은 혼잡이 발생하는 경우 일정량의 데이터 드랍을 허용하는 방법을 통해서 혼잡제어를 수행하였다.Conventional packet drop methods, such as random early detection (RED), weighted random early detection (W-RED), and tail-drop, lose important data when the buffer overflows. Allowed to be. That is, the conventional buffer management technique performs congestion control by allowing a certain amount of data drop when congestion occurs.

이와 같이 기존의 버퍼 관리 방법에서 중요데이터의 손실을 허용했던 이유는 데이터를 송신하는 단말이 중요데이터를 송신 및 수신하는 경우에는 순차적 데이터 전송 (reliable in-order data delivery)을 보장해주는 TCP(transport control protocol)와 같은 신뢰성 있는 통신방법을 사용하기 때문에 손실을 허용하여 송·수신 데이터량을 줄일 수 있도록 하기 위함이다.The reason why the loss of important data is allowed in the conventional buffer management method is that when the terminal transmitting the data transmits and receives important data, TCP (transport control) guarantees reliable in-order data delivery. This is to reduce the amount of data transmitted and received by allowing loss because it uses reliable communication method such as protocol.

그러나 센서 네트워크나 별도의 기반시설 없이 모바일 디바이스 만으로 구성할 수 있는 AD HOC 네트워크와 같은 멀티 홉핑(multi hopping)을 이용한 무선네트워크 환경에서는 패킷 전달 성공률이 유선네트워크 환경에 비해서 현저히 저하되므로 기존의 송·수신 데이터량을 줄이는 방법만으로는 데이터의 실시간성을 보장하기가 어렵다. However, in the case of wireless network environment using multi hopping such as AD HOC network which can be configured by mobile device only without sensor network or infrastructure, packet transmission success rate is significantly lower than that of wired network environment. Reducing the amount of data alone is difficult to ensure real-time data.

또한 유선네트워크 통신망과 같이 전송링크가 안정된 망에서도, 네트워크 트래픽이 폭주하는 경우 혼잡으로 인하여 중요 전송데이터의 발생할 수 있으며, 재전송 프로토콜이 동작하더라도, 이로 인한 지연시간이 추가적으로 발생하게 된다.In addition, even in a stable network such as a wired network communication network, when network traffic is congested, important transmission data may occur due to congestion, and even if a retransmission protocol is operated, delay time is additionally generated.

즉, 종래의 RED(random early detection), W-RED(weighted random early detection) 등과 같이 버퍼 내부의 데이터를 사전에 폐기하는 방법은 버퍼 내의 누적 데이터(average queue length)가 특정 임계치에 도달한 이후부터 패킷을 폐기하므로 네트워크 혼잡으로 인해서 누적 데이터가 빠르게 증가하게 되면 버퍼 오버플로우로 인한 중요데이터의 손실이 발생할 가능성이 높고, 패킷 폐기의 목적은 TCP 혼잡제어를 위한 것이므로 비중요 데이터에 의한 버퍼 공간이 일정부분 할당되어야 한다.That is, the conventional method of discarding data in the buffer in advance, such as random early detection (RED) and weighted random early detection (W-RED), may be performed after the average queue length in the buffer reaches a specific threshold. If the cumulative data is rapidly increased due to network congestion, the packet is discarded. Therefore, the loss of important data due to buffer overflow is likely to occur, and the purpose of packet discarding is for TCP congestion control. Must be partially allocated.

따라서 상기와 같은 네트워크 환경에서 중요데이터를 실시간으로 안정하게 전달하는 것을 보장하기 위해서는 각 라우팅 노드에서 실시간으로 전달되어야할 중요데이터와 그렇지 않은 비중요 데이터를 구분하여 중요데이터를 버퍼 관리 기법을 통해 선점적으로 서비스할 수 있는 버퍼 관리 기법이 필요하다.Therefore, in order to guarantee the stable delivery of important data in real time in the network environment as described above, important data to be delivered in real time from each routing node and non-critical data that are not in real time are preempted by buffer management technique. We need a buffer management technique that can be serviced by

본 발명은 상기와 같은 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 큐(queue) 길이의 변화 정도에 따른 오버플로우 상황을 예측하여 통신망의 혼잡으로 인한 버퍼의 오버플로우(overflow)가 발생하는 경우 중요데이터가 손실되는 것을 방지하고, 데이터 전달을 실시간으로 보장하기 위한 버퍼 공간 확보방법을 제공하는 것이다.The present invention is to solve the above problems, an object of the present invention is to predict the overflow situation according to the degree of change in the queue (queue) in the case of overflow of the buffer due to congestion of the communication network It is to provide a method of securing buffer space to prevent the loss of important data and to ensure data delivery in real time.

상기와 같은 목적을 달성하기 위하여, 본 발명은 버퍼 오버 플로우 가능성을 판단하여, 네트워크 혼잡 시 비중요 데이터의 선제적 폐기를 통해 중요데이터의 손실을 최소화하는 방법 및 장치를 제공한다.In order to achieve the above object, the present invention provides a method and apparatus for determining the possibility of buffer overflow, minimizing the loss of important data through preemptive disposal of non-critical data during network congestion.

본 방법은 버퍼의 큐(queue) 길이 정보에 따라 버퍼의 오버플로우(overflow) 상황을 예측하는 단계, 상기 예측된 버퍼의 오버플로우 상황에 기초한 PLPPD(pre-emptive low priority packet drop)알고리즘에 따라서 상기 버퍼를 달리 운용하기 위해서 다수의 국면으로 운용방식을 나누는 단계, 상기 오버플로우 상황 시 처리할 중요데이터와 폐기할 비중요 데이터를 구분하는 단계, 및 상기 다수의 국면에 따라 버퍼를 운용하는 단계를 포함한다.The method includes estimating an overflow condition of a buffer according to queue length information of the buffer, and according to a pre-emptive low priority packet drop (PLPPD) algorithm based on the predicted overflow condition of the buffer. Dividing the operation method into a plurality of phases to operate the buffer differently, separating the important data to be processed in the overflow situation from the non-critical data to be discarded, and operating the buffer according to the plurality of aspects. do.

본 장치는 처리하고자 하는 데이터를 유입하는 수신부, 버퍼의 큐(queue) 길이 정보에 따라 버퍼 오버플로우를 예측하여 상기 수신된 데이터를 관리하는 스케쥴러, 및 상기 스케쥴러로부터 수신된 정보를 바탕으로 PLPPD(pre-emptive low priority) 알고리즘에 따라 상기 데이터를 처리하는 적응형 버퍼를 포함한다.The apparatus includes a receiver for introducing data to be processed, a scheduler that manages the received data by predicting a buffer overflow according to queue length information of a buffer, and a PLPPD based on information received from the scheduler. -emptive low priority) includes an adaptive buffer for processing the data according to an algorithm.

본 발명은 큐(queue) 길이의 변화 정도에 따른 오버플로우 상황을 예측하여 통신망의 혼잡으로 인한 버퍼의 오버플로우(overflow)가 발생하는 경우에 버퍼 공간 확보를 통하여 중요데이터가 손실되는 것을 방지하고, 중요 데이터를 실시간으로 전송할 수 있는 효과가 있다.The present invention predicts the overflow situation according to the change of the queue length, and prevents the loss of important data through the buffer space in case of overflow of the buffer due to congestion of the communication network, It is effective to transmit important data in real time.

도 1은 본 발명에 따른 PLPPD(pre-emptive low priority packet drop) 알고리즘에 대한 의사코드를 도시한 것이다.
도 2는 본 발명의 일 실시예에 따른 버퍼 상태에 근거한 각 위상별 상태 전이도를 도시한 것이다.
도 3은 본 발명의 일 실시예에 따른 상태 전이 알고리즘을 단일 네트워크 큐 구조에 대해 적용한 예를 도시한 것이다.
도 4는 본 발명의 실시예에 따른 데이터 처리 시스템의 구조도를 도시한 것이다.
1 illustrates a pseudo code for a pre-emptive low priority packet drop (PLPPD) algorithm according to the present invention.
2 illustrates state transition diagrams for respective phases based on buffer states according to an embodiment of the present invention.
3 illustrates an example of applying a state transition algorithm to a single network queue structure according to an embodiment of the present invention.
4 is a structural diagram of a data processing system according to an embodiment of the present invention.

이하, 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 각 도면의 절차도에서 각각의 절차에 참조부호를 부가하거나 도면에서 구성요소들에 참조부호를 부가함에 있어서, 동일한 절차 및 구성요소에 대해서는 비록 다른 도면상에 표시되어있더라도 동일한 부호를 부여하고 있음에 유의한다.Hereinafter, with reference to the accompanying drawings, preferred embodiments of the present invention will be described in detail. In the procedures of each drawing, the reference numerals are added to the respective procedures or the reference numerals are added to the components in the drawings. The same procedures and components are given the same reference numerals even though they are shown in different drawings. Be careful.

도 1은 본 발명에 따른 PLPPD(pre-emptive low priority packet drop) 알고리즘에 대한 의사코드를 도시한 것이다.1 illustrates a pseudo code for a pre-emptive low priority packet drop (PLPPD) algorithm according to the present invention.

도 1에 따르면, 알고리즘의 시작단계에서 스케쥴러는 개별 패킷이 처리됨에 따라 버퍼 큐(queue)의 평균 길이인 "avg 값"을 계산하게 된다. 상기 avg의 계산을 통해서 현재 버퍼의 상태를 확인할 수 있으며, 버퍼의 여유 공간을 파악할 수 있다. 단위 시간당 버퍼 큐(queue)의 평균길이 값(avg 값)에 대한 임계값은 "Maxth"와 "Minth"로 정의하며, Maxth 값은 버퍼 큐(queue)가 허용할 수 있는 최대 길이이며, Minth 값은 버퍼 큐(queue)의 여유 공간이 충분하다고 스케쥴러가 판단하는 최소 버퍼 큐(queue) 길이이다.According to Figure 1, at the beginning of the algorithm, the scheduler calculates an "avg value", which is the average length of the buffer queue as individual packets are processed. By calculating the avg, it is possible to check the state of the current buffer and determine the free space of the buffer. The threshold for the average length value (avg value) of the buffer queue per unit time is defined as "Maxth" and "Minth". The Maxth value is the maximum length that the buffer queue can allow, and the Minth value. Is the minimum buffer queue length that the scheduler determines that there is enough free space in the buffer queue.

또한, 상기 avg 값과는 별도로, 단위 시간당 누적되는 데이터에 따른 버퍼 큐(queue) 내 공간의 증감률을 판단하기 위하며 "△avg 값"을 계산한다. △avg 값을 측정하는 이유는 스케쥴러가 현재 버퍼 큐(queue)의 잔량에 대한 변화량을 파악하여 버퍼 오버플로우의 가능성을 미연에 방지하기 위함이다. 단위시간당 버퍼 큐(queue) 길이의 변화량 값(△avg 값)에 대한 임계값은 "Pvarth"와 "Nvarth"로 정의하며, Pvarth 값은 현재 버퍼 큐(queue)의 변화량이 증가하는 추세에 있다는 것을 판단하는 값이며, Nvarth 값은 현재 버퍼 큐(queue)의 변화량이 감소하는 추세에 있다는 것을 판단하는 값이다. In addition, apart from the avg value, to calculate the rate of increase or decrease of the space in the buffer queue according to the data accumulated per unit time, the value? Avg is calculated. The reason for measuring the Δavg value is to prevent the possibility of buffer overflow by allowing the scheduler to grasp the amount of change in the remaining amount of the current buffer queue. Threshold value for the change value of the buffer queue length per unit time (Δavg value) is defined as "Pvarth" and "Nvarth", and the Pvarth value indicates that the change amount of the current buffer queue is increasing. The value of Nvarth is a value for judging that the amount of change in the current buffer queue is decreasing.

도 1에 도시된 알고리즘은 측정된 "avg 값"과 "△avg 값"을 전술한 각각의 임계값과 비교하여 이하, 도 2에 도시된 바에 따라 버퍼를 관리하게 된다. The algorithm shown in FIG. 1 compares the measured " avg value " and " Δavg value " with each of the thresholds described above to manage the buffer as shown in FIG. 2 below.

도 2는 본 발명의 일 실시예에 따른 버퍼 상태에 근거한 각 위상별 상태 전이도를 도시한 것이다.2 illustrates state transition diagrams for respective phases based on buffer states according to an embodiment of the present invention.

도 2에 따르면, 상기 언급한 "avg 값"과 "△avg 값"을 각각 "Maxth"와 "Minth" 값, 그리고 "Pvarth", "Nvarth" 값과 비교하여, 이에 따라 버퍼의 운용방법을 결정하게 된다. According to FIG. 2, the above-mentioned "avg value" and "Δavg value" are compared with the "Maxth" and "Minth" values, and the "Pvarth" and "Nvarth" values, respectively, and thus the operation method of the buffer is determined accordingly. Done.

도 2에 도시된 각 단계별 전이조건은, avg 값의 조건과 △avg 값의 조건이 동시 만족되는 경우에는, avg 값의 결과에 우선하여 전이가 일어나게 된다. 이는 avg 값은 △avg의 특성에 의한 결과 값이고, △avg 값의 특성이 시간에 따른 변동량이 avg 값에 비해 큰 값이기 때문이다.In each step transition condition shown in FIG. 2, when the avg value condition and the? Avg value condition are satisfied at the same time, the transition occurs in preference to the result of the avg value. This is because the avg value is a result of the characteristic of? Avg, and the characteristic of the? Avg value is such that the amount of change over time is larger than that of the avg value.

"Initial 상태"(S110)는 데이터의 유입이 시작되기 전에 알고리즘에 사용되는 변수 등을 초기화된 상태이다."Initial state" (S110) is a state in which variables used in the algorithm are initialized before the inflow of data starts.

각 변수들이 초기화되면, 기본적으로, 버퍼 공간 확보 알고리즘은 제 1 국면(phase 1)(S120) 상태로 전이가 된다. 상기 제 1 국면(phase 1)은 네트워크 혼잡상태 이전의 상태로서, 일반적인 경우와 같이 스케쥴러가 유입된 모든 데이터를 정상적으로 처리할 수 있는 상태를 말한다. Once each variable is initialized, by default, the buffer space reserve algorithm transitions to the first phase (S120) state. The first phase (phase 1) is a state before a network congestion state, and as in a general case, a scheduler can normally process all data introduced.

제 2-1 국면(phase 2-1)(S130)은 버퍼 큐(queue) 길이의 변화량 값(△avg 값)이 Pvarth 값과 Nvarth 값 사이에 존재하는 상태를 의미한다. 즉, 데이터의 유입량이 점차로 많아져 버퍼 오버플로우의 위험성이 점차 증가하고 있다고 판단되는 경우에는 제 1 국면(phase 1)(S120)에서 제 2-1 국면(phase 2-1)(S130)으로 전이가 된다. 제 2-1 국면(phase 2-1)(S130) 상태로 전이가 된 경우, 스케쥴러는 패킷별로 버퍼 내부의 최하위 순위를 가진 비중요 데이터를 폐기하기 시작한다. 이를 통해서, 향후 버퍼 내로 유입되는 중요 데이터에 대한 버퍼 공간을 확보할 수 있다.The phase 2-1 phase 2-1 (S130) refers to a state in which a change amount (Δavg value) of the buffer queue length is present between the Pvarth value and the Nvarth value. That is, when it is determined that the inflow of data gradually increases and the risk of buffer overflow gradually increases, the transition from the first phase (S120) to the second phase (Phase 2-1) (S130) is performed. Becomes When the transition to the 2-1 phase (S130) state occurs, the scheduler starts to discard the non-critical data having the lowest rank in the buffer for each packet. Through this, it is possible to secure the buffer space for the important data flowing into the buffer in the future.

유입된 데이터 중에서 비중요 데이터와 중요데이터를 구분하는 절차는 데이터가 버퍼에 유입되는 순간부터 실시간으로 행해 질 수도 있고, 버퍼 오버플로우의 위험성이 발견되는 때에 행해질 수도 있다.The process of distinguishing non-critical data from important data among the imported data may be performed in real time from the moment the data enters the buffer, or may be performed when the risk of buffer overflow is found.

제 2-2 국면(phase 2-2)(S140)은 제 2-1 국면(phase 2-1) 상태에서 버퍼 내 최하위 데이터에 대한 폐기가 이루어졌음에도 불구하고, 버퍼 큐(queue) 길이의 변화량(△avg 값)이 지속적으로 증가하는 경우이다. 즉, 제 2-1 국면(phase 2-1)(S130)에서 버퍼 내 최하위 데이터를 폐기했음에도 불구하고, 버퍼 큐(queue) 길이의 변화량(△avg 값)이 계속 증가하는 경우에는 제 2-2 국면(phase 2-2)(S140) 상태로 전이되어, 스케쥴러는 우선순위가 낮은 데이터부터 폐기할 패킷을 점차로 늘린다. Phase 2-2 phase S-2 (S140) is a change amount of the buffer queue length, although discarding of the lowest data in the buffer is performed in phase 2-1 phase 2-1. (Δavg value) is continuously increasing. That is, in spite of discarding the lowest data in the buffer in phase 2-1 (S130), if the amount of change (Δavg value) in the buffer queue length continues to increase, the second-2-2; Transitioning to phase 2-2 (S140), the scheduler incrementally increases the number of packets to discard from low priority data.

제 2-3 국면(phase 2-3)(S150)은 버퍼 큐(queue) 길이의 변화량(△avg 값)이 Nvarth 값 이하로 떨어지는 경우이다. 제 2-3 국면(phase 2-3)(S150)으로 전이된 경우, 스케쥴러는 비중요 데이터의 폐기로 인해서 네트워크 혼잡상태가 해소된 것으로 판단하여 비중요 데이터에 대한 폐기를 일시적으로 중단하게 된다. 이를 통해서 버퍼 큐(queue)의 평균길이 값(avg 값)이 Minth 이하가 되면 다시 제 1 국면(phase 1)(S120)으로 전이하게 된다.Phase 2-3 (S150) is a case where the change amount (Δavg value) of the buffer queue length falls below the Nvarth value. When transitioning to phase 2-3 (S150), the scheduler determines that network congestion has been eliminated due to the discarding of the non-critical data, so that the scheduler temporarily stops discarding the non-critical data. As a result, when the average length value (avg value) of the buffer queue becomes less than Minth, the transition to the first phase S1 is performed.

제 3 국면(phase 3)(S160)은 트래픽의 폭주상태로 인해서, 스케쥴러에서 어떠한 조치를 취하기 전에 이미 버퍼의 오버플로우가 발생한 경우이다. 이러한 경우에는 각각의 개별 패킷단위가 아닌 QoS(quality of service) 마킹 레벨별로 최하위 순위부터 패킷을 한꺼번에 폐기하게 된다.Phase 3 (S160) is a case where the overflow of the buffer has already occurred before any action is taken by the scheduler due to the traffic congestion. In this case, packets are discarded from the lowest order by quality of service (QoS) marking level instead of each individual packet unit.

상기 각각의 상태 중에서 어느 상태로 전이될 것인가는 측정된 버퍼 큐(queue) 길이의 변화량 값(△avg 값)과 버퍼 큐(queue)의 평균 길이 값(avg 값)을 기초로 판단한다. 따라서 데이터의 유입에 따라 버퍼 큐(queue) 길이의 변화량 값(△avg 값)과 버퍼 큐(queue)의 평균 길이 값(avg 값)이 변하는 경우, 도시된 바와 같이 다른 상태로 전이될 수 있다. 상기 버퍼 큐(queue)의 평균길이 값과 큐(queue) 길이의 변화량 값의 측정은 지정된 시간마다 측정하는 것도 가능하며, 유입되는 데이터에 변화가 있는 경우 측정하는 것도 가능할 것이다.Which state is transferred to is determined based on the measured change amount of the buffer queue length (Δavg value) and the average length value of the buffer queue (avg value). Therefore, when the change amount value (Δavg value) of the buffer queue length (Δavg value) and the average length value (avg value) of the buffer queue (queue) change with the inflow of data, it may transition to another state as shown. The change in the average length value of the buffer queue and the change value of the queue length may be measured at a specified time, or may be measured when there is a change in the incoming data.

즉, 제 1 국면에서 avg < Minth인 경우에는 그대로 제 1 국면을 유지하고, Maxth < avg < Minth 인 경우에는 제 2-1 국면으로 전이하고, avg > Maxth인 경우에는 제 3 국면으로 전이된다.That is, when avg <Minth in the first phase, the first phase is maintained as it is, when the Maxth <avg <Minth, the transition to the 2-1 phase, and when avg> Maxth, the transition to the third phase.

제 2-1 국면의 경우 Nvarth < △avg < Pvarth인 경우에는 제 2-1 국면을 유지하며, avg < Minth인 경우에는 제 1 국면으로 되돌아가서 정상적으로 모든 데이터를 처리하고, △avg > Pvarth인 경우에는 제 2-2 국면으로 전이되며, avg > Maxth인 경우에는 제 3 국면으로 전이되고, Nvarth > △avg인 경우에는 제 2-3 국면으로 전이된다.In the case of phase 2-1, in the case of Nvarth <? Avg <Pvarth, phase 2-1 is maintained; in the case of avg <Minth, the process returns to the first phase and processes all data normally, and in case of? Avg> Pvarth Transitions to phase 2-2, transitions to phase 3 when avg> Maxth, and transitions to phase 2-3 when Nvarth>? Avg.

제 2-2 국면의 경우, Nvarth < △avg < Pvarth인 경우에는 제 2-1 국면으로 전이되고, Nvarth > △avg인 경우에는 제 2-3 국면으로 전이된다.In the case of phase 2-2, when Nvarth < DELTA avg < Pvarth, the transition is made to phase 2-1, and when Nvarth >

제 2-3 국면의 경우, Nvarth < △avg < Pvarth인 경우에는 제 2-1 국면으로 전이되고, △avg < Nvarth인 경우에는 제 2-2 국면으로 전이된다.In the case of phase 2-3, the transition is made to phase 2-1 when Nvarth <Δavg <Pvarth, and transitioned to phase 2-2 when Δavg <Nvarth.

제 3 국면의 경우, Maxth < avg < Minth 인 경우에는 제 2-1 국면으로 전이하고, avg < Minth인 경우에는 그대로 제 1 국면으로 전이한다.In the third phase, when Maxth < avg < Minth, it transitions to phase 2-1, and when avg < Minth, it transitions to first phase as it is.

본 실시예에서는 전이 상태를 5개로 나누었으나, 경우에 따라서는 본 발명의 사상에 따라 5개 이하 또는 그 이상의 상태로 나누어 실시하는 것도 가능할 것이다.  In this embodiment, the transition states are divided into five, but in some cases, it may be possible to divide the transition state into five or less states or more.

도 3은 본 발명의 일 실시예에 따른 상태 전이 알고리즘을 단일 네트워크 큐 구조에 대해 적용한 예를 도시한 것이다.3 illustrates an example of applying a state transition algorithm to a single network queue structure according to an embodiment of the present invention.

도 3에 의하면, 도시된 바와 같이 단일 네트워크 큐가 있는 경우, 수시로 변화하는 네트워크 상태에 의한 버퍼 큐(queue) 길이의 변화량 값(△avg 값)과 버퍼 큐(queue)의 평균 길이 값(avg 값)에 따라서 각기 다른 상태로 전이된다. 즉, Initial 상태에서 초기화된 변수에 의해 버퍼는 기본적으로 제 1 국면(phase 1)에서 동작하지만 버퍼의 평균 길이 값(avg 값)이 Maxth < avg < Minth에 해당하는 경우에는 제 2 국면(phase 2)으로 전이된다.Referring to FIG. 3, when there is a single network queue, a change amount value (Δavg value) of a buffer queue length due to a constantly changing network state and an average length value of an buffer queue (avg value) are shown. ) Transitions to different states. That is, due to the variable initialized in the Initial state, the buffer basically operates in the first phase (phase 1), but when the average length value (avg value) of the buffer corresponds to Maxth <avg <Minth, the second phase (phase 2) ).

제 2 국면(phase 2)은 제 2-1 국면, 제 2-2 국면, 제 2-3 국면으로 구성되어 있으며, 버퍼 내로 유입되는 데이터 양에 기반하여 측정된 버퍼 길이의 변화량 값(△avg 값)과 버퍼의 평균 길이 값(avg 값)에 따라서 폐기할 비중요 데이터 양을 결정한다. 다만 전술한 바와 같이, 본 실시예에서는 제 2 국면을 세 가지 상태로 정의했으나, 그 이상 또는 그 이하의 실시예로 정의하는 것도 가능할 것이다.Phase 2 is composed of phases 2-1, 2-2, and 2-3, and the variation value of the buffer length (Δavg value) is measured based on the amount of data flowing into the buffer. ) And the average length of the buffer (avg value) determine the amount of noncritical data to discard. However, as described above, in the present embodiment, the second phase is defined in three states, but it may also be defined as an embodiment above or below.

제 3 국면(phase 3)은 전술한 바와 같이 유입되는 데이터가 너무 많은 경우에 중요 데이터를 실시간으로 전달하기 위해서 미리 정해진 서비스 품질의 수준별로 다수의 패킷을 한꺼번에 폐기하게 된다.The third phase (phase 3) is to discard a plurality of packets at once by a predetermined level of quality of service to deliver important data in real time when there is too much incoming data as described above.

도 4는 본 발명의 실시예에 따른 데이터 처리 시스템의 구조도를 도시한 것이다.4 is a structural diagram of a data processing system according to an embodiment of the present invention.

도 4에 의하면, 본 발명에 따른 데이터 처리 시스템은 처리하고자 하는 데이터를 유입하는 수신부(100), 상기 데이터를 처리하는 버퍼(200) 및 상기 버퍼를 관리하는 스케쥴러(300)를 포함할 수 있다.Referring to FIG. 4, the data processing system according to the present invention may include a receiver 100 for introducing data to be processed, a buffer 200 for processing the data, and a scheduler 300 for managing the buffer.

상기 스케쥴러는 개별 패킷이 처리됨에 따라 버퍼 큐(queue)의 평균 길이인 "avg 값"과 단위 시간당 누적되는 데이터에 따른 버퍼 큐(queue) 내 공간의 증감률을 판단하기 위하며 "△avg 값"을 계산하고, 상기 버퍼는 버퍼 오버플로우 가능성을 판단하여, 네트워크 혼잡 시 비중요 데이터의 선제적 폐기를 통해 중요데이터의 손실을 최소화하는 PLPPD(pre-emptive low priority packet drop) 알고리즘을 적용하여, 중요 데이터를 실시간으로 전달한다.The scheduler determines an "avg value", which is an average length of a buffer queue as individual packets are processed, and a rate of increase or decrease of space in a buffer queue according to data accumulated per unit time. The buffer determines the possibility of buffer overflow and applies a pre-emptive low priority packet drop (PLPPD) algorithm that minimizes the loss of important data through preemptive disposal of noncritical data during network congestion. Pass data in real time.

이상에서는 본 발명의 바람직한 실시예를 예시적으로 설명하였으나, 본 발명의 범위는 이와 같은 특정 실시예에만 한정되는 것은 아니므로, 본 발명은 본 발명의 사상 및 특허청구범위에 기재된 범주 내에서 다양한 형태로 수정, 변경, 또는 개선될 수 있을 것이다.In the above description of the preferred embodiments of the present invention by way of example, the scope of the present invention is not limited only to these specific embodiments, the present invention is in various forms within the scope of the spirit and claims of the present invention May be modified, changed, or improved.

100: 수신기
200: 적응형 버퍼
300: 스케줄러
100: receiver
200: adaptive buffer
300: scheduler

Claims (12)

버퍼 관리 방법에 있어서,
버퍼의 큐(queue) 길이 정보에 따라 버퍼의 오버플로우(overflow) 상황을 예측하는 단계;
상기 예측된 버퍼의 오버플로우 상황에 기초한 PLPPD(pre-emptive low priority packet drop)알고리즘에 따라서 상기 버퍼를 달리 운용하기 위해서 다수의 국면으로 운용방식을 나누는 단계;
상기 오버플로우 상황 시 처리할 중요데이터와 폐기할 비중요 데이터를 구분하는 단계; 및
상기 다수의 국면에 따라 버퍼를 운용하는 단계를 포함하는 것을 특징으로 하는 버퍼 내 공간 확보를 통한 버퍼 관리 방법.
In the buffer management method,
Predicting an overflow situation of the buffer according to the queue length information of the buffer;
Dividing the operation into multiple phases for differently operating the buffer according to a pre-emptive low priority packet drop (PLPPD) algorithm based on the predicted overflow condition of the buffer;
Distinguishing important data to be processed and non-critical data to be discarded in the overflow situation; And
And operating a buffer according to the plurality of aspects.
제 1 항에 있어서,
상기 버퍼의 큐(queue) 길이 정보는 버퍼 큐(queue) 길이의 변화량 값(△avg 값)과 버퍼 큐(queue)의 평균 길이 값(avg 값)을 미리 정의 된 임계값과 비교한 결과값인 것을 특징으로 하는 버퍼 관리 방법.
The method of claim 1,
The queue length information of the buffer is a result obtained by comparing the variation value (Δavg value) of the buffer queue length and the average length value (avg value) of the buffer queue with a predefined threshold value. Buffer management method, characterized in that.
제 1 항에 있어서,
상기 PLPPD 알고리즘에 따른 상기 다수의 국면은 모든 데이터를 처리하는 제 1 국면, 버퍼 오버플로우를 대비하여 비중요 데이터를 폐기하고 중요 데이터를 처리하는 제 2 국면, 과도한 트래픽에 의해 버퍼 오버플로우가 발생하는 경우 폐기할 비중요 데이터를 확대하는 제 3 국면을 포함하는 것을 특징으로 하는 버퍼 관리 방법.
The method of claim 1,
In the plurality of phases according to the PLPPD algorithm, the first phase processes all data, the second phase discards non-critical data in preparation for a buffer overflow, and the buffer overflow occurs due to excessive traffic. And a third aspect to augment non-critical data to be discarded if necessary.
제 1 항에 있어서,
상기 버퍼 오버플로우 예측은 일정한 주기마다 실시하거나 상기 버퍼에 유입되는 데이터량에 변화가 있는 경우 실시하는 것을 특징으로 하는 버퍼 관리 방법.
The method of claim 1,
The buffer overflow prediction is performed at regular intervals or when there is a change in the amount of data flowing into the buffer.
제 3 항에 있어서,
상기 제 2 국면은,
상기 버퍼 오버플로우 위험성이 점차로 증가하고 있다고 판단되는 경우, 상기 우선순위가 최하위 순위인 비중요 데이터를 개별 패킷 별로 폐기하는 제 2-1 국면, 상기 우선순위가 최하위 순위인 비중요 데이터의 폐기에 불구하고 상기 버퍼 큐(queue)의 길이가 지속적으로 증가하는 경우 점차 폐기하는 패킷의 범위를 넓히는 제 2-2 국면, 그리고 상기 버퍼 오버플로우 위험성이 사라지는 경우 비중요 데이터의 폐기를 중단하는 제 2-3 국면을 포함하는 것을 특징으로 하는 버퍼 관리 방법.
The method of claim 3, wherein
The second aspect is,
If it is determined that the risk of buffer overflow is gradually increasing, phase 2-1 of discarding non-critical data having the lowest priority for each packet, despite discarding non-critical data having the lowest priority, In the second and second aspects of expanding the range of packets discarded gradually when the length of the buffer queue continues to increase, and in the case of the buffer overflow risk disappearing, the second and third stops discarding non-critical data. A buffer management method comprising a phase.
제 3 항 또는 제 5 항에 있어서,
상기 제 3 국면은,
우선순위가 최하위 순위인 비중요 데이터를 QoS(quality of service) 마킹 레벨별로 폐기하는 것을 특징으로 하는 버퍼 관리 방법.
The method according to claim 3 or 5,
The third aspect is,
A method for managing a buffer, characterized in that for discarding non-critical data of the lowest priority by each quality of service (QoS) marking level.
데이터 처리 시스템에 있어서,
처리하고자 하는 데이터를 유입하는 수신부;
버퍼의 큐(queue) 길이 정보에 따라 버퍼 오버플로우를 예측하여 상기 수신된 데이터를 관리하는 스케쥴러; 및
상기 스케쥴러로부터 수신된 정보를 바탕으로 PLPPD(pre-emptive low priority) 알고리즘에 따라 상기 데이터를 처리하는 적응형 버퍼를 포함하는 것을 특징으로 하는 적응형 데이터 처리 시스템.
In a data processing system,
A receiver for introducing data to be processed;
A scheduler for predicting a buffer overflow according to queue length information of a buffer and managing the received data; And
And an adaptive buffer for processing the data according to a pre-emptive low priority (PLPPD) algorithm based on the information received from the scheduler.
제 7 항에 있어서,
상기 버퍼의 큐(queue) 길이 정보는 버퍼 큐(queue) 길이의 변화량 값(△avg 값)과 버퍼 큐(queue)의 평균 길이 값(avg 값)을 미리 정의 된 임계값과 비교한 결과값인 것을 특징으로 하는 적응형 데이터 처리 시스템.
The method of claim 7, wherein
The queue length information of the buffer is a result obtained by comparing the variation value (Δavg value) of the buffer queue length and the average length value (avg value) of the buffer queue with a predefined threshold value. Adaptive data processing system, characterized in that.
제 7 항에 있어서,
상기 PLPPD 알고리즘은 모든 데이터를 처리하는 제 1 국면, 버퍼 오버플로우를 대비하여 비중요 데이터를 폐기하고 중요 데이터를 처리하는 제 2 국면, 과도한 트래픽에 의해 버퍼 오버플로우가 발생하는 경우 폐기할 비중요 데이터를 확대하는 제 3 국면으로 상기 적응형 버퍼의 운용방법을 달리하는 것을 특징으로 하는 적응형 데이터 처리 시스템.
The method of claim 7, wherein
The PLPPD algorithm discards the non-critical data in preparation for the first phase processing all the data, the buffer overflow, and the second phase processing the important data, and non-critical data discarding when the buffer overflow occurs due to excessive traffic. Adaptive data processing system, characterized in that the operating method of the adaptive buffer in a third aspect to enlarge the.
제 7 항에 있어서,
상기 스케쥴러는 일정한 주기마다 버퍼 오버플로우를 예측하거나 상기 버퍼에 유입되는 데이터량에 변화가 있는 경우 버퍼 오버플로우를 예측하는 것을 특징으로 하는 적응형 데이터 처리 시스템.
The method of claim 7, wherein
And the scheduler predicts the buffer overflow at regular intervals or predicts the buffer overflow if there is a change in the amount of data flowing into the buffer.
제 9 항에 있어서,
상기 제 2 국면은,
상기 버퍼 오버플로우 위험성이 점차로 증가하고 있다고 판단되는 경우, 상기 우선순위가 최하위 순위인 비중요 데이터를 개별 패킷 별로 폐기하는 제 2-1 국면, 상기 우선순위가 최하위 순위인 비중요 데이터의 폐기에 불구하고 상기 버퍼 큐(queue)의 길이가 지속적으로 증가하는 경우 점차 폐기하는 패킷의 범위를 넓히는 제 2-2 국면, 그리고 상기 버퍼 오버플로우 위험성이 사라지는 경우 비중요 데이터의 폐기를 중단하는 제 2-3 국면을 포함하는 것을 특징으로 하는 적응형 데이터 처리 시스템.
The method of claim 9,
The second aspect is,
If it is determined that the risk of buffer overflow is gradually increasing, phase 2-1 of discarding non-critical data having the lowest priority for each packet, despite discarding non-critical data having the lowest priority, In the second and second aspects of expanding the range of packets discarded gradually when the length of the buffer queue continues to increase, and in the case of the buffer overflow risk disappearing, the second and third stops discarding non-critical data. Adaptive data processing system comprising a phase.
제 9 항 또는 제 11 항에 있어서,
상기 제 3 국면은,
우선순위가 최하위 순위인 비중요 데이터를 QoS(quality of service) 마킹 레벨별로 폐기하는 것을 특징으로 하는 적응형 데이터 처리 시스템.
The method according to claim 9 or 11,
The third aspect is,
Adaptive data processing system, characterized in that for discarding the non-critical data of the lowest priority by each quality of service (QoS) marking level.
KR1020100025945A 2010-03-23 2010-03-23 A buffer space securing method and apparatus for real time data transmission according to data increase/decrease rate KR101084629B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100025945A KR101084629B1 (en) 2010-03-23 2010-03-23 A buffer space securing method and apparatus for real time data transmission according to data increase/decrease rate

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100025945A KR101084629B1 (en) 2010-03-23 2010-03-23 A buffer space securing method and apparatus for real time data transmission according to data increase/decrease rate

Publications (2)

Publication Number Publication Date
KR20110106732A true KR20110106732A (en) 2011-09-29
KR101084629B1 KR101084629B1 (en) 2011-11-17

Family

ID=44956466

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100025945A KR101084629B1 (en) 2010-03-23 2010-03-23 A buffer space securing method and apparatus for real time data transmission according to data increase/decrease rate

Country Status (1)

Country Link
KR (1) KR101084629B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109391558A (en) * 2017-08-02 2019-02-26 东软集团股份有限公司 A kind of control method and control device of queue

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100664839B1 (en) 1999-12-08 2007-01-04 주식회사 케이티 A frame discard method for providing the pair allocation of the network resources in the congestion of the frame relay networks
KR100462475B1 (en) 2002-12-02 2004-12-17 한국전자통신연구원 Apparatus for queue scheduling using linear control and method therefor
KR100720917B1 (en) 2005-08-30 2007-05-22 경북대학교 산학협력단 Method of adaptive multi-queue management to guarantee QoS

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109391558A (en) * 2017-08-02 2019-02-26 东软集团股份有限公司 A kind of control method and control device of queue
CN109391558B (en) * 2017-08-02 2022-04-01 东软集团股份有限公司 Queue control method and device

Also Published As

Publication number Publication date
KR101084629B1 (en) 2011-11-17

Similar Documents

Publication Publication Date Title
KR101075724B1 (en) Apparatus and method for limiting packet transmission rate in a communication system
KR100656509B1 (en) Congestion avoidance method for video service bandwidth
US11070481B2 (en) Predictive management of a network buffer
EP2823610B1 (en) Signalling congestion
US7161907B2 (en) System and method for dynamic rate flow control
US20130286834A1 (en) Traffic management apparatus for controlling traffic congestion and method thereof
Ahammed et al. Anakyzing the performance of active queue management algorithms
KR20070048648A (en) Network delay control
JPH1093624A (en) Packet transmission network
KR101333856B1 (en) Method of managing a traffic load
CA2299177C (en) Traffic monitoring equipment and system and method for datagram transfer
EP2582080B1 (en) Adaptive traffic manager for wireless applications
JP4577220B2 (en) Traffic control apparatus, method, and program using token bucket
KR101084629B1 (en) A buffer space securing method and apparatus for real time data transmission according to data increase/decrease rate
JP2009278532A (en) Transmission apparatus and congestion control method
Aweya et al. Multi-level active queue management with dynamic thresholds
Uthra et al. A probabilistic approach for predictive congestion control in wireless sensor networks
EP2800295B1 (en) Device and method for scheduling packet transmission
JP4838739B2 (en) Router buffer management method and router using the management method
JP2018148494A (en) Packet aggregation device and transmission processing program
EP2413543A1 (en) Binary search method for congestion avoidance
Barakat et al. A markovian model for TCP analysis in a differentiated services network
Li et al. Adaptive rate control for TCP Incast based on selective ECN-marking
Sivakumar et al. Convex Optimized Lagrange Multiplier Based Algebraic Congestion Likelihood for Improved TCP Performance in MANET
KR20070088420A (en) Burst transmission method in optical burst switching network

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
FPAY Annual fee payment

Payment date: 20141104

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151102

Year of fee payment: 5