KR20070106939A - 데이터 블록 스케줄링 방법과 장치 및 이를 포함하는 집적회로 - Google Patents

데이터 블록 스케줄링 방법과 장치 및 이를 포함하는 집적회로 Download PDF

Info

Publication number
KR20070106939A
KR20070106939A KR1020070042539A KR20070042539A KR20070106939A KR 20070106939 A KR20070106939 A KR 20070106939A KR 1020070042539 A KR1020070042539 A KR 1020070042539A KR 20070042539 A KR20070042539 A KR 20070042539A KR 20070106939 A KR20070106939 A KR 20070106939A
Authority
KR
South Korea
Prior art keywords
transmission
eligible
scheduling
frame
scheduler
Prior art date
Application number
KR1020070042539A
Other languages
English (en)
Other versions
KR101303390B1 (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 KR20070106939A publication Critical patent/KR20070106939A/ko
Application granted granted Critical
Publication of KR101303390B1 publication Critical patent/KR101303390B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/622Queue service order
    • H04L47/623Weighted service order
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/622Queue service order
    • H04L47/6225Fixed service order, e.g. Round Robin
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/50Allocation or scheduling criteria for wireless resources
    • H04W72/52Allocation or scheduling criteria for wireless resources based on load

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

스케줄러는 통신 시스템에서 프레임의 타임슬롯 내의 복수의 전송 구성요소로부터의 전송을 위한 패킷 또는 다른 데이터 블록을 스케줄링하는 데 적합하다. 주어진 프레임에 대한 스케줄링시에, 스케줄러는 초기에 전송 구성요소 각각을 주어진 프레임 내의 하나 이상의 데이터 블록을 전송하기에 적격인 것으로 지정하고, 적격인 것으로 지정된 전송 구성요소들 중에서 주어진 프레임의 다음 이용가능한 타임슬롯에서 스케줄링할 전송 구성요소 중 적어도 하나를 선택한다. 이어서 스케줄러는 선택된 전송 구성요소(들)의 적격성 상태를 조정하고, 주어진 프레임의 하나 이상의 나머지 타임슬롯에 대해 선택 및 조정 동작을 반복한다. 예시적인 실시예에서 스케줄러는 네트워크 프로세서 집적 회로 또는 통신 시스템의 다른 프로세싱 장치에서 구현될 수 있다.

Description

데이터 블록 스케줄링 방법과 장치 및 이를 포함하는 집적 회로{HIGH-THROUGHPUT SCHEDULER WITH GUARANTEED FAIRNESS FOR WIRELESS NETWORKS AND OTHER APPLICATIONS}
도 1은 본 발명의 예시적인 실시예에서 무선 네트워크를 포함하는 통신 시스템의 개략적인 블록도이다.
도 2는 도 1의 통신 시스템 중 적어도 일부의 가능한 하나의 구현예를 도시한다.
도 3은 본 발명의 일 실시예에서 도 1의 통신 시스템의 스케줄러 내에 구현된 변형 RR 스케줄링 알고리즘의 흐름도이다.
도 4는 도 3의 변형 RR 스케줄링 알고리즘의 동작의 예를 도시하는 표이다.
도 5는 본 발명의 다른 실시예에서 도 1의 통신 시스템의 스케줄러 내에 구현된 변형 WRR 스케줄링 알고리즘의 흐름도이다.
도 6은 도 1의 통신 시스템 중 적어도 일부의 가능한 다른 구현예를 도시한다.
도 7은 라우터 또는 스위치의 회선 카드 상에 설치된 집적 회로로 도시된 도 6의 시스템의 네트워크 프로세서의 블록도이다.
도 8은 본 발명의 기술에 따라 구성된 도 6의 시스템의 네트워크 프로세서의 보다 상세한 도면이다.
도면의 주요부분에 대한 부호의 설명
100 : 통신 시스템 102 : 스케줄러
104 : 송신기 106 : 채널 상태
110-1 내지 110-N : 큐 112-1 내지 112-N : 모바일 사용자 장치
관련 출원
본 출원은 "Wireless Network Scheduling Methods and Apparatus Based on Both Waiting Time and Occupancy"라는 명칭으로 동시에 출원된 미국 특허 출원 대리인 관리 번호 해밀턴 5-1-3-2에 관한 것으로, 그 개시내용은 본 명세서에서 참조로써 인용된다.
본 발명은 일반적으로 원격통신 분야에 관한 것으로, 보다 구체적으로, 제한된 리소스에 대한 제어 액세스에 사용되는 스케줄러(scheduler)에 관한 것이다.
다수의 원격 통신 애플리케이션에서, 스케줄러는 제한된 리소스에 대해 경쟁하는 다수의 태스크 사이의 경합을 해결하는 데 사용된다. 예컨대, 이러한 스케줄러는 일반적으로 네트워크 프로세서에서 사용되어, 특정 전송 대역폭을 통한 전송 에 대한 다수의 트래픽 흐름을 스케줄링한다.
네트워크 프로세서는 일반적으로 네트워크의 물리층 부분과 같은 물리적 전송 매체와 라우터 또는 다른 유형의 스위치 내의 스위치 패브릭 사이의 데이터 흐름을 제어한다. 네트워크 프로세서의 중요한 기능은 네트워크의 물리적 전송 매체로부터 스위치 패브릭까지의 전송에 대한 다수의 트래픽 흐름에 관련된 셀, 패킷 또는 다른 데이터 블록을 스케줄링하는 것을 포함하며, 반대의 경우도 또한 같다. 네트워크 프로세서 스케줄러는 이러한 기능을 수행한다.
다수의 스케줄링 알고리즘을 지원할 수 있는 효율적이고 융통성 있는 스케줄러 아키텍처는 발명자 Asif Q. Khan 등에 의해 "Processor with Scheduler Architecture Supporting Multiple Distinct Scheduler Algorithms"라는 명칭으로 2003년 11월 26일에 출원된 미국 특허 출원 번호 제 10/722,933 호에 개시되어 있으며, 이는 본 출원과 공동으로 양도되고 본 명세서에서 참조로써 인용된다.
흔히 네트워크 프로세서 또는 다른 프로세싱 장치에서 구현되는 정해진 스케줄링 알고리즘은 간단하고 공정한 것이 바람직하다. 프로세싱 장치 하드웨어가 전형적으로 정해진 스케줄링을 결정하는 데 많은 시간을 가지지 않으므로 간단함은 중요하다. 좋은 스케줄러는 공정하기도 해야 한다. 예컨대, 스케줄러는 우선순위가 높은 사용자가 우선순위가 낮은 사용자보다 대역폭이 더 많아지는 것으로 사용자의 가중치에 따라 대역폭을 할당할 수 있다.
간단하고 공정한 스케줄링 알고리즘의 예는 WRR(Weighted round-Robin) 스케줄링 알고리즘이다. 각각의 타임슬롯에서 하나의 데이터 블록을 처리할 수 있는 주어진 원격통신 애플리케이션에서 하나의 리소스에 대해 경쟁하는 다수의 사용자가 존재한다고 가정한다. 스케줄러는 각각의 타임슬롯에서 어떤 사용자가 하나의 데이터 블록을 서버에 전달할 수 있는지 결정해야 한다. 각각의 사용자는 우선순위를 식별하기 위한 가중치를 가진다. 가중치가 큰 사용자는 우선순위가 높다. 이상적인 조건 하에서, 사용자에 의해 수신된 서비스는 그들의 가중치에 비례해야 한다. WRR 스케줄러는 라운드-로빈 방식으로 사용자의 가중치에 비례하여 사용자에게 서비스를 제공한다. N개의 사용자가 있다고 가정한다. i번째 사용자, Ui는 정수인 가중치 Wi를 가진다. F는 N개의 사용자에 대한 가중치 Wi의 총합이라고 가정한다. F가 타임슬롯들로 이루어진 프레임 크기이도록 F개의 타임슬롯을 하나의 프레임으로 정의한다. WRR은 각각의 프레임 내의 정확히 Wi개의 타임슬롯 동안 Ui에 서비스를 제공한다. 따라서, 각 사용자는 자신의 공정한 프레임 공유를 획득한다. 예컨대, 가중치가 각각 4, 3, 2 및 1인 4개의 사용자 U1, U2, U3 및 U4가 있다고 가정한다. 이어서, 스케줄러는 프레임 당 순서(U1, U2, U3, U4, U1, U2, U3, U1, U2, U1)를 반복함으로써 이들 4개의 사용자를 제공할 수 있다. 하나의 프레임 내에 10개의 타임슬롯이 존재하고, U1는 각 프레임 내에 4개의 타임슬롯을 획득할 수 있다.
WRR의 문제점은 긴 버스티성(burstiness) 구간을 야기할 수 있다는 것이다. 예컨대, U1의 가중치는 10이고 다른 모든 사용자의 가중치는 1인 11개의 사용자가 있는 경우를 고려한다. 이 경우에, 가중치의 총합은 20이므로, 프레임 당 20개의 타임슬롯이 존재한다. WRR은 다음과 같은 사용자(U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U1 , U1 , U1 , U1 , U1 , U1 , U1 , U1 , U1)에게 서비스를 제공할 것이다. U1에 의해 수신된 서비스는 상당히 버스티(busty)하다. 이는 긴 버스티성이 사용자 통신 장치의 버퍼를 범람할 수 있으므로, 원격통신 시스템에서 명백히 바람직하지 않다. 총 사용자 수가 수백 개 이상일 수 있는 실제 애플리케이션에서 이러한 버스티성은 점점 문제가 된다.
WRR의 버스티성 문제점을 극복하는 다른 스케줄링 알고리즘이 알려져 있다. 이들은 예로써 WFQ(Weighted Fair Queuing) 및 WF2Q(Worst-case Fair Weighted Fair Queueing)를 포함한다. 불행히도, 이들 다른 알고리즘은 일반적으로 WRR보다 상당히 복잡하므로, 네트워크 프로세서 및 고속 데이터 환경에서 동작하는 다른 프로세싱 장치에서 구현하기가 어려울 수 있다.
본 출원과 공동으로 양도되고 본 명세서에서 참조로써 인용되는 2004년 7월 30일에 출원된 발명자 jinhui Li 등의 "Frame Mapping Scheduler"라는 명칭의 미국 특허 출원 번호 제 10/903,954 호가 예시적인 실시예 -WRR에 필적하는 간단함 및 공정함을 제공하지만, WRR에 일반적으로 관련된 버스티성 문제가 없는 프레임 매핑 스케줄러- 에 개시된다. 보다 구체적으로, 여기에 설명된 예시적인 실시예의 프레임 매핑 스케줄러는 가중치 테이블 및 매핑 테이블을 이용하는 스케줄링 회로를 포함한다. 가중치 테이블은 복수의 엔트리를 포함하는데, 엔트리 각각은 전송 구성 요소 중 특정한 것을 식별한다. 매핑 테이블은 프레임의 특정 타임슬롯과 가중치 테이블의 엔트리 사이의 매핑을 지정하는 적어도 하나의 엔트리를 포함한다. 스케줄링 회로는 대응하는 매핑 테이블 엔트리에 액세스하고, 결과값을 이용하여 가중치 테이블에 액세스함으로써 주어진 타임슬롯 내에서 스케줄링되도록 특정 전송 구성요소를 결정한다. 매핑 테이블 엔트리는 황금 비율 정책(a golden ratio policy) 또는 다른 유형의 정책에 따라 사전결정될 수 있다.
그러나, 황금 비율 정책, 또는 보다 일반적으로 저장된 매핑 테이블을 필요로 하는 임의의 정책을 이용하는 스케줄러에서, 매핑 테이블은 클 수 있으므로 상당한 메모리 양을 필요로 한다. 일반적으로 이러한 매핑 테이블 메모리는 액세스 시간을 감소시키도록 "온칩", 즉, 스케줄러와 동일한 직접 회로에 배치되는 것이 바람직하다. 예컨대, 이러한 배치는 데이터 블록이 실질적으로 실시간으로 처리될 필요가 있을 수 있는 네트워크 프로세싱 애플리케이션에서 이롭다.
2004년 11월 29일에 출원된 발명자 Jinhui Li 등의 "Frame Mapping Scheduler with Compressed Mapping Table"라는 명칭의 미국 특허 출원 번호 제 10/998,686 호는 테이블을 저장하는 데 필요한 메모리 양을 감소시키기 위해 매핑 테이블을 압축함으로써, 프레임 매핑 스케줄러를 포함하는 네트워크 프로세서 집적 회로 또는 다른 장치에서의 구현이 용이해지는 기술을 개시한다.
상술한 알려진 배치는 무선 네트워크를 수반하는 애플리케이션을 포함하는 다양한 원격통신 애플리케이션에서 이용될 수 있다. 그러나, 무선 네트워크에서의 스케줄링은 무선 네트워크에서의 채널 용량이 전형적으로 시변적이고 예측하기가 어려우므로 특히 문제가 될 수 있다. 이러한 경우에 무선 네트워크 스케줄러는 공정성뿐만 아니라 충분한 처리량도 제공하는 것이 중요하다.
무선 네트워크에서 이용되는 스케줄링 알고리즘의 예는 상술한 WRR 스케줄링 알고리즘 및 비가중화 유사물 라운드 로빈(unweighted counterpart round robin(RR)), Max C/I(maximum carrier-to-interface ratio), PF(Proportional Fairness) 및 M-LWDF(Modified Largest Weighted Delay First)를 포함한다.
RR 스케줄링 알고리즘의 단점은 채널 상태를 고려하지 않는다는 것이다. 대신에, RR 스케줄링 알고리즘은 사용자들 각자의 채널 용량에 상관없이, 제 1 사용자는 제 1 타임슬롯에 할당되고, 제 2 사용자는 제 2 타임슬롯에 할당되는 등 백로깅된(backlogged) 사용자를 하나씩 간단히 스케줄링한다. 이러한 방안은 주어진 N개의 타임슬롯 세트에서, N개의 사용자 각각은 서비스를 제공받을 기회를 정확히 한 번 가지므로 공정하다. 그러나, 스케줄링을 결정하기 전에 채널 용량을 체크하지 않으므로 RR 알고리즘의 처리량은 부족하다. WRR 스케줄링 알고리즘도 스케줄링 결정시에 채널 용량을 고려하는 데 유사하게 실패한다.
MAX C/I 스케줄링 알고리즘은 주어진 타임슬롯 동안 최상의 채널 용량을 가진 사용자를 선택한다. 이러한 방안은 최대 총 처리량을 획득할 수 있지만, 공정성 성능은 상당히 좋지 않다. 예컨대, 주어진 모바일 사용자의 무선 링크가 항상 약하면, 그 사용자는 스케줄링될 것 같지 않다.
PF 스케줄링 알고리즘은 최대 ri/Ri을 가진 사용자를 선택하는데, 여기서 ri 는 사용자 i의 채널 용량이고 Ri는 사용자 i에 의해 수신된 평균 레이트이다. 이 알고리즘은 Ri를 적합하게 갱신하다. 따라서, 약한 무선 링크를 가진 모바일 사용자는 스케줄링될 기회가 있을 것이다. PF 스케줄링 알고리즘에 대한 추가 상세사항은 예컨대, Proc. of IEEE VTC 2000, pp. 1854-1858, May 2000, A. Jalali 등의 "Data throughput of CDMA-HDR a high efficiency high data rate personal communication wireless system"에서 찾을 수 있다. PF 스케줄링 알고리즘의 공정성은 Max C/I 스케줄링 알고리즘의 공정성보다 낫지만, RR 또는 WRR 스케줄링 알고리즘의 공정성만큼 뛰어나지는 않다. 또한, PF 스케줄링 알고리즘은 보증된 공정성을 제공할 수 없다.
M-LWDF 스케줄링 알고리즘은 긴 대기 시간을 가진 사용자에게 더 높은 우선순위를 부여한다. 그러나, 상술한 PF 스케줄링 알고리즘과 같이, 보증된 공정성을 제공하지는 않는다.
따라서, Max C/I, PF 및 M-LWDF 스케줄링 알고리즘은 공정성을 단념함으로써 무선 상태에서 RR 및 WRR 스케줄링 알고리즘보다 뛰어난 처리량을 제공한다. 특히, 무선 네트워크 애플리케이션에서 처리량과 공정성 사이에 더 나은 균형을 제공하는 개선된 스케줄링 알고리즘이 필요하다.
하나 이상의 예시적인 실시예에서 본 발명은 공정성의 희생 없이 종래의 RR 및 WRR 스케줄링 알고리즘의 처리량을 개선하는 무선 스케줄링 알고리즘을 제공한다.
본 발명의 일 측면에 따르면, 스케줄러는 통신 시스템에서 프레임의 타임슬롯 내의 복수의 전송 구성요소로부터의 전송을 위한 패킷 또는 다른 데이터 블록을 스케줄링하는 데 적합하다. 주어진 프레임에 대한 스케줄링시에, 스케줄러는 초기에 전송 구성요소 각각을 주어진 프레임 내의 하나 이상의 데이터 블록을 전송하기에 적격인 것으로 지정하고, 적격인 것으로 지정된 전송 구성요소들 중에서 주어진 프레임의 다음 이용가능한 타임슬롯에서 스케줄링할 전송 구성요소 중 적어도 하나를 선택한다. 이어서 스케줄러는 선택된 전송 구성요소(들)의 적격성 상태를 조정하고, 주어진 프레임의 하나 이상의 나머지 타임슬롯에 대해 선택 및 조정 동작을 반복한다.
주어진 선택된 전송 구성요소에 대한 적격성 상태는 예컨대, 주어진 선택된 전송 구성요소를 주어진 프레임 내의 임의의 추가 데이터 블록을 전송하기에 적격인 것으로 지정함으로써, 조정될 수 있다.
제 1 예시적인 실시예는 본 명세서에서 무선 RR(WiRR) 스케줄링 알고리즘으로도 지칭되는 변형 RR 스케줄링 알고리즘을 제공한다. 이러한 실시예에서, 주어진 선택된 전송 구성요소에 대한 적격성 상태는 적격 상태 및 부적격 상태를 가진 2진 적격성 표지를 포함하고, 적격성 상태는 그 구성요소에 대한 2진 적격성 표지를 적격 상태에서 부적격 상태로 변경함으로써 조정된다. 따라서, 주어진 선택된 전송 구성요소가 주어진 프레임의 타임슬롯 내에서 서비스를 제공받으면, 주어진 선택된 전송 구성요소는 그 프레임의 임의의 다음 타임슬롯 내의 서비스에 부적격인 것으로 간주한다. 프로세스는 다른 프레임에 대해 반복되고, 각각의 새로운 프레임에 대해, 전송 구성요소는 모두 초기에 그 프레임 내의 하나 이상의 데이터 블록을 전송하기에 적격인 것으로 지정된다.
제 2 예시적인 실시예는 WiRR 스케줄링 알고리즘의 가중화 버전을 제공한다. 이러한 실시예에서, 주어진 선택된 전송 구성요소에 대한 적격성 상태는 적격 숫자를 포함하며, 주어진 선택된 전송 구성요소의 적격성 상태는 적격 숫자를 1씩 감소시킴으로써 조정된다. 임의의 전송 구성요소의 적격 숫자가 0에 도달하면, 그 전송 구성요소는 프레임의 임의의 다음 타임슬롯 내의 서비스에 부적격인 것으로 간주한다. 초기에 지정된 각각의 전송 구성요소에 대한 적격 숫자는 예컨대, 각각의 전송 구성요소에 할당된 가중치를 포함할 수 있다.
본 발명의 다른 측면에 따르면, 주어진 프레임의 스케줄링이 진행중인 이후에, 주어진 프레임 내의 하나 이상의 데이터 블록을 전송하기에 적격인 것으로 이전에 지정된 복수의 전송 구성요소에 새로운 전송 구성요소가 추가될 수 있다. 예컨대, 새로운 전송 구성요소가 할당된 가중치 w를 가지고 주어진 프레임의 t번째 타임슬롯에 관련하여 추가된 가중화 배치에서, 새로운 전송 구성요소의 적격 숫자는 F는 프레임 길이이고 m은 정수이며 f는 분수(0<=f<1)인 계산 m+f=w*(F-t)/F에 기초하여 결정될 수 있다. 보다 구체적으로, 새로운 전송 구성요소의 적격 숫자는 주어진 프레임에서 m으로 설정되거나, 확률이 f인 m 및 확률이 (1-f)인 m+1로 설정될 수 있다.
예시적인 실시예에서 스케줄러는 광범위하게 다양한 다른 스케줄링 회로 배치를 사용하여, 네트워크 프로세서 집적 회로 또는 통신 시스템의 다른 프로세싱 장치에서 구현될 수 있다.
본 발명은 예시적인 무선 네트워크 및 다른 유형의 통신 시스템에 관하여 설명될 것이다. 예시적인 시스템은 본 발명의 기술을 설명하기 위해 특정 방식으로 구성된 각각의 스케줄러를 포함한다. 그러나, 본 발명은 공정성에 악영향을 주지 않으면서 향상된 처리량을 제공하는 것이 바람직한 어떤 통신 시스템 스케줄러에도 보다 일반적으로 적용가능하다는 것을 알아야 한다. 예컨대, 종래의 RR 또는 WRR 스케줄링 알고리즘에 관련된 공정성 레벨에 필적하는 보증된 공정성 레벨이 제공될 수 있다.
도 1은 본 발명의 예시적인 실시예에 따른 통신 시스템(100)의 개략도를 도시한다. 시스템(100)은 송신기(104) 및 채널 상태 구성요소(106)에 결합된 스케줄러(102)를 포함한다. 스케줄러는 이 실시예에서 N개의 사용자 각각에 대한 각각의 큐(queue)(110-1, 110-2 내지 110-N)를 포함하는 전송 구성요소에 결합된다. 이러한 예에서, N개의 사용자는 시스템(100)의 무선 네트워크의 모바일 사용자이고, 종래의 방식으로 송신기(104)와 통신하는 각각의 모바일 사용자 장치(112-1, 112-2 내지 112-N)에 관련된다. 송신기(104)는 예컨대, 무선 네트워크의 기지국 또는 액세스 포인트 중 적어도 일부를 포함할 수 있다.
무선 네트워크는 송신기(104)와 모바일 사용자 장치(112) 사이의 패킷 또는 다른 데이터 배열의 통신을 위해 형성된다. 이러한 모든 데이터 배열은 본 명세서에서 사용된 일반 용어 "데이터 블록"에 포함된다. 본 발명은 데이터 블록의 임의의 특정 크기 또는 구성을 필요로 하지 않음을 알아야 한다. 간단하고 명확한 설명을 위해, 도면은 송신기(104)와 모바일 사용자 장치(112) 사이의 다운링크 통신만을 도시하지만, 유사한 기술이 다른 유형의 전송에 사용될 수 있음을 알아야 한다.
이러한 실시예에서 시스템(100)은 각각의 모바일 사용자(112)에 대한 하나의 큐(110)를 관리하지만, 다른 유형의 큐잉 배열이 사용될 수 있다. 다운링크 전송은 프레임의 타임슬롯 내에서 발생하는 것으로 가정된다. 각각의 타임슬롯 동안에, 스케줄러(102)는 하나 이상의 사용자에게 서비스를 제공한다. 이러한 실시예에서 스케줄러가 각각의 모바일 사용자에 관련된 무선 채널 용량을 인식하도록 가정된다. 이 인식은 채널 상태 구성요소(106)에 의해서나 다른 기술을 사용하여 스케줄러에 제공될 수 있다. 상술한 바와 같이, 모바일 사용자에 관련된 채널 용량은 전형적으로 시변적이고 예측하기 어렵다. 도 3 내지 도 5에 관하여 이하에 보다 상세히 설명되는 바와 같이, 스케줄러는 스케줄링 결정시에 실제 측정된 채널 상태 및 다른 파라미터에 기초한다. 주어진 타임슬롯에 있어서, 스케줄러는 각각 그 타임슬롯 동안 패킷을 전송하도록 스케줄링될 하나 이상의 사용자 큐(110)를 선택한다. 주어진 패킷은 송신기(104)를 통해 모바일 사용자 장치(112) 중 대응하는 하나에 전송된다.
도 1의 시스템(100)은 예컨대, 다른 통상적인 UMTS(Universal Mobile Telecommunications System) 또는 WCDMA(Wideband Code Division Multiple Access) 무선 셀룰러 통신 시스템으로서 구현될 수 있다. 이러한 구현예에서, 도시된 바와 같이, 도 2에 도시된 시스템(100')은 기지국(122,124,126)에 결합된 무선 네트워크 제어기(RNC:radio network controller)(120)를 포함한다. 기지국(122,124,126)은 잘 알려져 있는 UMTS 및 WCDMA 전문어에 따라 노드 B 구성요소로 지칭된다. 이들 구성요소는 UMTS 및 WCDMA 환경 내의 사용자 장비(UE:user eauipment) 구성요소로 지칭되는 모바일 사용자 장치(112)와 통신한다. 도 1의 시스템의 스케줄러(102) 및 채널 상태 구성요소(106)는 RNC(120) 내에 통합되거나, 노드 B 구성요소(122,124,126) 각각으로 복제될 수 있다. 예컨대, UMTS 또는 WCDMA 시스템(100')이 고속 다운링크 패킷 액세스(HSDPA) 특성을 제공하도록 구성되면, 스케줄러는 전형적으로 각각의 노드 B 구성요소 내에 배치되어 빠른 스케줄링을 허용한다.
상술한 HSDPA 특성은 전송 시간 간격(TTIs:transmission time intervals)으로 지칭되는 타임슬롯을 이용하고, 하나 이상의 사용자는 각각의 TTI 내에서 서비스를 제공받을 수 있다. HSDPA 특징부는 주파수 분할 듀플렉스(FDD:frequency division duplex) 모드 또는 시분할 듀플렉스(TDD:time diviision duplex) 모드로 제공될 수 있다. FDD 모드에서, 주어진 TTI는 2 ms의 지속기간을 가지지만, TDD 모드에서, 주어진 TTI는 5 ms 또는 10 ms일 수 있다. 이들 및 다른 TTI는 본 명세서에서 사용되는 일반 용어 "타임슬롯"에 포함된다.
UMTS 또는 WCDMA 환경에서, 전형적으로 HSDPA에서 주어진 노드 B로부터 UE로 데이터를 전달하는 데 사용되는 통신 시스템 채널은 고속 다운링크 공유 채널(HS-DSCH:high speed downlink shared channel)로 지칭된다.
간단하고 명확한 설명을 위해, 이하에 설명되는 바와 같이, 스케줄러(102)는 타임슬롯 당 단일 사용자에게 서비스를 제공하도록 가정될 것이지만, 설명된 기술이 다수의 사용자가 단일 타임슬롯에서 스케줄링될 수 있는 HSDPA 및 다른 배치를 수용하도록 간단한 방식으로 확장될 수 있음을 알아야 한다.
도 1 및 도 2에 나타낸 구성요소의 특정 배치가 예로써만 도시되었음도 지적되어야 한다. 보다 구체적으로, 상술한 바와 같이, 본 발명은 임의의 유형의 무선 네트워크 또는 통신 시스템에서 구현될 수 있고, 임의의 특정 통신 애플리케이션으로 제한되지 않는다.
스케줄러(102)는 하나 이상의 프레임의 타임슬롯 내에서 사용자 큐(110)로부터의 전송을 위한 패킷 또는 다른 데이터 블록을 스케줄링하도록 구성된다. 동작시에, 스케줄러는 초기에 주어진 프레임 내에서 패킷을 전송하기에 적격인 각각의 큐(110)를 지정하고, 이어서 적격인 지정된 큐들로부터 다음 이용가능한 타임슬롯에서 스케줄링하는 큐들 중 특정한 하나를 선택한다. 그 큐가 스케줄링된 후에, 적격성 상태가 조정되고, 선택 및 조정 동작이 주어진 프레임의 나머지 타임슬롯에 대해 반복된다. 본 명세서에서 RR 또는 무선 RR(WiRR:Wireless RR)로 지칭되는, 이러한 스케줄링 알고리즘에 대한 보다 구체적인 예는 도 3의 흐름도 및 도 4의 스케줄링 표와 관련하여 이하에 설명될 것이다. 이어서, 변형 WRR 스케줄링 알고리 즘 유형을 나타내는 대응하는 WiRR 스케줄링 알고리즘의 가중화 버전이 도 5의 흐름도를 참조하여 설명될 것이다.
이하에 보다 상세히 설명되는 바와 같이, 스케줄러(102)는 집적 회로의 행태로 적어도 일부분 구현될 수 있다. 이러한 집적 회로는 도 1의 시스템의 송신기(104)에 관련된 기지국이나 액세스 포인트 또는 도 2의 시스템의 RNC나 노드 B 구성요소와 같은 주어진 통신 시스템 구성요소에서 구현되는 네트워크 프로세서 또는 다른 유형의 프로세서 또는 프로세싱 장치를 포함할 수 있다.
스케줄러(102)는 이상에 인용된 미국 특허 출원 번호 제 10/903,954 호 및 제 10/998,686 호에 설명된 유형, 예컨대, 프레임 매핑 스케줄러일 수 있다. 이들 기술의 사용은 저장된 매핑 테이블을 요청하는 황금 비율 정책 또는 기타 정책에 대하여 매핑 테이블을 저장하는 데 필요한 메모리 양을 실질적으로 감소시킬 수 있다.
또한 또는 그 대신에, 본 발명의 스케줄링 기술은 이상에 인용된 미국 특허 출원 번호 제 10/722,933 호에 개시된 다수의 스케줄링 알고리즘을 지원할 수 있는 융통성있는 스케줄러 아키텍처와 관련하여 사용될 수 있다.
이제 도 3을 참조하면, 도 1의 시스템(100)에서 스케줄러(102)에 의해 구현된 바와 같이, WiRR 스케줄링 알고리즘의 동작이 도시된다. 이러한 스케줄링 알고리즘은 상술한 종래의 RR 스케줄링 알고리즘과 동일한 공정성을 가지지만, 처리량은 실질적으로 더 뛰어나다.
단계(300)에서, 새로운 프레임에 대해 스케줄링 프로세스를 시작한다. 이 시점에서, 모든 N개의 사용자는 초기에 그 프레임 내에서 패킷을 전송하기에 적격인 것으로 지정된다. 따라서 사용자는 각기 예컨대, 적격 상태 및 부적격 상태를 나타내는 2진 적격성 표지를 포함할 수 있는 개별적인 적격성 상태를 가진다. 이러한 2진 적격성 표지를 사용함으로써, 주어진 사용자는 적격이거나 적격이지 않다. 도 5에 관하여 설명되는 WRR 스케줄링 알고리즘의 가중화 버전과 같은 다른 실시예는 다른 유형의 적격성 상태를 사용한다.
단계(302)에서, 다음 이용가능한 타임슬롯에 있어서, 스케줄러(102)는 백로깅되고 적격인 모든 사용자들 중에서 선택되며, 그 사용자는 최상의 채널 용량을 가진다. 사용자들은, 그들이 전송되는 적어도 하나의 패킷을 가진다면 백로깅되도록 가정된다. 도 1의 도면을 참조하면, 도시된 각각의 사용자, 즉, 사용자(1,2,3 및 N)는 각각이 관련된 큐 내에 적어도 하나의 패킷을 가진다는 점에서 백로깅된 것으로 볼 수 있다. 당업자에 의해 알게 되는 바와 같이, 현재의 타임슬롯에서 백로깅되지 않은 사용자는 그 타임슬롯에 대한 스케줄링 프로세스에서 고려할 사항에서 제거될 수 있다. 그러나, 현재의 타임슬롯에서 백로깅되지 않은 사용자는 다음 타임슬롯에서 백로깅될 수 있으므로, 스케줄링시에 고려할 사항에서 이러한 사용자를 제거한다는 것은 나머지 프레임에 대한 고려 사항에서 이들을 제거하는 것으로 해석되어서는 안 된다.
단계(302)에서 언급된 "최상의" 채널 용량은 일반적으로 백로깅되고 적격인 사용자의 최고 채널 용량인 것으로 가정되지만, 이하에 보다 상세히 설명되는 바와 같이, 백로깅되고 적격인 사용자들 중에서 선택하는 데 다양한 측정이 사용될 수 있다.
단계(304)에서, 선택된 사용자는 이용가능한 타임슬롯에서 서비스를 제공받을 수 있고 이어서 그 사용자의 적격성 상태가 조정된다. 이러한 예에서, 선택된 사용자는 이용가능한 타임슬롯에서의 전송을 위한 대응하는 사용자 큐(110)로부터의 패킷을 스케줄링함으로써 "서비스를 제공받는다". 선택된 사용자의 적격성 상태는 그 상태를 부적격으로 설정함으로써 조정된다. 따라서, 선택된 사용자는 현재의 프레임에서 다시 서비스를 제공받지 않을 것이다. 도 5에 관하여 이하에 설명되는 바와 같이, 다른 유형의 적격성 상태 조정은 다른 실시예에서 사용될 수 있다.
단계(306)에서, 스케줄링에 이용가능한 다른 백로깅되고 적격인 사용자가 있는지를 판단한다. 만일 없다면, 프로세스는 단계(300)로 리턴하는데, 이 시점에서 모든 사용자는 이전의 선택에 상관없이 적격 상태로 설정되고, 프로세스는 다시 새로운 프레임에 대해 시작한다. 그러나, 백로깅되고 적격인 다른 사용자가 존재하면, 프로세스는 단계(302)로 리턴하여, 현재 프레임의 다른 타임슬롯에서 그 사용자들 중 하나 이상을 스케줄링한다.
모든 N개의 사용자가 끊임없이 백로깅되는 것으로 가정하면, 하나의 프레임은 N개의 타임슬롯과 동일할 것이다. 상술한 바와 같이, 큐들(110) 중 대응하는 큐가 비어있지 않으면 사용자는 백로깅된 것으로 간주된다. 만일 N개의 사용자가 백로깅되지 않으면, 프레임 길이는 N보다 작을 것이다.
상술한 바와 같이, 단계(302)에서의 선택을 위해 "최상의" 채널 용량을 정의 하는 다수의 다른 방법이 존재한다. 예컨대, 최상의 채널 용량은 최상의 절대 용량 또는 최상의 상대 용량일 수 있으며, 여기서 "최상의"는 일반적으로 "최고"를 나타낸다. 절대 용량 ri는 사용자 i에 대한 채널 용량으로 초당 비트로 측정된다. 상대 용량은
Figure 112007032945611-PAT00001
로 정의될 수 있으며,
Figure 112007032945611-PAT00002
는 사용자 i의 평균 채널 용량이다. 이와 달리, 상대 용량은 ri/Ri로 정의될 수 있으며, Ri는 상술한 PF 스케줄링 알고리즘에서 사용된 정의와 유사하게 사용자 i에 의해 수신된 평균 레이트이다. 평균
Figure 112007032945611-PAT00003
및 Ri는 적합하게 갱신될 수 있다. 2개 이상의 사용자가 동일한 채널 용량을 가지면, 타이(tie)가 임의로 깨지거나, 작은 지수 i를 가진 사용자가 선택될 수 있다.
다수의 사용자가 주어진 타임슬롯에서 서비스를 제공받을 수 있는 상술한 HSDPA 환경 또는 다른 환경에서 사용하기에 적합한 것으로 이러한 타이를 처리하는 다른 기술은 주어진 타임슬롯에서 사용자들에게 동시에 서비스를 제공하는 것이다. 사용자들에게 서로 다른 HSDPA 코드를 할당하는 것을 통해 주어진 타임슬롯에서 다수의 사용자를 스케줄링하는 기술은 이상에서 인용된 미국 특허 출원 대리인 관리 번호 해밀턴 5-1-3-2에 설명된다.
도 3에 도시된 WiRR 스케줄링 알고리즘은 모든 백로깅된 사용자가 각각의 프레임에서 한 번 서비스를 제공받을 것임을 보증함으로써, 보증된 공정성을 이롭게 제공한다. 따라서, 공정성은 종래의 RR 스케줄링 알고리즘에 의해 제공되는 공정성만큼 좋다. 또한, 스케줄링 결정시에 채널 용량을 고려함으로써, 종래의 RR 스 케줄링 알고리즘보다 훨씬 뛰어난 처리량을 제공한다.
이제 도 4를 참조하여 WiRR 스케줄링 알고리즘의 동작의 예를 설명할 것이다. 이 예에서, 4개의 사용자 -즉, N=4- 가 존재한다. 4개의 사용자는 사용자 1, 사용자 2, 사용자 3 및 사용자 4로 나타낸다. 테이블 내의 숫자는 프레임 1 및 프레임 2로 나타낸 2개의 프레임 각각에서, 슬롯 1, 슬롯 2, 슬롯 3 및 슬롯 4로 나타낸 4개의 타임슬롯 각각에 대한 사용자 각각의 채널 용량이다. 이러한 예에 있어서 모든 4개의 사용자는 백로깅된 것으로 가정한다. 다양한 프레임 및 슬롯에 대한 사용자 채널 용량 엔트리는 음영이 없거나, 음영이 약하거나, 음영이 강한 셀 내에 나타낸다. 주어진 프레임 및 슬롯에 있어서, 음영이 없는 셀은 (존재한다면) 적격이지만 선택되지 않은 사용자를 나타내지만, 선택된 적격의 사용자는 음영이 약한 셀로 나타내고, (존재한다면) 부적격의 사용자는 음영이 강한 셀로 나타낸다.
이 예에서 스케줄러(102)에 의해 구현된 WiRR 스케줄링 알고리즘은 프레임 1의 슬롯 1에서, 모든 4개의 사용자가 적격이고, 서비스에 대하여 채널 용량이 9인 사용자 2가 선택되도록 진행한다. 프레임 1의 슬롯 2에서, 이전에 선택된 사용자 2는 더 이상 적격이 아니며, 3개의 사용자로 이루어진 적격 세트에서 채널 용량이 7인 사용자 3이 선택된다. 프레임 1의 슬롯 3에서, 이전에 선택된 사용자 2 및 사용자 3은 더 이상 적격이 아니며, 2개의 사용자로 이루어진 적격 세트에서 채널 용량이 6인 사용자 1이 선택된다. 마지막으로, 프레임 1의 슬롯 4에서, 적격인 사용자는 채널 용량이 5인 사용자 4뿐이며, 그 사용자가 선택된다. 이어서 프로세스는 다음 프레임, 즉, 프레임 2에 대한 스케줄링을 시작하고, 모든 4개의 사용자는 그 프레임에서 스케줄링하기에 적격인 것으로 다시 지정된다. 도시된 바와 같이, 프레임 2의 슬롯 1 내지 슬롯 4에 대한 사용자 선택 순서는 사용자 3, 사용자 2, 사용자 1 및 사용자 4이다.
상술한 WiRR 스케줄링 알고리즘에서 실행되는 시뮬레이션은 WiRR 스케줄링 알고리즘 처리량 성능과 종래의 Max C/I 스케줄링 알고리즘의 처리량 성능을 비교하는 것으로 나타낸다. 시뮬레이션에서, 50개의 모바일 사용자 -즉, N=50- 가 존재하였다. 사용자의 채널 용량은 균일한 분산을 가진 언코릴레이팅 랜덤 프로세스이도록 가정하였다. 또한, 모든 사용자가 항상 백로깅되었다고 가정하였다. WiRR 및종래의 RR 및 Max C/I 스케줄링 알고리즘에 대한 처리량 성능의 관점에서 시뮬레이션 결과는 이하의 표 1에 도시된다. Max C/I 스케줄링 알고리즘은 처리량이 거의 100 %이지만, RR 스케줄링 알고리즘의 처리량은 단지 50 %임을 알 수 있다. WiRR 스케줄링 알고리즘의 처리량 성능은 95.6 %이다. 이들 시뮬레이션 결과는 WiRR 스케줄링 알고리즘이 공정성의 희생 없이 상당히 높은 처리량을 달성함을 나타낸다.
Figure 112007032945611-PAT00004
이제 도 5의 흐름도를 참조하여 WiRR 스케줄링 알고리즘의 가중화 버전을 설명할 것이다. 이러한 예에 있어서, 모든 사용자는 양의 정수인 가중치에 할당되었다고 가정하지만, 다른 실시예에서 다른 유형의 가중치가 사용될 수 있다. 사용자 i에 할당된 가중치는 Wi로 나타낸다. 또한 사용자 각각에 관련된 적격성 상태는 여기서 "적격 숫자"로 지칭된다. 사용자 i에 대한 적격 숫자는 ei로 나타낸다. 주어진 프레임에 대한 스케줄링 프로세스의 시작시에, 모든 i에 대해 ei=wi로 설정한다. 사용자가 서비스를 제공받을 때마다, 적격 숫자는 1씩 감소한다. 적격 숫자가 0에 도달하면, 그 사용자는 주어진 프레임 내의 임의의 다른 고려 사항에 대해 부적격이다.
단계(500)에서, 스케줄링 프로세스는 새로운 프레임에 대해 시작한다. 이 시점에서, 모든 4개의 사용자는 초기에 그 프레임에서 패킷을 전송하기에 적격인 것으로 지정된다. 상술한 바와 같이, 적격성 상태는 초기에 모든 i에 대해 각각의 가중치 wi로 설정되는 각각의 적격 숫자 ei를 포함한다.
단계(502)에서, 프레임의 다음 이용가능한 타임슬롯에 있어서, 스케줄러(102)는 백로깅되며 양의 적격 숫자를 가진 모든 사용자 중에서 선택하며, 그 사용자는 최상의 채널 용량을 가진다.
단계(504)에서, 선택된 사용자는 이용가능한 타임슬롯에서 서비스를 제공받으며 이어서 그 사용자의 적격성 상태가 조정된다. 이 예에서 선택된 사용자는 이용가능한 타임슬롯에 대해 대응하는 사용자 큐(110)로부터의 패킷을 스케줄링함으로써 "서비스를 제공"받는다. 이 예에서 선택된 사용자의 적격성 상태는 선택된 사용자의 적격 숫자를 1씩 감소시킴으로써 조정된다. 즉, 사용자 i가 이 슬롯에서 스케줄링되면, 사용자의 적격 숫자 ei는 ei=ei-1로 계산함으로써 갱신된다.
단계(506)에서, 스케줄링에 이용가능한 다른 백로깅되고 적격인 사용자가 있는지를 판단한다. 만일 없다면, 프로세스는 단계(500)로 리턴하는데, 이 시점에서 모든 사용자는 다시 이전의 선택에 상관없이 그들의 할당된 각각의 가중치로 설정된 적격 숫자를 가지며, 프로세스는 다시 새로운 프레임에 대해 시작한다. 그러나, 백로깅되고 적격인 다른 사용자가 존재하면, 프로세스는 단계(502)로 리턴하여, 현재 프레임의 다른 타임슬롯에서 그 사용자들 중 하나 이상을 스케줄링한다.
다시 말하면, 선택 단계는 예로써 최고 절대 용량 또는 상대 용량을 포함하는 다수의 상이한 측정 중 어떠한 것도 사용할 수 있다. 상대 용량은
Figure 112007032945611-PAT00005
또는 wiri/Ri로 정의될 수 있는데, 상술한 바와 같이
Figure 112007032945611-PAT00006
는 사용자 i의 평균 채널 용량이고, Ri는 사용자 i에 의해 수신된 평균 레이트이다.
상술한 바와 같이 WiRR의 가중화 버전은 종래의 WRR 스케줄링 알고리즘의 공정성에 필적하는 보증된 공정성을 제공한다. 이의 처리량 성능은 종래의 WRR의 처리량 성능보다 뛰어난 것으로 예측된다.
전형적인 무선 네트워크에서, 모바일 사용자는 네트워크 또는 특정 셀 또는 네트워크의 다른 커버리지 영역으로부터 빈번히 제거되거나 이에 추가된다. 스케줄러(102)는 주어진 프레임 동안에 제거되거나 추가된 사용자를 처리하도록 구성될 수 있다. 제거된 사용자에 있어서, 스케줄러는 이들 사용자를 부적격이라고 간단히 지정하거나, 이와 달리 스케줄링 프로세서에서 고려할 사항으로부터 그 사용자를 제거할 수 있다. 추가되는 새로운 사용자에 있어서, 스케줄러는 예로써, 새로운 프레임이 시작할 때까지 대기하거나, 새로운 사용자의 적격 숫자 또는 다른 적격성 상태를 비례적으로, 임의로 또는 다른 기술을 사용하여 설정할 수 있다.
모든 사용자가 끊임없이 백로깅되면, 프레임 길이는 F=∑wi로 주어지며, 이는 큰 숫자일 수 있다. 따라서, 스케줄러가 새로운 사용자를 추가하기 위해 새로운 프레임이 시작할 때까지 대기하면, 새로운 사용자는 긴 시간 동안 대기하는 중일 수 있으며, 이는 이들 사용자에게 공정하지 않을 수 있다. 상술한 제 2 대안은 이러한 문제점을 해결한다. 주어진 프레임의 t번째 슬롯에서, 할당된 가중치 w를 가진 새로운 사용자가 추가된다고 가정한다. m은 정수이고 f는 분수(0<=f<1)인 m+f=w*(F-t)/F라고 가정한다. 간단함을 위해, 새로운 사용자의 적격 숫자는 현재 프레임에서 m으로 설정될 수 있다. 보다 나은 결과에 있어서, 적격 숫자를 확률이 f인 m으로 설정할 수 있고, 적격 숫자를 확률이 (1-f)인 m+1로 설정할 수 있다. 상술한 바와 같이, 새로운 사용자의 적격 숫자 또는 다른 적격성 상태를 결정하는 데 다른 기술이 사용될 수 있다.
이상에서 예시적인 실시예에 관하여 설명된 스케줄링 알고리즘은 공정성의 희생 없이 개선된 처리량 성능을 제공한다. 시뮬레이션은 WiRR 스케줄링 알고리즘의 처리량이 상당히 높음을 나타낸다. 또한, WiRR 스케줄링 알고리즘의 가중화 버전은 종래의 WRR 스케줄링 알고리즘에 비해 개선된 처리량을 제공한다. 또한, WRR의 공정성 성능만큼 좋은 WiRR의 공정성 성능이 보증된다. 다른 이점은 종래의 WRR에 비해 낮은 버스티성을 포함한다.
상술한 바와 같이, 본 명세서에 설명된 스케줄링 알고리즘은 다수의 다른 유형의 통신 시스템에서 구현될 수 있다. 이제 도 6 내지 도 8을 참조하여 다른 예시적인 시스템이 설명될 것이다. 이들 도면에서, 스케줄링 알고리즘은 네트워크 프로세서의 스케줄러에서 구현된다. 이러한 네트워크 프로세서는 도 1 및 도 2에 도시된 바와 같이 무선 네트워크를 포함하는 시스템에서 사용될 수 있지만, 도 6에 도시된 통신 시스템(600)과 같은 다른 유형의 시스템에서도 사용될 수 있다.
시스템(600)은 내부 메모리(604)를 가진 네트워크 프로세서(602)를 포함한다. 네트워크 프로세서(602)는 도시된 바와 같이 외부 메모리(606)에 결합되고, 네트워크(608)와 스위치 패브릭(610) 사이의 패킷 또는 다른 데이터 배열 통신을 위한 인터페이스를 제공하도록 구성된다. 상술한 바와 같이, 이러한 모든 데이터 배열은 본 명세서에서 사용된 일반 용어 "데이터 블록"에 포함된다. 네트워크(608)는 도 1 및 도 2의 시스템 내의 무선 네트워크들 중 하나의 일부분에 대응하는 무선 네트워크일 수 있지만, 네트워크 프로세서(602) 및 스위치 패브릭(610)은 기지국, 네트워크 제어기 또는 시스템과 같은 다른 구성요소에서 구현될 수 있다.
네트워크 프로세서(602) 및 관련 외부 메모리(606)는 예컨대, 라우터, 스위치 또는 다른 시스템 구성요소의 회선 카드 또는 포트 카드 상에 설치된 하나 이상의 집적 회로로서 구현될 수 있다.
도 7은 도 6의 시스템(600)의 일부인 예시적인 회선 카드 실시예를 도시한다. 이러한 실시예에서, 시스템은 자체 상에 설치된 적어도 하나의 집적 회로(702)를 가진 회선 카드(700)를 포함한다. 집적 회로(702)는 외부 메모리(604)를 가진 네트워크 프로세서(602)를 포함한다. 네트워크 프로세서(602)는 회선 카드(700) 상의 외부 메모리(606)와 상호작용한다. 외부 메모리(606)는 예컨대, SRAM 또는 DRAM으로서 네트워크 프로세서 집적 회로(702)에 서비스를 제공할 수 있다. 이러한 메모리는 종래의 방식으로 구성될 수 있다. 적합한 호스트 프로세서도 회선 카드(700) 상에 설치될 수 있으며, 회선 카드(700) 상의 하나 이상의 네트워크 프로세서 집적 회로의 동작을 프로그래밍하고 제어하는 데 사용될 수 있다.
도 6 및 도 7에 도시된 통신 시스템의 일부는 명료한 설명을 위해 상당히 간단해진다. 그러나, 시스템이 도 7에 도시된 것과 같은 다수의 회선 카드를 포함하는 라우터, 스위치 또는 다른 구성요소를 포함할 수 있으며, 각각의 회선 카드는 다수의 집적 회로를 포함할 수 있음을 알아야 한다. 이와 유사한 실시예는 포트 카드의 형태로 구현될 수 있다. 그러나, 본 발명은 라우터, 스위치 또는 다른 구성요소 내에 이러한 카드 기반 구현을 필요로 하지 않는다.
도 6 및 도 7에 도시된 구성요소의 특정 배열이 단지 예시적일 뿐이라는 것도 알아야 한다. 보다 구체적으로, 상술한 바와 같이, 본 발명은 임의의 유형의 프로세서 또는 다른 통신 시스템 프로세싱 장치에서 구현될 수 있으며, 임의의 특정 네트워크 기반 프로세싱 애플리케이션으로 제한되지 않는다.
본 명세서에서 사용된 용어 "프로세서"는 제한 없이 예로써 마이크로프로세서, 중앙 처리 장치(CPU), 디지털 신호 프로세서(DSP), ASIC 또는 다른 유형의 데이터 프로세싱 장치와 같은 구성요소뿐만 아니라 이러한 구성요소의 일부 및 조합을 이용하여 구현될 수 있다.
또한, 도 6 및 도 7에 도시된 바와 같이 시스템(600) 및 네트워크 프로세서(602)는 이러한 시스템 및 네트워크 프로세서의 종래 구현에서 일반적으로 발견되는 유형인 하나 이상의 구성요소를 포함하는 구체적으로 도시된 구성요소 이외에 또는 대신에 다른 구성요소를 포함한다. 예컨대, 네트워크 프로세서는 분류기, 큐잉 및 배정 로직, 하나 이상의 메모리 제어기, 네트워크 프로세서와 네트워크(608)를 연결하는 인터페이스 회로, 스위치 패브릭(610), 호스트 프로세서 또는 다른 외부 장치(들)뿐만 아니라, 도면에 명백하게 도시되지 않은 다른 종래의 구성요소도 포함할 수 있다. 당업자가 잘 알고 있는 이들 및 다른 종래의 구성요소는 본 명세서에서 상세히 설명되지 않는다.
본 명세서에서 설명된 네트워크 프로세서(602)의 기능은 소프트웨어 프로그램 코드의 형태로 적어도 일부 구현될 수 있다. 예컨대, 네트워크 프로세서 내의 스케줄링 동작의 성능에 관련된 구성요소는 외부 호스트 프로세서 또는 다른 적합한 메커니즘을 통해 네트워크 프로세서에 공급될 수 있는 인스트럭션 또는 다른 소프트웨어를 통해 프로그램가능한 구성요소를 이용하여 적어도 일부 구현될 수 있다. 예컨대, 특정 스케줄링 알고리즘의 특성을 나타내는 정보 또는 관련 트래픽 형성 정보는 관련 호스트 프로세서 또는 다른 적합한 메커니즘으로부터 네트워크 프로세서에 제공될 수 있다.
도 8은 본 발명의 예시적인 실시예에서 네트워크 프로세서(602)의 보다 상세한 도면을 도시한다. 이 실시예에서 네트워크 프로세서(602)는 스케줄러(800), 전송 큐(802), 트래픽 형성기(804), 가중치 테이블(810) 및 매핑 테이블(812)을 포함한다. 동작시에, 스케줄러(800)는 명백히 도시되지 않은 하나 이상의 전송 매체를 통한 전송에 대하여 전송 큐(802)에 관련된 데이터 블록을 스케줄링한다. 전송을 위한 전송 큐(802)에 관련된 데이터 블록을 스케줄링할 때, 이 스케줄링은 트래픽 형성기(804)로부터의 트래픽 형성 정보에 관련하여 또는 이러한 정보 없이, 가중치 테이블(810) 및 매핑 테이블(812)을 이용한다.
상술한 바와 같이, 네트워크 프로세서(602)는 예컨대, 이상에 인용된 미국 특허 출원에 설명된 유형 또는 당업자에게 알려져 있는 종래의 유형과 같은 추가 구성요소를 포함할 수 있으며, 이러한 구성요소는 본 명세서에서 더 설명되지 않으며, 다른 명세서에서 설명된다.
가중치 테이블(810) 및 매핑 테이블(812)은 네트워크 프로세서(602)의 내부 메모리(604)에 적어도 일부 저장될 수 있으며, 이와 달리 네트워크 프로세서(602)의 외부 메모리(606)에도 적어도 일부 저장될 수 있다. 내부 메모리를 사용하여 저장될 때, 이러한 메모리 중 적어도 일부는 스케줄러(800) 또는 다른 스케줄링 회로에 내장될 수 있다.
테이블 구성요소(810,812) 이외에, 스케줄러(800)는 이에 관련된 다수의 다른 타임슬롯 테이블 또는 이상에 인용된 미국 특허 출원에 설명된 유형인 정적 또는 동적 테이블 기반 스케줄링 또는 종래의 실시에 알려져 있는 유형에서 사용하기에 적합한 다른 유형의 테이블 구성요소를 포함하거나 가질 수 있다.
전송 큐(802)는 복수의 전송 구성요소를 포함하는 것처럼 보일 수 있다. 예컨대, 전송 큐는 복수의 전송 큐 및 관련 제어 로직을 포함할 수 있으며, 각각의 전송 큐는 전송 구성요소에 대응한다. 그러나, 본 명세서에서 사용된 용어 "전송 구성요소"는 보다 일반적으로 하나 이상의 데이터 블록의 임의의 소스, 또는 네트워크 프로세서(602) 내의 전송에 대해 스케줄링 가능한 다른 구성요소를 포함하는 것으로 해석된다는 것에 유의해야 한다.
패킷 또는 다른 데이터 블록은 관련된 네트워크 프로세서 데이터 경로로부터 전송 큐(802)의 전송 구성요소 내에 인큐잉(enqueued)될 수 있으며, 이는 도면에 명백히 도시되지 않는다. 이것은 이러한 데이터 경로로부터 수신된 관련 데이터 블록 및 패킷 인큐 메시지에 관련하여 발생할 수 있다. 이와 유사하게, 예컨대, 데이터 경로로 전달되는 관련 데이터 블록 및 패킷 디큐 메시지에 관련하여 전송시에 패킷 또는 다른 데이터 블록은 전송 구성요소로부터 데이터 경로로 디큐잉(dequeued)될 수 있다.
트래픽 형성기(804)는 예로써, 전송 큐(802)의 전송 구성요소로부터의 데이터 블록 전송에 대한 하나 이상의 트래픽 형성 요구조건을 알려진 방식으로 설정하는 종래의 다른 트래픽 형성 엔진으로서 구현될 수 있다. 트래픽 형성기(804)는 스케줄러(800)를 통해 전송 큐(802)로부터 큐 및 스케줄러 상태에 대한 정보를 수신할 수 있다. 트래픽 형성기는 큐 전송 간격 및 CoS(class of service)를 설정하는 우선순위 매김 또는 하나 이상의 전송 구성요소 또는 그들의 대응하는 네트워크 접속에 대한 다른 바람직한 서비스 레벨과 같은 트래픽 형성 정보를 생성할 수 있다.
상술한 바와 같이, 네트워크 프로세서 상태에서, 전송 구성요소, 즉, 스케줄링되는 엔트리는 큐를 포함할 수 있다. 그러나, 본 발명은 데이터 블록이 전송되는 임의의 유형의 구성요소, 보다 일반적으로, 통신 시스템 프로세싱 장치 내의 임의의 유형의 스케줄링 가능한 구성요소를 스케줄링하는 데 사용될 수 있다. 이러한 구성요소는 본 명세서에서 사용된 일반 용어 "전송 구성요소"에 포함되고, 본 명세서에서 "사용자"로도 지칭될 수 있다.
도 8의 실시예에서 스케줄러(800)는 상술한 WiRR 스케줄링 알고리즘 또는 이의 가중화 버전과 같은 스케줄링 알고리즘을 구현하도록 구성된다.
스케줄러(102,800)는 본 명세서에서 "스케줄링 회로"로서 보다 일반적으로 지칭되는 것들의 예를 예시한다. 다른 실시예에서, 스케줄링 회로는 하나 이상의 테이블 또는 본 명세서에서 설명된 스케줄링 기술을 구현할 수 있는 하나 이상의 하드웨어, 소프트웨어 및 펌웨어의 다른 배치를 포함할 수 있다. 따라서, 도면에서는 스케줄러(800)로부터 분리된 것으로 도시되었지만, 가중 테이블(810) 및 매핑 테이블(812) 또는 이들의 적절한 일부는 스케줄링 회로 또는 본 발명에 따른 관련된 메모리 내에 적어도 부분적으로 통합될 수 있다.
스케줄러(102,800)는 임의의 로직 게이트, 프로세싱 구성요소 또는 본 명세서에서 설명된 유형의 스케줄링 기능을 제공할 수 있는 다른 회로의 배치를 이용할 수 있다. 따라서 본 발명에 따른 스케줄링 회로는 본 발명에 따른 스케줄링 기능 중 적어도 일부를 제공하도록 소프트웨어 제어 하에서 적응가능한 종래의 범용 네트워크 프로세서 회로를 포함할 수 있다. 이러한 다수의 회로 배치는 당업자에게 쉽게 자명해질 것이므로, 본 명세서에서 설명하지 않는다.
상술한 바와 같이, 본 발명의 주어진 실시예는 하나 이상의 집적 회로로 구현될 수 있다. 이러한 배치에서, 복수의 동일한 다이는 전형적으로 웨이퍼의 표면 상에 반복 패턴으로 형성된다. 각 다이는 본 명세서에서 설명된 장치를 포함할 수 있고, 다른 구조 또는 회로를 포함할 수 있다. 각각의 다이는 웨이퍼로부터 절단되거나 다이싱(diced)되고, 이어서 집적 회로로 패키징된다. 당업자는 집적 회로를 산출하기 위해 웨이퍼를 다이싱하고 다이를 패키징하는 방법을 알 것이다. 따라서 제조된 집적 회로는 본 발명의 일부로 간주된다.
다시 말하면, 상술한 본 발명의 실시예가 예시적일 뿐이라는 것이 강조되어야 한다. 예컨대, 도 8의 예시적인 실시예는 관련된 테이블 또는 테이블들로부터 분리된 스케줄러를 이용하지만, 이들 구성요소 또는 이들의 일부는 본 발명에 따른 스케줄링 회로에 통합될 수 있다. 이와 유사하게, 전송 큐(802) 및 트래픽 형성기(804)는 도 8의 실시예에 관련하여 스케줄러(800)로부터 분리된 것으로 설명되지만, 관련 기능은 본 발명에 따른 스케줄링 회로 내에서 적어도 일부 구현될 수 있다. 다른 실시예는 설명된 기능을 구현하는 프로세싱 구성요소의 다른 유형 및 배치를 사용할 수 있다. 예컨대, 테이블은 내부 메모리, 외부 메모리 또는 내부 및 외부 메모리의 조합 내에 구현될 수 있다. 내부 메모리의 경우에, 이러한 메모리의 적어도 일부는 스케줄링 회로에 내장될 수 있다. 변형 WRR 스케줄링과 다른 다양한 유형의 가중 기반 스케줄링이 사용될 수 있다. 또한, 광범위하게 다양한 다른 스케줄링 정책이 지원될 수 있다. 후속하는 특허청구범위 내의 이들 및 다른 다수의 실시예는 당업자에게 자명할 것이다.
본 발명에 따르면, 데이터 블록 스케줄링 방법과 장치 및 이를 포함하는 집적 회로를 제공할 수 있다.

Claims (10)

  1. 통신 시스템에서 프레임의 타임슬롯 내의 복수의 전송 구성요소로부터의 전송을 위한 데이터 블록을 스케줄링하는 방법에 있어서,
    상기 전송 구성요소 각각을, 주어진 프레임 내의 하나 이상의 데이터 블록을 전송하기에 적격인 것으로 지정하는 단계와,
    상기 주어진 프레임 내의 하나 이상의 데이터 블록을 전송하기에 적격인 것으로 지정된 상기 전송 구성요소들로부터, 다음 이용가능한 타임슬롯에서 스케줄링할 상기 전송 구성요소 중 적어도 하나를 선택하는 단계와,
    상기 선택된 전송 구성요소(들)의 적격성 상태(eligibility status)를 조정하는 단계와,
    상기 주어진 프레임의 하나 이상의 나머지 타임슬롯에 대해 상기 선택하는 단계와 조정하는 단계를 반복하는 단계를 포함하는
    데이터 블록 스케줄링 방법.
  2. 제 1 항에 있어서,
    상기 선택된 전송 구성요소(들)의 적격성 상태를 조정하는 상기 단계는 상기 선택된 전송 구성요소(들)를 상기 주어진 프레임 내의 하나 이상의 다른 데이터 블록을 전송하기에 부적격인 것으로 지정하는 단계를 더 포함하는
    데이터 블록 스케줄링 방법.
  3. 제 1 항에 있어서,
    다음 이용가능한 타임슬롯에서 스케줄링할 상기 전송 구성요소 중 적어도 하나를 선택하는 상기 단계는 적격인 것으로 지정된 상기 전송 구성요소들로부터 최고 채널 용량을 가진 상기 전송 구성요소 중 적어도 하나를 선택하는 단계를 더 포함하는
    데이터 블록 스케줄링 방법.
  4. 제 1 항에 있어서,
    상기 주어진 선택된 전송 구성요소에 대한 적격성 상태는 적격 상태 및 부적격 상태를 가진 2진 적격성 표지(a binary eligibility indicator)를 포함하는
    데이터 블록 스케줄링 방법.
  5. 제 4 항에 있어서,
    상기 선택된 전송 구성요소(들)의 적격성 상태를 조정하는 상기 단계는 상기 주어진 선택된 전송 구성요소에 대한 상기 2진 적격성 표지를 적격 상태에서 부적 격 상태로 변경하는 단계를 더 포함하는
    데이터 블록 스케줄링 방법.
  6. 제 1 항에 있어서,
    상기 주어진 선택된 전송 구성요소에 대한 적격성 상태는 적격 숫자(an eligible number)를 포함하는
    데이터 블록 스케줄링 방법.
  7. 제 6 항에 있어서,
    상기 전송 구성요소 각각을 주어진 프레임 내의 하나 이상의 데이터 블록을 전송하기에 적격인 것으로 지정하는 상기 단계는 상기 전송 구성요소 중 각각의 전송 구성요소에 대한 적격 숫자를 지정하는 단계를 더 포함하는
    데이터 블록 스케줄링 방법.
  8. 제 6 항에 있어서,
    상기 선택된 전송 구성요소(들)의 적격성 상태를 조정하는 상기 단계는 상기 주어진 선택된 전송 구성요소의 적격 숫자를 변경하는 단계를 더 포함하는
    데이터 블록 스케줄링 방법.
  9. 통신 시스템에서 프레임의 타임슬롯 내의 복수의 전송 구성요소로부터의 전송을 위한 데이터 블록을 스케줄링하는 장치에 있어서,
    상기 전송 구성요소에 결합되는 스케줄러를 포함하되,
    상기 스케줄러는 상기 전송 구성요소 각각을 주어진 프레임 내의 하나 이상의 데이터 블록을 전송하기에 적격인 것으로 지정하고, 상기 주어진 프레임 내의 하나 이상의 데이터 블록을 전송하기에 적격인 것으로 지정된 상기 전송 구성요소들로부터 다음 이용가능한 타임슬롯에서 스케줄링할 상기 전송 구성요소 중 적어도 하나를 선택하며, 상기 선택된 전송 구성요소(들)의 적격성 상태를 조정하고, 상기 주어진 프레임의 하나 이상의 나머지 타임슬롯에 대해 상기 선택과 조정을 반복하기에 적합한
    데이터 블록 스케줄링 장치.
  10. 집적 회로에 있어서,
    프레임의 타임슬롯 내의 복수의 전송 구성요소로부터의 전송을 위한 데이터 블록을 스케줄링하도록 구성되는 스케줄러를 구비한 프로세싱 장치를 포함하되,
    상기 스케줄러는 상기 전송 구성요소에 결합되고,
    상기 스케줄러는 상기 전송 구성요소 각각을 주어진 프레임 내의 하나 이상의 데이터 블록을 전송하기에 적격인 것으로 지정하고, 상기 주어진 프레임 내의 하나 이상의 데이터 블록을 전송하기에 적격인 것으로 지정된 상기 전송 구성요소들로부터 다음 이용가능한 타임슬롯에서 스케줄링할 상기 전송 구성요소 중 적어도 하나를 선택하며, 상기 선택된 전송 구성요소(들)의 적격성 상태를 조정하고, 상기 주어진 프레임의 하나 이상의 나머지 타임슬롯에 대해 상기 선택과 조정을 반복하기에 적합한
    집적 회로.
KR1020070042539A 2006-05-01 2007-05-02 데이터 블록 스케줄링 방법과 장치 및 이를 포함하는 집적회로 KR101303390B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/415,546 2006-05-01
US11/415,546 US8228920B2 (en) 2006-05-01 2006-05-01 High-throughput scheduler with guaranteed fairness for wireless networks and other applications

Publications (2)

Publication Number Publication Date
KR20070106939A true KR20070106939A (ko) 2007-11-06
KR101303390B1 KR101303390B1 (ko) 2013-09-03

Family

ID=38473892

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070042539A KR101303390B1 (ko) 2006-05-01 2007-05-02 데이터 블록 스케줄링 방법과 장치 및 이를 포함하는 집적회로

Country Status (4)

Country Link
US (1) US8228920B2 (ko)
EP (1) EP1853016A1 (ko)
JP (1) JP5164425B2 (ko)
KR (1) KR101303390B1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101098500B (zh) * 2006-06-30 2010-05-12 联想(北京)有限公司 融合移动通信网络与视频广播网络的通信系统及通信方法
US8027346B1 (en) * 2008-05-29 2011-09-27 Avaya Inc. Method and system for scheduler dominated merge of state changes
EP2244516B1 (en) * 2009-04-23 2016-05-18 Alcatel Lucent Relaying data between a base station and user equipment
US10083410B2 (en) * 2013-09-19 2018-09-25 Oracle International Corporation Method and system for implementing a cloud based email distribution fairness algorithm
US9525535B1 (en) 2014-08-08 2016-12-20 Sprint Spectrum L.P. Systems and methods for scheduling transmissions from an access node
CN109156022B (zh) 2016-06-22 2022-08-09 英特尔公司 用于全双工调度的通信设备和方法
CN107801204B (zh) * 2016-08-29 2022-03-22 中兴通讯股份有限公司 流量分配方法及无线接入点

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995011204A1 (fr) 1993-10-21 1995-04-27 Chichibu Onoda Cement Corporation Composition a base aqueuse et auto-nivelante
US6289221B1 (en) * 1998-01-20 2001-09-11 Siemens Aktiengesellschaft Mobile radio telephone system
US6393012B1 (en) 1999-01-13 2002-05-21 Qualcomm Inc. System for allocating resources in a communication system
US7406098B2 (en) * 1999-01-13 2008-07-29 Qualcomm Incorporated Resource allocation in a communication system supporting application flows having quality of service requirements
US6470016B1 (en) * 1999-02-09 2002-10-22 Nortel Networks Limited Servicing output queues dynamically according to bandwidth allocation in a frame environment
US6763009B1 (en) * 1999-12-03 2004-07-13 Lucent Technologies Inc. Down-link transmission scheduling in CDMA data networks
US6807426B2 (en) 2001-04-12 2004-10-19 Qualcomm Incorporated Method and apparatus for scheduling transmissions in a communication system
US6985462B2 (en) * 2001-10-05 2006-01-10 Telefonaktiebolaget Lm Ericsson (Publ) System and method for user scheduling in a communication network
US6687651B2 (en) * 2002-01-10 2004-02-03 Fujitsu Network Communications, Inc. Real time estimation of equivalent bandwidth utilization
US7042858B1 (en) * 2002-03-22 2006-05-09 Jianglei Ma Soft handoff for OFDM
US7298719B2 (en) * 2002-04-15 2007-11-20 Lucent Technologies Inc. Method for scheduling wireless downlink transmissions subject to rate constraints
WO2004017584A1 (en) * 2002-08-16 2004-02-26 Nuasis Corporation Contact center architecture
CA2398755A1 (en) * 2002-08-19 2004-02-19 Faisal Shad Scheduler for a shared channel
JP2004147275A (ja) * 2002-08-30 2004-05-20 Matsushita Electric Ind Co Ltd パケット送信スケジューリング方法および基地局装置
US7602722B2 (en) * 2002-12-04 2009-10-13 Nortel Networks Limited Mobile assisted fast scheduling for the reverse link
JP2004187237A (ja) * 2002-12-06 2004-07-02 Matsushita Electric Ind Co Ltd 基地局装置およびパケット送信スケジューリング方法
US7734805B2 (en) * 2003-04-15 2010-06-08 Alcatel-Lucent Usa Inc. Method for scheduling transmissions in communication systems
US8099098B2 (en) * 2003-04-24 2012-01-17 Alcatel Lucent Methods and apparatus for planning wireless data networks using analytical modeling of user level performance
US7283814B2 (en) * 2003-07-31 2007-10-16 Lucent Technologies Inc. Method and apparatus for scheduling transmissions in wireless data networks
JP4335619B2 (ja) * 2003-09-04 2009-09-30 株式会社エヌ・ティ・ティ・ドコモ パケット優先制御装置及びその方法
US8493998B2 (en) * 2003-11-19 2013-07-23 Alcatel Lucent Method and apparatus for scheduling forward data bursts in wireless network
US7477636B2 (en) 2003-11-26 2009-01-13 Agere Systems Inc. Processor with scheduler architecture supporting multiple distinct scheduling algorithms
US8059589B2 (en) * 2004-06-09 2011-11-15 Qualcomm Incorporated Dynamic restrictive reuse scheduler
FR2873259A1 (fr) * 2004-07-13 2006-01-20 France Telecom Procede de selection de stations receptrices dans un systeme de transmission radio de donnees
US7680124B2 (en) 2004-07-30 2010-03-16 Agere Systems Inc. Frame mapping scheduler for scheduling data blocks using a mapping table and a weight table
GB0420164D0 (en) * 2004-09-10 2004-10-13 Nokia Corp A scheduler
US7352752B2 (en) 2004-11-29 2008-04-01 Agere Systems Inc. Frame mapping scheduler with compressed mapping table
US7477622B2 (en) * 2005-01-28 2009-01-13 Qualcomm, Incorporated Superposition coding in a wireless communication system
KR100922959B1 (ko) * 2005-03-29 2009-10-22 삼성전자주식회사 다중 안테나 시스템에서의 자원 스케줄링 장치 및 방법
US7660244B2 (en) * 2005-06-20 2010-02-09 Alcatel-Lucent Usa Inc. Method and apparatus for quality-of-service based admission control using a virtual scheduler
US7768973B2 (en) * 2006-04-21 2010-08-03 Fujitsu Limited Proportional fair scheduler for OFDMA wireless systems with QOS constraints
US8085819B2 (en) * 2006-04-24 2011-12-27 Qualcomm Incorporated Superposition coding in a wireless communication system
US7769038B2 (en) * 2006-05-01 2010-08-03 Agere Systems Inc. Wireless network scheduling methods and apparatus based on both waiting time and occupancy

Also Published As

Publication number Publication date
US8228920B2 (en) 2012-07-24
JP2007300642A (ja) 2007-11-15
JP5164425B2 (ja) 2013-03-21
EP1853016A1 (en) 2007-11-07
US20070253375A1 (en) 2007-11-01
KR101303390B1 (ko) 2013-09-03

Similar Documents

Publication Publication Date Title
US11729747B2 (en) Scheduling transmissions on channels in a wireless network
KR101384910B1 (ko) 데이터 블록 스케줄링 방법과 장치 및 이를 포함하는 집적회로
KR101303390B1 (ko) 데이터 블록 스케줄링 방법과 장치 및 이를 포함하는 집적회로
US8379518B2 (en) Multi-stage scheduler with processor resource and bandwidth resource allocation
KR20120081204A (ko) 무선 통신 시스템에서 서비스 품질 (QoS) 송신의 스케줄링을 위한 방법 및 장치
EP2057797B1 (en) Scheduling methods and apparatus based on adjusted channel capacity
EP1817878A2 (en) Air-time fair transmission regulation without explicit traffic specifications for wireless networks
EP1653683B1 (en) Dynamic setting of transmission scheduler algorithms
US7724723B2 (en) High-throughput scheduler with integer-based eligible number initialization
US7830857B2 (en) Credit-based wireless network scheduling
US7680124B2 (en) Frame mapping scheduler for scheduling data blocks using a mapping table and a weight table
Sağlam et al. A new long‐term evolution downlink delay based lean scheduler
Shao et al. Dynamic resource control for high-speed downlink packet access wireless channel
Hong et al. Call admission control scheme with bandwidth borrowing in integrated services network

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160727

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170804

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180730

Year of fee payment: 6