상기한 바와 같은 목적을 달성하기 위한 본 발명의 특징에 따르면, 본 발명은 네트워크 엔터티로부터 멀티캐스트 서비스를 제공받아 무선 통신의 경쟁 기반의 채널접근 방식에 의해 적어도 하나 이상의 단말로 멀티캐스트 서비스를 제공하는 네트워크에 있어서, 멀티캐스트 서비스에 가입된 단말의 수를 포함하는 단말정보가 저장되는 저장부와; 상기 단말정보를 이용하여, 전송될 데이터 프레임의 사용자 우선순위를 설정하는 우선순위 결정장치를 포함하여 구성되는 무선 통신용 베이스 스테이션을 포함한다.
이때, 상기 우선순위 결정장치는, 상기 프레임의 사용자 우선순위를 우선순위 테이블에 따라 결정되고; 상기 저장부에 저장된 단말정보를 이용하여 상기 사용자 우선순위를 보정할 수도 있다.
여기서 상기 보정은, 상기 멀티캐스트 서비스에 가입된 단말의 수를 복수 개의 그룹으로 나누고,각각의 그룹에 가감치를 두어, 상기 데이터 프레임을 수신받고자 하는 단말의 개수가 해당하는 그룹의 가감치에 따라 상기 사용자 우선순위를 수정하는 것일 수도 있다.
그리고 상기 우선순위 결정장치는, 상기 보정된 사용자 우선순위가 0보다 작은 경우, 상기 사용자 우선순위를 0으로 설정하고; 상기 보정된 사용자 우선순위가 7보다 큰 경우, 상기 사용자 우선순위를 7로 설정할 수도 있다.
한편, 상기 우선순위 결정장치는, 우선순위 테이블에 따라 상기 프레임의 제 1 사용자 우선순위를 결정하고; 상기 저장부에 저장된 단말정보를 이용하여 상기 제 1 사용자 우선순위를 보정하여 제 2 사용자 우선순위를 생성할 수도 있다.
이때, 상기 보정은, 상기 멀티캐스트 서비스에 가입된 단말의 수를 복수 개의 그룹으로 나누고,각각의 그룹에 가감치를 두어, 상기 데이터 프레임을 수신받고자 하는 단말의 개수가 해당하는 그룹의 가감치에 따라 상기 제 1 사용자 우선순위를 수정하는 것일 수도 있다.
그리고 상기 우선순위 결정장치는, 상기 제 2 사용자 우선순위가 0보다 작은 경우, 상기 제 2 사용자 우선순위를 0으로 설정하고; 상기 제 2 사용자 우선순위가 7보다 큰 경우, 상기 제 2 사용자 우선순위를 7로 설정할 수도 있다.
한편, 상기 보정은, 상기 데이터 프레임을 수신받고자 하는 단말의 개수가 기준값 이상인 경우 상기 사용자 우선순위를 일정 값만큼 높이는 것일 수도 있고, 상기 데이터 프레임을 수신받고자 하는 단말의 개수가 기준값 이하인 경우 상기 사 용자 우선순위를 일정 값만큼 낮추는 것일 수도 있다.
한편, 본 발명은 네트워크 엔터티로부터 멀티캐스트 서비스를 제공받아 무선 통신의 경쟁 기반의 채널접근 방식에 의해 적어도 하나 이상의 단말로 멀티캐스트 서비스를 제공하는 네트워크에 있어서, 멀티캐스트 서비스에 가입된 단말의 수를 포함하는 단말정보가 저장되는 저장부와; 전송될 데이터 프레임의 사용자 우선순위를 결정하는 우선순위 결정장치; 그리고 상기 데이터 프레임이 배치된 큐로부터 AC간 충돌 발생시, 상기 단말정보를 이용하여 전송될 데이터 프레임을 선택하는 가상 충돌 처리 장치를 포함하여 구성되는 무선 통신용 베이스 스테이션을 포함한다.
이때, 상기 가상 충돌 처리 장치의 데이터 프레임 선택은, 상기 사용자 우선순위를 상기 단말정보를 이용하여 보정 하고, 상기 보정된 사용자 우선순위를 비교하여 상기 보정된 사용자 우선순위가 높은 데이터 프레임을 선택할 수도 있다.
또는, 상기 가상 충돌 처리 장치의 데이터 프레임 선택은, 상기 사용자 우선순위를 상기 단말정보에 따라 보정 하여 제 2 사용자 우선순위를 생성하고, 상기 제 2 사용자 우선순위가 높은 데이터 프레임을 선택하는 것일 수도 있다.
그리고 상기 보정은, 전술한 바와 같다.
또한, 소정의 시간간격마다 상기 멀티 캐스트에 가입된 이동 단말에 대한 상기 단말정보가 갱신될 수도 있다.
한편, 본 발명은 적어도 하나 이상의 단말에게 경쟁기반의 채널접근 방식에 의해 멀티케스트 서비스를 제공하는 네트워크에 포함된 단말에 있어서, 멀티캐스트 서비스에 가입을 요청하는 메세지를 송신하고; 상기 네트워크로부터 수신된 확인요 청 메세지에 대한 응답 메세지를 송신하며; 상기 응답 메세지를 근거로 사용자 우선순위가 변경된 멀티캐스트 서비스 데이터를 수신하는 무선통신용 단말기를 포함한다.
또한, 본 발명은 적어도 하나 이상의 단말에게 경쟁기반의 채널접근 방식에 의해 멀티캐스트 서비스를 제공하는 네트워크에 있어서, 멀티캐스트 서비스에 대한 가입 요청 메세지를 송신하고, 상기 네트워크로부터 수신된 단말상태 확인요청 메세지에 대한 응답 메세지를 송신하며, 상기 네트워크로부터 상기 응답 메세지를 근거로 사용자 우선순위가 변경된 멀티캐스트 서비스 데이터를 수신하는 단말기와; 상기 단말기의 가입 여부를 확인하기 위하여 단말 상태 확인 요청 메세지를 송신하고, 상기 단말기로부터 응답메세지를 수신하여 상기 단말기에 가입된 멀티 캐스트 데이터의 사용자 우선순위를 변경하여 상기 단말에 서비스하는 베이스 스테이션을 포함하는 무선 통신 시스템을 포함한다.
한편, 본 발명은 네트워크 엔터티로부터 멀티캐스트 서비스를 제공받아 무선 통신의 경쟁 기반의 채널접근 방식에 의해 적어도 하나 이상의 단말로 멀티캐스트 서비스를 제공하는 네트워크에 있어서, 베이스 스테이션에 구비된 우선순위 결정장치가 전송될 데이터 프레임의 사용자 우선순위를 결정하는 단계와; 멀티캐스트 서비스에 가입된 단말에 대한 단말정보가 저장된 저장부로부터 상기 데이터 프레임을 전송받고자 하는 단말에 대한 단말정보를 검사하는 단계와; 상기 단말정보를 이용하여 상기 사용자 우선순위를 보정하는 단계; 그리고 상기 보정된 사용자 우선순위를 기반으로 상기 데이터 프레임의 AC(Access Category)를 결정하는 단계를 포함하 는 데이터 전송 방법을 포함한다.
이때, 상기 우선순위 결정은, 우선순위 테이블에 따라 결정될 수도 있다.
그리고 상기 결정된 AC에 해당하는 전송 큐에 상기 데이터 프레임을 배치할 수도 있다.
또한, 상기 데이터 프레임의 전송시 상기 AC 간 충돌이 발생하는 경우, 가상충돌 처리장치는 상기 보정된 사용자 우선순위가 가장 높은 데이터 프레임을 선택하여 전송할 수도 있다.
한편, 본 발명은 네트워크 엔터티로부터 멀티캐스트 서비스를 제공받아 무선 통신의 경쟁 기반의 채널접근 방식에 의해 적어도 하나 이상의 단말로 멀티캐스트 서비스를 제공하는 네트워크에 있어서, 베이스 스테이션에 구비된 우선순위 결정장치가 전송될 데이터 프레임의 제 1 사용자 우선순위를 우선순위 테이블에 따라 결정하는 단계와; 멀티캐스트 서비스에 가입된 단말에 대한 단말정보가 저장된 저장부로부터 상기 데이터 프레임을 전송받고자 하는 단말에 대한 단말정보를 검사하는 단계와; 상기 단말정보를 이용하여 상기 제 1 사용자 우선순위를 보정하여 제 2 사용자 우선순위를 생성하는 단계; 그리고 상기 제 2 사용자 우선순위를 기반으로 상기 데이터 프레임의 AC(Access Category)를 결정하는 단계를 포함하는 데이터 전송 방법을 포함한다.
이때, 상기 제 2 사용자 우선순위의 생성 후, 상기 제 2 사용자 우선순위가 0보다 작은 경우, 상기 제 2 사용자 우선순위를 0으로 설정하는 단계와; 상기 제 2 사용자 우선순위가 7보다 큰 경우, 상기 제 2 사용자 우선순위를 7로 설정하는 단 계를 더 포함할 수도 있다.
한편, 본 발명은 네트워크 엔터티로부터 멀티캐스트 서비스를 제공받아 무선 통신의 경쟁 기반의 채널접근 방식에 의해 적어도 하나 이상의 단말로 멀티캐스트 서비스를 제공하는 네트워크에 있어서, 멀티캐스트 서비스에 가입된 단말에 대한 단말정보가 저장된 저장부로부터 전송될 데이터 프레임을 전송받고자 하는 단말에 대한 단말정보를 검사하는 단계와; 베이스 스테이션에 구비된 우선순위 결정장치가 상기 단말정보를 이용하여 전송될 데이터 프레임의 사용자 우선순위를 결정하는 단계; 그리고 상기 사용자 우선순위를 기반으로 상기 데이터 프레임의 AC(Access Category)를 결정하는 단계를 포함하는 데이터 전송 방법을 포함한다.
그리고 본 발명은, 네트워크 엔터티로부터 멀티캐스트 서비스를 제공받아 무선 통신의 경쟁 기반의 채널접근 방식에 의해 적어도 하나 이상의 단말로 멀티캐스트 서비스를 제공하는 네트워크에 있어서, 베이스 스테이션에 구비된 우선순위 결정장치가 전송될 데이터 프레임의 사용자 우선순위를 결정하는 단계와; 상기 사용자 우선순위를 기반으로 상기 데이터 프레임의 AC(Access Category)를 결정하는 단계와; 상기 데이터 프레임의 전송시 상기 AC 간 충돌이 발생하는 경우, 멀티캐스트 서비스에 가입된 단말에 대한 단말정보가 저장된 저장부로부터 상기 데이터 프레임을 전송받고자 하는 단말에 대한 단말정보를 검사하는 단계와; 상기 단말정보를 이용하여 상기 사용자 우선순위를 보정하는 단계; 그리고 가상 충돌 처리기가 상기 보정된 우선순위가 높은 데이터 프레임을 선택하여 전송하는 단계를 포함하는 데이터 전송 방법을 포함한다.
이때, 상기 사용자 우선순위의 보정은, 상기 데이터 프레임을 수신받고자 하는 단말의 개수가 기준값 이상인 경우 상기 사용자 우선순위를 일정 값만큼 높이고, 상기 데이터 프레임을 수신받고자 하는 단말의 개수가 기준값 이하인 경우 상기 사용자 우선순위를 일정 값만큼 낮추도록 보정 하는 것일 수도 있다.
한편, 본 발명은 적어도 하나 이상의 단말에게 경쟁기반의 채널접근 방식에 의해 멀티 캐스트 서비스를 제공하는 네트워크에 포함된 단말에 있어서, 멀티 캐스트 서비스에 가입을 요청하는 메세지를 송신하는 단계와; 상기 네트워크로부터 수신된 단말의 상태 확인 요청에 대한 응답 메세지를 송신하는 단계; 그리고 상기 상태 확인 요청에 근거하여 네트워크가 상기 단말이 가입된 멀티캐스트 서비스 데이터의 사용자 우선순위를 변경하여 송신한 데이터를 수신하는 단계를 포함하는 무선통신 단말의 데이터 전송방법을 포함한다.
그리고 본 발명은 적어도 하나 이상의 단말에게 경쟁기반의 채널접근 방식에 의해 멀티캐스트 서비스를 제공하는 베이스 스테이션과 상기 베이스 스테이션으로부터 멀티캐스트 서비스를 제공받는 단말을 포함하는 무선 통신 네트워크에 있어서, 상기 단말이 멀티 캐스트 서비스에 가입을 요청하는 메세지를 상기 베이스 스테이션으로 송신하는 단계와; 상기 베이스 스테이션이 상기 단말의 상태를 확인하기 위한 단말상태 확인 요청 메세지를 상기 단말로 송신하는 단계와; 상기 단말이 상기 단말상태 확인 요청 메세지에 대한 응답 메세지를 상기 베이스 스테이션으로 송신하는 단계와; 상기 베이스 스테이션이 상기 응답 메세지를 기초로, 상기 단말이 가입된 멀티 캐스트 서비스 데이터의 사용자 우선순위를 변경하여 상기 단말에 송신하는 단계를 포함하는 데이터 전송방법을 포함한다.
상기한 바와 같은 구성을 가지는 본 발명에 의하면, 단말로부터 서비스 요청이 많은 데이터 프레임을 우선적으로 전송할 수 있으므로, 사용자(단말)를 고려한 데이터 전송을 수행할 수 있는 장점이 있다.
본 발명은 무선 통신의 QoS(서비스 품질)를 보장하기 위한 경쟁기반의 채널접근 우선순위를 결정함에 데이터를 수신하는 단말장치의 개수정보를 포함시키는 것으로, 본 발명의 범위가 IEEE 802.11e 규격 내용에 한정되는 것은 아니나, 설명의 편의상 구체적인 실시예로 IEEE 802.11e 규격에 따른 무선통신에서 적용되는 예를 살피도록 한다.
이하에서는 상기한 바와 같은 본 발명에 의한 무선 통신 시스템 및 이를 구성하는 단말장치와 베이스 스테이션 그리고 이의 우선순위 결정방법의 구체적인 실시예를 첨부된 도면을 참고하여 상세하게 설명한다.
도 1은 본 발명의 제 1 실시예에 의한 데이터 프레임의 AC분류과정을 도시한 흐름도이고, 도 2는 EDCA 방식에서 스테이션내 AC별 경쟁 상태를 도시한 개략도이며, 도 3은 EDCA 채널접근 방식을 도시한 개략도이고, 도 4는 EDCA TXOP 버스팅을 도시한 개략도이며, 도 5는 본 발명의 제 2 실시예에 의해 데이터 프레임을 전송하는 방법을 도시한 흐름도이고, 도 6은 본 발명의 일 실시예에 따른 서비스 활성화 요청(Service Activation Request) 동작 프레임의 일례를 나타내는 도면이며, 도 7은 본 발명의 일 실시예에 따른 서비스 활성화 요청(Service Activation Request) 동작 프레임의 또 다른 일례를 나타내는 구성도이고, 도 8은 본 발명의 일 실시예 에서 제안하는 서비스 활성화 응답(Service Activation Response) 동작 프레임의 일례를 나타낸 구성도이며, 도 9는 본 발명의 일 실시예에서 제안하는 서비스 활성화 응답(Service Activation Response) 동작 프레임의 또 다른 일례를 나타낸 구성도이고, 도 10은 베이스 스테이션에서 이동단말이 망에 존재하는지를 물어보는 Keep Alive Request 동작 프레임의 일례를 나타낸 구성도이며, 도 11은 Keep Alive Request Capability 정보요소(Information Element: IE)의 일례를 나타낸 구성도이고, 도 12는 본 발명의 일 실시예에 따른 Keep Alive Response 메시지의 일례를 나타낸 구성도이며, 도 13은 본 발명의 일 실시예에 의해 정보요소를 추가로 포함하는 Fast BSS transition 정보 요소를 나타내는 도면이고, 도 14는 본 발명의 일 실시예에 따른 association request frame body의 일 예를 나타낸 구성도이며, 도 15a는 본 발명의 일 실시예에 따른 ADD-notify packet의 일 예를 나타낸 구성도이고, 도 15b는 본 발명의 일 실시예에 따른 MOVE-notify packet의 일 예를 나타낸 구성도이며, 도 16은 본 발명의 구체적 실시예에 따라 이동 단말이 멀티캐스트 데이터를 제공받는 방법을 나타내는 절차 흐름도이고, 도 17은 특정한 이동 단말이 다른 베이스 스테이션의 영역으로 이동하는 경우에 멀티캐스드 서비스를 제공하는 방법을 나타내는 절차흐름도이며, 도 18은 본 발명의 이동 단말이 멀티캐스트 데이터를 제공받는 또 다른 방법을 나타내는 절차 흐름도이다.
무선 LAN에서 보다 진보된 QoS를 제공하기 위해서 기존의 802.11 MAC를 보완한 802.11e MAC이 제공된다.
IEEE 802.11e는 802.11 MAC의 DCF 전송방식을 근간으로 무선 LAN의 MAC 계 층에서 QoS를 지원할 수 있는 EDCA와 HCCA를 정의함으로써 베스트 에포트 서비스 외에도 전송지연에 민감한 트래픽을 전송할 수 있는 새로운 무선 LAN MAC 프로토콜을 제공한다.
802.11e에서는 기존 802.11 MAC 프로토콜 DCF와 PCF를 기반으로 하는 HCF(Hybrid Coordination Function)를 규정하고 있다. HCF는 무선 LAN의 QoS를 향상시키기 위한 새로운 매체 접근 메커니즘을 포함하며, 경쟁 주기와 비경쟁 주기 모두에서 QoS 데이터를 전송할 수 있다. 이하 802.11e에서 표현되는 QoS STA(QSTA : QoS Station) 는 QoS를 지원하는 스테이션을 말하고, QoS 베이스 스테이션(QAP : QoS AP)은 QoS를 지원하는 베이스 스테이션을 나타낸다.
상기 HCF는 두개의 동작 모드를 가지는데, 하나는 경쟁을 기반으로 하는 EDCA(Enhanced Distributed Channel Access)이고, 다른 하나는 폴링 메커니즘을 이용한 비경쟁 기반의 채널 접근 방식을 사용하는 HCCA(HCF Controlled Channel Access)이다.
상기 EDCA와 HCCA는 베이스 스테이션에 위치하는 HC(Hybrid Coordinator)에 의해 제어되며, DCF와 PCF를 사용하는 기존 802.11 MAC와도 호환된다. 상기 EDCA는 QoS 지원(Supported QOS) 위해 유선 네트워크의 DiffServ와 유사한 우선 순위 트래픽(Prioritized Traffic)을 제공하는 반면, 상기 HCCA는 QoS 보장(Garanteed QoS)을 위해 IntServ와 유사한 패러미터 트래픽(Parameterized Traffic)을 제공한다.
상기 EDCA 방식은 인프러스트럭처 모드와 애드혹 모드에서 우선 순위 기반의 QoS를 지원하는데 사용된다. 즉, 상기 EDCA는 상위 계층으로부터 우선 순위가 상이 하게 부여된 프레임에 대해 차별화된 채널 접근 기능을 제공한다.
802.11e MAC는 패러미터 QoS를 제공하기 위해 데이터를 전송하기 이전에 두개의 스테이션(단말기 이하'STA'라 한다) 간에 트래픽 스트림이라는 가상 연결을 설정한다. 실제 전송될 데이터의 특성과 QoS를 요구하는 패러미터들은 상기 트래픽 스트림을 설정하는 과정에서 상호 절충과 교환 작업을 거친다. 베이스 스테이션은 교환된 QoS 패러미터를 근간으로 각각의 STA에 무선 대역을 할당하며 폴링 프레임과 다운링크 프레임 전송 등에 대한 프레임 전송 스케쥴링을 한다.
802.11e MAC에 새로이 추가된 가장 기본적인 개념이 TXOP(Transmission Opportunity)다. 상기 TXOP는 특정 STA에게 프레임을 전송할 수 있는 일정 시간을 부여하고 이를 보장하기 위해 사용된다. TXOP 획득은 EDCA 경쟁에서 성공하거나 베이스 스테이션으로부터 QoS CF-Poll 프레임을 받음으로써 가능해지는데, 전자는 EDCA TXOP로 후자는 폴드(polled) TXOP라 불린다.
이와 같이 상기 TXOP라는 새로운 개념을 이용해 임의의 한 STA이 프레임을 전송할 수 있도록 일정 시간을 부여하거나 강제적으로 전송 시간을 제한할 수 있다. 상기 TXOP의 전송 시작 시간과 최대 전송 시간은 베이스 스테이션에 의해 결정되는데, 상기 EDCA TXOP의 경우 비콘 프레임에 의해, 상기 폴드 TXOP 경우는 QoS CF-Poll 프레임에 의해 STA에 통보된다.
상기 EDCA는 오직 경쟁 주기에서만 사용되는 반면에 HCCA는 이론적으로 경쟁 주기와 비경쟁 주기 모두에서 동작할 수 있으나, 경쟁주기에서만 사용되는 것이 바람직하다.
이하에서는 본 발명이 적용되는 EDCA방식에 대하여 살펴본다.
전술한 바와 같이, 경쟁 기반 채널 접근 방식인 EDCA는 기존의 DCF를 강화해 8가지 종류의 사용자 우선 순위를 가지는 프레임에 대해서 차별화된 매체 접근을 허용하고 있다. 아래 표1에서는 사용자 우선순위 테이블의 일 예가 표로 정리되어 있다(상기 표 1은 IEEE 802.1D에 의한 사용자 우선순위 테이블을 나타낸다). 상위 계층으로부터 MAC 계층에 도착하는 각 프레임은 특정 사용자 우선 순위 값을 갖게 되며, 각각의 QoS 데이터 프레임 MAC 헤더에는 사용자 우선 순위 값이 실린다.
-사용자 우선순위와 AC 대응표-
사용자 우선 순위 |
802.1D Designation |
AC(Access Category) |
Designation |
1 |
BK |
AC_BK |
Back Ground |
2 |
- |
AC_BK |
Back Ground |
0 |
BE |
AC_BE |
Best Effort |
3 |
EE |
AC_BE |
Best Effort |
4 |
CL |
AC_VI |
Video |
5 |
VI |
AC_VI |
Video |
6 |
VO |
AC_VO |
Voice |
7 |
NC |
AC_VO |
Voice |
이들 우선 순위를 포함하는 QoS 데이터 프레임의 전송을 위해 802.11e QoS STA은 4개의 AC(Access Category)를 구현한다(표1 참조). MAC 계층에 도착하는 프레임의 사용자 우선 순위는 서로 대응되는 하나의 AC로 할당된다. 상기 표1에 있는 사용자 우선 순위는 IEEE 802.1D 브리지 표준안에 명시돼 있다. 모든 AC는 각각의 전송 큐와 AC 패러미터를 가지는데, AC간 우선 순위의 차이는 서로 다르게 설정된 AC 패러미터 값으로부터 구현된다.
기본적으로 EDCA는 AC에 속한 프레임을 전송하기 위한 경쟁에 있어 DCF가 사용하는 DIFS, CWmin, CWmax 대신에 각각 AIFS[AC], CWmin[AC], CWmax[AC]를 사용한다. AIFS[AC]는 SIFS + AIFS [AC] 슬롯타임에 의해 결정되는데, 여기서 AIFS[AC]는 0보다 큰 정수값이다.
이때, 본 발명의 제 1 실시예에 의하면, 상위계층에서 상기 프레임의 우선순위를 결정함에 있어, 상기 프레임을 전송받는 단말장치의 개수정보가 이용된다.
상기 개수정보는 베이스 스테이션에 구비된 그룹테이블로부터 얻어지는 정보로 상기 베이스 스테이션이 접속된 단말장치에 대한 정보를 상기 그룹 테이블에 저장하는 방법은 후에 상세히 살펴보도록 한다.
상기 개수정보를 이용하여 상기 프레임의 우선순위를 결정하는 방법은 다양한 방법이 있다.
예를 들어, 상기 프레임의 종류에 따라 상기 표 1과 같이 일차적으로 일차적인 사용자 우선순위를 결정한 후에 상기 개수정보에 따라 상기 우선순위를 가감할 수 있다. 즉, 상기 개수정보에 따라 3개의 그룹으로 분리된 n1, n2, n3 그룹을 설정하고 상기 개수정보가 n1 그룹에 속하는 경우 상기 사용자우선순위를 1만큼 낮추고, n2인 경우에는 그대로 적용하며, n3인 경우에는 1만큼 증가시키도록 설정할 수 있다(이때, 상기 n1, n2, n3에 속하는 단말의 개수는 통신의 종류와 상황에 따라 적정한 개수로 설정된다).
또는, 상기 단말정보에 의해 접속된 단말기기의 개수가 일정 숫자 이상일 경우 상기 사용자 우선순위를 특정 단계만큼 증가시키는 방법도 있다.
이들 예에서 상기 사용자 우선순위 값들이 0 내지 7의 범위를 벗어나지 않도록 함과, 상기 설정된 그룹의 종류가 세분화될 수 있음은 자명하다.
상술한 바와 같이, 상기 개수정보에 의해 결정된 사용자 우선순위에 따라 상기 프레임들의 AC가 결정되고, 상기 AC에 속한 전송 큐에 전달된다.
이하에서는 전술한 본 발명의 제 1 실시예에 의한 사용자 우선순위 결정방법을 첨부된 도면을 참조하여 상세히 살펴보기로 한다.
도 1은 본 발명의 제 1 실시예에 의한 데이터 프레임의 AC분류과정을 도시한 흐름도이다.
이에 도시된 바와 같이, 본 발명의 제 1 실시예에 의하면, 먼저 전송될 데이터 프레임의 제 1 사용자 우선순위를 결정한다(S100). 이때 제 1 사용자 우선순위는 IEEE 802.11e 에 규정된 바와 같이, 상기 데이터 프레임의 종류에 따라 구분된다.
상기 제 1 사용자 우선순위가 결정되면, 그룹 테이블로부터 상기 데이터 프레임을 전송받고자 하는 단말의 개수를 파악한다(S110). 상기 그룹테이블은 서비스 요청이 있는 단말의 정보를 수록하는 테이블로, 상기 그룹테이블의 작성은 이후 살펴볼 것이다.
그리고, 상기 단말의 개수에 따라 제 1 사용자 우선순위를 수정한 제 2 사용자 우선순위를 산출한다.
즉, 상기 단말의 개수가 기준값1(m1) 미만인 경우에 상기 데이터 프레임은 n1 그룹에 속하는 것으로 판단되어, 상기 제 1 사용자 우선순위를 1만큼 낮춘 사용자 우선순위를 제 2 사용자 우선순위로 설정한다(S122).
그리고 상기 단말의 개수가 기준값1(m1) 이상 기준값2(m2) 이하인 경우에 상기 데이터 프레임은 n2 그룹에 속하는 것으로 판단되어, 상기 제 1 사용자 우선순위를 그대로 제 2 사용자 우선순위로 설정한다(S124).
또한, 상기 단말의 개수가 기준값2(m2)를 초과하는 경우에 상기 데이터 프레임은 n3 그룹에 속하는 것으로 판단되어, 상기 제 1 사용자 우선순위를 1만큼 높인 사용자 우선순위를 제 2 사용자 우선순위로 설정한다(S126).
상술한 바와 같은 방법으로 제 2 사용자 우선순위를 결정한 다음, 상기 제 2 사용자 우선순위가 0 보다 작은 경우에는 상기 제 2 사용자 우선순위를 0으로 설정하고(S130, S140), 상기 제 2 사용자 우선순위가 7 보다 큰 경우에는 상기 제 2 사용자 우선순위를 7로 설정한다(S160, S170).
상기 제 2 사용자 우선순위를 보정한 이후에, 상기 데이터 프레임의 AC가 상기 제 2 사용자 우선순위에 따라 설정된다(S180).
그리고, 결정된 상기 AC에 해당하는 전송 큐에 상기 데이터 프레임을 전송한다(S190).
상기 본 발명의 제 1 실시예에서는, 상기 사용자 우선순위를 제 1 사용자 우선순위와 제 2 사용자 우선순위로 나누어 설명하였으나, 이는 설명의 편의를 위한 것으로 하나의 사용자 우선순위를 설정하고 이를 상기 단말개수에 따라 보정하는 것도 가능하다. 즉, 상기 사용자 우선순위를 상기 단말의 개수에 따라 일정한 값만큼 가감하고, 이들 가감된 사용자 우선순위의 상한과 하한을 정정하여 이를 사용자 우선순위값으로 설정하는 것도 가능하다.
이하에서는, 상기 전송 큐를 통해 상기 프레임이 전달되는 방식을 살피기로 한다.
도 2에 도시된 바와 같이, 802.11e MAC에 정의된 4개의 AC별 전송 큐는 하나의 STA 내에서 무선 매체 접근을 위해 각각 개별적인 EDCA 경쟁 개체로서 역할을 수행한다. 하나의 AC는 자신의 AIFS 값을 가지고 독립된 백오프 카운터를 유지한다. 만약 동시에 백오프를 마친 AC가 하나 이상 존재할 경우에는 AC 간의 충돌은 가상 충돌 처리기(Virtual Collision Handler)에 의해서 조정된다. 가장 높은 우선 순위의 프레임이 먼저 선택돼 STA간 경쟁을 위해 전송되며, 다른 AC들은 CW 값을 증가시켜 다시 백오프 카운터를 갱신한다.
앞에서 언급한 바와 같이 802.11e는 특정 STA이 전송을 개시할 때 TXOP에 근거해 전송 시간을 정한다. 802.11e 베이스 스테이션은 AIFS[AC], CWmin[AC], CWmax[AC] 등의 EDCA 패러미터와 EDCA TXOP 시간인 TXOP Limit [AC]를 비콘 프레임에 실어서 각 STA에 전달한다.
만약, 프레임 전송 도중 STA간 충돌이 발생할 경우 새로운 백오프 카운터를 생성하는 EDCA의 백오프 과정은 기존의 DCF와 유사하다.
도 3에 도시된 바와 같이, 상기 EDCA의 채널 접근 방식도 DCF와 유사하다. 단, 각 AC별로 상이한 AIFS(Arbitration Inter Frame Space)와 CW를 유지한다. 여기서 AIFS는 PIFS와 DIFS 보다는 큰 값이어야 하는데, 이는 적어도 SIFS 시간보다 크게 설정해 ACK 프레임 등의 전송을 보호하기 위함이다.
상기 EDCA 패러미터 집합으로 일컬어지는 AIFS[AC], CWmin[AC], CWmax[AC] 등의 값은 베이스 스테이션에 의해 비콘 프레임에 실려 각 STA에 통보될 수 있다. 기본적으로 AIFS[AC]와 CWmin[AC]의 값이 작을수록 높은 우선 순위를 가지며, 이에 따라 채널 접근 지연이 짧아져 주어진 트래픽 환경에서 보다 많은 대역을 사용한다.
상기 EDCA 패러미터들은 다양한 사용자 우선 순위 트래픽에서의 채널 접근을 차별화하기 위해 사용되는 중요한 수단이 된다. 더불어 각 AC별 패러미터를 포함하는 EDCA 패러미터 값의 적절한 설정은 네트워크 성능을 최적화하는 동시에 트래픽의 우선 순위에 의한 전송 효과를 얻게 해준다. 따라서 베이스 스테이션은 네트워크에 참여한 모든 STA에 공평한 매체 접근 보장을 위해 EDCA 패러미터에 대한 전체적인 관리와 조정 기능 수행이 요구된다.
도 4에 도시된 바와 같이, EDCA TXOP Limit 시간 동안에는 ACK와 연속되는 프레임 전송 간에 SIFS 간격으로 여러 개의 프레임을 동시에 전송할 수 있는데, 이와 같이 여러 개의 프레임을 동시에 전송하는 것을 'EDCA TXOP 버스팅(Bursting)'이라 한다.
TXOP Limit 시간 동안 우선 순위를 포함하는 두개의 QoS 데이터 프레임이 전송되는데, 이때 두개의 QoS 데이터 프레임과 ACK 프레임이 베이스 스테이션에서 결정된 TXOP Limit 시간 내에 전송됨을 알 수 있다. EDCA TXOP 버스팅은 여러 개의 프레임을 전송할 때 반드시 TXOP Limit를 준수하기 때문에 EDCA TXOP 버스팅에 의해 전체 네트워크의 성능은 영향을 받지 않는다. 따라서 적절한 TXOP Limit 값의 선택은 전체 네트워크 성능을 향상시킬 수 있다.
한편, 본 발명의 제 2 실시예에 의하면, 상기 데이터 프레임은 기존과 같은 제 1 사용자 우선순위에 따라 AC가 결정되고 전송 큐를 할당받아 저장된다.
그러나 전술한 바와 같이 상기 AC간의 충돌이 발생하는 경우, 상기 가상 충돌 처리기가 최우선의 우선순위를 갖는 프레임을 선택하여 전송하는데, 이때 제 2 사용자 우선순위를 비교하여 전송될 데이터 프레임을 결정한다.
이하에서 본 발명의 제 2 실시예에 의한 데이터 프레임의 전송방법을 첨부된 도면을 참조하여 상세히 살피도록 한다.
도 5는 본 발명의 제 2 실시예에 의해 데이터 프레임을 전송하는 방법을 도시한 흐름도이다.
이에 도시된 바와 같이, 본 발명의 제 2 실시예에 의한 경우, 먼저 먼저 전송될 데이터 프레임의 제 1 사용자 우선순위를 결정한다(S200). 이때 제 1 사용자 우선순위는 IEEE 802.11e 에 규정된 바와 같이, 상기 데이터 프레임의 종류에 따라 구분된다.
상기 제 1 사용자 우선순위가 결정되면, 그룹 테이블로부터 상기 데이터 프레임을 전송받고자 하는 단말의 개수를 파악한다(S210).
그리고, 상기 단말의 개수에 따라 제 1 사용자 우선순위를 수정한 제 2 사용자 우선순위를 산출한다(S220). 이때, 상기 제 2 사용자 우선순위의 결정은 본 발명의 제 1 실시예의 제 122 단계 내지 170 단계와 동일한 과정을 통해 결정될 수 있다.
이후, 상기 데이터 프레임의 AC가 상기 제 1 사용자 우선순위에 따라 설정된다(S230).
그리고, 결정된 상기 AC에 해당하는 전송 큐에 상기 데이터 프레임을 전송한다(S240).
즉, 여기까지는 설정된 상기 제 2 사용자 우선순위를 사용하지 않고 종래와 동일한 방법으로 상기 데이터 프레임을 전송 큐에 전송한다.
그 후, 데이터를 전송중에 AC간의 충돌이 발생하였는지 판단한다(S250).
이때, 상기 충돌이 발생하면, 상기 가상충돌 처리기는, 상기 데이터 프레임의 사용자 우선순위를 비교하여 전송될 데이터 프레임을 결정하는데, 이때 상기 제 2 사용자 우선순위를 이용하여 데이터 프레임의 우선순위를 비교한다(S260).
그리고 상기 제 2 사용자 우선순위가 높은 데이터 프레임을 전송한다(S270).
여기서, 상기 제 2 사용자 우선순위라는 개념은 설명의 편의상 도입된 개념으로, 상기 제 2 사용자 우선순위를 설정하지 않고, 상기 AC간의 충돌이 발생한 겨우, 사용자 우선순위를 상기 그룹 테이블로부터 서비스가 요청된 단말의 개수에 따라 수정하여 이를 비교하여 전송할 데이터 프레임을 결정할 수도 있다.
이하에서는, 상기 멀티개스트 그룹테이블이 작성되고 수정되는 방법을 상세히 살펴보도록 한다.
본 발명의 실시예에는 베이스 스테이션이 접속된 단말기기를 관리하기 위해 특정한 동작 프레임(Action frame)을 제안하다. 이하, 본 실시예에 따른 멀티캐스트 IGMP 동작 프레임(Multicast IGMP Action Frame)을 위한 Category values, Action Fields의 일례를 설명한다. 하기 표 2와 표 3은 본 실시예에 따른 Category values, Action Fields의 일례를 설명한다.
Category values
Name |
Value See-Sub field |
Wireless Network Management |
8 IEEE 802. 1y 7.4.6 |
Multicast GMP Action |
7 |
Reserved |
8-127 |
Multicast IGMP action field values
Action field value |
Description |
0 |
Service Action Request |
1 |
Service Action Response |
2 |
Keep Alive Request |
3 |
Keep Alive Response |
4-255 |
Reserved |
이하, 본 발명의 실시예에서 제안하는 멀티캐스트 IGMP 동작 프레임(Multicast IGMP Action Frame)들의 일례를 설명한다.
도 6는 본 발명의 실시예에 따른 서비스 활성화 요청(Service Activation Request) 동작 프레임의 일례를 나타내는 도면이다.
다음은 도 6의 동작 프레임에 포함되는 각각의 파라미터(parameter)에 대한 설명이다.
Category: Multicast IGMP Action Request action frame을 위한 category value로, 7(Multicast IGMP Action)로 설정된다.
Action: 멀티캐스트 IGMP 설정 요청(Multicast IGMP Setup Request)을 위한 경우에는 '0'으로 설정된다.
Multicast MAC Address: 베이스 스테이션이 해당 IGMP를 처리해줘야 하는 멀티캐스트 MAC 주소(Multicast MAC Address)이다.
상기 Multicast MAC Address는 특정한 멀티캐스트 서비스를 식별하기 위해 사용되는 주소이다. 멀티캐스트 서비스는 IP 주소로 구분될 수 있으며, 상기 IP 주소는 특정한 MAC 주소에 매핑될 수 있다. 즉, 상기 Multicast MAC Address는 특정한 IP 주소가 매핑된 MAC 주소로서, 멀티캐스트 서비스에 대한 MAC 주소이다.
도 7은 본 실시예에 따른 서비스 활성화 요청(Service Activation Request) 동작 프레임의 또 다른 일례를 나타내는 도면이다.
다음은 도 7의 동작 프레임에 포함되는 각각의 파라미터(parameter)에 대한 설명이다.
Category : Multicast IGMP Action Request action frame을 위한 category value로, 7(Multicast IGMP Action)로 설정된다.
Action : 멀티캐스트 IGMP 설정 요청(Multicast IGMP Setup Request)을 위한 경우에는 '0'으로 설정된다.
Multicast MAC Address: 베이스 스테이션이 해당 IGMP를 처리해줘야 하는 Multicast MAC Address
Interval : Keep Alive에 응답을 하기 위한 최소한의 주기를 설정한다
도 7의 일례에 따른 동작 프레임은 Interval 파라미터를 추가로 포함한다.
본 실시예에 따라 추가되는 Interval 파라미터에 의해 다양한 동작이 수행될 수 있다. 가령 단말의 상위 레이어는 멀티캐스트 서비스에 따라 결정되는 멀티캐스트 서비스가 제공되는 주기에 관한 정보를 알 수 있다. 이 경우, 상기 Interval 파라미터를 통해 상기 단말과 통신하는 베이스 스테이션에 상기 멀티캐스트 서비스가 제공되는 주기를 알릴 수 있다. 가령, 상기 멀티캐스트 서비스가 제공되는 주기가 20msec일 수 있다.
이 경우 상기 Interval 파라미터를 통해 20msec의 정보를 베이스 스테이션에 제공할 수 있다. 단말 입장에서는 20msec로 멀티캐스트 데이터가 전송되고, 각 데이터가 실제로 5msec동안 전송된다면 최대 15msec 동안은 전력 절약 모드(PS mode)로 진입할 수 있다. 다만, 전력 절약 모드로 진입하는 동작은 베이스 스테이션에서 전송하는 Keep Alive Request를 전송하는 동작과 연관되어 수행되는 것이 바람직하다.
즉, 베이스 스테이션은 단말이 존재하는지를 확인하기 위해 Keep Alive Request를 전송하는데, 상기 베이스 스테이션이 Keep Alive Request를 전송하는 시점에는 단말이 전력 절약 모드(PS mode)에 진입하지 않는 것이 바람직할 것이다. 만약, 멀티캐스트 데이터가 5msec 동안 전송되고, 그 직후에 Keep Alive Request가 전송되도록 한다면, 단말은 데이터와 Keep Alive Request를 수신하고 Keep Alive Request에 대한 응답(response)를 보낸후 전력 절약 모드로 진입할 수 있을 것이다. 이러한 동작들이 원활하게 수행되려면, 멀티캐스트 서비스가 전송되는 주기에 관한 정보 또는 Keep Alive Request에 응답(response)을 하기 위한 최소한의 주기에 관한 정보 등을 베이스 스테이션에 전송하는 것이 바람직하다.
따라서, 본 실시예는 상기 Interval 파라미터를 통해 특정한 Interval 정보를 제공할 것을 제안한다.
도 8은 본 실시예에서 제안하는 서비스 활성화 응답(Service Activation Response) 동작 프레임의 일례를 나타낸다. 도시된 동작 프레임에 포함되는 파라미터를 설명하면 다음과 같다.
Category: Multicast IGMP Action Request action frame을 위한 category value로 7 (Multicast IGMP Action)로 설정된다.
Action : 멀티캐스트 IGMP 설정 응답(Multicast IGMP Setup Response)을 위해서는 '1'로 설정된다.
Multicast MAC Address : 베이스 스테이션이 해당 IGMP를 처리해줘야 하는 Multicast MAC Address
Status Code : Multicast IGMP Setup request에 대해 베이스 스테이션의 응답을 나타낸다. 내용은 표 4와 같다.
Status code field
Status code |
Meaning |
0 |
Successful |
1 |
Unspecified Failure |
2-255 |
Reserved |
즉, 상기 서비스 활성화 응답(Service Activation Response) 동작 프레임은, 단말이 요청한 내용을 수용할 수 있는지 나타낼 수 있다.
도 9는 본 실시예에서 제안하는 서비스 활성화 응답(Service Activation Response) 동작 프레임의 또 다른 일례를 나타낸다. 도시된 동작 프레임에 포함되는 파라미터를 설명하면 다음과 같다.
Category : Multicast IGMP Action Request action frame을 위한 category value로, 7(Multicast IGMP Action)로 설정된다.
Action : 멀티캐스트 IGMP 설정 응답(Multicast IGMP Setup Response)을 위해서는 '1'로 설정된다.
Multicast MAC Address : 베이스 스테이션이 해당 IGMP를 처리해줘야 하는 Multicast MAC Address
Status Code : Multicast IGMP Setup request에 대해 베이스 스테이션의 응답을 나타낸다. 내용은 상기 표 5와 같다.
Group Number : 베이스 스테이션에서 관리를 위해 멀티캐스트 주소(Multicast Address), 즉 멀티캐스트 MAC 주소마다 부여되는 값이다. 상기 그룹 번호(Group Number) 파라미터는 하나 이상의 단말을 하나의 그룹 번호로 식별할 수 있다. 즉, 상기 서비스 활성화 응답 동작 프레임을 수신한 단말은 특정한 하나의 그룹 번호로 식별될 수 있다. 다수의 단말에 대하여 개별적으로 식별번호를 부여하는 것보다 특정한 단말을 그룹화하여 식별하는 것이 유리하다. 도 13의 일례에 따른 동작 프레임을 통해 효율적으로 특정 단말을 그룹화시킬 수 있다. 도한, 동일한 그룹에 속하는 단말은 하나의 그룹 번호로 구분될 수 있다.
이하, 베이스 스테이션에서 IGMP 처리를 위한 테이블(table)의 일례를 설명한다.
Multicast Group Table entry format
Field Name |
Description |
STA's MAC Address |
Request를 보낸 이동단말의 MAC Address |
Multicast MAC Address |
IGMP를 처리해주기 위한 Multicast MAC Address |
Group Number |
Multicast Address 당 할당되는 Group Number |
Expiration Time |
Table에서 삭제하기 위한 countdown Time |
상기 표 5의 테이블은 베이스 스테이션에 의해 관리될 수 있다. 다만, 표 5의 테이블은 본 실시예에 따른 일례일 뿐이며, 본 발명이 표 5의 내용에 한정되지 아니한다. 즉 표시된 Group Number 필드는 각 단말이 특정한 그룹 번호(Group Number)로 식별되는 경우에 필요한 데이터 필드이므로 필요에 따라 추가되거나 삭제될 수 있다. 상기 Expiration Time 필드는 특정한 시간동안 정상적인 응답을 하지 않는 특정 단말에 관한 정보를 삭제하기 위한 데이터 필드이다. 상기 Expiration Time 필드를 통해 상기 테이블이 지나치게 길어지는 것을 방지할 수 있으므로, 상기 Expiration Time 필드가 상기 멀티캐스트 그룹 테이블(Multicast Group Table)에 포함되는 것이 바람직하다.
이하, 베이스 스테이션에서 이동단말이 망에 존재하는지를 물어보는 Keep Alive Request 메시지를 전송하는 방법을 설명한다. 본 실시예는 상기 Keep Alive Request 메시지를 전송하는 3가지 방법을 제안한다. 우선, 첫 번째 방법은 별도의 동작 프레임을 통해 전송하는 방법이고, 두 번째 방법은 비콘(Beacon) 메시지에 포함시켜 전송하는 방법이고, 세 번째 방법은 멀티캐스트 데이터에 피기백(piggyback) 시키는 방법이다.
우선 첫 번째 방법을 설명한다.
도 10은 베이스 스테이션에서 이동단말이 망에 존재하는지를 물어보는 Keep Alive Request 동작 프레임의 일례를 나타낸다. 상기 Keep Alive Request 동작 프레임을 수신한 이동 단말은, 베이스 스테이션으로 자신이 존재하는지를 알리는 Keep Alive Response 동작 프레임을 전송할 수 있다.
다음은 도 10의 동작 프레임에 포함되는 각각의 파라미터(parameter)에 대한 설명이다.
Category: Multicast IGMP Action Request action frame을 위한 category value로 7 (Multicast IGMP Action)로 설정된다.
Action: Keep Alive Request을 위해서는 '2'로 설정된다.
Multicast MAC Address: 베이스 스테이션이 해당 IGMP를 처리해줘야 하는 Multicast MAC Address
Group Number : Keep Alive Request에 대해 응답(Response)를 보내야 하는 Group을 나타낸다. 그룹 번호 0은 전체 이동단말이 답해야 하는 경우를 나타낼 수 있다. 상술한 바와 같이 상기 그룹 번호(Group Number)는 하나 이상의 단말을 식별하는데 사용되며, 도 9 및 도 10의 동작 프레임에서 사용될 수 있다.
이하, Keep Alive Request 메시지를 전송하는 두 번째 방법을 설명한다.
Keep Alive Request 메시지를 비콘(Beacon)에 실어 보내는 경우의 일례를 설명하면 다음과 같다.
Order |
Information |
Notes |
TBD |
Keep Alive Request Capability |
단말들이 망에 존재하는지를 물어보는 정보가 포함. |
도 11은 Keep Alive Request Capability 정보요소(Information Element: IE)의 일례를 나타낸다. 도 11과 같은 정보요소를 구성하여 상기 비콘에 Keep Alive Request 메시지를 전송할 수 있다.
다음은 Keep Alive Request Capability IE의 각 파라메터에 대한 설명이다.
Keep Alive Request : Beacon을 통해 Keep Alive Request를 수행할 경우 1로 설정이 된다.
Group Number : Keep Alive Request에 대해 Response를 보내야 하는 Group을 나타낸다. 상술한 바와 같이, 0은 전체 이동단말이 답해야 하는 경우를 나타낼 수 있다.
이하, Keep Alive Request 메시지를 전송하는 세 번째 방법을 설명한다.
즉, Keep Alive Request를 멀티캐스트 데이터에 피기백(piggyback)하는 경우를 설명한다. 상기 피기백하는 방법은 다시 두 가지로 구분된다.
한 가지 방법은 MAC Frame Format내의 Frame Control Field에서 Type과 Subtype를 변경하는 예이다. 즉, MAC 프레임의 Frame Body의 일부에 상기 Keep Alive Request 메시지가 포함되는 사실을 상기 Type과 Subtype 정보를 통해 알릴 수 있다. 상기 Type과 Subtype 정보가 하기 표 7과 같이 지정되는 경우 단말은 MAC 프레임의 Frame Body의 일부에 상기 Keep Alive Request 메시지가 포함되었음을 알 수 있다.
Valid type and subtype combinations
Type value b2, b3 |
Type value descriptor |
Subtype value b7 b6 b3 b4 |
Subtype description |
10 |
DATA |
101 |
Multi cast DATA+ Keep Alive Request |
상기 Keep Alive Request 메시지는 상기 Frame Body의 첫 부분에 포함되는 것이 바람직하다. 즉, 그리고 Frame Body의 첫 부분에 그룹 번호(Group Number)의 필드를 부가하여 상기 Keep Alive Request 메시지를 전송할 수 있다.
상술한 방법과 다른 방법을 통해 Keep Alive Request를 멀티캐스트 데이터에 피기백(piggyback) 시킬 수 있다. 즉, MAC 프레임 내의 Frame Control 필드에서 Retry bit을 설정하여 단말에게 알려줄 수 있다. 일반적으로 멀티캐스트 데이터는 재전송을 하지 않기 때문에, 상기 Retry bit는 멀티캐스트 데이터를 송수신하는 경우에는 의미를 갖지 않는다. 본 실시예는, 상기 Retry bit의 설정 여부에 따라 MAC 프레임의 Frame Body의 일부에 상기 Keep Alive Request 메시지가 포함되었는지를 식별하도록 한다.
이하, Keep Alive Request 메시지에 대한 응답 메시지, 즉 Keep Alive Response 메시지를 설명한다. 도 12는 본 실시예에 따른 Keep Alive Response 메시지의 일례를 설명한다.
다음은 도 12에 있는 각 parameter에 대한 설명이다
Category : Multicast IGMP Action Request action frame을 위한 category value로, 7 (Multicast IGMP Action)로 설정된다.
Action : Keep Alive Response를 위해서는 '3'로 설정된다.
Multicast MAC Address : 베이스 스테이션이 해당 IGMP를 처리해줘야 하는 Multicast MAC Address
Cause : 단말이 keep alive request에 대해 베이스 스테이션에 응답하는 내용이다.
cause code |
Meaning |
0 |
Sustain Service |
1 |
End Service |
2-255 |
Reserved |
이하, 상술한 동작 프레임 등을 이용하여 베이스 스테이션이 상기 표 5의 Multicast Group Table에 기록된 단말들이 실제로 망에 존재하는지 여부를 확인하는 다양한 방법을 설명한다.
제1 방법:
베이스 스테이션은 상기 Multicast Group Table의 expiration time 필드를 고려하여 단말들에게 keep alive request 동작 프레임을 전송한다. 이를 수신하는 단말은 존재여부를 keep alive response 동작 프레임을 통해 알려준다. 이때, 상기 Keep alive request 동작 프레임을 수신한 단말은 Keep alive response 동작프레임을 베이스 스테이션으로 송신한다. 여기서, 베이스 스테이션과 통신가능한 모든 단말은 Keep alive response 동작프레임을 송신하는 것이 바람직하며, 특별히 통신이 불가능한 단말의 Keep alive response 동작 프레임만이 송신되지 않도록 하는 것이 바람직하다.
비콘(Beacon)을 통한 Keep Alive Request 메시지를 전송하는 제2 방법:
주기적으로 망에 뿌려지는 비콘(beacon)을 통해 keep alive request를 단말들에게 알려줄 수 있다. 이때 비콘(beacon)을 수신하는 단말은 keep alive response 동작 프레임을 보내게 된다. 상술한 바와 같이, 상기 Keep alive request 동작 프레임을 수신한 단말은 Keep alive response 동작프레임을 베이스 스테이션으로 송신한다. 여기서 마찬가지로 베이스 스테이션과 통신가능한 모든 단말은 Keep alive response 동작프레임을 송신하는 것이 바람직하며, 특별히 통신이 불가능한 단말의 Keep alive response 동작 프레임만이 송신되지 않도록 하는 것이 바람직하다.
Expiration Time을 이용하여 Multicast Group Table을 제어하는 제3 방법:
서비스 활성화 요청(Service Activation Request) 동작 프레임을 보내는 과정에서 Interval 파라미터를 이용하여 expiration time을 설정할 수가 있다. 상기 Interval 파라미터에 포함되는 expiration time 값은 상기 표 5의 expiration time 필드의 값과 동일할 수 있다. 상기 Interval 파라미터에 포함되는 expiration time 값은 단말의 상위 어플리케이션을 고려하여 전력 절약(power saving) 등의 목적으로 값을 설정된다. 즉, 설정된 Expiration time 동안 단말은 전력 절약 모드로 진입하여 Keep alive request에 대해 응답을 하지 않을 수 있다. 베이스 스테이션은 상기 표 6의 Multicast Group Table에서 expiration time이 경과된 단말들에 대해 선택적으로 Keep Alive Request를 보내어서 단말이 망에 연결되어 있는지를 점검할 수 있다.
멀티캐스트 데이터 전송 주기에 데이터를 전송할 때 Keep Alive Request 메시지를 전송하여 Multicast Group Table을 제어하는 제4 방법:
멀티캐스트 데이터 전송 주기에 데이터를 전송할 때 keep alive request를 피기백(piggyback)하여 멀티캐스트 서비스를 받는 단말이 최소 하나 이상 있는지를 확인할 수 있다.
이 경우 위의 keep alive request를 멀티캐스트 데이터에 피기백(piggyback) 시키는 방법은 상술한 바와 같이 두 가지가 있을 수 있다.
상술한 첫 번째 방법은 데이터 프레임을 전송할 때 MAC 프레임 내의 Frame Control 필드의 Type과 Subtype 값을 변경하여 멀티캐스트 데이터에 keep alive request가 포함된 사실을 알리는 것이다. 베이스 스테이션은 주기적으로 상기 Type과 Subtype을 변경하고 Frame Body의 시작 부분에 그룹 번호(Group Number)를 기입할 수 있다. 또한, 이를 수신하는 단말은 상기 Type과 Subtype을 통해 피기백이 있었음을 알 수 있고, 단말에게 전송되는 그룹 번호를 확인하고 keep alive response를 보낼 수 있다.
상술한 두 번째 방법은 MAC 프레임 내의 Frame Control 필드에서 Retry bit을 설정하여 단말에게 알리는 것이다. 상기 Retry bit는 현재 보내지는 프레임이 재전송 프레임이라는 것을 알려주는 bit이다. 그런데 일반적으로 멀티캐스트 서비스에서는 재전송을 허용하지 않는다. 이로 인해 상기 retry bit은 멀티캐스트 서비스에서 이용되지 않는다. 본 실시예는 상기 retry bit를 설정하여 keep alive request가 MAC 프레임에 포함되었다는 정보를 단말들에게 알려주는 통신 방법을 제안한다.
단말은 Keep Alive Request에 대해 단말의 상태에 따라 여러 종류의 응답(Response)를 보낼 수 있다.
단말이 멀티캐스트 서비스를 끝내려는 경우에는 다음과 같이 동작할 수 있다.
단말은 멀티캐스트 서비스를 끝내려고 할 때 베이스 스테이션에 알려주어 상기 베이스 스테이션이 해당 테이블(예를 들어, 상기 표 5의 테이블)의 항목(entry)을 지우게 한다. 상기 멀티캐스트 서비스를 끝낸다는 사실은 Keep Alive Response의 cause를 end service로 기록하여 알릴 수 있다.
단말이 멀티캐스트 서비스를 계속 받는 경우에는 다음과 같이 동작할 수 있다.
단말은 멀티캐스트 서비스를 계속 받고 싶을 때 베이스 스테이션에 알려주어 베이스 스테이션이 해당 테이블의 항목(entry)을 유지하게한다. 상기 멀티캐스트 서비스를 계속 받는다는 사실은 Keep Alive Response의 cause를 sustain service로 기록하여 알릴 수 있다.
단말이 keep alive request에 대해 타임아웃(timeout)이 발생할 때는 다음과 같이 동작할 수 있다. 단말이 비정상적인 작동으로(예를 들어, 전원의 꺼짐에 의해) keep alive request에 대해 반응하지 못하여 타임아웃(timeout)이 발생하면, 베이스 스테이션은 해당 단말을 해당 테이블의 항목(entry)에서 지운다.
본 발명은 이동 단말이 다른 망, 즉 다른 베이스 스테이션으로 이동하는 경우 효율적인 무선 자원 사용을 위해 다음과 같은 정보요소를 제안한다.
도 13은 본 실시예에 의해 정보요소를 추가로 포함하는 Fast BSS transition 정보 요소를 나타내는 도면이다. 다음은 도 13의 정보요소에 포함되는 각 파라미터(parameter)에 대한 설명이다
도 13의 정보요소는 IEEE 802.11R에 규정된 메시지를 변형한 것이다. 상기 도 13의 정보요소는 Multicast MAC address를 추가적으로 포함한다. 이를 통해 상기 정보요소가 포함된 메시지를 수신한 종래의 베이스 스테이션은, 상기 정보를 송신한 단말(STA)의 STA's MAC address를 상기 Multicast MAC address에 대한 상기 표6의 Multicast Group Table에 해당 항목(entry)에서 삭제할 수 있다. 또한, 이동 단말이 이동하는 새로운 베이스 스테이션은 단말의 STA's MAC adress를 상기 Multicast MAC address에 대한 상기 표 6의 Multicast Group Table에 해당 항목(entry)에 등록할 수 있다.
도 13에 포함되는 파라미터를 설명하면 다음과 같다.
Multicast MAC Address : 새로운 베이스 스테이션의 Multicast Group Table에 해당 entry를 등록하기 위해 Multicast Address를 보낸다
그러나, 상술한 바와 같은 방법은 Fast BSS(Basic service transition)을 over-the-DS(distribution system)를 통하여 이루어지는 경우를 말하는 것으로, 종래의 베이스 스테이션을 사용하지 않고 직접 target 베이스 스테이션과 결합을 이루는 over-the-air(OTA)의 경우에는 종래의 베이스 스테이션 및 target 베이스 스테이션이 현재 단말이 이용하는 Multicast service를 알 수 없게 되는데 이러한 경우에는 단말이 target 베이스 스테이션과 결합을 이루기 위해 association request를 송신하는 경우 Multicast MAC address element를포함하여 송부하도록 하여 target 베이스 스테이션과 현재 단말이 이용하는 Muticast service를 알 수 있도록 하는 것이 바람직하다.
따라서, 도 14에 도시된 association request frame body의 예에서와 같이, 상기 association request frame에는 단말이 이용중이던 service에 관한 정보가 포함된 Muticast MAC address 정보가 포함되는 것이 바람직하다.
한편, Target 베이스 스테이션은 association request에 상기 Multicast MAC address가 설정된 경우에는 802.11F에서 정의되고 있는 IAPP, ADD-notify packet 또는 MOVE-notify packet을 이용하여 종래의 베이스 스테이션에게 이러한 사실을 알려주는 것이 바람직하다.
그러므로, 도 15a에 도시된 바와 같이, ADD-notify packet을 이용하는 경우, ADD-notify data에는 Multicast MAC address가 포함된다. 또한, 도 15b에 도시된 바와 같이, MOVE-notify packet을 이용하는 경우에도 MOVE-notify data에는 Multicast MAC address가 포함된다.
이하, 도 16 내지 도 18을 참조하여 상술한 동작 프레임, 정보 요소 등을 이용하여 그룹 테이블을 관리하는 방법을 설명한다.
이동 단말은 정보제공자(Service Provider)로부터 멀티캐스트 서비스를 받기 위해 서비스 가입을 한다. 상기 서비스 가입은 이동 단말의 어플리케이션에서 수행된다. 이를 통해 이동단말은 멀티캐스트 서비스 시작을 알게 되고 이를 위한 준비를 한다. 이후 정보제공자로부터 이동단말까지 이르는 정보전달 경로를 만들기 위한 절차가 진행된다. 도 16 내지 도 18에 도시된 절차는, 이미 어플리케이션 계층의 동작에 의해 이동 단말이 멀티캐스트 서비스 시작을 알고 있고, 실제로 정보제공자로부터 정보 전달을 위한 동작이 개시되는 상황에서 수행되는 절차이다.
도 16는 본 실시예에 따라 이동 단말이 멀티캐스트 데이터를 제공받는 방법을 나타내는 절차 흐름도이다.
우선 멀티캐스트 라우터는, 연결된 모든 베이스 스테이션에게 IGMP Query를 통해 멀티캐스트 서비스의 정보를 단말들에게 알려준다(S301).
상술한 바와 같이, 이동 단말은 이미 멀티캐스트 서비스의 시작을 알 수 있다. 만약 이동 단말이 멀티캐스트 서비스를 받고 싶을 경우, 본 실시예에서 제안하는 서비스 활성화 요청(Service Activation Request) 동작 프레임을 전송한다. 이 때 해당 멀티캐스트 서비스에 대한 Multicast MAC Address를 포함시켜 전송한다(S302).
이를 받은 베이스 스테이션은 IGMP를 대신 보내줄 능력이 있을 때 서비스 활성화 응답(Service Activation Response) 동작 프레임을 해당 이동단말에 보낸다. 그리고 베이스 스테이션은 멀티캐스트 그룹 테이블(Multicast Group Table)에 해당 이동단말에 대한 정보를 기록한다. 상기 멀티캐스트 그룹 테이블에 들어가는 Multicast Address와 Expiration Time은, 상기 S302 단계를 통해 전송되는 서비스 활성화 요청(Service Activation Request) 동작 프레임에 따라 설정하는 것이 바람직하다(S303).
베이스 스테이션은 해당 멀티캐스트 서비스에 대해 IGMP report를 멀티캐스트 라우터에 보내어서 해당 멀티캐스트 서비스에 가입(Join)한다. IGMP report를 받은 멀티캐스트 라우터는 Multicast Group membership 리스트에 해당 서비스를 네트워크(즉, 베이스 스테이션)에서 요구한다고 명시한다(S304).
멀티캐스트 서비스를 받고자 하는 다른 이동단말들도 서비스 활성화 요청(Service Activation Request) 동작 프레임를 보낼 수 있고, 베이스 스테이션이 이에 응답을 할 수 있다(S305 내지 S310).
그리고, Multicast Group Table을 상기 베이스 스테이션이 검사한다(S310'). 이때, 상기 베이스 스테이션은 상기 Multicast Group Table 상에 멀티캐스크를 서비스 받고자 하는 단말의 수를 파악하여, 멀티캐스트를 위한 베어러로 점대점 베어러를 사용할 지 점대다 베어러를 사용할 지 여부를 결정한다(310").
멀티캐스트 라우터는 상기 Multicast Group membership 리스트를 유지하기 위해, Query Interval 마다 모든 베이스 스테이션에게 IGMP Query를 보낸다(S311).
이에 대해 베이스 스테이션은 IGMP Query를 수신하게 되고, 상기 멀티캐스트 그룹 테이블(Multicast Group Table)을 검색한다. 상기 멀티캐스트 그룹 테이블 내에 해당 멀티캐스트 서비스에 대한 서비스 요구가 존재한다면 IGMP report를 보낸다. 만약 상기 멀티캐스트 그룹 테이블에 서비스 요구가 없다면 IGMP leave를 보내게 된다(S312).
베이스 스테이션은 상기 멀티캐스트 그룹 테이블(Multicast Group Table)을 유지하기 위하여 주기적으로 Keep Alive request를 보낸다(S313). 상기 Keep Alive request는 상술한 다양한 방법 중 하나에 의할 수 있다.
Keep Alive Request를 수신한 1번 단말(STA#1)은 멀티캐스트 서비스를 끝내기로 결정한다(S314).
상기 1번 단말(STA#1)은 본 실시예에 따른 Keep Alive response의 cause code를 end service로 설정하고 베이스 스테이션에게 전달한다(S315).
베이스 스테이션은 상기 1번 단말에 대한 정보를 멀티캐스트 그룹 테이블에서 지운다(S316).
3번 단말(STA#3)은 멀티캐스트 서비스를 계속 받기로 하고, 계속 받는다는 응답을 보내기 위해 keep alive response의 cause code를 sustain service로 설정하고 베이스 스테이션에게 전달한다(S318).
2번 단말(STA#2)은 멀티캐스트 서비스를 계속 받기로 결정한다. 그러나 3번 단말이 송신하는 응답 메시지를 수신하고 응답 메시지를 베이스 스테이션에 보내지 않는다(S319).
4번 단말(STA#4)은 비정상적으로 사라져서 keep alive request에 대해 응답을 하지 못한다(S317).
베이스 스테이션은 해당 이동단말에 대해 타임 아웃(timeout)이 발생하는 것을 감지하고 멀티캐스트 그룹 테이블(Multicast Group Table)의 해당 항목을 지운다(S320).
Query Interval 후에 멀티캐스트 라우터는 IGMP query를 다시 보내게 된다 (S321).
만약 멀티캐스트 서비스에 대해 수신하려는 이동단말이 하나도 없을 경우(S322), IGMP leave를 멀티캐스트 라우터에 보내면 해당 멀티캐스트 서비스는 끝난다(S323).
Query interval마다 상술한 바와 같이 수정된 Multicast Group Table을 상기 베이스 스테이션이 검사한다(S320').
이때, 상기 베이스 스테이션은 상기 Multicast Group Table 상에 멀티캐스크를 서비스 받고자 하는 단말의 수를 파악하여, 멀티캐스트를 위한 베어러로 점대점 베어러를 사용할 지 점대다 베어러를 사용할 지 여부를 결정한다(S320").
도 17은 특정한 이동 단말이 다른 베이스 스테이션의 영역으로 이동하는 경우에 멀티캐스드 서비스를 제공하는 방법을 나타내는 절차흐름도이다.
우선 멀티캐스트 라우터는, 연결된 모든 베이스 스테이션(AP1과 AP2)에게 IGMP Query를 통해 멀티캐스트 서비스의 정보를 알려준다(S401).
상술한 바와 같이, 이동 단말은 이미 멀티캐스트 서비스의 시작을 알 수 있다. 만약 이동 단말이 멀티캐스트 서비스를 받고 싶을 경우, 본 실시예에서 제안하는 서비스 활성화 요청(Service Activation Request) 동작 프레임을 전송한다. 이 때 해당 멀티캐스트 서비스에 대한 Multicast MAC Address를 포함시켜 전송한다(S402).
이를 받은 베이스 스테이션은 IGMP를 대신 보내줄 능력이 있을 때 서비스 활성화 응답(Service Activation Response) 동작 프레임을 해당 이동단말에 보낸다(S403).
베이스 스테이션1은 해당 멀티캐스트 서비스에 대해 IGMP report를 멀티캐스트 라우터에 보내어서 해당 멀티캐스트 서비스에 가입(Join)한다(S404).
또한, 베이스 스테이션2는 해당 멀티캐스트 서비스에 대해 IGMP report를 멀티캐스트 라우터에 보내어서 해당 멀티캐스트 서비스에 가입(Join)한다(S405).
이때도 역시, Multicast Group Table을 상기 베이스 스테이션이 검사한다(S405'). 이때, 상기 AP는 상기 Multicast Group Table 상에 멀티캐스크를 서비스 받고자 하는 단말의 수를 파악하여, 멀티캐스트를 위한 베어러로 점대점 베어러를 사용할 지 점대다 베어러를 사용할 지 여부를 결정한다(405").
S401와 같이 모든 베이스 스테이션에 IGMP Query가 전송되고(S406), AP1이 IGMP Report를 전송한다(S407).
AP2는 AP1이 보내는 IGMP report를 수신하고 자신은 IGMP report를 보내지 않을 수 있다(S408).
멀티캐스트 라우터는 멀티캐스트 데이터를 망의 모든 베이스 스테이션(AP)에 전송을 한다(S409).
모든 베이스 스테이션은 멀티캐스트 데이터를 수신하고 이를 망 내에 전송을 한다(S410).
이때까지, 1번 단말은 AP1과 통신을 하고, 2번 단말과 3번 단말은 AP2와 통신하였다. 그러나, 1번 단말이 AP2의 영역으로 이동하여 AP1과 통신을 수행할 수 있다(S411).
본 실시예에 따른 Fast BSS transition 정보요소는 해당 Multicast MAC Address에 대한 정보가 포함된다. 따라서, 상기 정보요소에 해당 Multicast MAC Address를 기록한 후에 Fast BSS transition을 수행한다. 이를 통해 AP2의 멀티캐스트 그룹 테이블(multicast group table)에 해당 멀티캐스트 서비스에 대한 정보가 저장된다(S412).
AP1에서는 더 이상 STA1이 존재하지 않으므로, 상기 Fast BSS transition 정보요소에 따라 멀티캐스트 그룹 테이블의 해당 항목(entry)에서 해당 단말에 대한 정보를 삭제한다(S413).
그리고 전술 한 바와 같이, Query interval마다 상술한 바와 같이 수정된 Multicast Group Table을 상기 AP가 검사한다(S413').
이때, 상기 AP는 상기 Multicast Group Table 상에 멀티캐스크를 서비스 받고자 하는 단말의 수를 파악하여, 멀티캐스트를 위한 베어러로 점대점 베어러를 사용할 지 점대다 베어러를 사용할 지 여부를 결정한다(S413").
멀티캐스트 라우터는 다시 멀티캐스트 데이터를 망의 모든 베이스 스테이션에 전송을 한다 (S414).
AP1은 해당 멀티캐스트 데이터에 대해 수신할 단말이 존재하지 않아 수신한 멀티캐스트 데이터를 망에 전송하지 않는다(S415). 이를 통해 무선 자원을 효율적으로 사용할 수 있다.
AP2는 망에 수신한 멀티캐스트 데이터를 다시 전송하여 STA#1을 포함한 단말들이 멀티캐스트 데이터를 수신할 수 있다(S416).
Query Interval 후에 멀티캐스트 라우터는 IGMP query를 다시 보내게 된다 (S417).
2는 이에 대해 IGMP report를 보낸다(S418).
도 18은 본 실시예에 따라 이동 단말이 멀티캐스트 데이터를 제공받는 방법을 나타내는 절차 흐름도의 또 다른 일례이다. 도 18의 경우에는 멀티캐스트 서비스가 제공되는 일정한 간격(interval)이 존재하는 경우이다. 상기 일정한 간격, 즉 Multicast Service Interval은 서비스 제공자에 의해 설정될 수 있다. 또한 상기 일정한 간격은 존재하거나 그렇지 않을 수 있다.
우선 멀티캐스트 라우터는, 연결된 모든 베이스 스테이션에게 IGMP Query를 통해 멀티캐스트 서비스의 정보를 단말들에게 알려준다(S501).
상술한 바와 같이, 이동 단말은 이미 멀티캐스트 서비스의 시작을 알 수 있다. 만약 이동 단말이 멀티캐스트 서비스를 받고 싶을 경우, 본 실시예에서 제안하는 서비스 활성화 요청(Service Activation Request) 동작 프레임을 전송한다. 이 때 해당 멀티캐스트 서비스에 대한 Multicast MAC Address를 포함시켜 전송한다(S502).
이를 받은 베이스 스테이션은 IGMP를 대신 보내줄 능력이 있을 때 서비스 활성화 응답(Service Activation Response) 동작 프레임을 해당 이동단말에 보낸다(S503).
베이스 스테이션은 해당 멀티캐스트 서비스에 대해 IGMP report를 멀티캐스트 라우터에 보내어서 해당 멀티캐스트 서비스에 가입(Join)한다(S504).
멀티캐스트 서비스를 받고자 하는 다른 이동단말들도 서비스 활성화 요청(Service Activation Request) 동작 프레임를 보낼 수 있고, 베이스 스테이션이 이에 응답을 할 수 있다(S505 내지 S510).
멀티캐스트 라우터는 멀티캐스트 데이터를 망의 모든 베이스 스테이션에 전송을 한다(S511).
베이스 스테이션은 멀티캐스트 데이터를 수신하고 이를 망 내에 전송을 한다(S512).
더 이상 보낼 멀티캐스트 데이터가 없으면 본 실시예에 따른 베이스 스테이션은 Keep alive request를 망에 전송한다(S513). 상술한 바와 같이 Keep alive request는 다양한 방법에 의해 전송될 수 있으므로, 상기 S513 단계는 다양한 방법에 의해 수행될 수 있다. 상기 멀티캐스트 데이터가 전송된 직후에 상기 Keep alive request가 전송되는 경우에, 단말은 PS mode로 진입할 필요가 없다. 단말은 이미 멀티캐스트 데이터가 전송된 직후에 상기 Keep alive request가 전송되는 사실을 알고 있으므로 PS mode로 진입하지 않고 Keep alive request에 대한 응답을 전송한 이후 PS mode로 진입할 수 있다. 이를 통해 단말이 Keep alive request에 대한 응답에 실패하는 경우가 예방되며, 단말이 계속하여 좀 더 오랜 시간 PS mode에 있을 수 있다.
Keep Alive Request를 수신한 이동단말은 멀티캐스트 서비스를 계속 받는 것으로 결정하고 이에 대해 Keep Alive response를 end service로 설정하고 베이스 스테이션에게 전달한다(S514). 도시된 4개의 단말 중 적어도 어느 하나의 단말이 Keep Alive response를 전송할 수 있다.
모든 단말은 multicast service interval 내에서 PS mode로 진입할 수 있다(S515).
Multicast Service Interval이 끝날 때에 모든 단말은 멀티캐스트 데이터를 수신하기 위해 깨어난다(S516).
멀티캐스트 라우터는 멀티캐스트 데이터를 망의 모든 베이스 스테이션에 전송을 한다(S517). 베이스 스테이션은 멀티캐스트 데이터를 수신하고 이를 망 내에 전송을 한다(S518). Query Interval이 지나게 되면 멀티캐스트 라우터는 IGMP query를 망에 전송한다(S519). 베이스 스테이션은 IGMP query를 수신하고, 해당 멀티캐스트 서비스에 대해 IGMP report를 멀티캐스트 라우터에게 보낸다(S520).
본 발명의 권리는 위에서 설명된 실시예에 한정되지 않고 청구범위에 기재된 바에 의해 정의되며, 본 발명의 분야에서 통상의 지식을 가진 자가 청구범위에 기재된 권리범위 내에서 다양한 변형과 개작을 할 수 있다는 것은 자명하다.
예를 들어, 본 발명의 제 1 실시예에서, 최초 사용자 우선순위를 설정함에 있어, 멀티캐스트 서비스에 가입된 단말의 수를 고려하여 사용자 우선순위를 결정하는 것도 가능하다.
또한, 본 발명의 제 2 실시예에 있어, 제 2 사용자 우선순위를 미리 산출하지 않고 AC간 충돌이 발생한 경우, 데이터 프레임의 사용자 우선순위를 멀티캐스트 서비스에 가입된 단말의 수를 고려하여 보정 한 후, 보정된 사용자 우선순위를 기초로 전송될 데이터 프레임을 선택하는 것도 가능하다.