KR100679091B1 - 블루투스 환경에서의 패킷 스케줄링 장치 및 그 방법 - Google Patents

블루투스 환경에서의 패킷 스케줄링 장치 및 그 방법 Download PDF

Info

Publication number
KR100679091B1
KR100679091B1 KR1020050111361A KR20050111361A KR100679091B1 KR 100679091 B1 KR100679091 B1 KR 100679091B1 KR 1020050111361 A KR1020050111361 A KR 1020050111361A KR 20050111361 A KR20050111361 A KR 20050111361A KR 100679091 B1 KR100679091 B1 KR 100679091B1
Authority
KR
South Korea
Prior art keywords
slot
packet
scheduling
size
slaves
Prior art date
Application number
KR1020050111361A
Other languages
English (en)
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 KR1020050111361A priority Critical patent/KR100679091B1/ko
Application granted granted Critical
Publication of KR100679091B1 publication Critical patent/KR100679091B1/ko

Links

Images

Classifications

    • 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/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/628Queue scheduling characterised by scheduling criteria for service slots or service orders based on packet size, e.g. shortest packet first
    • 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/36Flow control; Congestion control by determining packet size, e.g. maximum transfer unit [MTU]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • H04L47/527Quantum based scheduling, e.g. credit or deficit based scheduling or token bank

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Small-Scale Networks (AREA)

Abstract

블루투스에서의 패킷 스케줄링 장치 및 그 방법에 관한 것으로, 블루투스환경에서 패킷을 스케줄링하는 스케줄링 장치에 있어서, 다수의 제1의 슬레이브의 각각의 큐 앞 부분에 있는 패킷을 레이블을 통하여 감지하는 감지수단, 상기 패킷의 사이즈를 검사하는 검사수단, 패킷에 빈패킹(Bin packing) 방식을 적용하여 슬롯에 채우는 수단, 슬롯에 채워진 패킷을 다수의 제2의 슬레이브로 각각 송신하는 송신수단을 포함하는 구성을 마련한다.
상기와 같은 스케줄링 장치 및 그 방법을 이용하는 것에 의해, 성능이 우수한 블루투스 환경을 마련하고, 슬롯의 낭비를 최대한 줄일 수 있게 할 수 있다.
블루투스, 슬롯, 패킷, 빈패킹, DRR

Description

블루투스 환경에서의 패킷 스케줄링 장치 및 그 방법{PACKET SCHEDULING APPARATUS IN BLUETOOTH ENVIRONMENTAL AND METHOD THEREOF}
도 1은 본 발명에 따른 도 1은 DRR과 빈패킹(Bin packing)을 이용한 스케줄링 기법을 도식화 도면,
도 2는 본 발명에 따른 DRR 알고리즘과 빈패킹 알고리즘을 합한 하나의 의사 코드를 나타낸 도면,
도 3은 본 발명에 따른 블루투스환경에서 패킷을 스케줄링하는 스케줄링 방법을 설명하는 흐름도,
도 4는 여러 다른 스케줄링 알고리즘과 본 발명에서 제안된 스케줄링 알고리즘과의 성능평가 비교를 나타낸 도면,
도 5는 각각의 스케줄링 알고리즘에 대한 사용된 전체 슬롯 수를 나타낸 도면.
도 6은 종래의 N개의 클라이언트 그룹들이 N개의 다중 통신선로를 공유하는 구조의 스위치 네트워크를 나타내는 도면,
본 발명은 블루투스에서의 패킷 스케줄링 장치 및 그 방법에 관한 것으로, 특히 블루투스 무선 환경에서 DRR(deficit Round Robin)과 빈패킹(Bin Packing)의 넥스트 피트(Next Fit)방식을 결합한 알고리즘을 적용하는 패킷 스케줄링 장치 및 그 방법에 관한 것이다.
일반적으로 블루투스(Bluetooth)는 근거리 무선 인터페이스 표준으로서, 개발목적은 기존의 복잡한 케이블을 대체하고 기능추가 및 성능 향상이 편리한 세계적으로 통일된 통신 방식을 제안하고자 함이며, 그 사용 예로는 무선 마우스, 무선 프린터, 휴대전화 등 모바일 단말기, 무선 네트워크 등이 있다.
블루투스는 마스터-슬레이브 방식으로 복수개의 슬레이브들과 마스터 간의 통신을 위하여 시분할 방식을 사용하며, 2.4GHz ISM 밴드에서의 전자레인지 등과 같은 것으로 인한 간섭을 피하기 위해 주파수 도약(hopping) 이라는 방식을 사용하고 거리는 10 미터 미만인 에드혹 피코넷(Piconet) 구조를 가진다. 또한 통상 마스터는 짝수 번째 슬롯에서 데이터를 전송하고 슬레이브는 홀수 번재 슬롯에서 데이터를 전송한다,
현재 블루투스는 전송방식으로 TDD를 사용하는데, 피코넷의 마스터는 슬레이브와의 통신에 대한 슬롯 스케줄링을 책임진다. 한 프레임은 한 세트의 시분할(Time division) 이중 슬롯으로 구성되고 각각의 블루투스 패킷은 다중 슬롯 패킷과 같이 1, 3 또는 5 슬롯을 가질 수 있다.
데이터는 마스터-슬레이브가 한 쌍으로 구성되어서 서로 간에 전송을 한다, 이 과정에서 POLL 패킷이나 NULL 패킷을 보냄으로 인해서 슬롯의 낭비와 시간의 낭 비가 발생하게 된다.
블루투스에서 사용되는 스케줄링 알고리즘은 주로 라운드로빈(RR) 방식인데, 이 알고리즘은 상술한 바와 같이 슬롯과 시간을 낭비하는 단점을 가지고 있다.
또한 현존하는 많은 데이터 통신망 시스템에는 임의의 입력 통신선로를 임의의 출력 통신 선로에 연결하여 메시지 트래픽을 전송 가능하게 하는 라우터(Router)라고 불리는 장치가 사용된다. 이때, 하나의 입력 통신선로에서 또 다른 하나의 출력 통신선로로만 메시지 트래픽을 요구한다면 전혀 문제될 게 없다. 그렇지만, 여러 입력 통신선로(Plurality Input Communication Links)에서 하나의 출력 통신선로(Output Communication Link)로의 메시지 트래픽(Message Traffic)을 요구(Request)한다면 어느 입력 통신선로에게 서비스를 제공해야 되는가라는 문제가 발생한다. 특히, 이러한 문제는 데이터 통신망의 전송 용량(Transmission Capacity)이 커지고 전송선로(Communication Link)가 많아질수록 더욱 커지기 때문에 더욱 고속의 대용량 라우터(Router)가 필요해진다.
이러한 라우터에서, 메시지 트래픽 요구가 경합할 때 공유 통신선로를 공정하게 중재하는 스케줄링방법으로서, 라운드로빈 스케줄링(Round-Robin Scheduling)방법이 있다. 이러한 라운드로빈 스케줄링방법은, 모든 입력 통신선로(Input Communication Link)의 클라이언트(Clients)들을 공정하게 미리 정해진 순서에 따라 공유 출력 통신선로(Shared Output Communication Link)에 할당해 주는 방법으로서, 매우 간단하면서도 효율적인 스케줄링 방법(Scheduling Method)이다.
서비스 요구가 경합되면, 미리 정해진 순서에 따라 높은 우선 순위(High Priority)의 입력 통신선로가 낮은 우선 순위(Low Priority)의 입력 통신선로보다 먼저 출력 통신선로를 이용할 수 있게 할당된다. 그리고, 현재 최우선 순위(Highest Priority)로 할당된 입력 통신선로가 서비스를 제공받은 다음에는, 다음 라운드로빈 스케줄링에서는 가장 낮은 우선 순위(Lowest Priority)의 입력 통신선로가 된다. 또한, 현재 최우선으로 할당된 입력 통신선로 바로 다음의 입력 통신선로가 다음 라운드로빈 스케줄링에서 최우선 순위의 입력 통신선로가 된다.
이러한, 라운드로빈 스케줄링방법은 공유 통신선로의 수가 증가할수록 스케줄링을 하는데 많은 시간이 걸리기 때문에 고속 스케줄링(High-Sped Scheduling)을 위해 여러 가지 다른 방법들이 시도되었다. 이러한 다른 방법으로서, 계층적인(Hierarchical) 라운드로빈 스케줄링(Round-Robin Scheduling)방법과 트리(Tree) 형태의 라운드로빈 스케줄링방법이 있다.
이러한 라운드로빈 스케줄링 방법은 공유 버스(Shared BUS) 구조의 멀티 프로세서(Multiprocessor) 시스템이나 여러 종류의 공유 자원(Shared Resource)을 많은 클라이언트(Clients)들이 공유하는 서버시스템(Server System)에서도 사용된다. 특히, 고속의 하드웨어 스위치(Hardware Switch)가 필요한 ATM 스위치와 같은 시스템에서는 도 6에 도시된 바와 같이 N개의 클라이언트 그룹(Clients Group)들이 N개의 다중 통신선로(Multiple Communication Link)를 공유하는 구조의 스위치 네트워크(Switching Network)가 필요하고, 모든 입력 클라이언트 그룹(Input Clients Group)들이 공정하게 공유 통신선로를 이용하게 하는 고속의 스케줄러가 필요하다.
다음에 본 발명의 이해를 돕기 위해 WRR(Weighted Round Robin), DRR(Deficit Round Robin), 빈패킹(Bin Packing) 방식에 대해 간략히 설명한다.
WRR(Weighted Round Robin) 스케쥴링
WRR(Weighted Round Robin)스케줄링 메커니즘은 모든 가상채널접속(VCC)로부터 셀들을 다른 우선순위로 다중 전송한다. 이것은 고정된 웨이트(weight)를 기반으로 하는 라운드로빈 방식이 확장된 것 중의 하나이다. 각각의 VCC 링크는 전송할 셀이 있을 때 셀을 보낼 수 있다. 각각의 클래스 큐는 보내질 수 있는 많은 셀들의 카운터 넘버를 가지고 있다. 카운터 값은 그 클래스에 할당된 웨이트 값에 대해 같아진다.
여러 클래스로부터 온 셀들은 카운터 값이 0 보다 클 동안 클래스들의 헤드로부터 한 사이클 안에 보내지게 된다.
DRR(Deficit Round Robin) 스케쥴링
DRR(Deficit Round Robin) 방식은 WRR 을 수정해서 다양한 크기의 패킷을 다루는 것을 가능하게 한다. DRR 스케줄러는 각각의 접속에 대해서 DC(Deficit Counter)라는 것을 가지고 있고, 이것은 초기에 0으로 초기화 되어져 있다. 이러한 스케줄러는 각 방문된 접속으로부터 하나의 퀀텀 값으로 처리하려고 시도한다. 만약에 한 퀀텀 크기보다 작다면 그 패킷은 처리 되어지고, 아니면 그값은 DC에 더해지게 된다. 즉, 어떤 하나의 흐름이 사용되지 않는다면 DRR은 나머지 대역폭을 다른 흐름에게 할당하고, 다양한 크기의 패킷을 다룸으로써 효율적인 스케줄링 알 고리즘을 제공한다.
빈패킹(Bin Packing) 알고리즘
빈패킹(Bin packing)은 시간과 공간의 최소화에 관련된 고전적인 문제이다. 이것은 매우 어려운 문제이고 많은 휴리스틱 알고리즘이 제안되어져 왔다. 이 알고리즘의 목적은 고정된 크기의 “Bins”의 최소 개수의 객체의 모음을 하나로 만드는 것인데, FF(First Fit), LF(Last Fit), NF(Next Fit), BF(Best Fit), WF(Worst Fit), AWF(Almost Worst Fit) 등의 방식이 있다.
FF(LF) 알고리즘은 Bin공간이 아직 남아 있다면 새로운 객체를 Bin의 가장 왼쪽(오른쪽)에 위치시킨다. NF 알고리즘은 새로운 객체를 가장 오른쪽 Bin에 위치시키고, 만약 필요하다면 새로운 Bin을 시작한다. BF 알고리즘은 Bin 공간이 아직 남아 있다면, 새로운 객체를 가장 가득히 찬 곳에 위치시킨다. WF 알고리즘은 새로운 객체를 가장 많이 비어 있는 현존하는 Bin에 위치시킨다. AWF 알고리즘은 새로운 객체를 두번째로 많이 비어있는 현존하는 Bin에 위치시키는데, WF 알고리즘보다 훨씬 좋은 성능을 보인다.
또한 이러한 라운드 로빈에 관한 일 예가 "다중창을 갖는 동적 라운드 로빈 스케줄링 방식, 한국통신학회 학술대회논문집 제8권", "고속 통신말을 위한 크레딧 기반 라운드 로빈, 한국통신학회 논문지 제27권 12C호, 2002년", 대한민국 공개특허공보 2001-0039236호(2001년05월15일), 특허공개공보 2002-0059596호(2002년07월13일), 특허공개공보 2004-0055568호(2004년06월26일) 등에 개시되어 있다.
즉, 상기 문헌에 있어서는 다양한 QOS를 갖는 이질적인 트래픽들의 집합체에서 데이터를 효율적으로 처리하기 위한 라운드 로빈 스케줄링 방식이 제시되어 있다.
또 상기 공개특허공보 2001-0039236호는 계층적 우선 순위화 라운드 로빈 스케쥴링에 관한 것으로, 복수의 우선 순위화 패킷 큐들 사이에서 네트워크에서의 전송을 위한 다음 패킷을 선택하는 방법이 복수의 우선 순위화 패킷 큐들내의 각 큐에 공유 대역폭 중 할당된 대역폭의 퀀텀을 할당하는 단계, 복수의 우선 순위화 패킷 큐들내의 각 큐에 상기 큐에 의해 포워딩될 허용 데이터량을 나타내는 디피싯(deficit)을 할당하는 단계, 높은 우선 순위와 다음 패킷의 크기를 초과하는 디피싯 값을 갖는 큐로부터 전송을 위한 다음 패킷을 선택하는 단계, 선택된 다음 패킷의 크기만큼 상기 단계에서 선택된 상기 큐의 디피싯을 감소시키는 단계와 복수의 우선 순위화 패킷 큐들 내의 모든 백로그된(backlogged) 큐들이 다음 패킷을 포워딩하기에 불충분한 디피싯을 가지는 경우에, 각각의 상기 백로그된 큐에서의 디피싯에 상기 퀀텀의 값을 가산하고, 그에 의해, 우선 순위화 패킷 큐들의 세트 중으로부터의 선택의 새로운 라운드가 시작되는 단계를 포함하는 구성에 대해 개시되어 있다.
또한 상기 특허공개공보 2002-0059596호는 선형 시스톨릭 라운드로빈 스케줄러 및 그의 스케줄링방법에 관한 것으로서, 선형 시스톨릭 라운드로빈 스케줄러는 각 클라이언트들의 요청신호들을 조합하여 N×N의 2차원 요청 매트릭스를 만드는 요청 매트릭스 생성수단, 2차원 요청 매트릭스를 입력받아 입력포트별 각 출력포트 들에 대한 요청신호들을 추출하여 우선순위 순으로 재배열하는 요청 배열 생성수단, 우선순위 순으로 재배열된 1차원 요청 배열 중 우선순위 순으로 하나의 요청신호를 출력포트 정보와 함께 출력하는 N단의 요청신호 전파수단, 쌍을 이루는 요청신호 전파수단으로부터 상기 요청신호와 출력포트 정보를 입력받고 전단의 프로세싱수단으로부터 요청허가 결과를 입력받아, 요청신호에 대한 요청허가 여부를 결정하여 후단의 프로세싱 수단에게 전파하는 N단의 프로세싱수단 및 해당 라운드로빈 스케줄링 사이클에서 요청 허가된 상호 독립적인 입력포트들 정보와 출력포트들 정보를 출력하는 수집수단을 포함하는 구성에 대해 개시되어 있다.
또한, 상기 특허공개공보 2004-0055568호에 있어서는 전송효율을 향상시키기 위한 블루투스 브로드캐스트 패킷 송/수신 장치 및 그 방법에 대해 개시되어 있다.
그러나, 상기 공보 등에 개시된 기술에 있어서는 다양한 사이즈의 패킷 크기를 가지는 멀티미디어 데이터를 전송하는 RR(Round Robin)을 많이 사용하고 있지만, 이러한 스케줄링 기법은 많은 자원의 낭비를 일으킴으로 블루투스에는 적합하지 않게 된다는 문제가 있었다.
본 발명의 목적은 상술한 바와 같은 문제점을 해결하기 위해 이루어진 것으로서, DRR(deficit Round Robin)과 빈패킹(Bin Packing)의 NF(Next Fit)방식을 결합한 알고리즘을 적용하여 패킷 스케줄링하여 보다 성능이 우수한 블루투스 환경에서의 패킷 스케줄링 장치 및 그 방법을 제공하는 것이다.
본 발명의 다른 목적은 블루투스 환경에서 NF의 특성이 가장 적합하므로, 이 를 이용하여 슬롯의 낭비를 최대한 줄일 수 있게 하는 블루투스 환경에서의 패킷 스케줄링 장치 및 그 방법을 제공하는 것이다.
상기 목적을 달성하기 위해 본 발명에 따른 스케줄링 장치는 블루투스환경에서 패킷을 스케줄링하는 스케줄링 장치에 있어서, 다수의 제1의 슬레이브의 각각의 큐 앞 부분에 있는 패킷을 레이블을 통하여 감지하는 감지수단, 상기 패킷의 사이즈를 검사하는 검사수단, 상기 패킷에 빈패킹(Bin packing) 방식을 적용하여 슬롯에 채우는 수단, 상기 슬롯에 채워진 패킷을 다수의 제2의 슬레이브로 각각 송신하는 송신수단을 포함하는 것을 특징으로 한다.
또 본 발명에 따른 스케줄링 장치에 있어서, 상기 각각의 수단은 마스터에 의해 실행되는 것을 특징으로 한다.
또 본 발명에 따른 스케줄링 장치에 있어서, 상기 빈패킹 방식은 새로운 객체를 가장 오른쪽 Bin에 위치시키고, 필요하다면 새로운 Bin을 시작하는 NF(Next Fit) 방식을 이용하는 것을 특징으로 한다.
또 본 발명에 따른 스케줄링 장치에 있어서, 상기 채우는 수단은 송신할 패킷을 크기에 맞는 슬롯에 집어넣고, 다음 보낼 패킷이 슬롯의 남는 공간에 들어가면 집어넣고, 아니면 그 슬롯을 보내고 다른 슬롯에 새로 넣는 것을 특징으로 한다.
또 본 발명에 따른 스케줄링 장치에 있어서, 상기 패킷의 크기는 슬롯 1, 슬 롯 3, 슬롯 5의 크기로 하여 균등하게 분포되는 것을 특징으로 한다.
또 본 발명에 따른 스케줄링 장치에 있어서, 상기 송신수단은 DRR(Deficit Round Robin) 방식을 사용하여 다양한 크기의 패킷을 공평하게 상기 다수의 제2의 슬레이브로 각각 송신하는 것을 특징으로 한다.
또 본 발명에 따른 스케줄링 장치에 있어서, 상기 DRR(Deficit Round Robin) 방식은 다양한 크기의 패킷 크기에 대해서 스케줄링할 수 있는 DC(Deficit counter)를 사용하는 것을 특징으로 한다.
상기 목적을 달성하기 위해 본 발명에 따른 스케줄링 방법은 블루투스환경에서 패킷을 스케줄링하는 스케줄링 방법에 있어서, 마스터가 다수의 제1의 슬레이브의 각각의 큐 앞 부분에 있는 패킷을 레이블을 통하여 감지하는 단계, 상기 마스터가 상기 패킷의 사이즈를 검사하는 단계, 상기 패킷에 빈패킹(Bin packing) 방식을 적용하여 슬롯에 채우는 단계, 상기 슬롯에 채워진 패킷을 다수의 제2의 슬레이브로 각각 송신하는 단계를 포함하는 것을 특징으로 한다.
또 본 발명에 따른 스케줄링 방법에 있어서, 상기 빈패킹 방식은 새로운 객체를 가장 오른쪽 Bin에 위치시키고, 필요하다면 새로운 Bin을 시작하는 NF(Next Fit) 방식을 이용하는 것을 특징으로 한다.
또 본 발명에 따른 스케줄링 방법에 있어서, 상기 채우는 단계는 송신할 패킷을 크기에 맞는 슬롯에 집어넣고, 다음 보낼 패킷이 슬롯의 남는 공간에 들어가면 집어넣고, 아니면 그 슬롯을 보내고 다른 슬롯에 새로 넣는 것을 특징으로 한다.
또 본 발명에 따른 스케줄링 방법에 있어서, 상기 패킷의 크기는 슬롯 1, 슬롯 3, 슬롯 5의 크기로 하여 균등하게 분포되는 것을 특징으로 한다.
또 본 발명에 따른 스케줄링 방법에 있어서, 상기 송신하는 단계는 DRR(Deficit Round Robin) 방식을 사용하여 다양한 크기의 패킷을 공평하게 상기 다수의 제2의 슬레이브로 각각 송신하는 것을 특징으로 한다.
또 본 발명에 따른 스케줄링 방법에 있어서, 상기 DRR(Deficit Round Robin) 방식은 다양한 크기의 패킷 크기에 대해서 스케줄링할 수 있는 DC(Deficit counter)를 사용하는 것을 특징으로 한다.
본 발명의 상기 및 그밖의 목적과 새로운 특징은 본 명세서의 기술 및 첨부 도면에 의해 더욱 명확하게 될 것이다.
이하, 본 발명의 구성을 도면에 따라서 설명한다.
또한, 본 발명의 설명에 있어서는 동일 부분은 동일 부호를 붙이고, 그 반복 설명은 생략한다.
도 1은 DRR과 빈패킹(Bin packing)을 이용한 스케줄링 기법을 도식화 도면이다.
도 1에 있어서, n개의 슬레이브가 피코넷에 있다고 가정한다. 이 스케줄링 알고리즘은 큐 앞 부분에 있는 패킷을 레이블을 통하여 감지할 수 있으며, 다른 말로 Head-of-line 이라고도 한다, 어떤 패킷이 현재 프레임에 위치시킬 수 있는지 결정한다. 빈패킹의 NF는 낭비되는 공간에 채울 수 있는 패킷을 위치시켜서 슬롯 의 낭비를 최대한 줄일 수 있게 한다.
앞에서 DRR에 대해서 기술한 바와 같이 DRR은 DC(Deficit counter)를 사용하여 다양한 크기의 패킷 크기에 대해서 스케줄링할 수 있는 알고리즘이다. 이러한 DRR을 사용하는 이유는 빈패킹 과정 중에 마지막 Bin 이 때로는 최대 용량을 초과하는 경우가 발생할 경우가 있는데, RR 방식으로는 고정된 패킷 크기를 사용하기 때문에 이러한 문제가 발생시 스케줄링을 하지못하는 반면, DRR은 다양한 크기의 패킷에 대해서 스케줄링이 가능하고 전반적인 성능면에서 RR 보다 우수하기 때문이다.
즉, 본 발명에 있어서는 블루투스 무선 환경에서 좀더 효율적으로 스케줄링을 하기 위해 도 1과 같은 환경을 구성하였다.
도 1은 한 개의 마스터와 7개의 슬레이브가 통신하는 모습을 나타내는 도면이다. 마스터에는 각각의 슬레이브에 데이터를 전송하기 위해 큐가 슬레이브 수만큼 있고, 큐에서 나온 패킷은 빈패킹 방식중 NF방식을 이용하여 슬롯에 채워지고 다시 DRR방식을 거처 슬레이브로 전송된다. 이와 같이, 본 발명에서 제안한 스케줄링 방법은 전체 슬롯 이용률을 높여 자원이 낭비되는 것을 줄여 효율적으로 데이터를 전송할 수 있다.
즉 맨 왼쪽부터 각각의 슬레이브로 보낼 데이터를 저장하고 있는 큐가 7개 위치해 있고, 그 큐에 있는 패킷에 빈패킹의 NF 알고리즘을 적용하여 다양한 크기의 패킷을 크기에 맞는 슬롯에 집어넣는다. 슬롯은 크기에 따라 3가지 종류가 있는데, 보낼 패킷을 크기에 맞는 슬롯에 집어넣고, 다음 보낼 패킷이 슬롯의 남는 공간에 들어가면 집어넣고, 아니면 그 슬롯을 보내고 다른 슬롯에 새로 넣게 된다.
그리고 다시 여러 크기의 슬롯들을 공평하게 보내기 위해 DRR 스케쥴링을 써서 각각의 슬레이브들에게 보내게 된다. 본 발명에서 시뮬레이션을 위해 패킷의 크기는 슬롯 1, 슬롯 3, 슬롯 5의 크기로 하여 균등하게 분포되도록 했다.
도 2는 DRR 알고리즘과 빈패킹 알고리즘을 합한 하나의 의사 코드를 나타낸 도면이다.
도 2에 있어서, 라인 1부터 9까지는 다양한 사이즈의 패킷을 처리할 수 있는 빈패킹 알고리즘의 NF 알고리즘을 나타낸다. 라인 10부터 24까지는 DRR 알고리즘을 나타낸다.
다음에 도 1에 도시된 한 개의 마스터와 7개의 슬레이브가 통신하는 과정을 도 3에 따라 설명한다.
도 3은 본 발명에 따른 블루투스환경에서 패킷을 스케줄링하는 스케줄링 방법을 설명하는 흐름도이다.
먼저 도 1에 도시된 마스터가 다수의 제1의 슬레이브의 각각의 큐 앞 부분에 있는 패킷을 레이블을 통하여 감지한다(S10).
다음에 마스터가 감지된 패킷의 사이즈를 검사하고(S20), 검사된 패킷에 대해 새로운 객체를 가장 오른쪽 Bin에 위치시키고, 필요하다면 새로운 Bin을 시작하는 NF(Next Fit) 방식을 이용하는 빈패킹(Bin packing) 방식을 적용하여 슬롯에 채운다(S30). 이 채우는 단계에서는 송신할 패킷을 크기에 맞는 슬롯에 집어넣고, 다음 보낼 패킷이 슬롯의 남는 공간에 들어가면 집어넣고, 아니면 그 슬롯을 보내 고 다른 슬롯에 새로 넣는다.
이후, 다양한 크기의 패킷 크기에 대해서 스케줄링할 수 있는 DC(Deficit counter)를 사용하는 DRR(Deficit Round Robin) 방식으로 슬롯에 채워진 패킷을 다수의 제2의 슬레이브로 각각 송신한다(S40).
다음에 본 발명에 따른 방식과 종래의 방식에 따른 비교를 도 4 및 도 5에 따라 설명한다.
도 4는 여러 다른 스케줄링 알고리즘과 본 발명에서 제안된 스케줄링 알고리즘과의 성능평가 비교를 나타낸 도면이다.
도 4a의 그래프는 현재 실제로 블루투스에서 사용되고 있는 라운드로빈 스케줄링 방식만을 사용하여 7개의 슬레이브 중 어느 한 슬레이브에서의 슬롯 이용률을 측정한 그래프이다. X축은 슬레이브에 도착한 패킷 수를 나타내며, Y축은 도착한 슬롯 안의 패킷이 얼마만큼 차 있는지 슬롯의 이용률을 계산하여 나타냈다. 도 4a의 그래프의 특징은 마스터에서 보낼 데이터가 없을 때 아무런 데이터도 넣지 않은 슬롯을 보내기 때문에 슬롯 이용률이 0으로 떨어지는 경우가 많이 생긴다.
도 4b의 그래프는 DRR 만을 이용하여 데이터를 전송한 경우이고, 도 4c는 DRR과 빈패킹 방식의 NF방식을 적용한 경우이다. 도 4b의 방식의 특징은 도 4a의 경우와는 달리 슬롯 이용률이 0으로 떨어지지 않는다.
도 4b와 도 4c의 그래프는 별 차이 없어 보이지만, 실제로 슬롯 이용률을 평균해 보면 도 4c의 그래프가 가장 좋은 성능을 나타냄을 알 수 있다.
도 5는 각각의 스케줄링 알고리즘에 대한 사용된 전체 슬롯 수를 나타낸 도 면이다.
X축은 1번부터 7번까지의 슬레이브를 나타내고, Y축은 패킷을 전송하기 위해 사용된 슬롯 수를 나타낸다.
하나의 슬레이브에서 맨 왼쪽은 라운드로빈(RR)방식을 이용한 경우, 두번째는 DDR(Deficit Round Robin), 세번째는 DRR과 빈패킹을 적용한 경우이며, 본 발명에 있어서는 이 세번째 경우를 IDRR(Improved Deficit Round Robin)이라고 한다.
이 막대 그래프는 같은 양의 패킷을 보냈을 때 각각의 방식에 따라 사용된 슬롯 수를 나타내고, 같은 양의 패킷에 대해 가장 적게 슬롯을 사용한 IDRR 방식이 가장 좋은 성능을 나타냄을 알 수 있다.
우선 RR과 본 발명에 따른 BP 과 DRR을 합친 스케줄링 방법을 적용한 것을 실제 예를 들어 비교해 설명하면 다음과 같다.
실제로 블루투스 표준에 따라 슬롯 1은 DM1(0-17 byte long)과 DH1(0-27) 두 가지 타입이 있고, 슬롯 3은 DM3(0-121)와 DH3(0-183), 슬롯 5는 DM5(0-224)가 DH5(0-339)있다. 하나의 슬레이브가 15, 11, 61, 150, 122, 125 크기의 다양한 패킷을 가지고 있다고 가정하고 이를 어떻게 스케줄링하는지 설명한다.
1) RR을 적용한 예
15(DH1)-> slot 1에 할당하고 슬롯 이용률은 15/27(56%)이다.
11(DH1)-> slot 1에 할당하고 슬롯 이용률은 11/27(41%)이다.
61(DH3)-> slot 3에 할당하고 슬롯 이용률은 61/183(33%)이다.
50(DH3)-> slot 3에 할당하고 슬롯 이용률은 50/183(27%)이다.
122(DM5)-> slot 5에 할당하고 슬롯 이용률은 122/224(54%)이다.
125(DM5)-> slot 5에 할당하고 슬롯 이용률은 125/224(56%)이다.
2) 빈패킹(Bin Packing) 과 DRR을 적용한 예
15(DH1)-> slot 1에 할당되지 않고 다음 패킷을 기다린다.
11(DH1)-> 두 개의 패킷이 slot 1에 할당되고 슬롯 이용률은 26/27(96%)이다. 즉 하나의 슬롯만 사용된다.
61(DH3)-> slot 3에 할당되지 않고 다음 패킷을 기다린다.
50(DH3)-> 두 개의 패킷이 slot 3에 할당되고 슬롯 이용률은 111/183 (61%)이다. 지금까지 두 개의 슬롯만 사용되었다.
122(DM5)-> slot 3에 할당되지 않고 다음 패킷을 기다린다.
125(DM5)->두 개의 패킷을 같이 묶을 수 없다.
왜냐하면 122 + 125 = 247 > 224이기 때문에 122 byte 가 슬롯 5에 할당되고 125 역시 따로 할당된다. 122byte에 대해서는 슬롯이용률이 122/224 (54%)이고, 125byte는 125/224 (56%)이다.
지금까지 총 4개의 슬롯이 사용되었다. 하지만 RR의 경우에는 같은 크기, 같은 양의 패킷을 보내는데 6개의 패킷이 필요하게 된다.
이상 본 발명자에 의해서 이루어진 발명을 상기 실시예에 따라 구체적으로 설명하였지만, 본 발명은 상기 실시예에 한정되는 것은 아니고 그 요지를 이탈하지 않는 범위에서 여러 가지로 변경 가능한 것은 물론이다.
즉, 상기 실시예에 있어서는 블루투스 환경에서의 패킷 스케줄링 장치 및 그 방법의 실시예에 대해 설명하였지만, 이에 한정되는 것은 아니며 정보 통신망의 스케줄링에도 적용할 수 있음은 물론이다.
상술한 바와 같이, 본 발명에 따른 블루투스 환경에서의 패킷 스케줄링 장치 및 그 방법에 의하면, 무선전화서비스, 인터넷 접속서비스 등 블루투스 기능을 이용한 유무선통합서비스 등에 응용되고 이를 이용할 경우 가정 내에서 보안 및 출입통제, 조명 및 난방제어, 조리서비스, 가족통신, 오락서비스 등 무선 홈 오토메이션도 가능하게 하며, 블루투스가 기존 네트워크를 보완하고 부가효과를 극대화하는 무선지원장치 역할을 수행할 수 있다는 효과가 얻어진다.
또, 본 발명에 따른 블루투스 환경에서의 패킷 스케줄링 장치 및 그 방법에 의하면, 성능이 우수한 블루투스 환경을 마련하고, 슬롯의 낭비를 최대한 줄일 수 있게 할 수 있다는 효과도 얻어진다.

Claims (13)

  1. 블루투스환경에서 패킷을 스케줄링하는 스케줄링 장치에 있어서,
    다수의 제1의 슬레이브의 각각의 큐 앞 부분에 있는 패킷을 레이블을 통하여 감지하는 감지수단,
    상기 패킷의 사이즈를 검사하는 검사수단,
    상기 패킷에 빈패킹(Bin packing) 방식을 적용하여 슬롯에 채우는 수단,
    상기 슬롯에 채워진 패킷을 다수의 제2의 슬레이브로 각각 송신하는 송신수단을 포함하는 것을 특징으로 하는 스케줄링 장치.
  2. 제 1항에 있어서,
    상기 각각의 수단은 마스터에 의해 실행되는 것을 특징으로 하는 스케줄링 장치.
  3. 제 2항에 있어서,
    상기 빈패킹 방식은 새로운 객체를 가장 오른쪽 Bin에 위치시키고, 필요하다면 새로운 Bin을 시작하는 NF(Next Fit) 방식을 이용하는 것을 특징으로 하는 스케줄링 장치.
  4. 제 3항에 있어서,
    상기 채우는 수단은 송신할 패킷을 크기에 맞는 슬롯에 집어넣고, 다음 보낼 패킷이 슬롯의 남는 공간에 들어가면 집어넣고, 아니면 그 슬롯을 보내고 다른 슬롯에 새로 넣는 것을 특징으로 하는 스케줄링 장치.
  5. 제 4항에 있어서,
    상기 패킷의 크기는 슬롯 1, 슬롯 3, 슬롯 5의 크기로 하여 균등하게 분포되는 것을 특징으로 하는 스케줄링 장치.
  6. 제 3항에 있어서,
    상기 송신수단은 DRR(Deficit Round Robin) 방식을 사용하여 다양한 크기의 패킷을 공평하게 상기 다수의 제2의 슬레이브로 각각 송신하는 것을 특징으로 하는 스케줄링 장치.
  7. 제 6항에 있어서,
    상기 DRR(Deficit Round Robin) 방식은 다양한 크기의 패킷 크기에 대해서 스케줄링할 수 있는 DC(Deficit counter)를 사용하는 것을 특징으로 하는 스케줄링 장치.
  8. 블루투스환경에서 패킷을 스케줄링하는 스케줄링 방법에 있어서,
    마스터가 다수의 제1의 슬레이브의 각각의 큐 앞 부분에 있는 패킷을 레이블 을 통하여 감지하는 단계,
    상기 마스터가 상기 패킷의 사이즈를 검사하는 단계,
    상기 패킷에 빈패킹(Bin packing) 방식을 적용하여 슬롯에 채우는 단계,
    상기 슬롯에 채워진 패킷을 다수의 제2의 슬레이브로 각각 송신하는 단계를 포함하는 것을 특징으로 하는 스케줄링 방법.
  9. 제 8항에 있어서,
    상기 빈패킹 방식은 새로운 객체를 가장 오른쪽 Bin에 위치시키고, 필요하다면 새로운 Bin을 시작하는 NF(Next Fit) 방식을 이용하는 것을 특징으로 하는 스케줄링 방법.
  10. 제 9항에 있어서,
    상기 채우는 단계는 송신할 패킷을 크기에 맞는 슬롯에 집어넣고, 다음 보낼 패킷이 슬롯의 남는 공간에 들어가면 집어넣고, 아니면 그 슬롯을 보내고 다른 슬롯에 새로 넣는 것을 특징으로 하는 스케줄링 방법.
  11. 제 9항에 있어서,
    상기 패킷의 크기는 슬롯 1, 슬롯 3, 슬롯 5의 크기로 하여 균등하게 분포되는 것을 특징으로 하는 스케줄링 방법.
  12. 제 9항에 있어서,
    상기 송신하는 단계는 DRR(Deficit Round Robin) 방식을 사용하여 다양한 크기의 패킷을 공평하게 상기 다수의 제2의 슬레이브로 각각 송신하는 것을 특징으로 하는 스케줄링 방법.
  13. 제 12항에 있어서,
    상기 DRR(Deficit Round Robin) 방식은 다양한 크기의 패킷 크기에 대해서 스케줄링할 수 있는 DC(Deficit counter)를 사용하는 것을 특징으로 하는 스케줄링 방법.
KR1020050111361A 2005-11-21 2005-11-21 블루투스 환경에서의 패킷 스케줄링 장치 및 그 방법 KR100679091B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050111361A KR100679091B1 (ko) 2005-11-21 2005-11-21 블루투스 환경에서의 패킷 스케줄링 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050111361A KR100679091B1 (ko) 2005-11-21 2005-11-21 블루투스 환경에서의 패킷 스케줄링 장치 및 그 방법

Publications (1)

Publication Number Publication Date
KR100679091B1 true KR100679091B1 (ko) 2007-02-05

Family

ID=38105460

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050111361A KR100679091B1 (ko) 2005-11-21 2005-11-21 블루투스 환경에서의 패킷 스케줄링 장치 및 그 방법

Country Status (1)

Country Link
KR (1) KR100679091B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101360718B1 (ko) 2007-02-09 2014-02-10 엘지이노텍 주식회사 결손 라운드 로빈 방식의 스케쥴링 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030027968A (ko) * 2001-09-18 2003-04-08 (주) 이노텔리텍 근거리 무선통신시스템의 무선자원분배를 위한 스케줄링방법
KR20040055568A (ko) * 2002-12-21 2004-06-26 한국전자통신연구원 전송효율을 향상시키기 위한 블루투스 브로드캐스트 패킷송/수신 장치 및 그 방법
WO2004056052A2 (en) 2002-12-18 2004-07-01 Koninklijke Philips Electronics N.V. Bluetooth broadcast data stream to multiple bluetooth mobile terminals
US6963534B1 (en) 2000-10-05 2005-11-08 International Business Machines Corporation Methodology for improving the performance of asynchronous data traffic over TDD/TDMA wireless networks

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6963534B1 (en) 2000-10-05 2005-11-08 International Business Machines Corporation Methodology for improving the performance of asynchronous data traffic over TDD/TDMA wireless networks
KR20030027968A (ko) * 2001-09-18 2003-04-08 (주) 이노텔리텍 근거리 무선통신시스템의 무선자원분배를 위한 스케줄링방법
WO2004056052A2 (en) 2002-12-18 2004-07-01 Koninklijke Philips Electronics N.V. Bluetooth broadcast data stream to multiple bluetooth mobile terminals
KR20040055568A (ko) * 2002-12-21 2004-06-26 한국전자통신연구원 전송효율을 향상시키기 위한 블루투스 브로드캐스트 패킷송/수신 장치 및 그 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Bin-Packing과 DRR을 이용한 블루투스 MAC계층에서의

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101360718B1 (ko) 2007-02-09 2014-02-10 엘지이노텍 주식회사 결손 라운드 로빈 방식의 스케쥴링 방법

Similar Documents

Publication Publication Date Title
CN108282415B (zh) 一种调度方法及设备
EP2451127B1 (en) Progressive adaptive routing in a dragonfly processor interconnect network
EP1774714B1 (en) Hierarchal scheduler with multiple scheduling lanes
EP3128438A2 (en) Table-driven routing in a dragonfly processor interconnect network
US7606250B2 (en) Assigning resources to items such as processing contexts for processing packets
JP2015057886A (ja) 通信ネットワークに対する予約要求をスケジューリングするためのシステムおよび方法
WO2004066045A1 (en) Industrial control network providing ethernet protocl overlayed with a transmission schedule
KR101210860B1 (ko) Tdma 네트워크에서 프레임들의 우선순위 큐잉
WO2008041271A1 (fr) Système d'émission/reception, noeud et procédé de communication
JP3965162B2 (ja) 無線通信機器およびその無線通信方法
KR100679091B1 (ko) 블루투스 환경에서의 패킷 스케줄링 장치 및 그 방법
Srinivasan et al. On achieving fairness and efficiency in high-speed shared medium access
EP1465370B1 (en) Predictable real time data communication on a serial bus
JPWO2010122896A1 (ja) データ伝送システム、データ伝送方法およびデータ送信装置
US8467401B1 (en) Scheduling variable length packets
Nikolova et al. Bonded deficit round robin scheduling for multi-channel networks
Barth et al. Deterministic contention management for low latency cloud RAN over an optical ring
CN111226420A (zh) 使用第一循环以太网协议和第二循环以太网协议的高效调度电信方案
US7224681B2 (en) Processor with dynamic table-based scheduling using multi-entry table locations for handling transmission request collisions
Baziana et al. A transmission strategy with protocol analysis for performance improvement in WDM networks
EP1774721B1 (en) Propagation of minimum guaranteed scheduling rates
KR20030027968A (ko) 근거리 무선통신시스템의 무선자원분배를 위한 스케줄링방법
von Hoyningen-Huene et al. Scheduling acyclic traffic in cyclic and deterministic communication systems
Bitencort et al. AdapTA: Adaptive timeslot allocation scheme for IEEE 802.15. 4e LLDN mode
CN112242966B (zh) 数据转发方法和装置

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

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee