이하에서 첨부된 도면들을 참조하여 본 발명에 따른 무선통신 네트워크에서의 통신장치 및 방법의 바람직한 실시예에 대해 상세하게 설명한다.
도 1a는 본 발명에 따른 무선통신 네트워크에서의 통신장치에 대한 바람직한 일 실시예의 구성을 도시한 블록도이다.
도 1a를 참조하면, 본 발명에 따른 무선통신 네트워크에서의 통신장치는, 프레임 송수신부(110), 전송속도 측정부(120), 중계대상단말 결정부(130) 및 중계제어부(140)를 구비한다. 도 1a에 도시된 무선통신 네트워크에서의 통신장치는 무선통신 네트워크의 수신단말로 데이터를 전송하는 복수의 송신단말 중 하나이며, 다른 송신단말의 데이터를 수신단말로 중계전송하는 중계단말로 동작할 수 있다.
도 1b는 본 발명에 따른 무선통신 네트워크에서의 통신장치에 대한 바람직한 다른 실시예의 구성을 도시한 블록도이다.
도 1b를 참조하면, 본 발명에 따른 무선통신 네트워크에서의 통신장치는, 프레임 송수신부(110), 전송속도 측정부(120), 협력통신 결정부(150), 경쟁 윈도우 조정부(160) 및 제어부(170)를 구비한다. 도 1b에 도시된 무선통신 네트워크에서의 통신장치는 수신단말로 데이터를 직접 또는 중계단말이 제공하는 협력통신에 의해 전송하는 송신단말이다. 또한 중계장치에 의해 협력통신을 제공받을 중계대상단말로 선택되면 도 1b에 도시된 본 발명에 따른 무선통신 네트워크에서의 통신장치는 중계대상단말로서 동작할 수 있다. 이에 관하여는 뒤에 상세하게 설명한다.
이때 본 발명에 따른 무선통신 네트워크에서의 통신장치가 인프라스트럭쳐(infrastructure) 모드로 구성된 무선통신 네트워크에서 사용되는 경우에는 액세스 포인트(access point)가 중계단말이 제공하는 협력통신을 필요로 하는 송신단말 또는 수신단말의 기능을 수행한다.
프레임 송수신부(110)는 무선통신 네트워크를 구성하는 다른 단말장치로 프레임을 전송하거나 다른 단말장치로부터 프레임을 수신한다. 이때 중계제어부(150) 및 제어부(170)는 프레임 송수신부(110)가 수신하는 프레임을 기초로 프레임 송수신부(110)의 프레임 전송여부를 결정하거나 프레임 송수신부(110)가 전송하는 프레임을 제어한다. 또한 전송속도 측정부(120)는 다른 단말장치와의 전송채널에서 사용되는 전송속도 및 다른 단말장치들 사이의 전송채널에서 사용되는 전송속도를 측정한다. 구체적으로는, 도 1a의 통신장치에 구비된 전송속도 측정부(120)는 전송하고자 하는 프레임의 목적지인 수신단말로 프레임을 전송하는 송신단말과의 전송채널에서 사용되는 전송속도, 수신단말과의 전송채널에서 사용되는 전송속도 및 송신단말과 수신단말 사이의 전송채널에서 사용되는 전송속도를 측정하며, 도 1b의 통신장치에 구비된 전송속도 측정부(120)는 전송하고자 하는 프레임의 목적지인 수신단말로 프레임이 중계전송되도록 협력통신을 제공하는 중계단말과의 전송채널에서 사용되는 전송속도, 수신단말과의 전송채널에서 사용되는 전송속도 및 중계단말과 수신단말 사이의 전송채널에서 사용되는 전송속도를 측정한다.
도 2는 복수의 송신단말 및 송신단말들로부터 데이터를 수신하는 수신단말로 구성된 무선통신 네트워크를 도시한 도면이다.
도 2를 참조하면, 단말 A는 다른 송신단말들로부터 데이터를 수신하는 수신단말이고, 단말 B 내지 단말 F는 송신단말들이다. 송신단말들 중에서 단말 B 및 단말 C는 단말 A로의 전송채널의 품질이 양호하여 다른 인접단말이 제공하는 협력통신을 사용하는 경우보다 단말 A로 데이터를 직접 전송할 때 최단의 전송지연으로 데이터를 전송할 수 있는 단말에 해당한다. 따라서 단말 B 및 단말 C는 다른 송신단말에 협력통신을 제공하는 중계단말로 동작할 수 있다. 또한 단말 D 내지 단말 F는 단말 A로의 전송채널이 품질이 낮아서 단말 B 또는 단말 C를 중계단말로 하여 협력통신을 사용하는 경우에 작은 전송지연으로 데이터를 전송할 수 있는 단말에 해당한다. 따라서 단말 D 내지 단말 F는 중계단말인 단말 B 및 단말 C에 의해 중계대상단말로 선택될 수 있다.
단말 B에서 단말 A로의 전송채널을 채널 B-A로 표시하며, 채널 B-A에서 사용가능한 최대 전송속도를 RBA라고 하면, 단말 B 내지 단말 F와 단말 A 간의 전송채널에서 사용 가능한 최대 전송속도 간의 관계는 다음과 같다.
무선통신 네트워크를 구성하는 송신단말 및 수신단말은 데이터 프레임을 전송하기 이전에 제어 프레임으로서 RTS 프레임과 CTS 프레임을 교환하며, 송신단말의 인접단말들은 교환되는 프레임들을 오버히어링한다. 전송속도 측정부(120)는 전송채널에서 사용되는 최대 전송속도를 송신단말이 전송하는 RTS 프레임 및 수신단말이 전송하는 CTS 프레임을 오버히어링하여 측정할 수 있으며, 송신단말이 직접통신을 통해 수신단말로 전송하는 데이터 프레임의 PLCP(physical layer convergence protocol) 헤더를 해석하여 측정할 수도 있다. 보다 구체적으로는, 전송속도 측정부(120)는 송신단말이 전송하는 RTS 프레임 및 수신단말이 전송하는 CTS 프레임을 수신하거나 오버히어링할 때 SNR(signal-to-noise ratio)을 측정하며, 전송채널에서의 최대 전송속도는 측정된 SNR과 각 전송속도별로 사전에 정의되어 있는 SNR의 임계값을 비교하여 결정한다. 즉, 송신단말이 특정 전송속도로 데이터 프레임을 전송할 때 해당 전송속도에 대해 사전에 정의된 SNR 임계값보다 수신단말이 제어 프레임을 수신할 때 측정한 SNR값이 큰 경우에 수신단말이 데이터 프레임을 성공적으로 수신할 수 있다.
본 발명에 따른 무선통신 네트워크에서의 통신장치가 사용되는 무선통신 네트워크에서는 모든 단말들이 송신 및 수신을 위해 동일한 주파수 대역을 사용하기 때문에 송신단말 및 수신단말간의 전송채널이 대칭(symmetry)채널인 것으로 볼 수 있다. 따라서 인접단말의 제어 프레임을 수신하거나 오버히어링하여 측정한 최대 전송속도를 해당 단말로의 데이터 송신과정에서도 사용할 수 있다. 예를 들면, 채널 B-A에서 사용 가능한 최대 전송속도는 채널 A-B에서 사용 가능한 최대 전송속도와 동일하다.
도 1a에 도시된 무선통신 네트워크에서의 통신장치, 즉 중계단말에 구비된 중계대상단말 결정부(130)는 전송속도 측정부(120)에 의해 측정된 전송속도를 이용하여 송신단말로부터 수신단말로 데이터가 직접 전송될 경우의 전송지연인 제1전송지연과 협력통신에 의한 중계전송을 수행하여 송신단말로부터 수신단말로 데이터가 전송될 경우의 전송지연인 제2전송지연을 산출하고, 제2전송지연이 제1전송지연보다 작으면 해당 송신단말을 협력통신을 제공할 중계대상단말로 결정한다. 이하에서는 도 1b에 도시된 무선통신 네트워크에서의 통신장치를 중계대상단말로 정의한다.
전송속도 측정부(120)에 의해 각 전송채널에서 사용할 수 있는 최대 전송속도가 측정되면 각 전송채널을 통해 데이터를 전송할 때의 전송지연에 관한 정보를 얻을 수 있다. 송신단말로부터 수신단말로 데이터가 전송될 때 직접통신에 의한 경우의 전송지연보다 협력통신을 사용하는 경우의 전송지연이 더 작은 경우에만 협력통신을 제공할 이익이 있는 것으로 인정된다. 따라서 중계대상단말 결정부(130)는 직접통신에 의한 경우의 전송지연을 제1전송지연, 협력통신을 사용하는 경우의 전송지연을 제2전송지연으로 하고, 제2전송지연이 제1전송지연보다 작게 되는 송신단말만을 식별하여 중계대상단말로 결정한다.
또한 중계단말 역시 수신단말로 데이터를 전송하는 복수의 송신단말 중 하나로서 자신의 데이터 프레임을 수신단말로 전송하면서 이후에 협력통신을 제공할 중계대상단말을 결정하는 경우가 있다. 이러한 경우에 중계제어부(140)는 중계단말이 수신단말로 전송하는 제1데이터 프레임의 헤더에 중계대상단말의 식별번호 및 중계단말의 프레임 재전송 횟수를 포함시킨다. 데이터 프레임을 수신한 수신단말은 데이터 프레임이 성공적으로 수신되었음을 나타내는 확인 프레임, 예를 들면 ACK(acknowledge character) 프레임을 중계단말로 전송한다. ACK 프레임에는 중계대상단말, 중계단말 및 수신단말의 식별번호와 중계단말의 프레임 재전송 횟수에 대한 정보가 포함된다. 따라서 중계대상단말은 데이터 프레임을 오버히어링하여 자신이 중계대상단말로 결정되었음을 인식할 수 있게 된다.
중계대상단말의 전송속도 측정부(120)는 중계단말과의 전송채널에서 사용되는 전송속도, 수신단말과의 전송채널에서 사용되는 전송속도 및 중계단말과 수신단말 사이의 전송채널에서 사용되는 전송속도를 측정한다. 이때 위에서 설명한 바와 같이 중계단말과 수신단말 사이에서 중계대상단말의 식별번호가 포함된 프레임이 전송되어 이를 오버히어링하면, 협력통신 결정부(150)는 측정된 전송속도를 기초로 수신단말로 데이터가 직접 전송될 경우의 제1전송지연과 중계단말이 제공하는 협력통신에 의한 중계전송을 수행하여 수신단말로 데이터가 전송될 경우의 제2전송지연을 산출하고, 제2전송지연이 제1전송지연보다 작으면 중계단말이 제공하는 협력통신을 사용할 것으로 결정한다.
또는 중계단말이 다른 송신단말의 협력통신 요청에 의해 이미 데이터 프레임 을 중계전송하는 상태에서 중계대상단말을 결정할 수도 있다. 다른 송신단말(이하 기송신단말)은 기송신단말로부터 수신단말로의 전송채널, 기송신단말로부터 중계단말로의 전송채널 및 중계단말로부터 수신단말로의 전송채널에서 사용 가능한 최대 전송속도에 관한 정보를 수집한다. 다음으로 중계단말의 협력통신에 의한 경우가 직접통신에 의해 수신단말로 데이터를 전송하는 경우보다 작은 전송지연으로 수신단말로 데이터 프레임을 전송할 수 있다고 판단되면 중계단말에 협력통신의 가능여부를 나타내는 플래그값이 참으로 설정된 RTS 프레임을 전송한다. 플래그값이 참으로 설정된 RTS 프레임에는 기송신단말, 중계단말 및 수신단말의 식별번호, 기송신단말로부터 중계단말로의 전송채널에서 사용 가능한 최대 전송속도 및 중계단말로부터 수신단말로의 전송채널에서 사용 가능한 최대 전송속도에 대한 정보가 포함된다. 또한 전송채널의 상태를 파악하기 위한 가상 캐리어 센싱에 사용되는 RTS 프레임의 듀레이션 필드는 기송신단말로부터 중계단말로의 전송채널에서 사용 가능한 최대 전송속도와 중계단말로부터 수신단말로의 전송채널에서 사용 가능한 최대 전송속도 및 전송하고자 하는 데이터 프레임의 크기에 의해 결정된다.
프레임 송수신부(110)가 기송신단말로부터 플래그값이 참으로 설정된 RTS 프레임을 수신하면 PCTS(partner clear-to-send) 프레임을 전송하고, 이어서 수신단말이 협력통신이 가능함을 알리는 CTS 프레임을 전송함으로써 협력통신이 개시된다. 따라서 기송신단말은 데이터 프레임을 중계단말로 전송하고, 중계단말은 기송신단말의 데이터 프레임을 수신단말로 중계전송한다.
중계단말이 기송신단말의 데이터 프레임을 중계전송하는 과정에서 자신이 수 신단말로 전송할 데이터 프레임을 가지고 있지 않은 경우에 중계대상단말 결정부(130)는 중계대상단말을 결정할 수 있다. 이렇게 기송신단말의 데이터 프레임을 중계전송하면서 새로운 중계대상단말을 결정한 경우에는 중계전송하는 데이터 프레임의 헤더에 중계대상단말의 식별번호 및 기송신단말의 프레임 재전송 횟수를 포함시킨다. 그에 따라 수신단말이 전송하는 ACK 프레임에는 중계대상단말, 중계단말 및 수신단말의 식별번호 및 기송신단말의 프레임 재전송 횟수에 관한 정보가 포함된다.
위에서 언급한 바와 같이 송신단말이 데이터를 전송하기 위해서는 수신단말과 RTS 및 CTS 제어 프레임을 교환하는 과정이 선행되어야 한다. 그런데 직접통신이 아닌 협력통신에 의한 데이터 전송의 경우에는 송신단말, 중계단말 및 수신단말이 관여한다. 따라서 제어 프레임의 교환 과정도 직접통신의 경우와 달라지게 된다. 먼저 데이터를 전송하고자 하는 송신단말은 중계단말 및 수신단말로 RTS 프레임을 전송한다. RTS 프레임을 수신한 중계단말은 수신단말로 협력통신의 개시를 알리는 중계 프레임인 PCTS 프레임을 전송하고, 최종적으로 수신단말은 협력통신이 가능함을 알리는 응답 프레임인 CTS 프레임을 전송하여 송신단말이 데이터를 전송할 수 있음을 알린다. 이렇게 전송되는 제어 프레임은 전송채널의 최대 전송속도가 아닌 기본 전송속도로 전송되며, 한 단말이 제어 프레임을 전송하면 해당 단말을 제외한 두 단말 모두가 전송된 제어 프레임을 수신한다.
위에서 중계대상단말은 협력통신을 사용할 것으로 결정한 후에 협력통신의 사용을 알리는 요청 프레임, 예를 들면 RTS 프레임을 전송하는데, 중계대상단말의 백오프 타이머 값이 IEEE 802.11 표준에서 정의한 최대 경쟁 윈도우 값보다 작으면 현재의 백오프 타이머 값에 관계없이 RTS 프레임을 전송하며, 그렇지 않은 경우에는 수신단말로부터 전송된 ACK 프레임을 무시하고 IEEE 802.11 표준에 따라 RTS 프레임을 전송한다. 전송되는 RTS 프레임에는 중계대상단말, 중계단말 및 수신단말의 식별번호, 중계대상단말로부터 중계단말로의 전송채널에서 사용 가능한 최대 전송속도 및 중계단말로부터 수신단말로의 전송채널에서 사용 가능한 최대 전송속도에 관한 정보가 포함된다. 또한 전송채널의 상태를 파악하기 위한 가상 캐리어 센싱에 사용되는 RTS 프레임의 듀레이션 필드는 중계대상단말이 측정한 전송속도에 관한 정보에 의해 결정된다.
다음으로 중계단말의 프레임 송수신부(110)는 중계대상단말로부터 RTS 프레임을 수신하면 협력통신의 개시를 알리는 중계 프레임, 예를 들면 PCTS 프레임을 수신단말로 전송하는데, 전송되는 PCTS 프레임에는 수신단말의 식별번호 및 RTS 프레임을 수신할 때 측정한 전송속도에 관한 정보가 포함된다. 또한 가상 캐리어 센싱을 위한 PCTS 프레임의 듀레이션 필드는 RTS 프레임의 듀레이션 필드값, 중계단말에 의해 측정된 전송속도 및 RTS 프레임에 포함된 전송속도에 관한 정보에 의해 결정된다. 이때 프레임 송수신부(110)가 RTS 프레임이 수신되면 무조건 PCTS 프레임을 전송할 수도 있으나 중계제어부(140)는 중계단말로 RTS 프레임이 수신될 때 측정된 중계대상단말로부터 중계단말로의 전송채널에서 사용 가능한 최대 전송속도가 RTS 프레임에 포함된 중계대상단말로부터 중계단말로의 전송채널에서 사용 가능한 최대 전송속도보다 크거나 같은 경우에만 프레임 송수신부(110)가 PCTS 프레임 을 전송하도록 할 수도 있다. 전송채널에서 사용되는 최대 전송속도는 실시간으로 변화하는 것이므로 중계단말이 중계대상단말로부터 RTS 프레임을 수신할 때의 전송속도가 그 이전에 중계대상단말에 의해 측정되어 RTS 프레임에 포함된 전송속도보다 큰 경우에만 협력통신의 이익이 있는 것으로 볼 수 있기 때문이다.
중계대상단말로부터 전송된 RTS 프레임 및 중계단말로부터 전송된 PCTS 프레임을 수신한 수신단말은 중계대상단말로부터 수신단말로의 전송채널 및 중계단말로부터 수신단말로의 전송채널에서 사용 가능한 최대 전송속도를 측정한다. 수신단말은 측정 결과에 따라 협력통신이 가능함을 알리는 응답 프레임, 예를 들면 CTS 프레임을 전송한다. 이때 CTS 프레임에는 협력통신의 사용가능 여부를 나타내는 플래그가 포함될 수 있다. CTS 프레임에 포함된 플래그는 참(true) 또는 거짓(false)의 값을 가진다. 플래그값이 참으로 설정되기 위해서는 1) 수신단말이 중계단말로부터 PCTS 프레임을 사전에 설정된 시간 내에 수신하고, 2) PCTS 프레임을 수신할 때 측정한 전송채널의 전송속도가 RTS 프레임에 포함된 중계단말로부터 수신단말로의 전송채널에서 사용 가능한 최대 전송속도보다 크거나 같으며, 3) PCTS 프레임에 포함된 전송속도와 수신단말이 측정한 전송속도에 따라 협력통신이 수행될 경우의 전송지연, 즉 제2전송지연이 직접통신의 전송지연, 즉 제1전송지연보다 작은 것으로 나타나야 한다. 위 세 가지 조건을 만족하지 않는 경우에 수신단말은 CTS 프레임의 플래그값을 거짓으로 설정하여 전송한다.
먼저 플래그값이 참으로 설정된 CTS 프레임에는 PCTS 프레임에 포함된 중계대상단말로부터 중계단말로의 전송채널에서 사용 가능한 최대 전송속도 및 수신단 말이 PCTS 프레임을 수신할 때 측정한 중계단말로부터 수신단말로의 전송채널에서 사용 가능한 최대 전송속도가 포함된다. 또한 가상 캐리어 센싱을 위한 CTS 프레임의 듀레이션 필드는 RTS 프레임의 듀레이션 필드값, PCTS 프레임에 포함된 전송속도에 관한 정보 및 수신단말이 측정한 전송속도에 의해 결정된다.
프레임 송수신부(110)는 이와같이 수신단말로부터 협력통신 가능여부를 나타내는 플래그값이 참으로 설정된 CTS 프레임이 수신되면 중계대상단말이 수신단말로 전송하고자 하는 제2데이터 프레임을 중계대상단말로부터 수신하여 수신단말로 중계전송한다. 즉, 중계대상단말은 CTS 프레임에 포함된 중계대상단말로부터 중계단말로의 전송채널에서 사용 가능한 최대 전송속도로 중계단말에 데이터 프레임을 전송하고, 중계단말은 CTS 프레임에 명시된 중계단말로부터 수신단말로의 전송채널에서 사용 가능한 최대 전송속도로 수신단말에 데이터 프레임을 전송한다. CTS 프레임에 포함된 전송채널의 전송속도는 가장 최근에 측정된 전송속도이므로 본 발명에 따른 무선통신 네트워크의 중계장치에 의하면 실시간으로 변화하는 전송채널의 전송속도를 반영하여 협력통신을 수행할 수 있다.
한편, 플래그값이 거짓으로 설정된 CTS 프레임에는 수신단말이 RTS 프레임을 수신할 때 측정한 중계대상단말로부터 수신단말로의 전송채널에서 사용 가능한 최대 전송속도가 포함된다. 또한 가상 캐리어 센싱을 위한 CTS 프레임의 듀레이션 필드는 RTS 프레임의 듀레이션 필드값 및 수신단말이 RTS 프레임을 수신하는 과정에서 측정한 전송속도에 의해 결정된다.
또한 중계대상단말은 플래그값이 거짓으로 설정된 CTS 프레임을 수신하면 협 력통신을 사용할 수 없다는 것을 의미하므로 수신단말과 직접통신을 수행하여야 한다. 즉, 중계대상단말은 RTS 프레임을 송신했을 때 예측한 전송시간보다 CTS 프레임에 포함된 최대 전송속도로 수신단말에 데이터 프레임을 전송하고 수신단말이 전송한 ACK 프레임을 수신하기 위해 필요한 시간이 더 크면 CTS 프레임에 포함된 중계대상단말로부터 수신단말로의 전송채널에서 사용 가능한 최대 전송속도로 수신단말에 데이터 프레임을 전송하고, 수신단말이 ACK 프레임을 전송하기 위해 필요한 시간으로 듀레이션 필드값이 설정된 제어 프레임을 전송한다. 그렇지 않은 경우에는 추가적인 제어 프레임의 전송과정 없이 CTS 프레임에 포함된 중계대상단말로부터 수신단말로의 전송채널에서 사용 가능한 최대 전송속도로 수신단말에 데이터 프레임을 전송한다.
본 발명에 따른 무선통신 네트워크에서의 통신장치는 중계대상단말의 데이터 프레임을 수신단말로 중계전송하는 과정에서 또다른 송신단말을 제2의 중계대상단말로 결정할 수 있다. 이러한 경우에 중계제어부(140)는 중계전송하는 중계대상단말의 데이터 프레임의 헤더에 제2의 중계대상단말의 식별번호 및 프레임 재전송 횟수를 포함시킨다. 데이터 프레임을 수신한 수신단말은 제2의 중계대상단말, 중계단말 및 수신단말의 식별번호 및 중계단말의 프레임 재전송 횟수에 대한 정보가 포함된 ACK 프레임을 중계대상단말로 전송하게 된다. 그 이후의 과정은 위에서 설명한 중계대상단말, 중계단말 및 수신단말 간의 제어 프레임 전송 및 데이터 프레임 전송과정과 동일하게 진행된다. 다만, 중계단말이 기송신단말의 데이터 프레임을 중계전송하는 도중에 중계대상단말을 결정하였던 경우에는 위 프레임 재전송 횟수는 기송신단말의 프레임 재전송 횟수를 따른다.
이와 같이 중계대상단말은 플래그값이 참으로 설정된 CTS 프레임을 수신하여 수행되는 중계단말이 제공하는 협력통신 또는 플래그값이 거짓으로 설정된 CTS 프레임을 수신하여 수행되는 직접통신에 의해 수신단말로 데이터 프레임을 전송한다. 이후에 중계대상단말의 경쟁 윈도우 조정부(160)는 수신단말로부터 데이터 프레임을 성공적으로 수신하였음을 나타내는 ACK 프레임이 수신되는지 여부에 관계없이 중계단말의 프레임 재전송 횟수와 동일하게 되도록 자신의 프레임 재전송 횟수를 증가시키고, 백오프 타이머를 결정하기 위한 경쟁 윈도우 역시 증가시킨다. 이때 경쟁 윈도우의 값은 두 배가 되도록 증가시키는 것이 바람직하다. 증가된 경쟁 윈도우 값이 IEEE 802.11 표준에서 정의된 최대 경쟁 윈도우의 값보다 큰 경우에는 경쟁 윈도우 값이 최대 경쟁 윈도우 값과 동일하게 되도록 조정한다. 조정된 경쟁 윈도우 값을 이용하여 새로운 백오프 타이머 값이 결정되고, 이는 현재 설정된 백오프 타이머 값에 합산된다.
중계제어부(140)는 중계대상단말로 결정된 송신단말이 복수이면 중계대상단말들의 식별번호를 순환순서(round-robin) 방식으로 수신단말로 전송되는 데이터 프레임의 헤더에 포함시킬 수 있다. 이는 각 중계대상단말에 협력통신을 사용할 수 있는 기회를 공평하게 부여하기 위함이다. 각 중계대상단말의 식별번호가 최소 한번씩 중계단말로부터 수신단말로 전송되는 데이터 프레임의 헤더에 포함된 후 중계대상단말로부터 협력통신을 사용할 것임을 알리는 RTS 프레임이 수신되지 않으면 해당 중계대상단말은 협력통신을 필요로 하지 않는 단말로 분류된다.
이하에서는 도 2에 나타난 단말 A 내지 단말 F를 이용하여 본 발명에 따른 무선통신 네트워크에서의 통신장치가 적용되는 구체적인 실시예에 대하여 도면을 참조하여 상세하게 설명한다.
도 3은 중계단말(단말 B)이 중계대상단말(단말 D)보다 먼저 수신단말(단말 A)로 데이터 프레임을 전송한 경우에 본 발명에 따른 무선통신 네트워크에서의 통신장치가 적용되는 일 실시예를 도시한 도면이다.
도 3을 참조하면, 단말 B는 단말 A로 데이터 프레임(313)을 전송하기 위해 RTS 프레임(311)을 전송하고 단말 A는 SIFS(short interframe space)가 지난 후에 CTS 프레임(312)으로 응답한다. SIFS는 RTS, CTS 및 ACK 프레임과 같은 최우선권을 가진 제어 프레임의 전송에 사용되는 프레임간 간격으로, 가장 짧은 간격을 가지므로 다른 프레임들보다 더 빨리 전송권을 획득할 수 있도록 한다. CTS 프레임(312)은 단말 A가 RTS 프레임(311)를 수신하는 과정에서 측정한 RBA를 포함한다. 단말 B는 데이터 프레임(313)을 송신하기 전에 단말 B가 협력통신을 제공할 수 있는 송신단말들이 존재하는 경우 이 중 하나인 단말 D를 중계대상단말로 선택하고 데이터 프레임(313)의 헤더(header)에 단말 D의 식별번호(ID)와 단말 B의 프레임 재전송 횟수를 포함시킨다. 단말 B는 CTS 프레임(312)을 수신하고 SIFS가 지난 후에 데이터 프레임(313)을 송신한다.
데이터 프레임(313)을 성공적으로 수신한 단말 A는 성공적인 데이터 프레임의 수신을 단말 B에게 알리기 위해 SIFS가 지난 후에 ACK 프레임(314)을 전송한다. 단말 A가 수신한 데이터 프레임(313)에 중계대상단말인 단말 D의 식별번호(ID)가 포함되어 있는 경우, ACK 프레임(314)은 단말 D, 단말 B 및 단말 A의 식별자와 단말 B의 프레임 재전송 횟수을 포함하여 단말 D가 단말 B와의 협력 통신을 통해 단말 A에게 데이터를 전송할 수 있음을 알린다. 높은 전송속도를 사용할수록 데이터 프레임의 송신 반경이 작아지기 때문에 단말 D가 단말 B로부터 단말 A로 전송되는 데이터 프레임(313)을 성공적으로 오버히어링하지 못할 수도 있으며, 이 문제를 극복하기 위해 기본 전송속도로 송신되는 ACK 프레임을 이용하여 단말 D가 단말 B와의 협력 통신을 통해 단말 A에게 데이터를 전송할 수 있음을 다시 알린다.
단말 B에 의해 중계대상단말로 결정된 단말 D는 단말 B가 전송하는 RTS 프레임(311)과 데이터 프레임(313) 및 단말 A가 전송하는 CTS 프레임(312)을 오버히어링하면서 RDB, RBA 및 RDA를 측정한다. 따라서 ACK 프레임(314)를 오버히어링할 때 RDB와 RBA를 이용하여 협력통신을 사용할 때의 전송 지연을 예측할 수 있으며, RDA를 이용하여 직접통신에 의할 때의 전송 지연을 예측할 수 있다. 협력통신의 전송지연이 직접통신의 전송 지연에 비해 작고 단말 D의 백오프 타이머값이 IEEE 802.11 표준에서 정의한 최대 경쟁 윈도우(Contention Window) 값보다 작을 경우에는 단말 D는 현재 백오프 타이머의 값에 상관없이 ACK 프레임(314)를 오버히어링하고 SIFS가 지난 후에 협력 통신을 위한 RTS 프레임(321)을 전송한다.
단말 B가 수집하는 전송속도에 관한 정보는 전송채널 품질의 변화를 실시간으로 반영하지 못하기 때문에 단말 B의 중계 전송을 통한 단말 D의 전송이 직접 통 신에 비해 전송 지연 상의 손해를 야기할 수 있다. 하지만 단말 D가 RTS 프레임(321)을 전송하기 직전에 측정된 전송 속도 RDB, RBA, RDA에 따라 협력통신의 사용 여부를 결정하며, 협력통신으로 전송지연 상의 이득을 얻을 수 없을 경우에는 어떠한 오버헤드(overhead)를 발생시키지 않고 협력통신의 사용을 포기하기 때문에 본 발명에 따른 무선통신 네트워크에서의 통신장치는 동적으로 변화하는 전송채널의 상황에 효과적으로 대처할 수 있다.
협력통신을 위해 단말 D가 전송하는 RTS 프레임(321)에는 단말 D, 단말 B 및 단말 A의 식별자(ID)와 단말 D가 수집한 RDB, RBA, RDA가 포함되며, 가상 캐리어 센싱을 위한 RTS 프레임(321)의 듀레이션 필드값은 다음의 수학식 1과 같이 표현된다.
여기서, DURRTS는 단말 D가 전송하는 RTS 프레임(321)의 듀레이션 필드값, TPCTS, TCTS 및 TACK는 각각 PCTS 프레임, CTS 프레임, ACK 프레임을 전송하기 위해 필요한 시간, L은 단말 D가 전송하고자 하는 데이터 프레임의 크기, RDB는 단말 D로부터 단말 B로의 전송채널에서 사용 가능한 최대속도, 그리고 RBA는 단말 B로부터 단말 A로의 전송채널에서 사용 가능한 최대속도이다.
단말 B는 RTS 프레임(321)을 수신하는 과정에서 RDB를 측정하며, 측정된 RDB 가 RTS 프레임(321)에 포함된 RDB보다 크거나 같을 경우에만 PCTS 프레임(322)을 전송한다. PCTS 프레임(322)은 단말 A의 식별번호(ID)와 단말 B가 측정한 RDB를 포함한다. 가상 캐리어 센싱을 위한 PCTS 프레임(322)의 듀레이션 필드값은 다음의 수학식 2에 의해 표현된다.
여기서, DURPCTS는 PCTS 프레임의 듀레이션 필드값, TCTS 및 TACK는 각각 CTS 프레임과 ACK 프레임을 송신하기 위해 필요한 시간, L은 단말 D가 전송하고자 하는 데이터 프레임의 크기, RRDB는 단말 B가 측정한 RDB, 그리고 RTBA는 RTS 프레임(321)에 포함된 RBA이다. RTDB를 RTS 프레임(321)에 포함된 RTDB라 하면, L은 수학식 1로 표현된 DURRTS, RTDB 및 RTBA를 이용하여 계산될 수 있다.
단말 A는 RTS 프레임(321)을 수신하는 과정에서 RDA를 측정하며, PCTS 프레임(322)을 수신하는 과정에서 RBA를 측정한다. 단말 A는 1) RTS 프레임(321)을 수신한 후 2개의 SIFS에 해당하는 시간 내에 PCTS 프레임(322)을 수신하고, 2) 측정한 RBA가 RTS 프레임(321)에 포함된 RBA보다 크거나 같으며, 3) 단말 A가 측정한 RDA 및 RBA와 PCTS 프레임(322)에 포함된 RDB가 다음 수학식 3에 나타난 조건을 만족하면 협 력통신의 가능여부를 나타내는 플래그값을 참으로 설정한 CTS 프레임(323)을 전송하며, 그렇지 않은 경우에는 플래그값을 거짓으로 설정한 CTS 프레임(323)을 전송한다.
즉, 단말 A는 협력통신의 전송지연과 직접통신의 전송지연을 비교하여 협력통신의 사용 여부를 결정하고, CTS 프레임(323)을 통해 이를 단말 D와 단말 B에게 알린다.
협력통신의 사용가능 여부를 나타내는 플래그값이 참으로 설정된 CTS 프레임(323)은 PCTS 프레임(322)에 명시된 RDB와 단말 A가 측정한 RBA를 포함하며, 가상 캐리어 센싱을 위한 CTS 프레임(323)의 듀레이션 필드값은 다음의 수학식 4와 같이 결정된다.
여기서, DURCTS는 CTS 프레임(323)의 듀레이션 필드값, TACK는 ACK 프레임을 송신하기 위해 필요한 시간, L은 단말 D가 전송하고자 하는 데이터 프레임의 크기, RRDB는 PCTS 프레임(322)에 포함된 RDB, RRBA는 단말 A가 측정한 RBA이다. RTDB 및 RTBA 를 각각 RTS 프레임(321)에 명시된 RDB 및 RBA라고 하면, L은 DURRTS, RTDB 및 RTBA를 이용하여 계산될 수 있다.
위와 같은 방법으로 단말 B와 단말 A는 단말 D의 데이터 전송을 위한 핸드쉐이크 과정에서 RTS 프레임(321) 및 PCTS 프레임(322)을 수신할 때 각 전송채널의 품질을 다시 측정하며, 현재의 전송채널 상황이 RTS 프레임(321)에 명시된 전송속도로 협력통신을 수행할 수 없는 경우에 해당하면 CTS 프레임(323)을 통해 협력통신의 사용을 취소하고, 단말 D는 단말 A에게 데이터 프레임을 직접 전송한다.
단말 D는 협력통신의 사용 가능 여부를 나타내는 플래그값이 참으로 설정된 CTS 프레임(323)을 수신하고 SIFS가 지난 후에 CTS 프레임(323)에 명시된 RDB의 전송속도로 단말 B에 데이터 프레임(324)을 전송한다. 단말 B는 데이터 프레임(324)를 수신하고 SIFS가 지난 후에 CTS 프레임(323)에 명시된 RBA의 전송속도로 단말 A에 단말 D의 데이터 프레임(325)를 중계전송한다. 데이터 프레임(325)를 성공적으로 수신한 단말 A는 SIFS가 지난 후에 ACK 프레임(326)을 단말 D에게 전송하여 데이터를 성공적으로 수신하였음을 알린다.
단말 B가 협력통신을 제공할 수 있는 다른 송신단말들이 존재하는 경우, 단말 B는 단말 D의 데이터 프레임(325)를 중계전송하기 전에 제2의 중계대상단말인 단말 E를 선택하고, 중계전송하는 데이터 프레임(325)의 헤더에 단말 E의 식별번호(ID)와 단말 B의 프레임 재전송 횟수를 포함시킨다. 단말 A가 수신한 데이터 프레임(325)에 단말 B가 협력통신을 제공할 제2의 중계대상단말인 단말 E의 식별번호 가 포함되어 있으면 단말 A는 ACK 프레임(326)에 단말 E, 단말 B 및 단말 A의 식별번호와 단말 B의 프레임 재전송 횟수를 포함시켜 단말 E가 단말 B와의 협력 통신을 통해 단말 A에게 데이터를 전송할 수 있음을 알린다. 단말 B에 의해 선택된 단말 E는 단말 B가 전송하는 PCTS 프레임(322), 단말 B가 중계전송하는 데이터 프레임(325) 및 단말 A가 전송하는 CTS 프레임(323)을 오버히어링하면서 REB, RBA, REA를 측정하기 때문에 ACK 프레임(326)를 오버히어링할 때 REB와 RBA를 이용하여 협력통신 시의 전송지연을 예측할 수 있으며 REA를 이용하여 직접통신시의 전송지연을 예측할 수 있다. 협력통신의 전송지연이 직접통신의 전송지연에 비해 작으면 단말 E는 ACK 프레임(326)을 오버히어링한 후 단말 B 및 단말 A와 RTS 프레임(331), PCTS 프레임(332), CTS 프레임(333), 데이터 프레임(334, 335) 및 ACK 프레임(336)을 교환하여 단말 D의 경우와 동일한 방법으로 협력통신을 통해 데이터 프레임을 전송한다.
단말 B는 단말 E의 데이터 프레임(335)를 중계전송할 때 단말 B의 중계전송을 지원받을 단말로 제3의 중계대상단말인 단말 F를 선택하여 단말 E의 협력 통신과 동일한 방법으로 단말 F의 협력통신이 이루어지도록 할 수 있다. 이와 같은 방법으로 본 발명에 따른 무선통신 네트워크에서의 통신장치는 단말 B가 협력통신을 제공할 수 있는 모든 단말들의 협력통신을 전송채널로의 접근을 위한 어떠한 오버헤드도 발생시키지 않고 연속적으로 수행할 수 있다. 단말 B는 순환 순서(Round-Robin) 방식으로 중계대상단말들을 선택하여 협력통신을 제공하며, 중계단말인 단말 B와 중계대상단말인 단말 D, 단말 E 및 단말 F 간의 공평한 전송채널 사용을 보 장하기 위해 단말 B는 RTS 프레임(311)을 송신한 후 단말 D, 단말 E 및 단말 F를 최대 한 번씩 선택한다. 또한 단말 B에 의해 선택된 단말 D가 협력통신을 위한 RTS 프레임을 전송하지 않은 경우에는 단말 B는 단말 D를 협력을 필요로 하지 않는 단말로 식별하여 이후에 있을 연속된 협력통신이 끊어지지 않도록 한다.
단말 D, 단말 E 및 단말 F는 백오프 타이머값에 무관하게 협력통신으로 데이터 프레임을 송신하기 때문에 협력통신 후 백오프 타이머가 만료되었을 때 또다시 전송채널을 사용하게 된다. 이는 단말 D, 단말 E 및 단말 F가 중계단말인 단말 B보다 더 빈번하게 전송채널을 사용하게 되는 문제를 야기한다. 이 문제를 해결하기 위해 단말 B의 선택에 의해 데이터를 송신한 단말 D, 단말 E 및 단말 F는 데이터 전송의 성공 여부에 관계없이 데이터가 전송된 직후에 새로이 선택된 백오프 타이머 값을 현재 남아있는 백오프 타이머 값에 더하여 백오프 타이머의 만료에 의해서만 전송채널 사용이 허용되었을 때와 동일한 주기로 전송채널을 사용한다.
IEEE 802.11 표준에 따른 채널 사용은 백오프 타이머가 만료된 단말이 DIFS만큼의 채널 유휴 시간을 기다리는 반면, 본 발명에 따른 무선통신 네트워크에서의 통신장치를 사용하여 중계단말인 단말 B에 의해 선택된 단말은 ACK 프레임(314, 326, 336)을 수신한 후 SIFS만큼의 채널 유휴 시간을 기다린 다음 협력 통신을 위한 RTS 프레임(321, 331)을 송신한다. 따라서 숨겨진 노드 문제가 발생하지 않는 무선통신 네트워크를 고려할 때, 협력통신을 위한 RTS 프레임(321, 331)은 다른 프레임과의 충돌 없이 송신되며, 이로 인해 중계단말인 단말 B와 중계대상단말인 단말 D, 단말 E 및 단말 F는 서로 다른 RTS 프레임의 충돌율을 경험하게 된다.
IEEE 802.11 표준에 의한 DCF를 사용하는 무선통신 네트워크에서 각 단말은 충돌이 발생할 때마다 경쟁 윈도우의 값을 두 배로 증가시키기 때문에 중계 단말인 단말 B에 비해 단말 B의 협력통신을 지원받는 단말 D, 단말 E 및 단말 F가 더 빈번하게 채널을 사용하게 된다는 문제가 발생하게 된다. 이 문제를 해결하기 위하여 단말 B에 의해 선택된 단말을 알리는 단말 A의 ACK 프레임(314, 326, 336)은 단말 B의 프레임 재전송 횟수를 포함하며, 단말 B의 선택에 의해 데이터를 전송한 단말 D, 단말 E 및 단말 F는 데이터 전송의 성공 여부에 관계없이 데이터 전송 직후에 단말 B의 프레임 재전송 횟수만큼 프레임 재전송 횟수를 증가시키고 경쟁 윈도우를 2배씩 증가시킨다. 단말 D, 단말 E, 단말 F의 조정된 경쟁 윈도우가 IEEE 802.11 표준에서 정의한 최대 경쟁 윈도우 값보다 큰 경우 경쟁 윈도우를 최대 경쟁 윈도우 값으로 재조정하고 조정된 경쟁 윈도우의 값을 이용하여 새로운 백오프 타이머의 값을 결정한다.
도 4는 중계단말(단말 B)이 중계대상단말(단말 D)보다 먼저 수신단말(단말 A)로 데이터 프레임을 전송한 경우에 본 발명에 따른 무선통신 네트워크에서의 통신장치가 적용되는 다른 실시예를 도시한 도면이다.
도 4를 참조하면, 단말 B의 데이터 프레임을 전송하기 위하여 단말 B가 RTS 프레임(411)을 전송하고 단말 A가 CTS 프레임(412)으로 응답한 후, 단말 B가 데이터 프레임(413)을 전송하고 단말 A가 ACK 프레임(414)으로 응답한다. 단말 B는 협력통신을 제공할 중계대상단말로 단말 D를 선택하여 단말 A로 전송되는 데이터 프레임(413)의 헤더에 포함시키며, 단말 A는 ACK 프레임을 통해 단말 D가 협력 통신 을 사용할 수 있음을 알린다.
단말 D는 협력통신을 위해 RTS 프레임(421)을 전송하고, 단말 B는 RTS 프레임(421)을 수신하는 과정에서 RDB를 측정한다. 측정한 RDB가 RTS 프레임(421)에 포함된 RDB보다 작으면 단말 B는 PCTS 프레임을 전송하지 않으며, 단말 A는 2개의 SIFS에 해당하는 시간동안 PCTS 프레임을 수신하지 못하면 협력통신의 사용가능 여부를 나타내는 플래그값을 거짓으로 설정한 CTS 프레임(422)를 전송하여 단말 D가 직접통신에 의해 단말 A에게 데이터 프레임을 전송하도록 한다.
협력통신의 사용가능 여부를 나타내는 플래그값이 거짓으로 설정된 CTS 프레임(422)은 단말 A가 측정한 RDA를 포함하며, 가상 캐리어 센싱을 위한 CTS 프레임(422)의 듀레이션 필드값은 다음의 수학식 5와 같이 표현된다.
여기서, DURCTS는 CTS 프레임(422)의 듀레이션 필드값, TACK는 ACK 프레임을 전송하기 위해 필요한 시간, L은 단말 D가 전송하고자 하는 데이터 프레임의 크기, 그리고 RRDA는 단말 A가 측정한 RDA이다. DURRTS를 RTS 프레임(421)의 듀레이션 필드 값, RTDB 및 RTBA를 각각 RTS 프레임(421)에 포함된 RDB 및 RBA라고 하면 L은 DURRTS, RTD,B 및 RTBA를 이용하여 계산될 수 있다. 또한 DURRTS는 수학식 1에 나타난 RTS 프레 임(321)의 듀레이션 필드값과 동일하다.
협력통신의 사용가능 여부를 나타내는 플래그값이 거짓으로 설정된 CTS 프레임(422)을 수신한 단말 D는 RTS 프레임(421)을 전송한 후 경과된 시간을 제한 RTS 프레임(421)의 듀레이션 필드값이 CTS 프레임(422)에 명시된 RDA의 전송속도로 데이터 프레임(424)을 전송할 때의 전송지연보다 작으면 CTS 프레임(422)을 수신하고 SIFS 시간이 지난 후 증가한 전송 지연을 알리는 제어 프레임(423)을 전송하여 인접 단말들이 가상 캐리어 센싱을 성공적으로 수행할 수 있도록 한다. 이때 제어 프레임(423)의 듀레이션 필드값은 다음의 수학식 6에 의해 표현된다.
여기서, DUR은 제어 프레임(423)의 듀레이션 필드값, TACK는 ACK 프레임을 전송하기 위해 필요한 시간, L은 단말 D가 전송하고자 하는 데이터 프레임의 크기, 그리고 RRDA는 CTS 프레임(422)에 포함된 RDA이다.
단말 D는 SIFS의 시간이 경과한 후 CTS 프레임(422)에 포함된 RDA의 전송속도로 데이터 프레임(424)을 단말 A로 전송한다. 데이터 프레임(424)을 성공적으로 수신한 단말 A는 ACK 프레임(425)을 단말 D로 전송한다.
도 5는 중계단말(단말 B)이 중계대상단말(단말 D)보다 먼저 수신단말(단말 A)로 데이터 프레임을 전송한 경우에 본 발명에 따른 무선통신 네트워크에서의 통 신장치가 적용되는 또 다른 실시예를 도시한 도면이다.
도 5를 참조하면, 단말 B의 데이터 프레임을 전송하기 위하여 단말 B가 RTS 프레임(511)을 전송하고 단말 A가 CTS 프레임(512)으로 응답한 후, 단말 B가 데이터 프레임(513)을 전송하고 단말 A가 ACK 프레임(514)으로 응답한다. 단말 B는 협력통신을 제공할 중계대상단말로 단말 D를 선택하여 단말 A로 전송되는 데이터 프레임(513)의 헤더에 포함시키며 단말 A는 ACK 프레임(514)을 통해 단말 D가 협력통신을 사용할 수 있음을 알린다.
단말 D는 협력통신을 사용하기 위해 RTS 프레임(521)을 전송하고, SIFS가 지난 후에 단말 B가 PCTS 프레임(522)을 전송한다. 단말 A는 RTS 프레임(521)을 수신하는 과정에서 RDA를 측정하며, PCTS 프레임(522)을 수신하는 과정에서 RBA를 측정한다. 단말 A는 측정한 RBA가 RTS 프레임(521)에 포함된 RBA보다 작거나 단말 A가 측정한 RDA, RBA와 PCTS 프레임(522)에 명시된 RDB가 다음 수학식 7에 나타난 조건을 만족하면 협력통신의 사용가능 여부를 나타내는 플래그값을 거짓으로 설정한 CTS 프레임(523)을 전송하여 단말 D가 직접통신에 의해 CTS 프레임(523)에 포함된 RDA의 전송속도로 데이터 프레임(525)을 단말 A에게 전송하도록 한다.
도 6은 중계대상단말(단말 D)이 중계단말(단말 B)보다 먼저 전송채널을 사용 하여 수신단말(단말 A)로 데이너 프레임을 전송한 경우에 본 발명에 따른 무선통신 네트워크에서의 통신장치가 적용되는 일 실시예를 도시한 도면이다.
도 6을 참조하면, 단말 D는 자신이 협력통신을 제공받을 수 있는 단말들 중에서 최단 전송지연의 협력통신을 가능하게 하는 단말들 중 하나인 단말 B를 중계단말로 선택하고, 협력통신의 사용여부를 나타내는 플래그값이 참으로 설정된 RTS 프레임(611)을 전송한다. 협력통신의 사용여부를 나타내는 플래그값이 참으로 설정된 RTS 프레임(611)은 단말 D, 단말 B 및 단말 A의 식별번호(ID)와 단말 D가 가장 최근에 측정한 RDB 및 RBA에 관한 정보를 포함한다. 또한 가상 캐리어 센싱을 위한 RTS 프레임(611)의 듀레이션 필드값은 다음의 수학식 8로 표현될 수 있다.
여기서, DURRTS는 RTS 프레임(611)의 듀레이션 필드값, TPCTS, TCTS 및 TACK는 각각 PCTS 프레임, CTS 프레임 및 ACK 프레임을 송신하기 위해 필요한 시간, 그리고 L은 단말 D가 전송하고자 하는 데이터 프레임의 크기이다.
단말 D가 협력통신의 사용여부를 나타내는 플래그값이 참으로 설정된 RTS 프레임(611)을 전송한 이후의 과정은 앞에서 설명하였던 단말 B에 의해 선택된 단말 D가 단말 A에게 데이터를 전송하는 과정과 동일한 방법으로 수행된다.
협력통신의 사용가능 여부를 나타내는 플래그값이 참으로 설정된 CTS 프레 임(613)을 수신한 단말 D는 단말 B에 전송하는 데이터 프레임(614)의 헤더에 단말 D의 프레임 재전송 횟수를 포함시킨다. 단말 B가 단말 D의 데이터 프레임(615)를 중계전송하는 과정에서 협력통신을 제공할 제2의 중계대상단말로 단말 E를 선택한 경우, 중계전송하는 데이터 프레임(615)에는 단말 E의 식별번호(ID)와 단말 D의 프레임 재전송 횟수를 포함시켜 단말 E가 채널에 접근한 단말 D의 프레임 재전송 횟수에 따라 경쟁 윈도우를 조정하도록 한다.
단말 D가 단말 B보다 먼저 전송채널을 사용하게 되었을 때 단말 B가 중계전송하는 데이터 프레임(615)를 통해 연속되는 단말 E와 단말 F의 협력 통신(620, 630)은 중계단말인 단말 B만을 제외한 단말들의 데이터 프레임을 전송하기 때문에 단말들 간의 불공평한 전송채널 사용을 야기하게 된다. 따라서 단말 B가 중계전송할 데이터 프레임(615) 외에 단말 A로 전송할 데이터 프레임을 가지고 있지 않은 경우에만 단말 B의 중계전송을 지원받을 제2 또는 제3의 중계대상단말을 선택하여 단말 D의 협력통신이 단말 E, 단말 F의 협력통신(620, 630)으로 이어지도록 한다. 이러한 방법은 중계단말인 단말 B보다 단말 D, 단말 E 및 단말 F가 더 빈번하게 데이터 프레임을 생성하는 경우에도 채널 접근을 위한 오버헤드 없이 단말 B를 통한 연속적인 협력통신을 가능하게 한다.
단말 D가 단말 B의 중계전송을 통해 단말 A로 데이터를 전송할 때 단말 A가 전송하는 CTS 프레임은 RDB 및 RBA를 포함하며, 단말 D가 단말 A로 직접 데이터를 전송할 때 단말 A가 전송하는 CTS 프레임은 RDA를 포함한다. 도 2에 나타난 송신단말 들 중에서 중계단말이 될 수 있는 또 다른 송신단말인 단말 C는 단말 D의 RTS 프레임을 오버히어링할 때 RDC를 측정하며, 단말 A의 CTS 프레임을 오버히어링할 때 RCA를 측정한다.
단말 D가 협력통신을 사용할 때 다음의 수학식 9를 만족하거나 단말 D가 직접통신을 사용할 때 다음의 수학식 10을 만족하면 단말 C가 더 작은 전송지연의 협력통신을 단말 D에게 제공할 수 있기 때문에 단말 C는 단말 C의 협력통신을 제공받을 단말로 단말 D를 선택하며, 그렇지 않은 경우 협력통신을 필요로 하는 단말들의 정보에서 단말 D의 정보를 삭제한다. 이러한 방법을 통해 단말 D, 단말 E 및 단말 F는 최단 전송지연의 협력통신을 가능케 하는 중계단말들에 의해서만 중계전송을 지원받게 된다.
도 7은 본 발명에 따른 무선통신 네트워크에서의 통신방법에 대한 바람직한 일 실시예의 수행과정을 도시한 흐름도이다.
도 7을 참조하면, 먼저 전송속도 측정부(120)는 전송하고자 하는 프레임의 목적지인 수신단말로 프레임을 전송하는 송신단말과의 전송채널에서 사용되는 전송 속도, 수신단말과의 전송채널에서 사용되는 전송속도 및 송신단말과 수신단말 사이의 전송채널에서 사용되는 전송속도를 측정한다(S710). 다음으로 중계대상단말 결정부(130)는 측정된 전송속도를 기초로 송신단말로부터 수신단말로 데이터가 직접 전송될 경우의 전송지연인 제1전송지연과 송신단말로부터 협력통신에 의하여 수신단말로 데이터가 전송될 경우의 전송지연인 제2전송지연을 산출하고, 제2전송지연이 제1전송지연보다 작으면 송신단말을 협력통신을 제공할 중계대상단말로 결정한다(S720). 중계제어부(140)는 프레임송수신부(110)가 수신단말로 전송하는 제1데이터 프레임에 중계대상단말의 식별번호를 포함시키고(S730), 중계대상단말이 협력통신을 사용할 것을 결정하여 이를 알리는 요청 프레임을 전송하는 과정의 결과로 수신단말로부터 협력통신의 가능여부를 나타내는 플래그값이 참으로 설정된 CTS 프레임을 수신하면(S740) 중계대상단말로부터 전송된 제2데이터 프레임을 수신단말로 전송한다(S750).
도 8은 중계단말이 중계대상단말을 결정하여 협력통신을 제공하는 과정에서 제2의 중계대상단말을 결정하는 과정을 도시한 흐름도이다.
도 8을 참조하면, 중계단말은 중계대상단말이 전송하는 RTS 프레임에 중계단말의 식별번호(ID)를 포함하여 협력통신의 제공을 요청하였는지 판단하고(S810), RTS 프레임을 수신하면서 측정한 중계대상단말로부터 중계단말로의 채널에서 사용 가능한 최대 전송속도와 RTS 프레임에 포함된 전송속도를 비교하여 중계단말이 중계대상단말이 RTS 프레임에 포함된 전송속도로 전송한 데이터 프레임을 성공적으로 수신할 수 있는가를 판단한다(S820). 중계대상단말이 요구하는 협력통신을 제공할 수 있는 경우에는 PCTS 프레임을 전송하며(S830), 수신단말로부터 협력통신의 사용가능 여부를 나타내는 플래그값이 참으로 설정된 CTS 프레임을 수신하고(S840), 중계대상단말로부터 수신한 데이터 프레임을 중계전송한다(S850). 중계단말은 협력통신을 제공할 다른 송신단말인 제2의 중계대상단말이 존재하는지 판단하고(S860), 존재하는 경우에는 제2의 중계대상단말의 식별번호를 중계 전송할 데이터 프레임의 헤더에 추가한다(S870).
도 9는 본 발명에 따른 무선통신 네트워크에서의 통신방법에 대한 바람직한 다른 실시예의 수행과정을 도시한 흐름도이다. 즉, 도 9는 중계단말에 의해 중계대상단말로 결정된 송신단말의 동작을 나타낸다.
도 9를 참조하면, 중계대상단말은 수신단말이 중계단말로 전송하는 ACK 프레임을 오버히어링하여 중계단말에 의해 중계대상단말로 결정되었는지 여부를 판단한다(S910). 다음으로 ACK 프레임을 전송한 수신단말에게 전송할 데이터 프레임을 가지고 있는 경우(S915)에는 데이터 전송과정을 진행하기 전에 중계단말보다 낮은 충돌율로 RTS 프레임을 송신하는 것에 대한 대가로서 중계단말의 프레임 재전송 횟수에 다라 경쟁 윈도우를 조절한다(S920). 중계대상단말은 중계단말과 수신단말의 프레임을 오버히어링하면서 수집한 전송속도에 관한 정보를 이용하여 협력통신의 사용 여부를 결정하며(S925), 그 결과에 따라 협력통신을 위해 중계단말의 식별번호(ID)를 포함한 RTS 프레임을 전송하거나(S930), 직접통신을 위한 RTS 프레임을 전송한다(S935). 중계대상단말은 수신단말로부터 CTS 프레임을 수신하고(S940), CTS 프레임의 협력통신의 사용가능 여부를 나타내는 플래그의 설정 값에 따 라(S945) 데이터 프레임을 중계단말로 전송하여 중계전송이 되도록 하거나(S965), 수신단말로 직접 전송한다. 중계대상단말이 직접통신을 사용해야 하고 데이터 전송을 위해 RTS 프레임에서 설정한 듀레이션 필드값보다 더 많은 시간을 필요로 하는 경우(S950)에는 제어 프레임을 통해 전송채널 예약시간을 연장하고(S955), 데이터 프레임을 수신단말로 직접 전송한다(S960). 중계대상단말은 수신단말로부터 전송되는 ACK 프레임을 통해 데이터 전송의 성공 여부를 확인하며(S970), 부가적인 전송채널 사용에 대한 대가로서 새로 선택한 백오프 타이머를 현재 남아있는 백오프 타이머에 더한다(S980). 송신 단말이 데이터 전송에 실패한 경우에는 IEEE802.11 표준에 따라 경쟁 윈도우를 조절한다(S975).
도 10은 중계대상단말이 직접 중계단말을 선택하고, 협력통신에 의해 데이터 프레임을 전송하는 과정을 도시한 흐름도이다.
도 10을 참조하면, 중계대상단말은 협력통신을 제공할 수 있는 중계단말이 존재하면(S1010), 중계단말의 식별번호(ID)를 포함한 RTS 프레임을 전송하며(S1015), 그렇지 않은 경우에는 직접통신을 위한 RTS 프레임을 전송한다(S1020). 중계대상단말은 수신단말로부터 CTS 프레임을 수신하고(S1025), CTS 프레임의 협력통신의 사용가능 여부를 나타내는 플래그의 설정값에 따라(S1030) 데이터 프레임을 중계 단말로 전송하여 중계전송이 이루어지도록 하거나(S1035), 수신단말로 데이터 프레임을 직접 전송한다(S1050). 중계대상단말이 직접통신을 사용해야하고 데이터 전송을 위해 RTS 프레임에서 설정한 듀레이션 필드값보다 더 많은 시간을 필요로 하는 경우에는(S1040), 제어 프레임을 통해 전송채널 예약시간을 연장하고(S1045), 데이터 프레임을 수신단말로 직접 전송한다(S1050). 중계대상단말은 수신단말로부터 전송되는 ACK 프레임을 통해 데이터 전송의 성공 여부를 확인하며(S1055), 중계대상단말이 데이터 전송에 실패한 경우에는 IEEE 802.11 표준에 따라 경쟁 윈도우를 조정한다(S1060).
도 11은 데이터 프레임을 수신하는 수신단말의 협력통신에 의한 데이터 전송과정에서의 동작을 도시한 흐름도이다.
도 11을 참조하면, 수신단말은 RTS 프레임을 수신할 때(S1110), RTS 프레임에 포함되어 있는 정보를 바탕으로 중계대상단말이 협력통신을 필요로 하는가를 판단한다(S1115). 협력통신을 위한 RTS 프레임을 수신한 경우, 수신단말은 중계단말로부터 전송되는 PCTS 프레임을 기다리며(S1120), RTS 프레임과 PCTS 프레임의 수신 과정에서 측정한 전송속도를 바탕으로 RTS 프레임에 포함된 협력통신이 가능한가를 판단하여(S1125), 가능한 경우에는 협력통신을 위한 CTS 프레임을 전송한다(S1130). 수신단말은 중계대상단말이 협력통신의 사용을 원하지 않거나 현재의 전송채널 상황에서 RTS 프레임에 포함된 협력통신이 불가능하다고 판단한 경우에는 직접통신을 위한 CTS 프레임을 전송한다(S1135). 수신단말이 데이터 프레임을 수신하였을 때(S1140), 데이터 프레임의 헤더에 다음의 협력통신에 대한 정보가 포함되어 있는가를 판단하고(S1145), 포함되어 있는 경우에는 해당 정보를 ACK 프레임에 추가하고(S1150), ACK 프레임을 전송한다(S1155).
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스 템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이상에서 본 발명의 바람직한 실시예에 대해 도시하고 설명하였으나, 본 발명은 상술한 특정의 바람직한 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능한 것은 물론이고, 그와 같은 변경은 청구범위 기재의 범위 내에 있게 된다.