KR20150066335A - 무선통신에서 패킷 손실을 줄이기 위한 방법 및 장치 - Google Patents

무선통신에서 패킷 손실을 줄이기 위한 방법 및 장치 Download PDF

Info

Publication number
KR20150066335A
KR20150066335A KR1020130151744A KR20130151744A KR20150066335A KR 20150066335 A KR20150066335 A KR 20150066335A KR 1020130151744 A KR1020130151744 A KR 1020130151744A KR 20130151744 A KR20130151744 A KR 20130151744A KR 20150066335 A KR20150066335 A KR 20150066335A
Authority
KR
South Korea
Prior art keywords
packet
transmission
time
frame
retransmission queue
Prior art date
Application number
KR1020130151744A
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 KR1020130151744A priority Critical patent/KR20150066335A/ko
Priority to PCT/KR2014/007413 priority patent/WO2015083919A1/ko
Publication of KR20150066335A publication Critical patent/KR20150066335A/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/04Error control

Landscapes

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

Abstract

무선통신에서 패킷 손실을 줄이는 방법을 개시한다.
무선통신에서 패킷(Packet) 손실(Loss)을 줄이는 방법에 있어서, 패킷 전송 요청을 수신하는 과정; 상기 패킷을 전송하는 과정; 및 상기 패킷을 전송하는 과정에서 상기 패킷의 전송을 실패하는 경우, 상기 패킷을 재전송 큐(Queue)에 삽입하는 큐 삽입 과정을 포함하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 방법을 제공한다.

Description

무선통신에서 패킷 손실을 줄이기 위한 방법 및 장치 {Method And Apparatus For Reducing The Discarded Packets In Wireless Communication}
본 발명은 무선통신에서 패킷(Packet) 손실(Loss)을 줄이기 위한 방법 및 장치에 관한 것이다. 더욱 상세하게는 무선통신에서 손실 패킷을 효율적으로 복구할 수 있도록 매체접근제어(MAC(Medium Access Control: MAC) 레이어(Layer)를 구성하는 방법 및 이를 이용한 장치에 관한 것이다.
이하에 기술되는 내용은 단순히 본 실시예와 관련되는 배경 정보만을 제공할 뿐 종래기술을 구성하는 것이 아님을 밝혀둔다.
802.11 WiFi(Wireless Fidelity) 표준의 MAC(Medium Access Control) 레이어(Layer)에서는 MSDU(MAC Service Data Unit)를 전송하다가 실패하는 경우에 해당 패킷(Packet)을 버리도록 하고 있다. 이와 같이 패킷을 버려야 하는 원인으로는 경합(Contention)에 의해 지속적으로 충돌이 발생하거나 일시적인 전파 간섭 등에 의해 나쁜 무선 환경일 경우가 있다.
그러나 일반적인 WiFi 단말기는 일시적인 전파 간섭 등에 의한 나쁜 무선 환경인지에 대한 상태를 관리하지 않고, 일시적인 전파 간섭 등에 의한 나쁜 무선 환경일 경우에도 데이터 전송을 계속 시도하여 RTS(Request To Send), CTS(Clear To Send) 프레임(Frame)을 통해 무선 링크를 비효율적으로 점유하여 효율적으로 사용하지 못한다. 전송 실패한 패킷을 버림으로 인하여 발생하는 패킷 손실(Packets Loss)은 전송률과 통신품질에도 크게 영향을 미친다.
TCP(Transmission Control Protocol) 통신의 경우, MAC 레이어(Layer)에서 버려진 패킷을 재전송하는 기능을 제공하지만, 시간에 민감한 패킷(Time Critical Packet)을 포함하는 트래픽(Traffic)의 경우 버려진 패킷이 재전송에 의해 복구되더라도 지연이 발생하여 통신 품질에 좋지 않은 영향을 미친다. 또한, UDP(User Datagram Protocol)의 경우에 재전송을 하지 않으므로, 패킷을 버리고 나면 다시 복구할 수 없다는 문제가 있다.
본 실시예는, 무선통신에서 패킷 전송을 실패하더라도 패킷을 버리지 않고 다시 사용하여 패킷 손실을 줄여 무선통신의 전송률과 안정성을 높이는 방법을 제공하는 데 주된 목적이 있다.
본 실시예의 일 측면에 의하면, 무선통신에서 패킷(Packet) 손실(Loss)을 줄이는 방법에 있어서, 패킷 전송 요청을 수신하는 과정; 상기 패킷을 전송하는 과정; 및 상기 패킷을 전송하는 과정에서 상기 패킷의 전송을 실패하는 경우, 상기 패킷을 재전송 큐(Queue)에 삽입하는 큐 삽입 과정을 포함하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 방법을 제공한다.
또한, 본 실시예의 다른 측면에 의하면, 무선통신에서 패킷 손실을 줄이는 패킷 전송 장치에 있어서, 패킷 전송 요청을 수신하는 패킷수신부; 상기 패킷을 전송하는 패킷전송부; 상기 패킷의 전송에 대한 확인응답을 수신하는 응답수신부; 및 상기 패킷의 전송을 실패하는 경우, 상기 패킷을 저장하기 위한 재전송 큐를 포함하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 장치를 제공한다.
이상에서 설명한 바와 같이 본 실시예에 의하면, 일시적인 전파 간섭 등에 의해 나쁜 무선 환경에서 버려지는 패킷을 다시 복구하여 UDP(User Datagram Protocol) 통신의 품질을 향상시키고, TCP(Transmission Control Protocol)의 전송률과 안정성을 높일 수 있다. 또한 일시적인 나쁜 무선 환경으로 인해 전송을 실패하더라도 패킷을 완전히 버리는 것이 아니라 상황이 개선되어 패킷 전송이 가능할 때까지 재전송 큐(Access Point Retry Queue)에 저장해 두었다가 재전송 큐에서 인출하여 다시 전송하므로 TCP에서 재전송하는 것보다 빠르고, UDP에서는 패킷 손실을 막아 주는 효과가 있다.
도 1a 및 도 1b는 본 발명의 일 실시예에 따른 AP에서 재전송 큐를 포함하는 WiFi MAC의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 패킷전송장치의 블록도이다.
도 3a는 802.11 표준의 RTS/CTS 프레임을 이용한 무선 자원 예약 과정의 흐름도이고, 도 3b는 본 발명의 일 실시예에 따른 특별 RTS 프레임을 사용하는 무선 자원 예약 과정의 흐름도이다.
도 4a, 도 4b 및 도 4c는 802.11 표준의 MAC 및 RTS/CTS 프레임의 포맷이다.
도 5는 본 발명의 일 실시예에 따른 전송 실패한 패킷을 재전송 큐에 저장하는 과정의 순서도이다.
도 6은 본 발명의 일 실시예에 따른 재전송 큐에서 패킷을 인출하여 전송하는 과정의 순서도이다.
도 7은 802.11 표준에서 QoS의 DSCP 값의 예시도이다.
이하, 본 발명의 바람직한 일부 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다.
본 실시예를 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 또한, 후술되는 용어들은 본 실시예에서의 기능을 고려하여 정의된 용어들로서 관례 등에 따라 달라질 수 있다.
도 1a 및 도 1b는 본 발명의 일 실시예에 따른 AP에서 재전송 큐를 포함하는 WiFi MAC의 구성도이다.
WiFi(Wireless Fidelity)에서 TCP/IP 레이어(Layer)에서 SAP(Service Access Point)를 통해 전송할 패킷을 DLL(Data Link Layer)에 전달한다. DLL은 LLC(Logical Link Control)와 MAC(Medium Access Control) 레이어를 포함하고 LLC는 MAC보다 상위의 계층으로 TCP/IP가 보내 패킷을 받아 SAP를 통해 MAC에 다시 전달한다.
802.11 표준의 WiFi MAC은 RF(Radio Frequency)를 통해 데이터를 전송(Transmission)하고 수신(Reception)하며 MAC Control은 패킷의 전송 및 수신을 제어한다. 본 실시예에서는 MAC 레이어에 재전송 큐를 추가로 포함하고 있다. 그러나 802.11 표준에서는 MAC에서 패킷 전송을 실패하는 경우 패킷을 버리도록 하고 있다. 전송을 실패한 패킷을 버린다면 TCP 통신에서는 TCP 레이어에서 재전송을 하게 되므로 이로 인한 부담을 가지게 되고, 재전송을 요하지 않는 UDP 통신에서는 손실된 패킷으로 인해 통신의 품질이 떨어지는 문제가 발생한다.
본 실시예에서는 이런 문제를 해결하기 위해 재전송 큐(Automatic Packet Recovery Queue; APR Queue)를 두고 패킷 전송을 실패하더라도 바로 버리는 것이 아니라 패킷을 재전송 큐에 보관해 두었다가 일시적으로 나빠졌던 무선 전파 상태가 개선되면 재전송 큐로부터 저장된 패킷을 인출하여 패킷을 전송하게 되므로 패킷 손실을 줄이고, 손실될 예정이었던 패킷을 복구하는 기능을 제공할 수 있다. 다만, 패킷을 저장하기 위한 재전송 큐의 자료구조(Data Structure)는 반드시 FIFO(First-In-First-Out)를 특징으로 하는 큐(Queue)에 한정되지 않고, 다양한 형태로 구현될 수 있다.
도 1b는 클라이언트인 IPTV(Internet Protocol Television)가 동영상 스트리밍(Streaming) 서버로부터 동영상을 WiFi를 통해 수신하는 과정의 구성도이다. IPTV와 연결된 AP(Access Point)는 재전송 큐를 포함하고 있어, 패킷 전송을 실패하더라도 재전송 큐에 저장해 두고 다시 전송할 수 있다. 도 1b에서 동영상 서버는 인터넷을 통하여 제1 패킷 내지 제4 패킷을 전송하였고 AP가 수신하였으나, AP와 IPTV 간의 전파 간섭으로 인하여 제1 패킷 및 제4 패킷만 전송에 성공하고 제2 패킷 및 제3 패킷을 재전송 큐에 저장해 두었다가 전파 간섭이 해소된 이후에 다시 전송하는 과정을 보여 주고 있다.
도 2는 본 발명의 일 실시예에 따른 패킷전송장치의 블록도이다.
패킷전송장치(200)는 전송할 패킷을 LLC(Logical Link Control)로부터 수신하는 패킷수신부(210), 패킷이 시간에 민감한 패킷인지 여부를 판단하는 패킷속성 판단부(220), 데이터 및 관리를 위한 패킷들을 전송하는 패킷전송부(230), 전송한 패킷에 대한 응답을 수신하는 응답수신부(230), 무선상태변수(예를 들면, IS_BAD_SITUATION)를 저장하기 위한 무선상태변수 저장부(240), 패킷 전송을 실패하는 경우 패킷을 드랍(Drop)하지 않고 저장하기 위한 재전송 큐(Queue, 250) 및 재전송 큐에서 일정한 시간이 만료되면 패킷을 인출하여 전송하기 위한 리커버리 타이머(Recovery Timer)를 포함한다. 물론, 패킷전송장치(200)는 다른 구성 요소를 더 포함할 수 있고 반드시 본 실시예의 구성요소에 한정되지는 않는다.
패킷전송부(210)는 LLC로부터 데이터를 포함하는 패킷 전송 요청을 수신하고, 수신한 패킷을 전송할 수 있고, 재전송 큐에 저장된 패킷을 인출하여, 인출된 패킷을 전송할 수 있다. 응답수신부(230)는 AP에 연결된 상대방이 전송하는 다양한 형태의 데이터를 수신할 수 있다.
이하, 패킷전송장치(200)의 구성요소에 대해 상세하게 설명한다. MAC보다 상위의 계층인 LLC(Logical Link Control) 계층에서 패킷을 전송하기 위해 MAC(Medium Access Control)에 패킷을 전달하면 패킷수신부(210)에서 패킷을 수신한다. 패킷속성판별부(220)는 수신한 패킷이 시간에 민감한 패킷(Time Critical Packet)인지 여부를 판단한다. VoIP(Voice over Internet Protocol)와 같이 시간에 민감한 패킷의 경우 전송에 실패한 패킷을 재전송하는 것보다 다음 패킷을 전송하는 것이 더 유리하므로 재전송 큐에 패킷을 저장하지 않는다.
패킷이 시간에 민감한 패킷인지 여부는 시간민감성판단변수를 통하여 판단하는데, 시간민감성판단변수는 802.11 표준의 QoS(Quality Of Service)에서 사용하는 DSCP(Differentiated Services Code Point) 필드를 활용하여 판단할 수 있다. DSCP에 대해서는 도 7에서 상세하게 설명한다.
패킷속성판단부(220)가 판단한 전송할 패킷의 속성이 시간에 민감한 패킷이 아닐 경우에 무선상태변수를 포함하는 무선상태변수 저장부(240)에서 무선 상태가 전송 가능한 상태인지를 확인하여야 한다. 이때 시간에 민감한 패킷이 아니고 무선 상태가 전송 가능한 상태가 아니라면 패킷을 재전송 큐(250)에 저장하고, 무선상태변수가 패킷 전송이 가능하다면 패킷전송부(230)에서 패킷을 전송한다.
무선상태변수는 TRUE 또는 FALSE의 값은 가지는 부울(Boolean) 타입의 변수일 수 있고, 무선의 상태를 단계적으로 표시할 수 있는 실수 또는 자연수의 값으로 표시될 수 있다. 이하에서는 무선상태변수(예를들면, IS_BAD_SITUATION)가 부울(Boolean) 타입의 값을 가지는 것으로 설명한다. 무선상태변수 값이 TRUE인 경우 무선 상태가 전파 간섭이 발생하여 패킷 전송을 할 수 없는 상태이고, FALSE는 경우 무선 상태가 좋아 패킷 전송이 가능한 상태를 의미한다.
패킷전송부(230)는 프레임 전송을 하기 전에 기다리는 시간인 BACKOFF 윈도우를 결정하고 BACKOFF 완료시까지 대기한다. 802.11 표준에서 BACKOFF 시간은 DIFS(Distributed Interframe Space) 시간을 사용한다. 패킷전송부(230)는 BACKOFF가 완료되면 패킷을 전송하고, 응답수신부(230)는 확인응답을 일정한 시간 동안 기다린다. 일정한 시간 동안 확인응답을 수신하지 못하면 패킷의 드랍(Drop) 여부를 판단한다.
패킷의 드랍(Drop) 여부는 패킷 전송을 위한 재시도(Retry) 횟수에 의해 결정된다. 802.11 표준에서는 짧은 패킷(Short Packet)의 경우 dot11ShortRetryLimit, 긴 패킷(Long Packet)의 경우 dot11LongRetryLimit에 의해 정해진 횟수만큼 패킷 전송을 반복하여 재시도한다. 정해진 횟수만큼 재시도하였음에도 패킷 전송을 실패한다면 무선상태변수 값을 패킷을 전송할 수 없는 상태인 TRUE로 변경하고, 시간에 민감한 패킷이라면 패킷을 드랍(Drop)하고 그렇지 않은 패킷은 재전송 큐(250)에 저장된다. 이때 재전송 큐(250)가 비어 있던 상태에서 처음으로 패킷이 저장되는 경우에는 재전송 큐(250)로부터 일정한 시간이 경과하면 저장된 패킷을 인출하여 전송하기 위한 리커버리 타이머(Recovery Timer, 260)를 설정한다. 이때 패킷을 인출하기 위한 리커버리 타이머의 만료 시간은 미리 설정된 값으로 할 수 있다.
리커버리 타이머의 만료 시간이 경과하면, 패킷전송부(230)는 특별 RTS(Request To Send) 프레임을 전송하고, 응답수신부(230)는 특별 RTS에 대한 확인응답을 기다린다. 확인응답을 수신하면 무선상태변수 저장부(240)의 값을 FALSE로 변경하고 패킷전송부(230)는 재전송 큐(250)에서 저장된 패킷을 인출하여 전송한다. 재전송 큐(250)가 복수의 패킷을 포함하고 있는 경우, 저장된 패킷의 수만큼 패킷 인출과 패킷 전송을 반복하여 수행한다.
무선상태변수 저장부(240)에 저장된 값이 TRUE인 경우, AP가 통신 상대방으로부터 어떤 종류의 데이터를 수신한다면 무선 상태가 전송이 가능한 상태로 판단할 수 있으므로 무선상태변수 저장부(240)의 값을 FALSE로 변경할 수 있다.
본 발명의 일 실시예에 따른 패킷 전송 장치(200)는 개인용 컴퓨터(PC: Personal Computer), 노트북 컴퓨터, 태블릿(Tablet), 개인 휴대 단말기(PDA: Personal Digital Assistant), 게임 콘솔, 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 무선 통신 단말기(Wireless Communication Terminal), 스마트폰(Smart Phone), TV, 미디어 플레이어 등과 같은 사용자 단말기를 포함할 수 있고, 본 발명의 일 실시예에 따른 패킷 전송 장치(200)는 응용 서버와 서비스 서버 등 서버 단말기일 수 있다. 본 발명의 일 실시예에 따른 패킷 전송 장치(200)는 각기 (i) 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, (ii) 프로그램을 실행하기 위한 데이터를 저장하기 위한 메모리, (iii) 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비하는 다양한 장치를 의미할 수 있다. 일 실시예에 따르면, 메모리는 램(Random Access Memory: RAM), 롬(Read Only Memory: ROM), 플래시 메모리, 광 디스크, 자기 디스크, 솔리드 스테이트 디스크(Solid State Disk: SSD) 등의 컴퓨터로 판독 가능한 기록/저장매체일 수 있다. 다른 실시예에 따르면, 마이크로프로세서는 명세서에 기재된 동작과 기능을 하나 이상 선택적으로 수행하도록 프로그램될 수 있다. 다른 실시예에 따르면, 마이크로프로세서는 전체 또는 부분적으로 특정한 구성의 주문형반도체(Application Specific Integrated Circuit: ASIC) 등의 하드웨어로서 구현될 수 있다.
도 3a는 802.11 표준의 RTS/CTS 프레임을 이용한 무선 자원 예약 과정의 흐름도이고, 도 3b는 본 발명의 일 실시예에 따른 특별 RTS 프레임을 사용하는 무선 자원 예약 과정의 흐름도이다.
도 3a에서 소스(Source)인 송신노드가 채널이 빈 것(Idle)을 인지한 후 DIFS(Distributed Interframe Space)만큼 대기한 후에 RTS(Request To Send) 프레임(Frame)을 전송하면 목적지(Destination)인 수신노드는 RTS를 수신한 후 SIFS(Short Interframe Space)만큼 기다린 후, CTS(Clear To Send) 프레임을 전송한다. 송신노드는 CTS 프레임을 수신하고 SIFS만큼 기다린 후에 데이터를 전송한다. 수신노드는 데이터 수신이 완료되고 SIFS 후에 확인응답(Acknowledgment; ACK)을 전송한다. 이때 다른 노드는 NAV(Network Allocation Vector)가 셋팅(Setting)됨으로 무선 자원을 사용할 수 없게 된다. 이와 같은 메커니즘(Mechanism)은 숨겨진 노드 문제에 의한 충돌(Collision) 문제를 해결하기 위한 것이다.
도 3b는 MAC에서 재전송 큐에 저장된 패킷을 인출하여 다시 전송하기 위해 무선 자원을 예약할 수 있는지 확인하기 위한 특별 RTS를 전송하고 그 응답으로 CTS를 수신하여 데이터 전송을 위한 RTS 프레임을 전송하는 과정의 흐름도이다. 데이터를 전송하기 위한 RTS를 사용하는 경우 장시간 동안 다른 STA(Station)에서 무선 자원을 사용할 수 없다는 문제가 있으나, 특별 RTS를 사용하는 경우에는 짧은 시간 동안만 무선 자원을 예약하므로 효율적으로 무선 자원을 사용할 수 있다. 즉, 특별 RTS는 802.11 표준의 RTS에서 데이터 전송 시간 및 데이터 전송 시간 사이의 SIFS 시간이 제외되어 짧은 시간만 무선 자원을 예약할 수 있다. 그리고 특별 RTS 프레임에 대한 응답으로 CTS 프레임을 수신하면 도 3b의 데이터를 전송하기 위한 RTS 프레임을 전송하여 무선 데이터 구간을 예약 할 수 있다. RTS/CTS 및 특별 RTS 프레임에 대한 상세한 설명은 이하에서 하기로 한다.
도 4a, 도 4b 및 도 4c는 802.11 표준의 MAC, RTS 및 CTS 프레임의 포맷이다.
MAC 프레임은 LLC으로부터 전달받은 패킷을 비신뢰적인 물리계층(Physical Layer)을 통해서도 신뢰할 수 있는 전송이 되도록 하는 역할을 담당한다. 도 4a에서 MAC(Medium Access Control) 프레임(Frame)은 프레임 컨트롤(Frame Control), 지속시간(Duration), 어드레스(Address) 정보, 선택적인 시퀀스 컨트롤(Optional Sequence Control), QoS(Quality Of Service) 등을 포함하는 MAC 헤더(Header), 프레임 바디(Body) 및 FCS(Frame Check Sequence)를 포함한다. 프레임 컨트롤은 프로토콜 버전(Protocol Version), ACK 정책, 프레임 타입, 프레그먼트(Fragment) 시작/종료, 재시도 등에 대한 정보를 포함한다.
도 4b 및 도 4c는 802.11 표준의 RTS 및 CTS 프레임 포맷의 구성도이다. RTS(Request To Send) 프레임은 송신노드가 데이터 전송을 위해 무선 링크를 예약하는 것으로 송신노드가 무선 링크를 듣고 있는 모든 노드에게 송신하지 말라고 보내는 메시지이다. CTS(Clear To Send) 프레임은 수신노드가 무선 링크를 듣고 있는 모드에게 지금부터 송신하지 말라고 하는 것이다.
RTS 프레임은 Frame Control, Duration, RA, TA 및 FCS 정보를 포함한다. 여기서 Duration은 전송하기 위해 대기 중인 데이터 또는 관리를 위한 프레임, CTS 프레임, ACK 프레임 전송 시간 및 3개의 SIFS 시간을 포함한다. CTS 프레임은 Frame Control, Duration, RA 및 FCS 정보를 포함한다. 여기서 Duration은 전송을 위해 대기 중인 데이터 또는 관리 프레임, ACK 프레임 전송 시간 및 2개의 SIFS 시간을 포함한다.
본 실시예의 특별 RTS는 802.11 표준의 RTS 프레임의 Duration에서 데이터 전송을 위한 시간, ACK 및 1개의 SIFS를 제외한 시간이다. 특별 RTS 프레임의 Duration은 CTS 프레임 및 1개의 SIFS 시간을 포함한다. CTS의 Duration의 값은 0으로 설정될 수 있다.
도 5는 본 발명의 일 실시예에 따른 전송 실패한 패킷을 재전송 큐에 저장하는 과정의 순서도이다.
무선통신에서 MAC(Medium Access Control) 레이어는 LLC(Logical Link Control)로부터 전송할 패킷을 수신하여(S510), 패킷이 VoIP(Voice Over Internet Protocol)과 같은 시간에 민감한 패킷(Time Critical Packet)인지 여부를 판별한다(S520). 이 판별 결과에 근거하여 전송할 패킷이 시간에 민감한 패킷이 아니라면 무선 환경이 좋은지 나쁜지 판단하기 위하여 무선상태변수의 값이 TRUE인지 FALSE인지 여부를 확인한다(S530). 무선 상태가 좋지 않아 데이터를 전송할 수 없는 상태로 무선상태변수가 TRUE인 경우에는 재전송 큐를 사용할 것인지 여부를 판단한다(S531). 재전송 큐를 위한 설정이 ON되어 있다면 전송 실패한 패킷을 재전송 큐에 저장하고 OFF로 되어 있는 경우 패킷을 저장하지 않는다. 다만, 무선상태변수의 초기 값은 FALSE로 설정된다. 만약, 무선상태변수가 TRUE인 경우에는 패킷을 재전송 큐에 삽입한다(S532).
한편, 재전송 큐의 크기는 제한될 수 있어 최대 크기 이상으로 패킷을 삽입할 수 없다. 재전송 큐가 저장할 수 있는 최대 수용 크기를 초과하여 패킷을 삽입하고자 하는 경우, 패킷을 삽입하기 전에 저장되어 있는 패킷 중에서 삭제하고 삽입되어야 한다. 이때 삭제될 패킷은 재전송 큐에 가장 오래 머문 패킷이나 우선순위가 가장 낮은 패킷이 대상이 될 수 있다.
전송할 패킷이 시간에 민감한 패킷이거나 무선상태변수가 FALSE인 경우 프레임 전송을 하기 전에 기다리는 시간인 BACK OFF 윈도우를 결정하고 BACK OFF가 완료시까지 대기한다(S540). BACK OFF가 완료되면 패킷을 전송한다(S542). 송신 노드에서 패킷을 전송하고 일정한 시간 동안 확인응답인 ACK(Acknowledgment)를 수신여부를 확인하여(S544) 확인응답을 수신하면 패킷 전송이 완료되고, 수신하지 못한 경우, 패킷을 전송을 재시도할 것인지 여부를 판단한다(S546). 패킷을 전송하고 확인응답을 수신하지 못하더라도 바로 전송을 포기하는 것이 아니라 일정한 횟수만큼 재시도를 수행한다. 802.11 표준에서는 짧은 패킷(Short Packet)일 경우 dot11ShortRetryLimit, 긴 패킷(Long Packet)일 경우 dot11LongRetryLimit에 정해진 만큼 재시도를 하여 계속해서 전송을 하지 못하는 경우 패킷을 드랍하도록 하고 있다. 패킷 전송을 재시도 할 때 패킷 전송률을 높이기 위하여 패킷 전송의 출력을 높이거나 전송속도(Bitrate)을 낮게 할 수 있다.
하지만 본 실시예에서는 패킷 전송을 재시도하였는데도 불구하고 전송에 실패하여 패킷을 드랍하도록 판단하더라도 곧바로 버리지 않는다. 무선 상태가 패킷을 전송하지 못하는 정도로 좋지 않으므로 무선상태변수 값을 TRUE로 설정하고(S550), 패킷이 시간에 민감한 패킷인지 판별하여(S560), 판별 결과 패킷이 VoIP와 같이 시간에 민감한 패킷인 경우 패킷을 드랍한다(S570). 하지만 시간에 민감한 패킷이 아닌 경우 재전송 큐의 사용에 대한 설정이 온(ON)되어 있는 경우 패킷을 재전송 큐에 삽입하고(S580), 리커버리(Recovery) 타이머를 설정한다(S590). 재전송 큐의 사용에 대한 설정이 오프(OFF)되어 있다면 패킷을 드랍(S570)한다. 리커버리 타이머는 일정한 시간이 경과하면 무선상태가 좋아졌는지 확인하여 재전송 큐에서 패킷을 인출하여 수신노드로 전송할 수 있도록 한다.
도 6은 본 발명의 일 실시예에 따른 재전송 큐에서 패킷을 인출하여 전송하는 과정의 순서도이다.
재전송 큐에 초기 패킷이 저장되고 리커버리 타이머가 만료 시간과 함께 설정되고 리커버리 타이머의 시간이 만료되면(S610), MAC 레이어에서 이를 감지하여 특별 RTS 프레임을 수신 노드에 전송한다(S620). 이때 만료 시간은 미리 설정된 값을 사용할 수 있다. 특별 RTS 프레임은 802.11 표준에서 사용되는 RTS 프레임의 Duration 필드에서 데이터 전송 시간을 제외하고 무선 자원을 예약하므로 다른 노드에서 무선 자원을 사용하지 못하는 시간을 최소화 할 수 있다. 802.11 표준에서 RTS 프레임의 Duration 필드는 CTS + ACK + DATA + 3×SIFS의 시간이 되지만, 본 실시예의 특별 RTS의 Duration은 데이터 전송 시간을 포함하고 있지 않으므로 CTS + 1×SIFS가 된다.
송신 노드인 AP(Access Point)에서 특별 RTS 송출한 후 CTS 프레임 수신 여부에 따라(S630), CTS 프레임을 수신하지 못한 경우에는 무선 상태가 여전히 나쁜 상태를 유지하고 있으므로 재전송 큐에서 패킷을 송출하지 않고 새로운 리커버리 타이머가 만료 시간과 함께 설정된다(S640). 이때 재전송 큐에 장시간 머물러 재전송할 필요가 없는 패킷을 삭제할 수 있다.
CTS 프레임을 수신하는 경우에는 무선 상태가 개선되어 패킷 전송이 가능하게 된 것으로 판단할 수 있으므로 무선상태변수(IS_BAD_SITUATION) 값을 FALSE로 설정하고(S650), 재전송 큐에서 패킷을 인출하여 전송한다(S660). 재전송 큐에 아직 패킷이 남아 있다면(S670) 반복하여 패킷을 인출하여 전송하다. 재전송 큐에서 패킷을 인출하는 순서는 먼저 삽입된 패킷을 먼저 인출하는 방법(First In First Out; FIFO), 나중에 삽입된 패킷을 먼저 인출하는 방법(Last In First Out; LIFO), 우선순위(Priority)가 높은 패킷을 먼저 인출하는 방법 중 어느 하나의 방법을 이용할 수 있고, 두 가지 이상의 방법을 혼합하여 사용할 수 있다. 즉, 우선순위가 높은 패킷을 먼저 인출하되 동일한 우선순위의 패킷인 경우 FIFO 또는 LIFO의 방법으로 할 수 있다.
또한 AP에서 무선상태변수 값이 TRUE로 설정되어 있더라도, AP의 통신 상대방으로부터 어떤 종류의 데이터를 수신한다면, AP와 통신 상대방의 무선 상태가 개선되어 통신이 가능하게 되었다는 것을 의미하므로 무선상태변수 값을 FALSE로 변경할 수 있다.
도 7은 802.11 표준에서 QoS의 DSCP 값의 예시도이다.
본 발명에서는 전송할 패킷이 시간에 민감한 패킷(Time Critical Packet)인 경우 전송에 실패하더라도 재전송 큐에 저장하지 않고, 패킷을 드랍하고, 시간에 민감하지 않은 패킷에 대해서만 재전송 큐에 저장하도록 한다. 패킷이 시간에 민감한 패킷인지 여부를 판단하는 데 있어, 802.11 표준의 QoS(Quality Of Service)의 DSCP(Differentiated Services Code Point) 값을 사용하여 시간에 민감한 패킷인지 여부를 확인할 수 있다. 본 실시예에서 DSCP 값을 시간민감성판단변수로 사용할 수 있다.
도 7의 예에서는 QoS 정보가 Streaming인 경우 DSCP는 100010의 값을 가지므로, 이를 확인하면 스트리밍 패킷에 대해서 본 실시예의 재전송 큐를 이용하여 패킷 손실될 패킷을 복구하여 사용할 수 있다. 물론, DSCP의 값은 도 7의 예에 한정되지 않고 다른 형태로 가능하다.
이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
200 패킷전송장치 210 패킷수신부
220 패킷속성 판단부 230 패킷전송부 및 응답수신부
240 무선상태변수 저장부 250 재전송 큐
260 리커버리 타이머

Claims (22)

  1. 무선통신에서 패킷(Packet) 손실(Loss)을 줄이는 방법에 있어서,
    패킷 전송 요청을 수신하는 과정;
    상기 패킷을 전송하는 과정; 및
    상기 패킷을 전송하는 과정에서 상기 패킷의 전송을 실패하는 경우, 전송 실패한 패킷을 재전송 큐(Queue)에 삽입하는 큐 삽입 과정
    을 포함하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 방법.
  2. 제 1 항에 있어서,
    상기 큐 삽입 과정은 상기 패킷을 상기 재전송 큐에 삽입한 후, 상기 재전송 큐로부터 삽입된 패킷을 인출하기 위한 시간인 기 설정된 만료 시간으로 리커버리 타이머(Recovery Timer)를 설정하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 방법.
  3. 제 1 항에 있어서,
    상기 큐 삽입 과정은 상기 재전송 큐에 기 설정된 최대 수용량을 초과하여 상기 패킷을 삽입하려고 하는 경우, 상기 재전송 큐에 가장 먼저 삽입된 패킷 또는 가장 우선순위가 낮은 패킷 중 어느 하나의 패킷을 삭제하는 과정을 포함하는 것을 특징으로 하는 패킷 손실을 줄이는 방법.
  4. 제 1 항에 있어서,
    상기 큐 삽입 과정은 무선상태변수의 값(value)에 근거하여 무선 상태를 확인하고 그 결과 데이터 전송이 가능하지 않은 상태로 판단된 경우, 상기 재전송 큐에 상기 전송 실패한 패킷을 삽입하는 것을 특징으로 하는 무선통신에서 손실된 패킷을 복구하는 방법.
  5. 제 4 항에 있어서,
    상기 무선상태변수 값은 통신의 상대방으로부터 데이터를 수신하는 경우 데이터 전송을 할 수 있는 상태의 값으로 변경하여 전송이 가능하도록 하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 방법.
  6. 제 1 항에 있어서,
    상기 큐 삽입 과정은,
    상기 패킷이 시간에 민감한 패킷(Time Critical Packet)이고, 전송을 실패하는 경우, 기 설정된 횟수만큼 전송을 재시도하는 과정; 및
    상기 재시도하는 과정에서 상기 패킷을 전송하지 못하였더라도 상기 패킷을 상기 재전송 큐에 삽입하지 않고 드랍(Drop)하는 과정
    을 포함하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 방법.
  7. 제 6 항에 있어서,
    상기 재시도하는 과정은 전송 성공율 또는 수신율을 올리기 위한 조건을 변경하는 과정을 포함하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 방법.
  8. 제 6 항에 있어서,
    상기 조건을 변경하는 과정은 전송출력을 높이는 과정을 포함하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 방법.
  9. 제 6 항에 있어서,
    상기 조건을 변경하는 과정은 전송속도(Bitrate)를 낮추는 과정을 포함하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 방법.
  10. 제 6 항에 있어서,
    상기 패킷이 상기 시간에 민감한 패킷인지 여부는 시간민감성판단변수에 근거하여 판단하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 방법.
  11. 무선통신에서 패킷 손실을 줄이는 방법에 있어서,
    리커버리 타이머(Recovery Timer)의 만료 시간 경과 여부를 인지하는 과정;
    특별 RTS(Request To Send) 프레임을 전송하는 과정;
    상기 특별 RTS 프레임에 대한 CTS(Clear To Send) 프레임을 수신하는 과정; 및
    재전송 큐로부터 저장된 패킷을 인출하고, 인출된 패킷을 전송하는 패킷 재전송 과정
    을 포함하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 방법.
  12. 제 11 항에 있어서,
    상기 CTS 프레임을 수신하는 경우, 무선상태변수의 값을 변경하는 과정을 더 포함하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 방법.
  13. 제 11 항에 있어서,
    상기 특별 RTS 프레임은 CTS(Clear To Send) 프레임 및 1개의 SIFS(Short Interframe Space) 시간을 포함하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 방법.
  14. 제 11 항에 있어서,
    상기 특별 RTS(Request To Send) 프레임은 무선 자원의 사용 시간을 포함하고, 상기 무선 자원 사용 시간에는 데이터 전송을 위한 시간이 포함되지 않는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 방법.
  15. 제 11 항에 있어서,
    상기 CTS(Clear To Send) 프레임을 수신하는 과정에서 기 설정된 시간 동안 상기 CTS 프레임을 수신하지 못한 경우, 리커버리 타이머를 다시 설정하는 과정을 포함하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 방법.
  16. 제 15 항에 있어서,
    상기 리커버리 타이머를 다시 설정하는 과정은 상기 재전송 큐에서 기 설정된 시간 이상 저장되어 있는 패킷을 삭제하는 과정을 포함하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 방법.
  17. 제 11 항에 있어서,
    상기 패킷 재전송 과정은 상기 재전송 큐가 복수의 패킷을 포함하고 있는 경우, 상기 재전송 큐에 먼저 삽입된 패킷을 먼저 인출하는 방법(First In First Out; FIFO), 상기 재전송 큐에 나중에 삽입된 패킷을 먼저 인출하는 방법(Last In First Out; LIFO) 및 우선순위(Priority)가 앞선 패킷을 우선하여 인출하는 방법 중 적어도 하나의 방법으로 상기 재전송 큐로부터 저장된 패킷을 인출하여 전송하는 과정을 포함하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 방법.
  18. 무선통신에서 패킷 손실을 줄이는 패킷 전송 장치에 있어서,
    패킷 전송 요청을 수신하는 패킷수신부;
    상기 패킷을 전송하는 패킷전송부;
    상기 패킷의 전송에 대한 확인응답을 수신하는 응답수신부; 및
    상기 패킷의 전송을 실패하는 경우, 전송 실패한 패킷을 저장하기 위한 재전송 큐
    를 포함하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 장치.
  19. 제 18 항에 있어서,
    상기 전송 실패한 패킷이 시간에 민감한 패킷인지 여부를 판단하는 패킷속성 판단부를 더 포함하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 장치.
  20. 제 18 항에 있어서,
    상기 재전송 큐에 저장된 패킷을 기 설정된 시간이 만료된 후에 인출하여 전송하기 위하여 상기 시간이 만료되었음을 알려 주기 위한 리커버리 타이머를 더 포함하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 장치.
  21. 제 18 항에 있어서,
    무선 상태를 나타내는 무선상태변수를 저장하기 위한 무선상태변수 저장부를 더 포함하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 장치.
  22. 무선통신에서 패킷 손실을 줄이는 패킷 전송 장치에 있어서,
    리커버리 타이머의 만료 시간이 경과하였는지 여부를 인지하여 특별 RTS 프레임을 전송하는 패킷전송부; 및
    상기 특별 RTS 프레임 전송에 대한 CTS 프레임을 수신하는 응답수신부를 포함하되,
    상기 패킷전송부는 상기 응답수신부가 상기 CTS 프레임을 수신하는 경우, 재전송 큐로부터 저장된 패킷을 인출하고, 인출한 패킷을 전송하는 것을 특징으로 하는 무선통신에서 패킷 손실을 줄이는 장치.
KR1020130151744A 2013-12-06 2013-12-06 무선통신에서 패킷 손실을 줄이기 위한 방법 및 장치 KR20150066335A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020130151744A KR20150066335A (ko) 2013-12-06 2013-12-06 무선통신에서 패킷 손실을 줄이기 위한 방법 및 장치
PCT/KR2014/007413 WO2015083919A1 (ko) 2013-12-06 2014-08-08 무선통신의 패킷 손실 저감 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130151744A KR20150066335A (ko) 2013-12-06 2013-12-06 무선통신에서 패킷 손실을 줄이기 위한 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20150066335A true KR20150066335A (ko) 2015-06-16

Family

ID=53273643

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130151744A KR20150066335A (ko) 2013-12-06 2013-12-06 무선통신에서 패킷 손실을 줄이기 위한 방법 및 장치

Country Status (2)

Country Link
KR (1) KR20150066335A (ko)
WO (1) WO2015083919A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018117280A1 (ko) * 2016-12-19 2018-06-28 엘지전자(주) 네트워크 장치 및 네트워크 장치의 큐 관리 방법
KR20190046510A (ko) * 2017-10-26 2019-05-07 에스케이텔레콤 주식회사 패킷 손실 복구를 개선하기 위한 장치 및 방법
US11909652B2 (en) 2019-06-17 2024-02-20 Tencent Technology (Shenzhen) Company Limited Method, device and storage medium for quality of service (QoS) flow management of time sensitive data for transmission of ethernet packet filter sets

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10097379B2 (en) 2015-12-23 2018-10-09 Intel Corporation Managing communication congestion for internet of things devices
US10057150B2 (en) 2015-12-23 2018-08-21 Intel Corporation Managing communication congestion for internet of things devices
US9923821B2 (en) 2015-12-23 2018-03-20 Intel Corporation Managing communication congestion for internet of things devices
US10644961B2 (en) 2018-01-12 2020-05-05 Intel Corporation Self-adjusting data processing system

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3450771B2 (ja) * 1998-11-30 2003-09-29 松下電器産業株式会社 データ伝送方法,及びデータ送信装置
JP2002281047A (ja) * 2001-01-10 2002-09-27 Ntt Docomo Inc パケット通信制御装置及び方法、データ通信中継装置及び方法、並びにネットワークシステム
KR101175813B1 (ko) * 2005-06-02 2012-08-24 삼성전자주식회사 무선 메시 네트워크에서의 혼잡 제어 시스템 및 방법
CN101668314B (zh) * 2009-09-01 2012-12-19 中兴通讯股份有限公司 用于无线分布系统的数据传输方法和装置
KR101125933B1 (ko) * 2011-02-25 2012-03-21 제주대학교 산학협력단 그리드형 무선 프로세스 제어 네트워크에서 버퍼링 재전송을 기반으로 하는 메시지 전송 방법 및 노드들

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018117280A1 (ko) * 2016-12-19 2018-06-28 엘지전자(주) 네트워크 장치 및 네트워크 장치의 큐 관리 방법
US11082348B2 (en) 2016-12-19 2021-08-03 Lg Electronics Inc. Network device and queue management method for network device
KR20190046510A (ko) * 2017-10-26 2019-05-07 에스케이텔레콤 주식회사 패킷 손실 복구를 개선하기 위한 장치 및 방법
US11909652B2 (en) 2019-06-17 2024-02-20 Tencent Technology (Shenzhen) Company Limited Method, device and storage medium for quality of service (QoS) flow management of time sensitive data for transmission of ethernet packet filter sets

Also Published As

Publication number Publication date
WO2015083919A1 (ko) 2015-06-11

Similar Documents

Publication Publication Date Title
KR20150066335A (ko) 무선통신에서 패킷 손실을 줄이기 위한 방법 및 장치
US7477675B2 (en) Data communication apparatus
US7944819B2 (en) System and method for transmission and acknowledgment of blocks of data frames in distributed wireless networks
US8630203B2 (en) Data transmission method and apparatus
US8711780B2 (en) Method for sending status information in mobile telecommunications system and receiver of mobile telecommunications
RU2434337C1 (ru) Способ отправки информации статуса в системе мобильной связи и приемник системы мобильной связи
KR100750170B1 (ko) 통신 네트워크에서 데이터 프레임을 효율적으로 전송하는방법 및 장치
US20090052468A1 (en) Apparatus and method for moving a receive window in a radio access network
CA2753192C (en) Method of receiving a point-to-multipoint service in a wireless communication system
JP2018535582A (ja) パケット送信方法およびユーザ機器
US8589586B2 (en) Method and apparatus for managing transmission of TCP data segments
WO2015066836A1 (zh) 视频业务数据传输方法、数据接收装置和数据发送装置
WO2012129922A1 (zh) 一种报文处理方法、转发设备及系统
CN114024914A (zh) 视频数据传输方法、装置及电子设备
CN111435866B (zh) 数据传输方法及相关装置
US9729269B2 (en) Wireless communication system including communication apparatus and data communication method thereof
KR100972166B1 (ko) 무선통신 시스템에서의 프로토콜데이터유닛 순서정렬 방법 및 이를 수행하는 단말
US10321356B2 (en) System and method for performing retransmission of a packet
WO2012083762A1 (zh) 数据传输方法、设备及系统
JP4384676B2 (ja) データ通信装置の制御方法
JP4364763B2 (ja) データ通信装置
JP3434231B2 (ja) Tcp制御方法
US9307441B1 (en) Systems and methods of transferring information to a wireless device
US9698943B2 (en) Receiving unit in a wireless communication network and method for generating an automatic repeat request feedback message
Kim Techniques for end-to-end TCP performance enhancement over wireless networks

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application