KR102657709B1 - 데이터 스트림에 대한 전송 방법 및 디바이스 - Google Patents

데이터 스트림에 대한 전송 방법 및 디바이스 Download PDF

Info

Publication number
KR102657709B1
KR102657709B1 KR1020217033181A KR20217033181A KR102657709B1 KR 102657709 B1 KR102657709 B1 KR 102657709B1 KR 1020217033181 A KR1020217033181 A KR 1020217033181A KR 20217033181 A KR20217033181 A KR 20217033181A KR 102657709 B1 KR102657709 B1 KR 102657709B1
Authority
KR
South Korea
Prior art keywords
data stream
packet loss
packet
loss concealment
path
Prior art date
Application number
KR1020217033181A
Other languages
English (en)
Other versions
KR20210134787A (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 후아웨이 테크놀러지 컴퍼니 리미티드
Publication of KR20210134787A publication Critical patent/KR20210134787A/ko
Application granted granted Critical
Publication of KR102657709B1 publication Critical patent/KR102657709B1/ko

Links

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/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/70Routing based on monitoring results
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0015Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0059Convolutional codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0075Transmission of coding parameters to receiver
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/08Arrangements for detecting or preventing errors in the information received by repeating transmission, e.g. Verdan system
    • 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/1806Go-back-N 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
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/1893Physical mapping arrangements
    • 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/0852Delays
    • 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/0876Network utilisation, e.g. volume of load or congestion level
    • 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/20Traffic policing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0023Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the signalling
    • H04L1/0026Transmission of channel quality indication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1867Arrangements specially adapted for the transmitter end
    • H04L1/1896ARQ related signaling
    • 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/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]

Landscapes

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

Abstract

본 출원의 실시예들은 데이터 스트림에 대한 전송 방법을 제공한다. 이 방법은: 전송 디바이스가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 따라 패킷 손실 은닉 정책을 결정하는 것; 전송 디바이스가 패킷 손실 은닉 정책에 따라 데이터 스트림에 대한 패킷 손실 은닉 메시지를 생성하는 것; 전송 디바이스가 경로 상에서 데이터 스트림을 송신하는 것을 포함하며, 데이터 스트림은 원본 메시지 및 패킷 손실 은닉 메시지를 포함하여, 수신 디바이스가 데이터 스트림을 수신할 때, 전송 디바이스로부터 수신된 패킷 손실 은닉 정책에 따라 데이터 스트림을 디코딩하고, 패킷 손실 은닉 메시지에 의해, 전송 중에 손실된 원본 메시지를 복구한다. 따라서 본 발명은 패킷 손실 복구 효과를 효과적으로 개선하고 사용자 경험을 개선한다.

Description

데이터 스트림에 대한 전송 방법 및 디바이스
본 출원의 실시예들은 통신 분야에 관한 것으로, 특히 데이터 스트림 전송 방법 및 디바이스에 관한 것이다.
통신 분야에서, 네트워크 불안정성으로 인해 패킷 전송 중에 패킷이 손실될 수 있다. 예를 들어, 인터넷(internet) 상에서, 네트워크 혼잡이 발생한다면, 불충분한 수신 버퍼로 인해 중간 디바이스(이를테면, 라우터) 상에서 패킷 오버플로우가 야기될 수 있다. 그 결과, 패킷 손실이 발생한다. 현재, 전송 프로세스에서 손실된 패킷을 복구하기 위해, 일반적으로 고정 패킷 손실 은닉 정책(packet-loss-concealment policy)이 패킷 손실 은닉 패킷을 생성하는 데 사용된다. 그러나 고정 패킷 손실 은닉 정책이 사용되기 때문에, 패킷 손실 복구 효과가 양호하지 않다. 예를 들어, 패킷 손실에 매우 민감한 일부 서비스들, 이를테면 화상 회의 서비스의 경우, 출력 이미지상에 아티팩트(artifact)들이 발생하여 사용자 경험에 영향을 미친다.
본 출원의 실시예들은 고정 패킷 손실 은닉 정책이 사용되기 때문에 패킷 손실 복구 효과가 비교적 열악하다는 문제를 해결하기 위해, 데이터 스트림 전송 방법 및 디바이스를 제공한다.
제1 양상에 따르면, 데이터 스트림 전송 방법이 제공된다. 이 방법은 다음을 포함한다:
송신 디바이스가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정한다. 송신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성한다. 송신 디바이스는 경로 상에서 데이터 스트림을 송신하며, 여기서 데이터 스트림은 원본 패킷 및 패킷 손실 은닉 패킷을 포함한다.
미리 설정된 고정 패킷 손실 은닉 정책을 사용하는 대신에, 데이터 스트림을 송신하는 데 사용되는 경로의 상태 정보에 기반하여 동적으로 결정된 패킷 손실 은닉 정책을 사용함으로써, 데이터 스트림에 대해 패킷 손실 은닉 패킷이 생성된다. 따라서 패킷 손실 은닉 패킷은 전송 프로세스에서 손실된 패킷을 복구하고, 패킷 손실 복구 효과를 효과적으로 개선함으로써, 패킷 손실 복구 후에 획득되는 패킷 손실률을 효과적으로 감소시키고, 사용자 경험을 더 개선하는 데 사용된다.
제1 양상을 참조하면, 제1 양상의 제1 가능한 구현에서, 송신 디바이스가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하기 전에, 이 방법은 다음을 더 포함한다:
송신 디바이스가, 송신 디바이스로부터 수신 디바이스로의 적어도 2개의 경로들의 제2 경로 상태 정보에 기반하여, 데이터 스트림을 송신하는 데 사용되는 경로를 결정한다.
제1 양상의 제1 가능한 구현을 참조하면, 제1 양상의 제2 가능한 구현에서, 제2 경로 상태 정보는 패킷 손실률을 포함한다.
제1 양상의 제2 가능한 구현을 참조하면, 제1 양상의 제3 가능한 구현에서, 제2 경로 상태 정보는 지연, 네트워크 지터(jitter), 대역폭 또는 지연 차 중 적어도 하나를 더 포함한다.
제1 양상의 앞서 말한 가능한 구현들 또는 제1 양상 중 임의의 하나를 참조하면, 제1 양상의 가능한 구현에서, 데이터 스트림을 송신하는 데 하나 또는 2개의 경로들이 사용된다.
제1 양상의 앞서 말한 가능한 구현들 또는 제1 양상 중 임의의 하나를 참조하면, 제1 양상의 제4 가능한 구현에서, 데이터 스트림을 송신하는 데 사용되는 2개의 경로들이 있을 때, 데이터 스트림을 송신하는 데 사용되는 경로들의 지연 차는 지연 차 임계치 미만이다.
제1 양상의 앞서 말한 가능한 구현들 또는 제1 양상 중 임의의 하나를 참조하면, 제1 양상의 제5 가능한 구현에서, 송신 디바이스가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하는 것은 다음을 포함한다:
송신 디바이스가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보, 데이터 스트림의 패킷 손실 은닉 타깃 값 또는 데이터 스트림의 트래픽 레이트 중 적어도 하나에 기반하여 패킷 손실 은닉 정책을 결정하며, 여기서 패킷 손실 은닉 타깃 값은, 결정된 패킷 손실 은닉 정책을 사용함으로써 데이터 스트림에 대해 패킷 손실 복구가 수행된 후에 획득된 패킷 손실률이 데이터 스트림을 송신하기 위한 패킷 손실률 상한 미만인 것을 보장하도록, 패킷 손실률 상한을 포함한다.
제1 양상의 앞서 말한 가능한 구현들 또는 제1 양상 중 임의의 하나를 참조하면, 제1 양상의 제6 가능한 구현에서, 제1 경로 상태 정보는 지연 또는 패킷 손실률 중 적어도 하나를 포함한다.
제1 양상의 앞서 말한 가능한 구현들 또는 제1 양상 중 임의의 하나를 참조하면, 제1 양상의 제7 가능한 구현에서, 패킷 손실 은닉 정책은 자동 재전송 요청(ARQ: automatic repeat request), 패킷 복제 또는 순방향 에러 정정(FEC: forward error correction) 중 적어도 하나를 포함한다.
제1 양상의 앞서 말한 가능한 구현들 또는 제1 양상 중 임의의 하나를 참조하면, 제1 양상의 제8 가능한 구현에서, 패킷 손실 은닉 정책이 순방향 에러 정정(FEC)일 때, 패킷 손실 은닉 패킷은 리던던트(redundant) 패킷이다. 송신 디바이스가 패킷 손실 은닉 정책에 따라 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하는 것은:
FEC 코딩 방식을 결정하는 것 ― 코딩 방식은 블록 코딩 또는 컨볼루션(convolutional) 코딩을 포함함 ―; 및 리던던트 패킷을 생성하기 위해, 결정된 코딩 방식에 기반하여 원본 패킷을 인코딩하는 것을 더 포함한다.
제1 양상의 앞서 말한 가능한 구현들 또는 제1 양상 중 임의의 하나를 참조하면, 제1 양상의 제9 가능한 구현에서, 이 방법은 다음을 더 포함한다:
송신 디바이스는 패킷 손실 은닉 제어 메시지를 수신 디바이스에 송신하며, 여기서 패킷 손실 은닉 제어 메시지는 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
제1 양상의 앞서 말한 가능한 구현들 또는 제1 양상 중 임의의 하나를 참조하면, 제1 양상의 제10 가능한 구현에서, 패킷 손실 은닉 패킷은 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
제1 양상의 제9 가능한 구현을 참조하면, 제1 양상의 제11 가능한 구현에서, 지시 정보는 데이터 스트림의 식별자 및 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
제1 양상의 제10 가능한 구현을 참조하면, 제1 양상의 제12 가능한 구현에서, 지시 정보는 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
제1 양상의 제10 또는 제12 가능한 구현을 참조하면, 제1 양상의 제13 가능한 구현에서, 지시 정보는 패킷 손실 은닉 패킷의 확장 필드에서 전달된다.
제1 양상의 제9 또는 제11 가능한 구현을 참조하면, 가능한 구현에서, 패킷 손실 은닉 메시지는 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
제1 양상의 제10 또는 제12 가능한 구현을 참조하면, 가능한 구현에서, 패킷 손실 은닉 패킷은 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
제1 양상의 앞서 말한 가능한 구현들 또는 제1 양상 중 임의의 하나를 참조하면, 제1 양상의 제14 가능한 구현에서, 데이터 스트림이 2개의 경로들 상에서 송신될 때, 송신 디바이스가 경로 상에서 데이터 스트림을 송신하는 것은:
2개의 경로들 중 더 긴 지연을 갖는 경로 상에서 원본 패킷을 송신하는 것; 그리고 2개의 경로들 중 더 짧은 지연을 갖는 경로 상에서 패킷 손실 은닉 패킷을 송신하는 것을 포함하며, 여기서 패킷 손실 은닉 패킷은 원본 패킷이 송신된 후에 송신되고, 원본 패킷 및 패킷 손실 은닉 패킷은 시간 간격(t)으로 송신되고, t는 2개의 경로들 상에서 데이터 스트림을 송신하는 일방향 지연 차이다.
제2 양상에 따르면, 데이터 스트림 전송 방법이 제공된다. 이 방법은 다음을 포함한다:
수신 디바이스가 데이터 스트림으로 이루어지며 송신 디바이스에 의해 송신되는 원본 패킷 및 패킷 손실 은닉 패킷을 수신하며, 여기서 패킷 손실 은닉 패킷은 패킷 손실 은닉 정책에 따라 생성되고, 패킷 손실 은닉 정책은 데이터 스트림을 송신하는 데 사용되는 경로의 경로 상태 정보에 기반하여 송신 디바이스에 의해 결정된다. 패킷 손실 은닉 패킷은 손실된 원본 패킷을 복구하기 위해, 동적으로 결정된 패킷 손실 은닉 정책을 사용함으로써 생성된다. 즉, 전송 프로세스에서 손실된 원본 패킷이 패킷 손실 은닉 패킷을 사용함으로써 복구된다. 이는 패킷 손실 복구 후에 획득되는 패킷 손실률을 효과적으로 감소시키고, 사용자 경험을 개선한다.
제2 양상을 참조하면, 제2 양상의 제1 가능한 구현에서, 손실된 원본 패킷이 패킷 손실 은닉 패킷을 사용함으로써 복구되기 전에, 이 방법은:
패킷 손실 은닉 제어 메시지를 수신하는 단계를 더 포함하며, 여기서 패킷 손실 은닉 제어 메시지는 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
제2 양상을 참조하면, 제2 양상의 제2 가능한 구현에서, 패킷 손실 은닉 패킷은 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
제2 양상의 제1 가능한 구현을 참조하면, 제2 양상의 제3 가능한 구현에서, 지시 정보는 데이터 스트림의 식별자 및 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
제2 양상의 제2 가능한 구현을 참조하면, 제2 양상의 제4 가능한 구현에서, 지시 정보는 데이터 스트림을 송신하는 데 사용되는 식별자를 지시하는 데 추가로 사용된다.
제2 양상의 제2 또는 제4 가능한 구현을 참조하면, 가능한 구현에서, 지시 정보는 패킷 손실 은닉 패킷의 확장 필드에서 전달된다.
제2 양상의 제1 또는 제4 가능한 구현을 참조하면, 가능한 구현에서, 패킷 손실 은닉 메시지는 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
제2 양상의 제2, 제4 또는 제5 가능한 구현을 참조하면, 패킷 손실 은닉 패킷은 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
제3 양상에 따르면, 데이터 스트림 전송 방법이 제공된다. 이 방법은 다음을 포함한다:
제어 디바이스가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정한다. 제어 디바이스는 패킷 손실 은닉 정책을 송신 디바이스에 송신하며, 여기서 패킷 손실 은닉 정책은 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하기 위해 송신 디바이스에 의해 사용된다. 따라서 동적으로 결정된 패킷 손실 은닉 정책을 사용함으로써 생성된 패킷 손실 은닉 패킷은 전송 프로세스에서 손실된 패킷을 복구하는 데 사용된다. 이는 패킷 손실 복구 효과를 효과적으로 개선함으로써, 패킷 손실률을 효과적으로 감소시키고, 사용자 경험을 더 개선한다.
제3 양상을 참조하면, 제3 양상의 제1 가능한 구현에서, 제어 디바이스가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하기 전에, 이 방법은 다음을 더 포함한다:
제어 디바이스가, 송신 디바이스로부터 수신 디바이스로의 적어도 2개의 경로들의 제2 경로 상태 정보에 기반하여, 데이터 스트림을 송신하는 데 사용되는 경로를 결정한다.
제3 양상의 제1 가능한 구현을 참조하면, 제3 양상의 제2 가능한 구현에서, 제2 경로 상태 정보는 패킷 손실률을 포함한다.
제3 양상의 제2 가능한 구현을 참조하면, 제3 양상의 제3 가능한 구현에서, 제2 경로 상태 정보는 지연, 네트워크 지터, 대역폭 또는 지연 차 중 적어도 하나를 더 포함한다.
제3 양상의 앞서 말한 가능한 구현들 또는 제3 양상 중 임의의 하나를 참조하면, 제3 양상의 가능한 구현에서, 데이터 스트림을 송신하는 데 하나 또는 2개의 경로들이 사용된다.
제3 양상의 앞서 말한 가능한 구현들 또는 제3 양상 중 임의의 하나를 참조하면, 제3 양상의 제4 가능한 구현에서, 데이터 스트림을 송신하는 데 사용되는 2개의 경로들이 있을 때, 데이터 스트림을 송신하는 데 사용되는 경로들의 지연 차는 지연 차 임계치 미만이다.
제3 양상의 앞서 말한 가능한 구현들 또는 제3 양상 중 임의의 하나를 참조하면, 제3 양상의 제5 가능한 구현에서, 제어 디바이스가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하는 것은 다음을 포함한다:
제어 디바이스가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보, 데이터 스트림의 패킷 손실 은닉 타깃 값 또는 데이터 스트림의 트래픽 레이트 중 적어도 하나에 기반하여 패킷 손실 은닉 정책을 결정하며, 여기서 패킷 손실 은닉 타깃 값은, 결정된 패킷 손실 은닉 정책을 사용함으로써 데이터 스트림에 대해 패킷 손실 복구가 수행된 후에 획득된 패킷 손실률이 데이터 스트림을 송신하기 위한 패킷 손실률 상한 미만인 것을 보장하도록, 패킷 손실률 상한을 포함한다.
제3 양상의 앞서 말한 가능한 구현들 또는 제3 양상 중 임의의 하나를 참조하면, 제3 양상의 제6 가능한 구현에서, 제1 경로 상태 정보는 지연 또는 패킷 손실률 중 적어도 하나를 포함한다.
제3 양상의 앞서 말한 가능한 구현들 또는 제3 양상 중 임의의 하나를 참조하면, 제3 양상의 제7 가능한 구현에서, 패킷 손실 은닉 정책은 자동 재전송 요청(ARQ), 패킷 복제 또는 순방향 에러 정정(FEC) 중 적어도 하나를 포함한다.
제4 양상에 따르면, 데이터 스트림 전송 디바이스가 제공된다. 이 디바이스는:
데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하도록 구성된 결정 유닛;
패킷 손실 은닉 정책에 따라 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하도록 구성된 생성 유닛; 및
경로 상에서 데이터 스트림을 송신하도록 구성된 송신 유닛을 포함하며, 여기서 데이터 스트림은 원본 패킷 및 패킷 손실 은닉 패킷을 포함한다.
디바이스는 데이터 스트림을 송신하는 데 사용되는 경로의 상태 정보에 기반하여 동적으로 결정된 패킷 손실 은닉 정책을 사용함으로써, 데이터 스트림에 대해 패킷 손실 은닉 패킷을 생성하고, 패킷 손실 은닉 패킷을 사용함으로써, 전송 프로세스에서 손실된 패킷을 복구하여, 이로써 패킷 손실 복구 효과를 효과적으로 개선하고, 패킷 손실률을 효과적으로 감소시킨다.
제4 양상을 참조하면, 제4 양상의 제1 가능한 구현에서, 결정 유닛은 송신 디바이스로부터 수신 디바이스로의 적어도 2개의 경로들의 제2 경로 상태 정보에 기반하여, 데이터 스트림을 송신하는 데 사용되는 경로를 결정하도록 추가로 구성된다.
제4 양상의 제1 가능한 구현을 참조하면, 제4 양상의 제2 가능한 구현에서, 제2 경로 상태 정보는 패킷 손실률을 포함한다.
제4 양상의 제2 가능한 구현을 참조하면, 제4 양상의 제3 가능한 구현에서, 제2 경로 상태 정보는 지연, 네트워크 지터, 대역폭 또는 지연 차 중 적어도 하나를 더 포함한다.
제4 양상의 앞서 말한 가능한 구현들 또는 제4 양상 중 임의의 하나를 참조하면, 제4 양상의 가능한 구현에서, 데이터 스트림을 송신하는 데 하나 또는 2개의 경로들이 사용된다.
제4 양상의 앞서 말한 가능한 구현들 또는 제4 양상 중 임의의 하나를 참조하면, 제4 양상의 제4 가능한 구현에서, 데이터 스트림을 송신하는 데 사용되는 2개의 경로들이 있을 때, 데이터 스트림을 송신하는 데 사용되는 경로들의 지연 차는 지연 차 임계치 미만이다.
제4 양상의 앞서 말한 가능한 구현들 또는 제4 양상 중 임의의 하나를 참조하면, 제4 양상의 제5 가능한 구현에서, 결정 유닛이 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하는 것은 다음을 포함한다:
결정 유닛이 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보, 데이터 스트림의 패킷 손실 은닉 타깃 값 또는 데이터 스트림의 트래픽 레이트 중 적어도 하나에 기반하여 패킷 손실 은닉 정책을 결정하며, 여기서 패킷 손실 은닉 타깃 값은, 결정된 패킷 손실 은닉 정책을 사용함으로써 데이터 스트림에 대해 패킷 손실 복구가 수행된 후에 획득된 패킷 손실률이 데이터 스트림을 송신하기 위한 패킷 손실률 상한 미만인 것을 보장하도록, 패킷 손실률 상한을 포함한다.
제4 양상의 앞서 말한 가능한 구현들 또는 제4 양상 중 임의의 하나를 참조하면, 제4 양상의 제6 가능한 구현에서, 제1 경로 상태 정보는 지연 또는 패킷 손실률 중 적어도 하나를 포함한다.
제4 양상의 앞서 말한 가능한 구현들 또는 제4 양상 중 임의의 하나를 참조하면, 제4 양상의 제7 가능한 구현에서, 패킷 손실 은닉 정책은 자동 재전송 요청(ARQ), 패킷 복제 또는 순방향 에러 정정(FEC) 중 적어도 하나를 포함한다.
제4 양상의 앞서 말한 가능한 구현들 또는 제4 양상 중 임의의 하나를 참조하면, 제4 양상의 제8 가능한 구현에서, 패킷 손실 은닉 정책이 순방향 에러 정정(FEC)일 때, 패킷 손실 은닉 패킷은 리던던트 패킷이다. 생성 유닛이 패킷 손실 은닉 정책에 따라 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하는 것은 다음을 포함한다:
결정 유닛이 FEC 코딩 방식을 결정하며, 여기서 코딩 방식은 블록 코딩 또는 컨볼루션 코딩을 포함한다.
생성 유닛은 리던던트 패킷을 생성하기 위해, 결정된 코딩 방식에 기반하여 원본 패킷을 인코딩한다.
제4 양상의 앞서 말한 가능한 구현들 또는 제4 양상 중 임의의 하나를 참조하면, 제4 양상의 제9 가능한 구현에서, 송신 유닛은 패킷 손실 은닉 제어 메시지를 수신 디바이스에 송신하도록 추가로 구성되며, 여기서 패킷 손실 은닉 제어 메시지는 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
제4 양상의 앞서 말한 가능한 구현들 또는 제4 양상 중 임의의 하나를 참조하면, 제4 양상의 제10 가능한 구현에서, 패킷 손실 은닉 패킷은 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
제4 양상의 제9 가능한 구현을 참조하면, 제4 양상의 제11 가능한 구현에서, 지시 정보는 데이터 스트림의 식별자 및 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
제4 양상의 제10 가능한 구현을 참조하면, 제4 양상의 제12 가능한 구현에서, 지시 정보는 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
제4 양상의 제10 또는 제12 가능한 구현을 참조하면, 제4 양상의 제13 가능한 구현에서, 지시 정보는 패킷 손실 은닉 패킷의 확장 필드에서 전달된다.
제4 양상의 제9 또는 제11 가능한 구현을 참조하면, 가능한 구현에서, 패킷 손실 은닉 메시지는 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
제4 양상의 제10 또는 제12 가능한 구현을 참조하면, 가능한 구현에서, 패킷 손실 은닉 패킷은 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
제4 양상의 앞서 말한 가능한 구현들 또는 제4 양상 중 임의의 하나를 참조하면, 제4 양상의 제14 가능한 구현에서, 데이터 스트림이 2개의 경로들 상에서 송신될 때, 송신 유닛이 경로 상에서 데이터 스트림을 송신하는 것은:
2개의 경로들 중 더 긴 지연을 갖는 경로 상에서 원본 패킷을 송신하는 것; 그리고
2개의 경로들 중 더 짧은 지연을 갖는 경로 상에서 패킷 손실 은닉 패킷을 송신하는 것을 포함하며, 여기서 패킷 손실 은닉 패킷은 원본 패킷이 송신된 후에 송신되고, 원본 패킷 및 패킷 손실 은닉 패킷은 시간 간격(t)으로 송신되고, t는 2개의 경로들 상에서 데이터 스트림을 송신하는 일방향 지연 차이다.
제5 양상에 따르면, 데이터 스트림 전송 디바이스가 제공된다. 이 디바이스는:
데이터 스트림으로 이루어지며 송신 디바이스에 의해 송신되는 원본 패킷 및 패킷 손실 은닉 패킷을 수신하도록 구성된 수신 유닛 ― 패킷 손실 은닉 패킷은 패킷 손실 은닉 정책에 따라 생성되고, 패킷 손실 은닉 정책은 데이터 스트림을 송신하는 데 사용되는 경로의 경로 상태 정보에 기반하여 송신 디바이스에 의해 결정됨 ―; 및
손실된 원본 패킷을 패킷 손실 은닉 패킷을 사용함으로써 복구하도록 구성된 처리 유닛을 포함한다. 구체적으로, 전송 프로세스에서 손실된 원본 패킷은 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써 복구된다. 이는 패킷 손실 복구 후에 획득되는 패킷 손실률을 효과적으로 감소시키고, 사용자 경험을 개선한다.
제5 양상을 참조하면, 제5 양상의 제1 가능한 구현에서, 수신 유닛은 패킷 손실 은닉 제어 메시지를 수신하도록 추가로 구성되며, 여기서 패킷 손실 은닉 제어 메시지는 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
제5 양상을 참조하면, 제5 양상의 제2 가능한 구현에서, 패킷 손실 은닉 패킷은 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
제5 양상의 제1 가능한 구현을 참조하면, 제5 양상의 제3 가능한 구현에서, 지시 정보는 데이터 스트림의 식별자 및 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
제5 양상의 제2 가능한 구현을 참조하면, 제5 양상의 제4 가능한 구현에서, 지시 정보는 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
제5 양상의 제2 또는 제4 가능한 구현을 참조하면, 가능한 구현에서, 지시 정보는 패킷 손실 은닉 패킷의 확장 필드에서 전달된다.
제5 양상의 제1 또는 제4 가능한 구현을 참조하면, 가능한 구현에서, 패킷 손실 은닉 메시지는 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
제5 양상의 제2, 제4 또는 제5 가능한 구현을 참조하면, 패킷 손실 은닉 패킷은 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
제6 양상에 따르면, 데이터 스트림 전송 디바이스가 제공된다. 이 디바이스는:
데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하도록 구성된 결정 유닛; 및
패킷 손실 은닉 정책을 송신 디바이스에 송신하도록 구성된 송신 유닛을 포함하며, 여기서 패킷 손실 은닉 정책은 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하기 위해 송신 디바이스에 의해 사용된다. 따라서 동적으로 결정된 패킷 손실 은닉 정책을 사용함으로써 생성된 패킷 손실 은닉 패킷은 전송 프로세스에서 손실된 패킷을 복구하는 데 사용된다. 이는 패킷 손실 복구 효과를 효과적으로 개선함으로써, 패킷 손실률을 효과적으로 감소시키고, 사용자 경험을 더 개선한다.
제6 양상을 참조하면, 제6 양상의 제1 가능한 구현에서, 결정 유닛은 송신 디바이스로부터 수신 디바이스로의 적어도 2개의 경로들의 제2 경로 상태 정보에 기반하여, 데이터 스트림을 송신하는 데 사용되는 경로를 결정하도록 추가로 구성된다.
제6 양상의 제1 가능한 구현을 참조하면, 제6 양상의 제2 가능한 구현에서, 제2 경로 상태 정보는 패킷 손실률을 포함한다.
제6 양상의 제2 가능한 구현을 참조하면, 제6 양상의 제3 가능한 구현에서, 제2 경로 상태 정보는 지연, 네트워크 지터, 대역폭 또는 지연 차 중 적어도 하나를 더 포함한다.
제6 양상의 앞서 말한 가능한 구현들 또는 제6 양상 중 임의의 하나를 참조하면, 제6 양상의 가능한 구현에서, 데이터 스트림을 송신하는 데 하나 또는 2개의 경로들이 사용된다.
제6 양상의 앞서 말한 가능한 구현들 또는 제6 양상 중 임의의 하나를 참조하면, 제6 양상의 제4 가능한 구현에서, 데이터 스트림을 송신하는 데 사용되는 2개의 경로들이 있을 때, 데이터 스트림을 송신하는 데 사용되는 경로들의 지연 차는 지연 차 임계치 미만이다.
제6 양상의 앞서 말한 가능한 구현들 또는 제6 양상 중 임의의 하나를 참조하면, 제6 양상의 제5 가능한 구현에서, 결정 유닛이 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하는 것은 다음을 포함한다:
결정 유닛이 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보, 데이터 스트림의 패킷 손실 은닉 타깃 값 또는 데이터 스트림의 트래픽 레이트 중 적어도 하나에 기반하여 패킷 손실 은닉 정책을 결정하며, 여기서 패킷 손실 은닉 타깃 값은, 결정된 패킷 손실 은닉 정책을 사용함으로써 데이터 스트림에 대해 패킷 손실 복구가 수행된 후에 획득된 패킷 손실률이 데이터 스트림을 송신하기 위한 패킷 손실률 상한 미만인 것을 보장하도록, 패킷 손실률 상한을 포함한다.
제6 양상의 앞서 말한 가능한 구현들 또는 제6 양상 중 임의의 하나를 참조하면, 제6 양상의 제6 가능한 구현에서, 제1 경로 상태 정보는 지연 또는 패킷 손실률 중 적어도 하나를 포함한다.
제6 양상의 앞서 말한 가능한 구현들 또는 제6 양상 중 임의의 하나를 참조하면, 제6 양상의 제7 가능한 구현에서, 패킷 손실 은닉 정책은 자동 재전송 요청(ARQ), 패킷 복제 또는 순방향 에러 정정(FEC) 중 적어도 하나를 포함한다.
제7 양상에 따르면, 데이터 스트림 전송 디바이스가 제공된다. 이 디바이스는:
데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하도록 구성된 프로세서 ― 프로세서는 패킷 손실 은닉 정책에 따라 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하도록 추가로 구성됨 ―; 및
경로 상에서 데이터 스트림을 송신하도록 구성된 전송기를 포함하며, 여기서 데이터 스트림은 원본 패킷 및 패킷 손실 은닉 패킷을 포함한다.
데이터 스트림을 송신하는 데 사용되는 경로의 상태 정보에 기반하여 동적으로 결정된 패킷 손실 은닉 정책을 사용함으로써 데이터 스트림에 대해 패킷 손실 은닉 패킷이 생성되고, 패킷 손실 은닉 패킷을 사용함으로써, 전송 프로세스에서 손실된 패킷이 복구된다. 이는 패킷 손실 복구 효과를 효과적으로 개선함으로써, 패킷 손실률을 효과적으로 감소시키고, 사용자 경험을 더 개선한다.
제7 양상을 참조하면, 제7 양상의 가능한 구현에서, 프로세서는 송신 디바이스로부터 수신 디바이스로의 적어도 2개의 경로들의 제2 경로 상태 정보에 기반하여, 데이터 스트림을 송신하는 데 사용되는 경로를 결정하도록 추가로 구성된다.
제7 양상의 제1 가능한 구현을 참조하면, 제7 양상의 제2 가능한 구현에서, 제2 경로 상태 정보는 패킷 손실률을 포함한다.
제7 양상의 제2 가능한 구현을 참조하면, 제7 양상의 제3 가능한 구현에서, 제2 경로 상태 정보는 지연, 네트워크 지터, 대역폭 또는 지연 차 중 적어도 하나를 더 포함한다.
제7 양상의 앞서 말한 가능한 구현들 또는 제7 양상 중 임의의 하나를 참조하면, 제7 양상의 가능한 구현에서, 데이터 스트림을 송신하는 데 하나 또는 2개의 경로들이 사용된다.
제7 양상의 앞서 말한 가능한 구현들 또는 제7 양상 중 임의의 하나를 참조하면, 제7 양상의 제4 가능한 구현에서, 데이터 스트림을 송신하는 데 사용되는 2개의 경로들이 있을 때, 데이터 스트림을 송신하는 데 사용되는 경로들의 지연 차는 지연 차 임계치 미만이다.
제7 양상의 앞서 말한 가능한 구현들 또는 제7 양상 중 임의의 하나를 참조하면, 제7 양상의 제5 가능한 구현에서, 프로세서가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하는 것은 다음을 포함한다:
프로세서가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보, 데이터 스트림의 패킷 손실 은닉 타깃 값 또는 데이터 스트림의 트래픽 레이트 중 적어도 하나에 기반하여 패킷 손실 은닉 정책을 결정하며, 여기서 패킷 손실 은닉 타깃 값은, 결정된 패킷 손실 은닉 정책을 사용함으로써 데이터 스트림에 대해 패킷 손실 복구가 수행된 후에 획득된 패킷 손실률이 데이터 스트림을 송신하기 위한 패킷 손실률 상한 미만인 것을 보장하도록, 패킷 손실률 상한을 포함한다.
제7 양상의 앞서 말한 가능한 구현들 또는 제7 양상 중 임의의 하나를 참조하면, 제7 양상의 제6 가능한 구현에서, 제1 경로 상태 정보는 지연 또는 패킷 손실률 중 적어도 하나를 포함한다.
제7 양상의 앞서 말한 가능한 구현들 또는 제7 양상 중 임의의 하나를 참조하면, 제7 양상의 제7 가능한 구현에서, 패킷 손실 은닉 정책은 자동 재전송 요청(ARQ), 패킷 복제 또는 순방향 에러 정정(FEC) 중 적어도 하나를 포함한다.
제7 양상의 앞서 말한 가능한 구현들 또는 제7 양상 중 임의의 하나를 참조하면, 제7 양상의 제8 가능한 구현에서, 패킷 손실 은닉 정책이 순방향 에러 정정(FEC)일 때, 패킷 손실 은닉 패킷은 리던던트 패킷이다. 프로세서가 패킷 손실 은닉 정책에 따라 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하는 것은 다음을 포함한다:
프로세서가 FEC 코딩 방식을 결정하며, 여기서 코딩 방식은 블록 코딩 또는 컨볼루션 코딩을 포함한다.
프로세서는 리던던트 패킷을 생성하기 위해, 결정된 코딩 방식에 기반하여 원본 패킷을 인코딩한다.
제7 양상의 앞서 말한 가능한 구현들 또는 제7 양상 중 임의의 하나를 참조하면, 제7 양상의 제9 가능한 구현에서, 전송기는 패킷 손실 은닉 제어 메시지를 수신 디바이스에 송신하도록 추가로 구성되며, 여기서 패킷 손실 은닉 제어 메시지는 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
제7 양상의 앞서 말한 가능한 구현들 또는 제7 양상 중 임의의 하나를 참조하면, 제7 양상의 제10 가능한 구현에서, 패킷 손실 은닉 패킷은 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
제7 양상의 제9 가능한 구현을 참조하면, 제7 양상의 제11 가능한 구현에서, 지시 정보는 데이터 스트림의 식별자 및 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
제7 양상의 제10 가능한 구현을 참조하면, 제7 양상의 제12 가능한 구현에서, 지시 정보는 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
제7 양상의 제10 또는 제12 가능한 구현을 참조하면, 제7 양상의 제13 가능한 구현에서, 지시 정보는 패킷 손실 은닉 패킷의 확장 필드에서 전달된다.
제7 양상의 제9 또는 제11 가능한 구현을 참조하면, 가능한 구현에서, 패킷 손실 은닉 메시지는 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
제7 양상의 제10 또는 제12 가능한 구현을 참조하면, 가능한 구현에서, 패킷 손실 은닉 패킷은 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
제7 양상의 앞서 말한 가능한 구현들 또는 제7 양상 중 임의의 하나를 참조하면, 제7 양상의 제14 가능한 구현에서, 데이터 스트림이 2개의 경로들 상에서 송신될 때, 전송기가 경로 상에서 데이터 스트림을 송신하는 것은:
2개의 경로들 중 더 긴 지연을 갖는 경로 상에서 원본 패킷을 송신하는 것; 그리고
2개의 경로들 중 더 짧은 지연을 갖는 경로 상에서 패킷 손실 은닉 패킷을 송신하는 것을 포함하며, 여기서 패킷 손실 은닉 패킷은 원본 패킷이 송신된 후에 송신되고, 원본 패킷 및 패킷 손실 은닉 패킷은 시간 간격(t)으로 송신되고, t는 2개의 경로들 상에서 데이터 스트림을 송신하는 일방향 지연 차이다.
제8 양상에 따르면, 데이터 스트림 전송 디바이스가 제공된다. 이 디바이스는:
데이터 스트림으로 이루어지며 송신 디바이스에 의해 송신되는 원본 패킷 및 패킷 손실 은닉 패킷을 수신하도록 구성된 수신기 ― 패킷 손실 은닉 패킷은 패킷 손실 은닉 정책에 따라 생성되고, 패킷 손실 은닉 정책은 데이터 스트림을 송신하는 데 사용되는 경로의 경로 상태 정보에 기반하여 송신 디바이스에 의해 결정됨 ―; 및
손실된 원본 패킷을 패킷 손실 은닉 패킷을 사용함으로써 복구하도록 구성된 프로세서를 포함한다.
데이터 스트림을 송신하는 데 사용되는 경로의 상태 정보에 기반하여 결정된 패킷 손실 은닉 정책을 사용함으로써 패킷 손실 은닉 패킷이 생성되고, 전송 프로세스에서 손실된 원본 패킷이 패킷 손실 은닉 패킷을 사용함으로써 복구되어, 이로써 패킷 손실률을 효과적으로 감소시키고, 사용자 경험을 더 개선한다.
제8 양상을 참조하면, 제8 양상의 제1 가능한 구현에서, 수신기는 패킷 손실 은닉 제어 메시지를 수신하도록 추가로 구성되며, 여기서 패킷 손실 은닉 제어 메시지는 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
제8 양상을 참조하면, 제8 양상의 제2 가능한 구현에서, 패킷 손실 은닉 패킷은 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
제8 양상의 제1 가능한 구현을 참조하면, 제8 양상의 제3 가능한 구현에서, 지시 정보는 데이터 스트림의 식별자 및 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
제8 양상의 제2 가능한 구현을 참조하면, 제8 양상의 제4 가능한 구현에서, 지시 정보는 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
제8 양상의 제2 또는 제4 가능한 구현을 참조하면, 가능한 구현에서, 지시 정보는 패킷 손실 은닉 패킷의 확장 필드에서 전달된다.
제8 양상의 제1 또는 제4 가능한 구현을 참조하면, 가능한 구현에서, 패킷 손실 은닉 메시지는 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
제8 양상의 제2, 제4 또는 제5 가능한 구현을 참조하면, 패킷 손실 은닉 패킷은 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
제9 양상에 따르면, 데이터 스트림 전송 디바이스가 제공된다. 이 디바이스는:
데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하도록 구성된 프로세서; 및
패킷 손실 은닉 정책을 송신 디바이스에 송신하도록 구성된 전송기를 포함하며, 여기서 패킷 손실 은닉 정책은 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하기 위해 송신 디바이스에 의해 사용된다. 따라서 동적으로 결정된 패킷 손실 은닉 정책을 사용함으로써 생성된 패킷 손실 은닉 패킷은 전송 프로세스에서 손실된 패킷을 복구하는 데 사용된다. 이는 패킷 손실 복구 효과를 효과적으로 개선함으로써, 패킷 손실률을 효과적으로 감소시키고, 사용자 경험을 더 개선한다.
제9 양상을 참조하면, 제9 양상의 제1 가능한 구현에서, 프로세서는 송신 디바이스로부터 수신 디바이스로의 적어도 2개의 경로들의 제2 경로 상태 정보에 기반하여, 데이터 스트림을 송신하는 데 사용되는 경로를 결정하도록 추가로 구성된다.
제9 양상의 제1 가능한 구현을 참조하면, 제9 양상의 제2 가능한 구현에서, 제2 경로 상태 정보는 패킷 손실률을 포함한다.
제9 양상의 제2 가능한 구현을 참조하면, 제9 양상의 제3 가능한 구현에서, 제2 경로 상태 정보는 지연, 네트워크 지터, 대역폭 또는 지연 차 중 적어도 하나를 더 포함한다.
제9 양상의 앞서 말한 가능한 구현들 또는 제9 양상 중 임의의 하나를 참조하면, 제9 양상의 가능한 구현에서, 데이터 스트림을 송신하는 데 하나 또는 2개의 경로들이 사용된다.
제9 양상의 앞서 말한 가능한 구현들 또는 제9 양상 중 임의의 하나를 참조하면, 제9 양상의 제4 가능한 구현에서, 데이터 스트림을 송신하는 데 사용되는 2개의 경로들이 있을 때, 데이터 스트림을 송신하는 데 사용되는 경로들의 지연 차는 지연 차 임계치 미만이다.
제9 양상의 앞서 말한 가능한 구현들 또는 제9 양상 중 임의의 하나를 참조하면, 제9 양상의 제5 가능한 구현에서, 프로세서가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하는 것은 다음을 포함한다:
프로세서가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보, 데이터 스트림의 패킷 손실 은닉 타깃 값 또는 데이터 스트림의 트래픽 레이트 중 적어도 하나에 기반하여 패킷 손실 은닉 정책을 결정하며, 여기서 패킷 손실 은닉 타깃 값은, 결정된 패킷 손실 은닉 정책을 사용함으로써 데이터 스트림에 대해 패킷 손실 복구가 수행된 후에 획득된 패킷 손실률이 데이터 스트림을 송신하기 위한 패킷 손실률 상한 미만인 것을 보장하도록, 패킷 손실률 상한을 포함한다.
제9 양상의 앞서 말한 가능한 구현들 또는 제9 양상 중 임의의 하나를 참조하면, 제9 양상의 제6 가능한 구현에서, 제1 경로 상태 정보는 지연 또는 패킷 손실률 중 적어도 하나를 포함한다.
제9 양상의 앞서 말한 가능한 구현들 또는 제9 양상 중 임의의 하나를 참조하면, 제9 양상의 제7 가능한 구현에서, 패킷 손실 은닉 정책은 자동 재전송 요청(ARQ), 패킷 복제 또는 순방향 에러 정정(FEC) 중 적어도 하나를 포함한다.
제10 양상에 따르면, 명령들을 포함하는 컴퓨터 프로그램 제품이 제공된다. 컴퓨터 상에서 명령들이 실행될 때, 컴퓨터는 제1 양상 내지 제3 양상의 임의의 가능한 구현에 따른 방법을 수행하는 것이 가능해진다.
본 출원의 일 실시예는 명령들을 저장하도록 구성된 컴퓨터 판독 가능 저장 매체를 제공한다. 컴퓨터 상에서 명령들이 실행될 때, 제1 양상 내지 제3 양상의 임의의 가능한 구현에 따른 방법이 구현된다.
제공되는 데이터 스트림 전송 방법 및 디바이스에 기반하여, 송신 디바이스는 데이터 스트림을 송신하는 데 사용되는 경로의 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 동적으로 결정하고, 패킷 손실 은닉 정책에 따라 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성한 다음, 경로 상에서 원본 패킷 및 패킷 손실 은닉 패킷을 포함하는 데이터 스트림을 송신한다. 따라서 데이터 스트림을 수신할 때, 수신 디바이스는 송신 디바이스로부터 수신된 패킷 손실 은닉 정책에 따라 데이터 스트림을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이는 패킷 손실 복구 후에 획득되는 패킷 손실률을 효과적으로 감소시키고, 사용자 경험을 개선한다.
도 1은 본 출원의 일 실시예에 따른 SD-WAN의 기본 네트워크 아키텍처의 개략도이다.
도 2는 본 출원의 일 실시예에 따른 데이터 스트림 전송 프로세스의 개략도이다.
도 3은 본 출원의 일 실시예에 따른 데이터 스트림 전송 방법의 개략적인 흐름도이다.
도 4는 본 출원의 일 실시예에 따른 패킷 손실 은닉 패킷의 포맷의 개략도이다.
도 5a 내지 도 5c는 본 출원의 일 실시예에 따른 FEC 데이터 스트림 전송 프로세스의 개략도이다.
도 6은 본 출원의 일 실시예에 따라 패킷 손실 은닉 패킷을 생성하는 프로세스의 개략도이다.
도 7은 본 출원의 일 실시예에 따른 데이터 스트림 전송 방법의 개략적인 흐름도이다.
도 8은 본 출원의 일 실시예에 따라 데이터 스트림을 송신하는 데 사용되는 경로를 결정하기 위한 방법의 개략적인 흐름도이다.
도 9는 본 출원의 일 실시예에 따라 데이터 스트림을 송신하는 데 사용되는 경로를 결정하기 위한 방법의 개략적인 흐름도이다.
도 10은 본 출원의 일 실시예에 따라 데이터 스트림을 송신하는 데 사용되는 경로를 결정하기 위한 방법의 개략적인 흐름도이다.
도 11은 본 출원의 일 실시예에 따른 데이터 스트림 전송 프로세스의 개략도이다.
도 12는 본 출원의 일 실시예에 따른 데이터 스트림 전송 프로세스의 개략도이다.
도 13은 본 출원의 일 실시예에 따른 지연 차 계산 프로세스의 개략도이다.
도 14는 본 출원의 일 실시예에 따른 데이터 스트림 전송 프로세스의 개략도이다.
도 15는 본 출원의 일 실시예에 따른 데이터 스트림 전송 방법의 개략적인 흐름도이다.
도 16은 본 출원의 일 실시예에 따른 송신 디바이스의 개략적인 구조도이다.
도 17은 본 출원의 일 실시예에 따른 수신 디바이스의 개략적인 구조도이다.
도 18은 본 출원의 일 실시예에 따른 제어 디바이스의 개략적인 구조도이다.
도 19는 본 출원의 일 실시예에 따른 송신 디바이스의 개략적인 구조도이다.
도 20은 본 출원의 일 실시예에 따른 수신 디바이스의 개략적인 구조도이다.
도 21은 본 출원의 일 실시예에 따른 제어 디바이스의 개략적인 구조도이다.
본 출원의 실시예들은 데이터 스트림 전송 방법 및 디바이스를 제공하는데, 이들은 소프트웨어 정의 광역 네트워크(SD-WAN: software defined-wide area network)와 같은 시나리오에 적용될 수 있고 패킷 손실에 민감한 서비스, 예를 들어 화상 회의 서비스에 특정하다.
실시예들에서, 송신 디바이스와 수신 디바이스 사이에 복수의 경로들이 존재한다. 예를 들어, SD-WAN 시나리오에서, 도 1에 도시된 바와 같이, 고객 구내 장비(customer premise equipment) 사이에 복수의 WAN 링크들이 존재한다.
도 1은 SD-WAN의 기본 네트워크 아키텍처의 개략도이다. 도 1에 도시된 바와 같이, SD-WAN의 기본 네트워크 아키텍처는 (사이트들로도 또한 지칭되는) 복수의 포지션들에 위치된 고객 구내 장비(CPE: customer premise equipment)를 포함한다. 고객 구내 장비는 물리적 고객 구내 장비일 수 있거나, 가상 고객 구내 장비(vCPE: virtual customer premise equipment)일 수 있다. vCPE는 범용 서버 상에서 실행된다.
각각의 고객 구내 장비는 2개 이상의 WAN 접속들을 갖는다. 즉, 고객 구내 장비 사이에서 데이터 스트림들을 전송하는 데 사용되는 2개 이상의 WAN 링크들이 존재하며, WAN 링크들은 서로 독립적이다. 예를 들어, WAN 링크들은 기본 전송 네트워크와 독립적이도록, 인터넷 프로토콜 보안(IPSec: internet protocol security)과 같은 터널링 기술들을 사용함으로써 오버레이(overlay) 네트워크를 형성한다. 복수의 WAN들 사이에서 고가용성(high-availability)(액티브-액티브(active-active)) 로드 밸런싱이 구현될 수 있다.
SD-WAN 시스템은 시스템의 고객 구내 장비와 같은 다른 디바이스들 상에서 중앙 집중형 애플리케이션 성능 모니터링 및 정책 관리를 수행하도록 구성된 제어기를 포함한다.
SD-WAN 시스템에서, 데이터 스트림 전송 프로세스가 도 2에 도시된다. 도 2에서, 단말 1이 단말 2에 오디오 및 비디오 스트림을 송신하는 예가 사용된다. 단말 1은 송신될 오디오 및 비디오 스트림을 인코딩하고, 인코딩된 오디오 및 비디오 스트림을 네트워크 디바이스 1에 송신한다. 네트워크 디바이스 1은 복수의 WAN 링크들을 사용함으로써, 인코딩된 오디오 및 비디오 스트림을 네트워크 디바이스 2에 포워딩한다. 그 다음, 네트워크 디바이스 2는 수신된 오디오 및 비디오 스트림을 단말 2에 송신한다. 오디오 및 비디오 스트림을 수신한 후, 단말 2는 디코딩 기술을 사용함으로써 오디오 및 비디오 스트림을 디코딩하고, 오디오 및 비디오 스트림으로부터 원본 비디오 및 원본 오디오를 복구한다. 단말 2가 지능형 디바이스, 예를 들어 휴대 전화 또는 컴퓨터와 같이 디스플레이를 갖는 디바이스라면, 단말 2는 디스플레이 상에서 디코딩된 비디오 및 디코딩된 오디오를 재생한다.
단말 1 및 단말 2는 오디오 및 비디오 인코딩 및 디코딩을 위한 디바이스들, 이를테면 지능형 단말들(예를 들어, 휴대 전화들 또는 태블릿 컴퓨터들), 카메라들 또는 단말들(예를 들어, Skype)일 수 있다. 네트워크 디바이스 1 및 네트워크 디바이스 2는 라우터들, 스위치들 및 서버들과 같은 디바이스 들일 수 있다.
WAN 링크들이 불안정하기 때문에, WAN 링크들 상에서의 데이터 스트림 전송 중에 패킷 손실이 있을 수 있다. SD-WAN에서의 데이터 스트림 전송 프로세스에서, 전송된 데이터 스트림(이를테면, 오디오 및 비디오 패킷)이 불량한 품질을 갖는 WAN 링크에 스케줄링된다면, 많은 양의 패킷들이 손실될 수 있으며, 이는 사용자 경험에 크게 영향을 미친다.
추가로, SD-WAN에서의 2개 이상의 WAN 링크들이 서로 독립적이기 때문에, WAN 링크들은 하나의 오디오 및 비디오 스트림에 대한 신뢰성 있는 전송을 제공하도록 접속 및 통합될 수 없다. 하나의 오디오 및 비디오 스트림이 단순히 패킷 레벨 로드 밸런싱 스케줄링을 통해 상이한 WAN 링크들을 통해 전송된다면, 복수의 바운드(bound) WAN 링크들의 전송 효과는 WAN 링크들의 패킷 손실률들, 지연들, 지터들 등의 차이들로 인해 단일 WAN 링크의 전송 효과보다 더 악화될 수 있다. 다시 말해서, 복수의 WAN 링크들이 오디오 및 비디오 스트림을 전송하도록 바운드될 때, 복수의 WAN 링크들의 전송 효과들의 합은 단일 WAN 링크의 전송 효과보다 더 악화되는데, 1+1<1의 효과가 달성된다.
현재 기술에서, 전송될 필요가 있는 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하기 위해, 미리 설정된 고정 패킷 손실 은닉 정책, 이를테면 FEC, 패킷 복제 또는 자동 재전송이 사용된다. 비교적 열악한 경로 상태 정보의 경우, 고정 패킷 손실 은닉 정책을 사용함으로써 생성된 패킷 손실 은닉 패킷이 전송 프로세스에서 손실된 패킷을 복구하는 데 사용될 때, 패킷 복구 효과가 양호하지 않으며, 패킷 손실 복구 이후 패킷 손실률은 여전히 매우 높다.
이를 고려하여, 데이터 스트림을 전송하기 위한 WAN 링크에 대해 일부 패킷 손실 은닉 기술들이 사용될 필요가 있다. 따라서 본 출원의 실시예들은 데이터 스트림 전송 방법 및 네트워크 디바이스를 제공한다. 데이터 스트림을 송신하기 위한 WAN 링크의 링크 상태가 비교적 불량할 때, 네트워크 디바이스는 WAN 링크의 링크 상태에 기반하여 패킷 손실 은닉 정책을 결정하고, 송신될 데이터 스트림에 대한 패킷 손실 은닉 패킷을 패킷 손실 은닉 정책에 따라 생성한 다음, 하나 또는 2개의 WAN 링크들 상에서, 원본 패킷 및 패킷 손실 은닉 패킷을 포함하는 데이터 스트림을 송신한다. 본 출원의 실시예들에서, 패킷 손실 은닉 정책은 데이터 스트림을 송신하는 데 사용되는 경로의 상태 정보에 기반하여 동적으로 결정되며, 패킷 손실 은닉 정책에 따라 데이터 스트림에 대해 패킷 손실 은닉 패킷이 생성되고, 경로 상에서 데이터 스트림이 수신 디바이스에 전송된다. 데이터 스트림을 수신하면, 수신 디바이스는 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷을 복구하고, 이로써 패킷 손실 복구 효과를 개선하고, 패킷 손실 복구 후에 획득되는 패킷 손실률을 효과적으로 감소시킨다. 전송 효과는 더 양호한 링크(예를 들어, 다중 프로토콜 라벨 스위칭(MPLS: multi-protocol label switching) 링크)의 전송 효과와 유사하다.
SD-WAN 시나리오에서, WAN 링크는 데이터 스트림을 송신하는 데 사용되는 경로이고, WAN 링크의 링크 상태 정보는 경로 상태 정보로 지칭된다.
일반적인 패킷 손실 은닉 정책들은 순방향 에러 정정(FEC), 패킷 복제, 자동 재전송 요청(ARQ) 등을 포함한다.
FEC에서, 특정 인코딩(예를 들어, 패킷 코딩에서의 리드-솔로몬(RS: reed-solomon) 코드들의 코딩)을 통해 원본 패킷에 기반하여 리던던트 패킷이 생성된다. FEC에서, 패킷 손실 은닉 패킷은 리던던트 패킷이다. 데이터 스트림 전송 프로세스에서, 전송 단부는 원본 패킷 및 패킷 손실 은닉 패킷을 포함하는 데이터 스트림을 송신한다. 데이터 스트림을 수신하면, 수신단은 손실된 원본 패킷을 특정 확률로 복구하기 위해, 수신된 데이터 스트림 내의 패킷 손실 은닉 패킷에 기반하여 데이터 스트림을 디코딩한다. FEC는 재전송이 없고 높은 실시간 성능의 이점들을 가지며, 일반적인 패킷 손실 시나리오들에 적용 가능하고, 손실된 패킷을 특정 확률로 복구하는 데 사용될 수 있다.
패킷 복제에서, 원본 패킷의 하나 이상의 사본(copy)들이 만들어진다. 사본 패킷은 패킷 손실 은닉 패킷으로 지칭된다. 사본 패킷은 수신단에 전송되고, 그에 따라 수신단은 손실된 원본 패킷을 사본 패킷에 기반하여 복구할 수 있다. 패킷 복제는 재전송이 없고 높은 실시간 성능의 이점들을 가지며, 일반적인 패킷 손실 시나리오들에 적용 가능하고, 손실된 패킷을 특정 확률로 복구하는 데 사용될 수 있다.
ARQ에서, 수신단은 전송단에 의해 송신된 데이터 스트림을 수신하고, 수신된 데이터 스트림에서 패킷 손실이 발생하는지 여부를 검출한다. 패킷 손실이 발생한다고 결정되면, 수신단은 데이터 스트림을 재송신하도록 전송단에 요청한다. ARQ의 이점은 추가 대역폭 자원들이 거의 점유되지 않는다는 점이다.
본 명세서에서의 전송단 및 수신단은 각각 네트워크 디바이스 및 단말과 같은 디바이스들일 수 있다는 점이 주목되어야 한다.
도 3을 참조하면, 다음은 본 출원의 실시예들에서 제공되는 데이터 스트림 전송 방법을 상세히 설명한다. 도 3에 도시된 바와 같이, 이 방법은 송신 디바이스에 의해 수행되고, 송신 디바이스는 도 2에 도시된 네트워크 디바이스일 수 있다. 본 출원의 실시예들에서 언급된 "제1" 및 "제2"는 단지 객체들 간에 구별하는 데 사용되며, 객체들을 제한하지 않는다는 점이 주목되어야 한다.
본 출원의 실시예들에서, 데이터 스트림을 송신하는 데 사용되는 경로를 결정하는 데 사용되는 경로의 경로 상태 정보는 제2 경로 상태 정보로 지칭되며, 패킷 손실 은닉 정책을 결정하는 데 사용되는 경로의 경로 상태 정보는 제1 경로 상태 정보로 지칭된다는 점이 추가로 주목되어야 한다. 제1 경로 상태 정보 및 제2 경로 상태 정보는 사용 시나리오들 간에 구별하는 데만 사용되며, 경로 상태 정보에 대한 제한을 구성하지 않는다.
도 3에 도시된 바와 같이, 이 방법은 다음의 단계들을 포함할 수 있다.
S101: 송신 디바이스가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정한다.
경로는 데이터 스트림이 송신 디바이스로부터 수신 디바이스로 전달되게 하는 경로이다. 송신 디바이스는 패킷 손실률 또는 지연과 같은 경로의 제1 경로 상태 정보에 기반하여, 패킷 손실 은닉을 향상시킬 수 있는 패킷 손실 은닉 정책(예를 들어, FEC, 패킷 복제 또는 ARQ)을 동적으로 결정하고, 그 다음, 패킷 손실 은닉 정책에 따라 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성한다. 따라서 송신 디바이스에 의해 송신된 데이터 스트림을 수신하면, 수신 디바이스는 패킷 손실 은닉 패킷에 기반하여, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 복구할 수 있다.
예를 들어, 송신 디바이스는 경로의 제1 경로 상태 정보에 있는 지연 및 패킷 손실률에 기반하여 패킷 손실 은닉 정책을 결정한다. 일 실시예에서, 경로의 패킷 손실률이 미리 설정된 패킷 손실률 임계치 미만이고 경로의 지연이 미리 설정된 지연 임계치 미만이면, 사용될 패킷 손실 은닉 정책이 ARQ라고 결정된다.
다른 실시예에서, 송신 디바이스는 경로의 제1 경로 상태 정보 및 데이터 스트림의 패킷 손실 은닉 타깃 값에 기반하여 패킷 손실 은닉 정책을 결정할 수 있으며, 여기서 패킷 손실 은닉 타깃 값은 패킷 손실률 타깃 값을 포함하고, 패킷 손실 은닉 타깃 값은 데이터 스트림을 송신하기 위한 패킷 손실률 상한을 포함한다. 예를 들어, 송신될 데이터 스트림의 패킷 손실 은닉 타깃 값에 대해, 결정된 패킷 손실 은닉 정책을 사용함으로써 데이터 스트림에 대해 패킷 손실 복구가 수행된 후에 획득된 패킷 손실률이 데이터 스트림을 송신하기 위한 패킷 손실률 상한 미만인 것을 보장하도록, 총 패킷 손실률은 0.01% 미만으로 설정된다.
경로의 패킷 손실률이 데이터 스트림 패킷 손실 은닉에 대한 타깃 패킷 손실률 0.01% 미만이고, 경로의 지연이 데이터 스트림의 패킷 손실 은닉 타깃에 대해 설정되는 지연 타깃 값을 충족하는 경우, 사용될 패킷 손실 은닉 정책이 FEC라고 결정된다. 예를 들어, 송신될 데이터 스트림의 패킷 손실 은닉 타깃 값에 대해, 지연 타깃은 150㎳ 미만으로 설정된다. 데이터 스트림을 송신하는 데 사용되는 2개의 경로들, 즉 경로 1 및 경로 2가 있고, 경로 1의 지연이 80㎳이고, 경로 2의 지연이 120㎳라면, 패킷 손실 은닉 정책이 FEC라고 결정될 수 있다. 이 경우, 경로 1 및 경로 2 상에서의 ARQ 반복들에 의해 야기되는 지연들은 데이터 스트림을 송신하기 위한 타깃 지연 값(150㎳ 미만)을 충족시킬 수 없다. 따라서 ARQ가 사용될 수 없다.
다른 실시예에서, 송신 디바이스는 대안으로, 경로의 제1 경로 상태 정보 및 데이터 스트림의 트래픽 레이트에 기반하여 패킷 손실 은닉 정책을 결정할 수 있다. 예를 들어, 경로의 지연이 미리 설정된 임계치 미만이고, 경로 상에서 데이터 스트림을 송신하는 트래픽 레이트가 미리 설정된 임계치 미만이면, 사용될 패킷 손실 은닉 정책은 패킷 복제라고 결정된다. 경로의 지연이 미리 설정된 임계치보다 크고, 경로 상에서 데이터 스트림을 송신하는 트래픽 레이트가 미리 설정된 임계치보다 크면, 사용될 패킷 손실 은닉 정책이 FEC라고 결정된다.
사용될 패킷 손실 은닉 정책이 FEC라고 결정되면, 경로의 경로 상태 정보에 기반하여 코딩 알고리즘이 추가로 결정될 수 있다. 예를 들어, 경로 상에서 손실되는 연속적인 패킷들의 양이 미리 설정된 임계치 미만이면, FEC 패킷 코딩이 사용된다. 경로 상에서 손실되는 연속적인 패킷들의 양이 미리 설정된 임계치보다 크거나 같으면, FEC 컨볼루션 코딩이 사용된다.
일 실시예에서, 송신 디바이스는 대안으로, 경로의 제1 경로 상태 정보, 데이터 스트림의 패킷 손실 은닉 타깃 값, 및 데이터 스트림의 트래픽 레이트에 기반하여 패킷 손실 은닉 정책을 결정할 수 있다. 예를 들어, 데이터 스트림을 송신하기 위해 설정되는, 패킷 손실률 및 지연을 포함하는 패킷 손실 은닉 타깃 값이 충족되는지 여부는 먼저, 경로의 패킷 손실률 및 지연에 기반하여 결정된다. 패킷 손실률 및 지연이 충족되면, 사용될 패킷 손실 은닉 정책이 경로의 패킷 손실률 및 지연, 그리고 경로 상에서 데이터 스트림을 송신하는 트래픽 레이트에 기반하여 결정된다. 예를 들어, 경로의 지연이 미리 설정된 임계치 미만이고, 경로 상에서 데이터 스트림을 송신하는 트래픽 레이트가 미리 설정된 임계치 미만이면, 사용될 패킷 손실 은닉 정책은 패킷 복제라고 결정된다. 경로의 지연이 미리 설정된 임계치보다 크고, 경로 상에서 데이터 스트림을 송신하는 트래픽 레이트가 미리 설정된 임계치보다 크면, 사용될 패킷 손실 은닉 정책이 FEC라고 결정된다.
S102: 송신 디바이스가 패킷 손실 은닉 정책에 따라 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성한다.
송신 디바이스는 S101에서 결정된 패킷 손실 은닉 정책에 따라, 송신될 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성한다. 예를 들어, 결정된 패킷 손실 은닉 정책이 FEC라면, 패킷 손실 은닉 패킷을 생성하기 위해 FEC 코딩 알고리즘을 사용함으로써 원본 패킷이 인코딩된다. FEC에서, 패킷 손실 은닉 패킷은 또한 리던던트 패킷으로 지칭된다.
예를 들어, 결정된 패킷 손실 은닉 정책이 패킷 복제라면, 패킷 손실 은닉 패킷은 원본 패킷을 복제함으로써 생성된다.
S103: 송신 디바이스가 경로 상에서 데이터 스트림을 송신하며, 여기서 데이터 스트림은 원본 패킷 및 패킷 손실 은닉 패킷을 포함한다.
송신 디바이스는 원본 패킷 및 패킷 손실 은닉 패킷을 수신 디바이스에 송신한다. 따라서 패킷 손실 은닉 패킷을 수신한 후에, 수신 디바이스는 패킷 손실 은닉 패킷에 기반하여, 전송 프로세스에서 손실된 패킷을 복구한다. 구체적으로, 수신 디바이스는 원본 패킷 및 패킷 손실 은닉 패킷을 디코딩하고, 중복 제거 및 재배열을 수행하여 원본 데이터 패킷을 획득한다.
S104: 수신 디바이스가 수신된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷을 복구한다.
즉, 수신 디바이스는 송신 디바이스로부터 수신된 패킷 손실 은닉 정책에 따라 데이터 스트림을 디코딩하고, 원본 패킷 및 패킷 손실 은닉 패킷을 재배열한다.
일 실시예에서, 패킷 손실 은닉 패킷은 지시 정보를 포함하고, 지시 정보는 ARQ, 패킷 복제 또는 FEC와 같은 패킷 손실 은닉 패킷에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 패킷 손실 은닉 패킷의 특정 포맷이 도 4에 도시된다. 도 4에서, 패킷 손실 은닉 패킷은 지시 정보 및 페이로드(payload)를 포함하며, 여기서 페이로드는 전송될 데이터를 전달하는 데 사용된다.
지시 정보는 데이터 스트림을 송신하는 데 사용되는 식별자, 예를 들어 데이터 스트림의 5-튜플(tuple)을 지시하는 데 추가로 사용될 수 있다. 일 실시예에서, 데이터 스트림을 송신하는 데 사용되는 2개의 경로들이 있을 때, 지시 정보는 원본 패킷을 송신하는 데 사용되는 경로의 식별자 및 패킷 손실 은닉 패킷을 송신하는 데 사용되는 경로의 식별자와 같은 정보를 지시하는 데 사용된다.
선택적으로, 일 실시예에서, 패킷 손실 은닉 패킷은 도 4에 도시된 바와 같이, 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 예를 들어, 지시 정보에 의해 지시된 패킷 손실 은닉 정책이 FEC이라면, 패킷 손실 은닉 패킷의 코딩 파라미터는 FEC 블록 코딩 또는 FEC 컨볼루션 코딩을 전달할 수 있다. 블록 코딩은: RS 코딩, 분수(fountain) 코딩, 랩터(raptor) 코딩 또는 LDPC 코딩 중 하나를 포함할 수 있다. 컨볼루션 코딩은 LDPC 코딩 또는 폴라(polar) 코딩을 포함할 수 있다. 추가로, 패킷 손실 은닉의 코딩 파라미터는 RS 코딩에서의 블록 길이 및 리던던트 패킷들의 양과 같은 다른 관련 파라미터들을 추가로 전달할 수 있다.
일 실시예에서, 지시 정보는 패킷 손실 은닉 패킷의 확장 필드에서 전달된다.
선택적으로, 일 실시예에서, 수신 디바이스가 데이터 스트림을 디코딩하고 원본 패킷 및 패킷 손실 은닉 패킷을 재배열하기 전에, 이 방법은 다음을 더 포함한다:
수신 디바이스는 송신 디바이스에 의해 송신된 제어 메시지를 수신하며, 여기서 제어 메시지는 지시 정보를 포함하고, 지시 정보는 ARQ, 패킷 복제 또는 FEC와 같은 패킷 손실 은닉 패킷에 대한 것인 패킷 손실 은닉 정책을 지시한다. 특정 패킷 손실 은닉 패킷이 도 4에 도시된다.
지시 정보는 추가로, 데이터 스트림의 식별자 및 데이터 스트림을 송신하는 데 사용되는 경로의 식별자와 같은 정보를 지시하는 데 사용된다. 일 실시예에서, 데이터 스트림을 송신하는 데 사용되는 2개의 경로들이 있을 때, 지시 정보는 원본 패킷을 송신하는 데 사용되는 경로의 식별자 및 패킷 손실 은닉 패킷을 송신하는 데 사용되는 경로의 식별자와 같은 정보를 지시하는 데 사용된다.
선택적으로, 일 실시예에서, 제어 메시지는 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함할 수 있다. 예를 들어, 지시 정보에 의해 지시된 패킷 손실 은닉 정책이 FEC이라면, 패킷 손실 은닉 패킷의 코딩 파라미터는 FEC 블록 코딩 또는 FEC 컨볼루션 코딩을 전달할 수 있다. 블록 코딩은: RS 코딩, 분수 코딩, 랩터 코딩 또는 LDPC 코딩 중 하나를 포함할 수 있다. 컨볼루션 코딩은 LDPC 코딩 또는 폴라 코딩을 포함할 수 있다. 추가로, 패킷 손실 은닉의 코딩 파라미터는 RS 코딩에서의 블록 길이 및 리던던트 패킷들의 양과 같은 다른 관련 파라미터들을 추가로 전달할 수 있다.
이런 식으로, 수신 디바이스는 패킷 손실 은닉 패킷 또는 수신된 제어 메시지에서 지시 정보에 의해 지시된 패킷 손실 은닉 정책에 따라 패킷 손실 은닉 패킷을 디코딩하고, 원본 패킷 및 패킷 손실 은닉 패킷을 재배열하여 원본 데이터 패킷, 즉 원본 데이터 스트림을 획득한다.
예를 들어, 도 5a 내지 도 5c에 도시된 바와 같이, 패킷 손실 은닉 정책이 FEC인 예가 설명을 위해 사용된다. (1) 송신 디바이스가 원본 데이터 스트림, 즉 원본 패킷들 1, 2, 3, 4, 5 및 6을 획득한다. (2) 송신 디바이스가 FEC에 따라, 인코딩되는 원본 패킷들의 양을 결정한다. 인코딩되는 원본 패킷들의 양을 결정하는 방식은 다음의 여러 방식들: 패킷 코딩에서 설정되는 패킷들의 최대량, 타임아웃(timeout) 메커니즘이 트리거된 후에 수집된 패킷들의 양, 또는 컨볼루션 코딩에서 대응하는 메커니즘을 사용함으로써 결정되는 패킷들의 양을 포함할 수 있지만 이에 제한되는 것은 아니다. 예를 들어, 인코딩되는 원본 패킷들은 1, 2, 3 및 4이다. (3) 송신 디바이스는 코딩 파라미터들, 이를테면 원본 패킷들의 양(K), 리던던트 패킷들의 양(R), 원본 패킷의 길이, 및 패킷 코딩에 있는 코딩 길이, 또는 컨볼루션 코딩의 대응하는 코딩 파라미터들을 결정한다. (4) 송신 디바이스는 결정된 코딩 파라미터들에 기반하여 FEC 코딩을 수행하고, 인코딩된 패킷을 생성한다. 상이한 코딩 알고리즘들에 따르면, 생성되는 인코딩된 패킷은 새로 생성된 리던던트 패킷들 a, b 및 c를 포함할 수 있거나, 원본 패킷들 1, 2, 3 및 4 또는 리던던트 패킷들 a, b 및 c를 포함할 수 있다. (5) 송신 디바이스는 데이터 스트림(1234abc)을 획득하도록 원본 패킷들 및 리던던트 패킷들을 캡슐화한다. 일 실시예에서, 송신 디바이스는 추가 제어 메시지를 사용함으로써, 디코딩을 위해 요구되는 정보(예를 들어, 디코딩 파라미터들)를 수신 디바이스에 송신하여, 수신 디바이스가 데이터 스트림을 수신한 후에 제어 메시지에 기반하여 데이터 스트림을 디코딩할 수 있다. 이 단계에서, 제어 메시지는 패킷 손실 은닉 패킷의 지시 정보 및 코딩 파라미터, 예를 들어 패킷 코딩을 위한 블록 크기를 포함할 수 있다. (6) 송신 디바이스는 WAN 링크를 통해 데이터 스트림(1234abc)을 수신 디바이스에 전송하며, 여기서 데이터 스트림은 원본 패킷 및 패킷 손실 은닉 패킷을 포함한다. (7) WAN 링크가 불안정하기 때문에, 데이터 스트림을 전송할 때 패킷 손실이 발생할 수 있다. 이 경우, 수신 디바이스는 데이터 스트림에서 13abc만을 수신할 수 있다. (8) 수신 디바이스는 수신된 데이터 스트림(13abc)을 배열한다. (9) 수신 디바이스는 송신 디바이스에 의해 송신된 제어 메시지로부터 디코딩 파라미터들, 이를테면 원본 패킷들의 양(K), 리던던트 패킷들의 양(R), 원본 패킷의 길이, 및 코딩 길이, 또는 컨볼루션 코딩에서의 대응하는 코딩 파라미터들을 획득한다. (10) 수신 디바이스는 디코딩 파라미터들에 기반하여 실제로 수신된 데이터 스트림(13ab)을 디코딩하고, 손실된 패킷들을 복구한다. (11) 수신 디바이스는 복구된 패킷들 및 수신된 원본 패킷들을 재배열하여 1, 2, 3 및 4를 획득한다. (12) 수신 디바이스는 (11)에서 복구된 패킷들 1, 2, 3 및 4를 단말에 송신한다. 패킷들이 오디오 및 비디오 패킷들이라면, 단말은 오디오 및 비디오 패킷들을 디스플레이하는 것이 가능하게 됨으로써, 패킷 손실 은닉 전송 효율을 개선하고 사용자 경험을 개선한다.
도 5c의 (4)에서, 송신 디바이스는 결정된 코딩 파라미터들에 기반하여 FEC 코딩을 수행하여, 인코딩된 패킷을 생성하며, 여기서 인코딩된 패킷은 패킷 손실 은닉 패킷일 수 있다. 일 실시예에서, 송신 디바이스는 패킷 손실 은닉 정책, 즉 도 3의 S102에 따라 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성한다.
송신 디바이스가 패킷 손실 은닉 정책에 따라 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하는 프로세스가 도 6에 도시된다. 도 6에서, 송신 디바이스는 패킷 손실 은닉 제어기를 포함한다. 패킷 손실 은닉 제어기는 데이터 스트림을 송신하는 데 사용되는 경로를 결정하고, 데이터 스트림을 송신하는 데 사용되는 경로에 기반하여 패킷 손실 은닉 정책을 결정하도록 구성되어, 송신 디바이스가 패킷 손실 은닉 정책에 따라 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성한다.
일 실시예에서, 송신 디바이스는 데이터 스트림을 송신하기 위한 주어진 최적화 타깃 정보를 획득한다. 예를 들어, 송신될 데이터 스트림이 화상 회의의 비디오 스트림이라면, 화상 회의의 전체적인 효과, 이를테면 프레임 정지 없음 및 매끄러운 비디오가 보장될 필요가 있다. 송신 디바이스는 내부 변환을 통해 패킷 손실 은닉 타깃 값을 생성한다. 예를 들어, 전송 프로세스에서의 데이터 스트림의 패킷 손실률은 0.01% 미만일 필요가 있다. 송신 디바이스의 패킷 손실 은닉 제어기는 데이터 스트림을 송신하는 데 사용되는 경로의 경로 상태 정보, 이를테면 패킷 손실률, 지연 및 네트워크 지터에 기반하여 패킷 손실 은닉 정책을 동적으로 결정하여, 패킷 손실 은닉 정책에 따라 패킷 손실 은닉 패킷을 생성한다.
일 실시예에서, 패킷 손실 은닉 제어기는 설정된 제약 조건, 예를 들어 패킷 손실률 임계치, 지연 임계치, 네트워크 지터 임계치, 이용 가능한 대역폭 임계치 및 다른 임계치에 기반하여 경로의 경로 상태 정보를 제약하여 패킷 손실 은닉 정책을 결정할 수 있다. 패킷 손실 은닉 정책은 ARQ, 패킷 복제 및 FEC를 포함한다. 송신 디바이스는 패킷 손실 은닉 정책에 따라 패킷 손실 은닉 패킷을 생성하고, 경로 혼잡 제어 메커니즘 및 경로 선택 메커니즘에 기반하여 데이터 스트림을 수신 디바이스에 송신한다.
패킷 손실 은닉 정책은 동적으로 결정되고, 패킷 손실 은닉 정책에 따라 패킷 손실 은닉 패킷이 생성되어, 데이터 스트림을 송신하는 패킷 손실 은닉 능력이 향상되고, 사용자 경험이 개선된다.
선택적으로, 도 7에 도시된 바와 같이, 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책이 결정되기 전에, 즉 도 3에 도시된 실시예에서의 S101 전에, 이 방법은 다음의 단계를 더 포함할 수 있다:
S105: 송신 디바이스가 송신 디바이스로부터 수신 디바이스로의 적어도 2개의 경로들에서 데이터 스트림을 송신하기 위한 경로를 결정한다.
일 실시예에서, 도 8에 도시된 바와 같이, 송신 디바이스로부터 수신 디바이스로의 적어도 2개의 경로들에서 데이터 스트림을 송신하기 위한 경로를 결정하는 것은 다음을 포함한다:
S1051: 송신 디바이스가 데이터 스트림을 송신하는 데 사용되는 적어도 2개의 경로들을 획득한다.
일 실시예에서, 송신 디바이스는 도 1에 도시된 제어기로부터, 데이터 스트림을 송신하는 데 사용되는 적어도 2개의 경로들을 획득한다. 다시 말해서, 제어기는 데이터 스트림을 송신하는 데 사용되는 경로들을 송신 디바이스에 통지한다. 대안으로, 송신 디바이스는 로컬 터널 상태 유지보수와 같은 정보를 사용함으로써, 데이터 스트림을 송신하는 데 사용되는 적어도 2개의 경로들을 획득한다. 적어도 2개의 경로들은 송신 디바이스로부터 수신 디바이스로의 적어도 2개의 경로들이다.
일 실시예에서, 송신 디바이스가 제어기로부터, 데이터 스트림을 송신하는 데 사용되는 하나의 경로만을 획득할 때, 또는 송신 디바이스가 로컬 터널 상태 유지보수와 같은 정보를 사용함으로써, 데이터 스트림을 송신하는 데 사용되는 하나의 경로만을 획득할 때, 송신 디바이스는 그 경로를 사용하여 데이터 스트림을 전송한다.
S1052: 송신 디바이스가 적어도 2개의 경로들의 제2 경로 상태 정보에 기반하여, 데이터 스트림을 송신하기 위한 경로를 결정한다.
데이터 스트림을 송신하는 데 사용되는 2개 이상의 경로들을 획득할 때, 송신 디바이스는 각각의 경로의 경로 상태 정보, 이를테면 데이터 스트림을 송신하기 위한 각각의 경로의 패킷 손실률, 일방향 지연, 양방향 지연, 네트워크 지터 및 이용 가능한 대역폭을 측정하고, 각각의 경로의 경로 상태 정보에 기반하여, 데이터 스트림을 송신하는 데 최종적으로 사용되는 경로를 결정한다.
일 실시예에서, 송신 디바이스는 적어도 2개의 경로들의 패킷 손실률들에 기반하여 데이터 스트림을 송신하기 위한 하나의 경로들, 2개의 경로들 또는 복수의 경로들을 결정한다.
일 실시예에서, 송신 디바이스는 적어도 2개의 획득된 경로들의 패킷 손실률들, 지연들, 네트워크 지터들, 이용 가능한 대역폭들 및 지연 차들 중 적어도 하나에 기반하여, 데이터 스트림을 송신하기 위한 하나 또는 2개의 경로들을 결정한다.
예를 들어, 일 실시예에서, 도 9에 도시된 바와 같이, 송신 디바이스는 먼저, 적어도 2개의 경로들 각각의 패킷 손실률이 미리 설정된 패킷 손실률 임계치(Lossthreshold)를 충족하는지 여부를 결정한다. 패킷 손실률 임계치를 충족하는 하나의 경로가 있을 때, 송신 디바이스는 단일 경로 상에서 데이터 스트림을 송신하는데, 즉 경로 상에서 데이터 스트림을 송신한다. 패킷 손실률 임계치를 충족하는 하나보다 많은 경로가 있을 때, 송신 디바이스는 하나보다 많은 경로의 지연이 미리 설정된 지연 임계치(Delaythreshold)를 충족하는지 여부를 추가로 결정한다. 지연 임계치를 충족하는 하나의 경로가 있을 때, 송신 디바이스는 경로 상에서 데이터 스트림을 송신한다. 지연 임계치를 충족하는 하나보다 많은 경로가 존재할 때, 송신 디바이스는 하나보다 많은 경로의 네트워크 지터가 미리 설정된 네트워크 지터 임계치(Jitterthreshold)를 충족하는지 여부를 추가로 결정한다. 네트워크 지터 임계치를 충족하는 하나의 경로가 있을 때, 송신 디바이스는 경로 상에서 데이터 스트림을 송신한다. 네트워크 지터 임계치를 충족하는 하나보다 많은 경로가 있을 때, 송신 디바이스는 하나보다 많은 경로의 이용 가능한 대역폭에 기반하여, 데이터 스트림을 송신하는 데 최종적으로 사용되는 경로를 추가로 결정할 수 있다. 예를 들어, 송신 디바이스는 하나보다 많은 경로의 대역폭이 미리 설정된 대역폭 임계치(Bandthreshold)를 충족하는지 여부를 결정한다. 대역폭 임계치를 충족하는 하나의 경로가 있을 때, 송신 디바이스는 경로 상에서 데이터 스트림을 송신한다.
일 실시예에서, 대역폭 임계치를 충족하는 하나보다 많은 경로가 존재하고 데이터 스트림을 송신하기 위해 단일 경로가 사용될 때, 송신 디바이스는 데이터 스트림을 송신하기 위한 경로로서 최대 이용 가능한 대역폭을 갖는 경로를 결정할 수 있다.
일 실시예에서, 대역폭 임계치를 충족하는 하나보다 많은 경로가 있을 때, 송신 디바이스는 이용 가능한 대역폭들에서 비교적 큰 대역폭들을 갖는 2개 이상의 경로들을 데이터 스트림을 송신하기 위한 경로들로서 결정할 수 있다.
일 실시예에서, 도 10에 도시된 바와 같이, 대역폭 임계치를 충족하는 하나보다 많은 경로가 있을 때, 송신 디바이스는 추가로, 대역폭 임계치를 충족시키는 하나보다 많은 경로에서, 임의의 2개의 경로들의 지연 차가 미리 설정된 지연 차 임계치(Delta_delaythreshold)를 충족시키는지 여부를 결정할 수 있다. 대역폭 임계치를 충족하는 하나보다 많은 경로에서 2개의 경로들의 지연 차가 지연 차 임계치를 충족할 때, 송신 디바이스는 2개의 경로들 상에서 데이터 스트림을 송신하기로 결정한다.
일 실시예에서, 대역폭 임계치를 충족하는 하나보다 많은 경로에서 경로들의 복수의 쌍들 각각이 지연 차 임계치를 충족시키는 지연 차를 가질 때, 송신 디바이스는 최소 지연 차를 갖는 2개의 경로들 상에서 데이터 스트림을 송신하기로 결정한다.
일 실시예에서, 송신 디바이스는 지연 차가 미리 설정된 지연 차 임계치 미만인 2개의 경로들 상에서 데이터 스트림을 송신하기로 결정한다. 다시 말해서, 데이터 스트림을 송신하는 데 사용되는 2개의 경로들이 있을 때, 2개의 경로들의 지연 차는 미리 설정된 지연 차 임계치 미만이다.
본 출원의 실시예들에서, 송신 디바이스는 경로의 패킷 손실률 및 경로의 지연, 네트워크 지터, 이용 가능한 대역폭 또는 지연 차 중 적어도 하나의 상이한 결정 시퀀스들에서, 데이터 스트림을 송신하기 위한 경로를 결정할 수 있다는 점이 주목되어야 한다. 본 출원의 실시예들에서 이는 제한되지 않는다.
일 실시예에서, 데이터 스트림을 송신하는 데 사용되는 하나의 경로가 존재한다고 최종적으로 결정되면, 송신 디바이스가 도 3의 경로 상에서 데이터 스트림을 송신하는 S103은 구체적으로 다음과 같다: 송신 디바이스는 경로 상에서 원본 패킷 및 패킷 손실 은닉 패킷을 포함하는 데이터 스트림을 송신하여, 패킷 손실 은닉 패킷을 수신한 후에, 수신 디바이스가 패킷 손실 은닉 패킷에 기반하여, 전송 프로세스에서 손실된 패킷을 복구한다.
일 실시예에서, 송신 디바이스가 데이터 스트림을 송신하는 데 사용되는 하나의 경로가 있다고 결정하면, 송신 디바이스는 경로 상에서 원본 패킷 및 패킷 손실 은닉 패킷을 포함하는 데이터 스트림을 송신한다.
선택적으로, 일 실시예에서, 도 11에 도시된 바와 같이, 송신 디바이스는 현재 경로 상태 정보에 기반하여, 데이터 스트림을 송신하는 데 사용되는 최적의 경로를 동적으로 결정하고, 상이한 패킷 손실 은닉 정책들에 따라 데이터 스트림을 송신한다. 도 11에서, 한 순간에 데이터 스트림을 송신하는 데 사용되고 있는 경로의 상태가 비교적 열악할 때, 데이터 스트림을 송신하기 위해, 경로 상태가 비교적 양호한 경로로 경로가 스위칭된다.
일 실시예에서, 송신 디바이스가 데이터 스트림을 송신하는 데 사용되는 2개의 경로들이 있다고 결정하면, 송신 디바이스는 2개의 경로들의 일방향 지연들을 개별적으로 결정하고, 2개의 경로들의 지연 차를 결정한다. 원본 패킷은 더 긴 지연을 갖는 경로 상에서 송신되고, 패킷 손실 은닉 패킷은 더 짧은 지연을 갖는 경로 상에서 송신된다. 추가로, 패킷 손실 은닉 패킷은 원본 패킷이 송신된 후에 송신되고, 원본 패킷 및 패킷 손실 은닉 패킷은 시간 간격(t)으로 송신되며, 여기서 t는 도 12에 도시된 바와 같이, 2개의 경로들 상에서 데이터 스트림을 송신하기 위한 일방향 시간 차이므로, 원본 패킷과 패킷 손실 은닉 패킷이 동시에 수신 디바이스에 도달한다.
2개의 경로들의 지연 차를 계산하는 프로세스가 도 13에 도시된다. 도 13에서, 라우터 1은 송신 디바이스이고, 라우터 2는 수신 디바이스이다. 도 13에서, 기록된 시점들은 라우터 1 및 라우터 2 상의 로컬 시점들이라는 점이 주목되어야 한다. 라우터 1 상의 시점 및 라우터 2 상의 시점은 교정되지 않으며, 라우터 1 상의 로컬 시점 및 라우터 2 상의 로컬 시점은 대응하지 않을 수 있다. 예를 들어, 현재 시점은 북경 시간 오전 9시이고, 라우터 1 상의 현재 시점은 북경 시간 오전 9시 1분이고, 라우터 2 상의 현재 시점은 북경 시간 오전 9시 2분이다. 표기법들의 의미들은 아래와 같이 설명된다:
t1은 패킷 1이 라우터 1에 도달하는 로컬 시점이다.
t1'은 패킷 1이 라우터 2에 도달하는 로컬 시점이다.
t1sA는 패킷 1(예를 들어, 원본 패킷)이 경로 A 상에서 송신되는, 라우터 1 상의 로컬 시점이다.
t1rA는 패킷 1(예를 들어, 원본 패킷)이 경로 A를 따라 라우터 2에 도달하는, 라우터 2 상의 로컬 시점이다.
t1sB는 패킷 1(예를 들어, 패킷 손실 은닉 패킷)이 경로 B 상에서 송신되는, 라우터 1 상의 로컬 시점이다.
t1rB는 패킷 1(예를 들어, 패킷 손실 은닉 패킷)이 경로 B를 따라 라우터 2에 도달하는, 라우터 2 상의 로컬 시점이다.
Δclock은 라우터 1 상의 로컬 시점과 라우터 2 상의 로컬 시점 사이의 클록 오프셋이다. 예를 들어, 현재 순간에, 라우터 1 상의 시점이 북경 시간 오전 9시 1분이고 라우터 2 상의 시점이 북경 시간 오전 9시 1분이라면, Δclock은 1분이다.
ΔA는 경로 A 상에서 라우터 1이 패킷 1을 수신하는 시점과 라우터 1이 패킷 1을 송신하는 시점 사이의 간격이다.
ΔB는 경로 B 상에서 라우터 1이 패킷 1을 수신하는 시점과 라우터 1이 패킷 1을 송신하는 시점 사이의 간격이다.
TA는 경로 A 상에서 라우터 1로부터 라우터 2로 패킷 1 또는 패킷 2를 전송하는 시간 기간이다.
TB는 경로 B 상에서 라우터 1로부터 라우터 2로 패킷 1 또는 패킷 2를 전송하는 시간 기간이다.
t2는 패킷 2가 라우터 1에 도달하는 로컬 시점이다.
t2'은 패킷 2가 라우터 2에 도달하는 로컬 시점이다.
t2sA는 패킷 2(예를 들어, 원본 패킷)가 경로 A 상에서 송신되는, 라우터 1 상의 로컬 시점이다.
t2rA는 패킷 2(예를 들어, 원본 패킷)가 경로 A를 따라 라우터 2에 도달하는, 라우터 2 상의 로컬 시점이다.
t2sB는 패킷 2(예를 들어, 패킷 손실 은닉 패킷)가 경로 B 상에서 송신되는, 라우터 1 상의 로컬 시점이다.
t2rB는 패킷 2(예를 들어, 패킷 손실 은닉 패킷)가 경로 B를 따라 라우터 2에 도달하는, 라우터 2 상의 로컬 시점이다.
이 경우, 다음 식들이 참이다:
따라서 패킷 1이 경로 A를 통해 라우터에 도달하는 시점과 패킷 1이 경로 B를 통해 라우터에 도달하는 시점 사이의 시간 차(Δpath)는 다음과 같다:
ΔBA일 때, Δpath=t1rB-t1rA이다.
추가로, 최대 지터는 J=max(abs{(t2rx-t2)-(t1ry-t1)})이며, 여기서 x 및 y는 {A, B, C, …}에 속하고, t2rx는 패킷 2가 경로 x를 따라 라우터 2에 도달하는, 라우터 2 상의 로컬 시점이고, t1ry는 패킷 1이 경로 y를 따라 라우터 2에 도달하는, 라우터 2 상의 로컬 시점이다.
최대 지터는 t1ry=t1A+TA 및 t2rx=t2B+TB를 J=max(abs{(t2rx-t2)-(t1ry-t1)})에 대입함으로써 다음과 같이 획득된다:
J=max(abs{T2x-T1y2x1y})
T2x는 경로 x 상에서 패킷 2를 전송하는 시간 기간을 나타내고, T1y는 경로 y 상에서 패킷 1을 전송하는 시간 기간을 나타낸다. x 및 y는 각각 경로이다. 예를 들어, x는 경로 B이고, y는 경로 A이다. Δ2x는 패킷 2가 경로 x 상에서 송신되기 전에 존재하는 대기 시간 기간이다. Δ1y는 패킷 1이 경로 y 상에서 송신되기 전에 존재하는 대기 시간 기간이다.
일 실시예에서, 라우터 1은 지연 제어를 수행하지 않는다. 패킷을 수신할 때, 라우터 1은 경로 A 및 경로 B 상에서 패킷을 즉시 송신하는데, 즉 ΔBA=0이다. 따라서 J=max(abs{T2x-T1y})이다. 이 경우, 라우터 2는 고정 크기 버퍼로 지터에 저항할 필요가 있다.
일 실시예에서, 라우터 1은 패킷을 송신하기 전에 J를 예측하고, J가 미리 설정된 임계치보다 크다고 예측할 때, 라우터 1은 단일 경로 상에서 패킷을 송신한다.
일 실시예에서, 라우터 1은 지연 제어를 수행하고, 원본 패킷 및 패킷 손실 은닉 패킷이 동시에 라우터 2에 도달할 것을 요구하는데, 즉 Δ1x+T1x1y+T1y이다. 따라서 J=max(abs{T2x}-max{T1y})이다.
라우터 1이 지연 제어를 수행한 후에, 지터는 단일 경로 상에 있는 경향이 있으며, 이 해법은 여전히 라우터 2의 버퍼링에 의존할 필요가 있다. 구체적으로, 지터가 단일 경로 상에 있는 경향이 있다는 것은, 전송을 위해 복수의 경로들이 추가된 후에, 데이터 스트림의 최대 지터 값이 복수의 선택된 경로들 내의 경로 상의 최소 지터 값에 접근한다는 것을 의미한다. 다시 말해서, 복수의 경로들은 데이터 스트림의 지터 값을 증가시키지 않는데, 즉 더 많은 지터들을 야기하지 않으며, 따라서 사용자 경험에 영향을 미치지 않는다.
이 경우, 전송 지연이 증가될 수 있다. 도 14에 도시된 바와 같이, 2개의 경로들 상에서 데이터 스트림을 송신하기로 결정하면, 송신 디바이스는 2개의 경로들의 지연들을 개별적으로 결정하고, 2개의 경로들의 시간 차를 결정한다. 송신 디바이스는 더 긴 지연을 갖는 경로 상에서 원본 패킷을 송신한다. 원본 패킷이 송신된 이후 지연 차의 간격에서, 송신 디바이스는 더 짧은 지연을 갖는 경로 상에서 패킷 손실 은닉 패킷을 송신하여, 원본 패킷과 패킷 손실 은닉 패킷이 동시에 수신 디바이스에 도달한다. 수신 디바이스는 패킷들을 디코딩 및 재정렬하고, 패킷들을 대응하는 단말에 포워딩한다. 추가로, 수신 디바이스는 대역 내 측정을 수행한다. 구체적으로, 원본 패킷 및 패킷 손실 은닉 패킷을 수신하면, 수신 디바이스는 경로들의 경로 상태들을 측정하고, 경로 상태 정보를 송신 디바이스에 송신한다.
송신 디바이스는 경로들의 경로 상태 정보를 수신하고, 데이터 스트림이 현재 송신되는 2개의 경로들이 여전히 (패킷 손실률, 지연, 네트워크 지터, 대역폭 등을 포함하는) 지정된 임계치를 충족하는지 여부를 결정한다. 2개의 경로들이 임계치를 충족한다면, 송신 디바이스는 여전히 2개의 경로들 상에서 데이터 스트림을 송신한다. 2개의 경로들이 임계치를 충족하지 않는다면, 송신 디바이스는 더 양호한 경로 상태 정보를 갖는 선택된 경로 상에서 데이터 스트림을 송신한다. 이 경우, 2개의 경로들 상에서의 데이터 스트림의 송신은 하나의 경로 상에서의 데이터 스트림의 송신으로 스위칭된다.
다음 기간에서, 경로 상태 정보가 지정된 임계치를 충족하는 다른 2개의 경로들을 송신 디바이스가 결정한다면, 송신 디바이스는 하나의 경로 상에서의 데이터 스트림의 송신을 2개의 경로들 상에서의 데이터 스트림의 송신으로 스위칭한다. 송신 디바이스에 의해 데이터 스트림을 송신하는 데 사용되는 경로를 결정하는 것은 커맨드를 사용함으로써 또는 다른 방식으로 구성될 수 있다.
일 실시예에서, 데이터 스트림을 송신하는 데 사용되는 경로를 결정하고 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 결정하는 것은 대안으로, 송신 디바이스 이외의 (이후에 제어 디바이스로 지칭되는) 제3자 디바이스에 의해 완료될 수 있다.
일 실시예에서, 도 15에 도시된 바와 같이, 제어 디바이스는 송신 디바이스로부터 수신 디바이스로의 적어도 2개의 경로들의 (제2 경로 상태 정보로도 또한 지칭되는) 경로 상태 정보에 기반하여, 데이터 스트림을 송신하는 데 사용되는 경로를 결정하고; 제어 디바이스는 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하며; 그리고 제어 디바이스는 결정된 패킷 손실 은닉 정책을 송신 디바이스에 송신한다. 즉, 송신 디바이스가 데이터 스트림을 송신하기 전에, 송신 디바이스는 제어 디바이스로부터 패킷 손실 은닉 정책을 획득하여, 송신 디바이스는 패킷 손실 은닉 정책에 따라 패킷 손실 은닉 패킷을 생성함으로써, 데이터 스트림의 송신을 완료한다.
선택적으로, 일 실시예에서, 제2 경로 상태 정보는 패킷 손실률을 포함한다.
선택적으로, 일 실시예에서, 제2 경로 상태 정보는 지연, 네트워크 지터, 대역폭 및 지연 차 중 적어도 하나를 더 포함한다.
선택적으로, 일 실시예에서, 데이터 스트림을 송신하는 데 사용되는 하나의 경로 또는 2개의 경로들이 존재한다.
선택적으로, 일 실시예에서, 데이터 스트림을 송신하는 데 사용되는 2개의 경로들이 있을 때, 데이터 스트림을 송신하는 데 사용되는 경로들의 지연 차는 지연 차 임계치 미만이다.
선택적으로, 일 실시예에서, 제3 양상의 제5 가능한 구현에서, 제어 디바이스가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하는 것은 다음을 포함한다:
제어 디바이스가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보, 데이터 스트림의 패킷 손실 은닉 타깃 값 또는 데이터 스트림의 트래픽 레이트 중 적어도 하나에 기반하여 패킷 손실 은닉 정책을 결정하며, 여기서 패킷 손실 은닉 타깃 값은, 결정된 패킷 손실 은닉 정책을 사용함으로써 데이터 스트림에 대해 패킷 손실 복구가 수행된 후에 획득된 패킷 손실률이 데이터 스트림을 송신하기 위한 패킷 손실률 상한 미만인 것을 보장하도록, 패킷 손실률 상한을 포함한다.
제어 디바이스가 데이터 스트림을 송신하는 데 사용되는 경로를 결정하고 제어 디바이스가 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 결정하는 프로세스들은, 송신 디바이스가 데이터 스트림을 송신하는 데 사용되는 경로를 결정하고 송신 디바이스가 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 결정하는 프로세스들과 동일하다. 설명의 간결성을 위해, 세부사항들은 본 명세서에서 다시 설명되지 않는다.
본 출원의 실시예는 데이터 스트림 전송 디바이스를 제공한다. 전송 디바이스는 송신 디바이스이다. 도 16에 도시된 바와 같이, 송신 디바이스는 결정 유닛(210), 생성 유닛(220) 및 송신 유닛(230)을 포함한다.
결정 유닛(210)은 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하도록 구성된다.
생성 유닛(220)은 패킷 손실 은닉 정책에 따라 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하도록 구성된다.
송신 유닛(230)은 경로 상에서 데이터 스트림을 송신하도록 구성된다. 데이터 스트림은 원본 패킷 및 패킷 손실 은닉 패킷을 포함한다. 따라서 데이터 스트림을 수신할 때, 수신 디바이스는 송신 디바이스로부터 수신된 패킷 손실 은닉 정책에 따라 데이터 스트림을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이는 패킷 손실 복구 효과를 효과적으로 개선하고, 사용자 경험을 개선한다.
일 실시예에서, 결정 유닛(210)은 송신 디바이스로부터 수신 디바이스로의 적어도 2개의 경로들의 제2 경로 상태 정보에 기반하여, 데이터 스트림을 송신하는 데 사용되는 경로를 결정하도록 추가로 구성된다.
일 실시예에서, 제2 경로 상태 정보는 패킷 손실률을 포함한다. 선택적으로, 일 실시예에서, 제2 경로 상태 정보는 지연, 네트워크 지터, 대역폭 및 지연 차 중 적어도 하나를 더 포함한다.
선택적으로, 일 실시예에서, 데이터 스트림을 송신하는 데 사용되는 하나의 경로 또는 2개의 경로들이 존재한다.
일 실시예에서, 데이터 스트림을 송신하는 데 사용되는 2개의 경로들이 있을 때, 데이터 스트림을 송신하는 데 사용되는 경로들의 지연 차는 지연 차 임계치 미만이다.
선택적으로, 일 실시예에서, 결정 유닛(210)이 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하는 것은 다음을 포함한다:
결정 유닛(210)이 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보, 데이터 스트림의 패킷 손실 은닉 타깃 값 또는 데이터 스트림의 트래픽 레이트 중 적어도 하나에 기반하여 패킷 손실 은닉 정책을 결정하며, 여기서 패킷 손실 은닉 타깃 값은, 결정된 패킷 손실 은닉 정책을 사용함으로써 데이터 스트림에 대해 패킷 손실 복구가 수행된 후에 획득된 패킷 손실률이 데이터 스트림을 송신하기 위한 패킷 손실률 상한 미만인 것을 보장하도록, 패킷 손실률 상한을 포함한다.
일 실시예에서, 제1 경로 상태 정보는 지연 또는 패킷 손실률 중 적어도 하나를 포함한다.
선택적으로, 일 실시예에서, 패킷 손실 은닉 정책은 자동 재전송 요청(ARQ), 패킷 복제 및 순방향 에러 정정(FEC) 중 적어도 하나를 포함한다.
일 실시예에서, 패킷 손실 은닉 정책이 순방향 에러 정정(FEC)일 때, 패킷 손실 은닉 패킷은 리던던트 패킷이다. 생성 유닛(220)이 패킷 손실 은닉 정책에 따라 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하는 것은 다음을 포함한다:
결정 유닛(210)이 FEC 코딩 방식을 결정하며, 여기서 코딩 방식은 블록 코딩 또는 컨볼루션 코딩을 포함한다.
생성 유닛(220)은 리던던트 패킷을 생성하기 위해, 결정된 코딩 방식에 기반하여 원본 패킷을 인코딩한다.
선택적으로, 일 실시예에서, 송신 유닛(230)은 패킷 손실 은닉 제어 메시지를 수신 디바이스에 송신하도록 추가로 구성되며, 여기서 패킷 손실 은닉 제어 메시지는 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
선택적으로, 일 실시예에서, 지시 정보는 데이터 스트림의 식별자 및 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
선택적으로, 일 실시예에서, 패킷 손실 은닉 메시지는 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
선택적으로, 일 실시예에서, 패킷 손실 은닉 패킷은 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
선택적으로, 일 실시예에서, 지시 정보는 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
일 실시예에서, 지시 정보는 패킷 손실 은닉 패킷의 확장 필드에서 전달된다.
선택적으로, 일 실시예에서, 패킷 손실 은닉 패킷은 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
선택적으로, 일 실시예에서, 데이터 스트림이 2개의 경로들 상에서 송신될 때, 송신 유닛이 경로 상에서 데이터 스트림을 송신하는 것은:
2개의 경로들 중 더 긴 지연을 갖는 경로 상에서 원본 패킷을 송신하는 것; 그리고 2개의 경로들 중 더 짧은 지연을 갖는 경로 상에서 패킷 손실 은닉 패킷을 송신하는 것을 포함하며, 여기서 패킷 손실 은닉 패킷은 원본 패킷이 송신된 후에 송신되고, 원본 패킷 및 패킷 손실 은닉 패킷은 시간 간격(t)으로 송신되고, t는 2개의 경로들 상에서 데이터 스트림을 송신하는 일방향 지연 차이다.
송신 디바이스의 기능 유닛들의 기능들은 도 3 및 도 7에 도시된 실시예들에서 송신 디바이스에 의해 수행되는 단계들을 사용함으로써 구현될 수 있다. 따라서 본 출원의 이러한 실시예에서 제공되는 디바이스의 특정 작동 프로세스는 본 명세서에서 다시 설명되지 않는다.
본 출원의 실시예는 데이터 스트림 전송 디바이스를 제공한다. 디바이스는 수신 디바이스이다. 도 17에 도시된 바와 같이, 수신 디바이스는 수신 유닛(310) 및 처리 유닛(320)을 포함한다.
수신 유닛(310)은, 데이터 스트림으로 이루어지며 송신 디바이스에 의해 송신되는 원본 패킷 및 패킷 손실 은닉 패킷을 수신하도록 구성되며, 패킷 손실 은닉 패킷은 패킷 손실 은닉 정책에 따라 생성된다.
처리 유닛(320)은 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷을 복구하도록, 즉 패킷 손실 은닉 패킷을 사용함으로써, 전송 프로세스에서 손실된 원본 패킷을 복구하도록 구성된다. 이는 패킷 손실 복구 효과를 효과적으로 개선하고, 사용자 경험을 개선한다.
선택적으로, 일 실시예에서, 수신 유닛(310)은 패킷 손실 은닉 제어 메시지를 수신하도록 추가로 구성되며, 여기서 패킷 손실 은닉 제어 메시지는 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
일 실시예에서, 지시 정보는 데이터 스트림의 식별자 및 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
선택적으로, 일 실시예에서, 패킷 손실 은닉 메시지는 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
선택적으로, 일 실시예에서, 패킷 손실 은닉 패킷은 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
일 실시예에서, 지시 정보는 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
선택적으로, 일 실시예에서, 지시 정보는 패킷 손실 은닉 패킷의 확장 필드에서 전달된다.
선택적으로, 일 실시예에서, 패킷 손실 은닉 패킷은 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
수신 디바이스의 기능 유닛들의 기능들은 도 3 및 도 7에 도시된 실시예들에서 수신 디바이스에 의해 수행되는 단계들을 사용함으로써 구현될 수 있다. 따라서 본 출원의 이러한 실시예에서 제공되는 디바이스의 특정 작동 프로세스는 본 명세서에서 다시 설명되지 않는다.
본 출원의 실시예는 데이터 스트림 전송 디바이스를 제공한다. 전송 디바이스는 제어 디바이스이다. 도 18에 도시된 바와 같이, 제어 디바이스는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책 및 데이터 스트림을 송신하는 데 사용되는 경로를 결정하도록 구성된다. 제어 디바이스는 결정 유닛(410) 및 송신 유닛(420)을 포함한다.
결정 유닛(410)은 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하도록 구성된다.
송신 유닛(420)은 패킷 손실 은닉 정책을 송신 디바이스에 송신하도록 구성되며, 여기서 패킷 손실 은닉 정책은 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하고 경로 상에서 데이터 스트림을 송신하기 위해 송신 디바이스에 의해 사용된다. 데이터 스트림은 원본 패킷 및 패킷 손실 은닉 패킷을 포함한다. 따라서 데이터 스트림을 수신할 때, 수신 디바이스는 송신 디바이스로부터 수신된 패킷 손실 은닉 정책에 따라 데이터 스트림을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이는 패킷 손실 복구 효과를 효과적으로 개선하고, 사용자 경험을 개선한다.
일 실시예에서, 결정 유닛(410)은 송신 디바이스로부터 수신 디바이스로의 적어도 2개의 경로들의 제2 경로 상태 정보에 기반하여, 데이터 스트림을 송신하는 데 사용되는 경로를 결정하도록 추가로 구성된다.
일 실시예에서, 제2 경로 상태 정보는 패킷 손실률을 포함한다.
선택적으로, 일 실시예에서, 제2 경로 상태 정보는 지연, 네트워크 지터, 대역폭 및 지연 차 중 적어도 하나를 더 포함한다.
선택적으로, 일 실시예에서, 데이터 스트림을 송신하는 데 사용되는 하나의 경로 또는 2개의 경로들이 존재한다.
일 실시예에서, 데이터 스트림을 송신하는 데 사용되는 2개의 경로들이 있을 때, 데이터 스트림을 송신하는 데 사용되는 경로들의 지연 차는 지연 차 임계치 미만이다.
결정 유닛(410)이 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하는 것은 다음을 포함한다:
결정 유닛(410)이 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보, 데이터 스트림의 패킷 손실 은닉 타깃 값 또는 데이터 스트림의 트래픽 레이트 중 적어도 하나에 기반하여 패킷 손실 은닉 정책을 결정하며, 여기서 패킷 손실 은닉 타깃 값은, 결정된 패킷 손실 은닉 정책을 사용함으로써 데이터 스트림에 대해 패킷 손실 복구가 수행된 후에 획득된 패킷 손실률이 데이터 스트림을 송신하기 위한 패킷 손실률 상한 미만인 것을 보장하도록, 패킷 손실률 상한을 포함한다.
선택적으로, 일 실시예에서, 제1 경로 상태 정보는 지연 또는 패킷 손실률 중 적어도 하나를 포함한다.
선택적으로, 일 실시예에서, 패킷 손실 은닉 정책은 자동 재전송 요청(ARQ), 패킷 복제 및 순방향 에러 정정(FEC) 중 적어도 하나를 포함한다.
제어 디바이스의 기능 유닛들의 기능들은 도 15에 도시된 실시예들에서 제어 디바이스에 의해 수행되는 단계들을 사용함으로써 구현될 수 있다. 따라서 본 출원의 이러한 실시예에서 제공되는 디바이스의 특정 작동 프로세스는 본 명세서에서 다시 설명되지 않는다.
본 출원의 실시예는 데이터 스트림 전송 디바이스를 추가로 제공한다. 전송 디바이스는 송신 디바이스이다. 도 19에 도시된 바와 같이, 송신 디바이스는 프로세서(510) 및 전송기(520)를 포함한다.
프로세서(510)는: 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하고; 그리고 패킷 손실 은닉 정책에 따라 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하도록 구성된다.
전송기(520)는 경로 상에서 데이터 스트림을 송신하도록 구성된다. 데이터 스트림은 원본 패킷 및 패킷 손실 은닉 패킷을 포함한다. 따라서 데이터 스트림을 수신할 때, 수신 디바이스는 송신 디바이스로부터 수신된 패킷 손실 은닉 정책에 따라 데이터 스트림을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이는 패킷 손실 복구 효과를 효과적으로 개선하고, 사용자 경험을 개선한다.
일 실시예에서, 프로세서(510)는 송신 디바이스로부터 수신 디바이스로의 적어도 2개의 경로들의 제2 경로 상태 정보에 기반하여, 데이터 스트림을 송신하는 데 사용되는 경로를 결정하도록 추가로 구성된다.
일 실시예에서, 제2 경로 상태 정보는 패킷 손실률을 포함한다.
선택적으로, 일 실시예에서, 제2 경로 상태 정보는 지연, 네트워크 지터, 대역폭 및 지연 차 중 적어도 하나를 더 포함한다.
선택적으로, 일 실시예에서, 데이터 스트림을 송신하는 데 사용되는 하나의 경로 또는 2개의 경로들이 존재한다.
일 실시예에서, 데이터 스트림을 송신하는 데 사용되는 2개의 경로들이 있을 때, 데이터 스트림을 송신하는 데 사용되는 경로들의 지연 차는 지연 차 임계치 미만이다.
일 실시예에서, 프로세서(510)가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하는 것은 다음을 포함한다:
프로세서(510)가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보, 데이터 스트림의 패킷 손실 은닉 타깃 값 또는 데이터 스트림의 트래픽 레이트 중 적어도 하나에 기반하여 패킷 손실 은닉 정책을 결정하며, 여기서 패킷 손실 은닉 타깃 값은, 결정된 패킷 손실 은닉 정책을 사용함으로써 데이터 스트림에 대해 패킷 손실 복구가 수행된 후에 획득된 패킷 손실률이 데이터 스트림을 송신하기 위한 패킷 손실률 상한 미만인 것을 보장하도록, 패킷 손실률 상한을 포함한다.
선택적으로, 일 실시예에서, 제1 경로 상태 정보는 지연 또는 패킷 손실률 중 적어도 하나를 포함한다.
선택적으로, 일 실시예에서, 패킷 손실 은닉 정책은 자동 재전송 요청(ARQ), 패킷 복제 및 순방향 에러 정정(FEC) 중 적어도 하나를 포함한다.
선택적으로, 일 실시예에서, 패킷 손실 은닉 정책이 순방향 에러 정정(FEC)일 때, 패킷 손실 은닉 패킷은 리던던트 패킷이다. 프로세서(510)가 패킷 손실 은닉 정책에 따라 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하는 것은 다음을 포함한다:
프로세서(510)가 FEC 코딩 방식을 결정하며, 여기서 코딩 방식은 블록 코딩 또는 컨볼루션 코딩을 포함한다.
프로세서(510)는 리던던트 패킷을 생성하기 위해, 결정된 코딩 방식에 기반하여 원본 패킷을 인코딩한다.
선택적으로, 일 실시예에서, 전송기(520)는 패킷 손실 은닉 제어 메시지를 수신 디바이스에 송신하도록 추가로 구성되며, 여기서 패킷 손실 은닉 제어 메시지는 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
일 실시예에서, 지시 정보는 데이터 스트림의 식별자 및 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
선택적으로, 일 실시예에서, 패킷 손실 은닉 메시지는 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
선택적으로, 일 실시예에서, 패킷 손실 은닉 패킷은 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
일 실시예에서, 지시 정보는 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
선택적으로, 일 실시예에서, 지시 정보는 패킷 손실 은닉 패킷의 확장 필드에서 전달된다.
선택적으로, 일 실시예에서, 패킷 손실 은닉 패킷은 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
선택적으로, 일 실시예에서, 데이터 스트림이 2개의 경로들 상에서 송신될 때, 전송기가 경로 상에서 데이터 스트림을 송신하는 것은:
2개의 경로들 중 더 긴 지연을 갖는 경로 상에서 원본 패킷을 송신하는 것; 그리고 2개의 경로들 중 더 짧은 지연을 갖는 경로 상에서 패킷 손실 은닉 패킷을 송신하는 것을 포함하며, 여기서 패킷 손실 은닉 패킷은 원본 패킷이 송신된 후에 송신되고, 원본 패킷 및 패킷 손실 은닉 패킷은 시간 간격(t)으로 송신되고, t는 2개의 경로들 상에서 데이터 스트림을 송신하는 일방향 지연 차이다.
선택적으로, 일 실시예에서, 제어 디바이스는 명령들 및 데이터, 예를 들어 패킷 손실 은닉 정책을 저장하도록 구성된 메모리(530)를 더 포함한다.
송신 디바이스의 기능 컴포넌트들의 기능들은 도 3 및 도 7에 도시된 실시예들에서 송신 디바이스에 의해 수행되는 단계들을 사용함으로써 구현될 수 있다. 따라서 본 출원의 이러한 실시예에서 제공되는 디바이스의 특정 작동 프로세스는 본 명세서에서 다시 설명되지 않는다.
본 출원의 실시예는 데이터 스트림 전송 디바이스를 추가로 제공한다. 전송 디바이스는 수신 디바이스이다. 도 20에 도시된 바와 같이, 수신 디바이스는 수신기(610) 및 프로세서(620)를 포함한다.
수신기(610)는, 데이터 스트림으로 이루어지며 송신 디바이스에 의해 송신되는 원본 패킷 및 패킷 손실 은닉 패킷을 수신하도록 구성되며, 패킷 손실 은닉 패킷은 패킷 손실 은닉 정책에 따라 생성된다.
프로세서(620)는 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷을 복구하도록, 즉 패킷 손실 은닉 패킷을 사용함으로써, 전송 프로세스에서 손실된 원본 패킷을 복구하도록 구성된다. 이는 패킷 손실 복구 효과를 효과적으로 개선하고, 사용자 경험을 개선한다.
일 실시예에서, 수신기(610)는 패킷 손실 은닉 제어 메시지를 수신하도록 추가로 구성되며, 여기서 패킷 손실 은닉 제어 메시지는 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
일 실시예에서, 지시 정보는 데이터 스트림의 식별자 및 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
선택적으로, 일 실시예에서, 패킷 손실 은닉 메시지는 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
선택적으로, 일 실시예에서, 패킷 손실 은닉 패킷은 지시 정보를 포함하고, 지시 정보는 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용된다. 따라서 패킷 손실 은닉 정책을 수신할 때, 수신 디바이스는 패킷 손실 은닉 정책에 따라 데이터 스트림에서 패킷 손실 은닉 패킷을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 데이터 스트림의 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이런 식으로, 경로 상태가 비교적 열악할 때, 동적으로 결정된 패킷 손실 은닉 정책에 기반하여 생성된 패킷 손실 은닉 패킷을 사용함으로써, 손실된 원본 패킷이 복구되어, 데이터 스트림의 전송 프로세스에서 손실된 패킷을 감소시키고, 사용자 경험을 개선한다.
일 실시예에서, 지시 정보는 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용된다.
선택적으로, 일 실시예에서, 지시 정보는 패킷 손실 은닉 패킷의 확장 필드에서 전달된다.
선택적으로, 일 실시예에서, 패킷 손실 은닉 패킷은 패킷 손실 은닉 패킷의 코딩 파라미터를 더 포함한다. 패킷 손실 은닉 정책이 FEC일 때, 코딩 파라미터는 인코딩에 사용되는 블록 코딩 또는 컨볼루션 코딩을 포함한다.
선택적으로, 일 실시예에서, 제어 디바이스는 명령들 및 데이터, 예를 들어 원본 패킷 및 패킷 손실 은닉 패킷을 저장하도록 구성된 메모리(630)를 더 포함한다.
수신 디바이스의 기능 컴포넌트들의 기능들은 도 3 및 도 7에 도시된 실시예들에서 수신 디바이스에 의해 수행되는 단계들을 사용함으로써 구현될 수 있다. 따라서 본 출원의 이러한 실시예에서 제공되는 디바이스의 특정 작동 프로세스는 본 명세서에서 다시 설명되지 않는다.
본 출원의 실시예는 데이터 스트림 전송 디바이스를 추가로 제공한다. 전송 디바이스는 제어 디바이스이다. 도 21에 도시된 바와 같이, 제어 디바이스는 프로세서(710) 및 전송기(720)를 포함한다.
프로세서(710)는 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하도록 구성된다.
전송기(720)는 패킷 손실 은닉 정책을 송신 디바이스에 송신하도록 구성되며, 여기서 패킷 손실 은닉 정책은 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하고 경로 상에서 데이터 스트림을 송신하기 위해 송신 디바이스에 의해 사용된다. 데이터 스트림은 원본 패킷 및 패킷 손실 은닉 패킷을 포함한다. 따라서 데이터 스트림을 수신할 때, 수신 디바이스는 송신 디바이스로부터 수신된 패킷 손실 은닉 정책에 따라 데이터 스트림을 디코딩하고, 패킷 손실 은닉 패킷을 사용함으로써, 전송 프로세스에서 손실된 원본 패킷을 복구한다. 이는 패킷 손실 복구 효과를 효과적으로 개선하고, 사용자 경험을 개선한다.
일 실시예에서, 프로세서(710)는 송신 디바이스로부터 수신 디바이스로의 적어도 2개의 경로들의 제2 경로 상태 정보에 기반하여, 데이터 스트림을 송신하는 데 사용되는 경로를 결정하도록 추가로 구성된다.
일 실시예에서, 제2 경로 상태 정보는 패킷 손실률을 포함한다.
선택적으로, 일 실시예에서, 제2 경로 상태 정보는 지연, 네트워크 지터, 대역폭 및 지연 차 중 적어도 하나를 더 포함한다.
선택적으로, 일 실시예에서, 데이터 스트림을 송신하는 데 사용되는 하나의 경로 또는 2개의 경로들이 존재한다.
일 실시예에서, 데이터 스트림을 송신하는 데 사용되는 2개의 경로들이 있을 때, 데이터 스트림을 송신하는 데 사용되는 경로들의 지연 차는 지연 차 임계치 미만이다.
선택적으로, 일 실시예에서, 프로세서(710)가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하는 것은 다음을 포함한다:
프로세서(710)가 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보, 데이터 스트림의 패킷 손실 은닉 타깃 값 또는 데이터 스트림의 트래픽 레이트 중 적어도 하나에 기반하여 패킷 손실 은닉 정책을 결정하며, 여기서 패킷 손실 은닉 타깃 값은, 결정된 패킷 손실 은닉 정책을 사용함으로써 데이터 스트림에 대해 패킷 손실 복구가 수행된 후에 획득된 패킷 손실률이 데이터 스트림을 송신하기 위한 패킷 손실률 상한 미만인 것을 보장하도록, 패킷 손실률 상한을 포함한다.
선택적으로, 일 실시예에서, 제1 경로 상태 정보는 지연 또는 패킷 손실률 중 적어도 하나를 포함한다.
선택적으로, 일 실시예에서, 패킷 손실 은닉 정책은 자동 재전송 요청(ARQ), 패킷 복제 및 순방향 에러 정정(FEC) 중 적어도 하나를 포함한다.
선택적으로, 일 실시예에서, 제어 디바이스는 명령들 및 데이터, 예를 들어 패킷 손실 은닉 정책을 저장하도록 구성된 메모리(730)를 더 포함한다.
제어 디바이스의 기능 컴포넌트들의 기능들은 도 15에 도시된 실시예들에서 제어 디바이스에 의해 수행되는 단계들을 사용함으로써 구현될 수 있다. 따라서 본 출원의 이러한 실시예에서 제공되는 디바이스의 특정 작동 프로세스는 본 명세서에서 다시 설명되지 않는다.
본 출원의 일 실시예는 명령들을 포함하는 컴퓨터 프로그램 제품을 제공한다. 컴퓨터 상에서 명령들이 실행될 때, 도 3, 도 7 또는 도 15의 방법/단계들이 수행된다.
본 출원의 일 실시예는 명령들을 저장하도록 구성된 컴퓨터 판독 가능 저장 매체를 제공한다. 컴퓨터 상에서 명령들이 실행될 때, 도 3, 도 7 또는 도 15의 방법/단계들이 수행된다.
본 출원의 앞서 말한 실시예들의 전부 또는 일부는 소프트웨어, 하드웨어, 펌웨어, 또는 이들의 임의의 조합에 의해 구현될 수 있다. 소프트웨어가 실시예들을 구현하는 데 사용될 때, 실시예들의 전부 또는 일부는 컴퓨터 프로그램 제품의 형태로 구현될 수 있다. 컴퓨터 프로그램 제품은 하나 이상의 컴퓨터 명령들을 포함한다. 컴퓨터 프로그램 명령들이 컴퓨터 상에 로딩되어 실행될 때, 본 출원의 실시예들에 따른 프로시저 또는 기능들이 전부 또는 부분적으로 생성된다. 컴퓨터는 범용 컴퓨터, 특수 목적용 컴퓨터, 컴퓨터 네트워크 또는 다른 프로그래밍 가능 장치일 수 있다. 컴퓨터 명령들은 컴퓨터 판독 가능 저장 매체에 저장될 수 있거나 컴퓨터 판독 가능 매체에서 다른 컴퓨터 판독 가능 매체로 전송될 수 있다. 예를 들어, 컴퓨터 명령들은 유선(예를 들어, 동축 케이블, 광섬유, 디지털 가입자 회선(DSL: Digital Subscriber Line)) 방식 또는 무선(예를 들어, 적외선, 라디오 또는 마이크로파) 방식으로 웹 사이트, 컴퓨터, 서버 또는 데이터 센터로부터 다른 웹 사이트, 컴퓨터, 서버 또는 데이터 센터에 전송될 수 있다. 컴퓨터 판독 가능 저장 매체는 컴퓨터에 의해 액세스 가능한 임의의 사용 가능한 매체, 또는 하나 이상의 사용 가능한 매체를 통합하는 데이터 저장 디바이스, 이를테면 서버 또는 데이터 센터일 수 있다. 사용 가능한 매체는 자기 매체(예를 들어, 플로피 디스크, 하드 디스크 또는 자기 테이프), 광학 매체(예를 들어, DVD), 반도체 매체(예를 들어, 솔리드 스테이트 디스크(SSD: Solid State Disk)) 등일 수 있다.
앞서 언급한 설명들은 단지 본 출원의 특정 구현들일 뿐이지만, 본 출원의 보호 범위를 제한하는 것으로 의도되는 것은 아니다. 본 출원에 개시된 기술적 범위 내에서 당해 기술분야에서 통상의 지식을 가진 자에 의해 용이하게 파악되는 임의의 변형 또는 대체가 본 출원의 보호 범위 내에 속할 것이다. 따라서 본 출원의 보호 범위는 청구항들의 보호 범위의 대상이 될 것이다.

Claims (39)

  1. 데이터 스트림 전송 장치로서,
    상기 데이터 스트림 전송 장치는,
    하나 이상의 프로세서;
    상기 하나 이상의 프로세서와 연결되어 상기 하나 이상의 프로세서에 의한 실행을 위한 명령을 저장하는 하나 이상의 메모리
    를 포함하고,
    상기 명령은 상기 하나 이상의 프로세서에 명령하여 상기 데이터 스트림 전송 장치가:
    데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책(packet-loss-concealment policy)을 결정하고,
    상기 패킷 손실 은닉 정책에 따라 상기 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하며,
    상기 경로 상에서 상기 데이터 스트림을 송신하도록 야기하고,
    상기 데이터 스트림은 원본 패킷 및 패킷 손실 은닉 패킷을 포함하며,
    상기 패킷 손실 은닉 패킷은 지시 정보를 포함하고,
    상기 지시 정보는 상기 데이터 스트림에 대한 것인 패킷 손실 은닉 정책과 상기 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 사용되는,
    데이터 스트림 전송 장치.
  2. 제1항에 있어서,
    상기 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하기 전에, 상기 데이터 스트림 전송 장치가 추가로:
    상기 데이터 스트림 전송 장치로부터 수신 디바이스로의 적어도 2개의 경로들의 제2 경로 상태 정보에 기반하여, 상기 데이터 스트림을 송신하는 데 사용되는 경로를 결정하도록 야기되는,
    데이터 스트림 전송 장치.
  3. 제2항에 있어서,
    상기 제2 경로 상태 정보는 패킷 손실률을 포함하는,
    데이터 스트림 전송 장치.
  4. 제3항에 있어서,
    상기 제2 경로 상태 정보는 지연, 네트워크 지터(jitter), 대역폭 또는 지연 차 중 적어도 하나를 더 포함하는,
    데이터 스트림 전송 장치.
  5. 제1항에 있어서,
    상기 데이터 스트림을 송신하는 데 사용되는 2개의 경로들이 있을 때, 상기 데이터 스트림을 송신하는 데 사용되는 경로들의 지연 차는 지연 차 임계치 미만인,
    데이터 스트림 전송 장치.
  6. 제1항에 있어서,
    상기 데이터 스트림 전송 장치가 추가로, 상기 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보, 상기 데이터 스트림의 패킷 손실 은닉 타깃 값 또는 상기 데이터 스트림의 트래픽 레이트 중 적어도 하나에 기반하여 상기 패킷 손실 은닉 정책을 결정하도록 야기되며,
    상기 패킷 손실 은닉 타깃 값은 상기 데이터 스트림을 송신하기 위한 패킷 손실률 상한을 포함하는,
    데이터 스트림 전송 장치.
  7. 제1항에 있어서,
    상기 제1 경로 상태 정보는 지연 또는 패킷 손실률 중 적어도 하나를 포함하는,
    데이터 스트림 전송 장치.
  8. 제1항에 있어서,
    상기 패킷 손실 은닉 정책은 자동 재전송 요청(ARQ: automatic repeat request), 패킷 복제 또는 순방향 에러 정정(FEC: forward error correction) 중 적어도 하나를 포함하는,
    데이터 스트림 전송 장치.
  9. 제1항에 있어서,
    상기 패킷 손실 은닉 정책이 순방향 에러 정정(FEC)일 때, 상기 패킷 손실 은닉 패킷은 리던던트(redundant) 패킷이고; 그리고 상기 데이터 스트림 전송 장치가 추가로:
    FEC 코딩 방식을 결정하고 ― 상기 코딩 방식은 블록 코딩 또는 컨볼루션(convolutional) 코딩을 포함함 ― ;
    상기 리던던트 패킷을 생성하기 위해, 결정된 코딩 방식에 기반하여 상기 원본 패킷을 인코딩하도록 야기되는,
    데이터 스트림 전송 장치.
  10. 제1항에 있어서,
    상기 데이터 스트림 전송 장치가 추가로:
    패킷 손실 은닉 제어 메시지를 수신 디바이스에 전송하도록 야기되고,
    상기 패킷 손실 은닉 제어 메시지는 지시 정보를 포함하고, 상기 지시 정보는 상기 데이터 스트림에 대한 것인 패킷 손실 은닉 정책을 지시하는 데 사용되는,
    데이터 스트림 전송 장치.
  11. 제10항에 있어서,
    상기 지시 정보는 상기 데이터 스트림의 식별자 및 상기 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 추가로 사용되는,
    데이터 스트림 전송 장치.
  12. 제1항에 있어서,
    상기 지시 정보는 상기 패킷 손실 은닉 패킷의 확장 필드에서 전달되는,
    데이터 스트림 전송 장치.
  13. 제1항에 있어서,
    상기 데이터 스트림이 2개의 경로들 상에서 송신될 때, 상기 데이터 스트림 전송 장치가 추가로:
    상기 2개의 경로들 중 더 긴 지연을 갖는 경로 상에서 상기 원본 패킷을 송신하고;
    상기 2개의 경로들 중 더 짧은 지연을 갖는 경로 상에서 상기 패킷 손실 은닉 패킷을 송신하도록 야기되고,
    상기 패킷 손실 은닉 패킷은 상기 원본 패킷이 송신된 후에 송신되고, 상기 원본 패킷 및 상기 패킷 손실 은닉 패킷은 시간 간격(t)으로 송신되고, t는 상기 2개의 경로들 상에서 상기 데이터 스트림을 송신하는 일방향 지연 차인,
    데이터 스트림 전송 장치.
  14. 데이터 스트림 수신 장치로서,
    상기 데이터 스트림 수신 장치는,
    하나 이상의 프로세서;
    상기 하나 이상의 프로세서와 연결되어 상기 하나 이상의 프로세서에 의한 실행을 위한 명령을 저장하는 하나 이상의 메모리
    를 포함하고,
    상기 명령은 상기 하나 이상의 프로세서에 명령하여 상기 데이터 스트림 수신 장치가:
    데이터 스트림으로 이루어지며 송신 디바이스에 의해 송신되는 원본 패킷 및 패킷 손실 은닉 패킷을 수신하고 ― 상기 패킷 손실 은닉 패킷은 패킷 손실 은닉 정책에 따라 생성됨 ― ;
    손실된 원본 패킷을 상기 패킷 손실 은닉 패킷을 사용함으로써 복구하도록 야기하며,
    상기 패킷 손실 은닉 패킷은 지시 정보를 포함하고,
    상기 지시 정보는 상기 데이터 스트림에 대한 것인 패킷 손실 은닉 정책 및 상기 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 사용되는,
    데이터 스트림 수신 장치.
  15. 데이터 스트림 전송 장치로서,
    상기 데이터 스트림 전송 장치는,
    하나 이상의 프로세서;
    상기 하나 이상의 프로세서와 연결되어 상기 하나 이상의 프로세서에 의한 실행을 위한 명령을 저장하는 하나 이상의 메모리
    를 포함하고,
    상기 명령은 상기 하나 이상의 프로세서에 명령하여 상기 데이터 스트림 전송 장치가:
    데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하고;
    상기 패킷 손실 은닉 정책을 송신 디바이스에 송신하도록 야기하고,
    상기 패킷 손실 은닉 정책은 상기 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하기 위해 상기 송신 디바이스에 의해 사용되며,
    상기 패킷 손실 은닉 패킷은 지시 정보를 포함하고,
    상기 지시 정보는 상기 데이터 스트림에 대한 것인 패킷 손실 은닉 정책과 상기 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 사용되는,
    데이터 스트림 전송 장치.
  16. 제15항에 있어서,
    데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책을 결정하기 전에, 상기 데이터 스트림 전송 장치는 추가로:
    상기 송신 디바이스로부터 수신 디바이스로의 적어도 2개의 경로들의 제2 경로 상태 정보에 기반하여, 상기 데이터 스트림을 송신하는 데 사용되는 경로를 결정하도록 야기되는,
    데이터 스트림 전송 장치.
  17. 제15항에 있어서,
    상기 데이터 스트림 전송 장치가 추가로:
    상기 데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보, 상기 데이터 스트림의 패킷 손실 은닉 타깃 값 또는 상기 데이터 스트림의 트래픽 레이트 중 적어도 하나에 기반하여 상기 패킷 손실 은닉 정책을 결정하도록 야기되며,
    상기 패킷 손실 은닉 타깃 값은 상기 데이터 스트림을 송신하기 위한 패킷 손실률 상한을 포함하는,
    데이터 스트림 전송 장치.
  18. 네트워크 시스템으로서,
    제1 데이터 스트림 전송 장치와 제2 데이터 스트림 전송 장치를 포함하고,
    상기 제1 데이터 스트림 전송 장치가,
    하나 이상의 프로세서;
    상기 하나 이상의 프로세서와 연결되어 상기 하나 이상의 프로세서에 의한 실행을 위한 명령을 저장하는 하나 이상의 메모리
    를 포함하며,
    상기 명령은 상기 하나 이상의 프로세서에 명령하여 상기 제1 데이터 스트림 전송 장치가:
    데이터 스트림을 송신하는 데 사용되는 경로의 제1 경로 상태 정보에 기반하여 패킷 손실 은닉 정책(packet-loss-concealment policy)을 결정하고,
    상기 패킷 손실 은닉 정책에 따라 상기 데이터 스트림에 대한 패킷 손실 은닉 패킷을 생성하며,
    상기 경로 상에서 상기 데이터 스트림을 송신하도록 야기하고 - 여기서 상기 데이터 스트림은 원본 패킷 및 패킷 손실 은닉 패킷을 포함함 - ,
    상기 제2 데이터 스트림 전송 장치가,
    상기 하나 이상의 프로세서와 연결되어 상기 하나 이상의 프로세서에 의한 실행을 위한 명령을 저장하는 하나 이상의 메모리
    를 포함하고,
    상기 명령은 상기 하나 이상의 프로세서에 명령하여 상기 제2 데이터 스트림 전송 장치가:
    상기 제1 데이터 스트림 전송 장치에 의해 송신되는 원본 패킷 및 패킷 손실 은닉 패킷을 수신하고,
    손실된 원본 패킷을 상기 패킷 손실 은닉 패킷을 사용함으로써 복구하도록 야기하며,
    상기 패킷 손실 은닉 패킷은 지시 정보를 포함하고,
    상기 지시 정보는 상기 데이터 스트림에 대한 것인 패킷 손실 은닉 정책과 상기 데이터 스트림을 송신하는 데 사용되는 경로의 식별자를 지시하는 데 사용되는,
    네트워크 시스템.
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 삭제
  38. 삭제
  39. 삭제
KR1020217033181A 2019-04-08 2020-04-08 데이터 스트림에 대한 전송 방법 및 디바이스 KR102657709B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201910277087.XA CN111800218B (zh) 2019-04-08 2019-04-08 一种数据流的传输方法和设备
CN201910277087.X 2019-04-08
PCT/CN2020/083713 WO2020207406A1 (zh) 2019-04-08 2020-04-08 一种数据流的传输方法和设备

Publications (2)

Publication Number Publication Date
KR20210134787A KR20210134787A (ko) 2021-11-10
KR102657709B1 true KR102657709B1 (ko) 2024-04-15

Family

ID=72752132

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217033181A KR102657709B1 (ko) 2019-04-08 2020-04-08 데이터 스트림에 대한 전송 방법 및 디바이스

Country Status (6)

Country Link
US (1) US12010016B2 (ko)
EP (1) EP3940974B1 (ko)
JP (1) JP7292411B2 (ko)
KR (1) KR102657709B1 (ko)
CN (1) CN111800218B (ko)
WO (1) WO2020207406A1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114499747B (zh) * 2020-11-09 2023-06-20 成都鼎桥通信技术有限公司 音视频数据的处理方法、装置、电子设备及存储介质
CN112422241B (zh) * 2020-11-09 2021-11-30 广州博冠信息科技有限公司 数据传输方法、装置、存储介质及计算机设备
US11625081B2 (en) * 2021-03-09 2023-04-11 Charter Communications Operating, Llc Centralized profile-based operational monitoring and control of remote computing devices
US11916674B2 (en) * 2021-03-31 2024-02-27 Versa Networks, Inc. Data packet traffic conditioning through a lossy data path with forward error correction
US11546239B2 (en) 2021-03-31 2023-01-03 Versa Networks, Inc. Data packet traffic conditioning with packet striping through lossy data paths
US11683126B2 (en) * 2021-03-31 2023-06-20 Versa Networks, Inc. Data packet traffic conditioning through multiple lossy data paths with forward error correction
CN115551019A (zh) * 2021-06-30 2022-12-30 华为技术有限公司 数据流的传输方法和传输装置
CN114025389B (zh) * 2021-11-01 2024-04-30 网易(杭州)网络有限公司 数据传输方法、装置、计算机设备及存储介质
US11914599B2 (en) * 2021-11-19 2024-02-27 Hamilton Sundstrand Corporation Machine learning intermittent data dropout mitigation
CN116192767A (zh) * 2021-11-29 2023-05-30 华为技术有限公司 一种丢包管理方法及相关装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102438002A (zh) * 2011-08-10 2012-05-02 中山大学深圳研究院 一种基于Ad hoc网络下的视频文件数据传输方法
US20150381314A1 (en) * 2013-02-20 2015-12-31 Mitsubishi Electric Corporation Wireless device

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5452908A (en) * 1977-10-05 1979-04-25 Mitsubishi Electric Corp Data transfer device
JPH0723026A (ja) * 1993-07-02 1995-01-24 Nippondenso Co Ltd ディジタル移動通信用誤り制御装置
JP2002064506A (ja) * 2000-08-17 2002-02-28 Ricoh Co Ltd データ転送方式
JP4074268B2 (ja) * 2003-08-22 2008-04-09 日本電信電話株式会社 パケット転送方法及び転送装置
WO2006073323A1 (en) * 2004-12-29 2006-07-13 Intel Corporation Forward error correction and automatic repeat request joint operation for a data link layer
WO2007061087A1 (ja) * 2005-11-28 2007-05-31 Nec Corporation 通信装置、通信システム、通信方法、および、通信プログラム
EP1791285A1 (en) * 2005-11-29 2007-05-30 Alcatel Lucent Hybrid ARQ apparatus and corresponding method, wherein the FEC redundancy is adapted based on the number of retransmissions of a packet
JP4808054B2 (ja) * 2006-03-17 2011-11-02 富士通株式会社 データ転送方法及び,これを適用する通信システム及びプログラム
CN101505202B (zh) * 2009-03-16 2011-09-14 华中科技大学 一种流媒体传输自适应纠错方法
JP5682253B2 (ja) * 2010-11-22 2015-03-11 富士通株式会社 プログラムおよび通信装置
CN102790666B (zh) * 2011-05-17 2015-04-08 华为终端有限公司 差错控制的方法、接收端、发送端和系统
CN102325009A (zh) * 2011-09-13 2012-01-18 北京邮电大学 一种基于前向纠错的网络编码组播数据流可靠传输方法
KR102028948B1 (ko) * 2011-11-08 2019-10-17 삼성전자주식회사 멀티미디어 통신 시스템에서 어플리케이션 계층-순방향 오류 정정 패킷 송/수신 장치 및 방법
CN102638331B (zh) * 2012-03-16 2014-07-09 北京邮电大学 基于随机线性网络编码的无线可靠广播方法
US9973215B1 (en) * 2013-01-28 2018-05-15 EMC IP Holding Company LLC Controlled multipath data packet delivery with forward error correction
US8819520B1 (en) * 2013-02-05 2014-08-26 “Intermind” Societe a Responsabilite Limitee Method and system for forward error correction in packetized networks
US9572198B1 (en) * 2013-03-07 2017-02-14 Sprint Spectrum L.P. Inter-technology diversity in wireless communications
KR20150049052A (ko) * 2013-10-29 2015-05-08 삼성에스디에스 주식회사 데이터 전송 장치 및 방법
CN105517028B (zh) * 2014-10-17 2020-03-24 电信科学技术研究院 一种触发和配置传输路径的方法及设备
KR20160091118A (ko) * 2015-01-23 2016-08-02 한국전자통신연구원 멀티 호밍 기반의 네트워크를 통한 패킷 전송 장치 및 방법
JP6529299B2 (ja) * 2015-03-20 2019-06-12 キヤノン株式会社 送信装置、受信装置、方法及びプログラム
CN105610635B (zh) * 2016-02-29 2018-12-07 腾讯科技(深圳)有限公司 语音编码发送方法和装置
CN108075859A (zh) * 2016-11-17 2018-05-25 中国移动通信有限公司研究院 数据传输方法及装置
CN107395522B (zh) * 2017-08-25 2018-10-12 深圳市华讯方舟空间信息产业科技有限公司 基于tcp协议的丢包处理方法和计算机可读存储介质
CN107682886B (zh) * 2017-09-01 2019-12-20 北京邮电大学 一种多路径的数据传输方法
CN108075861B (zh) * 2017-09-28 2020-09-22 河北工程大学 软件定义FiWi网络中基于多路径的网络编码传输方法
US20190215385A1 (en) * 2018-01-10 2019-07-11 Nexvortex, Inc. Packet Replication Over Dynamically Managed Bonded Tunnels

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102438002A (zh) * 2011-08-10 2012-05-02 中山大学深圳研究院 一种基于Ad hoc网络下的视频文件数据传输方法
US20150381314A1 (en) * 2013-02-20 2015-12-31 Mitsubishi Electric Corporation Wireless device

Also Published As

Publication number Publication date
CN111800218A (zh) 2020-10-20
JP2022528172A (ja) 2022-06-08
EP3940974A4 (en) 2022-05-04
EP3940974A1 (en) 2022-01-19
WO2020207406A1 (zh) 2020-10-15
JP7292411B2 (ja) 2023-06-16
KR20210134787A (ko) 2021-11-10
EP3940974B1 (en) 2023-12-13
US12010016B2 (en) 2024-06-11
CN111800218B (zh) 2022-04-22
US20220021612A1 (en) 2022-01-20

Similar Documents

Publication Publication Date Title
KR102657709B1 (ko) 데이터 스트림에 대한 전송 방법 및 디바이스
US9537611B2 (en) Method and apparatus for improving the performance of TCP and other network protocols in a communications network using proxy servers
Wu et al. Content-aware concurrent multipath transfer for high-definition video streaming over heterogeneous wireless networks
Wu et al. Distortion-aware concurrent multipath transfer for mobile video streaming in heterogeneous wireless networks
JP4454320B2 (ja) 伝送装置、伝送制御プログラム、及び伝送方法
US9253608B2 (en) Wireless reliability architecture and methods using network coding
Wu et al. Delay-constrained high definition video transmission in heterogeneous wireless networks with multi-homed terminals
KR101446026B1 (ko) 손실성 매체들용 재전송 스킴
Kwon et al. MPMTP: Multipath multimedia transport protocol using systematic raptor codes over wireless networks
Wu et al. Streaming high-definition real-time video to mobile devices with partially reliable transfer
JP2008522545A (ja) 適応型前方誤り訂正
Wu et al. Priority-aware FEC coding for high-definition mobile video delivery using TCP
Afzal et al. A holistic survey of wireless multipath video streaming
Afzal et al. A holistic survey of multipath wireless video streaming
KR20100112151A (ko) 네트워크 카드 및 정보 처리 장치
CN116318545A (zh) 视频数据传输方法、装置、设备及存储介质
WO2021164405A1 (zh) 数据编解码方法、相关设备及系统
Vu et al. Supporting delay-sensitive applications with multipath quic and forward erasure correction
RU2711354C1 (ru) Способ передачи данных по асинхронным сетям связи с возможностью восстановления данных при их потере из-за наличия ошибок соединения в сетях связи
US11489761B2 (en) Method and apparatus for coded multipath network communication
WO2023093804A1 (zh) 一种丢包管理方法及相关装置
BR102018076952A2 (pt) método para transmissão de vídeo digital adotando estratégias de encaminhamento de pacotes com monitoramento de percurso e conteúdo em redes heterogênas usando protocolo mmt, método para recepção e sistema de comunicação
BR102018070605A2 (pt) método para transmissão de vídeo digital adotando estratégias de encaminhamento de pacotes com monitoramento de percurso e conteúdo em redes heterogênas usando protocolo mmt, método para recepção e sistema de comunicação
Gorius et al. Efficient and low-delay error control for large-BDP networks

Legal Events

Date Code Title Description
A201 Request for examination
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant