KR20210119212A - A-mpdu를 지원하는 차량용 무선랜에서 블록 ack 송신 방법 - Google Patents

A-mpdu를 지원하는 차량용 무선랜에서 블록 ack 송신 방법 Download PDF

Info

Publication number
KR20210119212A
KR20210119212A KR1020200035845A KR20200035845A KR20210119212A KR 20210119212 A KR20210119212 A KR 20210119212A KR 1020200035845 A KR1020200035845 A KR 1020200035845A KR 20200035845 A KR20200035845 A KR 20200035845A KR 20210119212 A KR20210119212 A KR 20210119212A
Authority
KR
South Korea
Prior art keywords
block ack
link
mpdu
addba
data
Prior art date
Application number
KR1020200035845A
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 KR1020200035845A priority Critical patent/KR20210119212A/ko
Publication of KR20210119212A publication Critical patent/KR20210119212A/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/1867Arrangements specially adapted for the transmitter end
    • H04L1/1874Buffer management
    • H04L1/1877Buffer management for semi-reliable protocols, e.g. for less sensitive applications like streaming video
    • 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
    • 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
    • H04L1/1838Buffer management for semi-reliable protocols, e.g. for less sensitive applications such as streaming video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W74/00Wireless channel access, e.g. scheduled or random access
    • H04W74/08Non-scheduled or contention based access, e.g. random access, ALOHA, CSMA [Carrier Sense Multiple Access]
    • H04W74/0833Non-scheduled or contention based access, e.g. random access, ALOHA, CSMA [Carrier Sense Multiple Access] using a random access procedure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]

Abstract

본 발명은 IEEE 802.11bd의 A-MPDU 전송시 block ack operation을 원활하게 작동시키는 block ack agreement 회피 기법에 관한 것으로, 역동적인 채널 상황 및 통신 시나리오에서 무선랜의 안정성을 향상시킬 수 있다.

Description

A-MPDU를 지원하는 차량용 무선랜에서 블록 ACK 송신 방법{METHOD FOR TRANSMITTING BLOCK ACKNOWLEDGEMENT IN VEHICULAR WIRELESS LOCAL ACCESS NETWORK SUPPORTING AGGREGATED-MAC PROTOCOL DATA UNIT}
본 발명은 무선랜 통신방법에 관한 것으로, 더욱 상세하게는 차량 통신 환경의 무선랜에서 block ack 동작을 수행할 수 있는 통신 방법, 장치 및 시스템에 관한 것이다.
정보화 시대가 고도화됨에 따라서 무선랜(Wireless LAN) 기술이 많은 각광을 받고 있다. 무선랜 기술은 현재 OFDM(Orthogonal Frequency Division Multiplex) 기술을 적용하여 두 대 이상의 장치를 연결하는 기술이다. 이를 이용해 사용자는 가정이나 사무실에서 무선 네트워크 장비가 있는 곳에서 언제든지 이동하면서도 지속적으로 네트워크에 접근할 수 있다. 오늘날 대부분의 무선랜 기술은 IEEE 802.11 표준에 기반하고 있으며, 와이파이라는 마케팅 네임으로 잘 알려져 있다. 특히 4차 산업혁명 시대의 핵심기술인 인공지능, 자율주행 기술 등이 대용량의 데이터를 실시간으로 처리해야 하기 때문에 셀룰러 통신에 비해서 운용 비용이 저렴한 무선랜 기술은 더욱 각광을 받고 있고, 현재 많은 연구가 진행 중이다.
무선랜 기술은 IEEE(Institute of Electrical and Electronics Engineers) 802.11을 통해 2.4GHz 주파수를 사용하여 주파수 도약(hopping), 대역확산, 적외선 통신 등의 기술을 적용하여, 1~2Mbps의 속도를 지원하는 것부터 시작했다. 그 후, 최대 54Mbps의 속도를 지원함과 동시에 이외에도 QoS(Quality for Service)의 향상, 액세스 포인트(Access Point, AP) 프로토콜 호환, 보안 강화(security enhancement), 무선 자원 측정(radio resource measurement), 차량 환경을 위한 무선 접속(wireless access vehicular environment), 빠른 로밍(fast roaming), 메쉬 네트워크(mesh network), 외부 네트워크와의 상호작용(interworking with external network), 무선 네트워크 관리(wireless network management) 등 다양한 기술의 표준을 실용화 또는 개발 중에 있다.
현재 IEEE 802.11 표준에서 IEEE 802.11a/b/g/n/ac/ad 등이 상용화가 되어 있고, 그 중 IEEE 802.11b는 2.4GHz 밴드의 주파수를 사용하면서 최고 11Mbps의 통신 속도를 지원한다.
IEEE 802.11a는 다양한 통신 프로토콜들이 사용하기 때문에 간섭이 심한 2.4GHz 밴드가 아닌 5GHz 밴드의 주파수를 사용하고, OFDM 기술을 적용하여 통신 속도를 최대 54Mbps까지 향상시켰다. 그러나 전파의 특성에 따라 5GHz 밴드의 전파는 직진성이 좋은 반면, 회절 성능이 떨어져서 IEEE 802.11a는 IEEE 802.11b에 비해 통신 거리가 짧은 단점이 있다.
IEEE 802.11g는 IEEE 802.11b와 마찬가지로 2.4GHz 밴드를 사용한다. 최대 54Mbps의 통신속도를 구현함과 동시에 IEEE 802.11b와의 하위 호환성(backward compatibility) 측면에서도 좋은 성능을 보이고 있다.
IEEE 802.11n은 그동안 무선랜의 취약점으로 알려진 통신 속도에 대한 한계를 극복하기 위하여 만들어진 기술로써 네트워크의 속도와 신뢰성을 증가시킴과 동시에 무선 네트워크의 운영 거리를 확장하는 목적을 가졌다. OFDM과 더불어 송신부와 수신부 양단 모두에 다중 안테나를 사용하는 MIMO (Multiple Inputs and Multiple Outputs) 기술을 적용함으로써 IEEE 802.11n은 데이터 처리 속도가 최대 540Mbps 이상인 고처리율(High Throughput, HT)을 지원한다. 또한, 데이터 신뢰성을 높이기 위해 중복되는 사본을 여러 개 전송하는 코딩 방식 또한 채택하였다.
IEEE 802.11ac는 데이터 처리 속도가 최대 540Mbps 이상인 고처리율(High Throughput, HT)보다 더 높은 처리율(Very High Throughput, VHT)을 지원하기 위해 만들어 졌다. 그래서 IEEE 802.11ac는 5GHz 밴드를 중심 주파수 대역대로 선택하고, 높은 데이터 처리율을 지원하기 위해서 넓은 대역폭(80MHz~160MHz)을 설정했다. 그리고 IEEE 802.11ac는 5GHz 대역 뿐만 아니라 기존 2.4GHz 대역 역시 지원함으로써 기존 제품 들과의 하위 호환성을 갖추고 있다. IEEE 802.11ac는 이론적으로 다중 단말의 무선랜 속도는 최소 1Gbps, 최대 단일 링크 속도는 최소 500Mbps까지 도달할 수 있고, 이는 더 넓은 무선 주파수 대역폭(최대 160MHz), 더 많은 MIMO 공간적 스트림(최대 8개), 다중 사용자 MIMO, 그리고 높은 밀도의 변조(최대 256 QAM) 등 확장된 무선 인터페이스 기술을 도입함으로써 이루어진다.
IEEE 802.11ad는 기존 2.5GHz/5GHz 대신 60GHz 밴드를 사용하여 데이터를 전송한다. IEEE 802.11ad는 빔포밍 기술을 이용하여 최대 7Gbps의 속도를 지원하기 때문에 대용량의 데이터나 무압축 HD 비디오 등 높은 비트레이트 동영상 스트리밍에 적합하지만, 주파수 특성상 회절성이 떨어지기 때문에 장애물 통과가 어려워 근거리 공간에서만 사용 가능하다.
IEEE 802.11p는 지능형 교통정보시스템 (Intelligent Transport System, ITS) 통신용으로 개발된 표준이다. IEEE 802.11a의 물리계층을 차용함과 동시에 IEEE 802.11e의 EDCA를 MAC 기술로써 사용하고 있다. 채널 대역폭은 10MHz를 기반으로 application에 따라 채널을 구분해서 사용한다. 10MHz 대역폭을 사용하기 때문에 20MHz 채널을 기본으로 사용하는 다른 무선랜에 비해 데이터를 전송하는데 걸리는 시간이 더 많이 걸리며 이에 따라 채널 용량이 적은 문제점이 있다. Basic Service Set (BSS)의 개념이 존재하지 않기 때문에 단말들이 접속점과 Association을 하지 않고도 데이터를 송수신할 수 있는 Outside Context of BSS (OCB)를 지원한다.
IEEE 802.11bd는 IEEE 802.11p의 다음 세대 기술로써 현재 표준화 작업이 활발하게 진행 중이고, 최근 unicast OCB에서 A-MSDU와 A-MPDU 전송이 승인되었다.
한편, 발명의 배경이 되는 기술은 발명의 배경에 대한 이해를 증진하기 위하여 작성된 것으로서, 이 기술이 속하는 분야에서 통상의 지식을 가진 자에게 이미 알려진 종래 기술이 아닌 내용을 포함할 수 있다.
본 발명은 차세대 차량용 무선랜의 A-MPDU를 이용한 데이터 전송시 역동적인 채널 및 통신 시나리오에 의해서 block ack operation이 원활히 수행될 수 없는 상황에서 block ack 동작을 수행할 수 있는 방법을 제공한다.
상기 목적을 달성하기 위한 본 발명의 실시예에 따른 QoS data MPDU 내부에 새로운 필드 정의와 해당 필드에서 block ack agreement의 중요 파라미터들을 전송하여 block ack을 수행할 수 있는 기법을 포함한다.
본 발명에 의하면, 차세대 차량용 무선랜에서 block ack 동작을 수행할 수 있도록 하여, QoS data MPDU들을 전송함으로써 역동적인 채널 상황 및 통신 시나리오에서 무선랜의 신뢰성 및 안정성을 향상시킬 수 있다.
본 발명은 무선랜을 이용하는 단말기 (스테이션) 내지 무선 접속점 내지 접속 관리장치 등 다양한 통신 디바이스에서 사용 가능하다.
도 1은 무선랜 시스템의 제1 실시예를 도시한 개념도이다.
도 2는 무선랜 시스템을 구성하는 통신 노드의 제1 실시예를 도시한 블록도이다.
도 3은 무선랜 시스템에서 스테이션의 연결 절차를 도시한 순서도이다.
도 4는 EDCA에 기초한 통신 노드의 동작 방법의 제1 실시예를 도시한 타이밍도이다.
도 5는 IEEE 802.11 기반 block ack operation의 실시예를 도시한 개념도이다.
도 6은 차량용 무선랜에서 block ack operation을 도입했을 때의 문제점을 도시한 개념도이다.
도 7은 QoS data MPDU의 MAC header에서 새로운 ADDBA information 필드를 정의한 실시예를 도시한 개념도이다.
도 8은 QoS data MPDU의 MAC header에서 ADDBA information 필드를 다른 형태로 정의한 실시예를 도시한 개념도이다.
도 9는 sequence number bitmap 필드를 이용해서 start sequence number를 관리하는 실시예를 도시한 개념도이다.
도 10은 block ack의 MAC header에서 새로운 ADDBA information 필드를 정의한 실시예를 도시한 개념도이다.
도 11은 본 발명에서 제안된 차량용 무선랜에서 A-MPDU를 지원하기 위한 block ack 동작 방법의 실시예를 도시한 개념도이다.
도 12는 ADDBA information 필드 전송 전, originator가 recipient의 buffer size를 모르는 상태에서 A-MPDU의 MPDU 개수를 조절하여 보내는 동작 방법의 실시예를 도시한 개념도이다.
도 13은 차량들이 주기적으로 전송하는 BSM(basic safety message) 또는 다양한 안전 관련 메시지들에 buffer size level을 포함하여 전송하는 방법의 실시예를 도시한 개념도이다.
도 14는 MAC header의 다양한 필드를 이용해서 buffer size level을 표시하는 방법의 실시예를 도시한 개념도이다.
도 15는 미리 정해진 파라미터를 수정하는 과정을 도시한 개념도이다.
도 16은 block ack timeout value timeout value를 이용해서 세션의 유효 기간을 연장하거나 세션을 일찍 종료시키는 방법을 도시한 개념도이다.
도 17은 세 개 이상의 block ack 세션이 혼재되어 있을 때, originator에 의한 <RA,TA,TID> 튜플 관리 기법을 도시한 개념도이다.
도 18은 세 개 이상의 block ack 세션이 혼재되어 있을 때, SSN을 이용한 관리 기법을 도시한 개념도이다.
도 19는 하나의 STA가 둘 이상의 AP들에게 순서대로 데이터를 전송하는 업링크 상황에서 제안된 ADDBA information 필드를 이용하여 recipient들의 reordering buffer를 정리하는 기법을 도시한 개념도이다.
도 20은 하나의 STA가 둘 이상의 AP들에게 순서대로 데이터를 전송하는 업링크 상황에서 AP끼리 제안된 ADDBA information 필드를 전송함으로써 reordering buffer를 정리하는 기법을 도시한 개념도이다.
도 21은 하나의 STA가 둘 이상의 AP들에게 순서대로 데이터를 전송하는 업링크 상황에서 AP끼리 제안된 ADDBA information 필드를 전송하는 과정에서 딜레이가 발생했을 때, null packet을 전송함으로써 TXOP를 계속 유지하는 기법을 도시한 개념도이다.
도 22는 하나의 STA가 둘 이상의 AP들에게 순서대로 데이터를 전송하는 업링크 상황에서 multi-link sub field를 사용하는 기법을 도시한 개념도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.
그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조 부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
아래에서, 본 발명에 따른 실시예들이 적용되는 무선 통신 네트워크(wireless communication network)가 설명될 것이다. 본 발명에 따른 실시예들이 적용되는 무선 통신 네트워크는 아래 설명된 내용에 한정되지 않으며, 본 발명에 따른 실시예들은 다양한 무선 통신 네트워크들에 적용될 수 있다.
도 1은 무선랜 시스템의 제1 실시예를 도시한 개념도이다.
도 1을 참조하면, 무선랜 시스템은 적어도 하나의 기본 서비스 세트(basic service set; BSS)를 포함할 수 있다. BSS는 성공적으로 동기화를 이루어서 서로 통신할 수 있는 스테이션(STA1, STA2(AP1), STA3, STA4, STA5(AP2), STA6, STA7, STA8)의 집합을 의미하며, 특정 영역을 의미하는 개념은 아니다. 아래 실시예들에서 액세스 포인트(access point)의 기능을 수행하는 스테이션은 "액세스 포인트(AP)"로 지칭될 수 있고, 액세스 포인트의 기능을 수행하지 않는 스테이션은 "non-AP 스테이션" 또는 "스테이션"으로 지칭될 수 있다.
BSS는 인프라스트럭쳐 BSS(infrastructure BSS)와 독립 BSS(independent BSS; IBSS)로 구분될 수 있다. 여기서, BSS1과 BSS2는 인프라스트럭쳐 BSS를 의미할 수 있고, BSS3은 IBSS를 의미할 수 있다. BSS1은 제1 스테이션(STA1), 분배 서비스(distribution service)를 제공하는 제1 액세스 포인트(STA2(AP1)), 및 다수의 액세스 포인트들(STA2(AP1), STA5(AP2))을 연결하는 분배 시스템(distribution system, DS)을 포함할 수 있다. BSS1에서 제1 액세스 포인트(STA2(AP1))는 제1 스테이션(STA1)을 관리할 수 있다.
BSS2는 제3 스테이션(STA3), 제4 스테이션(STA4), 분배 서비스를 제공하는 제2 액세스 포인트(STA5(AP2)), 및 다수의 액세스 포인트들(STA2(AP1), STA5(AP2))을 연결하는 분배 시스템(DS)을 포함할 수 있다. BSS2에서 제2 액세스 포인트(STA5(AP2))는 제3 스테이션(STA3)과 제4 스테이션(STA4)을 관리할 수 있다.
BSS3은 애드-혹(ad-hoc) 모드로 동작하는 IBSS를 의미할 수 있다. BSS3에는 중앙에서 관리 기능을 수행하는 개체(centralized management entity)인 액세스 포인트가 존재하지 않을 수 있다. 즉, BSS3에서 스테이션들(STA6, STA7, STA8)은 분산된 방식(distributed manner)으로 관리될 수 있다. BSS3에서 모든 스테이션들(STA6, STA7, STA8)은 이동 스테이션을 의미할 수 있으며, 분배 시스템(DS)으로 접속이 허용되지 않으므로 자기 완비적 네트워크(self-contained network)를 이룬다.
액세스 포인트(STA2(AP1), STA5(AP2))는 자신에게 결합된 스테이션(STA1, STA3, STA4)을 위하여 무선 매체를 통해 분산 시스템(DS)에 대한 접속을 제공할 수 있다. BSS1 또는 BSS2에서 스테이션들(STA1, STA3, STA4) 사이의 통신은 일반적으로 액세스 포인트(STA2(AP1), STA5(AP2))를 통해 이루어지나, 다이렉트 링크(direct link)가 설정된 경우에는 스테이션들(STA1, STA3, STA4) 간의 직접 통신이 가능하다.
복수의 인프라스트럭쳐 BSS들은 분배 시스템(DS)을 통해 상호 연결될 수 있다. 분배 시스템(DS)을 통하여 연결된 복수의 BSS들을 확장된 서비스 세트(extended service set, ESS)라 한다. ESS에 포함되는 통신 노드들(STA1, STA2(AP1), STA3, STA4, STA5(AP2))은 서로 통신할 수 있으며, 동일한 ESS 내에서 임의의 스테이션(STA1, STA3, STA4)은 끊김 없이 통신하면서 하나의 BSS에서 다른 BSS로 이동할 수 있다.
분배 시스템(DS)은 하나의 액세스 포인트가 다른 액세스 포인트와 통신하기 위한 메커니즘(mechanism)으로서, 이에 따르면 액세스 포인트는 자신이 관리하는 BSS에 결합된 스테이션들을 위해 프레임을 전송하거나, 다른 BSS로 이동한 임의의 스테이션을 위해 프레임을 전송할 수 있다. 또한, 액세스 포인트는 유선 네트워크 등과 같은 외부 네트워크와 프레임을 송수신할 수 있다. 이러한 분배 시스템(DS)은 반드시 네트워크일 필요는 없으며, IEEE 802.11 표준에 규정된 소정의 분배 서비스를 제공할 수 있다면 그 형태에 대해서는 아무런 제한이 없다. 예를 들어, 분배 시스템은 메쉬 네트워크(mesh network)와 같은 무선 네트워크이거나, 액세스 포인트들을 서로 연결시켜 주는 물리적인 구조물일 수 있다. 무선랜 시스템에 포함된 통신 노드들(STA1, STA2(AP1), STA3, STA4, STA5(AP2), STA6, STA7, STA8)은 다음과 같이 구성될 수 있다.
도 2는 무선랜 시스템을 구성하는 통신 노드의 제1 실시예를 도시한 블록도이다.
도 2를 참조하면, 통신 노드(200)는 적어도 하나의 프로세서(210), 메모리(220) 및 네트워크와 연결되어 통신을 수행하는 송수신 장치(230)를 포함할 수 있다. 송수신 장치(230)는 트랜시버(transceiver), RF(radio frequency) 유닛, RF 모듈(module) 등으로 지칭될 수 있다. 또한, 통신 노드(200)는 입력 인터페이스 장치(240), 출력 인터페이스 장치(250), 저장 장치(260) 등을 더 포함할 수 있다. 통신 노드(200)에 포함된 각각의 구성 요소들은 버스(bus)(270)에 의해 연결되어 서로 통신을 수행할 수 있다.
다만, 통신 노드(200)에 포함된 각각의 구성요소들은 공통 버스(270)가 아니라, 프로세서(210)를 중심으로 개별 인터페이스 또는 개별 버스를 통하여 연결될 수도 있다. 예를 들어, 프로세서(210)는 메모리(220), 송수신 장치(230), 입력 인터페이스 장치(240), 출력 인터페이스 장치(250) 및 저장 장치(260) 중에서 적어도 하나와 전용 인터페이스를 통하여 연결될 수도 있다.
프로세서(210)는 메모리(220) 및 저장 장치(260) 중에서 적어도 하나에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(210)는 중앙 처리 장치(central processing unit, CPU), 그래픽 처리 장치(graphics processing unit, GPU), 또는 본 발명의 실시예들에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(220) 및 저장 장치(260) 각각은 휘발성 저장 매체 및 비휘발성 저장 매체 중에서 적어도 하나로 구성될 수 있다. 예를 들어, 메모리(220)는 읽기 전용 메모리(read only memory, ROM) 및 랜덤 액세스 메모리(random access memory, RAM) 중에서 적어도 하나로 구성될 수 있다.
한편, 무선랜 시스템에서 연결 절차는 다음과 같이 수행될 수 있다.
도 3은 무선랜 시스템에서 스테이션의 연결 절차를 도시한 순서도이다.
도 3을 참조하면, 인프라스트럭쳐 BSS에서 스테이션(STA)의 연결 절차는 크게 액세스 포인트(AP)를 탐지하는 단계(probe step), 탐지된 액세스 포인트(AP)와의 인증 단계(authentication step), 및 인증 절차를 수행한 액세스 포인트(AP)와의 연결 단계(association step)로 구분될 수 있다.
스테이션(STA)은 먼저 패시브 스캐닝(passive scanning) 방법 또는 액티브 스캐닝(active scanning) 방법을 사용하여 이웃한 액세스 포인트들(APs)을 탐지할 수 있다. 패시브 스캐닝 방법을 사용하는 경우, 스테이션(STA)은 액세스 포인트들(APs)이 전송하는 비컨을 엿들음(overhearing)으로써 이웃한 액세스 포인트들(APs)을 탐지할 수 있다. 액티브 스캐닝 방법을 사용하는 경우, 스테이션(STA)은 프로브 요청 프레임(probe request frame)을 전송할 수 있고, 액세스 포인트들(APs)로부터 프로브 요청 프레임에 대한 응답인 프로브 응답 프레임(probe response frame)을 수신함으로써 이웃한 액세스 포인트들(APs)을 탐지할 수 있다.
이웃한 액세스 포인트들(APs)이 탐지된 경우, 스테이션(STA)은 탐지된 액세스 포인트(AP)와의 인증 단계를 수행할 수 있다. 이 경우, 스테이션(STA)은 복수의 액세스 포인트들(APs)과 인증 단계를 수행할 수 있다. IEEE 802.11 표준에 따른 인증 알고리즘(algorithm)은 두 개의 인증 프레임을 교환하는 오픈 시스템(open system) 알고리즘, 네 개의 인증 프레임을 교환하는 공유 키(shared key) 알고리즘 등으로 구분될 수 있다.
스테이션(STA)은 IEEE 802.11 표준에 따른 인증 알고리즘을 기반으로 인증 요청 프레임(authentication request frame)을 전송할 수 있고, 액세스 포인트(AP)로부터 인증 요청 프레임에 대한 응답인 인증 응답 프레임(authentication response frame)을 수신함으로써 액세스 포인트(AP)와의 인증을 완료할 수 있다.
액세스 포인트(AP)와의 인증이 완료된 경우, 스테이션(STA)은 액세스 포인트(AP)와의 연결 단계를 수행할 수 있다. 이 경우, 스테이션(STA)은 자신과 인증 단계를 수행한 액세스 포인트들(APs) 중 하나의 액세스 포인트(AP)를 선택할 수 있고, 선택된 액세스 포인트(AP)와 연결 단계를 수행할 수 있다. 즉, 스테이션(STA)은 연결 요청 프레임(association request frame)을 선택된 액세스 포인트(AP)에 전송할 수 있고, 선택된 액세스 포인트(AP)로부터 연결 요청 프레임에 대한 응답인 연결 응답 프레임(association response frame)을 수신함으로써 선택된 액세스 포인트(AP)와의 연결을 완료할 수 있다.
한편, 무선랜 시스템에 속한 통신 노드(예를 들어, 액세스 포인트, 스테이션 등)는 PCF(point coordination function), HCF(hybrid coordination function), HCCA(HCF controlled channel access), DCF(distributed coordination function), EDCA(enhanced distributed channel access) 등에 기초하여 프레임의 송수신 동작을 수행할 수 있다.
무선랜 시스템에서 프레임은 관리(management) 프레임, 제어(control) 프레임 및 데이터 프레임으로 분류될 수 있다. 관리 프레임은 연결 요청(association request) 프레임, 연결 응답(response) 프레임, 재연결(reassociation) 요청 프레임, 재연결 응답 프레임, 프로브 요청(probe request) 프레임, 프로브 응답 프레임, 비컨(beacon) 프레임, 연결 해제(disassociation) 프레임, 인증(authentication) 프레임, 인증 해제(deauthentication) 프레임, 액션(action) 프레임 등을 포함할 수 있다.
제어 프레임은 ACK(acknowledgement) 프레임, BAR(block ACK request) 프레임, BA(block ACK) 프레임, PS(power saving)-Poll 프레임, RTS(request to send) 프레임, CTS(clear to send) 프레임 등을 포함할 수 있다. 데이터 프레임은 QoS(quality of service) 데이터 프레임 및 비-QoS(non-QoS) 데이터 프레임으로 분류될 수 있다. QoS 데이터 프레임은 QoS에 따른 전송이 요구되는 데이터 프레임을 지시할 수 있고, 비-QoS 데이터 프레임은 QoS에 따른 전송이 요구되지 않는 데이터 프레임을 지시할 수 있다.
한편, 무선랜 시스템에서 통신 노드(예를 들어, 액세스 포인트, 스테이션)는 EDCA에 기초하여 동작할 수 있다.
도 4는 EDCA에 기초한 통신 노드의 동작 방법의 제1 실시예를 도시한 타이밍도이다.
도 4를 참조하면, 제어 프레임(또는, 관리 프레임)을 전송하고자 하는 통신 노드는 미리 설정된 구간(예를 들어, SIFS(short interframe space), PIFS(PCF IFS)) 동안 채널 상태의 모니터링(monitoring) 동작(예를 들어, 캐리어 센싱(carrier sensing) 동작)을 수행할 수 있고, 미리 설정된 구간(예를 들어, SIFS, PIFS) 동안 채널 상태가 아이들 상태(idle state)로 판단된 경우에 제어 프레임(또는, 관리 프레임)을 전송할 수 있다. 예를 들어, 통신 노드는 SIFS 동안 채널 상태가 아이들 상태로 판단된 경우에 ACK 프레임, BA 프레임, CTS 프레임 등을 전송할 수 있다. 또한, 통신 노드는 PIFS 동안 채널 상태가 아이들 상태로 판단된 경우에 비컨 프레임 등을 전송할 수 있다. 반면, 미리 설정된 구간(예를 들어, SIFS, PIFS) 동안 채널 상태가 비지(busy) 상태로 판단된 경우, 통신 노드는 제어 프레임(또는, 관리 프레임)을 전송하지 않을 수 있다. 여기서, 캐리어 센싱 동작은 CCA(clear channel assessment) 동작을 지시할 수 있다.
비-QoS 데이터 프레임을 전송하고자 하는 통신 노드는 DIFS(DCF IFS) 동안 채널 상태의 모니터링 동작(예를 들어, 캐리어 센싱 동작)을 수행할 수 있고, DIFS 동안 채널 상태가 아이들 상태로 판단된 경우에 랜덤 백오프(random backoff) 절차를 수행할 수 있다. 예를 들어, 통신 노드는 랜덤 백오프 절차에 따른 경쟁 윈도우(contention window) 내에서 백오프 값(예를 들어, 백오프 카운터)를 선택할 수 있고, 선택된 백오프 값에 대응하는 구간(이하 "백오프 구간"이라 함) 동안에 채널 상태의 모니터링 동작(예를 들어, 캐리어 센싱 동작)을 수행할 수 있다. 통신 노드는 백오프 구간 동안에 채널 상태가 아이들 상태로 판단된 경우에 비-QoS 데이터 프레임을 전송할 수 있다.
QoS 데이터 프레임을 전송하고자 하는 통신 노드는 AIFS(arbitration IFS) 동안에 채널 상태의 모니터링 동작(예를 들어, 캐리어 센싱 동작)을 수행할 수 있고, AIFS 동안 채널 상태가 아이들 상태로 판단된 경우에 랜덤 백오프 절차를 수행할 수 있다. AIFS는 QoS 데이터 프레임에 포함된 데이터 유닛(예를 들어, PDU(protocol data unit))의 AC(access category)에 따라 설정될 수 있다. 데이터 유닛의 AC는 아래 표 1과 같을 수 있다.
Figure pat00001
AC_BK는 백그라운드(background) 데이터를 지시할 수 있고, AC_BE는 베스트 에퍼트(best effort) 방식으로 전송되는 데이터를 지시할 수 있고, AC_VI는 비디오(video) 데이터를 지시할 수 있고, AC_VO는 보이스(voice) 데이터를 지시할 수 있다. 예를 들어, AC_VO 및 AC_VI 각각에 대응하는 QoS 데이터 프레임을 위한 AIFS의 길이는 DIFS의 길이와 동일하게 설정될 수 있다. AC_BE 및 AC_BK 각각에 대응하는 QoS 데이터 프레임을 위한 AIFS의 길이는 DIFS의 길이보다 길게 설정될 수 있다. 여기서, AC_BK에 대응하는 QoS 데이터 프레임을 위한 AIFS의 길이는 AC_BE에 대응하는 QoS 데이터 프레임을 위한 AIFS의 길이보다 길게 설정될 수 있다.
랜덤 백오프 절차에서 통신 노드는 QoS 데이터 프레임의 AC에 따른 경쟁 윈도우 내에서 백오프 값(예를 들어, 백오프 카운터)를 선택할 수 있다. AC에 따른 경쟁 윈도우는 아래 표 2와 같을 수 있다. CWmin은 경쟁 윈도우의 최소값을 지시할 수 있고, CWmax는 경쟁 윈도우의 최대값을 지시할 수 있고, 경쟁 윈도우의 최소값 및 최대값 각각은 슬롯의 개수로 표현될 수 있다.
Figure pat00002
통신 노드는 백오프 구간 동안에 채널 상태의 모니터링 동작(예를 들어, 캐리어 센싱 동작)을 수행할 수 있고, 백오프 구간 동안에 채널 상태가 아이들 상태로 판단된 경우에 QoS 데이터 프레임을 전송할 수 있다.
다음으로, 차량용 무선랜에서의 블록 ACK 동작 방법들이 설명될 것이다. 통신 노드들 중에서 제1 통신 노드에서 수행되는 방법(예를 들어, 신호의 전송 또는 수신)이 설명되는 경우에도 이에 대응하는 제2 통신 노드는 제1 통신 노드에서 수행되는 방법과 상응하는 방법(예를 들어, 신호의 수신 또는 전송)을 수행할 수 있다. 즉, 단말의 동작이 설명된 경우에 이에 대응하는 기지국은 단말의 동작과 상응하는 동작을 수행할 수 있다. 반대로, 기지국의 동작이 설명된 경우에 이에 대응하는 단말은 기지국의 동작과 상응하는 동작을 수행할 수 있다.
아래에서, 본 발명에 따른 실시예들이 적용되는 무선 통신 네트워크(wireless communication network)가 설명될 것이다. 본 발명에 따른 실시예들이 적용되는 무선 통신 네트워크는 아래 설명된 내용에 한정되지 않으며, 본 발명에 따른 실시예들은 다양한 무선 통신 네트워크들에 적용될 수 있다.
도 5는 IEEE 802.11 기반 block ack operation의 실시예를 도시한 개념도이다.
도 5를 참조하면, originator가 recipient에게 QoS data MPDU를 전송하는 상황이다. originator는 QoS data MPDU들을 전송하기에 앞서서 block ack agreement 과정을 통해서 block ack operation 지원을 위한 중요한 파라미터들을 협상한다. 해당 과정은 originator가 ADDBA request를 전송함으로써 시작되고, ADDBA request에는 block ack parameter set, block ack timeout value, block ack starting sequence control 등의 필드가 정의되어 있다. ADDBA request를 수신한 recipient는 ack을 전송하고 바로 ADDBA response를 전송한다. ADDBA response에는 block ack parameter set, block ack timeout value 등의 필드가 정의되어 있다. 이와 같이 block ack agreement를 통해서 중요한 파라미터들을 협상한 후, originator는 QoS data MPDU들을 전송할 수 있고 DELBA frame을 전송함으로써 해당 block ack 세션을 끝낼 수 있다.
도 6은 차량용 무선랜에서 block ack operation을 도입했을 때의 문제점을 도시한 개념도이다.
도 6을 참조하면, 위쪽 그림과 같이 차량간 거리가 좁아졌을 때, originator가 QoS data MPDU들을 전송하기 위해서 우선 block ack agreement를 수행해야 한다. 그러나 차량간 속도 차이나 트래픽에 따라서 block ack agreement 수행 후, 아래 그림과 같이 차량간 거리가 멀어지는 경우가 발생할 수 있고 이런 경우에 QoS data MPDU들을 전송하지 못하게 된다. 본 발명은 이와 같은 문제점을 해결하기 위해서 QoS data MPDU에 새로운 필드를 정의하고, 해당 필드에서 block ack agreement의 중요 파라미터들을 전송하여 block ack agreement를 생략할 수 있는 방법을 제시한다.
도 7은 QoS data MPDU의 MAC header에서 새로운 ADDBA information 필드를 정의한 실시예를 도시한 개념도이다.
도 7을 참조하면, originator가 전송하는 QoS data MPDU의 MAC header에 새로운 ADDBA information 필드를 정의한다. 본 실시예에 따르면 frame control 필드의 type과 subtype 필드의 reserved 된 값을 이용하여 ADDBA information 필드에 48bit를 할당하고, block ack agreement에서 협상되는 파라미터들 중 block ack timeout value, buffer size, fragment number, start sequence number, multi-link를 지원하기 위한 multi-link 등을 포함한다. 해당 파라미터들을 QoS data MPDU 전송과 동시에 전송함으로써 QoS data MPDU 전송 이전 별도의 block ack agreement 과정이 생략되고 block ack agreement 과정을 상기 QoS data MPDU 전송을 통해 수행한다.
Originator는 A-MPDU 최초 전송시, 즉 새로운 block ack session 시작시 첫번째 MPDU에 제안된 파라미터들을 반드시 포함해서 전송해야 한다. Block ack timeout value는 block ack session의 파기 시간을 표시하는 파라미터로써 recipient가 해당 파라미터를 수신 후, 해당 값을 도 10의 실시예에서 제시한 block ack의 ADDBA information 필드의 block ack timeout value 서브 필드에 표시함으로써 이번 block ack session의 timeout value가 계약된다. Originator는 일반적으로 recipient로부터 block ack을 수신 후, 해당 timeout value 시간 동안 특별한 데이터 전송이 없다면 해당 block ack session이 끝난 것이라고 판단하고, recipient는 일반적으로 originator로부터 QoS data MPDU를 수신 후, 해당 timeout value 시간 동안 특별한 데이터 전송이 없다면 해당 block ack session이 끝난 것이라고 판단한다. Buffer size는 originator의 transmit window size와 recipient의 receive window size를 조율하는 파라미터이다. 본 발명에서 originator는 MPDU의 ADDBA information 필드의 buffer size 서브 필드를 이용해서 해당 block ack session 동안에 최대 전송할 수 있는 MSDU의 개수를 recipient에게 제안할 수 있다. Recipient는 originator로부터 수신 MPDU의 buffer size 서브 필드의 값과 자신의 reordering buffer의 값 중 작은 값을 도 10의 실시예에서 제시한 block ack의 ADDBA information 필드의 buffer size 서브 필드에 표시함으로써 해당 block ack session동안 buffer size를 결정한다. Fragment number는 MSDU 등의 fragment의 순서를 기록하는 파라미터이고, start sequence number는 새로운 block ack session의 A-MPDU의 첫번째 MSDU의 sequence number를 표시한다. Originator는 start sequence number를 recipient에게 알림으로써 recipient의 block ack bitmap의 시작 지점을 지시하고, recipient는 해당 파라미터 값을 기준으로 bitmap을 업데이트한다. Multi-link 서브 필드는 해당 ADDBA information이 적용될 multi-link mode, link id, former link id 등과 같은 멀티링크 관련 정보를 포함하고 있다. 상기 multi-link mode는 synchronous, asynchronous를 알려 줄 수 있는 정보로 mode 개수에 따른 bit로 알려 줄 수 있다. 예를 들어 synchronous, asynchronous, STR capable, STR incapable의 경우이면 b1 b2인 두 bit로 알려 줄 경우 b1은 synchronous:1, asynchronous:0임을 알려 주고 b2는 STR capable: 1, STR incapable:0으로 알려 준다. 현재 전송되는 link에 전송되는 ADDBA information을 통해 현재 단말이 사용하고 있는 다른 link들과의 관계를 알려 줄 수 있다. 예를 들어 STR incapable로 설정해 보낼 때는 현재 TX로 전송하고 있는 다른 link의 간섭과 같은 영향때문에 STR이 안된다는 것을 알려 줄 수 있다. 상기와 같은 ADDBA information은 A-MPDU의 경우에는 하나의 MPDU의 MAC 헤더에만 포함되어 전송 될 도 있다. 링크 id는 현재 단말이 사용하고 있는 다중 link 들의 id를 나타낸다. 링크 id정보는 id를 열거해서 보낼 수도 있고 bitmap형태로 보낼 수도 있다. 가용한 링크 id가 0, 1, 2인 경우에 사용하는 현재 사용하는 link가 1번과 2번이라면 01, 11을 열거해서 보낸다. Bitmap의 경우에는 사용 가능한 link가 세개인 경우에 011이면 두번째 세번째 링크가 사용 중이라는 것을 표시해 보낼 수 있다. 해당 링크 id 정보로 사용할 link를 on, off할 수도 있다. bitmap형태의 link ID를 사용하는 경우 011이었다가 111이면 해당 MPDU를 수신 후 ACK을 전송한 후부터는 첫번째 link를 on하여 사용하라는 의미이다. 011이었던 링크 상태가 전송되는 MAC헤더의 link ID 부분이 010으로 바뀌었다면 해당 데이터를 수신하고 ACK을 전송한 이후부터는 세번째 링크는 사용하지 말라는 의미이다. 상기 추가(on), 해제(off)의 예에서 반드시 Block ACK에서 link ID에 해당하는 정보가 동일하게 설정이 되어 전송되는 경우에만 상대방도 동일하게 설정을 할 수 있으므로 링크 추가, 해제 동작을 수행한다. 상기 링크의 추가, 해제 동작은 현재 전달되고 있는 MPDU들과 동일한 TID를 전송할 수 있는 링크가 추가, 해제 됨을 의미하고 이를 TID to Link mapping 설정/해제 라고 한다. 상기 link ID는 단말과 AP 모두 사용 가능하다. Former link id는 채널 상황이 안 좋아서 오류에 의해 패킷 전달이 안되므로 상기와 같이 link를 on/off하지도 못하는 경우에 잘 전달이 되는 다른 링크로 오류가 발생한 MPDU들을 재전송하면서 현재 전달되는 패킷들의 전송이 시도되었던 이전 링크의 id를 알려 줄 수 때 사용된다. Recipient는 block ack을 통해서 해당 bitmap을 전송함으로써 originator로부터 전송된 MSDU들 중 성공적으로 전송된 MSDU를 알리고 안정적인 block ack operation을 구현한다.
새롭게 정의된 ADDBA information 필드는 A-MPDU의 첫번째 MPDU 또는 일부 또는 모든 MPDU에 포함될 수 있다. 또한 경우에 따라서 더 많은 bit를 할당 받을 수 있고, 포함하는 파라미터들 역시 유동적으로 변할 수 있다.
도 8은 QoS data MPDU의 MAC header에서 ADDBA information 필드를 다른 형태로 정의한 실시예를 도시한 개념도이다.
도 8을 참조하면, originator가 전송하는 QoS data MPDU의 MAC header에 새로운 ADDBA information 필드를 정의한다. 본 실시예에 따르면 frame control 필드의 type과 subtype 필드의 reserved 된 값을 이용하여 ADDBA information 필드에 32bit를 할당하고, block ack agreement에서 협상되는 파라미터들 중 block ack timeout value, buffer size, multi-link를 지원하기 위한 multi-link 등을 포함한다. Originator는 A-MPDU 최초 전송시, 즉 새로운 block ack session 시작시 첫번째 MPDU에 제안된 파라미터들을 반드시 포함해서 전송해야 한다. Block ack timeout value는 block ack session의 파기 시간을 표시하는 파라미터로써 recipient가 해당 파라미터를 수신 후, 해당 값을 도 10의 실시예에서 제시한 block ack의 ADDBA information 필드의 block ack timeout value 서브 필드에 표시함으로써 이번 block ack session의 timeout value가 계약된다. Originator는 일반적으로 recipient로부터 block ack을 수신 후, 해당 timeout value 시간 동안 특별한 데이터 전송이 없다면 해당 block ack session이 끝난 것이라고 판단하고, recipient는 일반적으로 originator로부터 QoS data MPDU를 수신 후, 해당 timeout value 시간 동안 특별한 데이터 전송이 없다면 해당 block ack session이 끝난 것이라고 판단한다. Buffer size는 originator의 transmit window size와 recipient의 receive window size를 조율하는 파라미터이다. 본 발명에서 originator는 MPDU의 ADDBA information 필드의 buffer size 서브 필드를 이용해서 해당 block ack session 동안에 최대 전송할 수 있는 MSDU의 개수를 recipient에게 제안할 수 있다. Recipient는 originator로부터 수신 MPDU의 buffer size 서브 필드의 값과 자신의 reordering buffer의 값 중 작은 값을 도 10의 실시예에서 제시한 block ack의 ADDBA information 필드의 buffer size 서브 필드에 표시함으로써 해당 block ack session동안 buffer size를 결정한다. 도 7의 실시예에서 포함되었던 start sequence number 파라미터는 sequence number bitmap으로 통합 관리한다. Multi-link 서브 필드는 해당 ADDBA information이 적용될 multi-link mode, link id, former link id 등과 같은 멀티링크 관련 정보를 포함하고 있다. 상기 multi-link mode는 synchronous, asynchronous를 알려 줄 수 있는 정보로 mode 개수에 따른 bit로 알려 줄 수 있다. 예를 들어 synchronous, asynchronous, STR capable, STR incapable의 경우이면 b1 b2인 두 bit로 알려 줄 경우 b1은 synchronous:1, asynchronous:0임을 알려 주고 b2는 STR capable: 1, STR incapable:0으로 알려 준다. 현재 전송되는 link에 전송되는 ADDBA information을 통해 현재 단말이 사용하고 있는 다른 link들과의 관계를 알려 줄 수 있다. 예를 들어 STR incapable로 설정해 보낼 때는 현재 TX로 전송하고 있는 다른 link의 간섭과 같은 영향때문에 STR이 안된다는 것을 알려 줄 수 있다. 상기와 같은 ADDBA information은 A-MPDU의 경우에는 하나의 MPDU의 MAC 헤더에만 포함되어 전송될 수도 있다. 링크 id는 현재 단말이 사용하고 있는 다중 link 들의 id를 나타낸다. 링크 id정보는 id를 열거해서 보낼 수도 있고 bitmap형태로 보낼 수도 있다. 가용한 링크 id가 0, 1, 2인 경우에 사용하는 현재 사용하는 link가 1번과 2번이라면 01, 11을 열거해서 보낸다. Bitmap의 경우에는 사용 가능한 link가 세개인 경우에 011이면 두번째 세번째 링크가 사용 중이라는 것을 표시해 보낼 수 있다. 해당 링크 id 정보로 사용할 link를 on, off할 수도 있다. bitmap형태의 link ID를 사용하는 경우 011이었다가 111이면 해당 MPDU를 수신 후 ACK을 전송한 후부터는 첫번째 link를 on하여 사용하라는 의미이다. 011이었던 링크 상태가 전송되는 MAC헤더의 link ID 부분이 010으로 바뀌었다면 해당 데이터를 수신하고 ACK을 전송한 이후부터는 세번째 링크는 사용하지 말라는 의미이다. 상기 추가(on), 해제(off)의 예에서 반드시 Block ACK에서 link ID에 해당하는 정보가 동일하게 설정이 되어 전송되는 경우에만 상대방도 동일하게 설정을 할 수 있으므로 링크 추가, 해제 동작을 수행한다. 상기 링크의 추가, 해제 동작은 현재 전달되고 있는 MPDU들과 동일한 TID를 전송할 수 있는 링크가 추가, 해제 됨을 의미하고 이를 TID to Link mapping 설정/해제 라고 한다. 상기 link ID는 단말과 AP 모두 사용 가능하다. Former link id는 채널 상황이 안 좋아서 오류에 의해 패킷 전달이 안되므로 상기와 같이 link를 on/off하지도 못하는 경우에 잘 전달이 되는 다른 링크로 오류가 발생한 MPDU들을 재전송하면서 현재 전달되는 패킷들의 전송이 시도되었던 이전 링크의 id를 알려 줄 수 때 사용된다.
해당 ADDBA information 필드 역시 A-MPDU의 첫번째 MPDU 또는 일부 또는 모든 MPDU에 포함될 수 있다. 또한 경우에 따라서 더 많은 bit를 할당 받을 수 있고, 포함하는 파라미터들 역시 유동적으로 변할 수 있다.
도 9는 sequence number bitmap 필드를 이용해서 start sequence number를 관리하는 실시예를 도시한 개념도이다.
도 9를 참조하면, sequence number bitmap은 총 6bit로써 block ack operation의 첫번째 MPDU에서는 첫번째 비트를 1로 세팅하여 해당 MPDU의 sequence control 필드의 sequence number가 start sequence number라는 것을 알린다. 같은 방식으로 두번째 MPDU에서는 두번째 비트를 1로 세팅하여 해당 MPDU의 sequence number가 start sequence number 다음이라는 것을 알린다.
또는 sequence number bitmap을 값 형태로 출력하여 해당 MPDU가 start sequence number로부터 몇 번째에 위치하는지를 표현할 수도 있다. 상기 sequence number bitmap의 bit수는 A-MPDU에 포함될 수 있는 최대 MPDU개수까지 확장하여 포함할 수도 있다.
또한 frame control field의 more data 비트 을 활용하여 starting sequence number를 알려 줄 수도 있다. MPDU 혹은 A-MPDU가 해당 링크에서 처음 전송되는 MPDU에 해당된다면 MAC 헤더의 more data 필드를 특정값, 예를 들어 1로 설정해 보낸다. 그 후에 상기 링크로 전송되는 MPDU들은 MAC 헤더의 more data 필드를 특정값인 0으로 설정해서 보낸다. 상기 more data 필드의 설정은 AP가 단말로 전송할 때 power saving에 있는 단말이 데이터를 수신한 후 추가 데이터가 있으므로 power saving에 들어 가지 않도록 설정하는 bit이나 multi-link에 사용이 될 때는 단말이 uplink로 전송할 때 현재 전송하는 첫 MPDU의 sequence number가 starting sequence number임을 알려 준다. 전송되어 오는 A-MPDU내의 MPDU들의 more data 패턴이 예를 들어 A-MPDU에 MPDU들이 4개 있다고 할 때 more data들일 1, 0, 0, 0, 0으로 하나만 more data가 1로 설정이 되어 있다면 이는 현재 전송되는 A-MPDU후에 더 전송되어 올 데이터가 있다는 것을 알리는 것이 아니고 첫 MPDU의 sequence number가 starting sequence number임을 알려주는 것이다.
도 10은 block ack의 MAC header에서 새로운 ADDBA information 필드를 정의한 실시예를 도시한 개념도이다.
도 10을 참조하면, recipient가 전송하는 block ack의 MAC header에 새로운 ADDBA information 필드를 정의한다. 본 실시예에 따르면 frame control 필드의 type과 subtype 필드의 reserved 된 값을 이용하여 ADDBA information 필드에 32bit를 할당하고, block ack agreement에서 협상되는 파라미터들 중 block ack timeout value, buffer size, multi-link를 지원하기 위한 multi-link 등을 포함한다. 해당 파라미터들을 block ack 전송과 동시에 전송함으로써 block ack agreement를 생략 가능하고, fragment number와 start sequence number는 block ack의 BA information 필드에 정의되어 있다.
Recipient는 originator로부터 BAR(block ack request)을 수신하거나 implicit bar 모드일 경우 A-MPDU를 수신할 때마다 제시된 ADDBA information 필드가 포함된 block ack을 전송할 수 있고, 아직 ADDBA agreement가 체결되지 않은 상황에서는 반드시 제시된 ADDBA information 필드가 포함된 block ack을 전송해야 한다. Block ack timeout value는 block ack session의 파기 시간을 표시하는 파라미터로써 recipient가 해당 파라미터를 block ack의 ADDBA information 필드의 block ack timeout value 서브 필드에 표시함으로써 이번 block ack session의 timeout value가 계약된다. Originator는 일반적으로 recipient로부터 block ack을 수신 후, 해당 timeout value 시간 동안 특별한 데이터 전송이 없다면 해당 block ack session이 끝난 것이라고 판단하고, recipient는 일반적으로 originator로부터 QoS data MPDU를 수신 후, 해당 timeout value 시간 동안 특별한 데이터 전송이 없다면 해당 block ack session이 끝난 것이라고 판단한다. Buffer size는 originator의 transmit window size와 recipient의 receive window size를 조율하는 파라미터이다. 본 발명에서 originator는 MPDU의 ADDBA information 필드의 buffer size 서브 필드를 이용해서 해당 block ack session 동안에 최대 전송할 수 있는 MSDU의 개수를 recipient에게 제안하고, recipient는 originator로부터 수신 MPDU의 buffer size 서브 필드의 값과 자신의 reordering buffer의 값 중 작은 값을 block ack의 ADDBA information 필드의 buffer size 서브 필드에 표시함으로써 해당 block ack session동안 buffer size를 결정한다. Multi-link 서브 필드는 해당 ADDBA information이 적용될 multi-link mode, link id, former link id 등과 같은 멀티링크 관련 정보를 포함하고 있다. 상기 multi-link mode는 synchronous, asynchronous를 알려 줄 수 있는 정보로 mode 개수에 따른 bit로 알려 줄 수 있다. 예를 들어 synchronous, asynchronous, STR capable, STR incapable의 경우이면 b1 b2인 두 bit로 알려 줄 경우 b1은 synchronous:1, asynchronous:0임을 알려 주고 b2는 STR capable: 1, STR incapable:0으로 알려 준다. 현재 전송되는 link에 전송되는 ADDBA information을 통해 현재 단말이 사용하고 있는 다른 link들과의 관계를 알려 줄 수 있다. 예를 들어 STR incapable로 설정해 보낼 때는 현재 TX로 전송하고 있는 다른 link의 간섭과 같은 영향때문에 STR이 안된다는 것을 알려 줄 수 있다. 상기와 같은 ADDBA information은 A-MPDU의 경우에는 하나의 MPDU의 MAC 헤더에만 포함되어 전송될 수도 있다. 링크 id는 현재 단말이 사용하고 있는 다중 link 들의 id를 나타낸다. 링크 id정보는 id를 열거해서 보낼 수도 있고 bitmap형태로 보낼 수도 있다. 가용한 링크 id가 0, 1, 2인 경우에 사용하는 현재 사용하는 link가 1번과 2번이라면 01, 11을 열거해서 보낸다. Bitmap의 경우에는 사용 가능한 link가 세개인 경우에 011이면 두번째 세번째 링크가 사용 중이라는 것을 표시해 보낼 수 있다. 해당 링크 id 정보로 사용할 link를 on, off할 수도 있다. bitmap형태의 link ID를 사용하는 경우 011이었다가 111이면 해당 MPDU를 수신 후 ACK을 전송한 후부터는 첫번째 link를 on하여 사용하라는 의미이다. 011이었던 링크 상태가 전송되는 MAC헤더의 link ID 부분이 010으로 바뀌었다면 해당 데이터를 수신하고 ACK을 전송한 이후부터는 세번째 링크는 사용하지 말라는 의미이다. 상기 추가(on), 해제(off)의 예에서 반드시 Block ACK에서 link ID에 해당하는 정보가 동일하게 설정이 되어 전송되는 경우에만 상대방도 동일하게 설정을 할 수 있으므로 링크 추가, 해제 동작을 수행한다. 상기 링크의 추가, 해제 동작은 현재 전달되고 있는 MPDU들과 동일한 TID를 전송할 수 있는 링크가 추가, 해제 됨을 의미하고 이를 TID to Link mapping 설정/해제 라고 한다. 상기 link ID는 단말과 AP 모두 사용 가능하다. Former link id는 채널 상황이 안 좋아서 오류에 의해 패킷 전달이 안되므로 상기와 같이 link를 on/off하지도 못하는 경우에 잘 전달이 되는 다른 링크로 오류가 발생한 MPDU들을 재전송하면서 현재 전달되는 패킷들의 전송이 시도되었던 이전 링크의 id를 알려 줄 수 때 사용된다. 새롭게 정의된 ADDBA information 필드는 모든 block ack에 포함되고, 경우에 따라서 더 많은 bit를 할당 받을 수 있고, 포함하는 파라미터들 역시 유동적으로 변할 수 있다.
도 11은 본 발명에서 제안된 차량용 무선랜에서 A-MPDU를 지원하기 위한 block ack 동작 방법의 실시예를 도시한 개념도이다.
도 11을 참조하면, 도 5의 실시예의 block ack operation과 달리 block ack agreement 과정이 생략되어 있다. Originator는 block ack 세션의 처음에 A-MPDU의 첫번째 또는 다수의 MPDU에 제안된 ADDBA information 필드를 포함하여 전송함으로써 recipient가 해당 block ack 세션을 수립하는데 필요한 파라미터들을 전달하고, recipient 역시 block ack에 ADDBA information 필드를 포함하여 전송함으로써 block ack agreement가 QoS data MPDU들의 전송과 동시에 성립된다.
그 후, 동일 block ack 세션 하에 전송되는 MPDU들은 굳이 ADDBA information을 포함하지 않더라도 기 설정된 파라미터들을 이용해서 block ack operation을 수행할 수 있고, block ack timeout value동안 데이터의 송수신이 이루어지지 않는다면 originator와 recipient는 DELBA 신호가 없더라도 해당 block ack 세션이 연결 해제되었다고 간주한다. Block ack 세션 연결 해제 후에는 제안된 ADDBA information 필드를 이용해서 새로운 block ack agreement 파라미터들을 합의해야 한다.
도 12는 ADDBA information 필드 전송 전, originator가 recipient의 buffer size를 모르는 상태에서 A-MPDU의 MPDU 개수를 조절하여 보내는 동작 방법의 실시예를 도시한 개념도이다.
도 12를 참조하면, ADDBA information 필드의 buffer size는 originator의 transmit window size와 recipient의 receive window size를 조율하는 파라미터이다. 본 발명에서 originator는 MPDU의 ADDBA information 필드의 buffer size 서브 필드를 이용해서 해당 block ack session 동안에 최대 전송할 수 있는 MSDU의 개수를 recipient에게 제안할 수 있다. Recipient는 originator로부터 수신 MPDU의 buffer size 서브 필드의 값과 자신의 reordering buffer의 값 중 작은 값을 block ack의 ADDBA information 필드의 buffer size 서브 필드에 표시함으로써 해당 block ack session동안 buffer size를 결정한다.
그러나 originator가 ADDBA information을 전송하기 전에는 recipient의 buffer size를 알 수 없기 때문에, 도 12의 실시예에서는 recipient의 buffer size가 5인 상황, 즉 A-MPDU가 최대 5개의 MPDU를 포함할 수 있는 상황에서 첫번째 A-MPDU에는 작은 값인 2개의 MPDU와 하나의 BAR을 포함하여 전송한다. 제시된 과정을 통해서 originator는 recipient의 buffer size를 넘지 않도록 데이터를 전송할 수 있다. 그리고 originator가 recipient로부터 ADDBA information 필드가 포함된 block ack을 수신하면 이제 buffer size가 5라는 것을 알게 되고, 다음 A-MPDU는 5개의 MPDU와 하나의 BAR로 구성될 수 있다.
도 13은 차량들이 주기적으로 전송하는 BSM(basic safety message) 또는 다양한 안전 관련 메시지들에 buffer size level을 포함하여 전송하는 방법의 실시예를 도시한 개념도이다.
도 13을 참조하면, 차량들이 주기적으로 전송하는 BSM(basic safety message) 또는 다양한 안전 관련 메시지 포맷 속의 reserved된 비트를 사용하여 buffer size level을 주변 차량들에게 알릴 수 있다. 도 12의 실시예에서 언급한 것과 같이, originator가 ADDBA information을 전송하기 전에는 recipient의 buffer size를 알 수 없기 때문에 그에 대한 보안책으로서 recipient가 미리 BSM 또는 다양한 안전 관련 메시지 포맷을 이용하여 자신의 buffer size를 알린다. 이 때, 10bit의 buffer size 값이 이용될 수도 있고, 그렇지 않으면 도 13의 실시예와 같이 2bit의 buffer size level이라는 서브 필드로 변경되어 표시될 수도 있다. STA1의 buffer size level은 01이기 때문에 주변 차량들은 STA1의 buffer size가 최대 buffer size의 1/3 이하라는 것을 알 수 있고, 그에 맞춰서 MPDU 개수를 조절하여 A-MPDU를 전송함으로써 최초 block ack agreement를 시도할 수 있다. STA2의 buffer size level은 00이기 때문에 주변 차량들은 STA2의 buffer가 비어 있지 않다는 것을 알고, 데이터를 전송하지 않을 것이다. 예를 들어 도 14의 실시예와 같이 MAC header의 sequence control 필드의 fragment number 서브 필드를 이용한다면 최대 4bit로 buffer size level을 표시할 수 있다.
도 14는 MAC header의 다양한 필드를 이용해서 buffer size level을 표시하는 방법의 실시예를 도시한 개념도이다.
도 14를 참조하면, 도 13의 실시예에서 언급한 것과 같이 sequence control 필드의 fragment number 서브 필드를 이용해서 buffer size level을 표시할 수 있다. 본 실시예에 따르면 frame control 필드의 type과 subtype 필드의 reserved 된 값을 이용하여 기존 4bit의 fragment number 서브 필드를 buffer size level 서브 필드로 변경 가능하다.
그 외에도 frame control 필드의 type과 subtype 필드의 reserved 된 값을 이용하여 duration 필드 값을 이용해서 buffer size level을 표시할 수 있다. 예를 들면, duration 필드가 고유의 duration 값 만을 가지고 있을 때는 buffer size level을 00으로 간주하고 주변 차량들은 해당 STA에 데이터를 전송하려 하지 않을 것이다. 그러나 duration 필드가 duration + 1/2*slot_time이라면 buffer size level이 01로 간주되어, 도 13의 실시예와 같이 주변 차량들은 해당 STA의 buffer size가 최대 buffer size의 1/3 이하라는 것을 알 수 있고, 그에 맞춰서 MPDU 개수를 조절하여 A-MPDU를 전송함으로써 최초 block ack agreement를 시도할 수 있다. 그리고 duration 필드가 duration+slot_time이라면 buffer size level이 10인 것으로 간주하고, duration+SIFS라면 buffer size level이 11인 것으로 간주한다. 본 실시예와 같이 duration 필드의 값을 조정함으로써 주변 STA들에게 buffer size level을 알릴 수 있다.
도 15는 미리 정해진 파라미터를 수정하는 과정을 도시한 개념도이다.
도 15를 참조하면, block ack agreement에서 교환하는 파라미터 중, 예를 들어 buffer size 값이 2로 미리 설정되어 있다고 가정한다. Originator는 미리 설정된 buffer size 값에 맞춰서 A-MPDU를 MPDU 2개와 BAR 1개로 구성하여 전송한다. 그러나 recipient의 reordering buffer는 아직 메모리의 여유가 있기 때문에 recipient는 도 10에서 제안된 BA의 ADDBA information의 buffer size 값을 미리 설정된 값이 아닌 새로운 값인 6으로 설정하여 전송한다. 해당 BA를 수신한 originator는 recipient가 더 많은 MPDU를 수신할 여력이 있음을 알게 되고, 다음 전송시에는 MPDU 6와 BAR 1개로 A-MPDU를 구성하여 데이터 프레임을 전송한다.
도 16은 block ack timeout value timeout value를 이용해서 세션의 유효 기간을 연장하거나 세션을 일찍 종료시키는 방법을 도시한 개념도이다.
도 16을 참조하면, originator가 세션 시작시 첫 A-MPDU를 전송하면 block ack timeout value에 따라서 해당 세션의 지속 시간이 결정된다. 그러나 세션 종료 시점이 가까워졌으나 originator가 아직 전송할 데이터가 남았기 때문에 또는 recipient는 수신할 데이터가 존재하기 때문에 해당 세션의 연장을 요청할 수 있다. 도 16에서는 originator가 BAR을 전송하여 해당 block ack 세션을 연장한다. 해당 BAR 포맷에는 도 10의 block ack 포맷과 같이 block ack timeout value와 buffer size 등이 포함된 ADDBA information 필드가 포함될 수 있고, 해당 필드의 block ack timeout value를 다시 설정함으로써 해당 block ack 세션을 연장할 수 있다. 또한, 해당 요청에 대해서 recipient 역시 BA의 ADDBA information의 block ack timeout value를 originator가 전송한 BAR의 ADDBA information의 block ack timeout value와 같은 값으로 설정함으로써 block ack 세션 연장에 동의할 수 있다.
이러한 과정은 originator가 아닌 recipient에 의해서도 수행될 수 있는데, recipient가 BA의 ADDBA information 필드의 block ack timeout value를 설정함으로써 시작하고, originator가 다음 A-MPDU의 ADDBA information 필드의 block ack timeout value를 같은 값으로 설정함으로써 승인한다. 그리고 BAR과 BA의 ADDBA information 필드의 block ack timeout value를 설정하는 것 외에도 reserved된 비트를 이용하여 세션 연장을 표시 또는 지시 또는 승인할 수 있다.
Originator가 더 전송할 데이터가 없을 경우에는 BAR의 ADDBA information 필드의 block ack timeout value를 0으로 설정하여 전송함으로써 해당 block ack 세션을 일찍 종료시킬 수 있다. 해당 BAR을 전송받은 recipient는 BA의 ADDBA information 필드의 block ack timeout value를 0으로 설정하여 전송함으로써 해당 block ack 세션의 조기 종료를 승인하고, 관련된 <RA,TA,TID> 튜플을 제거함으로써 reordering buffer를 관리할 수 있다.
해당 과정 역시 recipient에 의해서 수행될 수 있고, 이 경우에는 recipient가 BA의 ADDBA information 필드의 block ack timeout value를 0으로 설정하여 전송함으로써 해당 block ack 세션의 조기 종료 또는 originator의 세션 연장 제안 등에 대한 거절 의사를 표현할 수 있다. Recipient가 BA의 ADDBA information 필드의 block ack timeout value를 0으로 설정함으로써 해당 block ack 세션의 조기 종료를 요청하는 경우에는 해당 BA를 수신한 originator는 ack을 전송함으로써 해당 세션의 조기 종료를 승인할 수 있다. 또한 recipient가 originator의 세션 연장 제안 등에 대해서 거절 의사를 표현할 때는 ADDBA information의 block ack timeout value 뿐만 아니라 해당 필드의 reserved된 비트를 이용할 수도 있다.
그리고 BAR과 BA의 ADDBA information 필드의 block ack timeout value를 0으로 설정하여 해당 block ack 세션을 조기 종료하는 방법 이외에도 해당 필드의 reserved된 비트를 이용할 수 있다.
그 외에 DELBA 프레임을 전송함으로써 해당 block ack 세션을 종료할 수도 있다. Originator가 DELBA 프레임을 전송하여 세션을 종료할 경우에는 recipient가 ack을 답신하고, recipient가 DELBA 프레임을 전송하여 세션을 종료할 경우에는 originator가 ack을 답신한다.
도 17은 세 개 이상의 block ack 세션이 혼재되어 있을 때, originator에 의한 <RA,TA,TID> 튜플 관리 기법을 도시한 개념도이다.
도 17을 참조하면, originator는 AAAA와 CCCC라는 두 개의 MAC 주소를 갖고 있고, recipient는 BBBB라는 MAC 주소를 갖고 있다. 새로운 block ack 세션이 시작할 때, 그 starting sequence number(SSN)가 1로 시작하도록 설정된 상황에서 채널 contention을 통해서 첫번째 A-MPDU가 전송되었다. 해당 A-MPDU가 전송되는 block ack 세션의 <RA,TA,TID> 튜플은 <BBBB, AAAA, 0100>이다. 첫번째 세션이 활성화되어 있는 상황에서 다른 TID를 갖는 두번째 block ack 세션이 시작되었고, 해당 세션의 <RA,TA,TID> 튜플은 <BBBB, AAAA, 0101>이다.
이제 앞선 두개의 block ack 세션이 모두 활성화된 상태에서 새로운 block ack 세션이 시작된다. 해당 block ack 세션이 가질 수 있는 <RA,TA,TID> 튜플은 <BBBB, AAAA, 0100>이지만, SSN이 1로 시작된다는 규칙 때문에 recipient의 reordering buffer에서 첫번째 block ack 세션의 데이터와 섞이는 문제점이 발생한다. 그래서 originator는 새로운 reordering buffer를 생성해내기 위해서 새로운 <RA,TA,TID> 튜플을 생성해 내고, 이 때 TA를 자신이 갖고 있는 또 하나의 MAC 주소로 설정한다. 즉, 세번째 block ack 세션의 <RA,TA,TID> 튜플은 <BBBB, CCCC, 0100>이 된다. 이렇게 originator는 활성화된 block ack 세션을 고려해서 새로운 <RA,TA,TID> 튜플을 생성하거나 제거하는 등의 동작을 수행할 수 있다.
도 18은 세 개 이상의 block ack 세션이 혼재되어 있을 때, SSN을 이용한 관리 기법을 도시한 개념도이다.
도 18을 참조하면, originator는 AAAA라는 MAC 주소를 갖고 있고, recipient는 BBBB라는 MAC 주소를 갖고 있다. 새로운 block ack 세션이 시작할 때, 그 starting sequence number(SSN)가 1로 시작하는 상황에서 채널 contention을 통해서 첫번째 A-MPDU가 전송되었다. 해당 A-MPDU가 전송되는 block ack 세션의 SSN은 1이고, <RA,TA,TID> 튜플은 <BBBB, AAAA, 0100>이다. 첫번째 세션이 활성화되어 있는 상황에서 다른 TID를 갖는 두번째 block ack 세션이 시작되었고, 해당 세션의 SSN 역시 1이고, <RA,TA,TID> 튜플은 <BBBB, AAAA, 0101>이다.
이제 앞선 두개의 block ack 세션이 모두 활성화된 상태에서 새로운 block ack 세션이 시작된다. 해당 block ack 세션이 가질 수 있는 <RA,TA,TID> 튜플은 <BBBB, AAAA, 0100>이기 때문에 처음에 전송된 block ack 세션의 튜플과 똑같게 되고 recipient에서 같은 reordering buffer를 공유한다. 그러나 새로운 block ack 세션의 SSN을 3으로 설정함으로써 recipient의 reordering buffer에서 첫번째 block ack 세션의 데이터와 섞이는 문제점을 해결 가능하다.
도 19는 하나의 STA가 둘 이상의 AP들에게 순서대로 데이터를 전송하는 업링크 상황에서 제안된 ADDBA information 필드를 이용하여 recipient들의 reordering buffer를 정리하는 기법을 도시한 개념도이다.
도 19를 참조하면, 하나의 STA가 두 개 이상의 AP들에게 멀티 링크 기법을 이용하여 연결되어 있는 상황을 가정하였다. 본 발명에서 사용한 상기와 같은 두 개 이상의 AP실시예는 Multi-link Device (MLD)를 포함한다. MLD는 Multi-link를 지원하는 하나의 물리적인 장치가 내부적으로 두 개 이상의 AP로 BSS를 구성하는 장치로 각 BSS별로 서로 다른 AP MAC 주소를 사용한다. 제안된 상황에서 STA는 업링크 상황에서 link1과 link2를 통해 QoS data frame들을 순서대로 전송하려고 한다. AP1과 AP2는 물리적 또는 논리적으로 분리되어 있는 AP들로써 해당 AP에 속한 reordering buffer 역시 하나의 queue를 공유하거나 분리되어 있다. STA는 link1을 통해 AP1과 block ack agreement를 체결함으로써 block ack 전송에 필요한 파라미터들을 합의하고, 1부터 4까지 QoS data frame들을 전송한다. AP1은 1부터 4까지 MPDU들을 순서대로 성공적으로 수신하는 즉시, LLC로 올려 보낸다.
그 후, STA는 link2를 통해 5부터 8까지 MPDU들을 AP2에게 전송한다. AP2는 STA와 block ack agreement를 체결하지 않았기 때문에, 혹은 AP1으로부터 block ack agreement 내용의 전달이 늦었거나 전달이 안되어 block ack agreement내용을 모를 때, 수신된 MPDU들의 starting sequence number를 알 수 없어서 해당 MPDU들을 reordering buffer에 보관해야 한다. 그러나 제안된 ADDBA information 필드를 이용함으로써 STA는 block ack agreement를 체결하지 않았더라도 AP2에게 starting sequence number를 비롯한 ADDBA 파라미터들을 알려줄 수 있게 된다. 그리고 AP2는 전송된 MPDU들의 starting sequence number 값을 알게 됨으로써 성공적으로 수신된 MPDU들을 LLC로 즉시 올려 보낼 수 있게 된다. 상기 starting sequence number는 A-MPDU 내에 있는 MPDU들의 MAC 헤더를 보고도 알 수 있다. MPDU 혹은 A-MPDU가 해당 링크에서 처음 전송되는 MPDU에 해당된다면 MAC 헤더의 more data 필드를 특정값, 예를 들어 1로 설정해 보낸다. 그 후에 상기 링크로 전송되는 MPDU들은 MAC 헤더의 more data 필드를 특정값인 0으로 설정해서 보낸다. 상기 more data 필드의 설정은 AP가 단말로 전송할 때 power saving에 있는 단말이 데이터를 수신한 후 추가 데이터가 있으므로 power saving에 들어 가지 않도록 설정하는 bit이나 multi-link에 사용이 될 때는 단말이 uplink로 전송할 때 현재 전송하는 첫 MPDU의 sequence number가 starting sequence number임을 알려 준다. 전송되어 오는 A-MPDU내의 MPDU들의 more data 패턴이 예를 들어 A-MPDU에 MPDU들이 4개 있다고 할 때 more data들일 1, 0, 0, 0, 0으로 하나만 more data가 1로 설정이 되어 있다면 이는 현재 전송되는 A-MPDU후에 더 전송되어 올 데이터가 있다는 것을 알리는 것이 아니고 상기 실시예의 첫 MPDU의 sequence number가 starting sequence number임을 알려주는 것이다.
다시 STA는 link1을 통해 9부터 12까지 MPDU들을 AP1에게 전송하고, 해당 MPDU들에 ADDBA information 필드를 포함함으로써 AP1의 starting sequence number를 성공적으로 업데이트 할 수 있다.
도 20은 하나의 STA가 둘 이상의 AP들에게 순서대로 데이터를 전송하는 업링크 상황에서 AP끼리 제안된 ADDBA information 필드를 전송함으로써 reordering buffer를 정리하는 기법을 도시한 개념도이다.
도 20을 참조하면, 하나의 STA가 두 개 이상의 AP들에게 멀티 링크 기법을 이용하여 연결되어 있는 상황을 가정하였다. 제안된 상황에서 STA는 업링크 상황에서 link1과 link2를 통해 QoS data frame들을 순서대로 전송하려고 한다. AP1과 AP2는 물리적 또는 논리적으로 분리되어 있는 AP들로써 해당 AP에 속한 reordering buffer 역시 하나의 queue를 공유하거나 분리되어 있다. STA는 link1을 통해 AP1과 block ack agreement를 체결함으로써 block ack 전송에 필요한 파라미터들을 합의하고, 1부터 4까지 QoS data frame들을 전송한다. AP1은 1부터 4까지 MPDU들을 순서대로 성공적으로 수신하는 즉시, LLC로 올려 보낸다.
그 후, STA는 5부터 8까지 MPDU들을 link2를 통해 AP2에게 전송한다. AP2는 STA와 block ack agreement를 체결하지 않았기 때문에 수신된 MPDU들의 starting sequence number를 알 수 없어서 해당 MPDU들을 reordering buffer에 보관해야 한다. 그러나 STA와 block ack agreement를 체결한 AP1이 ADDBA information을 AP2에게 무선, 유선 또는 내부적으로 전송하고, AP2는 전송된 MPDU들의 starting sequence number 값을 알게 됨으로써 성공적으로 수신된 MPDU들을 LLC로 즉시 올려 보낼 수 있게 된다.
다시 STA는 9부터 12까지 MPDU들을 AP1에게 전송하고, 이 때 AP2는 AP1에게전송된 MPDU들의 starting sequence number를 비롯한 ADDBA 파라미터를 알려줌으로써 AP1의 starting sequence number를 성공적으로 업데이트 할 수 있다.
도 21은 하나의 STA가 둘 이상의 AP들에게 순서대로 데이터를 전송하는 업링크 상황에서 AP끼리 제안된 ADDBA information 필드를 전송하는 과정에서 딜레이가 발생했을 때, null packet을 전송함으로써 TXOP를 계속 유지하는 기법을 도시한 개념도이다.
도 21을 참조하면, 하나의 STA가 두 개 이상의 AP들에게 멀티 링크 기법을 이용하여 연결되어 있는 상황을 가정하였다. 제안된 상황에서 STA는 업링크 상황에서 link1과 link2를 통해 QoS data frame들을 순서대로 전송하려고 한다. AP1과 AP2는 물리적 또는 논리적으로 분리되어 있는 AP들로써 해당 AP에 속한 reordering buffer 역시 하나의 queue를 공유하거나 분리되어 있다. STA는 AP1과 link1을 통해 block ack agreement를 체결함으로써 block ack 전송에 필요한 파라미터들을 합의하고, 1부터 4까지 QoS data frame들을 전송한다. AP1은 1부터 4까지 MPDU들을 순서대로 성공적으로 수신하는 즉시, LLC로 올려 보낸다.
그 후, 도 20의 실시예와 같이 AP1으로부터 AP2까지 ADDBA information의 전달 여부가 궁금한 STA는 channel access를 통해 확보한 TXOP를 유지하기 위해서 null packet을 link2를 통해 AP2로 전송할 수 있다. STA로부터 null packet을 수신한 AP2는 AP1이 전송한 ADDBA information이 존재할 경우, ack를 STA로 전송한다. 이 때, AP2가 AP1이 전송한 ADDBA information이 존재하지 않을 경우, nack를 전송하거나 아무 동작을 하지 않을 수 있다. AP2로부터 ack을 수신한 STA는 5부터 8까지 MPDU들을 link2를 통해 AP2에게 전송하고, AP2로부터 nack를 수신하거나 아무것도 수신하지 못한 STA는 데이터 전송을 보류하거나 null packet을 재전송할 수 있다. AP2는 STA와 block ack agreement를 체결하지 않았기 때문에 수신된 MPDU들의 starting sequence number를 알 수 없어서 해당 MPDU들을 reordering buffer에 보관해야 한다. 그러나 STA와 block ack agreement를 체결한 AP1이 ADDBA information을 AP2에게 무선, 유선 또는 내부적으로 전송하고, AP2는 전송된 MPDU들의 starting sequence number 값을 알게 됨으로써 성공적으로 수신된 MPDU들을 LLC로 즉시 올려 보낼 수 있게 된다.
도 22는 하나의 STA가 둘 이상의 AP들에게 순서대로 데이터를 전송하는 업링크 상황에서 multi-link sub field를 사용하는 기법을 도시한 개념도이다.
도 22를 참조하면, 하나의 STA가 두 개 이상의 AP들에게 멀티 링크 기법을 이용하여 연결되어 있는 상황을 가정하였다. 제안된 상황에서 STA는 업링크 상황에서 link1과 link2를 통해 QoS data frame들을 순서대로 전송하려고 한다. AP1과 AP2는 물리적 또는 논리적으로 분리되어 있는 AP들로써 해당 AP에 속한 reordering buffer 역시 하나의 queue를 공유하거나 분리되어 있다. STA는 link1을 통해 AP1과 block ack agreement를 체결함으로써 block ack 전송에 필요한 파라미터들을 합의하고, 1부터 4까지 QoS data frame들을 전송한다. AP1은 1부터 4까지 MPDU들을 순서대로 성공적으로 수신하는 즉시, LLC로 올려 보낸다.
그 후, STA는 link2를 통해 5부터 8까지 MPDU들을 AP2에게 전송한다. 나 AP1으로부터 상기 체결된 block ack agreement 정보를 늦게 수신 하였거나 수신하지 못하였기 때문에 수신된 MPDU들의 starting sequence number를 알 수 없어서 해당 MPDU들을 reordering buffer에 보관해야 한다. 그러나 제안된 ADDBA information 필드를 이용함으로써 STA는 block ack agreement를 체결하지 않았더라도 AP2에게 starting sequence number를 비롯한 ADDBA 파라미터들을 알려줄 수 있게 된다. 그러나 채널 상황이 좋지 않기 때문에 전송된 대다수의 데이터가 유실되었고, block ack을 통해 STA는 link2의 채널 상황이 좋지 않음을 알 수 있다.
이제 STA는 채널 상황이 좋지 않은 link2 대신에 link1을 사용하여 sequence number 5부터 8까지의 데이터를 재전송하려고 한다. 이 때, ADDBA information의 multi-link sub field의 multi-link mode는 기존의 multi-link mode 값으로 고정하거나 적절하게 변경할 수 있다. 그리고 former link id는 link2와 AP2의 MAC address를 알 수 있도록 함으로써 해당 데이터가 link2에서 전송되던 데이터임을 AP1에게 알려준다. AP1은 AP2에게 무선, 유선 또는 내부적으로 해당 multi-link sub field를 전송하고, AP2는 자신의 큐에 쌓인 잔여 데이터를 제거할 수 있다.
본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능 매체의 예에는 롬, 램, 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함한다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (1)

  1. A-MPDU(aggregated-MAC(media access control) protocol data unit)를 지원하는 차량용 무선랜에서 블록 ACK 송신 방법.
KR1020200035845A 2020-03-24 2020-03-24 A-mpdu를 지원하는 차량용 무선랜에서 블록 ack 송신 방법 KR20210119212A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200035845A KR20210119212A (ko) 2020-03-24 2020-03-24 A-mpdu를 지원하는 차량용 무선랜에서 블록 ack 송신 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200035845A KR20210119212A (ko) 2020-03-24 2020-03-24 A-mpdu를 지원하는 차량용 무선랜에서 블록 ack 송신 방법

Publications (1)

Publication Number Publication Date
KR20210119212A true KR20210119212A (ko) 2021-10-05

Family

ID=78077774

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200035845A KR20210119212A (ko) 2020-03-24 2020-03-24 A-mpdu를 지원하는 차량용 무선랜에서 블록 ack 송신 방법

Country Status (1)

Country Link
KR (1) KR20210119212A (ko)

Similar Documents

Publication Publication Date Title
US11153818B2 (en) Method and apparatus for initial negotiation in wireless LAN
EP4228370A1 (en) Method and wireless communication terminal for transmitting/receiving frame in wireless communication system
KR101260196B1 (ko) 무선 통신 매체로의 액세스를 제어하는 방법 및 시스템
US20220407622A1 (en) Method and apparatus for transmitting and receiving block ack in wireless lan system
KR20210004869A (ko) 멀티 링크 무선랜에서의 다중 전송 방법 및 장치
EP4149198A1 (en) Wireless communication method using multiple links, and wireless communication terminal using same
US20230379999A1 (en) Wireless communication method using multi-link, and wireless communication terminal using same
KR20140125797A (ko) 무선 통신 시스템에서 트래픽 지시 맵 송수신 방법 및 이를 위한 장치
CN115664585A (zh) 无线通信方法及其无线通信终端
KR102544254B1 (ko) 멀티 링크를 사용하는 무선 통신 방법 및 이를 사용하는 무선 통신 단말
EP4192179A1 (en) Wireless communication method using multiple links, and wireless communication terminal using same
US20220322473A1 (en) Method and apparatus for performing block ack in multiple link of wireless lan communication system
KR20200093470A (ko) 분산된 무선랜에서의 다중 사용자 통신 방법 및 장치
KR20210127633A (ko) 무선랜 시스템에서 직접 통신을 위한 방법 및 장치
KR20230116722A (ko) Emlsr 동작을 지원하는 무선랜에서 저지연 통신을 위한 방법 및 장치
KR20220104644A (ko) 다중 링크를 지원하는 통신 시스템에서 저지연 통신을 위한 방법 및 장치
KR20210119212A (ko) A-mpdu를 지원하는 차량용 무선랜에서 블록 ack 송신 방법
US20240129953A1 (en) Wireless communication method using shared txop, and wireless communication terminal using same
US20240049304A1 (en) Wireless communication method using multi-link, and wireless communication terminal using same
KR20230010600A (ko) 다중 링크를 지원하는 통신 시스템에서 직접 통신을 위한 방법 및 장치
US20220110020A1 (en) Method and apparatus for mutual coexistence communication in wireless lan
KR20230014072A (ko) 다중 링크를 지원하는 통신 시스템에서 nstr 통신을 위한 방법 및 장치
KR20230135523A (ko) Emlsr을 지원하는 무선랜에서 직접 통신 위한 방법 및 장치
KR20230026269A (ko) 무선랜에서 양방향 통신을 위한 방법 및 장치
KR20220103051A (ko) 다중 링크를 지원하는 통신 시스템에서 하향링크 트래픽의 수신을 위한 방법 및 장치