KR102025757B1 - 데이터 전송 방법 및 장치, 데이터 수신 방법 및 장치 및 기록 매체 - Google Patents

데이터 전송 방법 및 장치, 데이터 수신 방법 및 장치 및 기록 매체 Download PDF

Info

Publication number
KR102025757B1
KR102025757B1 KR1020130081200A KR20130081200A KR102025757B1 KR 102025757 B1 KR102025757 B1 KR 102025757B1 KR 1020130081200 A KR1020130081200 A KR 1020130081200A KR 20130081200 A KR20130081200 A KR 20130081200A KR 102025757 B1 KR102025757 B1 KR 102025757B1
Authority
KR
South Korea
Prior art keywords
packet
data
detection
data packet
lost
Prior art date
Application number
KR1020130081200A
Other languages
English (en)
Other versions
KR20150007411A (ko
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 KR1020130081200A priority Critical patent/KR102025757B1/ko
Priority to PCT/KR2014/006187 priority patent/WO2015005688A1/en
Priority to EP14823372.9A priority patent/EP3017559B1/en
Priority to US14/327,953 priority patent/US9979512B2/en
Priority to CN201480039602.6A priority patent/CN105379164B/zh
Publication of KR20150007411A publication Critical patent/KR20150007411A/ko
Application granted granted Critical
Publication of KR102025757B1 publication Critical patent/KR102025757B1/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
    • 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/1809Selective-repeat protocols
    • 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/1825Adaptation of specific ARQ protocol parameters according to transmission conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss
    • H04L43/0835One way packet loss
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Communication Control (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Environmental & Geological Engineering (AREA)

Abstract

적어도 하나 이상의 데이터 패킷으로 구성된 프레임을 클라이언트로 전송하고 데이터 패킷의 손실을 감지하기 위한 검출 패킷을 생성하여 데이터 패킷이 상기 프레임을 구성하는 마지막 데이터 패킷인 경우, 검출 패킷을 상기 데이터 패킷의 다음 순서에 전송하고, 마지막 데이터 패킷의 손실 여부는 검출 패킷을 이용하여 판단되는 것을 특징으로 하는 데이터 전송 방법이 개시된다.

Description

데이터 전송 방법 및 장치, 데이터 수신 방법 및 장치 및 기록 매체 {method and apparatus for transmitting and receiving data and medium thereof}
본 발명은 데이터 전송 방법, 데이터 전송 장치, 데이터 수신 방법, 데이터 수신 장치 및 기록매체에 관한 것이다.
네트워크 상에서 데이터를 전송하는 경우, 네트워크의 상태에 따라 데이터의 손실이 발생하는 문제가 발생할 수 있다. 특히, 실시간 스트림 전송 기술에 있어서, 데이터의 손실은 직접적인 화질 저하를 야기할 수 있다. 데이터 손실에 의한 화질 저하를 완화시키기 위한 방법으로 손실된 패킷을 재전송하는 패킷 재전송 방법이 이용되고 있다.
종래에는 패킷을 재전송하는 경우, 손실된 패킷을 요청하는 시간과 이를 다시 재전송하는 시간에 의해 시간 지연이 발생하여, 실시간 스트림 전송 기술에서의 화질 개선에 효과적이지 못하다는 문제가 있다.
본 발명은 실시간 데이터를 전송하는 경우 손실된 데이터를 복원하기 위해 사용되는 패킷 재전송 방법에서, 패킷을 재전송하기 위한 시간 지연을 감소시키기 위한 것이다.
본 발명의 일 실시예에 따른 데이터 전송 방법은, 적어도 하나 이상의
데이터 패킷으로 구성된 프레임을 전송하는 단계; 상기 데이터 패킷의 손실을 감지하기 위한 검출 패킷을 생성하는 단계; 및 상기 데이터 패킷이 상기 프레임을 구성하는 마지막 데이터 패킷인 경우, 상기 검출 패킷을 상기 데이터 패킷의 다음 순서에 전송하는 단계를 포함하고, 상기 마지막 데이터 패킷의 손실 여부는 상기 검출 패킷을 이용하여 판단되는 것을 특징으로 한다.
상기 데이터 전송 방법에 있어서, 상기 마지막 데이터 패킷의 손실 여부는,
상기 검출 패킷의 일련 번호가 상기 검출 패킷 이전에 수신한 데이터 패킷의 일련 번호와 연속되지 않는 경우, 상기 마지막 데이터 패킷이 손실된 것으로 판단되고, 상기 전송 방법은 상기 검출 패킷의 전송 후에 수신된 패킷 전송 요청에 따라, 상기 마지막 데이터 패킷을 상기 클라이언트로 전송하는 단계를 더 포함하는 것을 특징으로 한다.
상기 데이터 전송 방법에 있어서, 상기 데이터 전송 방법은, 상기 재전송 요청된 패킷이 검출 패킷이 아닌 경우, 상기 재전송 요청된 패킷을 전송하는 단계를 더 포함하는 것을 특징으로 한다.
상기 데이터 전송 방법에 있어서, 상기 데이터 전송 방법은, 네트워크 상에서의 패킷 손실률을 분석하는 단계; 및 상기 분석 결과에 기초하여 상기 생성되는 검출 패킷의 개수를 결정하는 단계를 더 포함하는 것을 특징으로 한다.
상기 데이터 전송 방법에 있어서, 상기 검출 패킷의 개수는 상기 패킷 손실률이 높을수록 증가하는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 데이터 수신 방법은, 적어도 하나 이상의 데이터 패킷으로 구성된 프레임과 상기 패킷의 손실을 감지하기 위한 검출 패킷을 수신하는 단계; 상기 데이터 패킷이 상기 프레임의 마지막 데이터 패킷인 경우 상기 수신된 검출 패킷을 이용하여 상기 마지막 데이터 패킷의 손실 여부를 판단하는 단계; 및 상기 판단 결과에 기초하여 상기 마지막 데이터 패킷의 재전송을 요청하는 단계를 포함하는 것을 특징으로 한다.
상기 데이터 수신 방법에 있어서, 상기 판단 단계는, 상기 검출 패킷의 일련 번호가 상기 검출 패킷 이전에 수신한 데이터 패킷의 일련 번호와 연속되지 않는 경우, 상기 데이터 패킷의 재전송을 요청하는 단계를 더 포함하는 것을 특징으로 한다.
상기 데이터 수신 방법에 있어서, 상기 판단 단계는, 상기 손실된 패킷이 검출 패킷인지 여부를 판단하는 단계; 및 상기 손실된 패킷이 검출 패킷이 아닌 경우에, 상기 패킷의 재전송을 요청하는 단계를 더 포함하는 것을 특징으로 한다.
상기 데이터 수신 방법에 있어서, 상기 검출 패킷의 개수는, 상기 네트워크 상에서의 패킷 손실률에 따라 결정되는 것을 특징으로 한다.
상기 데이터 수신 방법에 있어서, 상기 검출 패킷의 개수는 상기 패킷 손실률이 높을수록 증가하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따른, 데이터를 전송하는 전송 장치에 있어서, 상기 프레임은 적어도 하나 이상의 데이터 패킷으로 구성되고, 상기 전송 장치는 상기 데이터 패킷의 손실을 감지하기 위한 검출 패킷을 생성하는 패킷 생성부; 및 상기 데이터 패킷 및 상기 검출 패킷을 전송하는 전송부를 포함하고, 상기 검출 패킷은 상기 데이터 패킷이 상기 프레임을 구성하는 마지막 패킷인 경우, 상기 데이터 패킷의 다음 순서에 전송되고, 상기 마지막 데이터 패킷의 손실 여부는 상기 검출 패킷을 이용하여 판단되는 것을 특징으로 한다.
상기 데이터를 전송하는 전송 장치에 있어서, 상기 마지막 데이터 패킷의 손실 여부는, 상기 검출 패킷의 일련 번호가 상기 검출 패킷 이전에 수신한 데이터 패킷의 일련 번호와 연속되지 않는 경우, 상기 마지막 데이터 패킷이 손실된 것으로 판단되고, 상기 전송부는 상기 검출 패킷의 전송 후에 수신된 패킷 전송 요청에 따라, 상기 마지막 데이터 패킷을 상기 클라이언트로 전송하는 것을 특징으로 한다.
상기 데이터를 전송하는 전송 장치에 있어서, 상기 전송부는, 상기 재전송 요청된 패킷이 검출 패킷이 아닌 경우, 상기 재전송 요청된 패킷을 전송하는 것을 특징으로 한다.
상기 데이터를 전송하는 전송 장치에 있어서, 상기 전송 장치는, 네트워크 상에서의 패킷 손실률을 분석하는 분석부; 및 상기 분석 결과에 기초하여 상기 생성되는 검출 패킷의 개수를 결정하는 결정부를 더 포함하는 것을 특징으로 한다.
상기 데이터를 전송하는 전송 장치에 있어서, 상기 검출 패킷의 개수는 상기 패킷 손실률이 높을수록 증가하는 것을 특징으로 한다.
본 발명의 다른 실시예에 따른 데이터 수신 장치는 적어도 하나 이상의 데이터 패킷으로 구성된 프레임과 상기 데이터 패킷의 손실을 감지하기 위한 검출 패킷을 수신하는 수신부; 상기 데이터 패킷이 상기 프레임의 마지막 패킷인 경우 상기 수신된 검출 패킷을 이용하여 상기 마지막 데이터 패킷의 손실 여부를 판단하는 판단부; 및 상기 판단 결과에 기초하여 상기 마지막 데이터 패킷의 재전송을 요청하는 요청부를 포함하는 것을 특징으로 한다.
상기 데이터 수신 장치에 있어서, 상기 요청부는, 상기 검출 패킷의 일련 번호가 상기 검출 패킷 이전에 수신한 데이터 패킷의 일련 번호와 연속되지 않는 경우, 상기 데이터 패킷의 재전송을 요청하는 것을 특징으로 한다.
상기 데이터 수신 장치에 있어서, 상기 판단부는, 상기 손실된 패킷이 검출 패킷인지 여부를 판단하고, 상기 요청부는, 상기 손실된 패킷이 검출 패킷이 아닌 경우에, 상기 패킷의 재전송을 요청하는 것을 특징으로 한다.
상기 데이터 수신 장치에 있어서, 상기 검출 패킷의 개수는, 상기 네트워크 상에서의 패킷 손실률에 따라 결정되는 것을 특징으로 한다.
상기 데이터 수신 장치에 있어서, 상기 검출 패킷의 개수는 상기 패킷 손실률이 높을수록 증가하는 것을 특징으로 한다.
도 1은 데이터 패킷이 손실되는 경우 재전송 방법을 이용하여 손실된 데이터 패킷을 복구하는 과정을 도시한 개념도이다.
도 2는 본 발명의 일 실시예에 따른 전송 장치를 설명하기 위한 블록도이다.
도 3은 데이터 패킷의 손실이 발생하는 경우, 데이터 패킷 손실이 감지되는 시간에 대한 차이를 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따라 검출 패킷을 전송하여 데이터 패킷의 손실을 감지하는 과정을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 데이터 전송 방법을 설명하기 위한 흐름도이다.
도 6 은 본 발명의 일 실시예에 따른 데이터 수신 장치를 도시한 블록도 이다.
도 7은 본 발명의 일 실시예에 따른 데이터 수신 방법을 설명하기 위한 흐름도이다.
도 8은 본 발명의 다른 실시예에 따른 데이터 전송 장치를 도시한 블록도이다.
도 9는, 네트워크 상태를 고려하여 검출 패킷을 생성하는 과정을 설명하기 위한 도면이다.
도 10은 본 발명의 일 실시예에 따른 네트워크 상태를 고려하여 검출 패킷을 전송하는 방법을 설명하기 위한 흐름도이다.
도 11은 본 발명의 일 실시예에 따라 네트워크 상태를 고려하여 데이터를 수신하는 방법에 대해 설명하기 위한 흐름도이다.
이하에서는 도면을 참조하여 본 발명의 실시예들을 상세히 설명한다. 본 발명의 하기 실시예는 본 발명을 구체화하기 위한 것일 뿐 본 발명의 권리 범위를 제한하거나 한정하지 않는다. 또한, 본 발명의 상세한 설명 및 실시예로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 용이하게 유추할 수 있는 것은 본 발명의 권리범위에 속하는 것으로 해석된다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.
도 1은 데이터 패킷이 손실되는 경우 재전송 방법을 이용하여 손실된 데이터 패킷을 복구하는 과정을 도시한 개념도이다.
데이터 전송 장치(110)는 적어도 하나 이상의 데이터 패킷으로 구성된 프레임을 데이터 수신 장치(120)로 전송할 수 있다. 데이터 수신 장치(120)는 데이터 전송 장치(110)로부터 적어도 하나 이상의 데이터 패킷으로 구성된 프레임을 수신할 수 있다. 한편, 전송된 데이터 패킷에는 데이터 수신 장치(120)가 패킷 손실이나 패킷 순서 바뀜(reordering)을 감지할 수 있도록 일련 번호가 포함될 수 있다.
단계 130에서 데이터 전송 장치(110)는 데이터 수신 장치(120)에 일련 번호가 n인 데이터 패킷을 전송한다. 데이터 수신 장치(120)는 데이터 전송 장치(110)가 전송한 데이터 패킷을 수신하고, 데이터 패킷에 포함된 일련 번호 정보를 통해, 수신한 데이터 패킷의 일련 번호가 n이라는 것을 확인할 수 있다.
단계 140에서 데이터 전송 장치(110)는 데이터 수신 장치(120)에 일련 번호가 n+1인 데이터 패킷을 전송한다. 여기에서 일련 번호가 n+1인 데이터 패킷이 손실되는 것을 가정해 볼 수 있다.
단계 150에서 데이터 전송 장치(110)는 데이터 수신 장치(120)에 일련 번호가 n+2인 데이터 패킷을 전송한다. 데이터 수신 장치(120)는 데이터 전송 장치(110)가 전송한 데이터 패킷을 수신하고, 데이터 패킷에 포함된 일련 번호 정보를 통해, 수신한 데이터 패킷의 일련 번호가 n+2라는 것을 확인할 수 있다.
한편, 데이터 수신 장치(120)는 이전에 수신한 데이터 패킷의 일련번호 n과 현재 수신한 데이터 패킷의 일련 번호 n+2가 연속적이지 않다는 것을 확인할 수 있다. 수신한 데이터 패킷의 일련 번호가 연속적이지 않은 경우, 중간에 소정의 데이터 패킷이 손실되었다는 것을 의미할 수 있다. 구체적으로, 데이터 수신 장치(120)가 수신한 데이터 패킷의 일련번호가 n, n+2인 경우, 일련번호가 n+1인 데이터 패킷이 손실되었다는 것을 감지할 수 있다.
단계 160에서 데이터 수신 장치(120)는 데이터 전송 장치(110)에 손실된 데이터 패킷, 즉 일련 번호가 n+1인 데이터 패킷의 재전송을 요청할 수 있다. 재전송 요청시, 데이터 수신 장치(120)는 데이터 전송 장치(110)에 손실된 데이터 패킷의 일련 번호 정보를 이용하여, 재전송 요청하는 데이터 패킷을 특정할 수 있다.
단계 170에서 데이터 전송 장치(110)는 데이터 수신 장치(120)가 요청한 데이터 패킷을 재전송 할 수 있다. 일예로 데이터 전송 장치(110)가 데이터 수신 장치(120)로부터 일련번호 n+1인 데이터의 재전송 요청을 수신한 경우, 데이터 전송 장치(110)는 재전송 요청에 따라 일련 번호 n+1인 데이터 패킷을 데이터 수신 장치(120)에 전송할 수 있다.
이러한 일련의 과정들을 통해서 데이터 전송 장치(110)와 데이터 수신 장치(120) 간에 데이터 전송시 손실된 패킷을 감지하고, 손실된 패킷을 복원할 수 있다.
도 2는 본 발명의 일 실시예에 따른 데이터 전송 장치(200)를 설명하기 위한 블록도이다.
도 2를 참고하면, 본 발명의 일 실시예에 따른 데이터 전송 장치(200)는 패킷 생성부(210) 및 전송부(220)를 포함할 수 있다. 도 2의 데이터 전송 장치(200)는 도 1의 전송 장치(100)와 동일한 기능을 수행한다.
도 2에 도시된 데이터 전송 장치(200)에는 본 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 2에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
패킷 생성부(210)는 데이터 패킷의 손실을 감지하기 위한 검출 패킷을 생성할 수 있다. 여기에서, 검출 패킷은 본 발명의 일 실시예에 따라 프레임을 구성하는 마지막 데이터 패킷이 손실되었는지 여부를 판단하기 위해, 마지막 데이터 패킷의 다음 순서에 전송되는 패킷이다.
데이터를 전송하는 데 있어, 비디오 영상의 경우와 같이 데이터가 프레임 단위로 전송되는 경우, 프레임의 마지막 데이터 패킷이 손실되었는지 여부를 확인하기 위해 많은 시간이 소요될 수 있다.
손실된 데이터 패킷을 검출하는 방법으로, 데이터 패킷을 수신하는 데이터 수신 장치(120)에서 이전에 수신한 데이터 패킷의 일련번호와 현재 수신한 데이터 패킷의 일련번호를 비교하는 방법이 사용될 수 있다. 예를 들어, 이전에 수신한 데이터 패킷의 일련번호와 현재 수신한 데이터 패킷의 일련번호가 연속적이지 않을 경우, 데이터 수신 장치(120)는 데이터 패킷이 손실되었다고 판단할 수 있다.
프레임 단위로 데이터가 전송되는 경우, 데이터 수신 장치(120)는 N+1 프레임의 첫번째 패킷을 수신한 후에야 N 프레임을 구성하는 마지막 데이터 패킷의 손실 여부를 확인할 수 있다. 따라서, 각 프레임의 마지막 데이터 패킷의 경우, 손실 여부를 감지하는 시간이, 다른 데이터 패킷에 비해 연장될 수 있다.
본 발명의 일 실시예에 따르면, N 프레임을 구성하는 마지막 패킷을 데이터 수신 장치(120)에 전송한 다음 검출 패킷을 전송함으로써, N+1 프레임의 첫번째 패킷을 수신할 때까지 기다리지 않고도 N 프레임의 마지막 데이터 패킷의 손실 여부를 감지할 수 있다.
한편, 검출 패킷은 데이터 수신 장치(120)가 검출 패킷을 데이터 패킷과 식별할 수 있도록, 패킷 타입을 나타내는 식별 정보를 포함할 수 있다. 한편, 이는 본 발명의 일 실시예일 뿐, 별도의 패킷 타입에 대한 식별 정보 없이 검출 패킷이 포함하고 있는 정보 만으로도 검출 패킷을 식별할 수 있다. 예를 들어, 검출 패킷은 헤더에 관한 정보만을 포함하고, 페이로드 영역에는 정보를 저장하지 않으므로, 페이로드 영역에서의 데이터 유무를 기준으로 데이터 패킷과 검출 패킷을 식별할 수도 있다.
전송부(220)는 적어도 하나 이상의 데이터 패킷으로 구성된 프레임을 데이터 수신 장치(120)에 전송할 수 있다. 또한, 전송부(220)는 현재 전송하는 데이터 패킷이 프레임을 구성하는 마지막 데이터 패킷인 경우, 마지막 데이터 패킷의 다음 순서에, 검출 패킷을 데이터 수신 장치(120)로 전송할 수 있다.
한편, 검출 패킷은 데이터 패킷과 같은 채널을 통해 전송(이하, In-Band)될 수도 있고, 데이터 패킷과 다른 채널을 통해 전송(이하, Out-Band)될 수도 있다. In-Band 방식을 사용하는 경우, 데이터 수신 장치(120)에서 검출 패킷을 식별할 수 있어야 한다. 예를 들어, 검출 패킷임을 식별할 수 있는 식별 정보를 검출 패킷에 삽입하는 방법을 사용할 수 있다.
본 발명의 일 실시예에 따른 마지막 데이터 패킷의 손실 여부는 검출 패킷을 이용하여 판단될 수 있다. 구체적으로 데이터 수신 장치(120)가 수신한 검출 패킷의 일련 번호가 검출 패킷 이전에 수신한 데이터 패킷의 일련 번호와 연속되지 않는 경우, 마지막 데이터 패킷이 손실된 것으로 판단할 수 있다. 마지막 데이터 패킷이 손실된 것으로 판단된 경우, 데이터 수신 장치(120)는 마지막 데이터 패킷의 재전송을 데이터 전송 장치(110)에 요청할 수 있다. 전송부(220)는 데이터 수신 장치(120)의 패킷 재전송 요청에 따라 손실된 데이터 패킷을 데이터 수신 장치(120)에 재전송 할 수 있다.
도 3은 데이터 패킷의 손실이 발생하는 경우, 데이터 패킷 손실이 감지되는 시간에 대한 차이를 설명하기 위한 도면이다.
도 3의 (a)를 참고하면, N번째 프레임을 구성하는 적어도 하나 이상의 데이터 패킷 중 일부가 손실되는 경우, 데이터 수신 장치(120)는 다음에 전송되는 패킷의 일련 번호를 참고하여, 데이터 패킷의 손실 여부를 결정할 수 있다.
예를 들어, 일련번호가 a인 데이터 패킷이 손실되었다고 가정해 볼 수 있다. 데이터 수신 장치(120)는 일련번호가 a인 데이터 패킷이 손실됨에 따라 일련번호가 a-1인 데이터 패킷을 수신한 후에, 일련번호가 a+1인 데이터 패킷을 수신하게 된다. 데이터 수신 장치(120)는 수신한 데이터 패킷의 일련번호가 연속적이지 않으므로 일련번호가 a인 데이터 패킷이 손실되었다는 것을 감지할 수 있다.
도 3의 (a)의 경우, 손실된 패킷이 프레임을 구성하는 마지막 패킷이 아니므로, 손실된 데이터 패킷이 감지되는 시간은 데이터 패킷이 하나의 프레임 내에서 순차적으로 전송되는 시간 간격만큼 소요될 수 있다.
도 3의 (b)를 참고하면, 도 3의 (b)는 N번째 프레임을 구성하는 적어도 하나 이상의 데이터 패킷 중, 마지막 패킷이 손실되는 경우이다.
예를 들어, 일련번호가 b인 마지막 데이터 패킷이 손실되었다고 가정해 볼 수 있다. 데이터 수신 장치(120)는 일련번호가 b인 데이터 패킷이 손실되었으므로, 현재 일련번호가 b-1인 데이터 패킷을 수신한 상태이다.
검출 패킷을 이용하지 않는 경우, 데이터 수신 장치(120)가 일련번호가 b인 마지막 데이터 패킷이 손실되었다는 것을 감지하기 위해서는 다음 프레임인 N+1번째 프레임의 첫번째 데이터 패킷을 수신해야 한다. 즉, N+1번째 프레임이 수신될 때까지 마지막 데이터 패킷의 손실을 감지할 수 없다. 따라서, 손실된 데이터 패킷을 감지하기 위해 소요되는 시간이 프레임을 구성하는 다른 데이터 패킷들에 비해 많이 소요될 수 있다.
본 발명의 일 실시예에 따르면, 프레임을 구성하는 마지막 데이터 패킷 이후에 검출 패킷을 추가적으로 데이터 수신 장치(120)에 전송함으로써, 마지막 데이터 패킷의 손실 여부를 보다 신속하게 감지할 수 있다.
도 4는 본 발명의 일 실시예에 따라 검출 패킷을 전송하여 데이터 패킷의 손실을 감지하는 과정을 설명하기 위한 도면이다.
도 4를 참고하면, N번째 프레임을 구성하는 마지막 데이터 패킷을 전송한 후에, 검출 패킷을 추가적으로 전송할 수 있다. 마지막 데이터 패킷의 일련번호가 b인 경우 검출 패킷의 일련 번호는 b+1이 될 수 있다.
예를 들어, 일련번호가 b인 마지막 데이터 패킷이 손실되었다고 가정해 볼 수 있다. 검출 패킷을 전송하지 않는 경우에는, 마지막 데이터 패킷의 손실을 감지하기 위해, 다음 N+1번째 프레임을 수신할 때까지 기다려야 한다. 하지만, 검출 패킷을 사용하는 경우, 데이터 수신 장치(120)는 일련번호가 b인 데이터 패킷이 손실됨에 따라 일련번호가 b-1인 데이터 패킷을 수신한 후에, 일련번호가 b+1인 검출 패킷을 수신하게 된다. 데이터 수신 장치(120)는 수신한 데이터 패킷의 일련번호가 연속적이지 않으므로 일련번호가 b인 데이터 패킷이 손실되었다는 것을 감지할 수 있다.
검출 패킷을 추가적으로 전송함에 따라, 손실된 마지막 데이터 패킷이 감지되는 시간을 데이터 패킷이 하나의 프레임 내에서 순차적으로 전송되는 시간 간격만큼으로 단축시킬 수 있다.
즉, 검출 패킷을 추가하여 전송함으로써, 프레임 단위의 데이터 전송 방법에 있어 마지막 패킷의 손실 여부를 보다 빠르게 감지할 수 있다.
도 5는 본 발명의 일 실시예에 따른 데이터 전송 방법을 설명하기 위한 흐름도이다.
단계 510에서, 데이터 전송 장치(110)는 적어도 하나 이상의 패킷으로 구성된 프레임을 데이터 수신 장치(120)로 전송할 수 있다. 데이터 전송 장치(110)는 데이터 수신 장치(120)로 전송한 데이터 패킷의 일정 분량을 일정 시간 동안 보관하는 장치를 포함할 수 있다. 한편, 전송된 데이터 패킷에는 데이터 수신 장치(120)가 패킷 손실이나 패킷 순서 바뀜(reordering)을 감지할 수 있도록 일련 번호가 포함될 수 있다.
단계 520에서, 데이터 전송 장치(110)는 패킷의 손실을 감지하기 위한 검출 패킷을 생성할 수 있다. 검출 패킷은 데이터 수신 장치(120)가 검출 패킷을 데이터 패킷과 식별할 수 있도록 검출 패킷의 필드에 패킷 타입을 나타내는 식별 정보를 포함할 수 있다. 한편, 이는 본 발명의 일 실시예일 뿐, 본 발명의 검출 패킷의 형식이 이에 한정되는 것은 아니다. 예를 들어, 검출 패킷이 헤더에 관한 정보만을 포함하고, 페이로드 영역에는 정보를 저장하지 않도록 설정하여, 페이로드 영역에서의 데이터 유무를 기준으로 데이터 패킷과 검출 패킷을 식별할 수도 있다.
단계 530에서, 프레임을 구성하는 데이터 패킷이 마지막 데이터 패킷인 경우, 검출 패킷을 마지막 데이터 패킷의 다음 순서에 데이터 수신 장치(120)로 전송할 수 있다. 데이터 수신 장치(120)가 수신한 검출 패킷의 일련 번호가 검출 패킷 이전에 수신한 데이터 패킷의 일련 번호와 연속되지 않는 경우, 마지막 데이터 패킷이 손실된 것으로 판단할 수 있다.
마지막 데이터 패킷이 손실된 것으로 판단된 경우, 데이터 수신 장치(120)는 마지막 데이터 패킷의 재전송을 데이터 전송 장치(110)에 요청할 수 있다. 전송부(120)는 데이터 수신 장치(120)의 패킷 재전송 요청에 따라 손실된 데이터 패킷을 데이터 수신 장치(120)로 재전송 할 수 있다.
도 6 은 본 발명의 일 실시예에 따른 데이터 수신 장치(600)를 도시한 블록도 이다.
도 6을 참고하면, 본 발명의 일 실시예에 따른 데이터 수신 장치(600)는 수신부(610), 판단부(620) 및 요청부(630)를 포함할 수 있다. 본 발명의 일 실시예에 따른 데이터 수신 장치(600)는 도 1의 데이터 수신 장치(120)와 동일한 기능을 수행한다.
도 6의 데이터 수신 장치(600)에는 본 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 6에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
수신부(610)는 적어도 하나 이상의 데이터 패킷으로 구성된 프레임과 프레임을 구성하는 마지막 데이터 패킷의 손실을 감지하기 위한 검출 패킷을 수신할 수 있다. 여기에서 검출 패킷은 본 발명의 일 실시예에 따라 프레임을 구성하는 마지막 데이터 패킷이 손실되었는지 여부를 판단하기 위해, 마지막 데이터 패킷의 다음 순서에 전송되는 패킷이다.
판단부(620)는 데이터 전송 장치(110)로부터 수신한 검출 패킷을 이용하여 마지막 데이터 패킷의 손실 여부를 판단할 수 있다. 구체적으로, 데이터 수신 장치(600)에서 이전에 수신한 데이터 패킷의 일련번호와 현재 수신한 데이터 패킷의 일련번호를 비교하는 방법이 사용될 수 있다. 예를 들어, 이전에 수신한 데이터 패킷의 일련번호와 현재 수신한 데이터 패킷의 일련번호가 연속적이지 않을 경우, 데이터 수신 장치(600)는 데이터 패킷이 손실되었다고 판단할 수 있다.
그러므로 데이터 수신 장치(600)가 데이터 전송 장치(110)로부터 수신한 검출 패킷의 일련 번호와 프레임을 구성하는 마지막 데이터 패킷의 일련번호가 연속적이지 않을 경우, 데이터 수신 장치(600)는 마지막 데이터 패킷이 손실되었다고 판단할 수 있다.
요청부(630)는 판단부(620)의 판단 결과에 기초하여 데이터 전송 장치(110)에 마지막 데이터 패킷의 재전송을 요청할 수 있다. 구체적으로, 판단부(620)에서 데이터 패킷이 손실되었다고 판단된 경우, 데이터 전송 장치(110)에 손실된 패킷의 재전송을 요청할 수 있다.
도 7은 본 발명의 일 실시예에 따른 데이터 수신 방법을 설명하기 위한 흐름도이다.
단계 710에서, 데이터 수신 장치(120)는 적어도 하나 이상의 데이터 패킷으로 구성된 프레임과 데이터 패킷의 손실을 감지하기 위한 검출 패킷을 수신할 수 있다. 수신된 적어도 하나 이상의 데이터 패킷과 검출 패킷에는 전송된 데이터 수신 장치(120)가 패킷 손실이나 패킷 순서 바뀜(reordering)을 감지할 수 있도록 일련 번호가 포함될 수 있다.
단계 720에서, 수신된 데이터 패킷이 프레임을 구성하는 마지막 데이터 패킷인 경우, 단계 710에서 수신된 검출 패킷을 이용하여 패킷의 손실 여부를 판단할 수 있다.
구체적으로, 데이터 수신 장치(120)에서 이전에 수신한 데이터 패킷의 일련번호와 현재 수신한 데이터 패킷의 일련번호를 비교하는 방법이 사용될 수 있다. 예를 들어, 이전에 수신한 데이터 패킷의 일련번호와 현재 수신한 데이터 패킷의 일련번호가 연속적이지 않을 경우, 데이터 수신 장치(120)는 데이터 패킷이 손실되었다고 판단할 수 있다.
그러므로 데이터 수신 장치(120)가 데이터 전송 장치(110)로부터 수신한 검출 패킷의 일련 번호와 프레임을 구성하는 마지막 데이터 패킷의 일련번호가 연속적이지 않을 경우, 데이터 수신 장치(120)는 마지막 데이터 패킷이 손실되었다고 판단할 수 있다.
단계 730에서, 수신 장치(300)는 단계 720에서 판단한 결과에 기초하여 데이터 전송 장치(110)에 손실된 마지막 데이터 패킷의 재전송을 요청할 수 있다. 구체적으로, 단계 720에서, 데이터 패킷이 손실되었다고 판단된 경우, 데이터 전송 장치(110)에 손실된 패킷의 재전송을 요청할 수 있다.
도 8은 본 발명의 다른 실시예에 따른 데이터 전송 장치(200)를 도시한 블록도이다.
도 8을 참고하면, 본 발명의 다른 실시예에 따른 데이터 전송 장치(200)는 패킷 생성부(210), 전송부(220), 분석부(230) 및 결정부(240)를 포함할 수 있다. 도 8의 데이터 전송 장치(200)는 도 1의 전송 장치(100)와 동일한 기능을 수행한다.
도 8에 도시된 데이터 전송 장치(200)에는 본 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 8에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
패킷 생성부(210)는 데이터 패킷의 손실을 감지하기 위한 검출 패킷을 생성할 수 있다.
전송부(220)는 적어도 하나 이상의 데이터 패킷으로 구성된 프레임을 데이터 수신 장치(120)에 전송할 수 있다. 또한, 전송부(220)는 현재 전송하는 데이터 패킷이 프레임을 구성하는 마지막 데이터 패킷인 경우, 마지막 데이터 패킷의 다음 순서에 검출 패킷을 데이터 수신 장치(120)로 전송할 수 있다.
분석부(230)는 네트워크 상에서의 패킷 손실률을 분석할 수 있다. 네트워크의 패킷 손실률이 증가할 경우, 프레임을 구성하는 마지막 데이터 패킷 뿐만 아니라, 마지막 데이터 패킷의 다음 순서에 전송되는 검출 패킷이 함께 손실될 가능성이 높아진다. 마지막 데이터 패킷과 검출 패킷이 함께 손실된 경우, 데이터 수신 장치(120)는 다음 프레임이 데이터 수신 장치(120)에 수신될 때까지 마지막 데이터 패킷의 손실 여부를 감지할 수 없게된다.
결정부(240)는 분석부에 의해 분석된 네트워크 상에서의 패킷 손실률에 기초하여 생성되는 검출 패킷의 개수를 결정할 수 있다. 검출 패킷의 개수는 패킷 손실률이 높을수록 증가할 수 있다.
도 9는, 네트워크 상태를 고려하여 검출 패킷을 생성하는 과정을 설명하기 위한 도면이다.
도 9를 참고하면, 본 발명의 일 실시예에 따른 데이터 전송 장치(200)는 네트워크 상에서의 패킷 손실률에 기초하여 생성되는 검출 패킷의 개수를 결정할 수 있다. 검출 패킷의 개수는 네트워크의 패킷 손실률이 높을수록 증가할 수 있다.
예를 들어, 네트워크 상태를 분석한 결과, 4개의 검출 패킷이 생성되었다고 가정해 볼 수 있다.
일예로, 4개의 검출 패킷 중 일부 패킷들이 손실되는 경우가 발생할 수 있다. 여기에서 4개의 검출 패킷들의 일련번호는 프레임을 구성하는 마지막 데이터 패킷의 일련번호인 b를 기준으로 하여, 각각 b+1, b+2, b+3 및 b+4일 수 있다. 데이터 전송 장치(110)에서 데이터 수신 장치(120)로 전송되는 과정에서 일련번호가 b+2 및 b+3인 검출 패킷이 손실되었다고 가정해 볼 수 있다.
데이터 수신 장치(120)는 일련번호가 b+1인 검출 패킷을 수신한 후에 곧바로 일련번호가 b+4인 검출 패킷을 수신할 수 있다. 데이터 수신 장치(120)는 수신한 검출 패킷들의 일련번호가 연속적이지 않다는 사실을 통해 패킷의 손실을 감지할 수 있다. 데이터 수신 장치(120)는 패킷의 손실을 감지한 후에, 손실된 패킷이 데이터 패킷인지 또는 검출 패킷인지 여부를 판단할 수 있다.
판단 결과 일련번호가 b+2 및 b+3인 패킷은 검출 패킷이므로, 데이터 전송 장치(110)에 손실된 패킷의 재전송을 요청하지 않을 수 있다. 검출 패킷의 경우, 데이터 정보를 포함하고 있지 않으므로, 데이터 전송 장치(110)에 재전송을 요청하지 않을 수 있다.
한편, 다른 예로 마지막 데이터 패킷과 일부 검출 패킷이 손실되는 경우가 발생할 수 있다. 도 9을 참고하면, 일련번호가 b인 마지막 데이터 패킷과 일련 번호가 b+1인 검출 패킷이 손실되었다고 가정해 볼 수 있다. 검출 패킷이 하나만 전송되는 경우에는, 이러한 경우에 마지막 데이터 패킷이 손실되었음을 신속하게 감지하기 어려울 수 있다. 하지만, 복수개의 검출 패킷을 생성하는 경우에는 하나의 검출 패킷을 생성하는 경우에 비해, 보다 안정적으로 마지막 데이터 패킷의 손실을 감지할 수 있다.
데이터 수신 장치(120)는 일련번호가 b-1인 데이터 패킷을 수신한 이후로, 일련 번호가 b+2인 검출 패킷을 수신할 수 있다. 데이터 수신 장치(120)는 수신한 검출 패킷들의 일련번호가 연속적이지 않다는 사실을 통해 패킷의 손실을 감지할 수 있다. 이 경우, 데이터 패킷에 대해서는 데이터 전송 장치(110)에게 재전송을 요청할 수 있다. 즉, 일련 번호가 b인 데이터 패킷에 대해 데이터 수신 장치(120)는 데이터 전송 장치(110)에게 재전송을 요청할 수 있다. 다만, 검출 패킷에 대해서는 데이터 전송 장치(110)에게 재전송을 요청하지 않을 수 있다. 즉, 일련 번호가 b+1인 데이터 패킷에 대해 데이터 수신 장치(120)는 데이터 전송 장치(110)에 재전송을 요청하지 않을 수 있다.
도 10은 본 발명의 일 실시예에 따른 네트워크 상태를 고려하여 검출 패킷을 전송하는 방법을 설명하기 위한 흐름도이다.
단계 1010에서, 데이터 전송 장치(110)는 네트워크 상태를 모니터링 할 수 있다. 네트워크 상태에 대한 정보에는 패킷 손실률에 대한 정보가 포함될 수 있다. 여기에서 패킷 손실률이란 데이터 전송 장치(110)에서 전송된 패킷이 데이터 수신 장치(120)에 수신되지 못하고 손실될 확률이다.
단계 1020에서, 데이터 전송 장치(110)는 단계 1010에서 모니터링한 네트워크 상태에 기초하여 생성되는 검출 패킷의 개수를 결정할 수 있다. 검출 패킷의 개수는 네트워크 상에서의 패킷 손실률이 높을수록 증가할 수 있다.
단계 1030에서, 데이터 전송 장치(110)는 단계 1020에서 네트워크 상태를 기초로 결정된 검출 패킷의 개수에 따라 검출 패킷을 생성할 수 있다.
단계 1040에서 데이터 전송 장치(110)는 단계 1030에서 생성된 적어도 하나 이상의 검출 패킷을 프레임을 구성하는 마지막 데이터 패킷의 다음 순서에 전송할 수 있다. 데이터 수신 장치(120)가 수신한 검출 패킷의 일련 번호가 검출 패킷 이전에 수신한 데이터 패킷의 일련 번호와 연속되지 않는 경우, 마지막 데이터 패킷이 손실된 것으로 판단될 수 있다.
본 발명의 다른 실시예에 따르면, 수신 장치(600, 도6 참조)는 네트워크의 상태에 따라 복수개의 검출 패킷을 수신할 수도 있다.
수신부(610)는 적어도 하나 이상의 데이터 패킷으로 구성된 프레임과 프레임을 구성하는 마지막 데이터 패킷의 손실을 감지하기 위한 검출 패킷을 수신할 수 있다. 예를 들어, 네트워크의 패킷 손실률이 증가할 경우, 데이터 전송 장치(110)에서 송신되는 검출 패킷이 증가할 수 있다.
판단부(620)는 데이터 전송 장치(110)로부터 수신한 검출 패킷을 이용하여 마지막 데이터 패킷의 손실 여부를 판단할 수 있다. 예를 들어, 데이터 수신 장치(600)가 데이터 전송 장치(110)로부터 수신한 검출 패킷의 일련 번호와 프레임을 구성하는 마지막 데이터 패킷의 일련번호가 연속적이지 않을 경우, 데이터 수신 장치(600)는 마지막 데이터 패킷이 손실되었다고 판단할 수 있다.
판단부(620)에서는 패킷이 손실되었다는 사실이 확인된 후에, 손실된 패킷이 데이터 패킷인지 또는 검출 패킷인지 여부를 판단할 수 있다.
요청부(630)는 손실된 패킷이 데이터 패킷이 손실된 경우에 데이터 전송 장치(110)에 손실된 패킷의 재전송을 요청할 수 있다. 판단부(620)의 판단 결과, 손실된 패킷이 데이터 패킷인 경우, 요청부(630)는 데이터 전송 장치(110)에 손실된 패킷에 대한 재전송을 요청할 수 있다. 반면에 손실된 패킷이 검출 패킷인 경우, 요청부(630)는 데이터 전송 장치(110)에 손실된 패킷에 대한 재전송을 요청하지 않을 수 있다. 검출 패킷은 데이터 패킷의 손실 여부를 판단하기 위한 것으로, 헤더 정보 이외에 별도의 데이터 정보를 포함하지 않기 때문이다.
도 11은 본 발명의 일 실시예에 따라 네트워크 상태를 고려하여 데이터를 수신하는 방법에 대해 설명하기 위한 흐름도이다. 도 11과 관련된 본 발명의 일 실시예에서는, 네트워크 상태를 고려하여, 복수개의 검출 패킷이 데이터 전송 장치(110)로부터 전송되었다고 가정한다.
단계 1110에서, 데이터 수신 장치(120)는 수신된 검출 패킷을 이용하여 패킷의 손실 여부를 판단할 수 있다. 한편, 본 발명의 일 실시예에 따르면, 네트워크의 패킷 손실률이 증가하는 경우에 데이터 수신 장치(120)는 복수개의 검출 패킷을 수신할 수 있다.
단계 1120에서, 데이터 수신 장치(120)는 단계 1110에서 패킷 손실이 감지됨에 따라 손실된 패킷이 데이터 패킷인지 또는 검출 패킷인지 여부를 판단할 수 있다.
단계 1130은 단계 1120에서의 판단 결과, 손실된 패킷이 데이터 패킷인 경우이다. 단계 1130에서 데이터 수신 장치(120)는 데이터 전송 장치(110)에 손실된 패킷에 대한 재전송을 요청할 수 있다.
단계 1140은 단계 1120에서의 판단 결과, 손실된 패킷이 검출 패킷인 경우이다. 단계 1140에서 데이터 수신 장치(600)는 데이터 전송 장치(110)에 손실된 패킷에 대한 재전송을 요청하지 않는다. 검출 패킷은 데이터 패킷의 손실 여부를 판단하기 위한 것으로, 헤더 정보 이외에 별도의 데이터 정보를 포함하지 않기 때문이다.
단계 1150은, 수신 장치(300)가 손실 패킷을 감지하지 않은 경우로, 데이터 전송 장치(110)로부터 적어도 하나 이상의 데이터 패킷으로 구성된 프레임을 수신 완료하게 된다.
본 발명에 따른 장치는 프로세서, 프로그램 데이터를 저장하고 실행하는 메모리, 디스크 드라이브와 같은 영구 저장부(permanent storage), 외부 장치와 통신하는 통신 포트, 터치 패널, 키(key), 버튼 등과 같은 사용자 인터페이스 장치 등을 포함할 수 있다. 소프트웨어 모듈 또는 알고리즘으로 구현되는 방법들은 상기 프로세서상에서 실행 가능한 컴퓨터가 읽을 수 있는 코드들 또는 프로그램 명령들로서 컴퓨터가 읽을 수 있는 기록 매체 상에 저장될 수 있다. 여기서 컴퓨터가 읽을 수 있는 기록 매체로 마그네틱 저장 매체(예컨대, ROM(read-only memory), RAM(random-access memory), 플로피 디스크, 하드 디스크 등) 및 광학적 판독 매체(예컨대, 시디롬(CD-ROM), 디브이디(DVD: Digital Versatile Disc)) 등이 있다. 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템들에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행될 수 있다. 매체는 컴퓨터에 의해 판독가능하며, 메모리에 저장되고, 프로세서에서 실행될 수 있다.
본 발명에서 인용하는 공개 문헌, 특허 출원, 특허 등을 포함하는 모든 문헌들은 각 인용 문헌이 개별적으로 및 구체적으로 병합하여 나타내는 것 또는 본 발명에서 전체적으로 병합하여 나타낸 것과 동일하게 본 발명에 병합될 수 있다.
본 발명의 이해를 위하여, 도면에 도시된 바람직한 실시 예들에서 참조 부호를 기재하였으며, 본 발명의 실시 예들을 설명하기 위하여 특정 용어들을 사용하였으나, 특정 용어에 의해 본 발명이 한정되는 것은 아니며, 본 발명은 당업자에 있어서 통상적으로 생각할 수 있는 모든 구성 요소들을 포함할 수 있다.
본 발명은 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 발명은 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩업 테이블(look-up table) 등과 같은 직접 회로 구성들을 채용할 수 있다. 본 발명에의 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있는 것과 유사하게, 본 발명은 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 발명은 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. “매커니즘”, “요소”, “수단”, “구성”과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다. 상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.
본 발명에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, “필수적인”, “중요하게” 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.
본 발명의 명세서(특히 특허청구범위에서)에서 “상기”의 용어 및 이와 유사한 지시 용어의 사용은 단수 및 복수 모두에 해당하는 것일 수 있다. 또한, 본 발명에서 범위(range)를 기재한 경우 상기 범위에 속하는 개별적인 값을 적용한 발명을 포함하는 것으로서(이에 반하는 기재가 없다면), 발명의 상세한 설명에 상기 범위를 구성하는 각 개별적인 값을 기재한 것과 같다. 마지막으로, 본 발명에 따른 방법을 구성하는 단계들에 대하여 명백하게 순서를 기재하거나 반하는 기재가 없다면, 상기 단계들은 적당한 순서로 행해질 수 있다. 반드시 상기 단계들의 기재 순서에 따라 본 발명이 한정되는 것은 아니다. 본 발명에서 모든 예들 또는 예시적인 용어(예들 들어, 등등)의 사용은 단순히 본 발명을 상세히 설명하기 위한 것으로서 특허청구범위에 의해 한정되지 않는 이상 상기 예들 또는 예시적인 용어로 인해 본 발명의 범위가 한정되는 것은 아니다. 또한, 당업자는 다양한 수정, 조합 및 변경이 부가된 특허청구범위 또는 그 균등물의 범주 내에서 설계 조건 및 팩터에 따라 구성될 수 있음을 알 수 있다.
200: 데이터 전송 장치
210: 패킷 생성부
220: 전송부

Claims (21)

  1. 네트워크 상에서의 패킷 손실률을 분석하는 단계;
    상기 분석의 결과에 기초하여 생성되는 검출 패킷의 개수를 결정하는 단계;
    적어도 하나 이상의 데이터 패킷으로 구성된 프레임을 전송하는 단계;
    상기 결정된 검출 패킷의 개수에 기초하여, 상기 데이터 패킷의 손실을 감지하기 위한 검출 패킷을 생성하는 단계; 및
    상기 데이터 패킷이 상기 프레임을 구성하는 마지막 데이터 패킷인 경우, 상기 검출 패킷을 상기 데이터 패킷의 다음 순서에 전송하는 단계를 포함하고,
    상기 마지막 데이터 패킷의 손실 여부는 상기 검출 패킷을 이용하여 판단되는 것을 특징으로 하는 데이터 전송 방법.
  2. 제 1항에 있어서, 상기 마지막 데이터 패킷의 손실 여부는,
    상기 검출 패킷의 일련 번호가 상기 검출 패킷 이전에 수신한 데이터 패킷의 일련 번호와 연속되지 않는 경우, 상기 마지막 데이터 패킷이 손실된 것으로 판단되고,
    상기 전송 방법은 상기 검출 패킷의 전송 후에 수신된 패킷 전송 요청에 따라, 상기 마지막 데이터 패킷을 클라이언트로 전송하는 단계를 더 포함하는 것을 특징으로 하는 데이터 전송 방법.
  3. 제 2항에 있어서, 상기 데이터 전송 방법은,
    상기 재전송 요청된 패킷이 검출 패킷이 아닌 경우, 상기 재전송 요청된 패킷을 전송하는 단계를 더 포함하는 것을 특징으로 하는 데이터 전송 방법.
  4. 삭제
  5. 제 1항에 있어서, 상기 검출 패킷의 개수는 상기 패킷 손실률이 높을수록 증가하는 것을 특징으로 하는 데이터 전송 방법.
  6. 적어도 하나 이상의 데이터 패킷으로 구성된 프레임과 데이터 패킷의 손실을 감지하기 위한 적어도 하나의 검출 패킷 중 어느 하나를 수신하는 단계;
    상기 데이터 패킷이 상기 프레임의 마지막 데이터 패킷인 경우 상기 수신된 검출 패킷을 이용하여 상기 마지막 데이터 패킷의 손실 여부를 판단하는 단계; 및
    상기 판단 결과에 기초하여 상기 마지막 데이터 패킷의 재전송을 요청하는 단계를 포함하고,
    데이터 전송 장치로부터 수신되는 상기 적어도 하나의 검출 패킷의 개수는 네트워크 상에서의 패킷 손실률에 따라 결정되는 것을 특징으로 하는 데이터 수신 방법.
  7. 제 6항에 있어서, 상기 판단하는 단계는,
    상기 검출 패킷의 일련 번호가 상기 검출 패킷 이전에 수신한 데이터 패킷의 일련 번호와 연속되지 않는 경우, 상기 데이터 패킷의 재전송을 요청하는 단계를 더 포함하는 것을 특징으로 하는 데이터 수신 방법.
  8. 제 7항에 있어서, 상기 판단하는 단계는,
    상기 손실된 패킷이 검출 패킷인지 여부를 판단하는 단계; 및
    상기 손실된 패킷이 검출 패킷이 아닌 경우에, 상기 패킷의 재전송을 요청하는 단계를 더 포함하는 것을 특징으로 하는 데이터 수신 방법.
  9. 삭제
  10. 제 6항에 있어서, 상기 검출 패킷의 개수는 상기 패킷 손실률이 높을수록 증가하는 것을 특징으로 하는 데이터 수신 방법.
  11. 데이터를 전송하는 데이터 전송 장치에 있어서, 네트워크 상에서의 패킷 손실률을 분석하는 분석부;
    상기 분석의 결과에 기초하여 생성되는 검출 패킷의 개수를 결정하는 결정부;
    프레임을 구성하는 적어도 하나 이상의 데이터 패킷의 손실을 감지하기 위한 검출 패킷을, 상기 결정된 검출 패킷의 개수에 기초하여, 생성하는 패킷 생성부; 및
    상기 데이터 패킷 및 상기 검출 패킷을 전송하는 전송부를 포함하고,
    상기 검출 패킷은 상기 데이터 패킷이 상기 프레임을 구성하는 마지막 패킷인 경우, 상기 데이터 패킷의 다음 순서에 전송되고,
    상기 마지막 데이터 패킷의 손실 여부는 상기 검출 패킷을 이용하여 판단되는 것을 특징으로 하는 데이터 전송 장치.
  12. 제 11항에 있어서, 상기 마지막 데이터 패킷의 손실 여부는,
    상기 검출 패킷의 일련 번호가 상기 검출 패킷 이전에 수신한 데이터 패킷의 일련 번호와 연속되지 않는 경우, 상기 마지막 데이터 패킷이 손실된 것으로 판단되고,
    상기 전송부는 상기 검출 패킷의 전송 후에 수신된 패킷 전송 요청에 따라, 상기 마지막 데이터 패킷을 클라이언트로 전송하는 것을 특징으로 하는 데이터 전송 장치.
  13. 제 12항에 있어서, 상기 전송부는,
    상기 재전송 요청된 패킷이 검출 패킷이 아닌 경우, 상기 재전송 요청된 패킷을 전송하는 것을 특징으로 하는 데이터 전송 장치.
  14. 삭제
  15. 제 11항에 있어서, 상기 검출 패킷의 개수는 상기 패킷 손실률이 높을수록 증가하는 것을 특징으로 하는 데이터 전송 장치.
  16. 데이터를 수신하는 데이터 수신 장치에 있어서,
    적어도 하나 이상의 데이터 패킷으로 구성된 프레임과 데이터 패킷의 손실을 감지하기 위한 적어도 하나의 검출 패킷 중 어느 하나를 수신하는 수신부;
    상기 데이터 패킷이 상기 프레임의 마지막 패킷인 경우 상기 수신된 검출 패킷을 이용하여 상기 마지막 데이터 패킷의 손실 여부를 판단하는 판단부; 및
    상기 판단 결과에 기초하여 상기 마지막 데이터 패킷의 재전송을 요청하는 요청부를 포함하고,
    데이터 전송 장치로부터 수신되는 상기 적어도 하나의 검출 패킷의 개수는 네트워크 상에서의 패킷 손실률에 따라 결정되는 것을 특징으로 하는 데이터 수신 장치.
  17. 제 16항에 있어서, 상기 요청부는,
    상기 검출 패킷의 일련 번호가 상기 검출 패킷 이전에 수신한 데이터 패킷의 일련 번호와 연속되지 않는 경우, 상기 데이터 패킷의 재전송을 요청하는 것을 특징으로 하는 데이터 수신 장치.
  18. 제 17항에 있어서,
    상기 판단부는, 상기 손실된 패킷이 검출 패킷인지 여부를 판단하고,
    상기 요청부는, 상기 손실된 패킷이 검출 패킷이 아닌 경우에, 상기 패킷의 재전송을 요청하는 것을 특징으로 하는 데이터 수신 장치.
  19. 삭제
  20. 제 16항에 있어서, 상기 검출 패킷의 개수는 상기 패킷 손실률이 높을수록 증가하는 것을 특징으로 하는 데이터 수신 장치.
  21. 제 1항 내지 제3항 및 제5항 내지 제8항 및 제 10항 중 어느 하나의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.

KR1020130081200A 2013-07-10 2013-07-10 데이터 전송 방법 및 장치, 데이터 수신 방법 및 장치 및 기록 매체 KR102025757B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020130081200A KR102025757B1 (ko) 2013-07-10 2013-07-10 데이터 전송 방법 및 장치, 데이터 수신 방법 및 장치 및 기록 매체
PCT/KR2014/006187 WO2015005688A1 (en) 2013-07-10 2014-07-10 Methods and apparatuses for transmitting and receiving data and recording medium for executing the methods
EP14823372.9A EP3017559B1 (en) 2013-07-10 2014-07-10 Methods and apparatuses for transmitting and receiving data and recording medium for executing the methods
US14/327,953 US9979512B2 (en) 2013-07-10 2014-07-10 Methods and apparatuses for transmitting and receiving data and recording medium for executing the methods
CN201480039602.6A CN105379164B (zh) 2013-07-10 2014-07-10 用于发送和接收数据的方法和设备以及用于执行所述方法的记录介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130081200A KR102025757B1 (ko) 2013-07-10 2013-07-10 데이터 전송 방법 및 장치, 데이터 수신 방법 및 장치 및 기록 매체

Publications (2)

Publication Number Publication Date
KR20150007411A KR20150007411A (ko) 2015-01-21
KR102025757B1 true KR102025757B1 (ko) 2019-09-27

Family

ID=52278061

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130081200A KR102025757B1 (ko) 2013-07-10 2013-07-10 데이터 전송 방법 및 장치, 데이터 수신 방법 및 장치 및 기록 매체

Country Status (5)

Country Link
US (1) US9979512B2 (ko)
EP (1) EP3017559B1 (ko)
KR (1) KR102025757B1 (ko)
CN (1) CN105379164B (ko)
WO (1) WO2015005688A1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106294357B (zh) * 2015-05-14 2019-07-09 阿里巴巴集团控股有限公司 数据处理方法和流计算系统
KR101905981B1 (ko) * 2016-10-07 2018-10-10 현대자동차주식회사 차량의 모터 통합 제어 방법 및 그 시스템
US10461892B2 (en) * 2016-12-09 2019-10-29 Oracle International Corporation Low latency communications
CN109120383B (zh) * 2017-06-26 2021-11-26 深圳市道通智能航空技术股份有限公司 无人机及其地面站、数据传输方法
CN111512579A (zh) * 2018-03-30 2020-08-07 英特尔公司 多接入管理服务分组恢复机制
CN110704268B (zh) * 2018-07-10 2023-10-27 浙江宇视科技有限公司 一种视频图像自动化测试方法及装置
WO2020097871A1 (zh) * 2018-11-15 2020-05-22 深圳市欢太科技有限公司 数据传输方法及相关产品
CN112511277B (zh) * 2020-11-24 2021-08-06 广州技象科技有限公司 数据处理方法及装置
US11848868B2 (en) * 2021-09-29 2023-12-19 Huawei Technologies Co., Ltd. Methods, systems and devices for network management using control packets
US11863451B2 (en) 2022-05-16 2024-01-02 Huawei Technologies Co., Ltd. Hardware accelerated temporal congestion signals

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030039218A1 (en) * 2001-08-24 2003-02-27 Kwak Joseph A. Base station implementing a physical layer automatic repeat request

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2457223C (en) 2001-08-24 2009-03-31 Interdigital Technology Corporation Base station implementing a physical layer automatic repeat request
US7355981B2 (en) * 2001-11-23 2008-04-08 Apparent Networks, Inc. Signature matching methods and apparatus for performing network diagnostics
JP3912091B2 (ja) * 2001-12-04 2007-05-09 ソニー株式会社 データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
EP1667395A4 (en) * 2003-09-18 2010-05-26 Nomura Res Inst Co Ltd COMMUNICATION SYSTEM, COMMUNICATION DEVICE AND DATA TRANSFER CONTROL METHOD
US20070008884A1 (en) 2003-10-08 2007-01-11 Bob Tang Immediate ready implementation of virtually congestion free guarantedd service capable network
US20050185604A1 (en) * 2004-02-23 2005-08-25 Samsung Electronics Co., Ltd. Method and apparatus for transferring connectionless-oriented data packets
CN100417080C (zh) * 2005-02-01 2008-09-03 华为技术有限公司 一种检测网络链路故障并定位故障的方法
EP1841145A1 (en) * 2006-03-30 2007-10-03 BRITISH TELECOMMUNICATIONS public limited company Communications networks
US8531954B2 (en) * 2006-08-22 2013-09-10 Centurylink Intellectual Property Llc System and method for handling reservation requests with a connection admission control engine
TW200835303A (en) * 2006-09-07 2008-08-16 Avocent Huntsville Corp Point-to-multipoint high definition multimedia transmitter and receiver
EP2026619A1 (en) * 2007-08-14 2009-02-18 Alcatel Lucent Handover method and apparatus in a wireless telecommunications network
JP4924503B2 (ja) 2008-03-25 2012-04-25 富士通株式会社 輻輳検出方法、輻輳検出装置及び輻輳検出プログラム
EP2234314A1 (en) * 2009-03-25 2010-09-29 Thomson Licensing SA A method of managing a packet administration map
KR20110017518A (ko) 2009-08-14 2011-02-22 한국전자통신연구원 Udp 기반의 통신 방법 및 장치
CN102118277B (zh) * 2009-12-30 2013-12-25 华为技术有限公司 丢包检测方法和装置及路由器
JP5533322B2 (ja) * 2010-06-18 2014-06-25 富士通株式会社 データ転送装置、データ転送方法及びデータ転送プログラム
US9167445B2 (en) * 2012-08-24 2015-10-20 Ascom Network Testing Ab Systems and methods for measuring available bandwidth in mobile telecommunications networks

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030039218A1 (en) * 2001-08-24 2003-02-27 Kwak Joseph A. Base station implementing a physical layer automatic repeat request

Also Published As

Publication number Publication date
WO2015005688A1 (en) 2015-01-15
EP3017559A4 (en) 2017-02-15
EP3017559B1 (en) 2019-03-20
US20150019716A1 (en) 2015-01-15
KR20150007411A (ko) 2015-01-21
US9979512B2 (en) 2018-05-22
EP3017559A1 (en) 2016-05-11
CN105379164B (zh) 2019-03-29
CN105379164A (zh) 2016-03-02

Similar Documents

Publication Publication Date Title
KR102025757B1 (ko) 데이터 전송 방법 및 장치, 데이터 수신 방법 및 장치 및 기록 매체
CN106031072B (zh) 一种harq帧数据结构以及在采用盲检的系统中使用harq进行传输与接收的方法
US8042016B2 (en) Method and device for efficiently retransmitting packets in wired/wireless network
US10122606B1 (en) System and method for estimating an amount of acknowledged application data transmitted by encrypted transport
KR20160135200A (ko) 확장된 송신 제어 기능을 구현하는 송신 가속기
CN110830460B (zh) 一种连接建立方法、装置、电子设备及存储介质
US9826282B2 (en) Reception apparatus, reception method, and recording medium
US20180159659A1 (en) Minimum latency link layer metaframing and error correction
US10516789B2 (en) Information processing apparatus and image processing apparatus that perform transmission and reception of data, and method of controlling information processing apparatus
US11677515B2 (en) Retransmission control device, method, and computer readable medium for time sensitive network communications
CN111181698B (zh) 数据处理方法、装置、设备及介质
KR20140098390A (ko) 네트워크 시스템의 공격 탐지 장치 및 방법
US20170005757A1 (en) Data transmission and feedback processing method and apparatus
US20230367734A1 (en) Securing network access using dynamically generated baud-rates
US9749203B2 (en) Packet analysis apparatus and packet analysis method
CN107294877B (zh) 一种tcp流重组方法和装置
US20160143082A1 (en) Method for detecting a message from a group of packets transmitted in a connection
US10003470B2 (en) Method and terminal for transmitting and receiving data
JP2019022052A (ja) パケット分類プログラム、パケット分類方法およびパケット分類装置
US10623338B2 (en) Information processing device, information processing method and non-transitory computer-readable storage medium
JP2016146571A (ja) 誤り訂正機能検証装置
US11068334B2 (en) Method and system for enhancing communication reliability when multiple corrupted frames are received
KR101527149B1 (ko) 중복 패킷을 방지하는 패킷 처리 방법 및 그 장치
US20200145517A1 (en) Elimination of latency in a communication channel
KR20090026441A (ko) 이동통신 시스템에서 패킷 데이터 수신 응답 신호 구성방법 및 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right