KR20000047434A - 입력/출력 테라비트 스위치들을 위한 rrgs-라운드-로빈 그리디 스케쥴링 - Google Patents

입력/출력 테라비트 스위치들을 위한 rrgs-라운드-로빈 그리디 스케쥴링 Download PDF

Info

Publication number
KR20000047434A
KR20000047434A KR1019990027469A KR19990027469A KR20000047434A KR 20000047434 A KR20000047434 A KR 20000047434A KR 1019990027469 A KR1019990027469 A KR 1019990027469A KR 19990027469 A KR19990027469 A KR 19990027469A KR 20000047434 A KR20000047434 A KR 20000047434A
Authority
KR
South Korea
Prior art keywords
input
output
time slot
mod
scheduling
Prior art date
Application number
KR1019990027469A
Other languages
English (en)
Other versions
KR100339329B1 (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 가네코 히사시
Publication of KR20000047434A publication Critical patent/KR20000047434A/ko
Application granted granted Critical
Publication of KR100339329B1 publication Critical patent/KR100339329B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0478Provisions for broadband connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/15Interconnection of switching modules
    • H04L49/1515Non-blocking multistage, e.g. Clos
    • H04L49/1546Non-blocking multistage, e.g. Clos using pipelined operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/201Multicast operation; Broadcast operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/253Routing or path finding in a switch fabric using establishment or release of connections between ports
    • H04L49/254Centralised controller, i.e. arbitration or scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/101Packet switching elements characterised by the switching fabric construction using crossbar or matrix
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3018Input queuing

Abstract

고속 셀을 토대로한 스위치들에서 패킷의 스케쥴링을 위한 새로운 프로토콜이 제공된다. 이 스위치는 입력 버퍼들과 함께 논리적인 크로스-바패브릭(logical cross-bar fabric)을 사용한다라고 가정된다. 스케쥴러는 테라비트 용량을 갖는 광학 뿐만아니라 전자 스위치들에 사용될 수 있다. 제안된 라운드-로빈 그리디 스케쥴링(RRGS)은 파이프라인 기술을 사용하여 테라비트 처리량에서 최적의 스케쥴링을 성취한다. 파이프라인 방식은 활용도를 높게 하기 위하여 스위칭 구조의 내부 속도를 상승시킬 필요가 없다. N 출력포트들에 대응하는 N논리적인 큐(logical queues)들을 구비하는 라운드 로빈 그리디 스케쥴링 프로토콜용 N×N 크로스바 스위치에서 시간 슬롯을 결정하는 방법에서, 이 프로토콜용 입력이 모든 입력-출력 큐들의 상태이며, 이 프로토콜의 출력이 스케쥴이며, 이 방법은 i=(constant-k-1) mod N에 대응하는 입력을 선택하는 단계와, 더 이상의 입력이 존재하지 않는다면 중지하는 단계와, 입력이 존재하면 i=(i+1) mod N에 의해 결정되는 라운드 로빈 방식으로 다음 입력을 선택하는 단계와, 한 쌍(i,j)이 존재하는 경우, 이 쌍(i,j)이 집합 C ={(i,j)|l에서부터 j까지 적어도 하나의 패킷이 존재}하도록 출력 j를 선택하는 단계와, 한 세트의 입력들로부터 i를 제거하여 이 쌍(i,j)이 존재하지 않는 경우 이 단계들을 반복하는 단계와, 이 세트의 입력들로부터 i 및 한 세트의 출력들로부터 j를 제거하는 단계와, 이 쌍(i,j)을 스케쥴에 부가하여 이 단계들을 반복하는 단계를 포함한다.

Description

입력/출력 테라비트 스위치들을 위한 RRGS-라운드-로빈 그리디 스케쥴링{RRGS-Round-Robin Greedy Scheduling for input/output terabit switches}
본 발명은 전자 및 광학 매체와 같은 장치들에 사용하기 위한 테라비트 스위치들에 관한 것이다. 특히, 본 발명은 라운드 로빈 그리디 스케쥴링 알고리즘(round robin greedy scheduling algorithm)에 관한 것이다. 본 발명은 라운드 로빈 그리디 스케쥴링 알고리즘을 실행하는 스케쥴링 및 테라비트 스위칭 시스템을 위한 방법들로 구현된다.
대역폭에 대한 요구가 증가됨에 따라서, 테라비트 스위칭에 대한 필요성이 증가되고 있다. M. Beshai 및 E. Miinter가 ICC'95,pp.1724-1730에 발표한 " 버스트 전송 및 독립적인 공유된 버퍼들을 토대로한 멀티-테라-비트(들)", N. McKeown 등이 1997년 1월 - 2월에 IEEE Micro, vol. 171에 발표한 "타이니 테라(tiny tera): 패킷 스위치 코어," 및 W.D. Zhong, Y. Shimazu, M. Tsukuda, 및 K. Yukimatsu가 1994년 2월에 통신에 대한 IEICE 논문, vol. E77-B, no.2, pp 190-196에 발표한 " 광학 버퍼들을 사용하는 모듈러 T 비트(들) TDM-WDM 포토닉 ATM 스위치"를 참조하라. 전자 제어를 갖는 광학 스위칭 코어(이것은 논리적인 크로스 바 스위치(logical cross bar switch)로서 간주될 수 있다)는 고성능 스위치들을 위한 매력적인 후보이다. 10Gb/s의 선속도로, 64바이트 셀/패킷은 40ns내에서 처리되어야만 된다.
본 분야에 종사하는 사람들에게 당면한 중요한 문제는 광학 코어를 효율좋게 사용하게 하는 고속 스케쥴링 판단들을 어떻게 이룰 것인가 이다. 이와같은 경우에 스위치 설계는 입력 버퍼링, 출력 버퍼링 또는 둘다를 포함할 수 있다. 출력 버퍼링을 갖는 스위치에서, 출력 버퍼들은 전체 스위치 처리량보다 큰 액세스 속도를 필요로 한다. 대안적으로, 필요로되는 출력 버퍼 속도를 감소시키기 위하여 녹아웃 아키텍쳐(knockout architecture)가 사용되는데, 여기서 제한된 셀들의 수는 출력 버퍼에 의해 수용되고 나머지는 탈락된다. 광학 녹아웃 스위치는 Zhong, Y. Shimazu, M. Tsukuda, 및 K. Yukimatsu가 1994년 2월에 통신에 대한 IEICE 논문, vol. E77-B, no.2, pp 190-196에 발표한 " 광학 버퍼들을 사용하는 모듈러 T 비트(들) TDM-WDM 포토닉 ATM 스위치"에 제안되어 있다. 각 출력이 여러개의 광학 리버스 Banyan 네트워크들 및 광학 버퍼들을 필요로하기 때문에, 광학 녹아웃 스위칭의 복잡도가 높게된다.
입력 버퍼링을 갖는 스위치들은 버퍼들을 더욱 효율좋게 사용하고 선 속도의 단지 2배의 메모리 대역폭을 필요로한다. 입력 버퍼링을 갖는 간단한 방식으로, 모든 입력들은 자신들의 큐들의 헤드에 존재하는 패킷들을 전송하기 위한 요청들을 행한다. 두 개 또는 그 보다 많은 입력들이 동일한 출력에 대한 요청들을 행하면, 이들 요청들중 하나의 요청은 랜덤하게 선택된다. 입력 버퍼링 알고리즘이 균일한 트래픽 조건하에서 0.587의 처리량을 초래한다라는, M.J. Karol, M.G. Hluchyj 및 S.P.Morgan이 1987년 12월에 IEEE Transactions on Communications, vol. COM-35, no. 12, pp.1347-1356에 발표한 " 공간 분할 패킷 스위치에 대한 입력 대 출력 큐잉"을 참조하라. 이 효율은 불균일한 트래픽의 경우에 더욱 감소한다. 여러 다른 스케쥴링 방식들에서, HOL(라인의 헤드) 패킷들 이외의 패킷들은 출력포트들을 위해 경쟁한다. R. Fan, M. Akiyama 및 Y. Tanaka 가 1991년에 일본의 전자 및 통신의 Part Ⅰ, vol. 74, no. 11, pp. 17-25에 발표한 " 스케쥴 비교를 사용하는 입력 버퍼형 ATM 스위칭" , S.Motoyama, D.W. Petr 및 V.S. Frost가 1995년 7월에 전자 레터, vol. 31, no.14. pp. 1127-1128에 발표한 "스케쥴링 알고리즘을 토대로한 입력-큐의 스위치" 및 H.Obara가 1991년 3월에 전자 레터, vol.27, no.7, pp. 555-557에 발표한 " 입력 큐잉 ATM 스위치들을 위한 최적의 아키텍쳐"를 참조하라. 매 시간 슬롯동안, 입력은 여러 출력들에 대해 요청들을 발부한다. 시간 슬롯당 정확하게 4개의 요청들에 따라서, 효율적인 접근방식 1이 성취된다. 그러나, 이와같은 방식에서, 스케쥴링을 위한 다수의 요청/승인들은 한 시간 슬롯내에서 고속으로 처리될 수 없다(여기서, 슬롯은 패킷 전송 시간을 표시한다.). 또한, 핫-스폿들(hot-spots)을 갖는 불균일한 트래픽에 대해, 입력들이 어느 출력들을 요청하는지를 독립적으로 결정하기 때문에 수행성능이 저하될 수 있다.
스위치 제어기가 모든 입력-출력 큐들의 상태들을 안다면, 스위치 수행성능은 개선될 수 있다. 이와같은 정보는 스위치 제어기로 하여금 매 시간 슬롯에서 동시 전송의 수를 증가시키도록 한다. SLIP 프로토콜에서, 출력들은 입력들에게 승인들을 독립적으로 발부하는데, 이것이 어떤 비효율성을 초래한다. N. McKeown, P. Varaiya, J. Walrand가 1993년 12월에 전자 레터, vol. 29, no. 25, pp.2174-2175에 발표한 "입력-큐의 스위치에서 스케쥴링 셀들"을 참조하라. D. Guo, Y. Yemini, Z. Zhang이 IEEE INFOCOM'94에 발표한 " WDM 광학 성형 네트워크용 스케일러블(scalable) 고속 프로토콜들"에 서술된 알고리즘들에 의해 입력들간의 보다 낳은 조정(coordination)이 이루어진다. 그러나, 이들 알고리즘들은 스케쥴링 판단을 하기 위하여 많은 시간 슬롯들을 필요로하는 단점이 있다.
본 발명의 목적은 종래 기술들의 상술된 문제점들을 해결하기 위한 것이다. 특히, 본 발명의 목적은 광학 코어를 효율적으로 사용하게 될 테라 비트 스위치에서 스케쥴링 판단들을 행하는 방법을 제공하는 것이다. 본 발명의 또다른 목적은 내부 속도를 상승시킴이 없이 양호한 수행성능을 제공하고 엄격한 타이밍 필요조건을 실행하면서 라운드-로빈 그리디 스케쥴링을 수행하는 파이프라인 아키텍쳐를 제공하는 것이다.
도1은 N=5를 갖는 스위치 제어기의 바람직한 실시예에 대한 타이밍 도.
도2는 N=4를 갖는 스위치 제어기의 바람직한 실시예에 대한 타이밍 도.
도3은 N×N 스위치에 대한 제어를 수행하는 도면.
도4는 분석 및 시뮬레이션 결과들을 토대로, RRGS, RGS, HOL, SLIP 및 I-TDMA 의 실행을 위한 평균 패킷 지연들의 비교를 도시한 도면.
도5는 시뮬레이션 결과들을 토대로한 (a) 0.8 및 (b) 0.9의 고정되어 제공된 트래픽 부하에 대한 I-TDMA, SLIP, RGS 및 RRGS에서의 패킷 지연의 상보적인 분포 함수를 도시한 도면.
도6은 4개의 그룹들의 큐들 (a)G1, (b)G2, (c)G3 및 (d) 전체에 대한 RRGS, RGS, SLIP 및 I-TDMA에 대한 불균일한 트래픽 부하 하에서 평균 패킷 지연을 도시한 도면.
* 도면의 주요 부분에 대한 부호의 설명 *
3.11 : 입력 모듈
3.22 : RR 중재기 및 파이프라인 제어기
3.33 : 접속 메모리
이 목적에 부합하기 위하여, N출력 포트들에 대응하는 N논리적인 큐들을 구비하는 라운드 로빈 그리디 스케쥴링 프로토콜용 N×N 크로스바 스위치에서 시간 슬롯을 결정하는 방법이 제공되는데, 이 프로토콜을 위한 입력은 모든 입력-출력 큐들의 상태이며, 이 프로토콜의 출력은 스케쥴이며, 이 방법은 i=(constant-k-1) mod N에 대응하는 입력을 선택하는 단계와, 더 이상의 입력들이 존재하지 않는다면 중지하는 단계와, 입력들이 존재하면 i=(i+1) mod N에 의해 결정되는 라운드 로빈 방식으로 다음 입력을 선택하는 단계와, 한 쌍(i,j)이 존재하는 경우, 이 쌍(i,j)이 집합 C ={(i,j)|l에서부터 j까지 적어도 하나의 패킷이 존재}하도록 출력 j를 선택하는 단계와, 한 세트의 입력들로부터 i를 제거하고 한세트의 출력들로부터 j를 제거하는 단계와, 이 쌍(i,j)을 스케쥴에 부가하고 이 단계들을 반복하는 단계와, 한 세트의 입력들로부터 i를 제거하고 이 쌍(i,j)이 존재하지 않는 경우 이 단계들을 반복하는 단계를 포함한다. 본 발명의 또다른 양상은 매 시간 슬롯에서 N 개별적인 스케쥴들이 N 먼 장래 시간 슬롯을 위하여 동시에 진행중인 스케쥴링 방법인데, 이 방법은 특정한 장래 시간 슬롯이 라운드-로빈 방식으로 스케쥴링하기 위하여 입력에 대해 활용될 수 있게 하는 단계와, 입력 i에 의해 장래의 k번째 시간 슬롯을 위하여 출력을 선택하는 단계와, 장래의 이 k번째 시간 슬롯을 위하여 스케쥴을 시작하는 단계와, 다음 입력(l+1) mod N을 결정하여 이 k번째 시간 슬롯동안 패킷들을 자유롭게 수신하는 나머지 출력들을 다음 입력에 전송하는 단계를 포함한다.
바람직하게, 입력 i가 k번째 시간 슬롯을 위하여 스케쥴을 완료시키는 최종 입력이라면, 이 입력은 출력(가능하다면)을 선택하여 수정된 출력 세트를 다음 입력에 전송한다. 입력 l가 k번째 시간 슬롯을 위하여 스케쥴을 완료한다면, 입력은 출력 세트를 다음 입력에 전송하지 않는다.
또한 바람직하게, 사전의 입력으로부터 수정된 세트의 출력들을 수신하지 않는 입력이 새로운 스케쥴을 시작한다.
본 발명의 또다른 양상은 기수의 입력들을 위한 파이프라인의 라운드 로빈 그리디 스케쥴링 방법인데, 이 방법에서 i번째 시간 슬롯은,
k(0,1)=k(1,1)=...k(N-1,1)=0, const = N+1을 초기화하는 단계로서, k(i,l)>0은 입력 i가 i번째 시간 슬롯에서 출력을 예약하는 시간 슬롯이며, il=(const - N - 1) mod N은 l번째 시간 슬롯에서 새로운 스케쥴을 시작하는 입력을 표시하고 k(i,l) = 0은 시간 슬롯 l에서 입력 i의 작용이 억제된다는 것을 의미하는, 상기 초기화 단계와,
0 ≤ i ≤ N - 1이고 i ≠ il인 경우 O/ +N= {0, 1, ... , N -1}, k(il,l) = l + N, k(i,l) = k((i - 1) mod N,l-1)로 설정하는 단계와,
k(i,l) ≠ 0인 경우, 전송해야할 패킷을 갖는 세트 Ok(i, 1)로부터 라운드 로빈 방식으로 입력 i, 즉 0iN - 1에서 한 출력 j를 선택하여 Ok(i,l)로부터 j를 배제하는 단계와,
위치 k(i, l) mod N에서의 접속 메모리에 선택된 출력의 입력 i, 즉 0 ≤ i ≤ N - 1에서 어드레스를 기억시키고 대응하는 수신 입력-출력 큐로부터 라인 헤드(HOL) 패킷을 개별적인 전송 입력-출력 큐로 이동시키는 단계와,
입력 i, 즉 0 ≤ i ≤ N - 1 및 i ≠ (il- 2) mod N에서 상기 세트 Ok(i,l)을 다음 입력(i + 1) mod N으로 진행시키는 단계와,
입력i, 즉 0 ≤ i ≤ N - 1 및 어드레스가 입력 i의 접속 메모리의 위치(l mod (N + 1))로부터 판독되는 출력간에 크로스 바 접속을 설정하는 단계와,
각 입력 i, 즉 0 ≤ i ≤ N - 1에 대한 스위치 코어를 통해서 스케쥴된 전송 입력-출력 큐의 헤드에서 예약된 패킷을 전송하는 단계를, 포함하는 공정을 사용하여 완료된다.
바람직한 멀티캐스트 스케쥴링은 라운드-로빈 그리디 스케쥴링 알고리즘과 결합되는데, 여기서 멀티캐스트 패킷들은 선입 선처리(first come first served) 방식으로 기억되고 유니캐스트(unicast) 큐들에 비해서 우선순위를 갖고 l번째 시간 슬롯에서 단계들은 입력 i, 즉 0 ≤ i ≤ N - 1에서 j ∈ Ok(i,1)∩ BMi가 되도록 모든 출력들 j을 선택하여 k번째 시간 슬롯에서 선택된 출력들에 HOL 멀티캐스트 패킷들을 전송하는 단계와, Ok(i,1)∩ BMi가 빈 세트인 경우 유니캐스트 큐들을 처리하고, 만일 그렇치 않다면 선택된 출력들을 Ok(i,1)및 BMi로부터 배제시키는 단계와, BMi가 비어있는 경우 멀티캐스트 큐로부터 HOL 멀티캐스트 패킷들을 삭제하는 단계를 더 포함한다.
본 발명의 또다른 양상은 우수의 입력들을 위한 파이프라인 라운드 로빈 그리디 스케쥴링 방법인데, 이 방법에서 l 번째 시간 슬롯은,
k(0,1)=k(1,1)=...k(N-1,1)=0, const = N+1을 초기화하는 단계로서, k(i,l)>0은 입력 i가 l번째 시간 슬롯에서 출력을 예약하는 시간 슬롯이며, il= (const - N - 1) mod N은 1번째 시간 슬롯에서 새로운 스케쥴을 시작하는 입력을 표시하고 k(i,l) = 0은 시간 슬롯 l에서 입력 i의 작용이 억제된다는 것을 의미하는, 상기 초기화 단계와,
0 ≤ i ≤ N - 1이고 i{il,(il+ 1) mod N} 및 l은 l1과 동일하지 않은 경우 O1 +N= {0, 1, ... , N -1}, k(il, l )= l + N + 1, k(mod(il+ l) mod N,l) = k(il, l- 2) 및 k(i, l) = k((i -1) mod N,l-1)를 설정하는 단계와,
k(i,l) ≠ 0인 경우, 전송해야할 패킷을 갖는 세트 Ok(i, 1)로부터 라운드 로빈 방식으로 입력 i, 즉 0iN - 1에서 한 출력 j를 선택하여 Ok(i,l)로부터 j를 배제하는 단계와,
위치 k(i, l) mod N에서의 접속 메모리에서 선택된 출력의 입력 i, 즉 0 ≤ i ≤ N - 1에서 어드레스를 기억시키고 대응하는 수신 입력-출력 큐로부터 HOL을 개별적인 전송 입력-출력 큐로 이동시키는 단계와,
입력 i, 즉 0 ≤ i ≤ N - 1 및 i = (il- 2)에서 상기 세트 Ok(i,l)
을 다음 입력(i + 1) mod N으로 진행시키는 단계로서, 입력 (il- 2) mod N은 이것을 진행시키기 전에 한 시간 슬롯을 위하여 세트 Ok((il- 2) mod N, 1)를 지연시키는, 상기 진행시키는 단계와,
입력i, 즉 0 ≤ i ≤ N - 1 및 어드레스가 입력 i의 접속 메모리의 위치(l mod (N + 1))로부터 판독되는 출력간에 크로스 바 접속을 설정하는 단계와,
각 입력 i, 즉 0 ≤ i ≤ N - 1에 대한 스위치 코어를 통해서 스케쥴된 전송 입력-출력 큐의 헤드에서 예약된 패킷을 전송하는 단계를, 포함하는 공정을 사용하여 완료된다.
바람직한 멀티캐스트 스케쥴링은 라운드 로빈 그리디 스케쥴링 알고리즘과 결합되는데, 여기서 멀티캐스트 패킷들은 선입 선처리 방식으로 기억되고 유니캐스트 큐들에 비해서 우선순위를 갖고 1번째 시간 슬롯에서 단계들은 입력 i, 즉 0 ≤ i ≤ N - 1에서 j ∈ Ok(i,1)∩ BMi가 되도록 모든 출력들 j을 선택하여 k번째 시간 슬롯에서 선택된 출력들에 HOL 멀티캐스트 패킷들을 전송하는 단계와, Ok(i,1)∩ BMi가 빈 세트인 경우 유니캐스트 큐들을 처리하고, 만일 그렇치 않다면 선택된 출력들을 Ok(i,1)및 BMi로부터 배제시키는 단계와, BMi가 비어있는 경우 멀티캐스트 큐로부터 HOL 멀티캐스트 패킷들을 삭제하는 단계를 더 포함한다.
본 발명의 또다른 양상은 스테이지 i가 입력 i와 관계되는 N × N 스위치를 스케쥴링하기 위한 N 스테이지 파이프라인 시스템인데, 상기 스테이지 i는 장래 시간 슬롯에서 출력으로의 전송을 스케쥴하며, 상기 장래 시간 슬롯은 모든 스테이지들을 통해서 리플링되는데, 여기서 입력들에 대응하는 모든 파이프라인 스테이지들이 수행되어 두 개의 입력들이 동일한 시간에서 동일한 장래 시간 슬롯을 선택하도록 동시에 스케쥴링하며, 출력 슬롯들은 라운드 로빈 방식을 토대로 선택되며, 출력이 스테이지에 의해 선택될 때, 이 출력은 파이프라인 스테이지가 어떤 시간 슬롯 동안 이미 선택된 출력을 선택하지 않도록 출력들의 프리 풀(free pool)로부터 제거된다.
본 발명의 상기 목적들 및 장점들이 첨부한 도면들을 참조하여 바람직한 실시예들을 상세하게 설명함으로써 더욱 명백하게 될 것이다.
본 발명을 따른 파이프라인 아키텍쳐는 "라운드-로빈 그리디 스케쥴링"(RRGS)을 수행하는 것이다. 이것은 랜덤한 그리디 스케쥴링(RGS)을 수정하고 개선시킨 것인데, 이는 R. Chipalkatti, Z. Zhang, 및 A.S. Acampora가 1993년 5월 IEEE Journal on Selected Areas in Communications, vol. 11, no. 4, pp. 579-589에 발표한 " WDM을 사용하는 최적의 성형-결합기 네트워크를 위한 프로토콜: 수행성능 및 복잡도 연구" 및 D. Guo, Y. Yemini, Z. Zhang이 IEEE INFOCOM'94에 발표한 " WDM 광학 성형 네트워크용 스케일러블(scalable) 고속 프로토콜들"를 참조하라. 본 발명의 프로토콜은 어떤 내부 속도 상승없이 엄격한 타이밍 요구조건을 수행하고, 이와 동시에 RGS의 양호한 수행성능을 유지한다. D. Guo, Y. Yemini, Z. Zhang이 IEEE INFOCOM'94에 발표한 " WDM 광학 성형 네트워크용 스케일러블(scalable) 고속 프로토콜들"을 참조하라. 이것은 거의 100% 활용도를 성취하고 불균일한 트랙픽을 충분히 양호하게 취급한다.
1.라운드-로빈 그리디 스케쥴링(RRGS)
본 실시예가 지금부터 상세히 설명된다. 본 발명에 사용되는 프로토콜을 RRGS 프로토콜이라 칭한다. N출력들의 각각에 대응하는 각 입력 포트 i,즉 i∈{0, 1, ... , N - 1}이 N논리적인 큐들을 갖는 N×N 크로스 바 스위치를 고려하자. 이 스위치에 의해 수신되는 모든 패킷들은 고정된 크기의 셀들이다. RRGS 프로토콜로의 입력은 모든 입력-출력 큐들의 상태이다. 이와같은 입력은 다음과 같은 세트 C로 설명될 수 있다.
C = {(i,j)| 출력 j에 대한 입력 i에서 적어도 하나의 패킷이 존재함}
프로토콜의 출력은 입력들과 출력들을 관계시키는 스케쥴이다. 이와같은 세트의 S는 다음과 같이 설명될 수 있다.
S = {(i,j)/패킷은 입력 i에서 입력 j까지 전송될 것이다}
매 시간 슬롯에서, 입력은 단지 하나의 패킷만을 전송할 수 있고 출력은 단지 하나의 패킷만을 수신할 수 있다는 것은 당업자에게 명백하다. 이 조건하에서, 임의의 k번째 시간 슬롯에 대한 스케쥴은 다음과 같이 결정된다.
단계 1) lk= {0, 1, ..., N -1}은 모든 입력들의 세트, Ok= {0, 1,..., N-1}은 모든 출력들의 세트이다. i = (const- k -1) mod N를 선택하라. 스케쥴을 시작하는 입력의 이와같은 선택은 간단히 수행될 것이다.
단계 2) lk가 비워있다면, 중지하라. 만일 그렇치 않다면 i=(i+1) mod N에 따라서 라운드 로빈 방식으로 다음 입력 I를 선택하라.
단계 3) (i,j)O Ck가 되도록 출력 Ok로 부터의 출력을 라운드 로빈 방식으로 선택하라. 만일 이와같은 출력이 존재하지 않는다면, lk에서 I를 제거하고 단계 2로 진행시켜라.
단계 4) lk로부터 입력 I 및 Ok로부터 출력 j를 제거하라. (i,j)를 Sk에 부가하고 단계 2로 진행시켜라.
이 프로토콜은 종래의 RGS에 비해 명백하게 개선된 것이다. D. Guo, Y. Yemini, Z. Zhang이 IEEE INFOCOM'94에 발표한 " WDM 광학 성형 네트워크용 스케일러블(scalable) 고속 프로토콜들"을 참조하라. 또한, R. Chipalkatti, Z. Zhang, 및 A.S. Acampora가 1993년 5월 IEEE Journal on Selected Areas in Communications, vol. 11, no. 4, pp. 579-589에 발표한 " WDM을 사용하는 최적의 성형-결합기 네트워크를 위한 프로토콜: 수행성능 및 복잡도 연구"에 서술된 DAS 알고리즘을 참조하라. 종래의 RGS에서, 두 개의 입력 및 대응하는 정합 출력은 랜덤하게 선택된다. 그러나, 이와같은 랜덤한 선택 방식을 수행하는 것은 실제로 어렵다. 매 시간 슬롯에서, N패킷들은 N입력들에서 N출력들로 전송될 수 있다.
따라서, RRGS에서 소정의 시간 슬롯을 스케쥴링하는 공정은 N 단계들로 이루어진다. 소정의 시간 슬롯(장래)의 각 단계에서, 하나의 입력은 이 시간 슬롯동안 전송을 위한 나머지 출력들중 하나의 출력을 선택한다. 단계는 입력 모듈(IM)에서 라운드-로빈(RR) 중재기(arbiter)로의 요청, RR 선택, 및 RR 중재기에서 IM로의 승인 이루어진다. 입력들이 출력들을 선택하게 하는 라운드 로빈 순서는 매 시간 슬롯에서 순환적으로 시프트하여 모든 입력들에 대한 동일한 액세스를 보장한다.
2.기수의 입력들을 위한 파이프라인 RRGS
고속 링크 속도(예를들어, 10Gb/s)에서, N 단계들은 한 시간 슬롯(40ns는 64 바이트의 패킷 크기라 가정함)내에서 완료될 수 없다. 링크 속도가 증가함에 따라서, 종래 기술들을 사용하면 단지 한 단계가 한 시간 슬롯에서 완료될 수 있다. 이 문제를 극복하기 위하여, 본 발명은 파이프라인 방식을 사용하는데, 이 방식은 각 시간 슬롯에서, N 개별적인 스케쥴들이 장래의 N 개별적인 시간 슬롯들에 대하여 동시에 진행하게 된다. 특정 스케쥴의 각 단계는 단지 하나의 입력을 포함한다. 어떤 소정의 시간 슬롯에서, 다른 입력들은 다른 개별적인 장래 시간 슬롯을 위하여 스케쥴 단계들을 동시에 수행한다.
정의 : 장래 시간 슬롯 Tk를 위한 스케쥴은 모든 N 단계들이 완료될 때, 즉 모든 입력들이 Tk동안 전송을 위한 출력을(성공적으로 또는 달리) 선택할 기회를 갖을때 완료된다라고 일컫는다.
N 시간 슬롯들이 소정의 스케쥴의 N 단계들을 완료할 필요가 있을 때, N 개의 서로다른 스케쥴들의 N 단계들은 병렬로 N스케쥴들을 계산함으로써 파이프라인 방식을 사용하여 하나의 시간 슬롯내에서 완료될 수 있다. RRGS에서, 특정한 장래 시간 슬롯은 라운드 로빈 방식으로 스케쥴링하기 위한 입력들에 대해 활용될 수 있다. k 번째 시간 슬롯(장래에)을 위하여 스케쥴을 시작하는 입력 i는 라운드 로빈 방식(RR) 방식으로 출력을 선택하여 k번째 시간 슬롯동안 패킷들을 수신하는데 여전히 자유로운 나머지 출력 포트들을 표시하는 세트 Ok를 다음 입력(i + 1) mod N에 전송한다. k번째 시간 슬롯을 위하여 활용가능한 출력들의 세트 Ok를 사전 입력 (i - 1) mod N로부터 수신하는 임의의 입력 i는 가능한 경우 이 세트로부터 하나의 출력을 선택하고 입력 i가 k번째 시간 슬롯, 즉 TK를 위하여 스케쥴을 완료하지 않는 경우 수정된 세트 Ok를 다음 입력(i + 1) mod N에 전송한다. k번째 시간 슬롯을 위하여 스케쥴을 완료하는 입력 i는 수정된 세트 Ok를 다음 입력(i + 1) mod N에 전송하지 못한다. 따라서, 현재 시간 슬롯에서 이 세트 Ok를 수신하지 않는 입력(i + 1) mod N은 다음 시간 슬롯에서 새로운 스케쥴(새로운 시간 슬롯을 위하여)을 시작할 것이다. RRGS의 단계 1은 입력이 N 시간 슬롯에서 세트 Ok를 1회 진행시키는 것을 금지한다는 것을 의미한다. 세트 Ok를 진행시키지 않은 입력 i는 k번째 시간 슬롯을 위하여 출력을 선택하는 최종 입력이 되어야만 된다.
이론 1 : 입력(const-k) mod N이 (k - 1)번째 시간 슬롯에서 세트 Ok를 진행시키는 것을 금지하고 입력의 수 N이 기수인 경우, 입력 (const-k) mod N은 k번째 시간 슬롯을 위하여 스케쥴을 완료한다.
증명 : 이 이론은,
· 매 시간 슬롯에서, 모든 N 입력들은 장래 시간 슬롯을 위하여 전송을 스케쥴할 기회를 갖을 것이다.
· 매 시간 슬롯에서, 입력은 단지 하나의 장래 시간 슬롯을 위하여 전송을 스케쥴할 수 있다.
· 매 시간 슬롯에서, 출력은 단지 하나의 입력으로부터의 전송을 수신하도록 스케쥴될 수 있다, 라는 것을 의미한다.
(k - 1)번째 시간 슬롯에서 세트 Ok가 진행되는 것을 금지시키는 입력i =(const-k) mod N를 고정시킨다. 이와같은 경우에, 사전의 N-1 입력들 각각은 k번째 시간 슬롯을 위하여 예약될 때 세트 Ok를 진행시켜야만 한다. (k -1 - j) 시간 슬롯에서, 입력 (i + j) mod N은 세트 Ol을 다음 입력으로 진행시키지 않는다. 또한, 입력(i - j) mod N은 k번째 시간 슬롯을 위하여 예약된다. 이와같은 스케쥴은,
N이 기수인, 경우 가능하다.
입력 I가 (k - N - 1)번째 시간 슬롯에서 세트 Ok-N을 진행시키지 않기 때문에, k번째 시간 슬롯을 위하여 스케쥴은 (k - N) 시간 슬롯에서 입력 (i +1) mod N에 의해 시작된다.
5 × 5 스위치를 갖는 실시예에 대한 타이밍 도가 도1에 도시되어 있다. 이 도면은 입력들간의 관계 및 입력들이 자신의 출력을 선택하고 있는 시간 슬롯을 도시한 것이다. 예를들어, 시간 슬롯 T5에서, 입력 l은 시간 슬롯 T10동안 전송을 위한 출력을 스케쥴링하거나 선택하는 한편, l3은 T9등을 위한 스케쥴링이다. 다음 시간 슬롯 T6에서, l1은 T8등을 위한 스케쥴링이다. 굵은 수직선은 사전 입력이 스케쥴을 완료했다는 것을 표시하고 다음 입력은 새로운 스케쥴을 시작할 것이다. 관계된 시간 슬롯을 위하여 출력을 선택하는 최종 입력인 경우, 입력은 세트 O를 다음 입력으로 진행시키지 않는다. 이 조건은 N = 5 시간 슬롯당 1회 발생하기 때문에, 입력은 모듈로 N 카운터에 의해 세트 O를 진행시키지 않는다라고 판단한다.
최종적으로, 이 작용은 l 번째 시간(예를들어, 현재 시간 슬롯)에서 RRGS에 의해 취해진다. Ok는 k 번째 시간 슬롯을 위하여 활용가능한 출력들의 세트를 표시한다. k(i, l)은 입력 i가 l번째 시간 슬롯에서 출력을 예약하는 시간 슬롯이고 il(const - N - 1) mod N은 l번째 시간 슬롯에서 새로운 스케쥴을 시작하는 입력을 표시한다라고 하자. 또한, k(i, l) =0 은 시간 슬롯 l에서 입력 i의 작용은 억제된다는 것을 의미한다. 스케쥴러는 적절한 초기화를 필요로한다. 이 초기화 주기는 N 시간 슬롯들을 위하여 지속된다. 초기화 공정은 제1 시간 슬롯 T1에서 시작한다라고 가정하자. 초기화 공정은 k(0, 1) = k(1, 1) = ... = k(N - 1, 1) = O, const = N + 1을 설정함으로써 시작된다. 즉, 다음에 수정되지 않는다면, 모든 입력들의 작용들은 제1 N 시간 슬롯을 위하여 억제된다. 또한, 패킷들이 입력-출력 큐들이라 칭하는 논리적으로 별개인 큐들의 입력에서 큐잉된다라고 가정하는데, 각 출력 포트에 대한 하나의큐는 HOL이 블록킹(blocking)되는 것을 방지한다. 게다가, 수신 입력 -출력 큐들 및 전송 입력-출력 큐들이 또한 제공된다.
· Ol + N= {0, 1, ..., N -1}
· 0 ≤i≤N - 1 및 i≠ il에 대하여,k((il, l) = l + N, 및 k((i -1) mod N, l - 1)
· k(i,l) ≠ 0 인 경우, 입력 i, 즉 0 ≤i ≤N -1은 전송해야할 패킷을 갖는 세트 Ok(i,l)로부터 RR 방식으로 하나의 출력 j를 선택한다.(입력 i, 즉 0 ≤i ≤N -1 및 i≠il는 사전 시간 슬롯에서 입력 (i-1) mod N으로부터 Ok(i,l)를 수신한다.) 출력은 Ok(i,l)로부터 배제된다.
· 입력 i, 즉 0 ≤i ≤N -1은 위치 k(i,l) mod N에서 접속 메모리에 선택된 출력의 어드레스를 기억시킨다. 대응하는 수신 입력 출력 큐로 부터의 라인 헤드의 패킷은 개별적인 전송 입력-출력 큐로 이동된다.
· 입력 i, 즉 0 ≤i ≤N -1 및 i≠(il- 2) mod N은 세트 Ok(i,l)로부터 다음 입력(i + 1) mod N으로 진행한다. 단지 N 비트의 정보가 진행될 필요가 있다는 것을 유의하자.
· 크로스 바 접속은 입력 i, 즉 0 ≤i ≤N -1 및 어드레스가 입력 i의 접속 메모리의 위치(l mod N)로부터 판독되는 출력간에 설정된다.
· 각 입력 i, 즉 0 ≤i ≤N -1에 대하여, 스케쥴된 전송 입력-출력 큐의 HOL 패킷은 스위치 코어를 통해서 전송된다.
3. 우수 입력을 위한 파이프라인 RRGS
기수 입력을 위한 방식에서, 입력이 장래 시간 슬롯을 위하여 출력을 선택하기 위한 최종 입력인 경우, 각 입력은 수정된 세트 Ok가 자신의 다음 이웃 입력으로 진행시키는 것을 금지시키고 이에 따라서 이 시간 슬롯을 위하여 스케쥴을 완료한다. 이와같은 알고리즘(기수 값인 N을 위하여 개발됨)의 직접 적용하면은 하나 보다 많은 장래 시간 슬롯을 위하여 일부 입력들에서 스케쥴링을 초래하는 반면에, 다른 입력들은 전혀 스케쥴하지 않는다. 따라서, 우수의 입력들로 스위치를 제어하기 위해선, 파이프라인 기술이 수정된다.
이론 1의 증명은 제어 정보를 블록킹하는 대신에 지연시키는 것이 우수의 입력들을 의미한다라고 추론한다. 우수의 입력들을 갖는 경우에, 각 입력은 N 시간 슬롯들에서 세트 O/을 다음 입력으로 1회 진행시키는 것을 금지시키고, 다음 시간 슬롯에서 입력은 사전 시간 슬롯으로 부터 지연된 세트 O/을 진행시킨다. 입력 i가 지연된 세트 O/을 진행시킬 때, 현재 세트 Ok를 진행시키지 않을 것이다. 그러므로, 입력 i는 k번째 시간 슬롯을 위하여 출력을 선택하는 최종 입력이 되어야만 된다.
이론 2 : 입력(const -k) mod N이 (k -2)번째 시간 슬롯에서 세트 Ol을 지연시키고( 및 (k-1)번째 시간 슬롯에서 이 세트를 진행시킴) 입력의 수 N가 우수일 때, 입력 (const -k) mod N은 k번째 시간 슬롯을 위하여 스케쥴을 완료한다.
증명 : (k -2)번째 시간 슬롯에서 세트 Olin을 지연시키는 입력i(const -k) mod N을 고정시키고 지연된 세트 (k-1)번째 시간 슬롯에서 Ok대신에 Ol을 진행시켜라. 그래서, (k - 1 -j)번째 시간 슬롯에서, 입력(i + j -1) mod N은 세트 Om을 지연시키고 입력 (i + j) mod N은 지연된 세트 On을 진행시킨다. (k - 1 - j)번째 시간 슬롯에서, ≤j≤N/2 - 1 및 N이 우수에 대해서 참인 i - j ≠ i + j mod N 및 i - j ≠ i + j - 1이라면, 입력 (i-j) mod N은 k번째 시간 슬롯을 예약하고 Ok를 진행시킨다. 입력 (i-N/2) mod N은 (k -1 - N/2) 번째 시간 슬롯동안 Ok를 기억하여 입력이 k번째 시간 슬롯을 예약하지 않도록 한다. (k - 2 - N/2) 번째 시간 슬롯에서, 입력 (i-N/2)은 k번째 시간 슬롯을 예약한다. (k - 1 - j)번째 시간 슬롯에서, N이 우수에 대해서 참인 i - j + 1 ≠ i + j mod N 및 i - j + 1 ≠ i + j - 1이라면, N/2 + 2≤j≤N, 입력 (i - j + 1) mod N은 k번재 시간 슬롯을 예약하고 Ok를 진행시킨다.
그래서, k 번째 시간 슬롯을 위하여 스케쥴은 사용자 i에 의해 완료되기 전에 인터럽트됨이 없이 파이프라인을 통해서 진행한다. 입력 i가 (k - N - 2)번째 시간 슬롯에서 제어 정보를 지연시키기 때문에, 이 스케쥴은 (k - N - 1)번째 시간 슬롯에서 사용자 (i + 1) mod N에 의해 시작된다.
4×4 스위치를 갖는 실시예에 대한 타이밍 도가 우수의 입력을 갖는 경우를 도시하기 위하여 도2에 도시된다. 빗금친 직사각형은 제어 정보 O의지연을 표시한다. 굵은 수직선은 사전 입력이 스케쥴을 완료했다는 것을 표시하고 다음 입력은 새로운 스케쥴을 시작할 것이다.
다시, RRGS가 우수의 입력에 대해 l 번째 시간 슬롯에서 취해지는 작용이 규정된다. Ok는 k번째 시간 슬롯을 위하여 활용가능한 출력들의 세트를 표시한다. k(i, l)>0은 입력 i가 l번째 시간 슬롯에서 출력을 예약하는 시간 슬롯을 표시하고 il- (const - N - 1 - l) mod N은 l번째 시간 슬롯에서 새로운 스케쥴을 시작하는 입력을 표시한다라고 하자. k(i, l) = 0 은 시간 슬롯 l에서 입력 i의 작용이 억제된다는 것을 의미한다라고 하자. 스케쥴러는 적절한 초기화를 필요로한다. 이 초기화 주기는 N 시간 슬롯들을 위하여 지속된다. 초기화 공정은 제1 시간 슬롯 T1에서 시작한다라고 가정하자. 초기화 공정은 k(0, 1) = k(1, 1) = ... = k(N - 1, 1) O, const = N + 2을 설정함으로써 시작된다. 즉, 다음에 수정되지 않는다면, 모든 입력들의 작용들은 제1 N 시간 슬롯을 위하여 억제된다.
· Ol + N+j= {0,1,..., N - 1}
· 0 ≤i≤N - 1 및 i{(il,(il+ 1) mod N}에 대하여,k((il, l) = l + N + 1, k(mod (il+ 1) mod N, l) = k((il, l - 2), 및 k(i,l)= k((i -1) mod N, l - 1)
· k(i,l) ≠ 0 인 경우, 입력 i, 즉 0iN -1은 전송해야할 패킷을 갖는 세트 Ok(i,l)로부터 RR 방식으로 하나의 출력 j를 선택한다.(입력 i, 즉 0 ≤i ≤N -1 및 i≠il는 사전 시간 슬롯에서 입력 (i-1) mod N으로부터 세트 Ok(i,l)를 수신한다.) 출력은 Ok(i,l)로부터 배제된다.
· 입력 i, 즉 0 ≤i ≤N -1은 위치 k(i,l) mod (N +1)에서 접속 메모리에 선택된 출력의 어드레스를 기억시킨다. 대응하는 수신 입력 출력 큐로 부터의 HOL은 개별적인 전송 입력-출력 큐로 이동된다.
· 입력 i, 즉 0 ≤i ≤N -1 및 I = (il- 2) mod N은 세트 Ok(i,l)를 다음 입력(i + 1) mod N으로 진행시킨다. 입력 ((il- 2) mod N은 진행시키기 전 하나의 시간 슬롯을 위하여 세트 Ok((il- 2) mod N, l)를 지연시킨다.
· 크로스 바 접속은 입력 i, 즉 0 ≤i ≤N -1 및 어드레스가 입력 i의 접속 메모리의 위치(l mod (N +1))로부터 판독되는 출력 4간에 설정된다.
· 각 입력 i, 즉 0 ≤i ≤N -1에 대하여, 스케쥴된 전송 입력-출력 큐의 헤드에서 예약된 패킷은 스위치 코어를 통해서 전송된다.
4. 멀티캐스트 스케쥴링
본 발명의 또다른 양상은 멀티캐스트 방식을 포함한다. 멀티캐스트 패킷들은 선입 선처리(FCFS 방식)로 처리되는 개별적인 큐에 기억된다. 각 큐는 HOL 패킷의 목적지를 표시하는 멀티캐스트 비트 맵(BM)을 갖는다. 가장 간단한 버전으로서, 멀티캐스트 큐는 유니캐스트 큐들에 비해서 우선순위를 갖을 것이다. l번째 시간 슬롯에서 취해지는 부가적인 멀티캐스트 작용들은 다음과 같다.
· 입력 i, 즉 0≤i≤N -1은 j ∈ Ok(i,l)∩BMi가 되도록 모든 출력 j를 선택한다. HOL 멀티캐스트 패킷은 k번째 시간 슬롯에서 선택된 출력으로 전송될 것이다.
· Ok(i,l)∩BMi가 비어있는 세트라면, 유니캐스트 큐들이 처리된다. 만일 그렇치않다면, 선택된 출력들은 Ok(i,l)및 BMi로부터 배제된다.
· BMi가 비어있다면, HOL 멀티캐스트 패킷들은 멀티캐스트 큐로부터 삭제된다.
5. 스위치 제어기의 수행
N ×N 광학 크로스 바 스위치용 제어기가 도3에 도시되어 있다. 각각의 입력은 입력 모듈(3.11, 3.21, 3.31... 3.N1), RR 중재기 및 파이프라인 제어기(3.12, 3.22, 3.32...3.N2), 및 접속 메모리(3.13, 3.23, 3.33...3.N3)을 필요로한다. 입력 모듈(IM)은 논리적으로 개별적인 수신 큐들에 인입하는 패킷들을 기억시키는데, 각 큐는 특정한 출력에 대해 지정된다. IM은 요청을 자신과 관계된 RR 중재기로 전송한다. RR 중재기는 장래 시간 슬롯에서 자유로운 출력들중 하나의 출력을 선택하고 이 선택에 대하여 대응하는 입력 및 파이프라인 제어기에 통보한다. 파이프라인에 대한 초기화 절차는 임의의 소정 시간 슬롯에서, 두 개의 중재기들이 전송을 스케쥴하기 위하여 동일한 장래 시간 슬롯을 선택하지 않도록 한다. 입력 모듈은 개별적인 전송 입력-출력 큐에 성공적인 패킷을 기억시킨다. RR 중재기는 또한 자신의 스케쥴링 판단을 관계된 접속 메모리의 지정된 메모리 위치로 기록시킨다. 메모리의 위치는 패킷이 스케쥴되는 시간 슬롯에 의해 결정된다. 파이프라인 제어기는 특정 시간 슬롯을 위하여 예약되지 않는 모든 출력을 다음 입력의 RR 중재기에게 통보한다. 더욱 정확하게는, 이들 예약된 출력들에 대한 요청을 금지시킨다는 것이다. 일부 입력이 제어 명령을 진행시키지 않는다면, 파이프라인 제어기는 다음 입력의 RR 중재기로 하여금 장래 시간 슬롯을 위하여 임의의 출력을 선택할 수 있도록 한다.
접속 메모리에 기록된 스케쥴을 토대로, 입력 모듈로부터의 패킷들은 스위치 코어를 통해서 모듈을 출력시키기 위하여 전달된다.
6. 수행 성능 비교
이 섹션에서, iRRGS는 유사한 복잡도의 다른 프로토콜과 비교된다. 복잡도는 프로토콜이 하나의 스케쥴을 완료하는데 필요한 시간만큼 측정된다. HOL, I-TDMA, SLIP, RGS 및 RRGS 프로토콜들은 비교된다. 이것은 K. Bogineni, K. M. Sivilingam, 및 P. W. Dowd가 1993년 5월 IEEE Journal on Selected Areas in Communications, vol. 11, no. 4, pp. 590-604에 발표한 " 파장 분할 다중화된 포토닉 네트워크용 저-복잡도 다수의 액세스 프로토콜", D. Guo, Y. Yemini, Z. Zhang이 IEEE INFOCOM'94에 발표한 " WDM 광학 성형 네트워크용 스케일러블(scalable) 고속 프로토콜들", M.J. Karol, M.G. Hluchyj 및 S.P.Morgan이 1987년 12월에 IEEE Transactions on Communications, vol. COM-35, no. 12, pp.1347-1356에 발표한 " 공간 분할 패킷 스위치에 대한 입력 대 출력 큐잉" 및 N. McKeown, P. Varaiya, J. Walrand가 1993년 12월 Electronic Letters, vol. 29, no. 25, pp 2174-2175에 발표한 " 입력-큐잉된 스위치에서 스케쥴링 셀들"을 참조하라.
라인 헤드(HOL) 프로토콜은 입력 큐잉을 갖는 스위치에 대한 가장 간단한 프로토콜을 표시하는데, 이것은 M.G. Hluchyj 및 S.P.Morgan이 1987년 12월에 IEEE Transactions on Communications, vol. COM-35, no. 12, pp.1347-1356에 발표한 " 공간 분할 패킷 스위치에 대한 입력 대 출력 큐잉"을 참조하라. 각 입력은 HOL 패킷의 전송을 위한 요청을 적절한 출력에 전송한다. 요청된 출력은 라운드 로빈 방식으로 입력들중 하나의 입력에 승인을 발부한다. 다음 시간 슬롯에서, 승인된 입력들은 패킷들을 대응하는 출력들에 전송한다.
인터리빙된 TDMA(I-TDMA)에서, 출력들은 고정된 방식으로 입력들에 할당되는데, 이것은 K. Bogineni, K. M. Sivilingam, 및 P. W. Dowd가 1993년 5월 IEEE Journal on Selected Areas in Communications, vol. 11, no. 4, pp. 590-604에 발표한 " 파장 분할 다중화된 포토닉 네트워크용 저-복잡도 다수의 액세스 프로토콜"을 참조하라. 시간은 프레임들로 분할된다. 전송 스케쥴은 프레임의 매 시간 슬롯에서 미리 결정된다. 패킷들은 자신들의 목적지들에 따라서 개별적인 큐들에 기억되고 자신의 스케쥴된 시간 슬롯들에서 전송된다.
슬립(SLIP)과 정합하는 순환적인 라운드-로빈이 제안되어 있는데, 이것은 N. McKeown, P. Varaiya, J. Walrand가 1993년 12월 Electronic Letters, vol. 29, no. 25, pp 2174-2175에 발표한 " 입력-큐잉된 스위치에서 스케쥴링 셀들"을 참조하라. 각 입력은 전송해야할 패킷을 갖는 모든 출력들에 요청을 전송한다. 요청된 출력은 요청하는 입력들중 하나의 입력에 라운드-로빈 방식으로 승인을 발부한다. 다수의 승인을 수신하는 입력은 라운드 로빈 방식으로 허가된 출력들중 하나의 출력을 선택한다. 각 라운드-로빈 선택은 최종 선택된 후보 다음의 위치에서 시작한다.
랜덤한 그리디 스케쥴링(RGS)는 라운드-로빈 선택이 랜덤한 선택으로 대체된다는 것을 제외하면 RRGS와 유사하다. D. Guo, Y. Yemini, Z. Zhang이 IEEE INFOCOM'94에 발표한 " WDM 광학 성형 네트워크용 스케일러블(scalable) 고속 프로토콜들을 참조하라. 제어기는 일련의 입력들을 랜덤하게 선택하고 이들을 정합되지 않은 출력들과 랜덤하게 정합시킨다. 고속에서, RGS는 하나의 시간 슬롯내에서 완료될 수 없다. 그러나, 랜덤한 선택을 라운드-로빈 선택으로 대체하는 효과를 조사하기 위하여 RGS의 수행성능을 평가하였다.
도4에서, 평균 패킷 지연 대 HOL에 대해 제공된 로드, I-TDAM, SLIP, RGS 및 RRGS가 구분되어 있다. 분석적인 수행성능은 시뮬레이션 결과와 잘 일치한다는 것을 얻었다.
도5는 고정되어 제공된 트래픽에 대한 I-TDMA, SLIP, RGS 및 RRGS에서 패킷 지연의 상보적인 분포 함수를 도시한다. 구분된 곡선들은 시뮬레이션 결과를 이용하여 얻어진다. RRGS는 대부분의 트래픽 로드들에 대해 I-TDMA 및 SLIP 보다 상당히 우수하다.
도6은 4개의 서로다른 로드들 G1,G2,G3및 G4에 대한 특정한 트래픽 매트릭스에 대한 불균일한 트래픽을 위한 프로토콜 수행성능을 도시한다.
7. 결론
본 발명은 고속 입력 버퍼링된 패킷 스위치들을 위한 파이프라인 라운드 로빈 스케쥴러를 제안한 것이다. 본 발명의 RRGS 프로토콜은 유사한 복잡도의 다른 프로토콜 보다 짧은 평균 패킷 지연을 제공한다. 패킷 지연 분포는 두꺼운 테일(heavy tail)을 나타내지 않는다. 불균일한 트래픽 로딩하에서, 적게 로딩된 큐들은 보다 긴 지연을 겪지만, 많이 로딩된 큐들은 다른 프로토콜에서 지연과 비교하여 상당히 낮은 지연을 겪는다.
상술된 기술로부터 당업자에 의해 본 발명의 각종 수정 및 변경이 행해질 수 있다. 따라서, 본 발명의 단지 어떤 실시예들이 본원에서 서술되었지만, 본 발명의 원리 및 영역을 벗어남이 없이 각종 수정이 행해질 수 있다는 것을 알수 있을 것이다.

Claims (9)

  1. N 출력 포트들에 대응하는 각 입력에서 N 논리적인 큐들을 포함하는 라운드 로빈 그리디 스케쥴링 프로토콜(round robin greedy scheduling protocol)용 N×N 크로스바 스위치에서 시간 슬롯을 결정하는 방법으로서, 상기 프로토콜을 위한 입력은 모든 입력 출력 큐들의 상태이며, 상기 프로토콜의 출력은 스케쥴인, 상기 시간 슬롯 결정 방법에 있어서,
    a) i = (constant - k -1) mod N에 대응하는 입력을 선택하는 단계와,
    b) 더 이상 입력들이 존재하지 않는다면 중지시키며, 만약 그렇치 않다면 i = (i + 1) mod N에 의해 결정된 라운드 로빈 방식으로 다음 입력을 선택하는 단계와,
    c) 쌍(i,j)이 존재하는 경우, 한 쌍(i, j)이 세트 C = {(i,j)|l에서 j까지 적어도 하나의 패킷이 존재함}으로 되도록 출력 j를 선택하는 단계와,
    d) 상기 쌍(i,j)이 단계 c에서 존재하지 않는 경우, 입력들의 세트로부터 i를 제거하고 단계 b로 진행시키는 단계와,
    e) 입력들의 세트로부터 i 및 출력들의 세트로부터 j를 제거하는 단계와,
    f) 상기 쌍(i,j)을 스케쥴에 부가하고 단계 b로 진행시키는 단계를 포함하는 시간 슬롯 결정 방법.
  2. 매 시간 슬롯에서 N 개별적인 스케쥴들이 N 먼 장래 시간 슬롯들을 위하여 동시에 진행하게 되는 스케쥴링 방법에 있어서,
    a) 특정한 장래 시간 슬롯이 라운드 로빈 방식으로 스케쥴링하기 위한 입력에 활용되게 하는 단계와,
    b) 장래의 k번째 시간 슬롯을 위하여 입력 i에 의해 출력을 선택하는 단계와,
    c) 장래에 k 번째 시간 슬롯을 위하여 스케쥴을 시작하는 단계와,
    d) 다음 입력 (i+1) mod N을 결정하여 상기 k번째 시간 슬롯 동안 패킷들을 수신하는데 자유롭게되는 나머지 출력들을 다음 입력에 전송하는 단계를 포함하는 스케쥴링 방법.
  3. 제2항에 있어서,
    입력 l이 k번째 시간 슬롯을 위하여 스케쥴을 완료하지 않는 경우, 출력을 선택하여 수정된 출력 세트를 다음 입력으로 전송하고, 입력 l이 k번째 시간 슬롯을 위하여 스케쥴을 완료하는 경우, 상기 출력 세트를 상기 다음 입력으로 전송하지 않는 스케쥴링 방법.
  4. 제3항에 있어서,
    사전 입력으로부터 수정된 출력들의 세트를 수신하지 않는 입력이 새로운 스케쥴을 시작하는 스케쥴링 방법.
  5. 기수의 입력들을 위한 파이프라인 라운드 로빈 그리디 스케쥴링 방법으로서, l번째 시간 슬롯은,
    e) k(0,1)=k(1,1)=...k(N-1,1)=0, const = N+1을 초기화하는 단계로서, k(i,l)>0은 입력 i가 1번째 시간 슬롯에서 출력을 예약하는 시간 슬롯이며, il= (const - N - 1) mod N은 1번째 시간 슬롯에서 새로운 스케쥴을 시작하는 입력을 표시하고 k(i,l) = 0은 시간 슬롯 l에서 입력 i의 작용이 억제된다는 것을 의미하는, 상기 초기화 단계와,
    f) 0 ≤ i ≤ N - 1이고 i ≠ il인 경우 O/ +N= {0, 1, ... , N -1}, k(il,l) = l + N, k(i,l) = k((i - 1) mod N,l - 1)로 설정하는 단계와,
    g) k(i,l) ≠ 0인 경우, 전송해야할 패킷을 갖는 세트 Ok(i, 1)로부터 라운드 로빈 방식으로 입력 i, 즉 0iN - 1에서 한 출력 j를 선택하여 Ok(i,l)로부터 j를 배제하는 단계와,
    h) 위치 k(i, l) mod N에서의 접속 메모리에 선택된 출력의 입력 i, 즉 0 ≤ i ≤ N - 1에서의 어드레스를 기억시키고 대응하는 수신 입력-출력 큐로부터 라인 헤드(HOL) 패킷을 개별적인 전송 입력-출력 큐로 이동시키는 단계와,
    i) 입력 i, 즉 0 ≤ i ≤ N - 1 및 i ≠ (il- 2) mod N에서 상기 세트 Ok(i,l)을 다음 입력(i + 1) mod N으로 진행시키는 단계와,
    j) 입력i, 즉 0 ≤ i ≤ N - 1 및 어드레스가 입력 i의 접속 메모리의 위치(l mod (N + 1))로부터 판독되는 출력간에 크로스 바 접속을 설정하는 단계와,
    k) 각 입력 i, 즉 0 ≤ i ≤ N - 1에 대한 스위치 코어를 통해서 스케쥴된 전송 입력-출력 큐의 헤드에서 예약된 패킷을 전송하는 단계를, 포함하는 공정을 사용하여 완료되는, 파이프라인 라운드 로빈 그리디 스케쥴링 방법.
  6. 우수의 입력을 위한 파이프라인 라운드 로빈 그리디 스케쥴링 방법으로서, l번째 시간 슬롯은,
    l) k(0,1)=k(1,1)=...k(N-1,1)=0, const = N+1을 초기화하는 단계로서, k(i,l)>0은 입력 i가 l번째 시간 슬롯에서 출력을 예약하는 시간 슬롯이며, il= (const - N - 1) mod N은 l번째 시간 슬롯에서 새로운 스케쥴을 시작하는 입력을 표시하고 k(i,l) = 0은 시간 슬롯 l에서 입력 i의 작용이 억제된다는 것을 의미하는, 상기 초기화 단계와,
    m) 0 ≤ i ≤ N - 1이고 (il+ 1) mod N 및 i{il,(il+ 1) mod N} 에 대하여 O1 +N= {0, 1, ... , N -1}, k(il, l)= l + N + 1, k(mod(il+1) mod N,l) = k(il, l- 2) 및 k(i, l) = k((i -1) mod N,l-1)를 설정하는 단계와,
    n) k(i,1) ≠ 0인 경우, 전송해야할 패킷을 갖는 세트 Ok(i, l)로부터 라운드 로빈 방식으로 입력 i, 즉 0iN - 1에서 한 출력 j를 선택하여 Ok(i,l)로부터 j를 배제하는 단계와,
    o) 위치 k(i, l) mod (N + 1)에서의 접속 메모리에 선택된 출력의 입력 i, 즉 0 ≤ i ≤ N - 1에서의 어드레스를 기억시키고 대응하는 수신 입력-출력 큐로부터 HOL 패킷을 개별적인 전송 입력-출력 큐로 이동시키는 단계와,
    p) 입력 i, 즉 0 ≤ i ≤ N - 1 및 i = (il- 2) mod N에서 상기 세트 Ok(i,l)을 다음 입력(i + 1) mod N으로 진행시키는 단계로서, 입력 (il- 2) mod N은 이것을 진행시키기 전에 한 시간 슬롯을 위하여 세트 Ok((i??- 2)modN,??)를 지연시키는, 상기 진행시키는 단계와,
    q) 입력i, 즉 0 ≤ i ≤ N - 1 및 어드레스가 입력 i의 접속 메모리의 위치(l mod (N + 1))로부터 판독되는 출력간에 크로스 바 접속을 설정하는 단계와,
    r) 각 입력 i, 즉 0 ≤ i ≤ N - 1에 대한 스위치 코어를 통해서 스케쥴된 전송 입력-출력 큐의 헤드에서 예약된 패킷을 전송하는 단계를, 포함하는 공정을 사용하여 완료되는, 파이프라인 라운드 로빈 그리디 스케쥴링 방법.
  7. 제5항에 있어서,
    멀티캐스트 스케쥴링은 라운드-로빈 그리디 스케쥴링 알고리즘에 포함되며, 멀티캐스트 패킷들은 선입 선처리(first come first served) 방식으로 기억되고 유니캐스트 큐들에 비해서 우선순위를 갖으며, l번째 시간 슬롯에서 단계들은,
    s) 입력 i, 즉 0 ≤ i ≤ N - 1에서 j ∈ Ok(i,1)∩ BMi가 되도록 모든 출력들 j를 선택하여 k번째 시간 슬롯에서 선택된 출력들에 HOL 멀티캐스트 패킷들을 전송하는 단계와,
    t) Ok(i,1)∩ BMi가 빈 세트인 경우 유니캐스트 큐들을 처리하고, 만일 그렇치 않다면 선택된 출력들을 Ok(i,1)및 BMi로부터 배제시키는 단계와, u) BMi가 비어있는 경우 멀티캐스트 큐로부터 HOL 멀티캐스트 패킷들을 삭제하는 단계를 더 포함하는, 파이프라인 라운드 로빈 그리디 스케쥴링 방법.
  8. 제6항에 있어서,
    멀티캐스트 스케쥴링은 라운드-로빈 그리디 스케쥴링 알고리즘에 포함되며, 멀티캐스트 패킷들은 선입 선처리된 방식으로 기억되고 유니캐스트 큐들에 비해서 우선순위를 갖으며, l번째 시간 슬롯에서 단계들은,
    v) 입력 i, 즉 0 ≤ i ≤ N - 1에서 j ∈ Ok(i,1)∩ BMi가 되도록 모든 출력들 j를 선택하는 단계와,
    w) k번째 시간 슬롯에서 선택된 출력들에 HOL 멀티캐스트 패킷들을 전송하는 단계와,
    x) Ok(i,1)∩ BMi가 빈 세트인 경우 유니캐스트 큐들을 처리하고, 만일 그렇치 않다면 선택된 출력들을 Ok(i,1)및 BMi로부터 배제시키는 단계와, y) BMi가 비어있는 경우 멀티캐스트 큐로부터 HOL 멀티캐스트 패킷들을 삭제하는 단계를 더 포함하는, 파이프라인 라운드 로빈 그리디 스케쥴링 방법.
  9. 스테이지 i가 입력 l과 관계되는 N×N 스위치를 스케쥴링하는 N 스테이지 파이프라인 시스템에 있어서,
    상기 스테이지 i는 장래 시간 슬롯에서 출력으로의 전송을 스케쥴하며, 상기 장래 시간 슬롯은 모든 스테이지들을 통해서 리플링되며, 입력들에 대응하는 모든 파이프라인 스테이지들은 두 개의 입력들이 동시에 동일한 장래 시간 슬롯을 선택하지 않도록 동시에 스케쥴링을 수행하며, 출력 슬롯들은 라운드 로빈 방식을 토대로 선택되며, 출력이 스테이지에 의해 선택될 때, 상기 출력은 파이프라인 스테이지가 입력들에 의해서 어떤 시간 슬롯동안 이미 선택된 출력을 선택하지 않도록 출력들의 프리 풀(free pool)로부터 제거되는 N 스테이지 파이프라인 시스템.
KR1019990027469A 1998-12-08 1999-07-08 입력/출력 테라비트 스위치들을 위한 rrgs-라운드-로빈 그리디 스케쥴링 KR100339329B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/206,975 1998-12-08
US09/206,975 US6618379B1 (en) 1998-12-08 1998-12-08 RRGS-round-robin greedy scheduling for input/output terabit switches

Publications (2)

Publication Number Publication Date
KR20000047434A true KR20000047434A (ko) 2000-07-25
KR100339329B1 KR100339329B1 (ko) 2002-06-03

Family

ID=22768718

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990027469A KR100339329B1 (ko) 1998-12-08 1999-07-08 입력/출력 테라비트 스위치들을 위한 rrgs-라운드-로빈 그리디 스케쥴링

Country Status (6)

Country Link
US (1) US6618379B1 (ko)
EP (1) EP1009189B1 (ko)
JP (1) JP3221436B2 (ko)
KR (1) KR100339329B1 (ko)
CN (1) CN1197275C (ko)
DE (1) DE69931587T2 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100312363B1 (ko) * 1999-06-18 2001-11-03 가네코 히사시 데이터 흐름 제어 스위치 및 그 스케줄링방법
KR100317123B1 (ko) * 1999-10-29 2001-12-24 오길록 선형 시스톨릭 라운드로빈 스케줄러 및 그의 스케줄링방법

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6477169B1 (en) * 1999-05-14 2002-11-05 Nortel Networks Limited Multicast and unicast scheduling for a network device
KR100378588B1 (ko) * 1999-05-19 2003-03-29 주식회사 머큐리 대용량화가 가능한 다중 경로 비동기 전송 모드 스위치 및 셀구조
US7058063B1 (en) * 1999-06-18 2006-06-06 Nec Corporation Pipelined packet scheduler for high speed optical switches
JP3389913B2 (ja) 1999-11-10 2003-03-24 日本電気株式会社 グループ化パイプライン・スケジューリング方式及びその方法
JP3473687B2 (ja) 2000-03-29 2003-12-08 日本電気株式会社 分散パイプラインスケジューリング方法および方式
WO2001097469A2 (en) * 2000-06-14 2001-12-20 Sun Microsystems, Inc. Packet transmission scheduler
US7072353B2 (en) * 2000-06-15 2006-07-04 At&T Corp. Flexible bandwidth allocation in high-capacity grooming switches
GB0016475D0 (en) * 2000-07-05 2000-08-23 Roke Manor Research Distributed schedules for a routing device
ES2254316T3 (es) 2000-07-05 2006-06-16 Roke Manor Research Limited Mejoras en, o relacionadas con, dispositivos de conmutacion.
JP3567878B2 (ja) * 2000-10-02 2004-09-22 日本電気株式会社 パケット交換装置
US6848017B2 (en) * 2000-10-26 2005-01-25 Emc Corporation Method and apparatus for determining connections in a crossbar switch
US20020110086A1 (en) * 2000-12-18 2002-08-15 Shlomo Reches Multiport switch and a method for forwarding variable length packets across a multiport switch
US7042883B2 (en) * 2001-01-03 2006-05-09 Juniper Networks, Inc. Pipeline scheduler with fairness and minimum bandwidth guarantee
US20020172197A1 (en) * 2001-05-18 2002-11-21 Dale Michele Zampetti System interconnect with minimal overhead suitable for real-time applications
US7911980B1 (en) * 2001-07-17 2011-03-22 At&T Intellectual Property Ii, L.P. Flexible multicasting in high-capacity switches
ES2233878T3 (es) * 2001-10-31 2005-06-16 Siemens Aktiengesellschaft Procedimiento para la comunicacion de un trafico de datos en tiempo real en una red de comunicaciones basada en un reconocimiento de colision, el correspondiente elemento de memoria y red de comunicaciones.
KR100459036B1 (ko) * 2001-12-18 2004-12-03 엘지전자 주식회사 에이티엠 스위치 시스템의 트레인 패킷 구성 방법
AU2003250913A1 (en) * 2002-07-08 2004-01-23 Abbott Laboratories Vascular Enterprises Limited Drug eluting stent and methods of manufacture
US20040037558A1 (en) * 2002-08-20 2004-02-26 Nortel Networks Limited Modular high-capacity switch
US7961723B2 (en) 2002-10-08 2011-06-14 Netlogic Microsystems, Inc. Advanced processor with mechanism for enforcing ordering between information sent on two independent networks
US7627721B2 (en) 2002-10-08 2009-12-01 Rmi Corporation Advanced processor with cache coherency
US7924828B2 (en) 2002-10-08 2011-04-12 Netlogic Microsystems, Inc. Advanced processor with mechanism for fast packet queuing operations
US8176298B2 (en) 2002-10-08 2012-05-08 Netlogic Microsystems, Inc. Multi-core multi-threaded processing systems with instruction reordering in an in-order pipeline
US9088474B2 (en) 2002-10-08 2015-07-21 Broadcom Corporation Advanced processor with interfacing messaging network to a CPU
US8478811B2 (en) 2002-10-08 2013-07-02 Netlogic Microsystems, Inc. Advanced processor with credit based scheme for optimal packet flow in a multi-processor system on a chip
US8015567B2 (en) 2002-10-08 2011-09-06 Netlogic Microsystems, Inc. Advanced processor with mechanism for packet distribution at high line rate
US8037224B2 (en) 2002-10-08 2011-10-11 Netlogic Microsystems, Inc. Delegating network processor operations to star topology serial bus interfaces
US7334086B2 (en) * 2002-10-08 2008-02-19 Rmi Corporation Advanced processor with system on a chip interconnect technology
US7984268B2 (en) 2002-10-08 2011-07-19 Netlogic Microsystems, Inc. Advanced processor scheduling in a multithreaded system
US7346757B2 (en) 2002-10-08 2008-03-18 Rmi Corporation Advanced processor translation lookaside buffer management in a multithreaded system
US7352699B2 (en) * 2003-04-25 2008-04-01 Alcatel Usa Sourcing, L.P. Switch fabric access scheduler
US7397796B1 (en) * 2003-08-21 2008-07-08 Smiljanic Aleksandra Load balancing algorithms in non-blocking multistage packet switches
US8345701B1 (en) * 2003-08-26 2013-01-01 F5 Networks, Inc. Memory system for controlling distribution of packet data across a switch
US7542473B2 (en) * 2004-12-02 2009-06-02 Nortel Networks Limited High-speed scheduling apparatus for a switching node
WO2006090332A2 (en) 2005-02-28 2006-08-31 Nxp B.V. Input buffered switch
FR2898750B1 (fr) 2006-03-14 2008-06-06 Alcatel Sa Dispositif de communtation de donnees a mecanisme d'arbitrage entre demandes de transfert d'ensembles de donnees, pour un noeud d'un reseau de communication a tres haut debit
JP5096102B2 (ja) * 2007-10-17 2012-12-12 株式会社ユニバーサルエンターテインメント 無線通信タグ及び無線通信システム
US9596324B2 (en) 2008-02-08 2017-03-14 Broadcom Corporation System and method for parsing and allocating a plurality of packets to processor core threads
GB2464310B (en) 2008-10-10 2012-10-17 Micron Technology Inc Switching device
US8824496B2 (en) * 2009-10-30 2014-09-02 Oracle America, Inc. Two-phase arbitration mechanism for shared optical links
US8473659B2 (en) * 2010-01-15 2013-06-25 Oracle America, Inc. Time division multiplexing based arbitration for shared optical links
US8655120B2 (en) 2011-07-11 2014-02-18 Oracle International Corporation Arbitrated optical network using tunable drop filters
US10834065B1 (en) 2015-03-31 2020-11-10 F5 Networks, Inc. Methods for SSL protected NTLM re-authentication and devices thereof
US10404698B1 (en) 2016-01-15 2019-09-03 F5 Networks, Inc. Methods for adaptive organization of web application access points in webtops and devices thereof
EP4002770B1 (en) * 2020-11-16 2024-04-03 Ratier-Figeac SAS Serial time triggered data bus

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4761780A (en) 1986-12-22 1988-08-02 Bell Communications Research, Inc. Enhanced efficiency Batcher-Banyan packet switch
JPH0287745A (ja) 1988-09-26 1990-03-28 Nippon Telegr & Teleph Corp <Ntt> セル競合制御回路
US5161156A (en) * 1990-02-02 1992-11-03 International Business Machines Corporation Multiprocessing packet switching connection system having provision for error correction and recovery
JP2805992B2 (ja) 1990-06-28 1998-09-30 松下電器産業株式会社 パケットスイッチ及びその接続制御装置
JPH04271546A (ja) 1991-02-27 1992-09-28 Nec Corp 入力キューイング型パケット処理装置の競合制御方式
US5299190A (en) 1992-12-18 1994-03-29 International Business Machines Corporation Two-dimensional round-robin scheduling mechanism for switches with multiple input queues
JP3221997B2 (ja) 1993-03-26 2001-10-22 株式会社東芝 画像処理装置
JPH0823213A (ja) 1994-07-05 1996-01-23 Matsushita Electric Ind Co Ltd 誘電体同軸共振器
US5517495A (en) 1994-12-06 1996-05-14 At&T Corp. Fair prioritized scheduling in an input-buffered switch
AU6501496A (en) * 1995-07-19 1997-02-18 Ascom Nexion Inc. Point-to-multipoint transmission using subqueues
JP2865139B2 (ja) * 1997-04-18 1999-03-08 日本電気株式会社 Atmセルバッファ回路及びatm交換機における優先順位任意割付方法
JP3506612B2 (ja) 1998-08-31 2004-03-15 富士通株式会社 スケジューリング制御装置
JP3684308B2 (ja) 1998-12-15 2005-08-17 富士通株式会社 スケジューリング制御装置および交換機

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100312363B1 (ko) * 1999-06-18 2001-11-03 가네코 히사시 데이터 흐름 제어 스위치 및 그 스케줄링방법
KR100317123B1 (ko) * 1999-10-29 2001-12-24 오길록 선형 시스톨릭 라운드로빈 스케줄러 및 그의 스케줄링방법

Also Published As

Publication number Publication date
EP1009189B1 (en) 2006-05-31
JP3221436B2 (ja) 2001-10-22
DE69931587T2 (de) 2007-06-06
EP1009189A3 (en) 2003-03-12
KR100339329B1 (ko) 2002-06-03
CN1264226A (zh) 2000-08-23
US6618379B1 (en) 2003-09-09
JP2000174817A (ja) 2000-06-23
CN1197275C (zh) 2005-04-13
DE69931587D1 (de) 2006-07-06
EP1009189A2 (en) 2000-06-14

Similar Documents

Publication Publication Date Title
KR20000047434A (ko) 입력/출력 테라비트 스위치들을 위한 rrgs-라운드-로빈 그리디 스케쥴링
AU746166B2 (en) Fair and efficient cell scheduling in input-buffered multipoint switch
US10182021B2 (en) Crossbar switch and recursive scheduling
USRE43466E1 (en) Scheduling the dispatch of cells in non-empty virtual output queues of multistage switches using a pipelined hierarchical arbitration scheme
US7161943B2 (en) Two-dimensional pipelined scheduling technique
USRE43110E1 (en) Pipelined maximal-sized matching cell dispatch scheduling
US4866701A (en) Packet switch with dynamic allocation of inputs
US6940851B2 (en) Scheduling the dispatch of cells in non-empty virtual output queues of multistage switches using a pipelined arbitration scheme
US7463641B2 (en) Flexible bandwidth allocation in high-capacity grooming switches
US7065046B2 (en) Scalable weight-based terabit switch scheduling method
US7830903B2 (en) Method and apparatus for scheduling packets and/or cells
CN100490383C (zh) 一种支持多优先级的高速Crossbar调度方法
Smiljanic et al. RRGS-round-robin greedy scheduling for electronic/optical terabit switches
USRE42600E1 (en) Scheduling the dispatch of cells in non-empty virtual output queues of multistage switches using a pipelined arbitration scheme

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

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20130503

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee