KR100927313B1 - 이더넷 서비스의 대역폭 제어 장치 및 그 방법 - Google Patents

이더넷 서비스의 대역폭 제어 장치 및 그 방법 Download PDF

Info

Publication number
KR100927313B1
KR100927313B1 KR1020030004828A KR20030004828A KR100927313B1 KR 100927313 B1 KR100927313 B1 KR 100927313B1 KR 1020030004828 A KR1020030004828 A KR 1020030004828A KR 20030004828 A KR20030004828 A KR 20030004828A KR 100927313 B1 KR100927313 B1 KR 100927313B1
Authority
KR
South Korea
Prior art keywords
pdu
bucket point
location
point
stored
Prior art date
Application number
KR1020030004828A
Other languages
English (en)
Other versions
KR20040067616A (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 KR1020030004828A priority Critical patent/KR100927313B1/ko
Publication of KR20040067616A publication Critical patent/KR20040067616A/ko
Application granted granted Critical
Publication of KR100927313B1 publication Critical patent/KR100927313B1/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/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9047Buffering arrangements including multiple buffers, e.g. buffer pools
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/0001Selecting arrangements for multiplex systems using optical switching
    • H04Q11/0062Network aspects
    • H04Q11/0066Provisions for optical burst or packet networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/0001Selecting arrangements for multiplex systems using optical switching
    • H04Q11/0062Network aspects
    • H04Q11/0067Provisions for optical access or distribution networks, e.g. Gigabit Ethernet Passive Optical Network (GE-PON), ATM-based Passive Optical Network (A-PON), PON-Ring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/0001Selecting arrangements for multiplex systems using optical switching
    • H04Q11/0062Network aspects
    • H04Q2011/0064Arbitration, scheduling or medium access control aspects

Landscapes

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

Abstract

본 발명은 이더넷 서비스의 대역폭에 따른 PDU(Protocol Data Unit)의 전송률을 계산하여 해당 계층의 전송 속도로 PDU를 전송한 후 계산된 전송률에 따라 시간을 지연시켜 대역폭을 제어하는 이더넷 서비스의 대역폭 제어 장치 및 그 방법에 관한 것이다.
본 발명에 따른 이더넷 서비스의 대역폭 제어 장치는, 복수 개의 가변 크기의 버킷을 이용하여 PDU를 저장하는 버퍼; 하위 계층으로부터 PDU를 입력받아 상기 버퍼에 순차적으로 저장하는 입력수단; 및 서비스 가입자의 요구 대역폭에 따른 전송률을 계산하고 상기 버퍼에 저장되어 있는 PDU를 상위 계층으로 출력한 후 상기 전송률에 따라 시간을 지연시키는 출력수단을 구비하는 것을 특징으로 하며, 이더넷 망 요소를 구현할 때에 가입자 간의 단대단 이더넷 서비스에 대하여 인터페이스의 속도에 제한 없이 가입자가 원하는 대역폭을 망에서 제공해 줄 수 있는 효과가 있다.

Description

이더넷 서비스의 대역폭 제어 장치 및 그 방법{Apparatus for regulating bandwidth of ethernet service and method therof}
도 1은 본 발명에 따른 이더넷 서비스의 대역폭 제어 장치의 구성도.
도 2는 본 발명에 따른 버퍼의 개념적 구조도.
도 3은 본 발명에 따른 버퍼의 실질적 구조도.
도 4는 본 발명에 따른 대역폭 제어를 위한 PDU 저장 방법의 순서도.
도 5는 본 발명에 따른 대역폭 제어에 의한 전송 시간의 개념을 설명하기 위한 도면.
도 6은 본 발명에 따른 대역폭 제어를 위한 PDU 전송 방법의 순서도.
본 발명은 이더넷 서비스의 대역폭 제어 장치 및 그 방법에 관한 것으로, 보다 상세하게는 이더넷 서비스의 대역폭에 따른 PDU(Protocol Data Unit)의 전송률을 계산하여 해당 계층의 전송 속도로 PDU를 전송한 후 계산된 전송률에 따라 시간을 지연시켜 대역폭을 제어하는 이더넷 서비스의 대역폭 제어 장치 및 그 방법에 관한 것이다.
일반적으로 버스트(Burst)한 트래픽 형태를 가진 이더넷 망은 입력 측에서 들어오는 트래픽을 순서대로 버퍼(Buffer)에 담고, 출력 측에서 일정한 시간을 지연시킴으로써 대역폭을 제어한다.
이러한 시간 지연을 위해서 종래의 이더넷 망은 토큰 버킷(Token Bucket) 메커니즘을 사용하며, 허용한 대역폭에 맞는 양의 토큰들을 사용함으로써 대역폭을 제어한다.
그러나 토큰 버킷 메커니즘은 트래픽 발생이 없을 시에는 자신의 토큰 버킷에 토큰을 계속 증가시키므로, 트래픽의 발생이 없다가 버스트한 트래픽이 발생할 경우에는 자신의 토큰 버킷에 해당 버스트 트래픽을 수용할 수 있는 토큰들을 가지고 있게 되어 일시적으로 버스트한 트래픽을 허용하게 된다는 문제점을 가지고 있다.
이렇게 허용된 트래픽은 여러 개의 링크가 집합되는 지점의 인터페이스에서 대역폭을 초과하는 트래픽으로 폐기 될 수 있다.
이는 가입자와의 계약을 일시적으로 만족시킨다고는 할 수 있으나, 이더넷 망에서 폐기된 프레임으로 인하여 상위 계층(TCP/IP(Transmission Control Protocol/Internet Protocol)) 및 응용 서비스 계층에서 폐기된 프레임의 재 전송을 발생시키므로 망 효율의 저하를 가져온다.
또한 토큰 버킷 메커니즘은 내부적으로 토큰을 관리하고 이를 저장할 큐(Queue)를 별도로 구현해야 되기 때문에 시스템을 구현하는데 있어서 복잡성과 이에 따르는 비용이 문제시 된다.
상술된 문제점을 해결하기 위하여, 본 발명은 이더넷 서비스의 대역폭에 따른 전송률을 계산하여 대역폭을 제어하는 것을 목적으로 한다.
그리고 본 발명은 가변 크기의 버킷을 사용하여 대역폭을 제어하는 것을 다른 목적으로 한다.
이를 위하여, 본 발명에 따른 이더넷 서비스의 대역폭 제어 장치는, 복수 개의 가변 크기의 버킷을 이용하여 PDU를 저장하는 버퍼; 하위 계층으로부터 PDU를 입력받아 상기 버퍼에 순차적으로 저장하는 입력수단; 및 서비스 가입자의 요구 대역폭에 따른 전송률을 계산하고 상기 버퍼에 저장되어 있는 PDU를 상위 계층으로 출력한 후 상기 전송률에 따라 시간을 지연시키는 출력수단을 구비하는 것을 특징으로 한다.
그리고, 본 발명에 따른 이더넷 서비스의 대역폭 제어 방법은, PDU가 저장될 위치를 가리키는 축적 버킷 포인트와 출력될 PDU가 저장되어 있는 위치를 가리키는 전송 버킷 포인트를 이용하여 버퍼에 상기 PDU를 저장하고 상기 저장되어 있는 PDU를 출력하는 이더넷 서비스의 대역폭 제어 방법에 있어서, 상기 PDU의 입력을 감지하면 상기 PDU의 프리앰블과 시작 경계를 검사하는 제 1과정; 상기 PDU에서 프리앰블과 시작 경계를 제외한 부분을 니블 단위로 읽어 한 바이트 단위로 상기 축적 버킷 포인트의 위치에 저장하는 제 2과정; 상기 축적 버킷 포인트를 다음 PDU가 저장될 위치로 변경하고, 변경된 축적 버킷 포인트의 위치에 다음 PDU가 저장될 공간이 있는지 판단하는 제 3과정; 상기 전송 버킷 포인트의 위치에 저장되어 있는 PDU의 프리앰블과 시작 경계를 작성하고 출력하는 제 4과정; 상기 PDU의 전송 요구 대역폭에 따른 전송률과 상기 전송률에 따른 지연 시간을 계산하는 제 5과정; 상기 PDU를 니블 단위로 읽어 한 바이트 단위로 출력하는 제 6과정; 상기 제 2과정에서 계산된 지연 시간 만큼 시간을 지연시키는 제 7과정; 및 상기 전송 버킷 포인트를 다음으로 출력된 PDU의 위치로 변경하는 제 8과정을 포함하는 것을 특징으로 한다.
이하, 첨부된 도면들을 참조하여 본 발명의 바람직한 실시 예를 상세하게 설명한다.
도 1은 본 발명에 따른 이더넷 망의 대역폭 제어 장치의 구성도이며, 본 발명은 ISO(International Organization for Standardization)의 OSI(Open Systems Interconnection) 계층 2와 계층 3에 동일하게 적용할 수 있고, 입력단과 출력단이 동일한 최대 전송 속도를 가지는 시스템에 적용할 수 있다.
도시된 바와 같이 본 발명에 따른 이더넷 망의 대역폭 제어 장치는, PDU 입력부(110), 입력부(120), 버퍼(130), 출력부(140), PDU 출력부(150)를 구비한다.
PDU 입력부(110)는 계층 1 또는 계층 2로부터 수신되는 PDU를 입력부(120)로 전달하고, PDU 출력부(150)는 출력부(140)로부터 출력되는 PDU를 계층 1 또는 계층 2로 전송한다.
여기서 PDU는 계층 2에서 상위로 전달되는 IP 데이터그램이나 계층 1에서 상위로 전달되는 이더넷 프레임이다.
입력부(120)는 PDU 입력부(110)로부터 전송되는 PDU를 버퍼(130)의 상태를 판단하여 수락 여부를 결정하고, 수락이 허용된 PDU를 버퍼(130)에 저장한다.
출력부(140)는 버퍼(130)에서 PDU를 읽어 PDU 출력부(150)로 전송한다.
이때, 출력부(140)는 이더넷 가입자가 원하는 대역폭에 맞는 지연 시간을 계산하여, 버퍼(130)로부터 읽어온 PDU를 계산된 시간만큼 지연시켜 출력함으로써, 이더넷 망에서 대역폭을 제어할 수 있다.
버퍼(130)는 입력된 PDU를 잠시 저장하였다가 출력하는 데 사용되는 일종의 메모리이다.
도 2는 버퍼(130)의 개념적인 구조도로서, 크게 네 부분으로 나누어지며, 이는 조정 버퍼 영역(RBA : Regulation Buffer Area), 축적 버킷 포인트(ABP : Accumulation Bucket Point), 전송 버킷 포인트(TBP : Transmission Bucket Point), 및 최대 버킷 카운트(MBC : Maximum Bucket Count)이다.
조정 버퍼 영역(RBA)은 최대 크기의 PDU를 저장할 수 있는 가변 크기의 버킷들의 집합이다.
각 버킷의 0∼1 번지, 즉 2바이트에는 버킷에 저장될 PDU의 크기 정보가 저장되고, 2∼(PDU의 크기-1) 번지에는 PDU가 저장된다.
이때 저장되는 PDU는, PDU의 프리앰블(Preamble)과 시작 경계(Start Delimiter) 부분을 제외한 목적지 주소(Destination Address)부터 FCS(Frame Check Sequence) 부분까지이며, 이에 여기서 말하는 PDU의 크기는 목적지 주소부터 FCS 부분까지의 크기를 말한다.
이러한 조정 버퍼 영역(RBA)은 축적 버킷 영역(ABA : Accumulation Bucket Area)과 전송 버킷 영역(TBA : Transmission Bucket Area)을 포함한다.
축적 버킷 영역(ABA)은 조정 버퍼 영역(RBA) 내에서 입력부(120)로부터 입력되는 PDU를 저장하는 영역이고, 전송 버킷 영역(TBA)은 조정 버퍼 영역(RBA) 내에서 출력부(140)에서 읽어갈 PDU가 저장되어 있는 영역이다.
축적 버킷 포인트(ABP)는 축적 버킷 영역(ABA)의 버킷 인덱스를 나타내며, 초기값은 0이고 입력부(120)로부터 하나의 PDU가 완전히 저장되면 순환적으로 1씩 증가한다.
전송 버킷 포인트(TBP)는 전송 버킷 영역(TBA)의 버킷 인덱스를 나타내며, 초기값은 0이고 출력부(140)에 의해 하나의 PDU가 완전히 출력되면 순환적으로 1씩 증가한다.
최대 버킷 카운트(MBC)는 조정 버퍼 영역(RBA)의 크기를 나타내며, 축적 버킷 포인트(ABP)와 전송 버킷 포인트(TBP)의 증가 시 순환 작용의 기준이 된다.
도 3은 이러한 버퍼(130)의 실질적인 구조도이다.
1차원 배열 전체가 조정 버퍼 영역(RBA)이고, 도 2에서 설명한 전송 버킷 포인트(TBP)와 축적 버킷 포인트(ABP)가 각각 전송 버킷 영역(TBA)과 축적 버킷 영역(ABA)의 위치를 가리킨다.
축적 버킷 포인트(ABP)가 가리키는 곳에 입력되는 PDU가 저장되며, PDU가 입력될 때마다 축적 버킷 포인트(ABP)는 증가한다.
이렇게 저장되는 PDU를 전송하기 위하여 전송 버킷 포인트(TBP)는 축적 버킷 포인트(ABP)의 뒤를 따라 증가하면서 저장된 순서대로 PDU가 전송되도록 한다.
즉, 축적 버킷 포인트(ABP)와 전송 버킷 포인트(TBP)의 사이에 PDU가 저장되어 있는 것이다.
배열에 말단에 있는 패딩 영역(Padding Zone)은 0번지부터 시작하여 연속적으로 배열되는 가변길이의 버킷들로 인한 메모리의 끝부분에서의 미스매치(Mismatch)를 해결하기 위해 할당된 영역으로, 축적 버킷 영역(ABA)이나 전송 버킷 영역(TBA)을 넘어서는 크기의 버킷을 해결하기 위하여 여분으로 할당된 영역이다.
이러한 패딩 영역의 안에서는 하나의 완전한 버킷이 존재할 수 없게 함으로써 버킷이 버퍼의 끝을 넘어서지 않도록 한다.
패딩 영역 시작 포인트(PZSP : Padding Zone Start Point)는 패딩 영역이 시작되는 포인터이며, 어떤 가변길이의 버킷의 시작 포인터도 패팅 영역 시작 포인트(PZSP)를 넘어서지 못한다.
이는 패딩 영역 안에서는 하나의 완전한 버킷이 존재하지 않음을 보장한다.
따라서 패딩 영역 시작 포인트(PZSP)는 버퍼의 전체 사이즈 즉, 최대 버킷 카운트(MBC)의 값 - (최대 PDU의 크기 + 2)의 값을 가진다.
상기와 같은 패딩 영역은 바이트 단위로 순환 큐를 구성하는 경우에는 필요하지 않으나, 이더넷의 경우에는 하나의 완전한 이더넷 프레임이 최소의 의미 단위이므로, 실제 구현에서는 하나의 이더넷 프레임을 처리하는 과정에서 순환 큐의 구현을 위해 계속 나머지 연산을 수행하는 것이 성능의 오버헤드를 초래할 수도 있다.
따라서 이더넷의 경우에는 패딩 영역을 사용함으로써 메모리에서 축적 버킷 포인트(ABP)나 전송 버킷 포인트(TBP)에 의해 지정되는 시작 번지에서 바이트 단위로 이더넷을 저장할 때 순환 큐의 구현을 위해 신경을 쓰지 않고, 저장 영역을 넘을 경우 패딩 영역을 사용하면 되므로 프로그램이나 회로의 구성이 간단해 진다.
도 4는 입력부(120)는 PDU 입력부(110)로부터 전송되는 PDU를 버퍼(130)에 저장하는 과정의 순서도이다.
이 순서도에서는 설명의 편이성을 위해 PDU는 IEEE(Institute of Electrical and Electronics Engineers) 802.3 이더넷 프레임을 기준으로 하고, 계층 2에서 대역폭 제어를 수행하는 것으로 한다.
그리고 PDU의 저장을 용이하게 하기 위하여 다음과 같은 레지스터를 이용한다.
RB_POINT는 입력된 PDU가 저장될 축적 버킷의 시작 주소를 저장하는 레지스터이며, S_POINT는 PDU를 바이트 단위로 저장할 때에 읽은 바이트가 저장될 축적 버킷 내의 주소를 저장하는 레지스터이며, N_POINT는 버퍼(130)의 저장 여분을 확인하기 위해 다음 축적 버킷의 시작 주소를 저장하는 레지스터이며, T_POINT는 전송 버킷 포인트(TBP)의 값을 저장하고 있는 레지스터이며, C_POINT는 버퍼(130)의 저장 여분을 확인하기 위한 값을 저장하는 임시 레지스터이며, R_COUNT는 입력된 PDU의 크기를 저장하고 있는 레지스터로, PDU는 목적지 주소부터 FCS 부분까지 저장되므로 크기는 PDU의 목적지 주소부터 FCS 부분까지의 크기이다.
입력부(120)는 PDU 입력부(110)로부터 입력되는 PDU를 감지하면(S410), 먼저 PDU의 프리앰블과 시작 경계(Start Delimiter) 부분을 검사한다(S412).
이때 RB_POINT는 축적 버킷 포인트(ABP)의 값이고, S_POINT의 최초 값은 RB_POINT+2 바이트 값으로 설정되며, 여기서 2 바이트는 RB_POINT가 가리키는 곳에서 PDU의 크기 정보가 저장될 2 바이트를 의미한다(S414).
PDU 입력부(110)로부터 니블(Nibble) 단위로 두번 읽은 다음 1 바이트가 되면 이를 S_POINT가 가리키는 곳에 저장하고(S416), R_COUNT와 S_POINT를 1 바이트씩 증가시킨다(S418).
R_COUNT와 S_POINT를 1 바이트씩 증가시키는 것은 저장되는 PDU의 크기를 기억하기 위함과, 축적 버킷에 1 바이트씩 PDU가 저장되기 때문이다.
상기와 같은 과정에 의해 PDU의 목적지 주소부터 FCS 부분까지 모든 바이트를 저장하면(S420), RB_POINT가 가리키는 곳의 값에 R_COUNT 값을 할당하여 PDU의 크기를 버킷의 0∼1 번지의 2바이트에 저장하고, T_POINT에 전송 버킷 포인트(TBP) 값을 할당한다(S422).
그리고 N_POINT에 (RB_POINT+R_COUNT+2) 값을 할당하여 다음 축적 버킷의 시작 주소를 구하고(S424), R_COUNT는 다음 PDU의 크기를 기록하기 위하여 0으로 초기화시킨 후(S426) 버퍼(130)의 상태를 검사한다.
먼저, RB_POINT가 T_POINT보다 작은지 판단하여(S428), RB_POINT가 T_POINT보다 작으면 버퍼(130)가 순환 큐의 형태를 지님으로 해서 PDU가 저장되다가 버퍼(130)의 끝에서 순환되어 버퍼(130)의 처음부터 다시 저장되는 것을 의미한다.
즉, 도 3의 축적 버킷 포인트(ABP)가 전송 버킷 포인트(TBP)보다 작은 것을 의미한다.
이에 버퍼(130)의 저장 여분을 확인하기 위한 임시 레지스터인 C_POINT에, 다음 축적 버킷의 시작 주소 값을 가지고 있는 N_POINT에 최대 버킷의 크기 값을 더한 값을 할당하여(S430), 다음 PDU가 저장될 버퍼(130)의 공간이 있는지를 확인한다.
즉, 저장된 PDU가 출력부(140)로 전송되어 새로 저장될 공간이 확보되었는지를 확인하는 것이다.
그러므로 C_POINT가 T_POINT보다 작으면 적어도 하나 이상의 PDU를 저장할 수 있는 공간이 있다는 의미이므로(S432), RB_POINT와 축적 버킷 포인트(ABP)에 N_POINT를 할당하여 그 위치부터 다음 PDU가 저장될 수 있도록 한다(S434).
만약 C_POINT가 T_POINT보다 크면 더 이상 PDU를 저장할 공간이 없다는 의미이므로 종료한다.
반면, RB_POINT가 T_POINT보다 작은지 판단하여(S428), RB_POINT가 T_POINT보다 크면, 도 3에 도시된 바와 같이, 입력되는 PDU는 축적 버킷 포인트(ABP)가 가리키는 곳에 계속 저장되면서 그 뒤를 전송 버킷 포인트(TBP)가 따라가는 것을 의미한다.
그러므로 이때는 다음 버킷이 저장될 주소를 가지고 있는 N_POINT가 패딩 영역 시작 포인트(PZSP)를 넘었는지를 판단하면 된다.
N_POINT가 패딩 영역 시작 포인트(PZSP)보다 크지 않으면(S436), 적어도 하나 이상의 PDU를 저장할 수 있는 공간이 있다는 의미이므로, RB_POINT와 축적 버킷 포인트(ABP)에 N_POINT를 할당하여 그 위치부터 다음 PDU가 저장될 수 있도록 한다(S434).
그러나 N_POINT가 패딩 영역 시작 포인트(PZSP)보다 크면, 패딩 영역에까지 PDU가 저장되었다는 것이므로, N_POINT에 0을 할당하여(S438) 버퍼(130)의 처음부터 다음 PDU가 저장되도록 한다.
이때에도 저장된 PDU가 출력부(140)로 전송되어 새로 저장될 공간이 확보되었는지를 확인해야 한다.
이에 전송될 버킷의 위치가 있는 T_POINT가 최대 버킷의 크기 값보다 큰지를 판단한다(S440).
T_POINT가 최대 버킷의 크기 값보다 크면, 적어도 하나 이상의 PDU를 저장할 수 있는 공간이 있다는 의미이므로, RB_POINT와 축적 버킷 포인트(ABP)에 N_POINT를 할당하여 그 위치부터 다음 PDU가 저장될 수 있도록 한다(S434).
T_POINT가 최대 버킷의 크기 값보다 작으면, 더 이상 PDU를 저장할 공간이 없다는 의미이므로 종료한다.
상술된 바와 같이 입력부(120)에서 버퍼(130)에 저장을 하면 출력부(140)는 이더넷 가입자가 원하는 대역폭에 맞는 지연 시간을 계산하여 버퍼(130)로부터 읽어온 PDU를 계산된 시간만큼 지연시켜 출력한다.
도 5는 출력부(140)의 대역폭이 B Mbps이고, 이더넷 가입자가 원하는 대역폭이 R Mbps인 경우(R ≤B) 전송 시간에 대한 정보를 보여주고 있다.
이더넷 프레임이 R Mbps의 속도로 전송될 때 필요한 시간은 도시된 바와 같 이 TT1 + TIFG이다.
TT1은 이더넷 프레임이 R Mbps의 속도로 전송되는데 걸리는 시간이고, TIFG는 전송되는 이더넷 프레임 사이의 간격(Interframe Gap, 9.6㎲)이다.
그러나 실제 전송은 B Mbps의 속도로 일어나므로, 실제 프레임의 전송은 TT2에 종료하게 된다.
그러므로 실제 전송은 B Mbps로 하더라도 R Mbps의 속도로 전송한 것과 같은 효과를 나타내기 위해서는 패킷의 전송 후에 TW + TIFG 만큼 대기하여야 한다.
즉, 출력부(140)는 프레임을 TW + TIFG 만큼 지연시킨 후 출력해야 한다.
B MHz의 계층 1 PDU 입력부(110)를 기준으로 보면 식 1을 얻을 수 있다.
TT2 = α[clock],
TW = α×( B / R - 1 ) [clock],
TIFG = B / R ×96 [clock]. <식 1>
여기서, α는 이더넷 프레임의 프리앰블부터 FCS까지의 총 비트 길이이다.
이러한 식 1을 실제 계층 1의 PDU 입력부(110)에 대한 B/4 MHz의 MII(Media Independent Interface)를 기준으로 보면 식 2와 같다.
TT2 = α / 4 [clock],
TW = α ×( B / ( R ×4 ) - 1 / 4 ) [clock],
TIFG = B / ( R ×4 ) ×96 [clock]. <식 2>
그러면 B Mbps의 출력부(140)는 R Mbps의 전송 속도를 제공하기 위하여, 프리앰블부터 FCS까지의 총 길이가 α비트인 이더넷 프레임을 전송한 후에 대기해야 되는 총 시간은 TW + TIFG 이므로,
TW + TIFG = α×( B / ( R ×4 ) - 1 / 4 ) + B / ( R ×4 ) ×96 [clock]
이 된다.
여기서 수식의 곱하기 연산 수를 줄이기 위해 재정리하면,
TW + TIFG = ( X + 160 ) R_RATE + 24 [clock] <식 3>
이 된다.
식 3에서 X는 이더넷 프레임의 프리앰블과 시작 경계(Start Delimiter) 부분을 제외한 비트 길이로 α- 64 이고, R_RATE는 프레임의 길이에 상관없이 상수 값을 갖는 B / ( R ×4 ) - 1 / 4 이다.
출력부(140)에서 전체 지연 시간의 계산은 특정 프레임의 전송이 종료되기 이전에 이루어져야 한다.
그런데 이더넷 프레임의 프리앰블과 시작 경계(Start Delimiter) 부분을 제외한 최소 크기는 64 바이트이므로 이를 MII를 통해 전송하기 위해서는, 프리앰블과 시작 경계(Start Delimiter) 부분의 8 바이트를 합하여 니블 단위로 전송하므로, 72 ×2 = 144 clock의 MII 기준 클럭만큼의 시간이 필요하다.
이러한 지연 시간의 계산은 R_RATE의 값이 테이블을 통해 제공된다면, 충분 히 144 clock 이내에 계산될 수 있다.
도 6은 출력부(140)에서 상기와 같이 지연 시간을 계산하여 버퍼(130)에 저장되어 있는 PDU를 계층 1의 DPU 출력부(150)로 전송하는 과정의 순서도이다.
이 순서도에서는 설명의 편이성을 위해 PDU는 IEEE 802.3 이더넷 프레임을 기준으로 하고, 계층 2에서 대역폭 제어를 수행하는 것으로 한다.
그리고 PDU의 전송을 용이하게 하기 위하여 다음과 같은 레지스터를 이용한다.
WB_POINT는 전송할 PDU가 저장되어 있는 버킷의 시작 주소를 저장하고 있는 레지스터이며, R_POINT는 전송할 바이트가 있는 버킷 내의 주소를 저장하고 있는 레지스터이며, A_POINT는 버퍼(130)가 비었는지 여부를 판단하기 위해 축적 버킷 포인트(ABP)의 값을 저장하고 있는 레지스터이며, W_COUNT는 전송한 PDU의 크기를 저장하고 있는 레지스터로, 그 범위는 목적지 주소(DA)부터 FCS까지이며, WT_COUNT는 가입자의 요구 대역폭과 실제 전송 속도를 조절하기 위해 대기해야 하는 클럭의 수를 저장하는 레지스터이며, R_RATE는 도 5의 식 3에서 설명한 B / ( R ×4 ) - 1 / 4 의 상수 값을 저장하는 레지스터이다.
먼저, 출력부(140)는 버퍼(130)의 상태를 검사하기 위하여 A_POINT에 축적 버킷 포인트(ABP)를 할당하고, R_POINT에 (WB_POINT+2)를 할당하며, W_COUNT에 WB_POINT가 가리키는 곳의 값을 할당한다(S610).
버킷의 처음 2 바이트에는 PDU의 길이 정보가 저장되어 있으므로, 그 이후부터 읽어 오기 위하여 R_POINT에 (WB_POINT+2)를 할당하고, WB_POINT가 가리키는 곳 의 값은, 저장되어 있는 PDU의 크기 정보이므로, 이를 PDU의 크기를 저장하는 레지스터인 W_COUNT에 할당하는 것이다.
그리고 WB_POINT와 A_POINT를 비교하여, WB_POINT와 A_POINT가 같으면, 저장될 PDU의 위치와 전송될 PDU의 위치가 동일하여 버퍼(130)에는 저장되어 있는 PDU가 없이 비어있는 것을 의미하므로 처음 단계로 되돌아가고(S612), 그렇지 않으면, PDU를 전송하기 위하여 프리앰블과 시작 경계(Start Delimiter)를 작성하여 출력하고(S614), 전송 지연 시간을 계산한다.
출력부(140)는 전송 지연 시간을 계산하기 위하여 먼저 WB_POINT가 가리키는 곳의 값을 WT_COUNT에 할당한다(S618).
WB_POINT가 가리키는 곳에는 PDU의 크기 정보가 저장되어 있다.
그리고 이 값을 왼쪽으로 3비트 쉬프트하여 바이트를 비트 단위로 바꾼 후,(S620) ((WT_COUNT+160)×_RATE+24) 값을 계산하여 WT_COUNT에 할당해 둔다(S622).
이 과정은 도 5의 식 3을 계산한 것이다.
PDU의 전송은 W_COUNT가 0이 될 때까지, 즉 PDU를 모두 읽을 때까지, R_POINT가 가리키는 곳의 값을 니블 단위로 두번 읽은 다음 1 바이트가 되면 이를 PDU 출력부(150)로 전송하고(S624), W_COUNT는 1 바이트 감소시키고 R_POINT는 1 바이트 증가시켜 PDU를 1 바이트씩 읽어서 전송한다(S626).
상기와 같이 PDU를 모두 읽어 전송하였으면(S628), 기 계산되어 WT_COUNT에 저장되어 있는 전송 지연 시간을 이용하여, WT_COUNT이 0이 될 때까지 감소시킴으 로써 전송 시간을 지연시킨다(S630).
그리고 다음 PDU를 전송시키기 위하여 WB_POINT에 WB_POINT가 가리키는 곳에 저장되어 있는 PDU의 크기 값 및 2 바이트를 합하여 다시 WB_POINT로 할당함으로써 다음으로 전송될 PDU의 위치를 설정한다(S632).
또한 다음으로 전송될 PDU의 위치가 패딩 영역에 설정되어 있는지를 판단하기 위하여 WB_POINT를 패딩 영역 시작 포인트(PZSP)와 비교한다(S634).
이때 WB_POINT가 패딩 영역 시작 포인트(PZSP)보다 작으면, TBP에 WB_POINT를 할당하여 다음 PDU가 전송될 수 있도록 한다(S636).
반면, WB_POINT가 패딩 영역 시작 포인트(PZSP)보다 크면, 전송될 PDU가 패딩 영역에 있다는 의미이나 패딩 영역에는 하나의 완전한 버킷이 존재할 수 없으므로, WB_POINT를 0으로 할당하여 버퍼(130)의 처음에 저장되어 있는 PDU부터 계속 전송될 수 있도록 한다(S638).
이러한 본 발명은 이더넷에서 등급별로 일정한 대역폭을 제공하는 서비스를 제공하고자 할 때에 적용될 수 있으며, 이를 위하여 등급별 대역폭과 그에 따른 전송률 및 지연 시간을 테이블로 구비하고 이를 이용하면 간단하게 구현될 수 있다.
상술된 바와 같은 본 발명은 토큰 버킷에 수용되는 PDU는 그 크기와 관계없이 모두 전송하는 토큰 버킷 메커니즘과는 달리 가변 크기의 버킷을 이용하여 PDU를 하나씩 전송하고 시간을 지연시킴으로써, 이더넷 트래픽의 버스트한 특성으로 인하여 여러 개의 망 요소가 집합되는 지점에서 발생될 수 있는 프레임의 손실을 최소화할 수 있으며, 이로 인해 서비스 품질의 향상을 꾀할 수 있는 효과가 있다.
그리고 본 발명은 이더넷 망 요소를 구현할 때에 가입자 간의 단대단 이더넷 서비스에 대하여 인터페이스의 속도에 제한 없이 가입자가 원하는 대역폭을 망에서 제공해 줄 수 있는 효과가 있다.
그리고 본 발명은 각 트래픽에 대하여 대역폭을 제어하므로 이더넷 망의 링크 또는 노드 차원의 폭주를 대폭 줄여 트래픽 관리 및 운용을 원활히 할 수 있는 효과가 있다.
그리고 본 발명은 가입자가 원하는 대역폭에 따른 전송 지연 시간만을 계산하므로 구현하기 간단하다는 장점이 있다.

Claims (15)

  1. 복수 개의 가변 크기의 버킷을 이용하여 PDU를 저장하는 버퍼;
    하위 계층으로부터 PDU를 입력받아 상기 버퍼에 순차적으로 저장하는 입력수단; 및
    서비스 가입자의 요구 대역폭에 따른 전송률을 계산하고 상기 버퍼에 저장되어 있는 PDU를 상위 계층으로 출력한 후 상기 전송률에 따라 지연 시간을 발생시키는 출력수단을 구비하는 것을 특징으로 하는 이더넷 서비스의 대역폭 제어 장치.
  2. 제 1항에 있어서,
    상기 버퍼는,
    상기 PDU를 저장하는 상기 복수 개의 가변 크기 버킷의 집합인 버퍼 영역;
    상기 입력수단으로부터 입력되는 PDU가 저장될 위치를 가리키는 축적 버킷 포인트;
    상기 출력수단으로 출력되는 PDU가 저장되어 있는 위치를 가리키는 전송 버킷 포인트; 및
    상기 복수 개의 가변 크기 버킷의 집합의 크기를 나타내는 최대 버킷 카운트를 포함하는 것을 특징으로 하는 이더넷 서비스의 대역폭 제어 장치.
  3. 제 2항에 있어서,
    상기 버퍼는,
    상기 버퍼 영역에 상기 PDU가 순환 큐에 의하여 바이트 단위로 나뉘어 저장되는 것을 방지하기 위하여 상기 복수 개의 가변 크기의 버킷 중 어느 하나의 버킷이 완전하게 하나 이상 존재할 수 없는 패딩 영역을 더 구비하는 것을 특징으로 하는 이더넷 서비스의 대역폭 제어 장치.
  4. 제 1항에 있어서,
    상기 하위 계층은, OSI 계층 1 또는 계층 2임을 특징으로 하는 이더넷 서비스의 대역폭 제어 장치.
  5. 제 1항에 있어서,
    상기 서비스 가입자의 요구 대역폭은, 상기 가입자의 서비스 등급에 따라 일정하게 제공되는 것을 특징으로 하는 이더넷 서비스의 대역폭 제어 장치.
  6. 제 1항 내지 제 5항 중 어느 한 항에 있어서,
    상기 전송률은,
    (상기 상위 계층의 전송 대역폭)/(상기 서비스 가입자의 요구 대역폭×4) - 1/4 이고,
    상기 지연 시간은,
    ((상기 PDU의 프리앰블과 시작 경계를 제외한 비트 길이)+160) ×(상기 전송률) + 24 인 것을 특징으로 하는 이더넷 서비스의 대역폭 제어 장치.
  7. 제 1항에 있어서,
    상기 입력수단은,
    상기 하위 계층으로부터 상기 PDU를 입력받는 PDU 입력부와,
    상기 PDU 입력부로부터 상기 PDU를 입력받아 상기 버퍼에 순차적으로 저장하는 입력부를 구비하는 것을 특징으로 하는 이더넷 서비스의 대역폭 제어 장치.
  8. 제 1항 또는 제 7항에 있어서,
    상기 출력수단은,
    상기 서비스 가입자의 요구 대역폭에 따른 전송률을 계산하고 상기 버퍼에 저장되어 있는 PDU를 출력한 후 상기 전송률에 따라 시간을 지연시키는 출력부와,
    상기 출력부로부터 입력받은 PDU를 상기 상위 계층으로 출력하는 PDU 출력부를 구비하는 것을 특징으로 하는 이더넷 서비스의 대역폭 제어 장치.
  9. PDU가 저장될 위치를 가리키는 축적 버킷 포인트와 출력될 PDU가 저장되어 있는 위치를 가리키는 전송 버킷 포인트를 이용하여 버퍼에 상기 PDU를 저장하는 이더넷 서비스의 대역폭 제어 방법에 있어서,
    상기 PDU의 입력을 감지하면 상기 PDU의 프리앰블과 시작 경계를 검사하는 제 1과정;
    상기 PDU에서 프리앰블과 시작 경계를 제외한 부분을 니블 단위로 읽어 한 바이트 단위로 상기 축적 버킷 포인트의 위치에 저장하는 제 2과정;
    상기 축적 버킷 포인트를 다음 PDU가 저장될 위치로 변경하고, 변경된 축적 버킷 포인트의 위치에 다음 PDU가 저장될 공간이 있는지 판단하는 제 3과정을 포함하는 것을 특징으로 하는 이더넷 서비스의 대역폭 제어 방법.
  10. 제 9항에 있어서,
    상기 제 3과정은,
    상기 축적 버킷 포인트를 다음 PDU가 저장될 위치로 변경하고, 변경된 축적 버킷 포인트와 상기 전송 버킷 포인트와 비교하는 제 1단계;
    상기 제 1단계의 비교 결과, 상기 변경된 축적 버킷 포인트가 상기 전송 버킷 포인트보다 크면, 상기 변경된 축적 버킷 포인트의 위치에 상기 다음 PDU가 저장될 공간이 있는지 판단하는 제 2단계;
    상기 제 2단계의 판단 결과, 상기 변경된 축적 버킷 포인트의 위치에 상기 다음 PDU가 저장될 공간이 있으면, 상기 변경된 축적 버킷 포인트의 위치에 상기 다음 PDU가 저장되도록 하고, 상기 변경된 축적 버킷 포인트의 위치에 상기 다음 PDU가 저장될 공간이 없으면, 상기 변경된 축적 버킷 포인트를 초기화하고 상기 초기화된 축적 버킷 포인트의 위치에 상기 다음 PDU가 저장될 공간이 있는지 판단하는 제 3단계;
    상기 제 3단계의 판단 결과, 상기 초기화된 축적 버킷 포인트의 위치에 상기 다음 PDU가 저장될 공간이 있으면 상기 다음 PDU가 저장되도록 하는 제 4단계;
    상기 제 1단계의 비교 결과, 상기 변경된 축적 버킷 포인트가 상기 전송 버킷 포인트보다 작으면, 상기 변경된 축적 버킷 포인트의 위치에 상기 다음 PDU가 저장될 공간이 있는지 판단하는 제 5단계; 및
    상기 제 5단계의 판단 결과, 상기 변경된 축적 버킷 포인트의 위치에 상기 다음 PDU가 저장될 공간이 있으면 상기 다음 PDU가 저장되도록 하는 제 6단계를 포함하는 것을 특징으로 하는 이더넷 서비스의 대역폭 제어 방법.
  11. 버퍼에 저장되어 있는 PDU를, PDU가 저장될 위치를 가리키는 축적 버킷 포인트와 출력될 PDU가 저장되어 있는 위치를 가리키는 전송 버킷 포인트를 이용하여 출력하는 이더넷 서비스의 대역폭 제어 방법에 있어서,
    상기 전송 버킷 포인트의 위치에 저장되어 있는 PDU의 프리앰블과 시작 경계를 작성하고 출력하는 제 1과정;
    상기 PDU의 전송 요구 대역폭에 따른 전송률과 상기 전송률에 따른 지연 시간을 계산하는 제 2과정;
    상기 PDU를 니블 단위로 읽어 한 바이트 단위로 출력하는 제 3과정;
    상기 제 2과정에서 계산된 지연 시간 만큼 시간을 지연시키는 제 4과정; 및
    상기 전송 버킷 포인트를 다음으로 출력된 PDU의 위치로 변경하는 제 5과정을 포함하는 것을 특징으로 하는 이더넷 서비스의 대역폭 제어 방법.
  12. 제 11항에 있어서,
    상기 전송률은,
    (상기 PDU가 출력될 계층의 대역폭)/(상기 PDU의 전송 요구 대역폭×4) - 1/4 이고,
    상기 지연 시간은,
    ((상기 PDU의 프리앰블과 시작 경계를 제외한 비트 길이)+160) ×(상기 전송률) + 24 인 것을 특징으로 하는 이더넷 서비스의 대역폭 제어 방법.
  13. PDU가 저장될 위치를 가리키는 축적 버킷 포인트와 출력될 PDU가 저장되어 있는 위치를 가리키는 전송 버킷 포인트를 이용하여 버퍼에 상기 PDU를 저장하고 출력하는 이더넷 서비스의 대역폭 제어 방법에 있어서,
    상기 PDU의 입력을 감지하면 상기 PDU의 프리앰블과 시작 경계를 검사하는 제 1과정;
    상기 PDU에서 프리앰블과 시작 경계를 제외한 부분을 니블 단위로 읽어 한 바이트 단위로 상기 축적 버킷 포인트의 위치에 저장하는 제 2과정;
    상기 축적 버킷 포인트를 다음 PDU가 저장될 위치로 변경하고, 변경된 축적 버킷 포인트의 위치에 다음 PDU가 저장될 공간이 있는지 판단하는 제 3과정;
    상기 전송 버킷 포인트의 위치에 저장되어 있는 PDU의 프리앰블과 시작 경계를 작성하고 출력하는 제 4과정;
    상기 PDU의 전송 요구 대역폭에 따른 전송률과 상기 전송률에 따른 지연 시간을 계산하는 제 5과정;
    상기 PDU를 니블 단위로 읽어 한 바이트 단위로 출력하는 제 6과정;
    상기 제 2과정에서 계산된 지연 시간 만큼 시간을 지연시키는 제 7과정; 및
    상기 전송 버킷 포인트를 다음으로 출력된 PDU의 위치로 변경하는 제 8과정을 포함하는 것을 특징으로 하는 이더넷 서비스의 대역폭 제어 방법.
  14. 제 13항에 있어서,
    상기 제 3과정은,
    상기 축적 버킷 포인트를 다음 PDU가 저장될 위치로 변경하고, 변경된 축적 버킷 포인트와 상기 전송 버킷 포인트와 비교하는 제 1단계;
    상기 제 1단계의 비교 결과, 상기 변경된 축적 버킷 포인트가 상기 전송 버킷 포인트보다 크면, 상기 변경된 축적 버킷 포인트의 위치에 상기 다음 PDU가 저장될 공간이 있는지 판단하는 제 2단계;
    상기 제 2단계의 판단 결과, 상기 변경된 축적 버킷 포인트의 위치에 상기 다음 PDU가 저장될 공간이 있으면, 상기 변경된 축적 버킷 포인트의 위치에 상기 다음 PDU가 저장되도록 하고, 상기 변경된 축적 버킷 포인트의 위치에 상기 다음 PDU가 저장될 공간이 없으면, 상기 변경된 축적 버킷 포인트를 초기화하고 상기 초기화된 축적 버킷 포인트의 위치에 상기 다음 PDU가 저장될 공간이 있는지 판단하는 제 3단계;
    상기 제 3단계의 판단 결과, 상기 초기화된 축적 버킷 포인트의 위치에 상기 다음 PDU가 저장될 공간이 있으면 상기 다음 PDU가 저장되도록 하는 제 4단계;
    상기 제 1단계의 비교 결과, 상기 변경된 축적 버킷 포인트가 상기 전송 버킷 포인트보다 작으면, 상기 변경된 축적 버킷 포인트의 위치에 상기 다음 PDU가 저장될 공간이 있는지 판단하는 제 5단계; 및
    상기 제 5단계의 판단 결과, 상기 변경된 축적 버킷 포인트의 위치에 상기 다음 PDU가 저장될 공간이 있으면 상기 다음 PDU가 저장되도록 하는 제 6단계를 포함하는 것을 특징으로 하는 이더넷 서비스의 대역폭 제어 방법.
  15. 제 13항 또는 제 14항에 있어서,
    상기 전송률은,
    (상기 PDU가 출력될 계층의 대역폭)/(상기 PDU의 전송 요구 대역폭×4) - 1/4 이고,
    상기 지연 시간은,
    ((상기 PDU의 프리앰블과 시작 경계를 제외한 비트 길이)+160) ×(상기 전송률) + 24 인 것을 특징으로 하는 이더넷 서비스의 대역폭 제어 방법.
KR1020030004828A 2003-01-24 2003-01-24 이더넷 서비스의 대역폭 제어 장치 및 그 방법 KR100927313B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030004828A KR100927313B1 (ko) 2003-01-24 2003-01-24 이더넷 서비스의 대역폭 제어 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030004828A KR100927313B1 (ko) 2003-01-24 2003-01-24 이더넷 서비스의 대역폭 제어 장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20040067616A KR20040067616A (ko) 2004-07-30
KR100927313B1 true KR100927313B1 (ko) 2009-11-18

Family

ID=37357119

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030004828A KR100927313B1 (ko) 2003-01-24 2003-01-24 이더넷 서비스의 대역폭 제어 장치 및 그 방법

Country Status (1)

Country Link
KR (1) KR100927313B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100797732B1 (ko) * 2006-12-28 2008-01-24 주식회사 케이티 이더넷 라인 속도 적응이 가능한 wdm-pon 이더넷어댑터 장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990053408A (ko) * 1997-12-24 1999-07-15 이계철 비동기전달모드 스위치에서 셀지연 우선순위 큐잉 대역폭 동적할당 방법
US20020039350A1 (en) 2000-09-29 2002-04-04 Zarlink Semiconductor V.N. Inc. Buffer management for support of quality-of-service guarantees and data flow control in data switching
US20020039351A1 (en) 2000-09-29 2002-04-04 Linghsiao Wang Bandwidth sharing using emulated weighted fair queuing
KR20040025994A (ko) * 2002-09-17 2004-03-27 삼성전자주식회사 멀티미디어 스트리밍 장치 및 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990053408A (ko) * 1997-12-24 1999-07-15 이계철 비동기전달모드 스위치에서 셀지연 우선순위 큐잉 대역폭 동적할당 방법
US20020039350A1 (en) 2000-09-29 2002-04-04 Zarlink Semiconductor V.N. Inc. Buffer management for support of quality-of-service guarantees and data flow control in data switching
US20020039351A1 (en) 2000-09-29 2002-04-04 Linghsiao Wang Bandwidth sharing using emulated weighted fair queuing
KR20040025994A (ko) * 2002-09-17 2004-03-27 삼성전자주식회사 멀티미디어 스트리밍 장치 및 방법

Also Published As

Publication number Publication date
KR20040067616A (ko) 2004-07-30

Similar Documents

Publication Publication Date Title
EP1705851B1 (en) Communication traffic policing apparatus and methods
US7885281B2 (en) Systems and methods for determining the bandwidth used by a queue
US8335158B2 (en) Systems and methods for dropping data using a drop profile
JP3733784B2 (ja) パケット中継装置
US7623455B2 (en) Method and apparatus for dynamic load balancing over a network link bundle
EP1352495B1 (en) Congestion management in computer networks
US7792033B2 (en) Bandwidth policing method and packet transfer apparatus with bandwidth policing function
EP0744850B1 (en) Digital network including early packet discard mechanism with adjustable threshold
US6469983B2 (en) Data packet transmission scheduling using a partitioned heap
US7613199B1 (en) Systems and methods for permitting queues to oversubscribe
US7554918B1 (en) Fair multiplexing scheme for multiple input port router
EP0827307A2 (en) Adaptive rate-based congestion control in packet networks
US20100172363A1 (en) Systems and methods for congestion control using random early drop at head of buffer
JPH06224941A (ja) ネットワーク・アクセス制御システム
US20030223442A1 (en) Buffer memory reservation
JP2002223240A (ja) 重み付きランダムアーリディテクションバッファアドミッタンスアルゴリズムの近似方法
US20030137935A1 (en) Static flow rate control
US8621100B1 (en) Merge systems and methods for transmit system interfaces
US7197009B1 (en) Delay variation based routing in communication systems
KR100927313B1 (ko) 이더넷 서비스의 대역폭 제어 장치 및 그 방법
US8131854B2 (en) Interfacing with streams of differing speeds
CA2427633C (en) Latency management for a network
JP3646871B2 (ja) データ中継装置及びデータ中継方法
JP3704505B2 (ja) 帯域割当回路及び帯域割当方法
JP2002354046A (ja) パケット中継装置バッファ管理方法

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: 20121101

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20131101

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20171101

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20181031

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20190903

Year of fee payment: 11