KR20040111669A - 프로토콜, 정보 처리 시스템 및 방법, 정보 처리 장치 및방법, 기록 매체, 및 프로그램 - Google Patents

프로토콜, 정보 처리 시스템 및 방법, 정보 처리 장치 및방법, 기록 매체, 및 프로그램 Download PDF

Info

Publication number
KR20040111669A
KR20040111669A KR10-2004-7018745A KR20047018745A KR20040111669A KR 20040111669 A KR20040111669 A KR 20040111669A KR 20047018745 A KR20047018745 A KR 20047018745A KR 20040111669 A KR20040111669 A KR 20040111669A
Authority
KR
South Korea
Prior art keywords
packet
information processing
processing apparatus
loss rate
data
Prior art date
Application number
KR10-2004-7018745A
Other languages
English (en)
Other versions
KR100975176B1 (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 KR20040111669A publication Critical patent/KR20040111669A/ko
Application granted granted Critical
Publication of KR100975176B1 publication Critical patent/KR100975176B1/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/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/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/1607Details of the supervisory signal
    • H04L1/1628List acknowledgements, i.e. the acknowledgement message consisting of a list of identifiers, e.g. of sequence numbers
    • 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/1829Arrangements specially adapted for the receiver end
    • H04L1/1858Transmission or retransmission of more than one copy of acknowledgement message
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security 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/1809Selective-repeat protocols

Abstract

본 발명은, 쌍방향의 네트워크 상황을 파악할 수 있도록 한 프로토콜, 정보 처리 시스템 및 방법, 정보 처리 장치 및 방법, 기록 매체, 및 프로그램에 관한 것이다. RTCP 패킷 해석부(66)는, 사용자 단말기로부터 네트워크 및 RTCP 포트(65)를 통하여 수신된 수신 리포트 RR의 RTCP 패킷을 해석한다. 패킷 손실 검지부(67)는, 해석된 RTCP 패킷의 RTCP 시퀀스 번호에 기초하여, 사용자 단말기로부터의 네트워크에서의 패킷 손실율을 계산한다. RTCP 패킷 생성부(69)는, 송신 리포트 SR에, 계산된 패킷 손실율을 부가하여, 일정한 시간 간격으로, 네트워크를 통하여 사용자 단말기에 송신한다. 본 발명은, 네트워크를 통하여, 스트리밍 콘텐츠나 리얼타임 배신을 제공하는 시스템에 적용할 수 있다.

Description

프로토콜, 정보 처리 시스템 및 방법, 정보 처리 장치 및 방법, 기록 매체, 및 프로그램{PROTOCOL, INFORMATION PROCESSING SYSTEM AND METHOD, INFORMATION PROCESSING DEVICE AND METHOD, RECORDING MEDIUM, AND PROGRAM}
최근, 인터넷 상의 데이터 전송 서비스에서, 종래부터 이용되고 있는 다운로드형의 전송 방식 외에, 스트림형의 전송 방식에 의한 서비스가 증가하고 있다. 다운로드형의 전송 방식에서는, 송신측의 서버로부터 영상 데이터 또는 음성 데이터가, 일단 수신측의 단말기에 다운로드되고, 그 후 재생된다. 즉, 다운로드형의 전송 방식은, 데이터가 완전하게 다운로드될 때까지는 재생할 수 없기 때문에, 영상 데이터의 장시간 재생이나 리얼타임 재생에는 부적합하다.
한편, 스트림형의 전송 방식에서는, 송신측의 서버로부터 수신측의 단말기에 데이터 전송이 행해지고 있는 동안에, 이미 수신된 데이터가 재생되기 때문에, 인터넷 전화, 원격 텔레비전 회의, 또는 비디오 온 디맨드라고 하는 인터넷 서비스에이용되고 있다.
이러한 스트림형의 전송 방식에 적합한 인터넷 기술로, IETF(Internet Engineering Task Force) RFC(Request For Comments)1889에서 규정되어 있는 RTP(Real-time Transport Protocol)가 있다.
도 1은, RTP 패킷의 RTP 헤더의 구성예를 도시하는 도면이다. 도 1의 예에서, RTP의 버전을 나타내는 버전 번호, 패킷의 사이즈를 조정하는 비트인 패딩, 기능 확장 시에 지정되는 확장 비트, 리얼타임 전송에 관한 송신원의 수를 나타내는 카운터, 데이터의 경계를 나타내는 마커 비트, 부호화의 종류를 나타내는 페이로드 타입, RTP 패킷의 순서를 나타내는 시퀀스 번호, RTP 패킷이 송신된 시각을 나타내는 타임 스탬프, 메시지의 최초의 송신원을 식별하는 동기 소스 식별자, 및 메시지에 포함되는 패킷군에의 준비를 행한 송신원을 식별하는 공헌 소스 식별자가 순서대로 배치되어 있다.
RTP에 의한 데이터 전송에서는, 이 타임 스탬프가 부가됨으로써, 송신측과 수신측의 시간적 관계가 파악되므로, 패킷 전송의 지연 변동(지터) 등의 영향이 억제되어, 동기를 취하여 데이터 재생이 가능하게 된다.
또한, RTP는, 실시간의 데이터 전송의 보장, 패킷 배송의 우선도의 설정 또는 관리 등을 할 수 없기 때문에, RTP 패킷에는, 다른 패킷과 마찬가지로, 배송 지연, 또는 패킷 손실 등의 문제가 발생할 우려가 있다. 이러한 문제가 발생한 경우에도, 영상 데이터 또는 음성 데이터는, 다소의 데이터 파손이 있었다고 해도 어느 정도 재생 가능하기 때문에, 수신측의 단말기에서는, 정해진 시간 내에 수신한 패킷만을 이용하여 재생할 수 있다.
그러나, 지연 배송된 패킷, 또는 에러가 발생한 패킷은 수신측의 단말기에서 그대로 파기되기 때문에, 송신측의 서버가 고품질의 데이터를 배신해도, 수신측의 단말기에서 충분히 고품위의 데이터가 재생되지 않는 경우가 있다. 특히, 유선 구간에서, 10-5, 또는 무선 구간에서 10-3이상의 에러가 있는 경우에는, RTP를 그대로 이용하는 것만으로는, 신뢰성이 낮다.
이러한 문제에 대응하기 위해, RTP 패킷의 시퀀스 번호를 이용하여, 손실된 패킷을 검출하여, 송신측의 서버에 재송 요구를 행함으로써, 품질이 높은 전송을 행하는 에러 정정 방식인, 자동 재송 요구(ARQ : Automatic Repeat request)가 실장되도록 되어 왔다. 이 송신측의 서버에의 재송 요구는, RTCP, RTP 또는 TCP 등의 프로토콜에 의해 행해진다.
또한, 상술한 바와 같이, RTP는, 실시간 데이터를 전송하는 프로토콜로서, 통신 상황을 전하거나, 제어하는 기능을 구비하지 않기 때문에, RTP가 단체로 이용된 경우, 네트워크의 상황에 대응한 폭주 제어, 또는 수신측의 단말기의 능력에 대응한 데이터 전송을 행할 수 없다. 따라서, RTP의 정보를 교환하기 위한 통신 프로토콜 RTCP(Real Time Control Protocol)가 이용된다.
이 RTCP에서는, 일정한 시간 간격으로, 수신측의 단말기로부터 수신 리포트(RR : Receiver Report)가 송신측의 서버에 송신되고, 송신측의 서버로부터 송신 리포트(SR : Sender Report)가 수신측의 단말기에 송신된다. 이에 의해, 송신측의서버 및 수신측의 단말기 사이에서, 네트워크의 상황, 또는 수신측의 단말기의 상황에 대응한 동적인 데이터 전송을 행할 수 있다. 즉, RTCP는 항상 RTP와 쌍으로 이용되어, RTP에 없는 기능을 보조하는 프로토콜이다.
도 2는 RTCP의 수신 리포트의 구성예를 도시하는 도면이다. RTCP의 수신 리포트는, 수신측의 단말기로부터 송신측의 서버에 정기적으로 송신되는 정보이다. 또한, 이 RTCP 수신 리포트는, 수신측의 단말기로부터 멀티캐스트로 송신되고 있다. 도 2에서는, RTCP의 수신 리포트는, 헤더, 및 1 이상의 수신 리포트 블록(도 2의 예에서는, 수신 리포트 블록1, 수신 리포트 블록2, ……)으로 구성된다.
헤더는, RTCP의 버전을 나타내는 버전 정보, 패킷의 사이즈를 조정하는 비트인 패딩, 리얼타임 전송에 관한 송신원의 수를 나타내는 카운터, 패킷 타입, 메시지 길이, 및 송신자(즉, 이 수신 리포트를 송신하고 있는 수신측의 단말기)의 동기 소스 식별자로 구성된다.
수신 리포트 블록1은, 송신자 a1(송신측의 서버 a1)로부터 수신한 패킷에 기초하여, 수신측의 단말기에 의해 생성되는 정보로서, 그 패킷을 보낸 송신원 a1(송신측의 서버 a1)을 식별하는 송신자 a1의 동기 소스 식별자, 송신측의 서버 a1로부터 수신측의 단말기에의 전송에서의 패킷 손실율, 누적 손실 패킷수, 최대 수신 시퀀스 번호, 패킷 간격 지터, 최신 송신 리포트 시각, 및 송신 리포트 경과 시간으로 구성된다.
마찬가지로, 수신 리포트 블록2는, 그 패킷을 보낸 송신원 a2(송신측의 서버 a2)를 식별하는 송신자 a2의 동기 소스 식별자, 송신측의 서버 a2로부터 수신측의단말기에의 전송에서의 패킷 손실율, 누적 손실 패킷수, 최대 수신 시퀀스 번호, 패킷 간격 지터, 최신 송신 리포트 시각, 및 송신 리포트 경과 시간으로 구성된다.
또, 수신 리포트 블록은, 수신측의 단말기에 의해 전회(前回)의 수신 리포트를 송신하고나서, 이 수신 리포트를 송신하기까지의 동안에, 각 송신자(각 송신측의 서버)로부터 수신된 패킷의 수(헤더의 카운터의 수)만큼 부가된다.
도 3은, RTCP의 송신 리포트의 구성예를 도시하는 도면이다. RTCP의 송신 리포트는, 송신측의 서버로부터 수신측의 단말기로 정기적으로 송신되는 정보이다. 또한, 이 RTCP 송신 리포트는, 송신측의 서버로부터 멀티캐스트로 송신되고 있다. 도 3의 예에서는, RTCP의 송신 리포트는, 헤더, 송신하는 데이터의 송신 정보, 및 1 이상의 수신 리포트 블록(도 3의 예에서는, 수신 리포트 블록1, 수신 리포트 블록2, ……)으로 구성된다.
헤더는, 도 2의 수신 리포트와 마찬가지로, 버전 정보, 패딩, 카운터, 패킷 타입, 메시지 길이, 및 송신자(즉, 이 송신 리포트를 송신하고 있는 송신측의 서버)의 동기 소스 식별자로 구성된다.
송신 정보는, 송신 리포트가 보내진 시각인 NTP(Network Time Protocol) 타임 스탬프, NTP 타임 스탬프에 대응하는 RTP 타임 스탬프, 송신측의 서버에 의해 전회의 송신 리포트를 보내고나서 이 송신 리포트를 보낼 때까지 송신된, 송신 패킷수 및 송신 바이트수로 구성된다. 이 NTP 타임 스탬프 및 RTP 타임 스탬프에 의해, 복수의 패킷의 시간축을 공통된 시간축(NTP 시간축)에 동기시킬 수 있다.
수신 리포트 블록1은, 송신자 b1(수신측의 단말기 b1)로부터 수신한 수신 리포트의 정보로서, 그 수신 리포트를 보낸 송신원 b1(수신측의 단말기 b1)을 식별하는 송신자 b1의 동기 소스 식별자, 송신측의 서버로부터 수신측의 단말기 b1에의 전송에서의 패킷 손실율, 누적 손실 패킷수, 최대 수신 시퀀스 번호, 패킷 간격 지터, 최신 송신 리포트 시각, 및 송신 리포트 경과 시간으로 구성된다.
마찬가지로, 수신 리포트 블록2는, 그 수신 리포트를 보낸 송신원 b2(수신측의 단말기 b2)를 식별하는 송신자 b2의 동기 소스 식별자, 송신측의 서버로부터 수신측의 단말기 b2에의 전송에서의 패킷 손실율, 누적 손실 패킷수, 최대 수신 시퀀스 번호, 패킷 간격 지터, 최신 송신 리포트 시각, 및 송신 리포트 경과 시간으로 구성된다.
또, 이 수신 리포트 블록의 수는, 송신측의 서버에 의해 전회의 송신 리포트를 보내고나서 이 송신 리포트를 보낼 때까지 수신된 수신측의 단말기로부터의 수신 리포트의 수(헤더의 카운터의 수)만큼 부가된다.
이상과 같은 수신 리포트 및 송신 리포트의 교환에 의해, 송신측의 서버는, 송신측의 서버로부터 수신측의 단말기에의 전송의 네트워크의 상황을 취득할 수 있기 때문에, 전송하는 데이터의 레이트 제어를 행하거나, 패킷을 중층(重層)하여 송신하는 등의 QoS(Quality of Service) 대책, 또는 에러 대책을 행할 수 있다.
그러나, 상술한 바와 같이, 수신 리포트 및 송신 리포트에 부가되어 있는 패킷 손실율 또는 누적 손실 패킷수는, 송신측의 서버로부터 수신측의 단말기에의 전송 시에 관한 데이터로서, 송신측의 서버로부터 수신측의 단말기에의 하향의 네트워크의 상황밖에 파악할 수 없다는 과제가 있었다.
그 결과, 상술한 ARQ의 재송 요구는, 수신측의 단말기로부터 송신측의 서버에의 상향의 네트워크의 상황에 좌우되지만, 그 상황을 파악할 수 없기 때문에, ARQ의 재송 요구를 효율적으로 행할 수 없다는 과제가 있었다.
수신측의 단말기로부터 송신측의 서버에의 상향의 네트워크의 상황을 파악하기 위해, 송신측의 서버로부터 수신측의 단말기에의 하향의 네트워크와는 전혀 다른 네트워크를, 수신측의 단말기로부터 송신측의 서버의 상향의 네트워크를 통하여 행하는 피드백적인 시스템을 구축할 수도 있지만, 이러한 시스템에서는, 네트워크의 상황이 크게 달라지기 때문에, 상향과 하향의 양방에 대응한 네트워크 상황 보고 시스템이 필요해져, 시스템이 복잡해지는 과제가 있었다.
<발명의 개시>
본 발명은 이러한 상황을 감안하여 이루어진 것으로, 쌍방향의 네트워크 상황을 파악할 수 있도록 하는 것이다.
본 발명의 프로토콜은, RTCP 패킷에 시퀀스 번호를 부가하는 것을 특징으로 한다.
본 발명의 정보 처리 시스템은, 제1 정보 처리 장치는, 제2 정보 처리 장치로부터의 수신 리포트를 수신하고, 수신 리포트로부터 시퀀스 번호를 취득하고, 취득된 시퀀스 번호에 기초하여, 패킷의 손실율을 계산하고, 계산된 패킷의 손실율에 기초하여 에러 정정을 제어함과 함께, 패킷의 손실율을 송신 리포트에 부가하여 제2 정보 처리 장치로 송신하고, 제2 정보 처리 장치는, 제1 정보 처리 장치로부터의 데이터를 수신하고, 데이터로부터 손실 패킷의 정보를 취득하고, 제1 정보 처리 장치로부터의 송신 리포트의 패킷의 손실율에 기초하여, 제1 정보 처리 장치에 대한 손실 패킷의 재송 요구를 제어하는 것을 특징으로 한다.
본 발명의 정보 처리 시스템의 정보 처리 방법은, 제1 정보 처리 장치의 정보 처리 방법은, 제2 정보 처리 장치로부터의 수신 리포트를 수신하고, 수신 리포트로부터 시퀀스 번호를 취득하고, 취득된 시퀀스 번호에 기초하여, 패킷의 손실율을 계산하고, 계산된 패킷의 손실율에 기초하여 에러 정정을 제어함과 함께, 패킷의 손실율을 송신 리포트에 부가하여 제2 정보 처리 장치로 송신하고, 제2 정보 처리 장치의 정보 처리 방법은, 제1 정보 처리 장치로부터의 데이터를 수신하고, 데이터로부터 손실 패킷의 정보를 취득하고, 제1 정보 처리 장치로부터의 송신 리포트의 패킷의 손실율에 기초하여, 제1 정보 처리 장치에 대한 손실 패킷의 재송 요구를 제어하는 것을 특징으로 한다.
본 발명의 제1 정보 처리 장치는, 다른 정보 처리 장치로부터 송신된 수신 리포트로부터 시퀀스 번호를 취득하는 취득 수단과, 취득 수단에 의해 취득된 시퀀스 번호에 기초하여, 패킷의 손실율을 계산하는 계산 수단과, 계산 수단에 의해 계산된 패킷의 손실율을 송신 리포트에 부가하여 다른 정보 처리 장치로 송신하는 송신 수단을 포함하는 것을 특징으로 한다.
패킷을 단위로 한 프로토콜은, RTP 및 RTCP이도록 할 수 있다.
계산 수단에 의해 계산된 패킷의 손실율에 기초하여, 데이터의 송신 에러의 정정 방법을 제어하는 제어 수단을 더 구비하도록 할 수 있다.
제어 수단은, 계산 수단에 의해 계산된 패킷의 손실율이 제1 기준값보다도큰지의 여부를 판단하는 제1 판단 수단과, 제1 판단 수단에 의한 판단 결과에 기초하여, 데이터의 송신 에러의 정정 방법을 설정하는 설정 수단을 구비하도록 할 수 있다.
제어 수단에, 제1 판단 수단에 의해 패킷의 손실율이 제1 기준값보다도 작다고 판단된 경우, 패킷의 손실율이 제2 기준값보다도 큰지의 여부를 판단하는 제2 판단 수단을 더 구비하고, 설정 수단은, 제2 판단 수단에 의해 패킷의 손실율이 제2 기준값보다도 작다고 판단된 경우, 데이터의 송신 에러의 정정을 금지하도록 할 수 있다.
설정 수단은, 제1 판단 수단에 의해 패킷의 손실율이 제1 기준값보다도 크다고 판단된 경우, 데이터의 송신 에러의 정정 방법을 FEC로 설정하고, 제1 판단 수단에 의해 패킷의 손실율이 제1 기준값보다도 작다고 판단되고, 또한 제2 판단 수단에 의해 패킷의 손실율이 제2 기준값보다도 크다고 판단된 경우, 데이터의 송신 에러의 정정 방법을 ARQ로 설정하도록 할 수 있다.
본 발명의 제1 정보 처리 방법은, 다른 정보 처리 장치로부터 송신된 수신 리포트로부터 시퀀스 번호를 취득하는 취득 단계와, 취득 단계의 처리에 의해 취득된 시퀀스 번호에 기초하여, 패킷의 손실율을 계산하는 계산 단계와, 계산 단계의 처리에 의해 계산된 패킷의 손실율을 송신 리포트에 부가하여 다른 정보 처리 장치로 송신하는 송신 단계를 포함하는 것을 특징으로 한다.
본 발명의 제1 기록 매체의 프로그램은, 다른 정보 처리 장치로부터 송신된 수신 리포트로부터 시퀀스 번호를 취득하는 취득 단계와, 취득 단계의 처리에 의해취득된 시퀀스 번호에 기초하여, 패킷의 손실율을 계산하는 계산 단계와, 계산 단계의 처리에 의해 계산된 패킷의 손실율을 송신 리포트에 부가하여 다른 정보 처리 장치로 송신하는 송신 단계를 포함하는 것을 특징으로 한다.
본 발명의 제1 프로그램은, 다른 정보 처리 장치로부터 송신된 수신 리포트로부터 시퀀스 번호를 취득하는 취득 단계와, 취득 단계의 처리에 의해 취득된 시퀀스 번호에 기초하여, 패킷의 손실율을 계산하는 계산 단계와, 계산 단계의 처리에 의해 계산된 패킷의 손실율을 송신 리포트에 부가하여 다른 정보 처리 장치로 송신하는 송신 단계를 포함하는 것을 특징으로 한다.
본 발명의 제2 정보 처리 장치는, 다른 정보 처리 장치로부터 송신된 데이터를 수신하는 수신 수단과, 수신 수단에 의해 수신된 데이터로부터 손실 패킷의 정보를 취득하는 취득 수단과, 다른 정보 처리 장치로부터의 송신 리포트의 패킷의 손실율에 기초하여, 취득 수단에 의해 취득된 손실 패킷의 재송 요구를 제어하는 제어 수단과, 제어 수단에 의해 제어된 패킷의 재송 요구를, 다른 정보 처리 장치로 송신하는 송신 수단을 포함하는 것을 특징으로 한다.
패킷을 단위로 한 프로토콜은, RTP 및 RTCP이도록 할 수 있다.
제어 수단은, 데이터의 송신 에러의 정정 방법으로서 ARQ를 이용한 경우에 있어서, 패킷의 손실율이 기준값보다 클 때, 손실 패킷의 재송 요구를 용장성을 가지게 하도록 제어하게 할 수 있다.
본 발명의 제2 정보 처리 방법은, 다른 정보 처리 장치로부터 송신된 데이터를 수신하는 수신 단계와, 수신 단계의 처리에 의해 수신된 데이터로부터 손실 패킷의 정보를 취득하는 취득 단계와, 다른 정보 처리 장치로부터의 송신 리포트의 패킷의 손실율에 기초하여, 취득 단계의 처리에 의해 취득된 손실 패킷의 재송 요구를 제어하는 제어 단계와, 제어 단계의 처리에 의해 제어된 패킷의 재송 요구를, 다른 정보 처리 장치로 송신하는 송신 단계를 포함하는 것을 특징으로 한다.
본 발명의 제2 기록 매체의 프로그램은, 다른 정보 처리 장치로부터 송신된 데이터를 수신하는 수신 단계와, 수신 단계의 처리에 의해 수신된 데이터로부터 손실 패킷의 정보를 취득하는 취득 단계와, 다른 정보 처리 장치로부터의 송신 리포트의 패킷의 손실율에 기초하여, 취득 단계의 처리에 의해 취득된 손실 패킷의 재송 요구를 제어하는 제어 단계와, 제어 단계의 처리에 의해 제어된 패킷의 재송 요구를, 다른 정보 처리 장치로 송신하는 송신 단계를 포함하는 것을 특징으로 한다.
본 발명의 제2 프로그램은, 다른 정보 처리 장치로부터 송신된 데이터를 수신하는 수신 단계와, 수신 단계의 처리에 의해 수신된 데이터로부터 손실 패킷의 정보를 취득하는 취득 단계와, 다른 정보 처리 장치로부터의 송신 리포트의 패킷의 손실율에 기초하여, 취득 단계의 처리에 의해 취득된 손실 패킷의 재송 요구를 제어하는 제어 단계와, 제어 단계의 처리에 의해 제어된 패킷의 재송 요구를, 다른 정보 처리 장치로 송신하는 송신 단계를 포함하는 것을 특징으로 한다.
본 발명의 프로토콜에 있어서는, RTCP 패킷에 시퀀스 번호가 부가된다.
본 발명의 정보 처리 시스템 및 방법에서는, 제1 정보 처리 장치 및 방법에 의해, 제2 정보 처리 장치로부터의 수신 리포트가 수신되고, 수신 리포트로부터 시퀀스 번호가 취득되고, 취득된 시퀀스 번호에 기초하여, 패킷의 손실율이 계산되고, 계산된 패킷의 손실율에 기초하여 에러 정정이 제어됨과 함께, 패킷의 손실율이 송신 리포트에 부가되어 제2 정보 처리 장치로 송신된다. 그리고, 제2 정보 처리 장치 및 방법에 의해, 제1 정보 처리 장치로부터의 데이터가 수신되어, 데이터로부터 손실 패킷의 정보가 취득되고, 제1 정보 처리 장치로부터의 송신 리포트의 패킷의 손실율에 기초하여, 제1 정보 처리 장치에 대한 손실 패킷의 재송 요구가 제어된다.
본 발명의 제1 정보 처리 장치 및 방법, 기록 매체, 및 프로그램에서는, 다른 정보 처리 장치로부터 송신된 수신 리포트로부터 시퀀스 번호가 취득되고, 취득된 시퀀스 번호에 기초하여, 패킷의 손실율이 계산되고, 계산된 패킷의 손실율이 송신 리포트에 부가되어 다른 정보 처리 장치로 송신된다.
본 발명의 제2 정보 처리 장치 및 방법, 기록 매체, 및 프로그램에서는, 다른 정보 처리 장치로부터 송신된 데이터가 수신되고, 수신된 데이터로부터 손실 패킷의 정보가 취득되고, 다른 정보 처리 장치로부터의 송신 리포트의 패킷의 손실율에 기초하여, 취득된 손실 패킷의 재송 요구가 제어되고, 제어된 패킷의 재송 요구가 다른 정보 처리 장치로 송신된다.
네트워크란, 적어도 2개의 장치가 접속되어, 어느 한 장치로부터, 다른 장치에 대하여, 정보를 전달할 수 있도록 한 구조를 의미한다. 네트워크를 통하여 통신하는 장치는, 독립된 장치끼리라도 무관하며, 하나의 장치를 구성하고 있는 내부 블록끼리라도 무관하다.
본 발명은, 프로토콜, 정보 처리 시스템 및 방법, 정보 처리 장치 및 방법, 기록 매체, 및 프로그램에 관한 것으로, 특히 쌍방향의 네트워크 상황을 파악할 수 있도록 한 프로토콜, 정보 처리 시스템 및 방법, 정보 처리 장치 및 방법, 기록 매체, 및 프로그램에 관한 것이다.
도 1은 RTP 패킷의 구성예를 도시하는 도면.
도 2는 RTCP의 수신 리포트의 구성예를 도시하는 도면.
도 3은 RTCP의 송신 리포트의 구성예를 도시하는 도면.
도 4는 본 발명을 적용한 스트리밍 콘텐츠 제공 시스템의 구성예를 도시하는 도면.
도 5는 도 4의 사용자 단말기의 구성예를 도시하는 블록도.
도 6은 도 4의 사용자 단말기의 기능 구성예를 도시하는 블록도.
도 7은 도 4의 사용자 단말기로부터 송신되는 RTCP의 수신 리포트의 구성예를 도시하는 도면.
도 8은 도 4의 사용자 단말기로부터 송신되는 NACK의 패킷의 구성예를 도시하는 도면.
도 9는 도 4의 서버의 기능 구성예를 도시하는 블록도.
도 10은 도 4의 서버로부터 송신되는 RTCP의 송신 리포트의 구성예를 도시하는 도면.
도 11은 도 4의 서버의 패킷 손실율 계산 처리를 설명하는 흐름도.
도 12는 도 4의 사용자 단말기의 재송 요구 처리를 설명하는 흐름도.
도 13은 도 4의 사용자 단말기로부터 송신되는 NACK의 패킷을 설명하는 도면.
도 14는 도 4의 사용자 단말기로부터 송신되는 NACK의 패킷을 설명하는 도면.
도 15는 도 4의 사용자 단말기로부터 송신되는 NACK의 패킷을 설명하는 도면.
도 16은 도 4의 사용자 단말기로부터 송신되는 NACK의 패킷을 설명하는 도면.
도 17은 도 4의 서버의 에러 설정 방법의 변경 처리를 설명하는 흐름도.
<발명을 실시하기 위한 최량의 형태>
이하, 도면을 참조하여 본 발명의 실시예에 대하여 설명한다.
도 4는 본 발명을 적용한 스트리밍 콘텐츠 제공 시스템의 구성예를 도시하고 있다. 인터넷으로 대표되는 네트워크(2)에는, 사용자 단말기(1-1, 1-2)(이하, 이들의 사용자 단말기를 개개로 구별할 필요가 없는 경우, 단순히 사용자 단말기(1)라고 칭함)가 접속되어 있다. 이 예에서는, 사용자 단말기가 2대만 도시되어 있지만, 네트워크(2)에는, 임의의 대수의 사용자 단말기가 접속된다.
또한, 네트워크(2)에는, 사용자 단말기(1)에 대하여 스트리밍 콘텐츠(이하, 콘텐츠라고 칭함)를 제공하는 서버(3)가 접속되어 있다. 이 서버(3)도 임의의 대 수가, 네트워크(2)에 접속된다.
도 5는 사용자 단말기(1)의 구성을 도시하고 있다. 도 5에서, CPU(Central Processing Unit)(11)는, ROM(Read Only Memory)(12)에 기억되어 있는 프로그램, 또는 기억부(18)로부터 RAM(Random Access Memory)(13)에 로드된 프로그램에 따라 각종 처리를 실행한다. RAM(13)에는 또한 CPU(11)가 각종 처리를 실행하는데 있어서 필요한 데이터 등도 적절하게 기억된다.
CPU(11), ROM(12) 및 RAM(13)은, 버스(14)를 통하여 서로 접속되어 있다. 이 버스(14)에는 또한, 입출력 인터페이스(15)도 접속되어 있다.
입출력 인터페이스(15)에는, 키보드, 마우스 등으로 이루어지는 입력부(16), CRT(Cathode Ray Tube), LCD(Liquid Crystal Display) 등으로 이루어지는 디스플레이, 및 스피커 등으로 이루어지는 출력부(17), 하드디스크 등으로 구성되는 기억부(18), 모뎀, 터미널 어댑터 등으로 구성되는 통신부(19)가 접속되어 있다. 통신부(19)는, 네트워크(2)를 통한 통신 처리를 행한다.
입출력 인터페이스(15)에는 또한 필요에 따라 드라이브(20)가 접속되어, 자기 디스크(21), 광 디스크(22), 광 자기 디스크(23), 혹은 반도체 메모리(24) 등이 적절하게 장착되고, 이들로부터 판독된 컴퓨터 프로그램이, 필요에 따라 기억부(18)에 인스톨된다.
또, 서버(3)도, 사용자 단말기(1)와 기본적으로 마찬가지로 구성되어 있다. 따라서, 이하의 설명에서는, 도 5의 사용자 단말기(1)의 구성은, 서버(3)의 구성으로서도 인용된다.
도 6은, 사용자 단말기(1)의 기능 구성예를 도시하는 블록도이다. 도 6에 도시되는 기능 블록은, 사용자 단말기(1)의 CPU(11)에 의해 소정의 제어 프로그램이 실행됨으로써 실현된다.
사용자 단말기(1)의 RTP 포트(41)는, 서버(3)로부터 네트워크(2)를 통하여, RTP 패킷화된 콘텐츠 데이터를 수신하여, RTP 패킷 해석부(42)에 출력한다. RTP 패킷 해석부(42)는, 그 RTP 패킷을 헤더부와 데이터부로 분해함과 함께 해석하고,데이터부의 콘텐츠 데이터를 버퍼(43)에 축적한다. 또한, 이 콘텐츠 데이터가 축적된 버퍼(43)의 장소(어드레스), 및 헤더에 기술되어 있던 헤더 정보를, 인덱스 리스트(44)에 기억하도록 해도 된다.
복호부(45)는, 재생하는 시각에 따라, 버퍼(43)에 축적된 콘텐츠 데이터를 복호하여, 출력부(17)를 구성하는 디스플레이 또는 스피커에 출력하여, 콘텐츠 데이터가 재생된다.
RTCP 패킷 생성부(46)는, RTP 포트(41)에 의해 콘텐츠 데이터를 수신하고 있는 경우, 미리 설정된 일정한 시간 간격으로, RTP 패킷 해석부(42)에 의해 해석된 RTP 패킷의 헤더의 정보에 기초하여, 수신 리포트 RR(Receiver Report)을 작성하여, RTCP 포트(47)에 출력한다.
도 7은, 사용자 단말기(1-1)로부터 서버(3)로 송신되는 RTCP의 수신 리포트 RR의 구성예를 도시하는 도면이다. 또한, 도 7의 수신 리포트 RR은, 수신 리포트 블록1의 송신자 c1의 동기 소스 식별자 후에, RTCP 시퀀스 번호가 추가되어 있는 점을 제외하고, 그 밖의 구성은, 상술한 도 2의 수신 리포트 RR과 마찬가지의 구성이다. 따라서, 도 2에 관한 설명은, 도 7의 설명으로서도 인용된다.
도 7의 예의 경우, 예를 들면, 헤더의 송신자의 동기 소스 식별자는, 사용자 단말기(1-1)에 대응하고, 수신 리포트 블록1은 송신자 c1(서버(3))로부터 송신된 패킷에 대응하는 정보로 되며, 수신 리포트 블록2는, 송신자 c2(도시 생략된 다른 서버)로부터 송신된 패킷에 대응하는 정보로 된다.
즉, RTP 패킷 생성부(46)는, 수신 리포트 블록1을, 서버(3)로부터 송신된 패킷에 기초하여 생성한다. 이 때, 수신 리포트 블록1의 송신자 c1(서버(3))의 동기 소스 식별자 후에, RTCP 시퀀스 번호를 부가하여 수신 리포트 RR이 생성된다.
RTCP 포트(47)는, 그 수신 리포트 RR을, 네트워크(2)를 통하여 서버(3)에 송신한다. 또한, RTCP 포트(47)는, 네트워크(2)를 통하여 서버(3)로부터, 송신 리포트 SR(Sender Report), 또는 콘텐츠 데이터의 송신이 종료한 것을 나타내는 EOD(End of Data) 메시지 데이터를 수신한다.
RTCP 패킷 해석부(48)는, 수신된 송신 리포트 SR을 해석한다. 송신 리포트 SR(도 10을 참조하여 후술함)에는 RTCP 패킷의 RTCP 시퀀스 번호, 및 사용자 단말기(1)로부터 서버(3)에의 송신에서의 패킷 손실율이 부가되어 있다.
에러 판정부(49)는, 에러 정정 방식으로서, 자동 재송 요구(ARQ : Automatic Repeat request)가 이용되는 경우, RTP 패킷 해석부(42)에 의해 해석된 헤더 정보에 기초하여, 서버(3)로부터 사용자 단말기(1)로 송신된 콘텐츠 데이터의 손실 패킷을 검출하여, RTCP 패킷 생성부(46)에 재송 요구를 지시한다. 이 때에, 에러 판정부(49)는, RTCP 패킷의 RTCP 시퀀스 번호, 및 사용자 단말기(1)로부터 서버(3)에의 송신에서의 패킷 손실율에 기초하여, 재송 요구의 방법의 변경을 제어하여, RTCP 패킷 생성부(46)에 지시한다.
RTCP 패킷 생성부(46)는, 그 지시의 재송 요구의 방법에 기초하여, 재송 요구 NACK(Negative Knowledge)의 패킷을 생성하여, RTCP 포트(47)를 통하여 서버(3)에 송신한다.
도 8은, 사용자 단말기(1-1)로부터 서버(3)로 송신되는 RTCP의 재송 요구NACK의 패킷의 구성을 도시하는 도면이다. 도 8의 예에서는, 재송 요구 NACK의 패킷은, 헤더, 포맷 타입, 패킷 타입, 패킷 길이, 송신자(재송 요구 NACK의 패킷을 송신한 사용자 단말기(1-1))의 동기 소스 식별자, RTCP 시퀀스 번호, 및 타임 스탬프로 구성되어 있다. 이들의 의미는, 기본적으로, 도 7(따라서, 도 2)에서의 대응하는 명칭의 요소와 마찬가지이다. 타임 스탬프 후에는, RTP 패킷의 헤더 정보에 기초하여 검출된 손실 패킷에 대응한 재송 지정 패킷 개수 및 재송 지정 시퀀스 번호가 부가된다.
도 9는, 서버(3)의 기능 구성예를 도시하는 블록도이다. 도 9에 도시되는 기능 블록은, 서버(3)의 CPU(11)에 의해 소정의 제어 프로그램이 실행됨으로써 실현된다.
부호화부(61)는, 사용자 단말기(1)로부터의 요구가 있었던 경우, 촬상부(91)가 피사체를 촬상하여 생성하고, 리얼타임으로 출력하는 콘텐츠 데이터(영상 데이터와 음성 데이터)를 부호화하여, 버퍼(62)에 축적한다.
RTP 패킷 생성부(63)는, 버퍼(62)에 축적된 콘텐츠 데이터를 RTP 패킷화하여, RTP 포트(64)에 출력한다. RTP 포트(64)는, RTP 프로토콜에 의해 네트워크(2)를 통하여 사용자 단말기(1)에 송신한다.
RTCP 포트(65)는, 사용자 단말기(1)로부터 네트워크(2)를 통하여, 재송 요구 NACK의 패킷(도 8), 또는 수신 리포트 RR(도 7)을 수신하여, RTCP 패킷 해석부(66)에 출력한다. 재송 요구 NACK, 또는 수신 리포트 RR은 RTCP 패킷으로 구성되어 있고, RTCP 시퀀스 번호가 부가되어 있다.
RTCP 패킷 해석부(66)는, 재송 요구 NACK의 RTCP 패킷, 또는 수신 리포트 RR의 RTCP 패킷을 해석한다. 패킷 손실 검지부(67)는, 해석된 수신 리포트 RR의 RTCP 패킷의 RTCP 시퀀스 번호에 기초하여, 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 네트워크(2)에서의 패킷 손실율을 계산한다. 또한, 패킷 손실 검지부(67)는, 해석된 재송 요구 NACK의 RTCP 패킷으로부터, 재송 패킷의 요구 데이터를 에러 처리부(68)에 출력한다.
에러 처리부(68)는, 재송 패킷의 요구 데이터에 기초하여, 재송 패킷을 포함하는 데이터를 버퍼(62)로부터 추출하여, RTP 패킷 생성부(63) 및 RTP 포트(64)를 통하여 사용자 단말기(1)에 송신한다. 또한, 에러 처리부(68)는, 필요에 따라, 재송 패킷을 중복하여 보내는 경우도 있다.
RTCP 패킷 생성부(69)는, 송신 리포트 SR에, 패킷 손실 검지부(67)에 의해 계산된 패킷 손실율을 부가하여, 미리 설정된 일정한 시간 간격으로, RTCP 포트(65)로부터 네트워크(2)를 통하여 사용자 단말기(1)에 송신한다. 또한, RTCP 패킷 생성부(69)는 RTP 포트(64)로부터 콘텐츠 데이터의 송신 종료가 검출되면, EOD 메시지 데이터를, RTCP 포트(65)로부터 네트워크(2)를 통하여 사용자 단말기(1)에 송신한다.
도 10은 서버(3)로부터 송신되는 RTCP의 송신 리포트 SR의 구성예를 도시하는 도면이다. 또한, 도 10의 송신 리포트 SR은, 헤더에서, 송신자의 동기 소스 식별자 후에, RTCP 시퀀스 번호가 추가되어 있는 점, 및 수신 리포트 블록1에서, 그 말미에, 송신자 d1로부터 송신자(서버(3))에 대하여 전송된 데이터의 패킷 손실율이 추가되는 점을 제외하고, 그 밖의 구성은, 상술한 도 3의 송신 리포트 SR과 마찬가지의 구성이다. 따라서, 상술한 도 3의 설명은, 도 10의 설명에서도 인용한다.
도 10의 경우, 예를 들면, 수신 리포트 블록1은, 사용자 단말기(1-1)(송신자 d1)로부터 송신된 수신 리포트에 대응하는 정보로 되고, 수신 리포트 블록2는, 사용자 단말기(1-2)(송신자 d2)로부터 송신된 수신 리포트에 대응하는 정보로 된다.
즉, 수신 리포트 블록1에 기술되는 것은, 사용자 단말기(1-1)로부터 송신된 수신 리포트에 기초한 정보로서, RTCP 패킷 생성부(69)는, 헤더의 송신자(서버(3))의 동기 소스 식별자 후에, RTCP 시퀀스 번호를 부가하고, 또한 수신 리포트 블록1의 말미에, 송신자 d1(사용자 단말기(1-1))로부터 송신자(서버(3))에의 데이터 전송의 패킷 손실율을 부가하여 송신 리포트 SR을 생성한다. 또한, 마찬가지로, 사용자 단말기(1-2)로부터 송신된 수신 리포트에 RTCP 시퀀스 번호가 부가되어 있는 경우, 수신 리포트 블록2의 말미에도 송신자 d2(사용자 단말기(1-2))로부터 송신자(서버(3))에의 데이터 전송의 패킷 손실율이 부가된다.
또, 패킷 손실율 외에, 사용자 단말기(1)로부터의 전송 도중에 손실된 RTCP 패킷의 RTCP 시퀀스 번호를 기술한 에러 RTCP 시퀀스 번호 리스트를 부가하도록 해도 된다.
계속해서, 도 11의 흐름도를 참조하여, 서버(3)의 패킷 손실율의 계산 처리를 설명한다. 도 11의 예에서, 서버(3)로부터 송신되는 송신 리포트 SR의 송신 간격이, RTCP 기준 시간 Ti로서 설정되어, 이 RTCP 기준 시간 내의 패킷 손실율이 구해진다.
서버(3)로부터 네트워크(2)를 통하여, RTP 포트(41)에 의해 콘텐츠 데이터를 수신하고 있는 경우, 사용자 단말기(1)의 RTCP 패킷 생성부(46)는 미리 설정된 일정한 시간 간격으로, 수신 리포트 RR을 생성하여, RTCP 포트(47)로부터 네트워크(2)를 통하여 서버(3)에 송신한다. 이것에 대응하여, 단계 S1에서, 서버(3)의 RTCP 포트(65)는, 수신 리포트 RR을 수신한다.
RTCP 패킷 해석부(66)는, 단계 S2에서, 수신 리포트 RR로부터 RTCP 시퀀스 번호를 취득하고, 단계 S3에서, 그 RTCP 시퀀스 번호를, RTCP 시퀀스 번호 리스트 AL에 추가한다. 또한, RTCP 시퀀스 번호 리스트 AL은, RAM(13) 등에 기억되어 있고, 송신 리포트 SR이 송신된 시점에 리세트되며, 그 후 새롭게 RTCP 시퀀스 번호가 추가된다.
RTCP 패킷 생성부(69)는, 내장된 클럭에 의해 계시 동작을 행하여, 사용자 단말기(1)로부터의 RTCP의 수신 리포트 RR을, 전회 수신하고나서의 경과 시간 T(이하, RTCP 경과 시간 T라고 칭함)를 계측하고 있다. 따라서, 단계 S4에서, RTCP 패킷 생성부(69)는, 그 RTCP 경과 시간 T가, 미리 설정된 RTCP 기준 시간 Ti(송신 리포트 SR의 송신 간격 Ti)로 되었는지의 여부를 판단한다.
단계 S4에서, RTCP 경과 시간 T가, 아직 RTCP 기준 시간 Ti로 되지 않는다고 판단된 경우, 단계 S5 내지 S9의 처리는 스킵되어, 처리는 종료된다.
한편, 단계 S4에서, RTCP 경과 시간 T가, RTCP 기준 시간 Ti와 동일하거나, 또는 RTCP 기준 시간 Ti보다 커진다고 판단된 경우, 단계 S5에서, RTCP 패킷 생성부(69)는, RTCP 시퀀스 번호 리스트 AL의 RTCP 시퀀스 번호의 수 AN을 취득하고, 또한 이와 동시에 RTCP 기준 시간 Ti에, 사용자 단말기(1)로부터의 수신 리포트 RR을 모두 정상 수신했을 때의 RTCP 시퀀스 번호의 총 수 BN을 구한다.
또, RTCP 시퀀스 번호의 총 수 BN은, 다음과 같이 하여 구해진다. 즉, 지금 인 경우, 사용자 단말기(1)로부터 수신 리포트 RR이 일정한 시간 간격 Tu로 송신되고 있다. 그 일정한 시간 간격 Tu의, 설정된 RTCP 기준 시간 Ti에 대한 비율(Tu/Ti)의 값이 1/100이라고 하면, RTCP 시퀀스 번호의 총 수 BN은 100으로 된다.
단계 S6에서, 패킷 손실 검지부(67)는, RTCP 시퀀스 번호의 수 AN, 및 RTCP 시퀀스 번호의 총 수 BN에 기초하여, 패킷 손실율 E를 이하의 수학식 1로부터 구한다.
단계 S7에서, 패킷 손실 검지부(67)는, 에러 RTCP 시퀀스 번호 리스트 CL을 구한다. 에러 RTCP 시퀀스 번호 리스트 CL은, RTCP 기준 시간 Ti에, 사용자 단말기(1)로부터의 수신 리포트 RR을 모두 정상적으로 수신한 경우의 RTCP 시퀀스 번호 리스트로부터, 실제로 수신한 RTCP 시퀀스 번호 리스트 AL을 제외하고 구할 수 있다.
단계 S8에서, RTCP 패킷 생성부(69)는, 단계 S6에서 구해진 패킷 손실율 E, 및 단계 S7에서 구해진 에러 RTCP 시퀀스 번호 리스트 CL을, 송신 리포트 SR에 부가하여, RTCP 포트(65)로부터 네트워크(2)를 통하여 사용자 단말기(1)에 송신한다.
단계 S9에서, RTCP 패킷 생성부(69)는, RTCP 경과 시간 T를 0으로 초기화한다. 이 때, 이와 동시에, RTCP 시퀀스 번호 리스트 AL도 리세트된다.
상기 설명에서는, 단계 S4에서, RTCP 경과 시간 T와 RTCP 기준 시간 Ti를 비교했지만, RTCP 경과 시간 T가, RTCP 기준 시간 Ti와 일치했을 때에, 단계 S2, S3 및 S5 내지 S9의 처리를 실행시키도록 해도 된다.
이상과 같이, 수신 리포트 RR에 RTCP 시퀀스 번호를 부가함으로써, 서버(3)에서, 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 패킷 손실율이 구해지고, 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 네트워크(2)의 상황이 파악된다.
또한, 구해진 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 패킷 손실율은, 송신 리포트 SR에 부가되어, 사용자 단말기(1)에 송신되므로, 사용자 단말기(1)에서도, 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 네트워크(2)의 상황을 파악할 수 있다.
이상과 같이 하여, 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 네트워크(2)의 상황이 파악되는 경우의, 사용자 단말기(1)의 재송 요구 처리에 대하여, 도 12의 흐름도를 참조하여 설명한다. 또한, 도 12의 예에서는, 사용자 단말기(1)와 서버(3)의 사이의 데이터 전송에 있어서, 에러 정정 방식으로서, ARQ(자동 재송 요구: Automatic Repeat request)가 이용된다.
서버(3)는, 사용자 단말기(1)로부터의 요구에 기초하여, 콘텐츠 데이터를RTP 패킷화하고, RTP 프로토콜에 의해 네트워크(2)를 통하여 사용자 단말기(1)에 송신해 온다. 따라서, 단계 S31에서, 사용자 단말기(1)의 RTP 포트(41)는, RTP 패킷화된 콘텐츠 데이터를 수신한다.
단계 S32에서, RTP 패킷 해석부(42)는, RTP 패킷을 헤더부와 데이터부로 분해함과 함께, 헤더부를 해석하여, 데이터부의 콘텐츠 데이터를 버퍼(43)에 축적하고, 헤더부의 헤더의 정보를 에러 판정부(49)에 출력한다.
단계 S33에서, 에러 판정부(49)는, RTP 패킷 해석부(42)에 의해 해석된 헤더의 정보에 기초하여, RTP 패킷 중에 손실 패킷이 있는지의 여부를 판단한다. 구체적으로 설명하면, RTP 패킷의 시퀀스 번호(도 1을 참조하여 상술함)가, 이미 수신된 시퀀스 번호에 대하여 불연속으로 되어 있는지의 여부가 판정되어, 불연속이면, 수신하지 않은 패킷이 있다(손실 패킷이 있다)고 판단된다.
단계 S33에서, RTP 패킷에 손실 패킷이 있다고 판단된 경우, 단계 S34에서, 에러 판정부(49)는, RTCP 패킷 해석부(48)로부터 해석된 송신 리포트 SR 내의, 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 패킷 손실율에 기초하여, 재송 요구 NACK의 패킷을 RTCP 패킷 생성부(46)를 제어하여, 생성시킨다. 단계 S35에서, RTCP 포트(47)는, 생성된 재송 요구 NACK의 RTCP 패킷을 서버(3)에 송신한다.
여기서, 상술한 단계 S34 및 S35의 처리의 상세 내용에 대하여, 도 13 내지 도 16을 참조하여 설명한다.
상술한 바와 같이, 도 11의 단계 S8의 처리로 생성된 송신 리포트 SR은, 설정된 RTCP 기준 시간(송신 리포트 SR의 송신 간격)에, 패킷 손실율 E, 및 에러RTCP 시퀀스 번호 리스트 CL이 부가되어, 서버(3)로부터 네트워크(2)를 통하여 송신된다. 이 송신 리포트 SR은, 사용자 단말기(1)의 RTCP 포트(47)에 의해 수신되고, RTCP 패킷 해석부(48)에 의해 해석된다. 이에 의해, 사용자 단말기에서, 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 패킷 손실율, 즉 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 네트워크(2)의 상황이 파악된다.
이 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 네트워크(2)의 상황에 따라, 사용자 단말기(1)에서, 도 13 내지 도 16에 도시된 바와 같이, 재송 요구가 제어된다. 도 13 내지 도 16에서는, 횡축은, 시간축을 나타내고 있다. 도 13에 도시한 바와 같이, 서버(3)로부터, RTP의 시퀀스 번호 1 내지 8의 패킷이 사용자 단말기(1)에 송신되고, 전송 도중에, 시퀀스 번호 4 내지 6의 패킷(도면에서, 이중으로 해칭 표시된 패킷)이 손실되어, 시퀀스 번호 1 내지 3, 7 및 8의 패킷이 사용자 단말기(1)에 의해 정확하게 수신된다.
그것에 대응하여, 전송 도중에 손실된 시퀀스 번호 4 내지 6의 패킷의 재송을 요구하기 위해, 도 13의 예에서는, 사용자 단말기(1)로부터, 시퀀스 번호 4 내지 6의 패킷에, 각각 대응하는 재송 요구 NACK4 내지 NACK6의 패킷(도면에서 해칭 표시된 패킷)이 개별적으로 서버(3)쪽으로 송신된다.
도 14의 예에서는, 사용자 단말기(1)로부터, 시퀀스 번호 4 내지 6의 패킷에 대응하는 재송 요구 NACK4, 5, 6이 하나의 패킷으로 통합되고, 서버(3)쪽으로 송신되고 있다.
또한, 도 15의 예에서는, 사용자 단말기(1)로부터, 시퀀스 번호 4 내지 6의패킷에 각각 대응하는 재송 요구 NACK4 내지 NACK6의 패킷(도면에서, 해칭 표시된 패킷)이 개별적으로 복수개씩(예를 들면, 2개씩), 서버(3)쪽으로 송신된다.
도 16의 예에서는, 사용자 단말기(1)로부터, 시퀀스 번호 4 및 5의 패킷에 대응하는 재송 요구 NACK4, 5가 하나의 패킷으로 통합됨과 함께, 그 패킷이, 2개 송신되고, 또한 시퀀스 번호 6의 패킷에 대응하는 재송 요구가 재송 요구 NACK6의 3개의 패킷이 서버(3)쪽으로 송신되고 있다.
이상과 같이, 에러 판정부(49)는, RTCP 패킷 해석부(48)에 의해 해석된 송신 리포트 SR 내의, 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 패킷 손실율에 의해 구해지는, 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 네트워크(2)의 상황에 따라, 재송 요구 패킷의 송신 방법을 변경한다. 예를 들면, 패킷 손실율이 제1 기준값보다 큰 경우, 도 15 또는 도 16에 도시된 바와 같이, 재송 요구 NACK의 패킷에 용장성을 갖게 하여 송신한다. 이에 의해, 재송 요구 NACK의 패킷을 서버(3)에 확실하게 도달시킬 수 있다.
또한, 패킷 손실율이 제2 기준값(제1 기준값보다 작음)보다 작은 경우에는, 도 14에 도시한 바와 같이, 송신하는 패킷의 수를 적게 하여, 전송로의 트래픽량을 감소시킨다. 패킷 손실율이 제1 기준값과 제2 기준값의 사이의 값인 경우에는, 도 13에 도시된 바와 같이, 표준 방법으로 패킷을 송신한다.
단계 S33에서, 손실 패킷이 존재하지 않는다고 판정된 경우, 단계 S34, S35의 처리는 스킵된다.
단계 S35의 처리 후, 또는 단계 S33에서, 손실 패킷이 존재하지 않는다고 판정된 경우, 단계 S36에서, 복호부(45)는 버퍼(43)에 축적되어 있는 콘텐츠 데이터가 재생 시각이 되었는지의 여부를 판정한다. 현재 시각이 아직 재생 시각에 도달하지 않은 경우, 처리는 단계 S31로 되돌아가, 그 이후의 처리가 반복된다.
단계 S36에서, 현재 시각이 재생 시각에 도달했다고 판정된 경우, 단계 S37로 진행하고, 복호부(37)는, 버퍼(43)에 축적되어 있는 콘텐츠 데이터를 판독하여, 복호하여, 출력부(17)에 출력한다.
계속해서, 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 네트워크(2)의 상황이 파악된 서버(3)의 에러 정정 방법의 설정 처리에 대하여, 도 17의 흐름도를 참조하여 설명한다.
단계 S61에서, 서버(3)의 CPU(11)(RTCP 패킷 해석부(66), RTCP 패킷 생성부(69), 패킷 손실 검지부(67) 등)는, 도 11의 흐름도를 참조하여 상술한 패킷 손실율 E의 계산 처리를 실행한다. 이에 의해, 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 패킷 손실율 E가 구해진다. 따라서, 단계 S62에서, 에러 처리부(68)는, 패킷 손실율 E가 미리 설정된 기준값 σ1(0<σ1) 이상인지의 여부를 판단하여, 패킷 손실율 E가 기준값 σ1 이상이라고 판단한 경우, 단계 S63에서, 에러 처리부(68)는, 에러 정정 방법을, FEC(전방향 오류 정정 : forward error correction)로 설정한다. 즉, 패킷 손실율 E가, 기준값 σ1보다도 큰 경우, 에러 정정 방법을, 서버(3)에는 재송 요구를 행하지 않고, 사용자 단말기(1)만으로 오류의 장소를 확정하여, 이것을 정정하는 에러 정정 방법인, FEC로 설정함으로써, ARQ를 이용한 경우보다도, 사용자 단말기(1)와 서버(3)의 사이의 데이터 전송이 비효율적으로 되는 것을 억제할 수 있다.
단계 S62에서, 패킷 손실율 E가 기준값 σ1보다 작다고 판단된 경우, 단계 S64에서, 에러 처리부(68)는, 패킷 손실율 E가, 기준값 σ2(0<σ2<σ1)보다 큰지의 여부를 판단한다. 단계 S64에서, 패킷 손실율 E가, 기준값 σ2보다 크다고 판단된 경우(단계 S62의 처리에 의해, 지금 패킷 손실율 E는, 기준값 σ1보다 작으므로, 패킷 손실율 E는, 기준값 σ2와 기준값 σ1 사이의 크기의 값으로 됨), 단계 S65에서, 에러 처리부(68)는, 에러 정정 방법을, ARQ로 설정한다.
단계 S64에서, 패킷 손실율 E가, 기준값 σ2보다 작다고 판단된 경우, 단계 S66에서, 에러 처리부(68)는, 패킷 손실율 E가, 마이너스값인지의 여부를 판단한다. 단계 S66에서, 패킷 손실율 E가, 마이너스값이 아니라고 판단된 경우, 단계 S67에서, 에러 처리부(68)는, 에러 제어를 해제하여, 에러 제어를 행하지 않도록 한다.
단계 S66에서, 패킷 손실율 E가, 마이너스값으로 판단된 경우, 단계 S68에서, 에러 처리부(68)는, 그 밖의 에러 처리를 실행한다. 즉, 패킷 손실율 E가, 취할 수 없는 값(이 경우, 마이너스값)인 경우에는, 사용자 단말기(1) 혹은 서버(3)에서 오동작 등이 발생할 우려가 있어, 그것에 대한 에러 처리가 실행된다.
이상과 같이, 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 패킷 손실율에 의해 구해지는, 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 네트워크(2)의 상황에 따라, 서버(3)측에서, 에러 정정 방법을 변경할 수 있도록 했으므로, 사용자 단말기(1)와 서버(3)의 사이에서 효율적인 데이터 전송이 가능하게 된다.
이상과 같이, RTP 전송에서, RTCP 패킷에 RTCP 시퀀스 번호를 부가했으므로, 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 패킷 손실율이 구해지고, 이 패킷 손실율을 RTCP의 송신 리포트에 부가함으로써, 사용자 단말기(1)와 서버(3)의 양방에서, 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 패킷 손실율을 파악할 수 있다.
이에 의해, 사용자 단말기(1)에서는, 자동 재송 요구 ARQ를 RTP 전송에 이용한 경우, 사용자 단말기(1)로부터 서버(3)에의 데이터 전송의 패킷 손실율에 따라, 그 재송 요구를 중복하여 요구하거나, 용장 요구하는 등의 선택을 동적으로 실행할 수 있게 되어, 보다 정확하고, 효율적으로 재송 요구를 할 수 있게 된다. 또한, 서버(3)에서는, 사용자 단말기(1)로부터 서버(3)에의 패킷 손실율에 따라, 에러 정정 방법을 ARQ로부터 FEC 등으로 변경할 수 있거나, 데이터 전송의 패킷 손실율이 매우 적은 경우에는, 에러 정정 방법을 행하지 않도록 할 수도 있다.
즉, 서버(3)로부터 사용자 단말기(1)에의 패킷 손실율뿐만 아니라, 사용자 단말기(1)로부터 서버(3)에의 패킷 손실율을 구하고, 그 결과를 서버(3)와 사용자 단말기(1)의 양방에서 파악할 수 있으므로, 보다 유연하고, 또한 에러 내성이 있는 신뢰성이 높은 전송을 동적으로 제공할 수 있다.
이상에 의해, 사용자 단말기(1)의 사용자는, 만족하는 데이터를 취득할 수 있다.
상술한 일련의 처리는, 하드웨어에 의해 실행시킬 수도 있지만, 소프트웨어에 의해 실행시킬 수도 있다. 일련의 처리를 소프트웨어에 의해 실행시키는 경우에는, 그 소프트웨어를 구성하는 프로그램이, 전용 하드웨어에 내장되어 있는 컴퓨터, 또는 각종 프로그램을 인스톨함으로써, 각종 기능을 실행하는 것이 가능한, 예를 들면 범용의 퍼스널 컴퓨터 등에, 프로그램 저장 매체로부터 인스톨된다.
컴퓨터에 인스톨되어, 컴퓨터에 의해 실행 가능한 상태로 되는 프로그램을 저장하는 프로그램 저장 매체는, 도 5에 도시된 바와 같이, 자기 디스크(21)(플렉시블 디스크를 포함함), 광 디스크(22)(CD-ROM(Compact Disc-Read Only Memory), DVD(Digital Versatile Disc)를 포함함), 광 자기 디스크(23)(MD(Mini-Disc)(상표)를 포함함), 혹은 반도체 메모리(24) 등으로 이루어지는 패키지 미디어, 또는 프로그램이 일시적 혹은 영속적으로 저장되는 ROM(12)이나, 기억부(18) 등으로 구성된다.
또, 본 명세서에서, 기록 매체에 기록되는 프로그램을 기술하는 단계는, 기재된 순서에 따라 시계열적으로 행해지는 처리는 물론, 반드시 시계열적으로 처리되지 않아도, 병렬적 혹은 개별적으로 실행되는 처리도 포함하는 것이다.
또, 본 명세서에서, 시스템이란, 복수의 장치로 구성되는 장치 전체를 나타내는 것이다.
이상과 같이, 본 발명에 따르면, 쌍방향의 네트워크 상황을 파악할 수 있는 시스템을 구축할 수 있다. 또한, 본 발명에 따르면, 보다 정확하고, 효율적으로 재송 요구를 할 수 있다. 또한, 본 발명에 따르면, 네트워크 상황에 따라, 효율적인 에러 정정 방법이 제공된다.

Claims (18)

  1. 복수의 정보 처리 장치가 네트워크를 통하여, 패킷을 단위로 하여 데이터를 통신하는 경우에, RTP 프로토콜과 함께 이용되는 RTCP 프로토콜로서,
    RTCP 패킷에 시퀀스 번호를 부가하는 것을 특징으로 하는 프로토콜.
  2. 제1 정보 처리 장치로부터 네트워크를 통하여, 패킷을 단위로 한 프로토콜로 데이터를 제2 정보 처리 장치로 송신하는 정보 처리 시스템으로서,
    상기 제1 정보 처리 장치는, 상기 제2 정보 처리 장치로부터의 수신 리포트를 수신하고, 상기 수신 리포트로부터 시퀀스 번호를 취득하고, 취득된 상기 시퀀스 번호에 기초하여, 상기 패킷의 손실율을 계산하고, 계산된 상기 패킷의 손실율에 기초하여 에러 정정을 제어함과 함께, 상기 패킷의 손실율을 송신 리포트에 부가하여 상기 제2 정보 처리 장치로 송신하고,
    상기 제2 정보 처리 장치는, 상기 제1 정보 처리 장치로부터의 상기 데이터를 수신하고, 상기 데이터로부터 손실 패킷의 정보를 취득하고, 상기 제1 정보 처리 장치로부터의 상기 송신 리포트의 상기 패킷의 손실율에 기초하여, 상기 제1 정보 처리 장치에 대한 상기 손실 패킷의 재송 요구를 제어하는 것을 특징으로 하는 정보 처리 시스템.
  3. 제1 정보 처리 장치로부터 네트워크를 통하여, 패킷을 단위로 한 프로토콜로데이터를 제2 정보 처리 장치로 송신하는 정보 처리 시스템의 정보 처리 방법으로서,
    상기 제1 정보 처리 장치의 정보 처리 방법은, 상기 제2 정보 처리 장치로부터의 수신 리포트를 수신하고, 상기 수신 리포트로부터 시퀀스 번호를 취득하고, 취득된 상기 시퀀스 번호에 기초하여, 상기 패킷의 손실율을 계산하고, 계산된 상기 패킷의 손실율에 기초하여 에러 정정을 제어함과 함께, 상기 패킷의 손실율을 송신 리포트에 부가하여 상기 제2 정보 처리 장치로 송신하고,
    상기 제2 정보 처리 장치의 정보 처리 방법은, 상기 제1 정보 처리 장치로부터의 상기 데이터를 수신하고, 상기 데이터로부터 손실 패킷의 정보를 취득하고, 상기 제1 정보 처리 장치로부터의 상기 송신 리포트의 상기 패킷의 손실율에 기초하여, 상기 제1 정보 처리 장치에 대한 상기 손실 패킷의 재송 요구를 제어하는 것을 특징으로 하는 정보 처리 방법.
  4. 네트워크를 통하여 다른 정보 처리 장치에, 패킷을 단위로 한 프로토콜로 데이터를 송신하는 정보 처리 장치로서,
    상기 다른 정보 처리 장치로부터 송신된 수신 리포트로부터 시퀀스 번호를 취득하는 취득 수단과,
    상기 취득 수단에 의해 취득된 상기 시퀀스 번호에 기초하여, 상기 패킷의 손실율을 계산하는 계산 수단과,
    상기 계산 수단에 의해 계산된 상기 패킷의 손실율을 송신 리포트에 부가하여 상기 다른 정보 처리 장치로 송신하는 송신 수단
    을 포함하는 것을 특징으로 하는 정보 처리 장치.
  5. 제4항에 있어서,
    상기 패킷을 단위로 한 프로토콜은, RTP 및 RTCP인 것을 특징으로 하는 정보 처리 장치.
  6. 제4항에 있어서,
    상기 계산 수단에 의해 계산된 상기 패킷의 손실율에 기초하여, 상기 데이터의 송신 에러의 정정 방법을 제어하는 제어 수단을 더 구비하는 것을 특징으로 하는 정보 처리 장치.
  7. 제6항에 있어서,
    상기 제어 수단은,
    상기 계산 수단에 의해 계산된 상기 패킷의 손실율이 제1 기준값보다도 큰지의 여부를 판단하는 제1 판단 수단과,
    상기 제1 판단 수단에 의한 판단 결과에 기초하여, 상기 데이터의 상기 송신 에러의 정정 방법을 설정하는 설정 수단
    을 포함하는 것을 특징으로 하는 정보 처리 장치.
  8. 제7항에 있어서,
    상기 제어 수단에, 상기 제1 판단 수단에 의해 상기 패킷의 손실율이 상기 제1 기준값보다도 작다고 판단된 경우, 상기 패킷의 손실율이 제2 기준값보다도 큰지의 여부를 판단하는 제2 판단 수단을 더 구비하고,
    상기 설정 수단은, 상기 제2 판단 수단에 의해 상기 패킷의 손실율이 상기 제2 기준값보다도 작다고 판단된 경우, 상기 데이터의 상기 송신 에러의 정정을 금지하는 것을 특징으로 하는 정보 처리 장치.
  9. 제8항에 있어서,
    상기 설정 수단은, 상기 제1 판단 수단에 의해 상기 패킷의 손실율이 상기 제1 기준값보다도 크다고 판단된 경우, 상기 데이터의 상기 송신 에러의 정정 방법을 FEC로 설정하고, 상기 제1 판단 수단에 의해 상기 패킷의 손실율이 상기 제1 기준값보다도 작다고 판단되며, 또한 상기 제2 판단 수단에 의해 상기 패킷의 손실율이 상기 제2 기준값보다도 크다고 판단된 경우, 상기 데이터의 상기 송신 에러의 정정 방법을 ARQ로 설정하는 것을 특징으로 하는 정보 처리 장치.
  10. 네트워크를 통하여 다른 정보 처리 장치에, 패킷을 단위로 한 프로토콜로 데이터를 송신하는 정보 처리 장치의 정보 처리 방법으로서,
    상기 다른 정보 처리 장치로부터 송신된 수신 리포트로부터 시퀀스 번호를 취득하는 취득 단계와,
    상기 취득 단계의 처리에 의해 취득된 상기 시퀀스 번호에 기초하여, 상기 패킷의 손실율을 계산하는 계산 단계와,
    상기 계산 단계의 처리에 의해 계산된 상기 패킷의 손실율을 송신 리포트에 부가하여 상기 다른 정보 처리 장치로 송신하는 송신 단계
    를 포함하는 것을 특징으로 하는 정보 처리 방법.
  11. 네트워크를 통하여 다른 정보 처리 장치에, 패킷을 단위로 한 프로토콜로 데이터를 송신하는 정보 처리 장치용의 프로그램으로서,
    상기 다른 정보 처리 장치로부터 송신된 수신 리포트로부터 시퀀스 번호를 취득하는 취득 단계와,
    상기 취득 단계의 처리에 의해 취득된 상기 시퀀스 번호에 기초하여, 상기 패킷의 손실율을 계산하는 계산 단계와,
    상기 계산 단계의 처리에 의해 계산된 상기 패킷의 손실율을 송신 리포트에 부가하여 상기 다른 정보 처리 장치로 송신하는 송신 단계
    를 포함하는 것을 특징으로 하는 컴퓨터가 판독 가능한 프로그램이 기록되어 있는 기록 매체.
  12. 네트워크를 통하여 다른 정보 처리 장치에, 패킷을 단위로 한 프로토콜로 데이터를 송신하는 정보 처리 장치를 제어하는 컴퓨터가 실행 가능한 프로그램으로서,
    상기 다른 정보 처리 장치로부터 송신된 수신 리포트로부터 시퀀스 번호를 취득하는 취득 단계와,
    상기 취득 단계의 처리에 의해 취득된 상기 시퀀스 번호에 기초하여, 상기 패킷의 손실율을 계산하는 계산 단계와,
    상기 계산 단계의 처리에 의해 계산된 상기 패킷의 손실율을 송신 리포트에 부가하여 상기 다른 정보 처리 장치로 송신하는 송신 단계
    를 포함하는 것을 특징으로 하는 프로그램.
  13. 네트워크를 통하여 다른 정보 처리 장치로부터, 패킷을 단위로 한 프로토콜로 데이터를 수신하는 정보 처리 장치로서,
    상기 다른 정보 처리 장치로부터 송신된 상기 데이터를 수신하는 수신 수단과,
    상기 수신 수단에 의해 수신된 상기 데이터로부터 손실 패킷의 정보를 취득하는 취득 수단과,
    상기 다른 정보 처리 장치로부터의 송신 리포트의 상기 패킷의 손실율에 기초하여, 상기 취득 수단에 의해 취득된 상기 손실 패킷의 재송 요구를 제어하는 제어 수단과,
    상기 제어 수단에 의해 제어된 상기 패킷의 재송 요구를, 상기 다른 정보 처리 장치로 송신하는 송신 수단
    을 포함하는 것을 특징으로 하는 정보 처리 장치.
  14. 제13항에 있어서,
    상기 패킷을 단위로 한 프로토콜은, RTP 및 RTCP인 것을 특징으로 하는 정보 처리 장치.
  15. 제13항에 있어서,
    상기 제어 수단은, 상기 데이터의 송신 에러의 정정 방법으로서 ARQ를 이용한 경우에 있어서, 상기 패킷의 손실율이 기준값보다 클 때, 상기 손실 패킷의 재송 요구를 용장성을 가지게 하도록 제어하는 것을 특징으로 하는 정보 처리 장치.
  16. 네트워크를 통하여 다른 정보 처리 장치로부터, 패킷을 단위로 한 프로토콜로 데이터를 수신하는 정보 처리 장치의 정보 처리 방법으로서,
    상기 다른 정보 처리 장치로부터 송신된 상기 데이터를 수신하는 수신 단계와,
    상기 수신 단계의 처리에 의해 수신된 상기 데이터로부터 손실 패킷의 정보를 취득하는 취득 단계와,
    상기 다른 정보 처리 장치로부터의 송신 리포트의 상기 패킷의 손실율에 기초하여, 상기 취득 단계의 처리에 의해 취득된 상기 손실 패킷의 재송 요구를 제어하는 제어 단계와,
    상기 제어 단계의 처리에 의해 제어된 상기 패킷의 재송 요구를, 상기 다른정보 처리 장치로 송신하는 송신 단계
    를 포함하는 것을 특징으로 하는 정보 처리 방법.
  17. 네트워크를 통하여 다른 정보 처리 장치로부터, 패킷을 단위로 한 프로토콜로 데이터를 수신하는 정보 처리 장치용의 프로그램으로서,
    상기 다른 정보 처리 장치로부터 송신된 상기 데이터를 수신하는 수신 단계와,
    상기 수신 단계의 처리에 의해 수신된 상기 데이터로부터 손실 패킷의 정보를 취득하는 취득 단계와,
    상기 다른 정보 처리 장치로부터의 송신 리포트의 상기 패킷의 손실율에 기초하여, 상기 취득 단계의 처리에 의해 취득된 상기 손실 패킷의 재송 요구를 제어하는 제어 단계와,
    상기 제어 단계의 처리에 의해 제어된 상기 패킷의 재송 요구를, 상기 다른 정보 처리 장치로 송신하는 송신 단계
    를 포함하는 것을 특징으로 하는 컴퓨터가 판독 가능한 프로그램이 기록되어 있는 기록 매체.
  18. 네트워크를 통하여 다른 정보 처리 장치로부터, 패킷을 단위로 한 프로토콜로 데이터를 수신하는 정보 처리 장치를 제어하는 컴퓨터가 실행 가능한 프로그램으로서,
    상기 다른 정보 처리 장치로부터 송신된 상기 데이터를 수신하는 수신 단계와,
    상기 수신 단계의 처리에 의해 수신된 상기 데이터로부터 손실 패킷의 정보를 취득하는 취득 단계와,
    상기 다른 정보 처리 장치로부터의 송신 리포트의 상기 패킷의 손실율에 기초하여, 상기 취득 단계의 처리에 의해 취득된 상기 손실 패킷의 재송 요구를 제어하는 제어 단계와,
    상기 제어 단계의 처리에 의해 제어된 상기 패킷의 재송 요구를, 상기 다른 정보 처리 장치로 송신하는 송신 단계
    를 포함하는 것을 특징으로 하는 프로그램.
KR1020047018745A 2002-05-22 2003-05-19 프로토콜이 기록된 컴퓨터로 판독가능한 기록 매체, 정보 처리 시스템 및 방법, 정보 처리 장치 및 방법, 및 기록 매체 KR100975176B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2002147224A JP4000905B2 (ja) 2002-05-22 2002-05-22 情報処理システムおよび方法、情報処理装置および方法、記録媒体、並びにプログラム
JPJP-P-2002-00147224 2002-05-22
PCT/JP2003/006181 WO2003098884A1 (en) 2002-05-22 2003-05-19 Protocol, information processing system and method, information processing device and method, recording medium, and program

Publications (2)

Publication Number Publication Date
KR20040111669A true KR20040111669A (ko) 2004-12-31
KR100975176B1 KR100975176B1 (ko) 2010-08-10

Family

ID=29545167

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020047018745A KR100975176B1 (ko) 2002-05-22 2003-05-19 프로토콜이 기록된 컴퓨터로 판독가능한 기록 매체, 정보 처리 시스템 및 방법, 정보 처리 장치 및 방법, 및 기록 매체

Country Status (6)

Country Link
US (1) US7583666B2 (ko)
EP (1) EP1507369A4 (ko)
JP (1) JP4000905B2 (ko)
KR (1) KR100975176B1 (ko)
CN (1) CN100401717C (ko)
WO (1) WO2003098884A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10432696B2 (en) 2011-01-12 2019-10-01 Saturn Licensing Llc Transmitting apparatus, transmitting method, receiving apparatus, receiving method, program, and content distribution system

Families Citing this family (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7529778B1 (en) 2001-12-12 2009-05-05 Microsoft Corporation System and method for providing access to consistent point-in-time file versions
JP3821086B2 (ja) * 2002-11-01 2006-09-13 ソニー株式会社 ストリーミングシステム及びストリーミング方法、クライアント端末及びデータ復号方法、並びにプログラム
JP2005045409A (ja) * 2003-07-24 2005-02-17 Pioneer Electronic Corp 情報処理装置、そのシステム、その方法、そのプログラム、および、そのプログラムを記録した記録媒体
US7885197B2 (en) * 2003-11-17 2011-02-08 Intel Corporation System and method for measuring per node packet loss in a wireless network
US20050185604A1 (en) * 2004-02-23 2005-08-25 Samsung Electronics Co., Ltd. Method and apparatus for transferring connectionless-oriented data packets
JP4692021B2 (ja) * 2004-04-15 2011-06-01 株式会社日立製作所 移動体の通信方法
EP1744482A4 (en) * 2004-05-06 2011-04-13 Nec Corp WIRELESS COMMUNICATION SYSTEM, WIRELESS COMMUNICATION PROCESS AND WIRELESS COMMUNICATION DEVICE
KR100565333B1 (ko) * 2004-06-22 2006-03-30 엘지전자 주식회사 휴대단말기의 비디오 오디오 동기장치 및 방법
US7617256B2 (en) * 2004-07-19 2009-11-10 Microsoft Corporation Remote file updates through remote protocol
US7590922B2 (en) * 2004-07-30 2009-09-15 Nokia Corporation Point-to-point repair request mechanism for point-to-multipoint transmission systems
JPWO2006013618A1 (ja) * 2004-08-02 2008-05-01 三菱電機株式会社 伝送制御装置
US8966551B2 (en) 2007-11-01 2015-02-24 Cisco Technology, Inc. Locating points of interest using references to media frames within a packet flow
US9197857B2 (en) 2004-09-24 2015-11-24 Cisco Technology, Inc. IP-based stream splicing with content-specific splice points
CN100583784C (zh) * 2005-03-30 2010-01-20 华为技术有限公司 在多协议标签交换网络中监测丢包率的方法
US8316129B2 (en) 2005-05-25 2012-11-20 Microsoft Corporation Data communication coordination with sequence numbers
JP4513725B2 (ja) * 2005-11-09 2010-07-28 ソニー株式会社 パケット送信装置、通信システム及びプログラム
JP2007086484A (ja) * 2005-09-22 2007-04-05 Brother Ind Ltd コンテンツ配信システム及びコンテンツ配信方法並びにそれに用いる配信装置、端末装置及びそのプログラム
US7619993B2 (en) * 2005-11-01 2009-11-17 International Business Machines Corporation Efficient probabilistic duplicate packet detector in computer networks
CN101160821A (zh) * 2005-11-17 2008-04-09 华为技术有限公司 测量mpls网络性能参数的方法及报文发送装置及系统
KR100736094B1 (ko) 2006-02-17 2007-07-06 삼성전자주식회사 디지털 기기의 상태 정보 제공 방법 및 장치
US7953020B2 (en) * 2006-05-22 2011-05-31 At&T Intellectual Property Ii, L.P. Method for implementing and reporting one-way network measurements
US9198084B2 (en) 2006-05-26 2015-11-24 Qualcomm Incorporated Wireless architecture for a traditional wire-based protocol
EP2031804A1 (en) * 2006-06-22 2009-03-04 Sanritz Automation Co., Ltd. I/o device, network system with i/o device and communication method in network system with i/o device
KR100871240B1 (ko) * 2006-08-18 2008-11-28 삼성전자주식회사 방송 시스템에서 단말기가 스트리밍 서비스의 수신율을보고하는 방법 및 장치와 그 시스템
JP4798285B2 (ja) * 2007-03-23 2011-10-19 富士通株式会社 パケットの伝送品質計測方法、およびパケット受信計測装置
US8023419B2 (en) 2007-05-14 2011-09-20 Cisco Technology, Inc. Remote monitoring of real-time internet protocol media streams
US7936695B2 (en) 2007-05-14 2011-05-03 Cisco Technology, Inc. Tunneling reports for real-time internet protocol media streams
JP5084362B2 (ja) * 2007-06-18 2012-11-28 キヤノン株式会社 データ送信装置、及びデータ送受信システム
US7835406B2 (en) 2007-06-18 2010-11-16 Cisco Technology, Inc. Surrogate stream for monitoring realtime media
US7817546B2 (en) * 2007-07-06 2010-10-19 Cisco Technology, Inc. Quasi RTP metrics for non-RTP media flows
JP5148190B2 (ja) * 2007-07-20 2013-02-20 京セラ株式会社 受信方法および受信装置
JP5053013B2 (ja) * 2007-09-25 2012-10-17 京セラ株式会社 受信装置、およびストリーム送信装置
JP5053014B2 (ja) * 2007-09-25 2012-10-17 京セラ株式会社 受信装置、およびストリーム送信装置
JP5101964B2 (ja) * 2007-09-25 2012-12-19 京セラ株式会社 受信装置
GB2465959B (en) * 2007-09-25 2012-04-25 Ericsson Telefon Ab L M Method and arrangement relating to a media structure
JP5101965B2 (ja) * 2007-09-25 2012-12-19 京セラ株式会社 受信装置
JP5101967B2 (ja) * 2007-09-26 2012-12-19 京セラ株式会社 受信装置
JP4911046B2 (ja) * 2008-01-21 2012-04-04 富士通株式会社 通信品質測定装置、通信端末装置、通信品質測定方法及びコンピュータプログラム
CN101640629B (zh) * 2008-07-29 2012-08-29 华为技术有限公司 一种链路丢包监控的方法和双向转发探测设备
US9398089B2 (en) 2008-12-11 2016-07-19 Qualcomm Incorporated Dynamic resource sharing among multiple wireless devices
JP2011009827A (ja) * 2009-06-23 2011-01-13 Nippon Telegr & Teleph Corp <Ntt> 通信システム及び通信方法
US9264248B2 (en) 2009-07-02 2016-02-16 Qualcomm Incorporated System and method for avoiding and resolving conflicts in a wireless mobile display digital interface multicast environment
US8301982B2 (en) * 2009-11-18 2012-10-30 Cisco Technology, Inc. RTP-based loss recovery and quality monitoring for non-IP and raw-IP MPEG transport flows
US9582238B2 (en) 2009-12-14 2017-02-28 Qualcomm Incorporated Decomposed multi-stream (DMS) techniques for video display systems
JP5506362B2 (ja) * 2009-12-15 2014-05-28 キヤノン株式会社 送信装置、送信方法
US8819714B2 (en) 2010-05-19 2014-08-26 Cisco Technology, Inc. Ratings and quality measurements for digital broadcast viewers
EP2391042B1 (en) * 2010-05-27 2015-07-29 Telefonaktiebolaget L M Ericsson (publ) Efficient error handling on a link using ARQ and multiple NACKs associated with multiple error thresholds
US8631277B2 (en) 2010-12-10 2014-01-14 Microsoft Corporation Providing transparent failover in a file system
US9413803B2 (en) 2011-01-21 2016-08-09 Qualcomm Incorporated User input back channel for wireless displays
US9582239B2 (en) 2011-01-21 2017-02-28 Qualcomm Incorporated User input back channel for wireless displays
US20130003624A1 (en) * 2011-01-21 2013-01-03 Qualcomm Incorporated User input back channel for wireless displays
US9787725B2 (en) * 2011-01-21 2017-10-10 Qualcomm Incorporated User input back channel for wireless displays
US10135900B2 (en) * 2011-01-21 2018-11-20 Qualcomm Incorporated User input back channel for wireless displays
US9065876B2 (en) 2011-01-21 2015-06-23 Qualcomm Incorporated User input back channel from a wireless sink device to a wireless source device for multi-touch gesture wireless displays
US10108386B2 (en) 2011-02-04 2018-10-23 Qualcomm Incorporated Content provisioning for wireless back channel
US9503771B2 (en) 2011-02-04 2016-11-22 Qualcomm Incorporated Low latency wireless display for graphics
US9331955B2 (en) 2011-06-29 2016-05-03 Microsoft Technology Licensing, Llc Transporting operations of arbitrary size over remote direct memory access
US8856582B2 (en) 2011-06-30 2014-10-07 Microsoft Corporation Transparent failover
US8788579B2 (en) 2011-09-09 2014-07-22 Microsoft Corporation Clustered client failover
US20130067095A1 (en) 2011-09-09 2013-03-14 Microsoft Corporation Smb2 scaleout
JP5838787B2 (ja) * 2011-12-21 2016-01-06 富士通株式会社 通信装置、および通信方法
IL217307A (en) * 2012-01-01 2015-09-24 Video Flow Ltd Continuous error correction (fec) system and method
US9525998B2 (en) 2012-01-06 2016-12-20 Qualcomm Incorporated Wireless display with multiscreen service
US9077619B2 (en) * 2012-09-18 2015-07-07 Cisco Technology, Inc. Exporting real time network traffic latency and buffer occupancy
KR20140050454A (ko) * 2012-10-19 2014-04-29 삼성전자주식회사 서버, 클라이언트 디바이스 및 그 제어 방법
JP2013048485A (ja) * 2012-11-05 2013-03-07 Kyocera Corp 送信装置
CN103944834B (zh) * 2013-01-22 2017-03-22 随锐科技股份有限公司 一种音视频转发控制方法及系统
CN103354615B (zh) * 2013-06-24 2015-04-15 西安交通大学 基于信号强度的直播视频数据传输差错控制方法
CN104426636A (zh) * 2013-09-11 2015-03-18 松下电器产业株式会社 通信控制装置及通信控制方法
EP2882125B1 (en) * 2013-12-06 2018-12-05 Alcatel Lucent Method and device for dynamically configuring either FEC or ARQ as impulse noise protection on a communication line
US20220262232A1 (en) * 2019-07-15 2022-08-18 Sew-Eurodrive Gmbh & Co. Kg A method for operating a mobile system and an alarm gateway as subscribers in a wireless network

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2503888B2 (ja) * 1993-06-30 1996-06-05 日本電気株式会社 移動無線通信におけるデ―タ伝送方式
US6304574B1 (en) * 1995-06-07 2001-10-16 3Com Corporation Distributed processing of high level protocols, in a network access server
JPH09247132A (ja) 1996-03-08 1997-09-19 Yazaki Corp 無線パケット通信装置及び送信装置
US5768527A (en) * 1996-04-23 1998-06-16 Motorola, Inc. Device, system and method of real-time multimedia streaming
US6148005A (en) * 1997-10-09 2000-11-14 Lucent Technologies Inc Layered video multicast transmission system with retransmission-based error recovery
US6115390A (en) * 1997-10-14 2000-09-05 Lucent Technologies, Inc. Bandwidth reservation and collision resolution method for multiple access communication networks where remote hosts send reservation requests to a base station for randomly chosen minislots
JP3734946B2 (ja) 1997-12-15 2006-01-11 松下電器産業株式会社 データ送出装置、データ受信装置及びデータ伝送装置
US6278716B1 (en) * 1998-03-23 2001-08-21 University Of Massachusetts Multicast with proactive forward error correction
US6643496B1 (en) * 1998-03-31 2003-11-04 Canon Kabushiki Kaisha System, method, and apparatus for adjusting packet transmission rates based on dynamic evaluation of network characteristics
US6501763B1 (en) * 1999-05-06 2002-12-31 At&T Corp. Network-based service for originator-initiated automatic repair of IP multicast sessions
US6757256B1 (en) * 1999-08-10 2004-06-29 Texas Instruments Incorporated Process of sending packets of real-time information
US6574213B1 (en) * 1999-08-10 2003-06-03 Texas Instruments Incorporated Wireless base station systems for packet communications
JP2001320440A (ja) * 2000-05-02 2001-11-16 Sony Corp 通信装置及び方法
JP3594185B2 (ja) * 2000-08-17 2004-11-24 松下電器産業株式会社 データ伝送装置およびデータ伝送方法
JP2002141964A (ja) * 2000-08-24 2002-05-17 Matsushita Electric Ind Co Ltd 送受信方法およびその装置
JP3769468B2 (ja) * 2001-03-21 2006-04-26 株式会社エヌ・ティ・ティ・ドコモ 通信品質制御方法、通信品質制御システム、パケット解析装置及びデータ送信端末装置
JP3757857B2 (ja) * 2001-12-12 2006-03-22 ソニー株式会社 データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10432696B2 (en) 2011-01-12 2019-10-01 Saturn Licensing Llc Transmitting apparatus, transmitting method, receiving apparatus, receiving method, program, and content distribution system

Also Published As

Publication number Publication date
CN1656750A (zh) 2005-08-17
US7583666B2 (en) 2009-09-01
WO2003098884A1 (en) 2003-11-27
US20050182850A1 (en) 2005-08-18
KR100975176B1 (ko) 2010-08-10
EP1507369A4 (en) 2010-10-13
JP2003338841A (ja) 2003-11-28
EP1507369A1 (en) 2005-02-16
JP4000905B2 (ja) 2007-10-31
CN100401717C (zh) 2008-07-09

Similar Documents

Publication Publication Date Title
KR100975176B1 (ko) 프로토콜이 기록된 컴퓨터로 판독가능한 기록 매체, 정보 처리 시스템 및 방법, 정보 처리 장치 및 방법, 및 기록 매체
US9565482B1 (en) Adaptive profile switching system and method for media streaming over IP networks
KR100967377B1 (ko) 데이터 통신 시스템, 데이터 송신 장치, 데이터 수신 장치, 데이터 통신 방법, 및 컴퓨터 프로그램을 기록한 매체
EP1328096B1 (en) Multimedia data packet communication with data type identifiers
US9781488B2 (en) Controlled adaptive rate switching system and method for media streaming over IP networks
JP3814614B2 (ja) マルチメディア・ストリーミング環境におけるサーバベースのレート制御
US7606928B2 (en) Method and device for controlling receiver buffer fullness level in multimedia streaming
US8223807B2 (en) Synchronizing data transmission over wireless networks
CN101356814B (zh) 通信处理设备和通信控制方法
US20020154600A1 (en) Data communication system
US8873590B2 (en) Apparatus and method for correcting jitter
US10419332B2 (en) Feedback management in a multipath communication network
CN104247377B (zh) 通信装置、通信方法、程序
US7123618B2 (en) Data transmitting apparatus and data receiving apparatus
JP4042396B2 (ja) データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
JP3906678B2 (ja) データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
KR101700370B1 (ko) 지터 보정 방법 및 장치
KR100876796B1 (ko) Ssm을 지원하는 네트워크에서 실시간 제어 프로토콜의전송 주기 전송 방법

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
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130726

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140725

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee