KR100542433B1 - 패킷 스케줄링 장치 및 패킷 스케줄링 방법 - Google Patents
패킷 스케줄링 장치 및 패킷 스케줄링 방법 Download PDFInfo
- Publication number
- KR100542433B1 KR100542433B1 KR1020030037146A KR20030037146A KR100542433B1 KR 100542433 B1 KR100542433 B1 KR 100542433B1 KR 1020030037146 A KR1020030037146 A KR 1020030037146A KR 20030037146 A KR20030037146 A KR 20030037146A KR 100542433 B1 KR100542433 B1 KR 100542433B1
- Authority
- KR
- South Korea
- Prior art keywords
- packet
- time slot
- memory
- output
- session
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 230000015654 memory Effects 0.000 claims abstract description 193
- 238000012545 processing Methods 0.000 claims description 7
- 238000007616 round robin method Methods 0.000 claims description 2
- 238000010276 construction Methods 0.000 claims 1
- 238000004364 calculation method Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 11
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000011160 research Methods 0.000 description 3
- 239000012530 fluid Substances 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 125000006850 spacer group Chemical group 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/6215—Individual queue per QOS, rate or priority
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/901—Buffering arrangements using storage descriptor, e.g. read or write pointers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9026—Single buffer per packet
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
Claims (14)
- 외부로부터 입력되는 패킷을 저장하여 저장된 패킷의 출력을 스케줄링하는 패킷 스케줄링 장치에 있어서,저장되는 패킷의 세션(session)이 등록되면, 세션 등록에 따른 각 타임 슬롯의 유휴 및 점유 타임 슬롯 주소를 저장하는 캘린더 메모리,해당 세션의 서비스 레이트(service rate)를 참고로 각 패킷의 출력시간을 계산하고, 상기 캘린더 메모리를 단일 블록 레지스터에 로딩(loading)하여, 유휴 타임 슬롯을 검색하고, 계산된 출력시간 및 유휴 타임 슬롯이 있는 경우의 해당 패킷 세션을 상기 캘린더 메모리에 등록하고, 유휴 타임 슬롯에 해당 출력 패킷을 출력하도록 하는 캘린더 메모리 제어부를 갖는 패킷 스케줄러를 포함하는 패킷 스케줄링 장치.
- 제1 항에 있어서,외부로부터 입력되는 하나 이상의 패킷을 저장하는 패킷 버퍼;입력 패킷이 상기 패킷 버퍼의 특정 포인터에 저장되도록 하는 입력 패킷 처리부; 및상기 캘린더 메모리 제어부로부터 상기 출력 패킷의 세션 아이디가 수신되면, 상기 출력 패킷을 상기 패킷 버퍼로부터 읽어와 출력링크로 출력시키는 출력 패킷 처리부를 더 포함하는 패킷 스케줄링 장치.
- 제1항 또는 제2항에 있어서,상기 캘린더 메모리는,일정한 구간으로 나뉘어져 하나 이상의 2차원 블록 배열을 갖는 블록 캘린더 메모리;상기 각 블록의 첫 번째 유휴 타임 슬롯의 위치를 나타내는 유휴 어드레스 메모리;해당 블록에 유휴 타임 슬롯이 있음을 나타내는 유휴 플래그;상기 각 블록의 첫 번째 점유 타임 슬롯의 주소를 저장하는 점유 어드레스 메모리; 및상기 해당 블록에 점유된 타임 슬롯이 있음을 나타내는 점유 플래그를 포함하는 패킷 스케줄링 장치.
- 제1항 또는 제2항에 있어서,상기 점유 타임 슬롯에 등록된 세션 아이디를 저장하는 제어 메모리를 더 포함하는 패킷 스케줄링 장치.
- 제4항에 있어서,상기 제어 메모리는상기 패킷 버퍼 내 비어 있는 블록의 어드레스를 저장하는 유휴 버퍼 포인터;상기 세션 관련 정보를 저장하는 세션 정보 메모리;상기 캘린더 메모리에 등록한 세션 관련 정보를 관리하는 캘린더 정보 메모리;상기 패킷 버퍼에 저장한 하나 이상의 패킷에 대한 링크 리스트 구성을 위한 포인터 정보를 저장하는 버퍼 포인터를 포함하는패킷 스케줄링 장치.
- 제5항에 있어서,상기 제어 메모리는 상기 패킷 스케줄러 외부에 마련된패킷 스케줄링 장치.
- 제6항에 있어서,상기 세션 정보 메모리는,상기 외부로부터 입력되는 각 패킷 세션의 서비스 레이트, 상기 세션의 첫 번째 패킷이 저장되어 있는 버퍼 포인터를 가리키는 시작 포인터, 마지막 패킷이 저장된 버퍼 포인터를 가리키는 끝 포인터 및 상기 세션의 큐에 저장된 패킷의 수를 나타내는 패킷 카운터를 포함하는 패킷 스케줄링 장치.
- 제1항 또는 제2항에 있어서,상기 캘린더 메모리 제어부는,상기 계산된 출력 시간의 상위 비트인 상위 타임 슬롯 어드레스를 이용하여 상기 캘린더 메모리를 상기 레지스터에 로딩(loading)하고, 상기 로딩된 캘린더 메모리에서 상기 계산된 출력 시간의 하위 비트인 하위 타임 슬롯 어드레스를 이용하여 유휴 타임 슬롯을 검색한 후, 상기 검색된 유휴 타임 슬롯에 점유 표시를 하여 해당 패킷의 세션을 등록하는 패킷 스케줄링 장치.
- 제8항에 있어서,상기 캘린더 메모리 제어부는,상기 상위 타임 슬롯 어드레스를 이용하여 상기 캘린더 메모리로부터 각 타임 슬롯의 점유 상태를 읽어와 상기 레지스터에 로딩하고, 상기 하위 타임 슬롯 어드레스 이후의 타임 슬롯 중 점유된 타임 슬롯이 있는 경우, 상기 점유 타임 슬롯에 등록된 세션의 첫번째 패킷을 출력하도록 하는 패킷 스케줄링 장치.
- 제2 항에 있어서,상기 입력 패킷 처리부 및 상기 출력 패킷 처리부는 상기 패킷 스케줄러에 포함되고, 상기 패킷 스케줄러는 FPGA(Field Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)를 이용하여 단일 소자로 구성되는 패킷 스케줄링 장치.
- 외부로부터 입력되는 패킷을 저장하여 저장된 패킷 출력을 스케줄링하는 패킷 스케줄링 방법에 있어서,a)저장된 패킷에 대해 해당 세션(session)의 서비스 레이트(service rate)를 참조하여 출력 시간을 계산한 후, 캘린더 메모리(calender memory)를 단일 블록 레지스터에 로딩(loading)하여 유휴 타임 슬롯을 검색하고, 상기 계산된 출력 시간 및 유휴 타임 슬롯이 있는 경우 해당 패킷 세션을 캘린더 메모리에 등록하는 단계;b)상기 등록에 따른 캘린더 메모리의 각 타임 슬롯의 유휴 및 점유 타임 슬롯 주소를 상기 캘린더 메모리에 저장하는 단계;c)상기 캘린더 메모리를 단일 블록의 레지스터에 로딩하여 출력하고자 하는 패킷을 검색하는 단계; 및d)상기 검색된 출력 패킷의 세션 아이디(ID)를 이용하여 저장된 출력 패킷을 읽어와 출력시키는 단계를 포함하는 패킷 스케줄링 방법.
- 제11항에 있어서,상기 a)단계는,상기 계산된 출력 시간의 상위 비트는 상기 캘린더 메모리의 블록을 나타내는 상위 타임 슬롯 어드레스로 사용하고, 상기 계산된 출력 시간의 하위 비트는 상기 캘린더 메모리 블록 내의 타임 슬롯을 나타내는 하위 타임 슬롯 어드레스로 사용하는 단계;상기 상위 타임 슬롯 어드레스를 이용하여 상기 캘린더 메모리를 상기 단일 블록의 레지스터에 로딩(loading)한 후, 상기 로딩된 캘린더 메모리에서 유휴 타임 슬롯이 있는지를 검색하는 단계; 및상기 유휴 타임 슬롯이 있으면, 상기 유휴 타임 슬롯에 점유 표시를 하여 해당 패킷의 세션을 등록하는 단계를 포함하는 패킷 스케줄링 방법.
- 제12항에 있어서,상기 c)단계는,상기 상위 타임 슬롯 어드레스를 이용하여 상기 캘린더 메모리로부터 타임 슬롯의 점유 상태를 읽어와 상기 레지스터에 로딩하는 단계;상기 하위 타임 슬롯 어드레스 이후의 타임 슬롯 중에서 점유되어 있는 타임 슬롯이 있는지를 검색하는 단계; 및점유 타임 슬롯이 검색되면, 상기 점유 타임 슬롯에 등록되어 있는 세션의 첫 번째 패킷을 선택하여 출력하도록 하는 단계를 포함하는 패킷 스케줄링 방법.
- 제11항에 있어서,상기 타임 슬롯 검색 단계는,모든 타임 슬롯에 대해 순서적으로 검사하는 라운드 로빈(Round-Robin) 방식을 이용하여 각각 검색하는 패킷 스케줄링 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020030037146A KR100542433B1 (ko) | 2003-06-10 | 2003-06-10 | 패킷 스케줄링 장치 및 패킷 스케줄링 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020030037146A KR100542433B1 (ko) | 2003-06-10 | 2003-06-10 | 패킷 스케줄링 장치 및 패킷 스케줄링 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20040105973A KR20040105973A (ko) | 2004-12-17 |
KR100542433B1 true KR100542433B1 (ko) | 2006-01-11 |
Family
ID=37380713
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020030037146A Expired - Fee Related KR100542433B1 (ko) | 2003-06-10 | 2003-06-10 | 패킷 스케줄링 장치 및 패킷 스케줄링 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100542433B1 (ko) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100840367B1 (ko) | 2006-01-09 | 2008-06-20 | 삼성전자주식회사 | 네트워크 검색 시스템에서의 패킷 검색 방법 및 그 장치 |
KR100959397B1 (ko) | 2007-12-07 | 2010-05-24 | 한국전자통신연구원 | 패킷 스케줄링 장치 |
KR100987388B1 (ko) | 2008-07-23 | 2010-10-12 | 한국전자통신연구원 | 동적 타임슬롯을 가지는 캘린더 큐 스케줄링 방법 및 장치 |
KR101093500B1 (ko) | 2009-10-22 | 2011-12-14 | 주식회사 쿠오핀 | 예약/등록 기반의 플로우 등급별 실시간 스케쥴링 장치 및 그 방법 |
US9166924B2 (en) | 2012-06-29 | 2015-10-20 | Electronics And Telecommunications Research Institute | Packet scheduling method and apparatus considering virtual port |
JP2019213043A (ja) * | 2018-06-05 | 2019-12-12 | ボッシュ株式会社 | 車載用ゲートウェイ装置、方法及びプログラム |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140052107A (ko) * | 2012-10-10 | 2014-05-07 | 주식회사 아이디어웨어 | 타임라인 생성장치 및 방법과 기록매체 |
KR101957778B1 (ko) | 2012-10-10 | 2019-03-19 | 주식회사 아이디어웨어 | 킵 얼라이브 검출장치 및 방법과 기록매체 |
-
2003
- 2003-06-10 KR KR1020030037146A patent/KR100542433B1/ko not_active Expired - Fee Related
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100840367B1 (ko) | 2006-01-09 | 2008-06-20 | 삼성전자주식회사 | 네트워크 검색 시스템에서의 패킷 검색 방법 및 그 장치 |
KR100959397B1 (ko) | 2007-12-07 | 2010-05-24 | 한국전자통신연구원 | 패킷 스케줄링 장치 |
KR100987388B1 (ko) | 2008-07-23 | 2010-10-12 | 한국전자통신연구원 | 동적 타임슬롯을 가지는 캘린더 큐 스케줄링 방법 및 장치 |
KR101093500B1 (ko) | 2009-10-22 | 2011-12-14 | 주식회사 쿠오핀 | 예약/등록 기반의 플로우 등급별 실시간 스케쥴링 장치 및 그 방법 |
US9166924B2 (en) | 2012-06-29 | 2015-10-20 | Electronics And Telecommunications Research Institute | Packet scheduling method and apparatus considering virtual port |
JP2019213043A (ja) * | 2018-06-05 | 2019-12-12 | ボッシュ株式会社 | 車載用ゲートウェイ装置、方法及びプログラム |
JP7122871B2 (ja) | 2018-06-05 | 2022-08-22 | ボッシュ株式会社 | 車載用ゲートウェイ装置、方法及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
KR20040105973A (ko) | 2004-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5555264A (en) | Methods and devices for prioritizing in handling buffers in packet networks | |
US11082366B2 (en) | Method and apparatus for using multiple linked memory lists | |
US7653072B2 (en) | Overcoming access latency inefficiency in memories for packet switched networks | |
EP2613479B1 (en) | Relay device | |
US5859835A (en) | Traffic scheduling system and method for packet-switched networks | |
EP0471344A1 (en) | Traffic shaping method and circuit | |
US6262989B1 (en) | Apparatus and method for providing different quality of service connections in a tunnel mode | |
US10693811B2 (en) | Age class based arbitration | |
US20080063004A1 (en) | Buffer allocation method for multi-class traffic with dynamic spare buffering | |
KR100542433B1 (ko) | 패킷 스케줄링 장치 및 패킷 스케줄링 방법 | |
US7209489B1 (en) | Arrangement in a channel adapter for servicing work notifications based on link layer virtual lane processing | |
US6310875B1 (en) | Method and apparatus for port memory multicast common memory switches | |
CN110830388B (zh) | 一种数据调度方法、装置、网络设备及计算机存储介质 | |
US8156265B2 (en) | Data processor coupled to a sequencer circuit that provides efficient scalable queuing and method | |
US7106693B1 (en) | Method and apparatus for pacing the flow of information sent from a device | |
JP2820106B2 (ja) | トラヒックシェーパ装置 | |
US20040131055A1 (en) | Memory management free pointer pool | |
Kang et al. | Fluid and Brownian approximations for an Internet congestion control model | |
US7269158B2 (en) | Method of operating a crossbar switch | |
US8605719B2 (en) | Circuit with network of message distributor circuits | |
US9996468B1 (en) | Scalable dynamic memory management in a network device | |
US7565496B2 (en) | Sharing memory among multiple information channels | |
US7583678B1 (en) | Methods and apparatus for scheduling entities using a primary scheduling mechanism such as calendar scheduling filled in with entities from a secondary scheduling mechanism | |
EP1032241A2 (en) | Method and system for switching using an arbitrator | |
RU2684581C2 (ru) | Способ стохастической диспетчеризации очередей коммутатора и устройство, его реализующее |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20030610 |
|
PA0201 | Request for examination | ||
PG1501 | Laying open of application | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20050622 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20051229 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20060104 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20060105 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
FPAY | Annual fee payment |
Payment date: 20090102 Year of fee payment: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20090102 Start annual number: 4 End annual number: 4 |
|
LAPS | Lapse due to unpaid annual fee | ||
PC1903 | Unpaid annual fee |