KR20030097401A - Method of RED algorism materialinzing by positive numbers calulation - Google Patents

Method of RED algorism materialinzing by positive numbers calulation Download PDF

Info

Publication number
KR20030097401A
KR20030097401A KR1020020034755A KR20020034755A KR20030097401A KR 20030097401 A KR20030097401 A KR 20030097401A KR 1020020034755 A KR1020020034755 A KR 1020020034755A KR 20020034755 A KR20020034755 A KR 20020034755A KR 20030097401 A KR20030097401 A KR 20030097401A
Authority
KR
South Korea
Prior art keywords
queue
red
value
red algorithm
algorithm
Prior art date
Application number
KR1020020034755A
Other languages
Korean (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 KR1020020034755A priority Critical patent/KR20030097401A/en
Publication of KR20030097401A publication Critical patent/KR20030097401A/en

Links

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/12Avoiding congestion; Recovering from congestion
    • H04L47/127Avoiding congestion; Recovering from congestion by using congestion prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • 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/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • H04L47/326Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames with random discard, e.g. random early discard [RED]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • H04L47/522Dynamic queue service slot or variable bandwidth allocation

Abstract

PURPOSE: A method for embodying a RED(Random Early Detection) algorithm through integral operation is provided to effectively achieve network congestion management even in an embedded router by embodying a RED algorithm using integral operation and shift operation simply. CONSTITUTION: In case that a queue is empty as a user executes polling for the queue at regular intervals, the user recalculates the average queue size. Then the user carries out shift operation as much as a certain variation in order to convert the floating point value of each parameter into an integral value. The user establishes the minimum critical value, the maximum critical value, the present queue weight value indicating an effect that the length of the present queue has on the average queue size, and an initial value corresponding to the maximum packet marking probability value and applies them to an RED algorithm.

Description

정수연산을 통한 RED 알고리즘 구현방법{Method of RED algorism materialinzing by positive numbers calulation}Implementation method of RED algorithm through integer operation {Method of RED algorism materialinzing by positive numbers calulation}

본 발명은 데이터 네트워크 망의 혼잡을 관리하는 RED(random early detection) 알고리즘에 관한 것으로, 특히 연산 수행능력에 한계가 있는 시스템 장비들에서 간단한 정수연산 및 쉬프트 연산만으로 RED 알고리즘을 수행할 수 있도록 하는 정수연산을 통한 RED 알고리즘 구현방법에 관한 것이다.The present invention relates to a random early detection (RED) algorithm for managing congestion in a data network. In particular, the present invention relates to an integer capable of performing a RED algorithm with only simple integer and shift operations in system equipments with limited computational performance. The present invention relates to a method of implementing a RED algorithm through computation.

데이터 네트워크의 망 혼잡을 관리하기 위해서 가장 널리 쓰이는 방법은 TCP/IP 네트워크의 경우 망 혼잡 관리를 TCP의 혼잡제어(Congestion Control) 알고리즘을 통하여 관리한다. 즉, 망에서의 패킷 손실을 망 혼잡 상황(Network Congestion)으로 간주하여 데이터 전송 호스트 컴퓨터에서 데이터 전송율을 줄여주는 방법을 이용하는 것이다.The most widely used method for managing network congestion in data networks is to manage network congestion in the TCP / IP network through TCP's congestion control algorithm. In other words, the packet loss in the network is regarded as a network congestion, and a data transmission rate is reduced in the data transmission host computer.

그러나, 망에서의 패킷 손실은 망의 혼잡상황이 이미 심각하게 진행되어 있는 것을 뜻하게 되며, 이러한 방법만으로는 망에서 지원하는 만족할 만한 통신 서비스 품질과 망 대역폭 사용율을 얻기 힘들다.However, packet loss in the network means that the network congestion situation is already seriously progressed, and it is difficult to obtain satisfactory communication service quality and network bandwidth utilization supported by the network alone.

따라서, 망의 사정을 좀더 잘 알 수 있는 라우터에서 큐를 관찰하고 관리할 필요가 있다. 라우터의 큐 관리 기법을 이용하면 좀더 일찍 망의 혼잡 상황을 예측할 수 있으며 이러한 정보를 호스트에 알려줌으로써 이러한 망 혼잡 현상을 미리 예방할 수 있다(Congestion Avoidance).Therefore, there is a need to observe and manage queues in routers that can better understand network conditions. By using the router's queue management technique, network congestion can be predicted earlier, and this information can be informed to the host to prevent such network congestion (Congestion Avoidance).

이러한 큐 관리를 위한 알고리즘을 RED 알고리즘이 있는데, 망의 체증이 발생한 라우터의 큐에 도착하는 패킷을 전부 폐기하기 전에 능동적으로 라우터의 큐 관리를 통해서 체증을 회피하고, 각 TCP 연결에 대해서 링크의 대역을 사용하는 양에 비례하여 패킷을 폐기하도록 함으로써 모든 TCP 연결이 동시에 느린 시작 단계에 들어가서 링크의 사용 효율이 순간적으로 급격히 떨어지는 현상(global synchonitio)을 피하고 큐의 평균 사이즈를 작게 조절할 수 있도록 한다.Algorithm for this queue management is RED algorithm, which actively avoids congestion through the router's queue management before discarding all packets arriving in the router's queue where network congestion occurs, and the bandwidth of the link for each TCP connection. By dropping packets in proportion to the amount of packets used, all TCP connections enter a slow start phase at the same time, avoiding a sudden drop in link utilization (global synchonitio) and allowing the average size of the queue to be reduced.

상기 RED는 출력 링크 대역폭을 사용량만큼 비례하여 각각의 컨넥션의 패킷을 미리 폐기시키는 방법이라 할 수 있는 것으로, 큐가 모두 차서 동시에 여러 컨넥션의 패킷들이 손실되는 큐 잠김(lock-out) 현상과, 큐가 항상 차 있어서 전체적인 전송지연이 증가하는 큐 혼잡(full queue) 현상을 방지할 수 있는 알고리즘이다.The RED is a method of discarding packets of each connection in advance in proportion to the usage of the output link bandwidth. A queue lock-out phenomenon in which packets of multiple connections are lost at the same time because the queue is full, Is always full, which prevents full queues from increasing overall transmission delay.

상기 RED 알고리즘에 관하여 좀더 자세하게 설명하면 다음과 같다.More detailed description of the RED algorithm is as follows.

도 1은 RED 알고리즘 동작을 위한 라우터 큐와 해당 큐의 파라미터를 나타낸 블록도이다.1 is a block diagram showing a router queue for RED algorithm operation and parameters of the queue.

도 1을 참조하면, 라우터에 수신되는 패킷은 망의 혼잡 정도에 따라 버려지거나, 호스트에 이를 알리기 위하여 패킷의 특정 비트에 마킹을 하여 전송되어지는데, RED 알고리즘을 위해서 이용되는 파라미터로는 라우터 큐에 수신되는 패킷을 랜덤하게 버리기 시작하거나 패킷의 특정 비트를 마킹하기 시작하는 최소한의 큐 사이즈를 나타내는와, 패킷을 랜덤하게 버리거나 마킹하는 최대 큐 사이즈인와, 라우터 큐에서의 평균 큐의 길이인를 이용하여 구현할 수 있다.Referring to FIG. 1, a packet received by a router is discarded according to the congestion of the network, or transmitted by marking a specific bit of the packet to inform the host. A parameter used for the RED algorithm is a router queue. Represents the minimum queue size at which to begin discarding incoming packets randomly or marking specific bits in the packet. The maximum queue size for discarding or marking packets randomly. And the average queue length in the router queue Can be implemented using

상기 특정 비트는 패킷에 규정되어 있는 망 혼잡 알림(Congestion Notification) 비트(ECN bit)로써, 이 ECN 비트를 마킹하면 망이 혼잡함을 알리는 것으로 상대방 호스트에서 패킷 전송율을 조절하여 망 혼잡을 바로잡을 수 있도록 한다.The specific bit is a network congestion notification bit (ECN bit) defined in the packet. When the ECN bit is marked, the network is congested. Thus, the host can adjust the packet transmission rate so that the other host can correct the network congestion. do.

상기 파라미터들을 이용하여 망 혼잡을 예상하는 것은 상기 세개의 파라미터,,를 비교하여보다가 작으면, 망의 혼잡이 없이 정상적으로 패킷이 송수신된다는 것을 의미하며,사이에가 있으면, 도착하는 패킷이 확률에 의하여 랜덤하게 버려지거나, ECN 비트가 마킹 되어진다. 이때, 확률는 0부터 최대까지의 상수값으로 존재하고, 이때는 최대 임계값에서의 패킷 마킹 확률을 나타낸다. 이것은보다 크면 모든 패킷이 폐기되거나 ECN비트가 마킹 된다는 것을 의미하기도 한다.Predicting network congestion using the parameters is based on the three parameters. , , By comparing see If is small, it means that the packet is normally transmitted and received without congestion of the network. Wow Between If there is an incoming packet, the probability Is randomly discarded or the ECN bit is marked. Where probability Is from 0 up to Exists as a constant value up to Is the maximum threshold Denotes the packet marking probability at. this is end A larger value may mean that all packets are discarded or the ECN bit is marked.

상기의 파라미터를 이용한 RED 알고리즘은 표 1과 같이 구현될 수 있다.The RED algorithm using the above parameters may be implemented as shown in Table 1.

Initialization: 정의; For each packet arrival: 매번 도착하는 패킷에 대하여;Calculated the new average queue size: 새로운를 계산;If the queue is nonempty 큐가 비어있지 않다면;----(a) q는 현재 큐의 사이즈;Else --------(b)계산;If망 혼잡 판단;count++;Calculated probability:계산;-------(c)-----------(d)With probability: 확률로 패킷 마킹;Mark the arriving packetElse if모든 패킷 마킹Mark the arriving packetElseWhen queue becomes empty Initialization: Definition; For each packet arrival: calculated the new average queue size : new If the queue is nonempty if the queue is not empty; ---- (a) q is the size of the current cue; Else -------- (b) If; Network congestion determination; count ++; Calculated probability : Calculation; ------- (c) ----------- (d) With probability : percentage Mark the arriving packet Else if Mark the arriving packet Else When queue becomes empty

상기와 같이 구현되는 RED 알고리즘에서 count 값은 폐기되거나, 마킹 되지 않고 처리되는 패킷의 수를 말한다. 즉 폐기되거나 마킹 되는 패킷이 발생하면count는 '0'으로 다시 리셋된다.In the RED algorithm implemented as described above, the count value refers to the number of packets that are discarded or processed without being marked. That is, if a discarded or marked packet occurs, the count is reset to '0'.

상기를 구하는 방식은 과거의 값에 가중치를 작게 두고, 현재와 가까울수록 가중치를 크게 두는 EWMA(Exponential weighted moving average)방법을 사용하며, 큐의 가중치를 이용하여 구하게 된다. 이를 이용하여 일시적인 버스트 트래픽의 영향으로 인한 실제 큐의 길이가 짧은 시간동안 증가하더라도가 영향을 받지 않도록 하는 것이다.remind The method of estimating uses the EWMA (Exponential weighted moving average) method, which puts a smaller weight on the past value and a larger weight on the closer to the present, and the weight of the queue. It is obtained using. Even if the actual queue length increases due to the effects of transient burst traffic, Is not affected.

특히, 상기대신에를 사용하는 이유는 시간에 따른 패킷 폐기 분포를 기하분포에서 균등분포로 바꾸기 위한 것이다.In particular, Instead of The reason for using is to change the packet drop distribution over time from a geometric distribution to an even distribution.

상기와 같이 RED 알고리즘을 이용하여 라우터의 큐를 감시하여 망 혼잡을 미리 예측하여 관리할 수 있는 것이다.As described above, the network queue can be predicted and managed by monitoring the router queue using the RED algorithm.

그러나, 데이터 네트워크에 이용되는 라우터와 같은 내장형 시스템은 CPU 연상 수행 능력에 한계가 있어서, RED와 같은 알고리즘 수행에 있어서 발생되는 지수와, 소수(floating point)의 연산을 수행하지 못하고, 단순한 정수연산 및 쉬프트 연산만을 수행할 수 있다.However, embedded systems such as routers used in data networks have limitations in CPU associative performance, and cannot perform exponents, floating point operations, and simple integer operations. Only shift operations can be performed.

따라서, RED 알고리즘을 이용하여 망 혼잡 관리를 하는 것이 실제적으로는 어렵고, 적용한다 해도 성능이 떨어지는 문제가 발생한다.Therefore, network congestion management using the RED algorithm is practically difficult, and even if applied, a problem of poor performance occurs.

상기와 같은 문제를 해결하기 위하여, 본 발명은 소수 연산을 수행해야하는복잡한 RED 알고리즘을 정수연산과 프트 연산을 이용하여 구현할 수 있는 방법을 제시함으로써, CPU 연산능력에 한계가 있는 내장형 라우터와 같은 장치에서도 효과적으로 망 혼잡관리를 위해 RED 알고리즘을 사용할 수 있도록 하는 정수연산을 통한 RED 알고리즘 구현방법을 제공함에 그 목적이 있다.In order to solve the above problems, the present invention proposes a method that can implement a complex RED algorithm that needs to perform a decimal operation using integer operation and shift operation, effectively in devices such as an embedded router that has a limited CPU computing power Its purpose is to provide a method for implementing RED algorithms through integer operations that enable the use of RED algorithms for network congestion management.

도 1은 RED 알고리즘 동작을 위한 라우터 큐와 해당 큐의 파라미터를 나타낸 블록도.1 is a block diagram showing a router queue for RED algorithm operation and parameters of the queue.

본 발명에 따른 정수연산을 통한 RED 알고리즘 구현방법은,RED algorithm implementation method through the integer operation according to the present invention,

라우터 큐 관리를 위한 RED 알고리즘 구현에 있어서,In implementing the RED algorithm for router queue management,

일정 주기로 큐를 폴링하여 큐가 비어있는 경우, 평균 큐 사이즈를 재 계산하고, 각 파라미터의 소수값을 정수값으로 변환하기 위하여 일정 변수만큼의 쉬프트 연산을 시행한 후,If the queue is polled at regular intervals and the queue is empty, the average queue size is recalculated and shifted by a certain variable to convert the decimal values of each parameter into integer values.

RED 알고리즘 구현을 위한 최소 임계값, 최대 임계값, 현재 큐의 길이가 평균 큐 사이즈에 미치는 영향을 나타내는 현재 큐 가중치, 최대 패킷 마킹 확률값에 해당하는 초기값을 설정하여 RED 알고리즘에 적용하는 것을 특징으로 한다.Minimum threshold value, maximum threshold value, the current queue weight indicating the effect of the current queue length on the average queue size, and the initial value corresponding to the maximum packet marking probability value for the implementation of the RED algorithm are applied to the RED algorithm. do.

바람직하게, 상기 초기값의 설정에 있어서,Preferably, in setting the initial value,

일정비율로 정의되는 초기값 테이블을 설정하여 사용자가 선택할 수 있도록 하며, 트래픽의 상황에 따라 초기값의 설정을 동적으로 변경할 수 있는 것을 특징으로 한다.The user can select the initial value table defined by a certain ratio, and the setting of the initial value can be dynamically changed according to traffic conditions.

바람직하게, 상기 현재 큐 가중치는 2의 마이너스 지수승 값을 사용하고, 최대 패킷 마킹 확률값은 2의 마이너스 지수승에 '최대 임계값 - 최소 임계값'을 곱하여 적용하는 것을 특징으로 한다.Preferably, the current queue weight uses a negative exponent value of 2, and the maximum packet marking probability value is applied by multiplying the negative exponent of 2 by 'maximum threshold value-minimum threshold value'.

상기와 같이 구성되는 본 발명에 따른 정수연산을 통한 RED 알고리즘 구현방법에 대하여 구체적으로 설명하면 다음과 같다.Referring to the RED algorithm implementation method through the integer operation according to the present invention configured as described above in detail.

먼저, RED 알고리즘은 앞서 언급한 바와 같이 표 1로 나타낼 수 있다.First, the RED algorithm may be represented in Table 1 as mentioned above.

표 1에 나타난 바와 같은 RED 알고리즘에서, 패킷 마킹 확률값 pa의 계산을 단순화하기 위하여, 플로이드가 제안한 방법(S. Floyd and V. Jacobson, "Random Early Detection Gateways for Congestion Avoidance", IEEE/ACM Transactions on Network, 1(3):397~413, 1993)에 의하여 표 1의 (c), (d)의 값을 수학식 1과 같이 상수 C1 및 C2로 치환한다.In the RED algorithm as shown in Table 1, Floyd's proposed method (S. Floyd and V. Jacobson, "Random Early Detection Gateways for Congestion Avoidance", IEEE / ACM Transactions on) to simplify the calculation of the packet marking probability value p a Network, 1 (3): 397 to 413, 1993), replaces the values of (c) and (d) in Table 1 with constants C1 and C2 as shown in Equation (1).

수학식 1에 의하여 표 1의 (c),(d)의 계산이 수학식 2와 같이 단순화된다.Equation 1 simplifies the calculation of Tables (c) and (d) as shown in Equation 2.

또한, pb를 사용할 때 패킷 폐기 분포가 기하분포가 되어 pa를 이용하여 균등분포를 적용한 바와 같은 효과를 가지기 위하여, 마지막으로 패킷이 폐기된 이후 폐기되지 않고 처리된 패킷의 개수를 나타내는 count 값을 적용하여 count 값이 0보다 크고, 0과 1사이에서 정해지는 임의의 랜덤 정수 R을 pb로 나눈 값보다 작거나 같은 경우 패킷을 마킹 하도록 한다. 이때, 상기 R 값은 count 값이 0 일 때, 상기에서 설명한 바와 같이 0에서 1 사이의 랜덤한 정수로 결정하여 이용한다.Also, in order to have the effect that the packet discard distribution becomes a geometric distribution when p b is used, and a uniform distribution is applied using p a , a count value indicating the number of packets processed without being discarded since the last packet was discarded. If the count value is greater than 0 and less than or equal to the random random integer R defined between 0 and 1 divided by p b , the packet is marked. In this case, when the count value is 0, the R value is determined and used as a random integer between 0 and 1 as described above.

이상과 같이 간략화된 RED 알고리즘은 표 2와 같이 보여진다.The simplified RED algorithm as described above is shown in Table 2.

Initialization: -----------------------------(e)----------------------------(f)For each device driver polling:Calculate the new average queue size:If the queue is empty------------------------------(g)For each packet receiving:Calculated the new average queue sizeIf the queue is nonemptyIfcount++;--------------------------(h)Ifand-----------(i)Mark the arriving packetIf count = 0Else IfMark the arriving packetElse Initialization: ----------------------------- (e) ---------------------------- (f) For each device driver polling: Calculate the new average queue size : If the queue is empty ------------------------------ (g) For each packet receiving: Calculated the new average queue size If the queue is nonempty If count ++; -------------------------- (h) If and ----------- (i) Mark the arriving packet If count = 0 Else if Mark the arriving packet Else 정의;플로이드의 이론에 의한;치환(간략화);모든 디바이스 ;드라이브를 폴링;큐가 비어 있는 경우;재계산;모든 수신되는 패킷;새로운계산;큐가 비어있지 않은 경우;망 혼잡 판단;균등분포 적용효과;패킷 마킹;모든 패킷 마킹;Definition; by Floyd's theory; Substitution (simplification); All devices; Polling drive; When queue is empty; Recalculate; all incoming packets; new Count; if queue is not empty; determine network congestion; apply evenly; packet marking; mark all packets;

표 2와 같이 구현된 RED 알고리즘은 표 1에 도시된 바와 같은 종래의 RED 알고리즘에 비하여 연산의 오버해드가 감소되었다.The RED algorithm implemented as shown in Table 2 has reduced operation overhead compared to the conventional RED algorithm shown in Table 1.

상기 표 2는 오버해드가 감소된 만면, 여전히 소수의 곱셈, 나눗셈 연산과 같은 오버해드가 큰 연산이 필요하게 된다. 따라서, 소수값을 정수값을 바꾸기 위한 쉬프트 연산을 수행하도록 한다.Table 2 shows that if the overhead is reduced, a large overhead operation such as a multiplication and division operation of a decimal number is still required. Therefore, the shift operation for changing the decimal value to the integer value is performed.

즉, 변환하고자 하는 변수에 2의 지수승을 곱하여 왼쪽으로 쉬프트 연산을 수행하여 지수를 없애고, 정수로 변환할 수 있는데, 본 발명이 실시 예에서는 2의 10승에 해당하는 1024를 곱해주어, 정수 연산만을 지원하는 알고리즘으로 구현한다.That is, by multiplying the variable to be converted by the exponential power of 2, the shift operation to the left may be performed to eliminate the exponent and convert it to an integer. Implemented with algorithms that support only operations.

또한, 상기 정수화한 값들을 보기에 편하도록 새로운 변수로 정의하여 표 3과 같이 간단히 RED 알고리즘을 나타낸다.In addition, the RED algorithm is briefly defined as shown in Table 3 by defining the integer values as a new variable to facilitate viewing.

Initialization:-----------------------------------------(k) -----------------------------(l)-----------------------------(m)---------------------------------(n)-----------------------------------(o)----------------------------------(p)For each device driver polling:Calculate the new average queue size:If the queue is empty------------------------(q)For each packet receiving:Calculate the new average queue size:If the queue is nonempty-----------------(r)Ifcount++;------------(s)IfandMark the arriving packetIf --------------------------(t)Else IfMark the arriving packetElse Initialization: ----------------------------------------- (k) ----------------------------- (l) ----------------------------- (m) --------------------------------- (n) ----------------------------------- (o) ---------------------------------- (p) For each device driver polling: Calculate the new average queue size : If the queue is empty ------------------------ (q) For each packet receiving: Calculate the new average queue size : If the queue is nonempty ----------------- (r) If count ++; ------------ (s) If and Mark the arriving packet If -------------------------- (t) Else If Mark the arriving packet Else 정의;** 변수 ** Definition; ** variable **

상기 표 3에서의 << 및 >>는 쉬프트 연산을 나타내는 것으로, 왼쪽 쉬프트 및 오른쪽 쉬프트를 나타내는 기호이다.In Table 3, << and >> indicate shift operations, and are symbols indicating left shift and right shift.

예를 들어을 왼쪽으로 쉬프트 연산을 10번 한 값이 되는 것이다.E.g Is Is the value of the shift operation left 10 times.

상기와 같이 RED 알고리즘이 정수 연산 및 쉬프트 연산으로 대체되어 인터넷의 라우터와 같은 CPU의 연산 기능이 부족한 장치에서도 RED 알고리즘을 적용할 수 있도록 하여 효율적이 망 혼잡 관리가 가능하도록 한다.As described above, the RED algorithm is replaced with an integer operation and a shift operation, so that the RED algorithm can be applied to a device that lacks a computational function of a CPU such as a router of the Internet, thereby enabling efficient network congestion management.

이때, 상기와 같은 RED 알고리즘을 구동하기 위하여 합당한 초기값(,,,) 을 사용자가 설정해주어야만 하는데, 표 4와 같이 큐 사이즈가 32인 경우 로우(low), 미디엄(medium), 하이(high)의 각각의 파라미터의 상대적인 크기비율에 따라 각 파라미터를 정해주게 된다.At this time, in order to drive the RED algorithm as described above, , , , ), The user must set it. As shown in Table 4, when the cue size is 32, each parameter is determined according to the relative size ratio of each parameter of low, medium, and high.

로우low 미디엄medium 하이Hi minth min th 55 1010 1515 maxth max th 1515 2020 2525 wq w q 2-9(0.001953)2 -9 (0.001953) 2-8(0.003906)2 -8 (0.003906) 2-7(0.007813)2 -7 (0.007813) maxp max p 0.0195310.019531 0.0390630.039063 0.0781250.078125 C1C1 0.0019530.001953 0.0039060.003906 0.0078130.007813 C2C2 0.0097660.009766 0.0390630.039063 0.1171880.117188 min'th min ' th 51205120 1024010240 1536015360 max'th max ' th 1536015360 2048020480 2560025600 w'q w ' q 99 88 77 max'p max ' p 2020 4040 8080 C1'C1 ' 99 88 77 C2'C2 ' 1010 4040 120120

상기 표 4와 같이 로우, 미디어, 하이 개념을 이용하여 입력값을 미리 할당하면 RED 알고리즘에 대해서 상세히 알 수 없는 비전문가도 파라미터를 실수 없이 할당 할 수 있으며, 트래픽 상황에 따라 동적으로 미리 정해놓은 파라미터를 변경하는 것이 가능하다As shown in Table 4 above, if an input value is pre-assigned using the concept of low, media, and high, a non-expert who can not know the details of the RED algorithm can assign a parameter without mistake and dynamically predefine the parameters according to traffic conditions. It is possible to change

즉, 라우터에 도착하는 트래픽의 버스트 정도가 커질수록,,는 로우쪽으로 설정하고는 하이 쪽으로 설정하여 적용한다.In other words, the greater the burst of traffic arriving at the router, , , Is set low Apply by setting high.

이상에서 설명한 바와 같이, 본 발명에 따른 정수연산을 통한 RED 알고리즘 구현방법은 RED 알고리즘을 적용하는데 있어서 CPU의 연산기능이 부족한 장치에서도 적용이 가능하도록, RED 알고리즘의 파라미터를 플로이드 이론에 의한 치환 및 쉬프트 연산을 통한 정수화를 하여 지수연산이 없도록 함으로써, 정수의 덧셈 및 뺄셈과 쉬프트 연산만으로 간단히 구현이 가능하도록 하고, 초기값을 미리 설정하여 트래픽에 따라 동적으로 적용할 수 있도록 함으로써, 라우터와 같은 CPU 연산기능이 부족한 장치에서도 효과적으로 RED 알고리즘을 사용할 수 있어서 망 혼잡 관리에 도움을 줄 수 있는 효과가 있다.As described above, the method of implementing the RED algorithm through the integer operation according to the present invention replaces and shifts the parameters of the RED algorithm by Floyd's theory so that the RED algorithm can be applied to a device that lacks a computational function of the CPU. By performing integer conversion, there is no exponential operation, and it is possible to implement simply by adding, subtracting and shifting integers, and by setting the initial value in advance and dynamically applying it according to traffic. The device can be effectively used even in a device that has a lack of functionality, thereby helping to manage network congestion.

Claims (3)

라우터 큐 관리를 위한 RED 알고리즘 구현에 있어서,In implementing the RED algorithm for router queue management, 일정 주기로 큐를 폴링하여 큐가 비어있는 경우, 평균 큐 사이즈를 재 계산하고, 각 파라미터의 소수값을 정수값으로 변환하기 위하여 일정 변수만큼의 쉬프트 연산을 시행한 후,If the queue is polled at regular intervals and the queue is empty, the average queue size is recalculated and shifted by a certain variable to convert the decimal values of each parameter into integer values. RED 알고리즘 구현을 위한 최소 임계값, 최대 임계값, 현재 큐의 길이가 평균 큐 사이즈에 미치는 영향을 나타내는 현재 큐 가중치, 최대 패킷 마킹 확률값에 해당하는 초기값을 설정하여 RED 알고리즘에 적용하는 것을 특징으로 하는 정수연산을 통한 RED 알고리즘 구현방법.Minimum threshold value, maximum threshold value, the current queue weight indicating the effect of the current queue length on the average queue size, and the initial value corresponding to the maximum packet marking probability value for the implementation of the RED algorithm are applied to the RED algorithm. Implementation method of RED algorithm through integer operation. 제 1항에 있어서, 상기 초기값의 설정에 있어서,The method of claim 1, wherein in setting the initial value, 일정비율로 정의되는 초기값 테이블을 설정하여 사용자가 선택할 수 있도록 하며, 트래픽의 상황에 따라 초기값의 설정을 동적으로 변경할 수 있는 것을 특징으로 하는 정수연산을 통한 RED 알고리즘 구현방법.A method of implementing a RED algorithm using integer arithmetic, characterized by setting an initial value table defined by a certain ratio to allow a user to select and dynamically changing the initial value according to traffic conditions. 제 1항에 있어서, 상기 현재 큐 가중치는 2의 마이너스 지수승 값을 사용하고, 최대 패킷 마킹 확률값은 2의 마이너스 지수승에 '최대 임계값 - 최소 임계값'을 곱하여 적용하는 것을 특징으로 하는 정수연산을 통한 RED 알고리즘 구현방법.The integer of claim 1, wherein the current queue weight uses a negative exponent of 2, and the maximum packet marking probability value is applied by multiplying the negative exponent of 2 by the maximum threshold min minimum threshold. How to implement RED algorithm through operation.
KR1020020034755A 2002-06-21 2002-06-21 Method of RED algorism materialinzing by positive numbers calulation KR20030097401A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020020034755A KR20030097401A (en) 2002-06-21 2002-06-21 Method of RED algorism materialinzing by positive numbers calulation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020020034755A KR20030097401A (en) 2002-06-21 2002-06-21 Method of RED algorism materialinzing by positive numbers calulation

Publications (1)

Publication Number Publication Date
KR20030097401A true KR20030097401A (en) 2003-12-31

Family

ID=32387939

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020020034755A KR20030097401A (en) 2002-06-21 2002-06-21 Method of RED algorism materialinzing by positive numbers calulation

Country Status (1)

Country Link
KR (1) KR20030097401A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100656509B1 (en) * 2004-03-03 2006-12-11 삼성전자주식회사 Congestion avoidance method for video service bandwidth
KR100798920B1 (en) * 2005-11-18 2008-01-29 한국전자통신연구원 Method for Congestion Control of VoIP Network Systems Using Extended RED Algorithm and Apparatus for thereof

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100656509B1 (en) * 2004-03-03 2006-12-11 삼성전자주식회사 Congestion avoidance method for video service bandwidth
KR100798920B1 (en) * 2005-11-18 2008-01-29 한국전자통신연구원 Method for Congestion Control of VoIP Network Systems Using Extended RED Algorithm and Apparatus for thereof

Similar Documents

Publication Publication Date Title
US9106577B2 (en) Systems and methods for dropping data using a drop profile
US9100314B2 (en) Dequeuing and congestion control systems and methods for single stream multicast
US7711005B1 (en) Systems and methods for determining the bandwidth used by a queue
US8036117B1 (en) Dequeuing and congestion control systems and methods
US7280477B2 (en) Token-based active queue management
US8072998B2 (en) Systems and methods for congestion control using random early drop at head of buffer
US8009561B1 (en) Systems and methods for permitting queues to oversubscribe
US7911958B2 (en) Token bucket with variable token value
JP5553933B2 (en) Method for reducing energy consumption in packet processing line cards
JP2009253481A (en) Packet transfer device
US7660246B2 (en) Method and apparatus for scaling input bandwidth for bandwidth allocation technology
Jiang et al. An explicit rate control framework for lossless ethernet operation
JP2003234767A (en) Real time estimation of equivalent bandwidth utilization
KR20030097401A (en) Method of RED algorism materialinzing by positive numbers calulation
US20100054127A1 (en) Aggregate congestion detection and management
EP3716549A1 (en) Bandwidth management
CN116887416A (en) Traffic data scheduling method and device and nonvolatile storage medium
CN112804159A (en) Flow distribution method and device
KR20000026836A (en) Method for managing queue of router
Banchsab et al. Core Stateless Fair Bandwidth Allocation for Unicast and Multicast Flows1

Legal Events

Date Code Title Description
N231 Notification of change of applicant
WITN Withdrawal due to no request for examination