KR20070083610A - 확률적 네트워크를 통한 메시지 동기화 - Google Patents

확률적 네트워크를 통한 메시지 동기화 Download PDF

Info

Publication number
KR20070083610A
KR20070083610A KR1020077007181A KR20077007181A KR20070083610A KR 20070083610 A KR20070083610 A KR 20070083610A KR 1020077007181 A KR1020077007181 A KR 1020077007181A KR 20077007181 A KR20077007181 A KR 20077007181A KR 20070083610 A KR20070083610 A KR 20070083610A
Authority
KR
South Korea
Prior art keywords
component
message
local
rate
remote
Prior art date
Application number
KR1020077007181A
Other languages
English (en)
Other versions
KR101192482B1 (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 KR20070083610A publication Critical patent/KR20070083610A/ko
Application granted granted Critical
Publication of KR101192482B1 publication Critical patent/KR101192482B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/14Monitoring arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0682Clock or time synchronisation in a network by delay compensation, e.g. by compensation of propagation delay or variations thereof, by ranging
    • 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/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • H04L47/263Rate modification at the source after receiving feedback
    • 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
    • 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/43Assembling or disassembling of packets, e.g. segmentation and reassembly [SAR]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/062Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
    • H04J3/0632Synchronisation of packets and cells, e.g. transmission of voice via a packet network, circuit emulation service [CES]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

로컬 컴포넌트(210)와 원격 컴포넌트(230) 간에 통신하는 방법 및 장치가 제공되며, 여기서 로컬 컴포넌트(210)는 비결정론적 통신 링크(220)를 사용하여 원격 컴포넌트(230)에 연결된다. 로컬 클럭(216)은 원격 클럭(236)과 최대 오프셋 내에서 동기화된다. 원격 컴포넌트(230)로부터의 레이트 메시지(226)는 로컬 컴포넌트(210)에 수신되고, 이 레이트 메시지(226)는 제1 타임 스탬프를 포함한다. 로컬 클럭(216)의 시간이 제1 타임 스탬프를 사용하여 결정된 시간과 거의 일치할 때, 레이트 메시지(226)를 사용하여 데이터 레이트가 조정된다. 조정된 데이터 레이트를 사용하여 데이터 메시지(222)가 원격 컴포넌트(230)로 전송되며, 여기서 데이터 메시지(222)는 데이터 메시지(222) 내의 데이터를 처리하는 데 사용하기 위한 제2 타임 스탬프를 포함한다. 어떤 구현에서, 제1 타임 스탬프를 사용하여 결정된 시간은 또한 통신 링크 지연 및/또는 클럭 오프셋에 관한 정보를 사용하여 결정된다.
네트워크 통신, 전송 파라미터, 통계적 네트워크, 클럭 오프셋

Description

확률적 네트워크를 통한 메시지 동기화{MESSAGE SYNCHRONIZATION OVER A STOCHASTIC NETWORK}
본 발명은 네트워크 통신에 관한 것이다.
어떤 통신 시스템에서, 컴포넌트들은 동작 동안에 데이터 레이트 또는 패킷 크기 등의 전송 파라미터를 조정할 필요가 있다. 한 가지 가능한 시나리오에서, (예를 들어, MPEG-기반 비디오 전송 시스템에서) 다수의 가변 비트레이트 인코더에 연결되어 있는 멀티플렉서는 특정의 레이트로 데이터를 전송하도록 인코더에 지시하게 구성될 수 있다. 예를 들어, 가입자에게 일정 비트레이트 스트림을 전달하는 멀티플렉서는, 개개의 인코더 비트레이트의 합이 멀티플렉서가 제공해야만 하는 일정한 비트레이트보다 크지 않도록 보장하면서, 인코딩되고 있는 신호의 복잡도에 대응하는 비트레이트로 전송을 하도록 인코더에 지시할 수 있다. 이 시나리오에서, 인코더가 전송 파라미터를 변경하도록 요청받을 때, 다수의 인코더로부터의 변경된 파라미터로 전송되는 데이터가 서로 멀티플렉싱될 수 있도록, 전송 파라미터를 변경하는 것이 중요하다. 예를 들어, 인코더들 중 하나가 프레임에 대한 인코딩된 데이터의 비트레이트를 감소시키지 않은 경우, 그 프레임에 대해 멀티플렉서가 일정-비트레이트 출력 스트림에 배치할 수 있는 것보다 더 많은 비트가 멀티플 렉서에 도달할 수 있다. 고정밀 동기화가 바람직한 이러한 시스템은 일반적으로, 메시지가 결정론적 지연을 사용하여 동기화될 수 있도록, 통신을 위해 결정론적 연결(예를 들어, 일정한 또는 예측가능한 지연을 갖는 연결)을 사용한다.
통신 시스템에서의 컴포넌트는 통계적(비결정론적) 네트워크(예를 들어, 인터넷 프로토콜을 사용하는 패킷-기반 네트워크)를 사용하여 연결될 수 있다. 통계적 네트워크를 통한 메시지의 전송과 메시지의 수신 간의 지연은 일반적으로 확률 변수이며, 따라서 메시지 동기화가 어려울 수 있다. 지연에 관한 상한 및 하한은 일반적으로 결정될 수 있다. 어떤 통계적 네트워크에 있어서, 지연에 관한 상한은 무한일 수 있고(예를 들어, 패킷이 상실되어 패킷의 목적지에 결코 도달하지 않을 수 있음), 다른 통계적 네트워크에 있어서, 지연에 관한 상한은 유한일 수 있다.
일 태양에서, 로컬 컴포넌트와 원격 컴포넌트 간에 통신하는 방법이 제공되며, 상기 로컬 컴포넌트는 비결정론적 통신 링크(non-deterministic communication link)를 사용하여 상기 원격 컴포넌트에 연결되어 있다. 상기 로컬 컴포넌트의 로컬 클럭은 최대 오프셋 내에서 상기 원격 컴포넌트의 원격 클럭과 동기화되어 있다. 로컬 컴포넌트에서, 원격 컴포넌트로부터 레이트 메시지가 수신되고, 상기 레이트 메시지는 제1 타임 스탬프를 포함한다. 로컬 클럭의 시간이 상기 제1 타임 스탬프를 사용하여 결정된 시간과 거의 일치할 때, 상기 레이트 메시지를 사용하여, 상기 로컬 컴포넌트의 데이터 레이트가 조정된다. 상기 조정된 데이터 레이트를 사용하여, 상기 로컬 컴포넌트로부터 상기 원격 컴포넌트로 데이터 메시지가 전송되고, 상기 데이터 메시지는 상기 데이터 메시지 내의 데이터를 처리하는 데 사용하기 위한 제2 타임 스탬프를 포함한다.
특정의 구현은 이하의 특징들 중 하나 이상을 포함할 수 있다. 상기 로컬 컴포넌트로부터 상기 원격 컴포넌트로 복잡도 메시지(complexity message)가 전송되고, 상기 레이트 메시지는 상기 복잡도 메시지를 사용하여 생성된다. 데이터 레이트를 조정하는 상기 단계는 위상-동기 루프를 사용하여 상기 로컬 클럭의 상기 제1 시간을 결정하는 단계 또는 상기 로컬 클럭의 상기 제1 시간을 통계적으로 추정하는 단계를 포함한다. 상기 제1 타임 스탬프를 사용하여 결정된 상기 시간은 또한 통신 링크 지연에 관한 정보 및/또는 상기 로컬 클럭과 원격 클럭 간의 오프셋에 관한 정보를 사용하여 결정된다. 오프셋에 관한 정보는 최대 오프셋에 관한 정보를 포함하고, 이 최대 오프셋에 관한 정보는 최대 플러스 오프셋과 최대 마이너스 오프셋에 관한 정보를 포함할 수 있다. 통신 링크 지연에 관한 상기 정보는 상기 로컬 컴포넌트와 상기 원격 컴포넌트 간의 최대 통신 링크 지연에 관한 정보를 포함하고, 또한 상기 원격 컴포넌트로부터 상기 로컬 컴포넌트까지의 지연에 관한 정보 및 상기 로컬 컴포넌트로부터 상기 원격 컴포넌트까지의 지연에 관한 정보를 포함할 수 있다.
상기 제1 타임 스탬프는 상기 통신 링크 지연에 관한 정보 및/또는 상기 로컬 클럭과 상기 원격 클럭 간의 오프셋에 관한 정보를 포함한다. 상기 제2 타임 스탬프는 통신 링크 지연에 관한 정보 및/또는 상기 로컬 클럭과 상기 원격 클럭 간이 오프셋에 관한 정보를 포함한다. 데이터 레이트를 조정하는 상기 단계는 상기 레이트 메시지에 포함된 레이트 정보를 큐잉하는 단계를 포함한다. 상기 로컬 클럭의 상기 제1 시간이 상기 제1 타임 스탬프를 사용하여 결정된 상기 시간과 거의 일치할 때까지 상기 레이트 메시지가 버퍼링된다.
다른 태양에서, 로컬 컴포넌트와 원격 컴포넌트 간에 통신하는 방법이 제공되며, 상기 로컬 컴포넌트는 비결정론적 통신 링크를 사용하여 상기 원격 컴포넌트에 연결되어 있고, 상기 로컬 컴포넌트의 로컬 클럭은 최대 오프셋 내에서 상기 원격 컴포넌트의 원격 클럭과 동기화되어 있다. 로컬 컴포넌트로부터 원격 컴포넌트로 레이트 메시지가 전송된다. 상기 레이트 메시지는, 원격 클럭의 제1 시간이 상기 제1 타임 스탬프를 사용하여 결정된 시간과 거의 일치할 때, 상기 레이트 메시지 내에 포함된 데이터 레이트를 사용하여 상기 로컬 컴포넌트로 데이터 메시지를 전송하기 위해 상기 원격 컴포넌트에 의해 사용되는 제1 타임 스탬프를 포함한다. 상기 로컬 컴포넌트에서 상기 데이터 메시지가 수신되고, 상기 데이터 메시지는 제2 타임 스탬프를 포함한다. 상기 제2 타임 스탬프를 사용하여 상기 데이터 메시지에 포함된 데이터가 처리된다.
특정의 구현들이 이하의 특징들 중 하나 이상을 포함할 수 있다. 상기 원격 컴포넌트로부터 복잡도 메시지가 수신되고, 상기 복잡도 메시지를 사용하여 상기 레이트 메시지가 발생된다. 상기 데이터 메시지에 포함된 데이터는, 로컬 클럭의 제2 시간이 상기 제2 타임 스탬프를 사용하여 결정된 시간과 거의 일치할 때, 처리된다. 상기 제2 타임 스탬프를 사용하여 결정된 상기 시간은 또한 통신 링크 지연에 관한 정보 및/또는 상기 로컬 클럭과 상기 원격 클럭 간의 오프셋에 관한 정보를 사용하여 결정된다. 상기 오프셋에 관한 상기 정보는 최대 오프셋에 관한 정보를 포함하고, 이는 최대 플러스 오프셋 및 최대 마이너스 오프셋에 관한 정보를 포함할 수 있다.
통신 링크 지연에 관한 상기 정보는 상기 로컬 컴포넌트와 상기 원격 컴포넌트 간의 최대 통신 링크 지연에 관한 정보를 포함하며, 이는 상기 원격 컴포넌트로부터 상기 로컬 컴포넌트까지의 지연에 관한 정보 및 상기 로컬 컴포넌트로부터 상기 원격 컴포넌트까지의 지연에 관한 정보를 포함할 수 있다. 상기 제2 타임 스탬프는 상기 통신 링크 지연에 관한 상기 정보 및/또는 상기 원격 클럭과 상기 로컬 클럭 간의 오프셋에 관한 상기 정보를 포함한다. 상기 제1 타임 스탬프는 통신 링크 지연에 관한 정보 및/또는 로컬 클럭과 원격 클럭 간의 오프셋에 관한 정보를 포함한다. 상기 데이터 메시지에 포함된 데이터를 처리하는 단계는 로컬 클럭의 제2 시간이 상기 제2 타임 스탬프를 사용하여 결정된 시간과 거의 일치할 때까지 상기 데이터 메시지를 버퍼링하는 단계를 포함한다.
다른 태양에서, 로컬 컴포넌트와 원격 컴포넌트 간에 통신하는 방법이 제공된다. 로컬 컴포넌트를 원격 컴포넌트에 연결시키는 비결정론적 통신 링크가 제공된다. 상기 로컬 컴포넌트의 로컬 클럭이 상기 원격 컴포넌트의 원격 클럭과 최대 오프셋 내에서 동기화된다. 상기 원격 컴포넌트로부터 상기 로컬 컴포넌트로 레이트 메시지가 전송되며, 상기 레이트 메시지는 제1 타임 스탬프를 포함한다. 상기 로컬 클럭의 제1 시간이 상기 제1 타임 스탬프, 통신 링크 지연에 관한 정보, 및 최대 오프셋에 관한 정보를 사용하여 결정된 시간과 거의 일치할 때, 상기 레이트 메시지를 사용하여 상기 로컬 컴포넌트의 데이터 레이트가 조정된다. 상기 제1 시간에서, 상기 조정된 데이터 레이트를 사용하여 상기 로컬 컴포넌트로부터 상기 원격 컴포넌트로 데이터 메시지가 전송되고, 상기 데이터 메시지는 제2 타임 스탬프를 포함한다. 상기 원격 클럭의 제2 시간이 상기 제2 타임 스탬프, 상기 통신 링크 지연에 관한 정보, 및 상기 최대 오프셋에 관한 정보를 사용하여 결정된 시간과 거의 일치할 때, 상기 데이터 메시지 내에 포함된 데이터가 처리된다.
특정의 구현들은 이하의 특징들 중 하나 이상을 포함할 수 있다. 상기 로컬 컴포넌트는 인코더이고, 상기 원격 컴포넌트는 멀티플렉서이다. 상기 로컬 컴포넌트로부터 상기 원격 컴포넌트로 복잡도 메시지가 전송되고, 상기 레이트 메시지는 상기 복잡도 메시지를 사용하여 생성된다.
일 태양에서, 비결정론적 통신 링크를 사용하여 원격 컴포넌트에 연결되어 있는 로컬 컴포넌트가 제공된다. 상기 로컬 컴포넌트는 최대 오프셋 내에서 로컬 컴포넌트의 로컬 클럭을 원격 컴포넌트의 원격 클럭에 동기화시키는 수단, 및 상기 원격 컴포넌트로부터의 레이트 메시지를 사용하여 상기 로컬 컴포넌트의 데이터 레이트를 조정하는 수단을 포함한다. 상기 로컬 컴포넌트는 또한 상기 로컬 컴포넌트로부터 상기 원격 컴포넌트로 전송된 데이터 메시지가 상기 원격 컴포넌트에 의해 처리되기 위해 제 시간에 상기 원격 컴포넌트에 도달하도록 보장하는 수단을 포함한다.
특정의 구현들은 이하의 특징들 중 하나 이상을 포함할 수 있다. 상기 동기화시키는 수단은 위상-동기 루프를 포함한다. 상기 동기화시키는 수단은 통계적 추정을 포함한다. 상기 조정하는 수단은 레이트 조정 유닛을 포함한다. 상기 보장하는 수단은 타임-스탬핑 컴포넌트(time-stamping component)를 포함한다.
다른 태양에서, 데이터를 출력 스트림으로 조립하는 동작을 하는 출력 조립 유닛을 포함하는 멀티플렉서가 제공된다. 입력 유닛은 데이터 및 타임 스탬프를 포함하는 데이터 메시지를 수신하고 로컬 클럭의 시간이 상기 타임 스탬프를 사용하여 결정된 시간과 거의 일치할 때 상기 데이터를 출력 조립 유닛으로 제공한다. 레이트 제어 유닛은 타임-스탬핑된 레이트 메시지를 원격 컴포넌트로 전송하고, 상기 레이트 메시지는 장래의 데이터 메시지의 데이터 레이트에 관한 정보를 포함한다.
특정의 구현들은 이하의 특징들 중 하나 이상을 포함할 수 있다. 상기 레이트 제어 유닛은 상기 장래의 데이터 메시지의 복잡도에 관한 정보를 사용하여 상기 레이트 메시지를 발생한다. 상기 레이트 제어 유닛은 상기 로컬 클럭의 시간에 관한 정보를 사용하여 상기 레이트 메시지를 타임스탬핑한다. 상기 입력 유닛은, 통신 링크 지연에 관한 정보 및/또는 상기 로컬 클럭과 원격 클럭 간의 오프셋에 관한 정보를 사용하여, 상기 데이터를 상기 출력 조립 유닛에 제공한다.
다른 태양에서, 최대 오프셋 내에서 인코더 클럭을 원격 클럭과 동기화시키는 동작을 하는 동기화 유닛을 포함하는 인코더가 제공된다. 송신기는 데이터 메시지를 타임스탬핑하여 데이터 레이트로 전송하고, 레이트 조정 유닛은 상기 인코더 클럭의 시간이 대응하는 레이트 메시지 내의 타임 스탬프를 사용하여 결정된 시간과 거의 일치할 때, 상기 대응하는 레이트 메시지에 응답하여 상기 데이터 레이트를 조정한다.
특정의 구현들은 이하의 특징들 중 하나 이상을 포함할 수 있다. 상기 동기화 유닛은 위상-동기 루프를 포함한다. 상기 송신기는 상기 인코더 클럭의 상기 시간에 관한 정보를 사용하여 상기 데이터 메시지를 타임스탬핑한다. 상기 레이트 조정 유닛은 통신 링크 지연에 관한 정보 및/또는 상기 최대 오프셋에 관한 정보를 사용하여 상기 데이터 레이트를 조정한다. 상기 송신기는 상기 대응하는 레이트 메시지를 발생하는 데 사용되는 타임스탬핑된 복잡도 메시지를 전송한다.
구현들은 이하의 이점들 중 하나 이상을 포함할 수 있다. 통신 컴포넌트들이 통계적 네트워크를 사용하여 메시지를 정확하게 동기화할 수 있게 해주는 데 사용될 수 있는 방법 및 장치가 개시되어 있다. 결정론적 네트워크를 통해 통신하도록 설계된 시스템 또는 컴포넌트가 통계적 네트워크를 통해 통신을 할 수 있도록 구성될 수 있다. 통신 시스템 내의 컴포넌트는 전용 통신 링크를 사용하여 직접 연결되지 않고 원격적으로 위치될 수 있다. 통신 시스템에서의 컴포넌트들 간의 연결은 재배선(rewiring)을 필요로 하지 않고 동적으로 변경될 수 있다. 통신 시스템에서 작은 백업 장치 풀이 사용될 수 있는데, 그 이유는 이들 연결이 동적으로 변경될 수 있고 또 아주 유연성있기 때문이다. 큰 지연 및/또는 큰 지연 변동을 갖는 통계적 네트워크를 사용하는 때에도, 메시지 전달 시간의 변동이 작게 유지될 수 있다.
본 발명의 하나 이상의 실시예의 상세가 첨부 도면 및 이하의 설명에 기술되어 있다. 본 발명의 다른 특징, 목적, 및 이점이 상세한 설명 및 도면으로부터, 또한 청구항들로부터 명백하게 될 것이다.
도 1은 통신 시스템의 블록도이다.
도 2는 인코더 및 멀티플렉서의 블록도이다.
도 3은 메시지를 동기화시키는 프로세스의 플로우차트이다.
도 4A는 복잡도 메시지의 포맷을 나타낸 도면이다.
도 4B는 레이트 메시지의 포맷을 나타낸 도면이다.
여러 도면에서 유사한 도면 부호는 유사한 구성요소를 나타낸다.
도 1은 네트워크(120(1)-120(n))를 사용하여 다수의 인코더(110(1)-110(n))가 멀티플렉서(130)에 연결되어 있는 통신 시스템(100)을 나타낸 것이다. 인코더(110(1)-110(n))는, 예를 들어, 전송을 위해 입력 신호(105(1)-105(n))를 수신하여 인코딩하는 오디오 또는 비디오 인코더일 수 있다. 인코더(110(1)-110(n))는 일반적으로 다수의 비트레이트로 데이터를 인코딩하여 전송할 수 있다. 신호를 인코딩하기 위해 인코더가 사용하는 비트레이트는, 예를 들어, 신호의 복잡도, 출력 채널에서의 가용 대역폭, 또는 인코딩된 신호에 대해 요망 또는 요구되는 품질에 기초하여 변동될 수 있다.
인코더(110(1)-110(n))는 네트워크(120(1)-120(n))를 통해 멀티플렉서(130)로 인코딩된 데이터를 전송한다. 네트워크(120(1)-120(n))는 가변 전송 지연을 갖는 통계적 네트워크(예를 들어, 인터넷 프로토콜(IP) 네트워크)일 수 있다. 한 구 현에서, 네트워크(120(1)-120(n))는 동일한 네트워크의 일부이다.
멀티플렉서(130)는 인코더(110(1)-110(n))로부터 인코딩된 데이터를 수신하고 이 인코딩된 데이터를, 일정한 비트레이트의 스트림일 수 있는 단일의 출력 스트림(135)으로 결합할 수 있다. 멀티플렉서(130)는 일반적으로 출력 스트림(135)에 대한 목표 비트레이트를 가지며, 이 비트레이트는, 예를 들어, 출력 스트림(135)이 전송되는 채널의 용량에 의해 또는 출력 스트림(135)을 수신하는 장치의 한계에 의해 제약될 수 있다. 멀티플렉서(130)는 인코딩된 데이터를 특정의 비트레이트로 전송하도록 각각의 개별적인 인코더에 지시하는 레이트 메시지를 인코더(110(1)-110(n))에 제공할 수 있다. 멀티플렉서(130)는, 예를 들어, 인코더로부터의 인코딩된 데이터의 과거 이력, 인코더에 의해 제공된 복잡도 메시지, 또는 조작자 입력에 기초하여, 인코더에 어느 비트레이트로 전송하도록 지시할지를 결정할 수 있다. 인코더로부터의 복잡도 메시지는 입력 신호를 주어진 품질 수준으로 인코딩하기 위해 요구되는 비트레이트의 추정치를 포함할 수 있다. 복잡도 메시지는 또한 비트레이트를 인코더에 할당하기 위해 멀티플렉서(130)가 사용할 수 있는 현재의 입력 신호 또는 장래의 입력 신호에 관한 통계 또는 일군의 통계를 포함할 수 있다.
멀티플렉서(130)는, 출력 스트림(135)를 요구된 비트레이트 내에 유지시키면서 인코더(110(1)-110(n))로부터의 신호의 품질을 최적화하기 위해, 인코더(110(1)-110(n))에 비트레이트를 할당할 수 있다. 멀티플렉서(130)는 사전 설정된 레이트로 또는 덜 규칙적인 간격으로 인코더(110(1)-110(n))에 레이트 메시지를 전송할 수 있다. 멀티플렉서(130)가 레이트 메시지를 인코더(110(1)-110(n))에 전송하는 경우, 새로운 비트레이트로 전송되는 인코더(110(1)-110(n))로부터의 인코딩된 데이터가 출력 스트림(135)에 모두 배치되도록 멀티플렉서(130)에 제시간에 도달하도록 인코더(110(1)-110(n))가 비트레이트를 변경하는 것이 바람직하다. 이전의 비트레이트로 전송하는 인코더로부터의 인코딩된 데이터가 새로운 비트레이트로 전송하는 인코더로부터의 인코딩된 데이터와 멀티플렉싱되는 경우, 출력 스트림(135)은 가입 용량 미달(under-subscribed)(이용가능한 것보다 더 적은 전송할 비트를 가짐)일 수 있거나 가입 용량 초과(over-subscribed)(이용가능한 것보다 더 많은 전송할 비트를 가짐)일 수 있다.
도 2는 인코더/멀티플렉서 쌍(200)을 나타낸 것으로서, 인코더(210) 및 멀티플렉서(230)는 네트워크(220)에 의해 연결되어 있다. 멀티플렉서(230)는 일반적으로 다수의 인코더에 연결되어 있지만, 명확함을 위해 인코더(210)만이 도시되어 있다. 네트워크(220)는 단일의 네트워크일 수 있거나 다수의 독립적인 네트워크로 이루어져 있을 수 있다. 인코더(210)는 송신기(212), 수신기(214), 인코딩 유닛(215), 및 레이트 조정 유닛(217)을 포함한다. 멀티플렉서(230)는 입력 유닛(232), 레이트 제어 유닛(234), 및 출력 조립 유닛(238)을 포함한다.
인코더(210)는 입력 신호(205)(예를 들어, 미압축된 아날로그 또는 디지털 오디오, 비디오, 또는 데이터)를 수신하고, 인코딩 유닛(215)을 사용하여 입력 신호(205)를 인코딩하며, 송신기(212)를 사용하여 인코딩된 데이터 메시지(222)를 전송한다. 데이터 메시지(222)는 일반적으로 가변 비트레이트로 인코딩되며, 예를 들어, 데이터 스트림 또는 일련의 개별적인 데이터 패킷일 수 있다. 도시된 구현에서, 인코더 시간(예를 들어, 인코더 클럭(216)으로 표시됨)은 위상-동기 루프(PLL)(218)를 사용하여 최대 오프셋 내에서 멀티플렉서 클럭(236)과 동기화되어 있다. PLL(218)은 기본 주파수로서 인코더 클럭(216)을 사용하고 동기화를 위한 주파수 기준으로서 멀티플렉서 클럭(236)의 시간에 관한 정보(예를 들어, 이하에 기술되는 레이트 메시지 타임 스탬프 내에 또는 별도의 타이밍 메시지 내에 포함되어 있음)를 사용할 수 있다. 다른 구현에서, 인코더 시간 베이스(encoder time base)는 PLL(218)을 사용하는 대신에 통계적 방법을 사용하여 멀티플렉서 클럭(236)과 동기화될 수 있다. 한 가지 이러한 통계적 방법은 장래의 거동을 예측하고 패킷의 도달 시간을 추정하기 위해 관찰된 네트워크 지연을 사용한다. 다른 대안으로서, 동기화를 위해 네트워크 시간 프로토콜(Network Time Protocol)의 변형이 사용될 수 있다.
한 구현에서, 인코더(210)는 레이트 제어 유닛(234)으로 복잡도 메시지(224)를 전송할 수 있고, 레이트 제어 유닛(234)은 데이터 메시지(222)를 생성하기 위해 인코더(210)가 사용해야만 하는 비트레이트를 지정하는 레이트 메시지(226)를 인코더(210)로 전송할 수 있다. 레이트 조정 유닛(217)은 레이트 메시지(226)를 처리하고 또 새로운 레이트를 사용하여 입력 신호(205)를 인코딩하도록 인코딩 유닛(215)에 지시할 수 있다. 복잡도 메시지(224)는 인코딩 유닛(215)이 입력 신호(205) 내의 정보를 얼마나 용이하게 인코딩할 수 있는지를 나타낼 수 있다. 복잡도 메시지(224)는 주어진 품질 수준으로 입력 신호(205)를 인코딩하는 데 요구되 는 비트레이트 또는 비트 수를 명시적으로 기술할 수 있다. 복잡도 메시지(224)는 입력 신호(205)에 관한 하나 이상의 통계(예를 들어, 샘플 분산 또는 평균) 및/또는 입력 신호(205)에 관한 인지 정보(perceptual information)를 포함할 수 있다. 복잡도 메시지(224)는 또한, 예를 들어, 복잡도 메시지(224)가 전송되는 시간(예를 들어, PLL(218)에 의해 표시되는 시간)에 관한 정보를 포함하는 타임 스탬프를 포함할 수 있다. 복잡도 메시지 타임 스탬프는 송신기(212)에 의해 복잡도 메시지(224)에 추가될 수 있으며, 멀티플렉서(230)가 복잡도 메시지(224)를 처리 및/또는 사용해야 하는 시간에 관한 정보를 포함할 수 있다. 멀티플렉서(230)는 설정된 레이트(예를 들어, 초당 32회)로 다수의 인코더로부터의 복잡도 메시지를 처리할 수 있다. 예를 들어, 멀티플렉서(230)는 복잡도 메시지가 모든 인코더에 대해 이용가능한지 여부에 상관없이 주어진 시간(멀티플렉서 클럭(236)으로 표시됨)까지 도달한 모든 복잡도 메시지를 처리할 수 있다. 복잡도 메시지가 인코더에 대해 이용가능하지 않은 경우, 인코더에 대한 마지막 복잡도 정보가 재사용될 수 있다. 한 구현에서, 복잡도 메시지(224)가 사용되지 않으며, 예를 들어, 데이터 메시지(222)의 이력에 기초하여 레이트 정보가 결정될 수 있다.
도 4A는 필드(405-430)를 포함하는 예시적인 복잡도 메시지(400)의 포맷을 나타낸 것이다. 각각의 필드는, 예를 들어, 32-비트 부호없는 정수(unsigned integer)일 수 있다. 필드(405)는 복잡도 메시지(400)의 타임 스탬프이고, 필드(410)는 복잡도 값이며, 이들 둘 모두에 대해서는 앞서 논의하였다. 필드(415)는 복잡도 메시지(400)가 연관되어 있는 인코더(도 2의 인코더(210))의 ID를 지정 한다. 필드(420)는 복잡도 메시지(400)를 전송하기 이전에 인코더가 수신한 마지막 레이트 메시지를 식별해준다. 필드(425, 430)는 인코더가 전송할 수 있는 최소 레이트 및 최대 레이트를 각각 나타낸다.
다시 도 2를 참조하면, 레이트 제어 유닛(234)은 인코더(210)로 레이트 메시지(226)를 전송한다. 레이트 메시지(226)는 인코더(210)가 장래에 입력 신호(205)를 인코딩하고 데이터 메시지(222)를 전송하는 데 사용해야만 하는 비트레이트 및/또는 비트 수에 관한 정보를 포함할 수 있다. 한 구현에서, 멀티플렉서(230)는 다수의 인코더로 브로드캐스트 레이트 메시지를 전송할 수 있고, 브로드캐스트 레이트 메시지는 각각의 인코더에 대한 개별적인 비트레이트 또는 모든 인코더가 사용해야만 하는 단일의 비트레이트를 포함할 수 있다. 레이트 메시지(226)는 멀티플렉서 클럭(236)의 시간에 관한 정보를 포함할 수 있는 타임 스탬프를 포함한다. 예를 들어, 레이트 메시지 타임 스탬프는 레이트 제어 유닛(234)에 의해 발생될 수 있으며, 레이트 제어 유닛(234)이 레이트 메시지(226)를 전송하는 시간(멀티플렉서 클럭(236)으로 나타냄)을 나타낼 수 있다. 레이트 메시지 타임 스탬프는 인코더(210)가 레이트 메시지(226)를 처리 및/또는 사용해야만 하는 시간에 관한 정보를 포함할 수 있다.
도 4B는 필드(455-470)를 포함하는 예시적인 레이트 메시지(450)의 포맷을 나타낸 것이다. 필드(455)는 레이트 메시지(450)의 타임 스탬프이고, 필드(460)는 인코더(예를 들어, 도 2의 인코더(210))에 대한 새로운 레이트이며, 이들 둘 모두에 대해서는 앞서 논의하였다. 필드(465)는 레이트 메시지(450)를 처리해야만 하 는 인코더의 ID를 지정한다. 필드(470)는 레이트 메시지(450)의 수이다. 예를 들어, 레이트 메시지는 순차적으로 번호가 매겨질 수 있다.
다시 도 2를 참조하면, 인코더(210)는 레이트 메시지(226)로부터의 레이트 정보를 사용하여 데이터 메시지(222)를 전송한다. 보다 구체적으로는, 수신기(214)는 레이트 메시지(226)를 버퍼링하고, 특정의 시간에(예를 들어, PLL(218)에 의해 표시된 시간이 레이트 메시지(226)의 타임 스탬프에 포함된 시간과 일치할 때) 레이트 조정 유닛(217)에 레이트 메시지(226)를 제공한다. 레이트 조정 유닛(217)은, 인코딩 유닛(215)의 레이트를 조정하기 위해, 레이트 메시지(226)로부터의 레이트 정보를 사용한다. 인코딩 유닛(215)은 조정된 레이트를 사용하여 입력 신호(205)를 인코딩하고, 송신기(212)는 데이터 메시지(222)로 인코딩된 신호를 멀티플렉서(230)로 전송한다. 데이터 메시지(222)는, 예를 들어, 데이터 메시지(222)가 전송되는 시간(예를 들어, PLL(218)에 의해 표시된 시간)에 관한 정보를 포함하는 타임 스탬프를 포함할 수 있다. 이 타임 스탬프는 송신기(212)에 의해 발생되어 데이터 메시지(222)에 부가될 수 있다.
인코더(210)는 레이트 메시지(226)로부터의 레이트 정보를 저장하는 레이트 큐(도시 생략)를 포함하고 결정론적 지연 후의 장래의 전송(예를 들어, 데이터 메시지(222))에 레이트 정보를 적용할 수 있다. 레이트 큐는 인코더/멀티플렉서 쌍(200)의 왕복 지연을 보상할 수 있으며, 그에 따라, 예를 들어, 복잡도 메시지가 특정의 부분의 데이터(예를 들어, 입력 신호(205)의 세그먼트)에 대해 생성될 수 있고, 복잡도 메시지가 인코더로부터 멀티플렉서로 전송될 수 있으며, 대응하는 레 이트 메시지가 멀티플렉서로부터 인코더로 전송될 수 있고, 또 인코더가 레이트 메시지를 사용하여 대응하는 부분의 데이터를 전송할 수 있다. 레이트 큐를 사용함으로써, 인코더(210)는 그 부분의 데이터에 대응하는 복잡도 메시지를 전송할 수 있고 또 제1 부분의 데이터에 대응하는 레이트 메시지를 기다리는 동안 하나 이상의 부가적인 부분의 데이터를 처리할 수 있다.
멀티플렉서(230)는 데이터 메시지(222)를 수신하고 데이터 메시지(222)에 포함된 데이터를 다른 인코더로부터의 데이터와 멀티플렉싱한다. 한 구현에서, 입력 유닛(232)은 데이터 메시지(222)를 수신하고 특정의 시간에(예를 들어, 멀티플렉서 클럭(236)에 의해 표시되는 시간이 데이터 메시지(222)의 타임 스탬프에 포함된 시간과 일치할 때) 데이터 메시지(222)를 출력 조립 유닛(238)으로 제공할 수 있다. 모든 인코더가 멀티플렉서(230)에 의해 전송되는 레이트 메시지에 응답한 경우, 출력 조립 유닛(238)은 모든 인코더로부터의 데이터를 멀티플렉서 출력 스트림(235)으로 결합할 수 있다. 출력 스트림(235)은 일정 비트레이트의 스트림일 수 있으며, 예를 들어, 통신 링크(예를 들어, 위성 링크)를 통해 최종 사용자로 또는 처리 장치로 전송될 수 있다.
레이트 제어 유닛(234)이 레이트 메시지(226)를 전송하는 시간과 출력 조립 유닛(238)이 데이터 메시지(222)를 수신하는 시간 간의 관계가 일반적으로 중요하다. 예를 들어, 이 "레이트 루프(rate loop)"가 적절히 동기화되지 않는 경우, 가입 용량 미달(under-subscription) 또는 가입 용량 초과(over-subscription)가 멀티플렉서에서 일어날 수 있다. 레이트 루프의 동기화는 2가지 불확실성, (i) PLL(218)에 의해 표시되는 시간과 멀티플렉서 클럭(236)에 의해 표시되는 시간 간의 오프셋, 및 (ii) 네트워크(220)의 지연의 변동성에 의해 영향을 받을 수 있다. 인코더(210)에서 표시되는 시간과 멀티플렉서(230)에서 표시되는 시간 간의 오프셋은 일반적으로 최대 플러스 및 마이너스 오프셋에 의해 한정될 수 있으며, 이는 PLL(218)의 설계에 의존할 수 있고 또 대칭적일 수 있다. 네트워크(220)의 지연도 역시 일반적으로 한정될 수 있다. 예를 들어, 네트워크(220)는 보장된 서비스 품질을 제공할 수 있고, 여기서 네트워크(220)는 어떤 (높은) 확률로 지정된 시간(최대 지연) 내에 데이터를 전달한다.
PLL(218)에 의해 표시된 시간이 멀티플렉서 클럭(236)에 의해 표시된 시간과 최대 오프셋 내에서(예를 들어, 최대 플러스 및 마이너스 오프셋 내에서) 동기화된 경우, 한쪽 컴포넌트(멀티플렉서 또는 인코더)로부터 다른쪽 컴포넌트로 전송되는 시간에 민감한 메시지가 제시간에 도달하여 수신측 컴포넌트에 의해 처리되도록 보장하기 위해 최대 오프셋 및 최대 네트워크 지연에 관한 정보가 사용될 수 있다. 예를 들어, 한 구현에서, 레이트 메시지는 레이트 메시지가 전송되는 (멀티플렉서 클럭(236)으로 표시되는) 시간(time mux ) + 멀티플렉서부터 인코더까지의 최대 네트워크 지연(delay mux,enc ) + 최대 플러스 오프셋(offset max+ )으로 타임스탬핑되며, 여기서 플러스 오프셋은 PLL(218)에 의해 표시되는 시간이 멀티플렉서 클럭(236)에 의해 표시되는 시간보다 앞선다는 것을 나타낸다. 레이트 메시지가 인코더에 의해 수신되는 시간(현재, PLL(218)에 의해 표시됨)(time enc )은 타임 스탬프에 의해 표시 되는 시간보다 작거나 같으며, 그에 의해 타임 스탬프에 의해 표시된 시간에 인코더가 레이트 메시지를 처리할 수 있게 된다.
한 구현에서, 인코더(210)로부터 멀티플렉서(230)로 전송되는 데이터 메시지는 데이터 메시지가 전송되는 시간(PLL(218)에 의해 표시됨)(time enc ) + 인코더로부터 멀티플렉서까지의 최대 네트워크 지연(delay enc,mux ) + 최대 마이너스 오프셋(offset max- )으로 타임스탬핑되며, 여기서 마이너스 오프셋은 PLL(218)에 의해 표시된 시간이 멀티플렉서 클럭(236)에 의해 표시된 시간보다 뒤진다는 것을 나타낸다. 데이터 메시지가 멀티플렉서에 의해 수신되는 시간(현재, 멀티플렉서 클럭(236)에 의해 표시됨)(time mux )은 타임 스탬프에 의해 표시되는 시간보다 작거나 같으며, 그에 따라 타임 스탬프에 의해 표시된 시간에 멀티플렉서(230)가 데이터를 출력 스트림(235)에 배치할 수 있게 된다. 멀티플렉서(230)와 인코더(210) 간에 메시지를 전송할 때 최대 오프셋 및 최대 네트워크 지연에 대한 조정은, 수신측 컴포넌트에 의해 표시된 시간이 메시지의 타임 스탬프와 일치할 때, 수신측 컴포넌트가 메시지를 제시간에 수신하여 그 메시지를 처리할 수 있게 해준다.
인코더 타임 베이스(예를 들어, PLL(218))의 최대 오프셋은 일반적으로 고성능 통신 시스템에서 메시지의 전달 시간의 허용 에러보다 크다. 그렇지만, 인코더 타임 베이스의 오프셋은 본 명세서에 기술된 왕복 전송에서 상쇄된다. 오프셋이 상쇄되기 때문에, 아주 정확한 시스템 타이밍이 달성될 수 있다. 예를 들어, 멀티플렉서(230)가 시간 t에 레이트 메시지를 전송하고 시간 t+constant+error(단, error = ±50㎲임)에 인코더(210)로부터 데이터가 도달할 것으로 예상되는 경우, 인코더 타임 베이스의 최대 오프셋 또는 네트워크 지연의 변동이 ±50ms이더라도, 요구되는 타이밍 정확도가 달성될 수 있다.
기술된 타임-스탬핑 방식은 인코더(210)와 멀티플렉서(230) 간의 일정한 왕복 지연을 제공한다. 예를 들어, 멀티플렉서(230)가 레이트 메시지를 전송하는 때와 멀티플렉서(230)가 대응하는 비트레이트를 갖는 데이터를 출력 스트림(235)에 배치하는 때 사이의 지연은 상수 delay mux,enc + offset max+ + delay processing + delay enc,mux + offset max- 이며, delay processing 은 인코더(210)가 레이트 메시지를 처리하는 때와 인코더(210)가 레이트 메시지로부터의 레이트 정보를 사용하여 데이터를 전송하는 때 사이의 결정론적 지연이다. 한 구현에서, 다른 결정론적 지연도 역시 존재할 수 있다. 각각의 인코더와 멀티플렉서(230) 간의 왕복 지연이 일정할 수 있기 때문에, 멀티플렉서(230)는 모든 인코더로 레이트 메시지를 전송할 수 있고 거의 동시에 요청된 레이트로 인코더로부터 데이터를 수신할 수 있으며, 그에 의해 멀티플렉서(230)는, 가입 용량 초과 또는 가입 용량 미달없이, 모든 인코더로부터의 데이터를 일정 비트레이트의 출력 스트림(235)으로 결합할 수 있다.
한 가지 가능한 타임-스탬핑 방식에 대해 전술하였지만, 다른 것들이 가능하다. 예를 들어, 메시지를 전송하는 컴포넌트는 메시지가 전송된 시간(전송측 컴포넌트의 타임 베이스에 의해 표시됨)으로 메시지를 타임스탬핑할 수 있으며, 수신측 컴포넌트는 메시지가 처리되어야만 하는 시간(수신측 컴포넌트의 시간 베이스에 의 해 표시됨)을 결정하기 위해, 최대 오프셋 및 최대 네트워크 지연에 기초하여, 조정을 할 수 있다. 한 구현에서, 멀티플렉서 또는 인코더가 최대 오프셋 및 최대 네트워크 지연에 대한 모든 타임 스탬프를 조정할 수 있다. 한 구현에서, 타임 스탬프는, 메시지가 전송된 시간에 관한 정보 대신에 또는 그 정보와 함께, 수신측 컴포넌트가 메시지를 처리해야 하는 시간에 관한 정보(전송측 컴포넌트의 타임 베이스로 표현됨)를 포함할 수 있다. 한 구현에서, 통신 시스템에서의 처리 지연 또는 다른 지연을 고려하기 위해 부가적인 상수 또는 변수가 부가될 수 있다.
도 2 및 도 3을 참조하면, 도 3은 통계적 네트워크를 통한 메시지를 동기화시키는 프로세스(300)를 나타낸 것이다. 인코더(예를 들어, 인코더(210))의 시간은 최대 오프셋 내에서 멀티플렉서(예를 들어, 멀티플렉서(230))의 시간과 동기화된다(단계 310). 이 시간들은, 예를 들어, PLL, 네트워크 시간 프로토콜의 변형, 통계적 방법, 결정론적 네트워크(예를 들어, 공중 전화 시스템)를 통한 통신, 또는 GPS(Global Positioning System) 신호를 사용하여 동기화될 수 있다. 인코더 시간이 멀티플렉서 시간에 동기화되는 경우, 인코더 시간은 일반적으로 정상 동작 동안에 멀티플렉서 시간의 최대 오프셋 내에 있게 된다. 인코더 시간과 멀티플렉서 시간 간의 오프셋이 최대 오프셋을 초과하는 경우, 이들 시간이 재동기화될 수 있다.
인코더의 입력에서의 신호의 복잡도에 관한 정보를 포함하는 복잡도 메시지는 선택적으로 멀티플렉서로 전송될 수 있다(단계 320). 복잡도 메시지가 전송되는 경우, 복잡도 메시지는 멀티플렉서가 차후의 레이트 할당에 관한 더 나은 결정을 할 수 있게 해준다. 멀티플렉서는, 장래의 데이터가 전송되어야만 하는 레이트 에 관한 정보를 포함할 수 있는, 타임 스탬프를 포함하는 레이트 메시지를 인코더로 전송한다(단계 330). 복잡도 메시지를 포함하는 구현에서, 레이트 정보는 뒤이어서 데이터(이 데이터로부터 복잡도 메시지가 생성되었음)에 적용될 수 있다. 적절한 시간에 레이트 메시지를 처리하기 위해 인코더에 의해 레이트 메시지 타임 스탬프가 사용될 수 있다. 레이트 메시지 타임 스탬프는 또한 인코더 시간과 멀티플렉서 시간 간의 동기화를 유지하기 위해 사용될 수 있다.
인코더는 레이트 메시지를 수신하고 인코딩된 출력 데이터의 데이터 레이트를 조정한다(단계 340). 예를 들어, 인코더는 인코더 입력 신호에 적용되는 압축 레벨을 조정하는 것에 의해 또는 인코딩 프로세스의 복잡도를 변경하는 것에 의해 출력 데이터 레이트를 조정할 수 있다. 인코더 시간이 레이트 메시지 타임 스탬프를 사용하여 결정된 시간과 일치할 때, 인코더는 출력 데이터 레이트를 변경할 수 있거나, 인코더 시간이 레이트 메시지 타임 스탬프에 포함된 시간과 일치할 때 인코더는 대응하는 데이터 레이트를 큐에 배치할 수 있다. 한 구현에서, 레이트 메시지 타임 스탬프는 레이트 메시지가 언제 전송되었는지에 관한 정보를 포함하며, 네트워크 지연 및 레이트 메시지가 전송된 시간에 대한 최대 오프셋을 가산함으로써 결정된 시간에, 인코더는 레이트 메시지를 처리한다. 다른 구현에서, 레이트 메시지 타임 스탬프는 인코더가 레이트 메시지를 처리해야만 하는 시간을 포함한다. 이 구현에서, 타임 스탬프는 네트워크 지연 및 최대 오프셋에 관한 정보를 포함할 수 있다.
인코더는, 조정된 데이터 레이트를 사용하여, 타임 스탬프를 포함하는 데이 터 메시지를 멀티플렉서로 전송한다(단계 350). 멀티플렉서는 데이터 메시지 내에 포함된 데이터를 수신하여 처리한다(단계 360). 멀티플렉서는, 데이터 메시지로부터의 데이터를 출력 스트림에 언제 배치해야 하는지를 결정하기 위해, 데이터 메시지 타임 스탬프를 사용할 수 있다. 한 구현에서, 유사한 타임 스탬프를 갖는(예를 들어, 각자의 인코더에 의해 유사한 시간에 전송된) 다수의 인코더로부터의 데이터 메시지는 다같이 출력 스트림에 배치될 수 있다. 다른 구현에서, 타임 스탬프는 네트워크 지연 및 최대 오프셋에 관한 정보를 포함하며, 어느 멀티플렉서 시간에 멀티플렉서가 대응하는 데이터를 출력 스트림에 배치해야하는지를 나타낸다. 또다른 구현에서, 타임 스탬프는 데이터 메시지가 전송된 시간을 나타내고, 멀티플렉서는 이 타임 스탬프와 네트워크 지연 및 최대 오프셋에 관한 정보를 사용하여 데이터를 언제 출력 스트림에 배치해야 하는지를 결정한다.
프로세스(300)가 멀티플렉서 및 인코더와 관련하여 기술되어 있지만, 프로세스(300)는 컴포넌트들이 통계적 네트워크를 통해 통신을 하는 많은 상황에서 사용될 수 있다. 게다가, 레이트 메시지 및 데이터 메시지가 본 설명에서 예시적으로 사용되고 있지만, 많은 유형의 메시지가 프로세스(300)를 사용하여 동기화될 수 있다.
본 발명의 다수의 실시예들에 대해 기술하였다. 그럼에도 불구하고, 본 발명의 정신 및 범위를 벗어나지 않고 여러가지 수정이 행해질 수 있다는 것을 잘 알 것이다. 예를 들어, 타임 베이스 동기화 및/또는 타임 스탬핑이 별개의 컴포넌트에 의해 행해질 수 있다. 예를 들어, PLL(218) 및 타임스탬핑 수단(예를 들어, 타 임 스탬프를 데이터 패킷에 부가하는 버퍼)은 인코더(210)와 별개의 것일 수 있다. 종래의 인코더는 이어서 통계적 네트워크와 인터페이스하도록 개조될 수 있다. 한 구현에서, 레이트 제어(레이트 제어 유닛(234))는 물리적으로 멀티플렉서(230)의 일부가 아니다. 레이트 제어 유닛(234)은, 예를 들어, 네트워크(220) 또는 별도의 통신 링크를 사용하여 멀티플렉서(230)와 통신할 수 있다. 따라서, 다른 실시예들은 이하의 청구항의 범위 내에 속한다.

Claims (41)

  1. 로컬 컴포넌트와 원격 컴포넌트 간에 통신하는 방법으로서,
    상기 로컬 컴포넌트는 비결정론적 통신 링크(non-deterministic communication link)를 사용하여 상기 원격 컴포넌트에 연결되어 있고,
    상기 로컬 컴포넌트의 로컬 클럭은 최대 오프셋 내에서 상기 원격 컴포넌트의 원격 클럭과 동기화되어 있으며,
    상기 방법은,
    로컬 컴포넌트에서, 원격 컴포넌트로부터 레이트 메시지를 수신하는 단계 - 상기 레이트 메시지는 제1 타임 스탬프를 포함함 -,
    로컬 클럭의 제1 시간이 상기 제1 타임 스탬프를 사용하여 결정된 시간과 거의 일치할 때, 상기 레이트 메시지를 사용하여, 상기 로컬 컴포넌트의 데이터 레이트를 조정하는 단계, 및
    상기 조정된 데이터 레이트를 사용하여, 상기 제1 시간에 상기 로컬 컴포넌트로부터 상기 원격 컴포넌트로 데이터 메시지를 전송하는 단계 - 상기 데이터 메시지는 상기 데이터 메시지 내의 데이터를 처리하는 데 사용하기 위한 제2 타임 스탬프를 포함함 -
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 로컬 컴포넌트로부터 상기 원격 컴포넌트로 복잡도 메시지(complexity message)를 전송하는 단계를 더 포함하며,
    상기 레이트 메시지는 상기 복잡도 메시지를 사용하여 생성되는 방법.
  3. 제1항에 있어서, 데이터 레이트를 조정하는 상기 단계는 위상-동기 루프를 사용하여 상기 로컬 클럭의 상기 제1 시간을 결정하는 단계를 포함하는 방법.
  4. 제1항에 있어서, 데이터 레이트를 조정하는 상기 단계는 상기 로컬 클럭의 상기 제1 시간을 통계적으로 추정하는 단계를 포함하는 방법.
  5. 제1항에 있어서, 상기 제1 타임 스탬프를 사용하여 결정된 상기 시간은 또한 통신 링크 지연에 관한 정보 및 상기 로컬 클럭과 원격 클럭 간의 오프셋에 관한 정보 중 적어도 하나를 사용하여 결정되는 방법.
  6. 제5항에 있어서, 상기 로컬 클럭과 상기 원격 클럭 간의 오프셋에 관한 정보는 상기 로컬 클럭과 상기 원격 클럭 간의 최대 오프셋에 관한 정보를 포함하는 방법.
  7. 제6항에 있어서, 상기 로컬 클럭과 상기 원격 클럭 간의 최대 오프셋에 관한 정보는 최대 플러스 오프셋과 최대 마이너스 오프셋에 관한 정보를 포함하는 방법.
  8. 제5항에 있어서, 통신 링크 지연에 관한 상기 정보는 상기 로컬 컴포넌트와 상기 원격 컴포넌트 간의 최대 통신 링크 지연에 관한 정보를 포함하는 방법.
  9. 제5항에 있어서, 통신 링크 지연에 관한 상기 정보는 상기 원격 컴포넌트로부터 상기 로컬 컴포넌트까지의 통신 링크 지연에 관한 정보 및 상기 로컬 컴포넌트로부터 상기 원격 컴포넌트까지의 통신 링크 지연에 관한 정보를 포함하는 방법.
  10. 제5항에 있어서, 상기 제1 타임 스탬프는 상기 통신 링크 지연에 관한 정보 및 상기 로컬 클럭과 상기 원격 클럭 간의 오프셋에 관한 정보 중 적어도 하나를 포함하는 방법.
  11. 제1항에 있어서, 상기 제2 타임 스탬프는 통신 링크 지연에 관한 정보 및 상기 로컬 클럭과 상기 원격 클럭 간의 오프셋에 관한 정보 중 적어도 하나를 포함하는 방법.
  12. 제1항에 있어서, 데이터 레이트를 조정하는 상기 단계는 상기 레이트 메시지에 포함된 레이트 정보를 큐잉하는 단계를 포함하는 방법.
  13. 제1항에 있어서,
    상기 로컬 클럭의 상기 제1 시간이 상기 제1 타임 스탬프를 사용하여 결정된 상기 시간과 거의 일치할 때까지 상기 레이트 메시지를 버퍼링하는 단계를 더 포함하는 방법.
  14. 로컬 컴포넌트와 원격 컴포넌트 간에 통신하는 방법으로서,
    상기 로컬 컴포넌트는 비결정론적 통신 링크를 사용하여 상기 원격 컴포넌트에 연결되어 있고,
    상기 로컬 컴포넌트의 로컬 클럭은 최대 오프셋 내에서 상기 원격 컴포넌트의 원격 클럭과 동기화되어 있으며,
    상기 방법은,
    로컬 컴포넌트로부터 원격 컴포넌트로 레이트 메시지를 전송하는 단계 - 상기 레이트 메시지는, 원격 클럭의 제1 시간이 상기 제1 타임 스탬프를 사용하여 결정된 시간과 거의 일치할 때, 상기 레이트 메시지 내에 포함된 데이터 레이트를 사용하여 상기 로컬 컴포넌트로 데이터 메시지를 전송하기 위해 상기 원격 컴포넌트에 의해 사용되는 제1 타임 스탬프를 포함함 -,
    상기 로컬 컴포넌트에서 상기 데이터 메시지를 수신하는 단계 - 상기 데이터 메시지는 제2 타임 스탬프를 포함함 -, 및
    상기 제2 타임 스탬프를 사용하여 상기 데이터 메시지에 포함된 데이터를 처리하는 단계
    를 포함하는 방법.
  15. 제14항에 있어서,
    상기 원격 컴포넌트로부터 복잡도 메시지를 수신하는 단계, 및
    상기 복잡도 메시지를 사용하여 상기 레이트 메시지를 발생하는 단계
    를 더 포함하는 방법.
  16. 제14항에 있어서, 상기 데이터 메시지에 포함된 데이터를 처리하는 단계는, 로컬 클럭의 제2 시간이 상기 제2 타임 스탬프를 사용하여 결정된 시간과 거의 일치할 때, 상기 데이터 메시지 내에 포함된 데이터를 처리하는 단계를 포함하는 방법.
  17. 제16항에 있어서, 상기 제2 타임 스탬프를 사용하여 결정된 상기 시간은 또한 통신 링크 지연에 관한 정보 및 상기 로컬 클럭과 상기 원격 클럭 간의 오프셋에 관한 정보 중 적어도 하나를 사용하여 결정되는 방법.
  18. 제17항에 있어서, 상기 로컬 클럭과 상기 원격 클럭 간의 오프셋에 관한 상기 정보는 상기 로컬 클럭과 상기 원격 클럭 간의 최대 오프셋에 관한 정보를 포함하는 방법.
  19. 제18항에 있어서, 상기 로컬 클럭과 상기 원격 클럭 간의 최대 오프셋에 관 한 상기 정보는 최대 플러스 오프셋 및 최대 마이너스 오프셋에 관한 정보를 포함하는 방법.
  20. 제17항에 있어서, 통신 링크 지연에 관한 상기 정보는 상기 로컬 컴포넌트와 상기 원격 컴포넌트 간의 최대 통신 링크 지연에 관한 정보를 포함하는 방법.
  21. 제17항에 있어서, 통신 링크 지연에 관한 상기 정보는 상기 원격 컴포넌트로부터 상기 로컬 컴포넌트까지의 통신 링크 지연에 관한 정보 및 상기 로컬 컴포넌트로부터 상기 원격 컴포넌트까지의 통신 링크 지연에 관한 정보를 포함하는 방법.
  22. 제17항에 있어서, 상기 제2 타임 스탬프는 상기 통신 링크 지연에 관한 상기 정보 및 상기 원격 클럭과 상기 로컬 클럭 간의 오프셋에 관한 상기 정보 중 적어도 하나를 포함하는 방법.
  23. 제14항에 있어서, 상기 제1 타임 스탬프는 통신 링크 지연에 관한 정보 및 로컬 클럭과 원격 클럭 간의 오프셋에 관한 정보 중 적어도 하나를 포함하는 방법.
  24. 제14항에 있어서, 상기 데이터 메시지에 포함된 데이터를 처리하는 단계는 로컬 클럭의 제2 시간이 상기 제2 타임 스탬프를 사용하여 결정된 시간과 거의 일치할 때까지 상기 데이터 메시지를 버퍼링하는 단계를 포함하는 방법.
  25. 로컬 컴포넌트와 원격 컴포넌트 간에 통신하는 방법으로서,
    로컬 컴포넌트를 원격 컴포넌트에 연결시키는 비결정론적 통신 링크를 제공하는 단계,
    상기 로컬 컴포넌트의 로컬 클럭을 상기 원격 컴포넌트의 원격 클럭과 최대 오프셋 내에서 동기화시키는 단계,
    상기 원격 컴포넌트로부터 상기 로컬 컴포넌트로 레이트 메시지를 전송하는 단계 - 상기 레이트 메시지는 제1 타임 스탬프를 포함함 -,
    상기 로컬 클럭의 제1 시간이 상기 제1 타임 스탬프, 통신 링크 지연에 관한 정보, 및 최대 오프셋에 관한 정보를 사용하여 결정된 시간과 거의 일치할 때, 상기 레이트 메시지를 사용하여 상기 로컬 컴포넌트의 데이터 레이트를 조정하는 단계,
    상기 제1 시간에서, 상기 조정된 데이터 레이트를 사용하여 상기 로컬 컴포넌트로부터 상기 원격 컴포넌트로 데이터 메시지를 전송하는 단계 - 상기 데이터 메시지는 제2 타임 스탬프를 포함함 -, 및
    상기 원격 클럭의 제2 시간이 상기 제2 타임 스탬프, 상기 통신 링크 지연에 관한 정보, 및 상기 최대 오프셋에 관한 정보를 사용하여 결정된 시간과 거의 일치할 때, 상기 데이터 메시지 내에 포함된 데이터를 처리하는 단계
    를 포함하는 방법.
  26. 제25항에 있어서, 상기 로컬 컴포넌트는 인코더이고, 상기 원격 컴포넌트는 멀티플렉서인 방법.
  27. 제25항에 있어서,
    상기 로컬 컴포넌트로부터 상기 원격 컴포넌트로 복잡도 메시지를 전송하는 단계를 더 포함하며,
    상기 레이트 메시지는 상기 복잡도 메시지를 사용하여 생성되는 방법.
  28. 비결정론적 통신 링크를 사용하여 원격 컴포넌트에 연결되어 있는 로컬 컴포넌트로서,
    최대 오프셋 내에서 로컬 컴포넌트의 로컬 클럭을 원격 컴포넌트의 원격 클럭에 동기화시키는 수단,
    상기 원격 컴포넌트로부터의 레이트 메시지를 사용하여 상기 로컬 컴포넌트의 데이터 레이트를 조정하는 수단, 및
    상기 로컬 컴포넌트로부터 상기 원격 컴포넌트로 전송된 데이터 메시지가 상기 원격 컴포넌트에 의해 처리되기 위해 제 시간에 상기 원격 컴포넌트에 도달하도록 보장하는 수단
    을 포함하는 로컬 컴포넌트.
  29. 제28항에 있어서, 상기 동기화시키는 수단은 위상-동기 루프를 포함하는 로 컬 컴포넌트.
  30. 제28항에 있어서, 상기 동기화시키는 수단은 통계적 추정을 포함하는 로컬 컴포넌트.
  31. 제28항에 있어서, 상기 조정하는 수단은 레이트 조정 유닛을 포함하는 로컬 컴포넌트.
  32. 제28항에 있어서, 상기 보장하는 수단은 타임-스탬핑 컴포넌트(time-stamping component)를 포함하는 로컬 컴포넌트.
  33. 멀티플렉서로서,
    데이터를 출력 스트림으로 조립하는 동작을 하는 출력 조립 유닛,
    데이터 및 타임 스탬프를 포함하는 데이터 메시지를 수신하고 로컬 클럭의 시간이 상기 타임 스탬프를 사용하여 결정된 시간과 거의 일치할 때 상기 데이터를 출력 조립 유닛으로 제공하는 동작을 하는 입력 유닛, 및
    타임-스탬핑된 레이트 메시지를 원격 컴포넌트로 전송하는 동작을 하는 레이트 제어 유닛 - 상기 레이트 메시지는 장래의 데이터 메시지의 데이터 레이트에 관한 정보를 포함함 -
    을 포함하는 멀티플렉서.
  34. 제33항에 있어서, 상기 레이트 제어 유닛은 상기 장래의 데이터 메시지의 복잡도에 관한 정보를 사용하여 상기 레이트 메시지를 발생하는 멀티플렉서.
  35. 제33항에 있어서, 상기 레이트 제어 유닛은 상기 로컬 클럭의 시간에 관한 정보를 사용하여 상기 레이트 메시지를 타임스탬핑하는 멀티플렉서.
  36. 제33항에 있어서, 상기 입력 유닛은, 통신 링크 지연에 관한 정보 및 상기 로컬 클럭과 원격 클럭 간의 오프셋에 관한 정보 중 적어도 하나를 사용하여, 상기 데이터를 상기 출력 조립 유닛에 제공하는 멀티플렉서.
  37. 인코더로서,
    최대 오프셋 내에서 인코더 클럭을 원격 클럭과 동기화시키는 동작을 하는 동기화 유닛,
    데이터 메시지를 타임스탬핑하여 데이터 레이트로 전송하는 동작을 하는 송신기, 및
    상기 인코더 클럭의 시간이 대응하는 레이트 메시지 내의 타임 스탬프를 사용하여 결정된 시간과 거의 일치할 때, 상기 대응하는 레이트 메시지에 응답하여 상기 데이터 레이트를 조정하는 동작을 하는 레이트 조정 유닛
    을 포함하는 인코더.
  38. 제37항에 있어서, 상기 동기화 유닛은 위상-동기 루프를 포함하는 인코더.
  39. 제37항에 있어서, 상기 송신기는 상기 인코더 클럭의 상기 시간에 관한 정보를 사용하여 상기 데이터 메시지를 타임스탬핑하는 인코더.
  40. 제37항에 있어서, 상기 레이트 조정 유닛은 통신 링크 지연에 관한 정보 및 상기 최대 오프셋에 관한 정보 중 적어도 하나를 사용하여 상기 데이터 레이트를 조정하는 인코더.
  41. 제37항에 있어서, 상기 송신기는 상기 대응하는 레이트 메시지를 발생하는 데 사용되는 타임스탬핑된 복잡도 메시지를 전송하는 인코더.
KR1020077007181A 2004-08-30 2005-08-29 확률적 네트워크를 통한 메시지 동기화 KR101192482B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/931,178 US7660366B2 (en) 2004-08-30 2004-08-30 Message synchronization over a stochastic network
US10/931,178 2004-08-30
PCT/US2005/031014 WO2006026683A2 (en) 2004-08-30 2005-08-29 Message synchronization over a stochastic network

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020127007357A Division KR101258380B1 (ko) 2004-08-30 2005-08-29 확률적 네트워크를 통한 메시지 동기화

Publications (2)

Publication Number Publication Date
KR20070083610A true KR20070083610A (ko) 2007-08-24
KR101192482B1 KR101192482B1 (ko) 2012-10-17

Family

ID=35942910

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020077007181A KR101192482B1 (ko) 2004-08-30 2005-08-29 확률적 네트워크를 통한 메시지 동기화
KR1020127007357A KR101258380B1 (ko) 2004-08-30 2005-08-29 확률적 네트워크를 통한 메시지 동기화

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020127007357A KR101258380B1 (ko) 2004-08-30 2005-08-29 확률적 네트워크를 통한 메시지 동기화

Country Status (7)

Country Link
US (3) US7660366B2 (ko)
EP (1) EP1784936B1 (ko)
JP (4) JP4865717B2 (ko)
KR (2) KR101192482B1 (ko)
IL (1) IL181631A (ko)
TW (1) TWI410101B (ko)
WO (1) WO2006026683A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014014520A1 (en) * 2012-07-18 2014-01-23 Intel Corporation Measuring time offsets between devices with independent silicon clocks

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9108107B2 (en) * 2002-12-10 2015-08-18 Sony Computer Entertainment America Llc Hosting and broadcasting virtual events using streaming interactive video
US9325998B2 (en) * 2003-09-30 2016-04-26 Sharp Laboratories Of America, Inc. Wireless video transmission system
US8018850B2 (en) * 2004-02-23 2011-09-13 Sharp Laboratories Of America, Inc. Wireless video transmission system
US7660366B2 (en) * 2004-08-30 2010-02-09 Harmonic Inc. Message synchronization over a stochastic network
US7784076B2 (en) * 2004-10-30 2010-08-24 Sharp Laboratories Of America, Inc. Sender-side bandwidth estimation for video transmission with receiver packet buffer
US8356327B2 (en) * 2004-10-30 2013-01-15 Sharp Laboratories Of America, Inc. Wireless video transmission system
US7797723B2 (en) 2004-10-30 2010-09-14 Sharp Laboratories Of America, Inc. Packet scheduling for video transmission with sender queue control
US20070067480A1 (en) * 2005-09-19 2007-03-22 Sharp Laboratories Of America, Inc. Adaptive media playout by server media processing for robust streaming
US9544602B2 (en) * 2005-12-30 2017-01-10 Sharp Laboratories Of America, Inc. Wireless video transmission system
US7652994B2 (en) * 2006-03-31 2010-01-26 Sharp Laboratories Of America, Inc. Accelerated media coding for robust low-delay video streaming over time-varying and bandwidth limited channels
WO2008138047A1 (en) 2007-05-11 2008-11-20 Audinate Pty Limited Systems, methods and computer-readable media for configuring receiver latency
US8233897B2 (en) * 2006-06-15 2012-07-31 The Mitre Corporation Assessment of idle portions of multidimensional radio spectrum access
US8861597B2 (en) * 2006-09-18 2014-10-14 Sharp Laboratories Of America, Inc. Distributed channel time allocation for video streaming over wireless networks
US7652993B2 (en) * 2006-11-03 2010-01-26 Sharp Laboratories Of America, Inc. Multi-stream pro-active rate adaptation for robust video transmission
US7605737B2 (en) * 2007-03-08 2009-10-20 Texas Instruments Incorporated Data encoding in a clocked data interface
US7937618B2 (en) * 2007-04-26 2011-05-03 International Business Machines Corporation Distributed, fault-tolerant and highly available computing system
GB0708440D0 (en) * 2007-05-02 2007-06-06 Film Night Ltd Data transmission
FR2927749B1 (fr) * 2008-02-14 2010-12-17 Canon Kk Procede et dispositif de transmission de donnees, notamment video.
US9307298B2 (en) * 2009-05-29 2016-04-05 Harmonic, Inc. System and method for video statistical multiplexing adapting to internet protocol networks
CN101931884B (zh) 2009-06-23 2016-05-18 北京三星通信技术研究有限公司 一种数据同步方法和系统
JP4838341B2 (ja) * 2009-09-28 2011-12-14 Nttエレクトロニクス株式会社 符号化システム及び符号化装置
EP2719223B1 (en) * 2011-06-13 2017-08-09 Telefonaktiebolaget LM Ericsson (publ) Method and device for rate matching
FR2979506B1 (fr) * 2011-08-30 2013-08-30 Bull Sas Procede de synchronisation d'une grappe de serveurs et grappe de serveurs mettant en oeuvre ce procede
US20130121240A1 (en) * 2011-11-16 2013-05-16 Telefonaktiebolaget L M Ericsson (Publ) Delay Management in Shared Baseband Deployments
US8619936B2 (en) 2012-04-11 2013-12-31 Telefonaktiebolaget L M Ericsson (Publ) Clock switching algorithm based on preferred clock source
US9532080B2 (en) 2012-05-31 2016-12-27 Sonic Ip, Inc. Systems and methods for the reuse of encoding information in encoding alternative streams of video data
US9357210B2 (en) 2013-02-28 2016-05-31 Sonic Ip, Inc. Systems and methods of encoding multiple video streams for adaptive bitrate streaming
KR101534477B1 (ko) * 2013-10-31 2015-07-07 삼성에스디에스 주식회사 설비 제어 망에서 확률 모델을 활용한 능동 수동 데이터 수집 장치 및 방법
FR3022426A1 (fr) * 2014-06-16 2015-12-18 Orange Gestion par un equipement intermediaire de la qualite de transmission d'un flux de donnees vers un terminal mobile
US11943289B2 (en) 2014-10-14 2024-03-26 Comcast Cable Communications, Llc Manipulation of content transmissions
US11917002B2 (en) 2014-10-14 2024-02-27 Comcast Cable Communications, Llc Manipulation and recording of content transmissions
US10070136B2 (en) * 2016-02-16 2018-09-04 Arris Enterprises Llc Statistical multiplexing with heterogeneous encoder pool
US10461884B2 (en) * 2017-10-05 2019-10-29 Comcast Cable Communications, Llc Server selected variable bitrate streaming
US10237835B1 (en) * 2017-11-06 2019-03-19 T-Mobile Usa, Inc. Temporal power control system and method
EP3772226B1 (en) * 2019-07-30 2023-01-25 Volkswagen AG Methods, computer programs, and apparatuses for a command center and a vehicle
JP2022107993A (ja) * 2021-01-12 2022-07-25 ヤマハ株式会社 信号処理方法、信号処理装置、および信号処理プログラム
KR102463916B1 (ko) * 2021-02-04 2022-11-04 상명대학교산학협력단 시간 동기화 없는 결정론적 네트워크를 위한 지터 상한 보장 방법

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5372188A (en) * 1985-10-02 1994-12-13 Modine Manufacturing Co. Heat exchanger for a refrigerant system
US4998580A (en) * 1985-10-02 1991-03-12 Modine Manufacturing Company Condenser with small hydraulic diameter flow path
US5193613A (en) * 1992-06-30 1993-03-16 Wallis Bernard J Heat exchanger header tube and method of making
JP3149328B2 (ja) * 1995-01-09 2001-03-26 松下電器産業株式会社 送信装置と受信装置
JPH0946390A (ja) * 1995-08-01 1997-02-14 Matsushita Electric Ind Co Ltd ディジタル信号伝送装置および記録装置
US5861919A (en) * 1995-12-18 1999-01-19 Divicom Dynamic rate optimization for an ensemble of video encoders
US6085221A (en) * 1996-01-08 2000-07-04 International Business Machines Corporation File server for multimedia file distribution
JP3687188B2 (ja) * 1996-04-05 2005-08-24 ソニー株式会社 パケット伝送方法
US5815671A (en) * 1996-06-11 1998-09-29 Command Audio Corporation Method and apparatus for encoding and storing audio/video information for subsequent predetermined retrieval
US6038256A (en) * 1996-12-31 2000-03-14 C-Cube Microsystems Inc. Statistical multiplexed video encoding using pre-encoding a priori statistics and a priori and a posteriori statistics
US6701372B2 (en) * 1997-08-22 2004-03-02 Canon Kabushiki Kaisha Data communication apparatus and method
US6490250B1 (en) * 1999-03-09 2002-12-03 Conexant Systems, Inc. Elementary stream multiplexer
US6223556B1 (en) * 1999-11-24 2001-05-01 Modine Manufacturing Company Integrated parallel flow condenser receiver assembly
WO2002030098A2 (en) 2000-10-06 2002-04-11 Motorola, Inc. Method and system for rate adaptation in a packet voice system
US7142508B2 (en) * 2000-12-22 2006-11-28 Radiance Technologies, Inc. System and method for controlling data transfer rates on a network
US7778281B2 (en) * 2001-04-27 2010-08-17 Panasonic Corporation Wireless communication apparatus
KR20030034835A (ko) * 2001-10-27 2003-05-09 삼성전자주식회사 이동통신 시스템에서 역방향 링크의 제어 방법
US7012883B2 (en) * 2001-11-21 2006-03-14 Qualcomm Incorporated Rate selection for an OFDM system
JP4042396B2 (ja) * 2001-12-10 2008-02-06 ソニー株式会社 データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
JP4116470B2 (ja) * 2002-03-06 2008-07-09 ヒューレット・パッカード・カンパニー メディア・ストリーミング配信システム
KR100490403B1 (ko) * 2002-05-04 2005-05-17 삼성전자주식회사 오디오 스트림의 버퍼링 제어 방법 및 그 장치
JP2003332671A (ja) * 2002-05-17 2003-11-21 Sharp Corp 半導体レーザ装置および光ピックアップ装置
WO2004019521A1 (ja) * 2002-07-31 2004-03-04 Sharp Kabushiki Kaisha データ通信装置、その間欠通信方法、その方法を記載するプログラム、及びそのプログラムを記録する記録媒体
US7130368B1 (en) * 2002-09-19 2006-10-31 Nortel Network Limited Clock recovery using a direct smoothing process
JP4028356B2 (ja) 2002-10-31 2007-12-26 京セラ株式会社 通信システム、無線通信端末、データ配信装置及び通信方法
JP2004158929A (ja) * 2002-11-01 2004-06-03 Sharp Corp 動画像処理方法および動画像処理装置ならびに動画像伝送装置
BR0215947A (pt) * 2002-11-18 2005-08-09 Ericsson Telefon Ab L M Método para controlar um transmissor de unidade de dados, transmissor de unidade de dados, programa de computação, e, portador de dados legìvel por computador
JP2004214755A (ja) 2002-12-27 2004-07-29 Hitachi Ltd 動的符号化レート変更方法及びその装置
EP1450514A1 (en) * 2003-02-18 2004-08-25 Matsushita Electric Industrial Co., Ltd. Server-based rate control in a multimedia streaming environment
KR101018204B1 (ko) * 2003-05-16 2011-02-28 파나소닉 주식회사 통신 네트워크 시스템에서의 사용을 위한 통신 단말 장치, 방법, 프로그램, 기록 매체, 및 집적 회로
US7412265B2 (en) * 2003-06-12 2008-08-12 Industrial Technology Research Institute Method and system for power-saving in a wireless local area network
US7660366B2 (en) * 2004-08-30 2010-02-09 Harmonic Inc. Message synchronization over a stochastic network

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014014520A1 (en) * 2012-07-18 2014-01-23 Intel Corporation Measuring time offsets between devices with independent silicon clocks
US9571215B2 (en) 2012-07-18 2017-02-14 Intel Corporation Measuring time offsets between devices with independent silicon clocks

Also Published As

Publication number Publication date
US20100118888A1 (en) 2010-05-13
JP2013236408A (ja) 2013-11-21
EP1784936A4 (en) 2010-07-28
US8396159B2 (en) 2013-03-12
EP1784936B1 (en) 2013-04-24
JP2011091865A (ja) 2011-05-06
JP2011234421A (ja) 2011-11-17
TW200625902A (en) 2006-07-16
JP5503570B2 (ja) 2014-05-28
IL181631A0 (en) 2007-07-04
KR101258380B1 (ko) 2013-04-30
WO2006026683A2 (en) 2006-03-09
US20130010890A1 (en) 2013-01-10
WO2006026683A3 (en) 2009-04-09
US20060045020A1 (en) 2006-03-02
TWI410101B (zh) 2013-09-21
US8750409B2 (en) 2014-06-10
IL181631A (en) 2011-11-30
KR101192482B1 (ko) 2012-10-17
US7660366B2 (en) 2010-02-09
JP2008512064A (ja) 2008-04-17
EP1784936A2 (en) 2007-05-16
JP4865717B2 (ja) 2012-02-01
KR20120034254A (ko) 2012-04-10

Similar Documents

Publication Publication Date Title
KR101192482B1 (ko) 확률적 네트워크를 통한 메시지 동기화
EP1606717B1 (en) Method and device for multimedia streaming
EP2292013B1 (en) Synchronization of media stream components
US20060007943A1 (en) Method and system for providing site independent real-time multimedia transport over packet-switched networks
US7869420B2 (en) Method and system for in-band signaling of multiple media streams
WO2013170261A1 (en) Timing synchronization for networks with radio links
EP1845691B1 (en) Media stream relay device and method
JP2004509491A (ja) オーディオおよびビデオ信号の同期化
US20040170163A1 (en) Data structure providing storage and bandwidth savings for hardware RTCP statistics collection applications
WO2010138913A1 (en) Systems and methods for video statistical multiplexing adapting to internet protocol networks
KR20110098830A (ko) 외부 코프로세서를 포함하는 멀티플렉서에서의 전송 스트림 동기화를 위한 방법
JP4042396B2 (ja) データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
WO2014188664A1 (ja) 放送システム、クライアント、同期プログラム、及び同期方法
JP6555201B2 (ja) スクランブル装置およびスクランブル処理プログラム
KR20240032051A (ko) Ip 기반 네트워크를 통한 음성 콘텐츠의 수신 동안의 지터 보상을 위한 방법, 및 이를 위한 수신기, 및 지터 보상을 갖는 음성 콘텐츠를 송신 및 수신하기 위한 방법 및 디바이스
KR20050001242A (ko) 이동 통신 단말기의 화상 통화 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
A107 Divisional application of patent
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160929

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170929

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180928

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190924

Year of fee payment: 8