KR100725419B1 - 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를관리하는 방법 및 그 방법을 수행하는 장치 - Google Patents

무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를관리하는 방법 및 그 방법을 수행하는 장치 Download PDF

Info

Publication number
KR100725419B1
KR100725419B1 KR1020060030647A KR20060030647A KR100725419B1 KR 100725419 B1 KR100725419 B1 KR 100725419B1 KR 1020060030647 A KR1020060030647 A KR 1020060030647A KR 20060030647 A KR20060030647 A KR 20060030647A KR 100725419 B1 KR100725419 B1 KR 100725419B1
Authority
KR
South Korea
Prior art keywords
buffer
value
threshold
frame
reception
Prior art date
Application number
KR1020060030647A
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 KR1020060030647A priority Critical patent/KR100725419B1/ko
Application granted granted Critical
Publication of KR100725419B1 publication Critical patent/KR100725419B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1835Buffer management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0002Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate
    • H04L1/0003Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate by switching between different modulation schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0083Formatting with frames or packets; Protocol or part of protocol for error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • H04L1/1628List acknowledgements, i.e. the acknowledgement message consisting of a list of identifiers, e.g. of sequence numbers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를 관리하는 방법 및 그 방법을 수행하는 장치가 제공된다. 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를 관리하는 방법은 수신단에서 블록 응답(Block Ack : 이하 BA) 송신여부를 체크하는 BA 송신 체크단계, BA 송신 시 사용된 버퍼의 엘리먼트(Element)를 계산하는 엘리먼트 계산단계, 계산된 엘리먼트 값을 수신버퍼의 임계값과 비교하는 임계값 초과 체크단계 및 임계값 초과 시 BA 프레임의 BA 콘트롤 필드(Control Field) 중 버퍼 오버플로우 워닝 비트(Buffer Overflow Warning Bit) 필드에 값을 셋팅(Setting)하는 필드 값 셋팅단계를 포함한다.
IEEE 802.11, WLAN, ACK, 버퍼, 오버플로우

Description

무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를 관리하는 방법 및 그 방법을 수행하는 장치{Method for useful managing receive buffer on WLAN devices and apparatus for employing the method}
도 1은 종래 기술에서 고정 크기 수신버퍼의 구조를 나타낸 블록도이다.
도 2는 종래 기술에서 가변 크기 수신버퍼의 구조를 나타낸 블록도이다.
도 3은 본 발명의 일 실시예에 따른 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를 관리하는 기능을 수행하는 장치의 구조를 나타낸 블록도이다.
도 4는 본 발명의 일 실시예에 따른 기존 BA 프레임 포맷(Frame Format)을 수정한 BA 프레임 포맷의 구조에 대한 도면이다.
도 5는 본 발명의 일 실시예에 따른 수신단에서 수신 버퍼의 오버플로우(Overflow)를 방지하는 과정을 나타낸 흐름도이다.
도 6은 본 발명의 일 실시예에 따른 송신단에서 수신 버퍼의 오버플로우를 방지하는 과정을 나타낸 흐름도이다.
도 7은 본 발명의 다른 실시예에 따른 Pseudo 가변 크기 수신 버퍼의 구조를 나타낸 블록도이다.
도 8은 본 발명의 다른 실시예에 따른 TID 버퍼 관리 테이블의 구조를 나타낸 블록도이다.
도 9는 본 발명의 다른 실시예에 따른 수신단에서 수도(Pseudo) 가변 크기 수신 버퍼의 오버플로우를 방지하는 과정을 나타낸 흐름도이다.
본 발명은 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를 관리하는 방법 및 그 방법을 수행하는 장치에 관한 것으로서, 더욱 상세하게는 IEEE 802.11 표준에 의한 무선 네트워크를 사용하는 디지털 기기에서, BA 방법으로 데이터를 전송할 경우 수신버퍼의 오버플로우를 방지하고 수신버퍼를 효율적으로 할당하여 전송 효율 및 메모리 효율을 증가시키는 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를 관리하는 방법 및 그 방법을 수행하는 장치에 관한 것이다.
최근 근거리통신망을 구축하는 데 있어 무선랜(Wireless LAN)의 보급이 빠르게 이루어지고 있다.
전송 매체로 유선 케이블이 아닌 무선 주파수를 사용하는 무선랜 기술은 본래 군사적 용도로 활용하기 위해 처음 개발이 시작되었으며, 민간 용도로 사용이 허가된 이후 시장 초기에는 유선랜을 구축하기 어려운 창고, 백화점, 병원 등의 특수한 환경에서 제한적으로 활용되어 왔다.
그러나 1997년 IEEE에서 802.11 무선랜 표준을 발표하고, WECA(Wireless Ethernet Capability Alliance; 2002년 WiFi로 변경)에서 여러 업체들로부터 생산되는 다양한 장비들 간의 호환성을 보장하면서 무선랜은 빠르게 대중화되기 시작하 였다.
무선랜은 업체들 간의 치열한 성능/가격 경쟁으로 이더넷과 비슷한 가격 하락 곡선을 경험하면서, 한 때 수 백 만원 하던 무선랜 장비 가격은 최근 휴대 전화기보다도 훨씬 저렴해졌다.
무선랜은 주로 기업용 네트워크 솔루션으로 사용되어 왔지만, 최근에는 노트북과 PDA를 이용하여 사무실 밖에서 업무를 처리하는 이동 근로자(Mobile Worker)들의 수가 증가하면서 이들을 대상으로 인터넷 접속 서비스를 제공하는 공중 무선랜 서비스 용도로도 활용되고 있다.
또한 무선랜은 경쟁의 심화 및 규모의 경제 효과로 가격이 빠르게 하락하면서 노트북과 PDA 등 컴퓨터 뿐만 아니라 앞으로 디지털 가전기기 등에도 다양하게 적용되어 유비쿼터스 네트워크를 실현하는 핵심 기술로서 중추적인 역할을 담당할 것으로 기대되고 있다.
802.11은 IEEE가 승인한 무선랜 국제 표준으로, MAC(Media Access Control)과 물리 계층(PHY Layer, 이하 PHY)의 상세규격을 제공한다.
802.11 프로토콜에서 매체 접근을 위한 기본적인 메커니즘은 분산 조정 함수(Distributed Coordination Function : DCF)로써, 이것은 모두 경로 공유 프로토콜이다.
경로 공유 프로토콜이란, 반송파 감지 다중 접근/충돌 예방(Carrier Sense Multiple Access with Collision Avoidance : CSMA/CA)을 기반으로 하여 같은 클러스터(Basic Service Set)에 있는 모든 디바이스들이 무작위로 접근하는 개념이다.
또한, 무선 트랜시버는 송신과 수신을 동시에 할 수 없어서 충돌 감지가 실행 불가능하기 때문에 사전 충돌 회피가 적용되었다.
802.11과 802.11b는 무선 이더넷 LAN에 적용되고 2.4 GHz 주파수에서 운용되며 데이터 속도는 802.11에서 1Mbps 혹은 2 Mbps, 802.11b에서 5.5Mbps 혹은 11Mbps이다.
802.11b 표준은 802.11의 하위 호환으로 802.11 변조는 위상 편이 방식(PSK)을, 802.11b 변조는 상보적 코드 변조 방식(Complementary Code Keying : CCK)을 사용한다.
또한, 802.11a는 무선 비동기 전송 방식(Asynchronous Transfer Mode : ATM) 시스템에 적용되고 5GHz와 6GHz 사이의 주파수에서 운용되며 변조 방식으로는 직교 주파수 분할 다중(Orthogonal Frequency Division Multiplexing : OFDM) 방식을 사용하고 있으며 802.11b와는 호환되지 않는다.
데이터 속도는 최대 54Mbps이나 공통적으로 통신 시에는 6Mbps, 12Mbps, 24Mbps가 된다.
802.11e는 가정과 사무실에서 사용하는 최초의 무선 표준이다.
이것은 현존하는 802.11b와 802.11a 무선 표준과 호환성을 유지하면서 QoS(Quality of Service)와 멀티미디어 지원이 추가된다.
802.11e에서는 데이터의 품질 및 성능을 높이기 위해 트래픽 특성에 따라 트래픽 스트림(Traffic Stream, 이하 TS)을 정의하고 이를 트래픽 구별자(Traffic Identifier, 이하 TID)로 구분한다.
각각의 TS는 BA방법을 사용하여 MAC 성능을 향상시킨다. 즉 여러 프레임을 No-Ack 방법으로 전송하고 블록 응답 요구(Block Ack Request : BAR) 프레임 전송에 대한 응답으로 BA 프레임을 수신함으로써 전송을 확인한다.
또한 IEEE 802.11n JP 스펙(Spec)에는 여러 Mac 프로토콜 데이터 유닛(Mac Protocol Data Unit)을 집합(Aggregation)시켜 전송하고 압축된(Compressed) BA를 응답으로 수신한다.
이때 에러 프레임은 재전송을 통해 수신하게 되고 상위계층으로 전송하기 전 수신버퍼에 저장하여 리오더링(Reordering) 과정을 거치게 된다.
802.11e에서는 무선 랜 장치(Source)에서 데이터 프레임을 상대 장치
(Destination)에 보낼 때, 무선 랜 장치(Destination)의 MAC, PHY 계층은 각각 헤더(Header)를 구성하고 이들을 데이터에 부가하여 전송하게 된다.
이 데이터를 수신한 무선 랜 장치에서 수신된 프레임을 저장하는 수신 버퍼가 설정된다.
수신버퍼를 설정하는 방법에는 고정 크기 수신버퍼 할당방법과 가변 크기
수신버퍼 할당방법이 있다.
도 1은 종래 기술에서 고정 크기 수신버퍼의 구조를 나타낸 블록도이다.
고정크기 수신버퍼 할당은 도 1에 도시된 바와 같이 시스템 초기화 시에 전체 수신버퍼를 m개의 일정크기 단위로 나누어 n개의 TID 수신버퍼를 할당한다.
도 2는 종래 기술에서 가변 크기 수신버퍼의 구조를 나타낸 블록도이다. 가변크기 수신버퍼 할당은 도 2에 도시된 바와 같이 수신버퍼의 크기를 가변적으로 가진다.
또한 각 BA를 사용하기 위해 ADD BA 요구/응답(Req/Response) 프레임 송수신 시 적절한 크기의 링크된 리스트(Linked List) 형태로 수신버퍼를 생성한다.
도 2에서 도시된 바와 같이 TID1은 m개의 수신버퍼 엘리먼트를 가지며 TID2는 k개의 수신버퍼 엘리먼트를 가진다.
그리고 BA를 사용하지 않는 TID에게는 수신버퍼를 할당하지 않는다.
버퍼의 한 엘리먼트의 크기는 하나의 Mac 프로토콜 데이터 유닛의 페이로드(Payload)를 저장할 수 있는 크기이다.
그러나 고정크기 수신버퍼 할당의 경우 다중의 소스주소(Source Address)에서 여러 TID별로 수신버퍼를 고정해주게 되어 BA를 사용하지 않는 TID에게도 메모리를 할당하므로 메모리 낭비가 심해진다.
즉 도 1에 도시된 바와 같이 TID 3부터 TID n 까지의 수신버퍼는 사용되지 않더라도 미리 할당되는 것이다.
가변크기 수신버퍼 할당은 BA 추가(Add) 시 링크된 리스트 형태로 할당해 주게 되므로 실제 설정된 TID에 대해서 메모리를 할당하므로 효율적이다.
하지만 다수의 TID를 위한 수신버퍼를 할당할 경우 PC와 같이 메모리가 충분한 시스템은 문제가 없지만 휴대기기에서는 메모리가 한정되어 있으므로 여러 TID를 생성하게 되면 마찬가지로 메모리의 효율이 저하되고 또한 생성된 버퍼의 크기가 설정시 고정되므로 만약 하나의 TID에 트래픽이 집중되면 나머지 할당된 수신버퍼에 의해 메모리 낭비가 발생하여 버퍼의 효율이 저하된다.
또한 여러 TID에 할당해주기 위한 메모리를 계속 가지고 있거나 블록 응답을 사용하는 TID의 수를 제한하게 되므로 전송효율도 저하된다.
IEEE 802.11e 스펙에 의해 버퍼 풀(Buffer Full)이 발생한 이후에는 에러 프레임이 있더라도 이후에 성공적으로 수신한 프레임을 상위로 올려 주게 되므로 최대 Mac 서비스 데이터 유닛 전송 유지 시간(Max MSDU Transmit Life Time)에 여유가 있더라도 에러프레임이 누락(Drop)되므로 비디오 데이터와 같은 실시간 프레임일 경우 화면이 깨지게 되는 등 심각한 오류가 발생하게 되는 문제점이 있다.
본 발명은 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를 관리하는 방법 및 그 방법을 수행하는 장치를 통해 IEEE 802.11 표준에 의한 무선 네트워크를 사용하는 디지털 기기에서, BA 방법으로 데이터를 전송할 경우 수신버퍼의 오버플로우를 방지하는데 그 목적이 있다.
본 발명의 또 다른 목적은 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를 관리하는 방법 및 그 방법을 수행하는 장치를 통해 IEEE 802.11 표준에 의한 무선 네트워크를 사용하는 디지털 기기에서, BA 방법으로 데이터를 전송할 경우 수신버퍼를 효율적으로 할당하여 전송 효율 및 메모리 효율을 증가시키는 것이다.
본 발명의 목적들은 이상에서 언급한 목적들로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해되어질 수 있을 것이다.
상기 목적을 달성하기 위하여, 본 발명의 실시예에 따른 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를 관리하는 방법은 수신단에서 BA 송신여부를 체크하는 BA 송신 체크단계, BA 송신 시 사용된 버퍼의 엘리먼트를 계산하는 엘리먼트 계산단계, 계산된 엘리먼트 값을 수신버퍼의 임계값과 비교하는 임계값 초과 체크단계 및 임계값 초과 시 BA 프레임의 BA 콘트롤 필드 중 버퍼 오버플로우 워닝 비트 필드에 값을 셋팅(Setting)하는 필드 값 셋팅단계를 포함한다.
상기 목적을 달성하기 위하여, 본 발명의 실시예에 따른 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를 관리하는 기능을 제공하는 장치는 BA 송수신 여부를 체크하는 BA 송수신 체크부, BA가 사용된 버퍼의 엘리먼트를 계산하는 엘리먼트 계산부, 계산된 엘리먼트 값을 사용된 수신버퍼의 임계값과 비교하는 임계값 초과 체크부, 임계값 초과 여부에 따라 BA 프레임의 BA 콘트롤 필드에 값을 셋팅하는 필드 관리부 및 임계값 초과 시 에러 프레임 이전의 성공한 프레임들을 상위 계층으로 전달하는 프레임 전달부를 포함한다.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다.
도 3은 본 발명의 일 실시예에 따른 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를 관리하는 기능을 수행하는 장치의 구조를 나타낸 블록도이다.
본 발명의 일 실시예에 따른 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를 관리하는 기능을 수행하는 장치(300)는 BA 송수신 여부를 체크하는 BA 송수신 체크부(301), BA가 사용된 버퍼의 엘리먼트를 계산하는 엘리먼트 계산부(302), 계산된 엘리먼트 값을 사용된 수신버퍼의 임계값과 비교하는 임계값 초과 체크부(303) 및 임계값 초과 여부에 따라 BA 프레임의 BA 콘트롤 필드에 값을 셋팅하는 필드 관리부(304)를 포함한다.
본 발명의 실시예에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다.
그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다.
'~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다.
따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세 스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다.
구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다.
뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.
도 4는 본 발명의 일 실시예에 따른 기존 BA프레임 포맷(Frame Format)을 수정한 BA 프레임 포맷의 구조에 대한 도면이다.
기존 BA 프레임 포맷에 본 발명의 실시예에 따른 BA 콘드롤 필드(401)가 추가되었다.
본 발명의 실시예에 따른 BA 콘드롤 필드(401)는 버퍼 오버플로우 워닝 필드(401a)와 TID 필드(401b)를 포함한다.
TID 필드(401b)에 기록된 해당 TID의 수신버퍼가 많이 사용되어 버퍼 오버플로우가 발생할 가능성이 높아질 경우 도 3에 도시된 장치를 통해 버퍼 오버플로우 워닝 필드(401a)에 값을 셋팅하여 전송하게 되면 수신측에서는 버퍼 오버플로우 워닝 필드(401a)에 셋팅된 값을 통해 오버플로우가 발생할 확률을 감소시킨다.
도 5 내지 도 6은 본 발명의 일 실시예에 따른 송수신단에서 수신 버퍼의 오버플로우를 방지하는 과정을 나타낸 흐름도이다.
수신버퍼 오버플로우를 방지하기 위해서 TID별 수신버퍼에서 사용된 수신버 퍼 엘리먼트의 개수가 임계값 이상일 때 이전에 상위 순차번호(Sequence Number)를 가진 에러 프레임을 최소 오류로 전송한다.
여기서 임계값은 수신버퍼 임계값 BS used , th  로 정의하며 TID별 수신버퍼 크기 BS tid 정보와 수신버퍼 임계계수(β)를 이용하여
식(1)
Figure 112006023643615-pat00001
와 같이 설정한다.
수신 버퍼 임계계수는 0.5이상의 임의의 값으로 적절히 결정한다.
이하 도 3 내지 도 4를 참조하여 도 5에 도시된 본 발명의 일 실시예에 따른 수신단에서 수신 버퍼의 오버플로우를 방지하는 과정의 흐름을 상세히 설명한다.
도 3에서 도시한 장치(300)의 BA 송수신 체크부(301)에서 BA 수신여부를 체크한다(S501).
체크결과 BA를 수신하였다면 엘리먼트 계산부(302)에서 BA를 송신하기 전에 먼저 사용된 수신 버퍼 엘리먼트 개수를 계산한다(S502).
그리고 임계값 초과 체크부(303)에서는 S502에서 계산한 결과와 식(1)을 통해 계산된 임계값을 비교한다(S503).
만약 사용된 수신 버퍼 엘리먼트의 개수가 임계값을 넘을 경우 필드 관리부(304)는 도면 4와 같이 BA 프레임의 BA 콘트롤 필드에 버퍼 오버플로우 워닝 비트를 세팅하고(S504), 나머지 BA 프레임 필드값을 셋팅(S505)한 후 송신부(미도시) 를 통해 BA프레임을 송신단에 전송한다(S506).
도 6은 본 발명의 일 실시예에 따른 송신단에서 수신버퍼의 오버플로우를 방지하는 과정을 나타낸 흐름도이다.
송신단에서도 도 3에서 도시한 장치(300)의 BA 송수신 체크부(301)에서 BA 수신여부를 체크한다(S601).
BA를 수신하면 먼저 필드 관리부(304)에서 버퍼 오버플로우 워닝 비트가 셋팅되어 있는지 판단(S602)하여 셋팅 되어 있으면 해당 TID의 에러 프레임을 조절(Modulation)하는 방법을 변화시키는 링크 어뎁테이션(Link Adaptation) 방법을 사용하거나 오류정정(Forward Error Correction ; FEC) 방법을 사용하여 송신부(미도시)에서 최소오류로 전송한다(S603).
만약 버퍼 오버플로우 워닝 비트가 리셋(Reset)이 되어 있으면 엘리먼트 계산부(302)에서 BA의 비트맵(Bitmap) 정보를 반영(S604)하여 수신단과 마찬가지로 사용된 수신버퍼 엘리먼트의 개수를 계산한다(S605).
그리고 임계값 초과 체크부(303)에서는 S505에서 계산한 결과와 식(1)을 통해 계산된 임계값을 비교한다(S606).
만약 사용된 수신버퍼 엘리먼트의 개수가 임계값보다 크면 에러 프레임(Error Frame)을 송신부(미도시)에서 최소 오류로 전송한다(S607).
이러한 방법을 통해 에러 프레임을 수신한 수신단에서는 성공한 프레임을 상위 계층으로 전달함으로써 사용된 수신 버퍼 엘리먼트 개수를 최대한 감소시킨다.
이를 통해 오버플로우가 발생할 확률을 감소시킨다.
참고로, 송신단에서의 수신버퍼 오버플로우 방지 알고리즘은 수신단의 동작과 상관없이 독립적으로 동작할 수 있다.
도 7 내지 도 8는 본 발명의 다른 실시예에 따른 메모리 효율을 고려한 수도(Pseudo) 가변크기 수신버퍼의 구조 및 관련 테이블의 구조를 나타낸 블록도이다.
메모리 효율을 고려한 수도 가변크기 수신버퍼 할당은 BA를 사용할 경우 수신버퍼의 메모리 효율을 증가시키는 동시에 전송효율을 증가시킬 수 있다.
또한 송신단에서 도 6에서 설명한 수신버퍼 오버플로우 방지 방법이 구현되어 있을 경우 더욱 더 효율이 증가하게 된다.
수도 가변크기 수신버퍼 할당방법은 가변크기 수신버퍼 할당방법처럼 TID 수신버퍼가 사용될 때 할당된다.
하지만 TID별 수신버퍼의 크기를 전체 수신버퍼의 크기나 사용되지 않은 수신버퍼 엘리먼트 개수의 일정 비율로 할당하고 실제 TID 별 수신버퍼는 사용된 수신버퍼만 TID 수신버퍼 관리 테이블을 통해 관리한다.
그리고 나머지 사용되지 않는 버퍼들은 프리 버퍼 풀(Free Buffer Pool) 로 관리된다.
이를 통해 각각의 TID 수신버퍼들은 프리 버퍼 풀을 어느 정도 중첩되게 공유하고 있으므로 송신단에서 가지고 있는 수신버퍼의 크기는 실제 사용된 수신버퍼의 크기보다 더 큰 효과를 나타낸다.
이를 통해 최대 Mac 서비스 데이터 유닛 전송 유지 시간(Max MSDU Transmit Life Time) 이전에 버퍼 오버플로우에 의해 프레임이 누락(Drop) 되는 확률을 감소시키고 집합(Aggregation)시킨 프레임 전송시 송신단에서 새로운 프레임을 더 많이 연결하여 송신할 수 있으므로 전송효율도 증가한다.
수도 가변크기 수신버퍼를 할당하는 방법은 다음과 같다.
전체 메모리의 일정크기는 BS total  로 정의하고 전체 수신버퍼를 할당한다.
BS free  는 현재 사용되지 않은 버퍼의 크기로서 프리 버퍼 풀의 크기를 의미한다.  
이때 수도 가변크기 수신버퍼의 크기 BS tid  
식(2)
Figure 112006023643615-pat00002
또는
식(3)
Figure 112006023643615-pat00003
으로 설정된다.
여기서 α(0<α<1) 는 수도 가변크기 수신버퍼 설정계수이다.
즉 사용되지 않는 버퍼 BS free  나 전체 수신버퍼의 일정비율로 수도 가변크기 수신버퍼를 각 TID에 할당한다.
그리고 만약 BS free  가 커서 TID 수신버퍼의 크기가 최대값 보다 클 경우 최대값으로 설정해 준다.
수도 TID 수신버퍼 크기의 최대값 BS max  는 IEEE 802.11e 표준이나 802.11n JP 스펙(Spec)의 BA 프레임 포맷에 있는 BA 비트맵에 의해 제한된다.
그리고 각 TID 사용버퍼 테이블에 실제 사용된 버퍼 엘리먼트의 어드레스를 저장한다.
도 7은 수도 가변 크기 수신버퍼의 구조를 나타낸 블록도이다.
각 TID별 수신버퍼는 TID 버퍼 관리 테이블(701)과 사용된 버퍼 엘리먼트들(701a)로 구성된다.
그리고 사용되지 않은 버퍼들(702a)은 프리 버퍼 풀(702)에서 관리 된다.
도 8은 TID 버퍼 관리 테이블의 구조를 나타낸 블록도이다.
TID 버퍼 관리 테이블을 도면 8과 같이 생성하여 TID별 사용된 버퍼를 관리한다.
버퍼 관리 테이블(801)에는 할당된 수도 가변크기 TID 버퍼 전체 크기(801a), 사용된 버퍼 개수(801b), 에러 버퍼 개수(801c), 에러 버퍼 테이블(801d), 사용된 버퍼 주소 테이블(801e) 등이 포함된다.
에러 버퍼 테이블은 에러 프레임에 대해 할당된 버퍼에 대한 테이블로 상위 하위에 정상적으로 수신된 프레임의 순차 제어 필드(Sequence Control Field)(802a, 802b)와 버퍼 주소 필드(802c) 등으로 구성된다.
사용된 버퍼 테이블(803)은 성공/에러 여부를 표시하는 필드(Valid Field)(803a)와 순차 제어 필드(Sequence Control Field) (803b), 버퍼 주소 필드(803c), 다음(Next) 버퍼 주소 필드(803d) 등이 포함된다.
즉 수도 가변크기 수신버퍼는 에러 프레임이 존재하고 이후에 새로운 프레임이 수신될 경우 계속 버퍼에 저장하여 나중에 재전송된 프레임을 수신하여 에러 버퍼 테이블과 사용 버퍼 테이블을 사용하여 리오더링(Reordering) 작업을 한 후 에러 프레임 이전의 성공한 프레임들을 상위 계층으로 전달한다.
전달된 버퍼 엘리먼트는 프리 버퍼 풀(702)에 해제(Free) 시킨다.
에러 프레임 이후 새로운 프레임이 계속 수신될 경우 BS free 는 계속 감소하게 되어 버퍼 오버플로우가 발생할 확률이 높아진다.
도 9는 본 발명의 다른 실시예에 따른 수신단에서 수도 가변 크기 수신 버퍼의 오버플로우를 방지하는 과정을 나타낸 흐름도이다.
이는 도 7 내지 도 8에서 상술한 방법을 보완한 것으로 이하 도 3내지 도 4를 참조하여 상세히 설명한다.
도 3에서 도시한 장치(300)의 블록 응답 송수신 체크부(301)에서 블록 응답 수신여부를 체크한다(S901).
체크결과, 블록 응답을 수신했으면 식(2)의 BS free 임계값을 설정하고 엘리먼트 계산부(302)에서 BA를 송신하기 전에 먼저 사용된 수신버퍼 엘리먼트 개수를 계산한다(S902)
그리고 임계값 초과 체크부(303)에서는 S902에서 계산한 결과와 식(1)을 통해 계산된 임계값을 비교한다(S903).
비교결과, 먼저 사용된 수신버퍼 엘리먼트 개수가 식 (1)의 수신버퍼 임계값 보다 크면 필드 관리부(304)에서 BA 콘트롤 필드의 버퍼 오버플로우 워닝 비트를 셋팅(S904)하고 나머지 BA 프레임 필드를 생성한다(S907).
S907후, 송신부(미도시)를 통해 BA 프레임을 전송하게 된다(S908).
S903 결과, 먼저 사용된 수신버퍼 엘리먼트 개수가 식 (1)의 수신버퍼 임계값 보다 작다면 엘리먼트 계산부(302)에서는 프리 버퍼 풀에서 수신버퍼 버퍼의 엘리먼트 개수를 계산한다(S905).
S905후, 임계값 초과 체크부(303)에서는 S905에서 계산한 결과와 식(2)의 BS free 임계값을 비교하여(S906) 프리 버퍼 풀의 수신버퍼 엘리먼트의 개수가 임계값보다 작을 경우, 필드 관리부(304)는 도면 4에서 도시된 BA 프레임의 BA 제어 필드의 예약된(Reserved) 영역의 버퍼 오버플로우 워닝 비트를 셋팅한다(S904).
S904후, 필드 관리부(304)는 나마지 BA 프레임 필드를 생성하고(S907) 송신단(미도시)에서 최소 전송오류로 에러 프레임을 전송(S908)하여 사용된 수신버퍼 엘리먼트가 프리 버퍼 풀에 반환되도록 한다.
S906 결과 프리 버퍼 풀의 수신버퍼 엘리먼트의 개수가 임계값보다 클 경우, S907 내지 S908의 과정을 거치게 된다.
또한 위의 방법과 같이 TID 수신버퍼가 많이 사용되어 수신버퍼 임계값보다 증가하여 버퍼 오버플로우가 발생할 가능성이 높아질 경우, 마찬가지로 현재 도면4에서 도시된 버퍼 오버플로우 워닝 비트를 셋팅하여 전송한다.
송신단에서는 도면 6에서 도시된 것처럼 재전송할 프레임에 대한 전송에러를 최소로 하기 위해 모듈레이션-코딩 스킴(Modulation-Coding Scheme ; MCS)을 변경하거나 재전송할 프레임의 오류정정(FEC) 방법을 적용한다.
802.11e 표준에 의한 BA 사용 예를 보면 먼저 기존의 방법에서 전체 수신버퍼가 128개 수신버퍼 엘리먼트로 구성되어 있고 8개의 TID에 할당한다고 가정하면 각 TID 별 수신버퍼크기가 최대 16이다.
그러므로 최대 버퍼링할 수 있는 프레임 수도 16개이고 그 이상 전송되어 버퍼 풀(Buffer Full)이 발생하면 이전에 수신 성공한 것 중 가장 빠른 순차번호(Sequence Number)를 가진 프레임을 상위 계층으로 전송한다.
제안된 방법을 사용할 경우 먼저 수신버퍼 오버플로우 방지 방법을 사용하면 송수신단에서 수신버퍼 임계값을 설정하여 버퍼 풀(Buffer Full)에 의해 누락되는 프레임이 발생하지 않도록 한다.
또한 수도 가변크기 수신버퍼 할당 방법을 사용할 경우 다음과 같이 파라미터를
- 수도 가변크기 수신버퍼 설정계수(α) : 0.5
- 최대 수도 가변크기 수신버퍼 크기(BS max ): 64
- BS free 임계값: 30
- 수신버퍼 임계계수(β) : 0.8 로 정의한다고 가정한다.
그리고 버퍼 오버플로우 워닝 비트를 B11로 설정한다.
첫번째 수도 가변크기 수신버퍼 크기는 식(2)에 의해 최대 수도 TID 수신버퍼 크기를 할당하여 64로 설정된다.
두번째 TID 수신버퍼를 할당할 때 사용된 버퍼 엘리먼트 갯수가 20 이라고 가정하면 두번째 수도 가변크기 수신버퍼 크기는 식(2)에 의해 54로 설정된다.
세번째 TID를 설정할 경우 사용된 버퍼 엘리먼트 개수가 50이라고 하면 식(1)에 의해 39가 할당된다.
만약 3개의 수도 가변크기 수신버퍼에 의해 사용된 버퍼 엘리먼트 개수가 각각 45, 30, 20 인 상태에서 세번째 TID 프레임들을 10개 받고 BAR를 수신한 경우 BS free 가 23으로 BS free 임계값 이하이므로 수신단에서는 송신할 BA에 버퍼 오버플로우 워닝 비트를 셋팅하여 전송한다.
이때 에러난 프레임을 수신하여 세번째 TID의 수신버퍼 크기가 10이 되었다고 가정하고, 첫번째 TID에서 10 프레임을 수신하여 수신버퍼의 사용된 엘리먼트 갯수가 95가 되면, 수신단에서는 BS free 가 33으로 BS free 임계값 이상이지만 사용수신버퍼 임계값 52보다 크므로 마찬가지로 신할 BA에 버퍼 오버플로우 워닝 비트를 셋팅하여 전송한다.
또한 송신단에서도 도면5의 송신측 수신 버퍼 오버플로우 방지 알고리즘에 의해 첫번째 TID의 에러 프레임들을 최소의 전송오류로 전송한다.
이 프레임들을 수신한 수신단의 첫번째 TID의 사용된 수신버퍼 엘리먼트의 개수가 줄어들어 오버플로우를 방지하게 된다.
이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
상기한 바와 같은 본 발명의 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를 관리하는 방법 및 그 방법을 수행하는 장치에 따르면 다음과 같은 효과가 하나 혹은 그 이상 있다.
첫째, IEEE 802.11 표준에 의한 무선 네트워크를 사용하는 디지털 기기에서, BA 방법으로 데이터를 전송할 경우 수신버퍼의 오버플로우를 방지하는 장점이 있다.
둘째, IEEE 802.11 표준에 의한 무선 네트워크를 사용하는 디지털 기기에서, BA 방법으로 데이터를 전송할 경우 수신버퍼를 효율적으로 할당하여 전송 효율 및 메모리 효율을 증가시키는 장점도 있다.

Claims (5)

  1. 블록 응답(Block Ack, 이하 BA) 송신여부를 체크하는 BA 송신 체크단계;
    BA 송신 시 사용된 버퍼의 엘리먼트를 계산하는 엘리먼트 계산단계;
    계산된 엘리먼트 값을 수신버퍼의 임계값과 비교하는 임계값 초과 체크단계; 및
    임계값 초과 시 BA 프레임의 BA 콘트롤 필드 중 버퍼 오버플로우 워닝 비트(Buffer Overflow Warning Bit) 필드에 값을 셋팅(Setting)하는 필드 값 셋팅단계를 포함하는 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를 관리하는 방법.
  2. BA 수신여부를 체크하는 BA 수신 체크단계;
    BA 수신 시 BA 프레임의 BA 콘트롤 필드 중 버퍼 오버플로우 워닝 비트 필드 값의 셋팅여부를 판단하는 필드 값 확인단계;
    상기 셋팅여부 판단결과에 따라 사용된 버퍼의 엘리먼트를 계산하는 엘리먼트 계산단계; 및
    계산된 엘리먼트 값을 수신버퍼의 임계값과 비교하는 임계값 초과 체크단계를 포함하는 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를 관리하는 방법.
  3. 제 2항에 있어서
    상기 임계값 초과 체크단계에서 임계값 초과 시 에러 프레임 이전의 성공한 프레임들을 상위 계층으로 전달하는 프레임 전달단계를 더 포함하는 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를 관리하는 방법.
  4. BA 송수신 여부를 체크하는 블록 응답 송수신 체크부;
    상시 블록 응답이 사용된 버퍼의 엘리먼트를 계산하는 엘리먼트 계산부;
    상기 계산된 엘리먼트 값을 사용된 수신버퍼의 임계값과 비교하는 임계값 초과 체크부; 및
    상기 임계값 초과 여부에 따라 블록 응답 프레임의 블록 응답 콘트롤 필드(Block Ack Control Field)에 값을 셋팅하는 필드 관리부를 포함하는 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를 관리하는 기능을 수행하는 장치.
  5. 제 4항에 있어서
    상기 필드 관리부는 송신단에서 상기 응답 콘트롤 필드 중 버퍼 오버플로우 워닝 비트 필드 값의 셋팅 여부를 검사하는 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를 관리하는 기능을 수행하는 장치.
KR1020060030647A 2006-04-04 2006-04-04 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를관리하는 방법 및 그 방법을 수행하는 장치 KR100725419B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060030647A KR100725419B1 (ko) 2006-04-04 2006-04-04 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를관리하는 방법 및 그 방법을 수행하는 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060030647A KR100725419B1 (ko) 2006-04-04 2006-04-04 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를관리하는 방법 및 그 방법을 수행하는 장치

Publications (1)

Publication Number Publication Date
KR100725419B1 true KR100725419B1 (ko) 2007-06-07

Family

ID=38358471

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060030647A KR100725419B1 (ko) 2006-04-04 2006-04-04 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를관리하는 방법 및 그 방법을 수행하는 장치

Country Status (1)

Country Link
KR (1) KR100725419B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005011307A2 (en) 2003-07-24 2005-02-03 Koninklijke Philips Electronics, N.V. Admission control to wireless network based on guaranteed transmission rate

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005011307A2 (en) 2003-07-24 2005-02-03 Koninklijke Philips Electronics, N.V. Admission control to wireless network based on guaranteed transmission rate

Similar Documents

Publication Publication Date Title
US9414264B2 (en) Communication apparatus, communication method, and communication system
KR101584873B1 (ko) 채널 통합 및 매체 접근 제어 재전송을 수행하는 방법 및 장치
US7697561B2 (en) Communication apparatus, communication method, and communication system
JP4047836B2 (ja) 通信装置、通信システム、通信方法、および通信制御プログラム
US7009960B2 (en) Medium access control protocol for high rate wireless personal area network
CN100469028C (zh) 聚合将要在无线网络中的信道上发送的帧的方法和系统
US9525519B2 (en) Method and system of transferring data in a carrier aggregation environment
US20060268886A1 (en) Wireless communication method and system for enhancing the capability of WLAN control frames
CN103746936A (zh) 用于从wtru调度上行链路数据的方法以及wtru
KR101011626B1 (ko) 무선 통신 관리 방법
US20230262803A1 (en) Method and apparatus for wireless communication of low latency data between multilink devices
JP4314294B2 (ja) 通信装置、通信システム、通信方法、および通信制御プログラム
KR100755717B1 (ko) 무선 네트워크에서 블록 응답을 향상시키는 장치 및 방법
US20170289843A1 (en) Method and apparatus for transmitting data unit
US9839042B2 (en) Method, apparatus, and system for resource scheduling
Ferre et al. Robust video transmission over wireless LANs
KR100725419B1 (ko) 무선 네트워크를 사용하는 기기에서 효율적으로 수신버퍼를관리하는 방법 및 그 방법을 수행하는 장치
WO2022094974A1 (zh) 数据传输方法、装置、计算机设备及存储介质
Chosokabe et al. A channel adaptive hybrid aggregation scheme for next generation wireless LAN
Jiang et al. An adaptive round robin scheduler for head-of-line-blocking problem in wireless LANs
CN108631918A (zh) 数据传输的方法和装置
CN103812606B (zh) 提高无线链路的效率的方法和系统
US9479351B2 (en) Method and apparatus for providing voice service in communication system
Wall et al. An adaptive ARQ enhancement to support multimedia traffic using 802.11 wireless LANs
CN114257602B (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
LAPS Lapse due to unpaid annual fee