KR20110013524A - 데이터를 복수의 노드간에서 네트워크를 경유하여 수신 및 전송하는 멀티캐스트 통신 방법 및 장치 - Google Patents

데이터를 복수의 노드간에서 네트워크를 경유하여 수신 및 전송하는 멀티캐스트 통신 방법 및 장치 Download PDF

Info

Publication number
KR20110013524A
KR20110013524A KR1020107029161A KR20107029161A KR20110013524A KR 20110013524 A KR20110013524 A KR 20110013524A KR 1020107029161 A KR1020107029161 A KR 1020107029161A KR 20107029161 A KR20107029161 A KR 20107029161A KR 20110013524 A KR20110013524 A KR 20110013524A
Authority
KR
South Korea
Prior art keywords
node
data
alm
mixing
nodes
Prior art date
Application number
KR1020107029161A
Other languages
English (en)
Other versions
KR101248712B1 (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 KR20110013524A publication Critical patent/KR20110013524A/ko
Application granted granted Critical
Publication of KR101248712B1 publication Critical patent/KR101248712B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • H04L65/4053Arrangements for multi-party communication, e.g. for conferences without floor control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1822Conducting the conference, e.g. admission, detection, selection or grouping of participants, correlating users to one or more conference sessions, prioritising transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • H04L45/243Multipath using M+N parallel active paths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Telephonic Communication Services (AREA)

Abstract

[과제]동적인 ALM경로의 적합화에 의해 에코를 저감하는 것
[해결수단] 데이터의 송신원 노드 및 송신처 노드를 포함하고 있는 경로 정보에 따라, 복수의 노드 사이에서 네트워크를 경유하여 데이터를 수신 및 전송하는 멀티캐스트 통신 방법. 이 방법은, 제1 노드에 있어서 제1 데이터 및 제2 데이터를 수신하는 스텝과, 제1 데이터 및 제2 데이터를 경로정보에 따라 다음 송신처 노드에 전송하는 스텝과, 제1 데이터의 제1 호핑수와 제2 데이터의 제2 호핑수에 기초하여, 제1 노드에 있어서 제1 데이터를 제2 데이터와 믹스할지를 결정하는 스텝을 포함하고 있다. 제1 데이터의 제1 호핑수는, 제1 데이터의 송신원 노드와 제1 데이터의 다음 송신처 노드 사이의 노드 수로서 정의되고, 제2 데이터의 제2 호핑수는, 제2 데이터의 송신원 노드와 제2 데이터의 다음 송신처 노드 사이의 노드수로서 정의된다.

Description

데이터를 복수의 노드간에서 네트워크를 경유하여 수신 및 전송하는 멀티캐스트 통신 방법 및 장치{MULTICAST COMMUNICATION METHOD AND APPARATUS FOR RECEIVING AND FORWARDING DATA VIA A NETWORK AMONG A PLURALITY OF NODES}
본 발명은, 네트워크 라우팅(routing) 기능을 가지는 멀티캐스트 통신 방법 및 장치에 관한 것으로서, 보다 상세하게는, 특히, 음성 회의 시스템 및 비디오 회의 시스템(특히 「비디오 회의」는 「음성·영상(AV) 회의」 또는 「텔레비젼(TV) 회의」라고도 불림)(단, 이것으로 한정되지 않음)에 있어서 사용하는 것을 목적으로 하여, 동적(動的)인 어플리케이션층 멀티캐스트를 사용해서 데이터를 믹스하는 방법 및 장치에 관한 것이다.
어플리케이션(application)층 멀티캐스팅(ALM)은, 복수의 노드를 접속할 목적으로 기존의 유니캐스트(uni-cast) 네트워크 아키텍쳐 상에 실장된다. ALM에서는, 멀티캐스트와는 달리, 추가 라우터 설정없이, ALM 노드에 의해 형성되는 오버레이 네트워크(Overlay network)를 이용하여, 멤버 자신이 AV패킷을 라우팅할 수 있다. ALM 노드는, 경로 정보를 상호 교환하여 오버레이 네트워크를 형성하고, 이 오버레이 네트워크를 이용해 패킷을 교환한다. 이것에 의해, 다수의 멀티캐스트 그룹이, 지연(遲延) 조건이 엄격한 리얼타임 AV패킷을 어플리케이션층에 있어서 전송하는데 있어서의 유연성이 제공된다.
ALM은, 예를 들면, 대규모 그룹의 음성 회의 세션에 사용할 수가 있으며, 이 경우, 멀티 포인트 제어 유니트(MCU) 노드에 의해, 참가 노드를 대상으로 하는 분산형의 믹싱을 실행할 수 있다. 이들 MCU 노드는, 믹스된 컨텐츠를, 지연이 최소이도록 최량(最良)의 ALM 경로상에서 서로 재(再)라우팅하여, 리얼타임의 음성 회의를 실현할 수 있다. 이 ALM 경로는, 최소의 지연과, MCU 노드의 경로를 따른 부하분산이 달성되도록, 원래의 음성 컨텐츠 또는 일부분이 믹스된 음성 컨텐츠를 전할 수 있다. 최소의 지연은, 최량의 ALM 경로를 선택함으로써 달성되고, 그 한편으로, 부하분산은, ALM-MCU 노드가 송신원(送信元)으로부터의 음성 컨텐츠를 추가식으로 믹싱(incremental mixing)함으로써 행해진다. ALM-MCU노드는, 음성 컨텐츠를 믹스하여, 다음 ALM-MCU노드, 다른ALM노드, 또는 음성 앤드 노드에 배송한다.
MCU 노드가, 컨텐츠의 종류 또는 컨텐츠의 송신원을 인식하는 일 없이 모든 음성 패킷을 믹스한다면, 그것에 의해 음성 에코 문제가 발생하는 일이 있다. 왜냐하면, 동일한 송신원으로부터의 중복된 음성 컨텐츠가, 일부분이 믹스된 형태로, 또는 원래의 형태로 수신될 수 있기 때문이다.
비특허 문헌 1에는, 여러가지 능력을 가지는 참가 피어를 음성 회의 세션에 있어서 이용할 수 있는, ALM 베이스의 하이브리드(hybrid)형 P2P 회의 아키텍쳐가 기재되어 있다.
W. Xiaotao, K. D. Krishna, and K. Venkatesh, "Enhancing application-Layer Multicast for P2P Conferencing", Consumer Communications and Networking Conference, 2007, 4th IEEE, Jan. 2007, pages 986-990
이 아키텍쳐는, 3 스텝의 알고리즘을 사용하여, 이러한 ALM 베이스의 하이브리드형 P2P 회의를 구축한다. 이 방법은, 기존의 ALM 베이스의 P2P 회의 시스템보다 스케일러빌리티(scalability)가 높다. 그렇지만, 이 방법에서는, 동일한 노드가 믹싱 기능 및 브릿징(bridging) 기능을 실행할 경우, 음성 루프 문제(즉 음성 에코 문제)가 고려되지 않는다.
따라서, 본 발명의 목적은, 동적인 ALM 경로의 적합화에 의해 에코를 저감할 수 있는 멀티캐스트 통신 방법 및 장치를 제공하는 것이다.
본 발명은, 데이터의 송신원 노드 및 송신처 노드를 포함하고 있는 경로 정보에 따라, 복수의 노드 사이에서 네트워크를 경유하여, 데이터를 수신 및 전송하는 멀티캐스트 통신 방법이며, 제1 노드에 있어서 제1의 데이터 및 제2의 데이터를 수신하는 스텝과, 제1 데이터 및 제2 데이터를 경로정보에 따라 다음 송신처 노드에 전송하는 스텝과, 제1 데이터의 제1 호핑수와 제2 데이터의 제2 호핑수에 기초하여, 제1 노드에 있어서 제1 데이터를 제2 데이터와 믹스할 지를 결정하는 스텝을 포함하고 있으며, 제1 데이터의 제1 호핑수가, 제1 데이터의 송신원 노드와 제1 데이터의 다음 송신처 노드와의 사이의 노드의 수(數)로서 정의되고, 제2 데이터의 제2 호핑수가, 제2 데이터의 송신원 노드와 제2 데이터의 다음 송신처 노드와의 사이의 노드의 수로서 정의되는, 멀티캐스트 통신 방법을 제공한다.
본 발명은, 복수의 노드 사이에서 네트워크를 경유하여 데이터를 수신 및 전송하는 멀티캐스트 통신 장치이며, 데이터를 송신원 노드로부터 수신하는 수신 수단과, 데이터의 송신원 노드 및 송신처 노드를 포함하고 있는, 데이터의 경로 정보를 저장하고 있는 라우팅 테이블(routing table)과, 라우팅 테이블의 경로 정보에 따라, 데이터를 다음 송신처 노드에 전송하는 전송 수단과, 전송되는 데이터의, 송신원 노드로부터 다음 송신처 노드까지의 호핑수를 포함하고 있는 호프 길이 테이블과, 다른 노드로부터 수신되는 데이터의 믹싱 처리를 실행하는 믹싱 처리 수단을 구비하고 있으며, 믹싱 처리 수단은, 호프 길이 테이블에 있어서의 호핑수에 따라 믹싱 처리를 실행하는, 멀티캐스트 통신 장치를 더 제공한다.
본 발명에 의하면, 멀티캐스트 통신 방법 및 장치는, 동적인 ALM 경로의 적합화에 의해 에코를 저감할 수 있다.
도1A는 본 발명의 실시형태에 따른, ALM 세션에 있어서의 복수의 ALM 노드 및 ALM-MCU 노드를 가지는 네트워크를 나타내는 도면.
도1B는 도1A에 나타낸 각 노드의 개략적인 하드웨어 구성의 일례를 나타내는 블록도.
도1C는 도1A에 있어서의 각 노드를 구비하고 있는 기기의 몇가지 구체적인 예를 나타내는 도면.
도2는 본 발명의 실시형태에 따른, ALM 전송(라우팅) 테이블의 실례를 나타내는 도면.
도3은 도2에 나타낸 ALM 전송 테이블에 관련된, ALM-MCU 멀티미디어 스트리밍의 시나리오 예를 나타내는 도면.
도4는 도3에 나타낸 4개의 노드A~D가 송신원인 경우에 있어서의, 도2에 연결되어 있는 전송 서브 테이블의 내용을 나타내는 도면.
도5는 본 발명의 실시형태에 따른, ALM 베이스에서의 분산형의 선택적이면서도 동적인 믹싱을 실행하는 MCU의 장치를 나타내는 도면.
도6은 본 발명의 실시형태에 따른 ALM 믹싱 전송(AMF) 테이블을 나타내는 도면.
도7은 본 발명의 실시형태에 의한 믹싱 호프 길이(MHL) 테이블을 나타내는 도면.
도8은 본 발명의 실시형태에 의한 분산형 ALM 믹싱 스테이터스(DAMS) 테이블을 나타내는 도면.
도9는 본 발명의 실시형태에 따른, ALM 노드간의 메시지 교환 절차를 나타내는 도면.
도10은 본 발명의 실시형태에 따른, ALM-MCU 메시지의 포맷을 나타내는 도면.
도11은 도5의 ALM 베이스에서의 분산형의 선택적이면서도 동적인 믹싱을 실시하는 MCU의 장치를 구체화하고 있는 ALM-MCU 장치의 예를 나타내는 도면.
도12A는 본 발명의 실시형태에 따른, 노드가 4개인 예시적인 경우에 있어서의 라우팅을 나타내는 도면.
도12B는 도12A에 나타낸 라우팅에 있어서의 라우팅 테이블을 나타내는 도면.
도13A는 도12A 및 도12B의 라우팅에 있어서, 소정의 규칙에 따라 노드A에 의해 작성되는 MHL 테이블을 나타내는 도면.
도13B는 도12A 및 도12B의 라우팅에 있어서, 소정의 규칙에 따라 노드B에 의해 작성되는 MHL 테이블을 나타내는 도면.
도13C는 도12A 및 도12B의 라우팅에 있어서, 소정의 규칙에 따라 노드C에 의해 작성되는 MHL 테이블을 나타내는 도면.
도13D는 도12A 및 도12B의 라우팅에 있어서, 소정의 규칙에 따라 노드D에 의해 작성되는 MHL 테이블을 나타내는 도면.
도14A는 본 발명의 실시형태에 따른, 노드가 5개인 예시적인 경우에 있어서의 라우팅을 나타내는 도면.
도14B는 도14A에 나타낸 라우팅에 있어서의 라우팅 테이블을 나타내는 도면.
도15A는 도14A 및 도14B의 라우팅에 있어서, 소정의 규칙에 따라 노드A에 의해 작성되는 MHL 테이블을 나타내는 도면.
도15B는 도14A 및 도14B의 라우팅에 있어서, 소정의 규칙에 따라 노드B에 의해 작성되는 MHL 테이블을 나타내는 도면.
도15C는 도14A 및 도14B의 라우팅에 있어서, 소정의 규칙에 따라 노드C에 의해 작성되는 MHL 테이블을 나타내는 도면.
도15D는 도14A 및 도14B의 라우팅에 있어서, 소정의 규칙에 따라 노드D에 의해 작성되는 MHL 테이블을 나타내는 도면.
도15E는 도14A 및 도14B의 라우팅에 있어서, 소정의 규칙에 따라 노드 E에 의해 작성되는 MHL 테이블을 나타내는 도면.
도16A는 본 발명의 실시형태에 따른, 노드가 5개인 다른 예시적인 경우에 있어서의 라우팅을 나타내는 도면.
도16B는 도16A에 나타낸 라우팅에 있어서의 라우팅 테이블을 나타내는 도면.
도17A는 도16A 및 도16B의 라우팅에 있어서, 소정의 규칙에 따라 노드A에 의해 작성되는 MHL 테이블을 나타내는 도면.
도17B는 도16A 및 도16B의 라우팅에 있어서, 소정의 규칙에 따라 노드B에 의해 작성되는 MHL 테이블을 나타내는 도면.
도17C는 도16A 및 도16B의 라우팅에 있어서, 소정의 규칙에 따라 노드C에 의해 작성되는 MHL 테이블을 나타내는 도면.
도17D는 도16A 및 도16B의 라우팅에 있어서, 소정의 규칙에 따라 노드D에 의해 작성되는 MHL 테이블을 나타내는 도면.
도17E는 도16A 및 도16B의 라우팅에 있어서, 소정의 규칙에 따라 노드 E에 의해 작성되는 MHL 테이블을 나타내는 도면.
도18은 본 발명의 실시형태에 따른, ALM 베이스에서의 분산형의 선택적이면서도 동적인 믹싱을 실행하는 MCU의 동작의 주된 스텝을 나타내는 도면.
도19는 본 발명의 실시형태에 따른, MHL 테이블 구축 방법의 스텝을 나타내는 도면.
도20은 본 발명의 실시형태에 따른, DAMS 테이블 작성의 스텝을 나타내는 도면.
도21은 본 발명의 실시형태에 따른, ALM-MCU 노드의 믹싱 동작의 스텝을 나타내는 도면.
도22는 본 발명의 실시형태에 따른, 강제 믹싱 동작의 스텝을 나타내는 도면.
도23은 본 발명의 실시형태에 따른, 선택적 믹싱 동작의 스텝을 나타내는 도면.
신규기술에서는, 멀티 포인트 제어 유니트(MCU) 노드는, 어플리케이션층 멀티캐스트(ALM) 베이스에서의 분산형의 선택적이면서도 동적인 데이터(또는 컨텐츠) 믹싱을 행하는 것이 가능하다. 컨텐츠 에코의 원인이 되는 컨텐츠 패킷의 루프를 배제할 목적으로, 어플리케이션층의 컨텐츠 패킷을, ALM 베이스의 동적인 라우팅 테이블 정보를 사용해 선택적으로 믹스한다. 특히, 본 실시형태는, ALM-MCU 노드 간에서의 ALM 베이스에서의 분산형의 선택적이면서도 동적인 컨텐츠 믹싱을 실행하는 장치 및 관련하는 방법을 제공한다. 이 기술은, 예를 들면, 경로(루트) 컨버전스(Convergence)의 지연에 기인하는 엔드 투 엔드(end-to-end)의 패킷 배송 지연을 최소로 하고, 그러면서 또 컨텐츠(예:음성)의 에코를 저감할 목적으로, 리얼타임의 음성/비디오 회의에 적합하다. 이 경우, 에코는 원래, 음성 데이터에 대해서 발생하지만, 영상 데이터에 있어서도 화상의 중복이 발생할 수 있다. 따라서, 본 실시형태에서는, 음성 데이터에 관한 에코를 「음성 에코」라고 부르고, 넓게 음성 데이터 및 영상 데이터를 포함하는 컨텐츠에 관련하는 에코를 「컨텐츠 에코」 또는 「에코」라고 부른다.
ALM에서는, 액티브한 세션에 있어서의 참가 노드(예를 들면 MCU 노드) 전부가, 그룹의 스트리밍 데이터를 멤버 간에서 최량의 경로를 경유해서 라우팅하는 역할을 집합적으로 담당할 것이 요구된다. 이것에 의해, 자립적AV스트리밍 경로의 구축, 유지 관리, 및 이용을 분산적으로 행한다고 하는 목적이 달성된다. 2008년 12월 1일에 출원한 일본국 특허출원2008-306671에는, 공평한 대역폭 트리를 구축함으로써 대역폭의 공평성 및 고속 루트(경로) 컨버전스라고 하는 과제를 해결하기 위한 N-트리 알고리즘(N-Tree algorithm)이 제안되어 있다.
그렇지만, 이 자기 조정형 라우팅 메카니즘(N-트리 알고리즘)에서는, 경로 정보를 수집 및 배포하는 1개 또는 복수의 노드에 의해, 제어 경로 정보를 동적인 멤버 간에서 주기적으로 교환하는 것이 요구된다. 라우팅 정보는, 개별 ALM 노드에 의해, 또는 ALM 노드 그룹이 협력함으로써, 동적으로 구축된다. 이 동적성(動的性)의 결과로서, ALM 세션에 있어서 경로/방향이 빈번하게 변경되고, 이것에 기인하여 컨텐츠 패킷의 루프나 중복이 발생함으로 인해, ALM-MCU 노드에 있어서 컨텐츠 에코가 발생한다.
라우팅테이블 정보에 기초하는 ALM 패킷의 라우팅에서는, MCU 노드에 의한 컨텐츠 패킷의 믹싱 동작이 고려되지 않는다. MCU 노드는, 컨텐츠 또는 컨텐츠의 송신원을 인식하는 일 없이, 수신하는 모든 컨텐츠 패킷을 믹스한다. 이 때문에, 일부분이 믹스된 형태 또는 믹스되어 있지 않은 원래 형태로, 동일한 송신원으로부터의 중복된 컨텐츠가 수신되기 때문에, 컨텐츠 에코 문제가 발생한다.
ALM 경로를 인식하고 있지 않는 ALM-MCU 노드에 의한 컨텐츠의 직접적인 믹싱에 기인하여, ALM 네트워크에 있어서, MCU-MCU 채널의 스트리밍이 부적절하게 믹스된다. 따라서, 본 실시형태의 목적은, 동적인 ALM 경로의 적합화에 의해 에코를 배제하는 것, 또는, 컨텐츠의 지연/지터를 감소시키는 것을 목적으로 하여, ALM 베이스에서의 분산형의 선택적이면서도 동적인 데이터(또는 컨텐츠) 믹싱을 실행하는 장치 및 방법을 제공하는 것이다. 나아가, 이것에 의해, ALM-MCU 노드의 경로를 따라 믹싱 부하를 분산시키는 것도 가능하다.
이것은, ALM 라우팅 테이블 정보를 동적으로 분석하고, ALM 경로를 따라 패킷 믹싱 스테이터스 정보를 구축함으로써 달성된다. ALM-MCU 노드는, 컨텐츠 에코를 저감하고, 최소의 패킷 지연을 유지하기 위해, 패킷 믹싱 스테이터스 정보를 사용하여, 강제적 또는 선택적 컨텐츠 믹싱을 실행한다. 일반적으로는, 본 실시형태에서는, MCU 노드는, ALM 기술을 사용하여, 원래의 컨텐츠 패킷 또는 일부분이 믹스된 컨텐츠 패킷을ALM 경로를 따라 동적으로 라우팅함으로써, 최소의 엔드 투 엔드 지연과 믹싱 부하의 분산을 달성한다.
본 실시형태는, 도면에 의해 보충되고 있어, 도면을 참조하면서 설명되고 있다.
본 발명의 실시형태 전체를 통해 사용되고 있는 특정 용어에 대해서 이하에 정의해 둔다.
「ALM 세션」:ALM 세션은, 예를 들면, 도1A에 나타낸 것과 같은 2개 이상의 ALM 노드(ALM 노드 또는 ALM-MCU 노드를 포함)가 멀티 파티 어플리케이션에 있어서 네트워크를 경유해 접속되어, 데이터 패킷을 상호간에서 동시에 교환하는 논리 세션으로서 정의한다.
「비ALM 노드」(또는 「엔드 노드」):아무런 ALM 기능도 실행하지 않는 노드. 통상은, 컨텐츠를 생성하는(송신원)노드 또는 컨텐츠를 소비하는 노드이다. 다시말하면, ALM 세션에 참가하고 있으며, ALM 베이스의 패킷 라우팅을 실행할 수 없는 노드이다.
「ALM 노드」:ALM 세션에 참가하고 있으며, ALM 베이스의 패킷 라우팅을 실행할 수 있는 노드.
「ALM-MCU 노드」:수신한 컨텐츠에 대해서 컨텐츠 믹싱을 실행하여, 그 컨텐츠를 다른 ALM 노드 또는 ALM-MCU 노드에 전송하는 ALM 노드.
「직접적인 믹싱」:수신되는 모든 컨텐츠를, 그 생성원 또는 종류를 인식하는 일 없이 믹스하는 MCU 동작.
「부분적인 믹싱」:ALM-MCU 노드가 ALM 세션의 참가자의 컨텐츠의 일부만을 믹스하는 것.
「강제 믹싱」:도11에 나타낸 것처럼, ALM-MCU 노드가, ALM 믹싱 전송(AMF) 테이블에 기초하여 지정되는 컨텐츠를 믹스하는 것.
「선택적 믹싱」:도11에 나타낸 것처럼, ALM-MCU 노드가, 믹싱 호프 길이(MHL) 테이블 및 분산형 ALM 믹싱 스테이터스(DAMS) 테이블에 기초하여, 선택되는 컨텐츠를 믹스하는 것.
「MCU-MCU 채널」:원래의 컨텐츠 또는 일부분이 믹스된 컨텐츠를 스트리밍하기 위한 ALM-MCU 노드간의 네트워크 경로.
「리프 노드」:ALM-MCU 노드에 직접 접속되어 있으며, 패킷 라우팅을 실행하지 않는 노드(예를 들면 도3에 있어서의 노드 H, 노드 K).
「비(非)리프 노드」:ALM-MCU 노드에 간접적으로 접속되어 있으며, 자신의 컨텐츠 패킷이 다른 ALM 노드에 의해 라우팅되는 ALM 노드 또는 비(非)ALM 노드(예를 들면 도3에 있어서의 노드A, 노드B, 노드C, 노드D).
「호프 길이」:송신원 노드로부터 송신처 노드까지의 전송 회수이며, 「호프 카운트」 또는 「호프(호핑) 수」라고도 부른다. 본 발명에 의하면, 송신원 노드와 다음 송신처 노드 사이의 호핑수를 사용해서, 데이터의 믹싱 처리가 제어된다.
본 실시형태에서는, MCU 노드에 의한 ALM 베이스에서의 분산형의 선택적이면서도 동적인 컨텐츠 믹싱이 가능하다. 컨텐츠 에코의 원인이 되는 컨텐츠 패킷의 루프를 배제할 목적으로, ALM 베이스의 동적인 라우팅 테이블 정보를 사용하여, 어플리케이션층의 컨텐츠 패킷을 선택적으로 믹스한다. 특히, 본 실시형태는, ALM-MCU 노드 간에서의 ALM 베이스에서의 분산형의 선택적이면서도 동적인 컨텐츠 믹싱을 실행하는 장치 및 방법을 제공한다. 이 기술은, 예를 들면, 경로 컨버전스의 지연에 기인하는 엔드 투 엔드의 패킷 전달 지연을 최소로 하고, 컨텐츠(예를 들면 음성)의 에코를 최소로 할 목적으로, 리얼타임의 음성/비디오 회의에 적합하다.
ALM에서는, 액티브한 세션에 있어서의 참가 노드(예를 들면 ALM 노드 및 ALM-MCU 노드) 전부가, 그룹의 스트리밍 데이터를 최량의 경로를 경유하여 멤버 간에서 라우팅하는 역할을 집합적으로 담당하는 것이 요구된다. ALM 노드는, 회의 세션에 있어서 ALM 라우팅 정보를 사용하여 컨텐츠 패킷을 라우팅하는 역할을 담당한다. 한편, ALM-MCU 노드는, 컨텐츠를 다른 ALM 노드ALM-MCU 노드, 또는 엔드 노드에 전송하는 것에 추가하여, 컨텐츠를 믹스한다.
ALM 전송 테이블 등의 ALM 라우팅 정보는, 상술한 2008년 12월 1일에 출원한 일본국 특허출원2008-306671에 기재되어 있는 것처럼, 개별 ALM 노드에 의해, 또는 ALM 노드의 그룹이 협력함으로써, 네트워크 리소스 및 기타 리소스의 변동에 기초하여 동적으로 구축된다. 이 동적성의 결과로서, ALM 세션에 있어서 경로/방향이 빈번하게 변경된다.
새로이 구축된 ALM 전송 테이블은, ALM 세션에 있어서의 모든 ALM 노드에 배송된다. 본 실시형태에서는, 이 ALM 전송 테이블을 이용해, 신규 테이블(ALM 믹싱 전송(AMF) 테이블, 믹싱 호프 길이(MHL) 테이블, 분산형 ALM 믹싱 스테이터스(DAMS) 테이블을 포함)을, 실시형태에 기재한 특정 방법에 기초하여 구축한다. 본 실시형태에 있어서는, ALM 베이스에서의 분산형의 선택적이면서도 동적인 믹싱을 실행하는 MCU의 장치 및 관련하는 방법을 개시한다.
설명하는 장치에서는, 컨텐츠 패킷의 루프, 또는, ALM-MCU 노드에 있어서의 컨텐츠 에코로 이어지는 중복이 배제되고, 컨텐츠 에코의 저감 및 회의 세션의 최소 지연이 달성되고, ALM 경로에 따라 믹싱 부하를 분산시키는 것이 가능하게 된다.
현재, ALM 패킷의 라우팅은, ALM 라우팅 테이블 정보에 기초하여 실행된다. 그렇지만, ALM 전송 테이블에서는, ALM-MCU 노드에 의한 컨텐츠 패킷의 믹싱 동작이 전혀 고려되지 않는다. 따라서, ALM-MCU 노드 각각이, 수신하는 모든 컨텐츠 패킷을, 컨텐츠의 종류 또는 컨텐츠의 송신원을 인식하는 일 없이 믹스한다. 이로 인해, 동일 송신원으로부터의 중복된 컨텐츠가, 이미 믹스된 형태 또는 믹스되어 있지 않은 원래의 형태로 수신되기 때문에, 컨텐츠 에코 문제로 이어진다.
따라서, 본 실시형태는, 동적인 ALM 경로의 적합화에 의해 에코를 배제하는, 혹은 컨텐츠의 지연/지터를 감소시킬 목적으로, ALM 베이스에서의 분산형의 선택적이면서도 동적인 데이터(또는 컨텐츠)의 믹싱을 실행하는 장치 및 방법을 제공한다. 나아가, 본 실시형태에서는, ALM-MCU 노드의 경로에 따라 믹싱 부하를 분산시키는 것도 가능하다.
이것은, 본 실시형태에 있어서, 상술한 것처럼, ALM 라우팅 테이블 정보를 동적으로 분석하여, 패킷 믹싱 스테이터스 정보를 구축함으로써 달성된다. ALM-MCU 노드는, 컨텐츠 에코를 저감하고, 최소의 패킷 지연을 유지하기위해, 패킷 믹싱 스테이터스 정보를 이용하여, 강제적 또는 선택적 컨텐츠 믹싱을 실행한다. 일반적으로는, 본 실시형태에서는, MCU 노드는, ALM 기술을 사용하여, 원래의 컨텐츠 패킷 또는 일부분이 믹스된 컨텐츠 패킷을 ALM 경로를 따라 동적으로 라우팅함으로써, 최소의 엔드 투 엔드 지연과, 믹싱 부하의 분산을 달성한다.
이하에서는, 개략도 및 흐름도를 참조하면서 본 실시형태에 대해서 자세하게 설명한다. 또, 본 실시형태에서는, 예를 들면, 본 실시형태를 다지점간 비디오 회의 시스템에 적용한 상황을 상정해서 설명을 행한다. 다지점간 비디오 회의 시스템에서는, 일반적으로는 MCU가 이용된다.
도1A는, 로컬 네트워크 134, 136, 138, 140에 접속되어 있는 복수의 ALM 노드 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, 122, 124, 126, 128, 130, 132를 나타내고 있다. 로컬 네트워크 134, 136, 138, 140은, 복수의 다른 네트워크 링크 142, 144, 146, 148, 152, 150을 경유하여 상호 접속할 수 있다. 최종적으로는, ALM 세션에 있어서의 모든 노드가 1개 네트워크에 접속되어, 노드간의 접속이 유효하게 된다. 멀티미디어 어플리케이션(예를 들면, 각 클라이언트에 속해 있는 비디오 회의 어플리케이션)은, ALM 세션에 있어서 AV스트림을 상호간에서 동시에 교환할 수 있다. 각 ALM 노드(160)(예를 들면 도1A에 있어서의 노드A)는, 컴퓨터 시스템을 구비하고 있으며, 예를 들면 도1B에 나타낸 것처럼, 프로세서(162), 입력/출력(I/O) 유니트(164), 컴퓨터 가독(可讀)매체 (예를 들면 메모리 유니트166 및 스토리지 유니트 168)를 포함하고 있는 하드웨어 구성을 가진다. 도1A에 나타낸 각 노드는, 예를 들면, 도1C에 나타낸 것처럼, 휴대전화(170), 전화 회의 장치(174), IP전화(178), 퍼스널 컴퓨터(PC)(182), TV 회의 장치(186) 등의 기기라고 할 수 있다. 이러한 기기(170, 174, 178, 182, 186)는, 예를 들면 도1C에 나타낸 것처럼, 각각의 링크(172, 176, 180, 184, 188)를 경유하여 로컬 네트워크(190)에 접속되어 있다.
분산형의 동적이면서도 선택적인 컨텐츠 믹싱 동작을 실현하기 위해서는, 네트워크에 2개 이상의 ALM-MCU 노드가 존재하지않으면 안된다. 도1A는 이 상황을 나타내고 있으며, 4개의 ALM-MCU 노드 (102, 110, 118, 132)가, 각각, 로컬 네트워크(136, 138, 140, 134) 안에 있다. 그렇지만, ALM-MCU 노드는 네트워크의 임의의 부분에 위치하고 있을 수 있으며, 동일한 로컬 네트워크내(內)일 필요도 없다. 이 배치는, N-트리 알고리즘 및 ALM 노드의 믹싱(MCU) 능력에 의해 결정된다. 상술한 2008년 12월 1일에 출원한 일본국 특허출원 2008-306671에 기재되어 있는 그룹 멤버쉽 기능은, ALM 세션의 형성을 용이하게 한다. ALM 노드는, 자신의 컨텐츠를, ALM 세션 설정에 기초하여 네트워크 내의 1개의 ALM-MCU 노드에만 스트리밍한다.
ALM 세션에 있어서 로컬 네트워크 및 ALM 노드를 형성하는 방법의 일례는, 상술한2008년 12월 1일에 출원한 일본국 특허출원 2008-306671에 기재되어 있다. ALM 노드의 1개가, 다른 모든 ALM 노드와 통신함으로써 경로 정보 수집을 실행하여, 그들 노드 간에서 네트워크 정보를 동시에 교환할 수 있다. 이 노드는, 오버레이 네트워크를 형성하기 위해 사용되는 정보를 수집하는 역할을 담당하며, 그 정보를 ALM 전송 테이블의 형식으로 다른 모든 노드에 배송한다. 모든 ALM 노드는, 어플리케이션층에 있어서 데이터 패킷을 멀티캐스트 하기때문에, 이 오버레이 정보를 사용해서 서로 간에서 오버레이 네트워크를 형성한다.
특히, 본 실시형태는, ALM 세션에 있어서의 전부의 ALM-MCU 노드에 의해 실행되는 ALM-MCU 동작에 관련한다. 이하에서는, ALM-MCU 노드에 있어서 발생하는 문제에 대해서, 도2 및 도3을 참조하면서 설명한다.
도2는, 본 실시형태에 의한 ALM 전송 테이블의 단순화한 예를 나타내고 있으며, 이 테이블을 사용하여 문제에 대해서 설명한다. 상세한 ALM 전송 테이블은 도6에 나타내고 있고, 나중에 ALM 믹싱 전송(AMF) 테이블로서 설명한다. 또, 도2에는, 설명만을 목적으로 하고, 도3을 조사함에 의해, 호프 카운트(또는 호프(호핑)수)를 시각적으로 나타내고 있다. 상술한 것처럼, 호프 카운트 또는 호프(호핑) 수는, 송신원 노드로부터 송신처 노드까지의 전송 회수이다. 바꾸어 말하면, 호프수는, 송신원 노드와 송신처 노드 사이의 노드의 수이다. 송신처 노드가 최후의 송신처 노드일 경우, 본 명세서에 있어서는 그 송신처 노드를 「엔드 노드」라고도 부른다. 바꾸어 말하면, 호프 카운트는, 데이터의 송신원과 데이터의 송신처 사이의 거리를 측정하기 위해 사용되는 라우팅 매트릭(routing metric)의 하나이며, 송신원으로부터 송신처까지의 경로를 따라 데이터가 통과하는 라우터의 수(및 유사한 기능을 가지는 네트워크 장치의 수)와 동일하다. 도3은, 도2에 나타내는 전송 테이블에 대한, ALM-MCU 멀티미디어 스트리밍의 시나리오 예를 나타내고 있다. 도4A~도4D는, 도3에 나타내는 4개의 노드A~D가 송신원일 때의, 도2에 있어서 연결되어 있는 4개의 전송 서브 테이블의 정보 내용을 나타내고 있다. ALM 전송 테이블은, 도10에 나타내는, 지정된 메시지 포맷을 사용하여, 도9에 나타내는 것처럼 ALM 노드에 의해 교환된다. 도9 및 도10에 대해서는, 나중에 자세하게 설명한다.
도2에 있어서, 「노드」열(202)은 스트림의 송신원을 나타내고 있고, 「다음(次)의 송신처」(도면 내에서는 경우에 따라서는 「다음(次) 송신처」라고 생략하고 있음) 열(250)은, 예를 들면, 전송되는 스트림의 다음 송신처를 표시하고 있다. 도2에는, 연결되어 있는 4개의 전송 서브 테이블이 존재하고 있고, 즉, 테이블 1은, 「노드」열(202) 및 「다음 송신처」열(250)과 그들의 필드204~212 및 252~260을 가지고, 테이블 2는, 「노드」열(214) 및 「다음 송신처」열(264)과 그들의 필드216~224 및 264~272를 가지고, 테이블 3은, 「노드」열(226) 및 「다음 송신처」열(274)과 그들의 필드228~234 및 276~282를 가지고, 테이블 4는, 「노드」열(236) 및 「다음 송신처」열(284)과 그들의 필드238~248 및 286~296을 가진다. 이 테이블은, 도3 및 도4A~도4D에 나타낸 것처럼, 4개의 노드, 즉, 노드A(302로 표시되어 있음), 노드B(308로 표시되어 있음), 노드C(306으로 표시되어 있음), 노드D(304로 표시되어 있음)를 나타내고 있다. 이들 4개의 노드는, 각각의 노드를 기점으로 하는 자신의 배송 트리를 유지하고 있다. 도4A, 도4B, 도4C, 도4D는, 각각, 테이블 1, 테이블 2, 테이블 3, 테이블 4에 대응하고 있다. 각 노드의 전송 서브 테이블(테이블 1~테이블 4)에는, AV패킷을 전송해야 할(1개 또는 복수의) 다음 호프를 기술(記述)하는 전송 테이블 정보가 포함되어 있다. 4개의 노드(노드A~노드D) 전부는, 모두 동일한 ALM 전송 테이블을 수신한다. 각 노드는, 이들 ALM 전송 테이블을 이용해, 후술하는, 자신의 AMF 테이블, MHL 테이블 및 DAMS 테이블(각각 도6, 도7, 및 도8을 참조)을 구축한다.
구체적으로는, 테이블 1은, 도4A에 나타내는 노드A의 ALM 전송 서브 테이블을 표시하고 있다. 이 테이블은 다음과 같이 해석할 수 있다. 송신원 노드A(필드 204를 참조)에 있어서 생성된 AV패킷은, 다음 송신처인 노드B(필드 252를 참조)에 전송된다. 그 다음에, 노드B(필드 206을 참조)는, 수신한 패킷을, 컨텐츠를 복제함으로써, 다음 송신처인 노드C(필드 254를 참조) 및 노드D(필드 256을 참조)에 전송한다. 노드C(필드 210을 참조) 및 노드D(필드 212를 참조)는 엔드 노드(end-node)이므로, 이들 노드는, 노드A에 있어서 생성된 수신 패킷(필드 204를 참조)을 전송하지 않는다(필드 258 및 필드 260을 참조). 따라서, 테이블 1은, 노드C 및 노드D가, 각각, 송신원 노드A로부터 1 호프(노드B)만큼 떨어져 있음을 나타내고 있다.
테이블 2는, 도4B에 나타내는 노드B의 ALM 전송 서브 테이블을 표시하고 있다. 송신원 노드B(필드 216을 참조)에 있어서 생성된 패킷이, 다음 송신처 노드인 노드C(필드 264를 참조) 및 노드D(필드 266을 참조)에 전송된다. 노드A(필드 220을 참조) 및 노드C(필드 222를 참조)는, 엔드 노드이기때문에, 수신한 패킷을 전송하지않지만(268, 270), 노드D(필드 224를 참조)는, 송신원 노드B에 있어서 생성된 수신 패킷을 노드A(필드 272를 참조)에 전송한다. 따라서, 테이블 2는, 노드A가, 송신원 노드B로부터 1 호프(노드D)만큼 떨어져 있음을 나타내고 있다.
테이블 3은, 도4C에 나타내는 노드C의 ALM 전송 서브 테이블을 표시하고 있다. 송신원 노드C(필드 228을 참조)에 있어서 생성된 패킷이, 노드B(필드 276을 참조)에 전송된다. 노드A(필드 230을 참조)는, 송신원 노드C로부터의 모든 패킷을 소비하고, 노드B(필드 232를 참조) 및 노드D(필드 234를 참조)는, 송신원 노드C(필드 228을 참조)에 있어서 생성된 수신 패킷을, 각각 노드D(필드 280을 참조) 및 노드A(필드 282를 참조)에 전송한다. 따라서, 테이블 3은, 노드A가 송신원 노드C로부터 2 호프(노드B 및 노드D)만큼 떨어져 있고, 노드D가 송신원 노드C로부터 1 호프(노드B)만큼 떨어져 있음을 나타내고 있다.
테이블 4는, 도4D에 나타내는 노드D의 ALM 전송 서브 테이블을 표시하고 있다. 송신원 노드D(필드 238을 참조)에 있어서 생성된 패킷이, 노드A(필드 286을 참조), 노드B(필드 288을 참조), 및 노드C(필드 290을 참조)에 전송된다. 노드A(필드 244를 참조), 노드B(필드 246을 참조), 및 노드C(필드 248을 참조)는, 송신원 노드D(필드 238을 참조)로부터 수신한 모든 패킷을 소비하고, 그 이상은 전송하지 않는다(필드 292, 294, 296을 참조). 따라서, 테이블 4는, 노드A, 노드B, 및 노드C가 노드D에 직접 접속되어 있고, 송신원 노드D로부터 0 호프만큼 떨어져 있음을 나타내고 있다.
ALM-MCU 노드는, 수신한 컨텐츠를, 특정의 다음 송신처에 전송하기 전에 믹스한다. ALM의 경우에 있어서의 이 상정(想定)에 의한 문제에 대해서, 도3 및 도4A~도4D를 일례로서 설명한다. ALM-MCU 노드(302, 304, 306, 308) 각각은, 자신의 컨텐츠와, 모든 리프 노드의 컨텐츠를 믹스한 후, ALM 전송 테이블에 기초하여 그것을 다른 ALM-MCU 노드에 전송하는 역할을 담당한다. 도3 및 도4A~도4D는, ALM-MCU 노드(102, 110, 118, 132)(도1A를 참조) 각각에 대해서, 도2에 있어서의 ALM 전송 테이블에 기초하여 패킷을 전송하는 일련의 동작을 도해(圖解)하고 있다. 본 실시형태의 설명 전체를 통해서, 일례로서 노드B(도3에 있어서 308로 표시되어 있음)의 믹싱 동작에 대해 기재하고 있지만, 본 발명은 이 예로 한정되지 않는다.
노드A의 테이블 1을 참조하면, AV스트림은, 노드A로부터 경로 334를 경유하여 노드B로 흐른다(도3 및 도4를 참조). 노드B는, (1) 링크336을 경유하여 리프 노드 H(310으로 표시되어 있음)로부터의 컨텐츠, (2) 링크334를 경유하여 노드A로부터 수신되는 컨텐츠, (3) 자신의 컨텐츠(존재시), (4) 링크 328을 경유하여 노드C로부터 수신되는 컨텐츠, (5) 링크 332를 경유하여 노드D로부터 수신되는 컨텐츠를 믹스한다(해당할 경우)(즉, 이 설명은 모든 타입의 ALM 테이블에 해당되지만, 도13B의 예를 반영시키기 위해서는, (1)~(5)중 적절하게 선택되는 컨텐츠만이 믹스됨을 의미한다). 믹스된 컨텐츠는, 링크 324를 경유하여 노드C에 전송되고, 링크 322를 경유하여 노드D에 전송된다(도3 및 도4B를 참조). 노드D는, 링크 322를 경유하여 노드B로부터 수신한 컨텐츠를, 링크 312를 경유하여 노드A에 전송한다(도3 및 도4B를 참조). 또, 노드B는, 믹스된 컨텐츠(단, 에코를 방지하기 위해 노드H자신의 컨텐츠를 제외함)를, (비ALM 노드인) 노드H에 링크 338(도3을 참조)을 경유하여 전송하는 역할도 담당한다.
마찬가지로, 노드C는, 링크 318을 경유한 노드D로부터의 컨텐츠와, 링크 340을 경유한 리프 노드K(344로 표시되어 있음)로부터의 컨텐츠를 수신하여(도3 및 도4D를 참조), 이들을 자신의 컨텐츠(존재시)와 믹스한 후, 믹스된 컨텐츠를 링크 328을 경유하여 노드B에 전송한다(도3 및 도4C를 참조). 또, 노드C는, 노드K의 컨텐츠를 제외하고, 링크 326, 링크 324, 및 링크 318을 경유하여 수신한 컨텐츠 전부를 믹스하고, 그것을 링크 342를 경유하여 노드K에 전송하는 역할도 담당한다(도3을 참조). 한편으로, 노드D는, 링크 320, 링크 322, 및 링크 330을 경유하여 노드B에 의해 전송된 컨텐츠(도3 및 도4A~도4C를 참조)와, 자신의 컨텐츠(존재시)를 믹스한 후, 그것을 노드A에 전송한다(도3 및 도4B~도4C를 참조). 노드A는, 링크 312, 링크 314, 및 링크 316을 경유하여 수신한 컨텐츠(도3 및 도4B~도4D를 참조) 전부를 믹스한 후, 그것을 리프 노드(존재시)에 전송한다.
ALM 경로가 인식되지 않는 믹싱(믹싱을 실행하는 노드는, ALM 경로 라우팅이 변화해 있어, 컨텐츠 경로 전환이 일어나 있음을 인식하지 못함)을 채용함에 의한, 현재의 MCU의 솔루션의 문제는, 예를 들면, 노드B의 컨텐츠를 노드C의 스트림과의 관련에 있어서 검토함으로써 관찰할 수 있다. 노드B에 의해 믹스된, 링크 324를 경유한 컨텐츠는, (링크334 + 링크336 + 링크328 + 링크332를 경유해서 수신된) ((A+H)+C+D)의 컨텐츠로 표시할 수 있다. 그렇지만, C의 컨텐츠는, (링크340 + 링크318을 경유해서 수신된)(K+D)가 믹스된 컨텐츠이다. 이 경우, 노드K는, 노드D가 중복된 컨텐츠를 링크 342를 경유하여 수신하고, 이것에 의해 에코가 발생한다. 중복되는 컨텐츠의 믹싱을 배제하기 위해서는, ALM-MCU 노드가, 자신이 처리하는 컨텐츠와, 사용되는 관련 경로를 인식하고 있을 필요가 있다.
본 실시형태는, 믹스한 후에 원래의 ALM 경로를 따라 전송해야 할 컨텐츠와, 믹스하지 않고 전송해야 할 컨텐츠를 인텔리전트로 검출함으로써(따라서 최소의 지연 및 부하분산를 유지함), 믹싱의 문제를 배제한다. 이하에서는, 도5를 참조하여 본 실시형태에 대해서 자세하게 설명한다.
도5는, 본 발명의 실시형태에 따른, ALM 베이스에서의 분산형의 선택적이면서도 동적인 믹싱을 실행하는 MCU의 장치를 나타내고 있다. 도5는, 본 실시형태의 주요한 장치(500)를 나타내고 있고, 이 장치(500)는, 2개의 주 유니트로서 ALM 테이블 생성 유니트(502)와, ALM 믹싱 유니트(504)를 포함하고 있다. ALM 테이블 생성 유니트(502)는, ALM 메시지 처리 유니트(562)와, ALM 믹싱 전송(AMF) 테이블 데이터베이스(506)와, 믹싱 호프 길이(MHL) 테이블 데이터베이스(508)와, 분산형 ALM 믹싱 스테이터스(DAMS) 테이블 데이터베이스(510)와, 믹싱 호프 길이(MHL) 분석기(512)와, 분산형 ALM 믹싱 스테이터스(DAMS) 테이블 생성기(514)를 포함하고 있다. ALM 믹싱 유니트(504)는, 강제 믹싱 유니트(532)와, 선택적 믹싱 유니트(568)를 포함하고 있다. 강제 믹싱 유니트(532)는, ALM/비(非)ALM 선택기(選擇器)(538)를 더 포함하고 있다. 선택적 믹싱 유니트(568)는, 비리프 스트림 선택기(540)와, 리프 스트림 선택기(544)와, 믹싱 유니트(546)를 더 포함하고 있다. 이 장치(500)는, 다시 라우팅 엔진(552)과 전송 유니트(554)를 포함하고 있다. 도6은 AMF 테이블의 예를 나타내고 있고, 도7은 MHL 테이블의 예를 나타내고 있고, 도8은 DAMS 테이블의 예를 나타내고 있다.
ALM 테이블 생성 유니트(502)는, ALM 전송 테이블에 관련된 정보를 처리하는 역할을 담당하며, 이 ALM 전송 테이블에 관련된 정보는, ALM 믹싱 유니트(504)의 강제 믹싱 유니트(532) 및 선택적 믹싱 유니트(568)에 의해 사용된다. 이 처리는, 예를 들면, 믹싱 호프 길이의 계통적인 분석을 실행하여 DMST 테이블을 구축함으로써(도18의 1804) 되어진다. DMST 테이블은 AV믹싱 동작을 결정할 때에 사용된다(도18의 1806). MHL 분석기(512)는, 믹싱 호프 길이의 계통적인 분석을 실행하고 도7의 MHL 테이블(700)을 구축한다. DAMS 테이블 생성기(514)는, 도8의 DMST 테이블(800)의 구축을 실행한다.
도9는, ALM 노드간의 메시지 교환 절차를 나타내고 있고, 도10은, ALM-MCU 메시지의 포맷을 나타내고 있다. ALM-MCU 노드(908)의 ALM 메시지 처리 유니트(562)는, 도9에 나타내는 것처럼, ALM 전송 테이블 갱신(910) 및 ALM 세션 메시지(912)를, ALM 전송 테이블 구축 노드(902)로부터 인터페이스(564)를 경유해서 수신한다. 이들 테이블 혹은 메시지는, 대역폭 공평화 ALM 전송 테이블 디스트리뷰터(distributor) (904) (상술한 2008년 12월 1일에 출원한 일본국 특허출원 2008-306671에 기재되어 있음)에 의해, ALM-MCU 노드(908)의 ALM 메시지 처리 유니트(562)에 보내진다. 도10은, ALM-MCU 메시지의 포맷을 나타내고 있고, 이 포맷은, 생성원 노드 IP 어드레스 필드(1002)와, 타임 스탬프 필드(1004)와, 타입 필드(1006)와, ALM 세션 미디어 정보 필드(1008)(미디어 타입, 송신/수신 포트 정보 및 IP어드레스를 포함하고 있음), ALM 전송 테이블 필드(1010)와, ALM/비ALM 스테이터스 필드(1012)와, 예약 필드(1014)를 가진다. 타입 필드(1006)는, 그 메시지가 전하는 정보의 타입(예를 들면, ALM 전송 테이블 갱신 910 또는 ALM 세션 메시지 912)을 정의한다.
이 경우, 상기의 장치는, 소프트웨어, 하드웨어, 또는 이들의 조합으로 해도 좋다. 도11은, 장치 구성의 일례를 나타낸다. 구체적으로는, 도11은, 도5의 ALM 베이스에서의 분산형의 선택적이면서도 동적인 믹싱을 실행하는 MCU의 장치를 구체화한 ALM-MCU 장치의 예를 나타내고 있다. 이하의 설명에서는, 적절히 도11도 사용한다.
또, 도5에 나타내는 장치는, 도시하지않지만, 예를 들면, CPU(중앙 처리장치)와, 제어 프로그램을 저장하는 스토리지 미디어(예:ROM(판독 전용 메모리))와, 작업용 메모리(예:RAM(랜덤 액세스 메모리))와, 통신 회로에 의해 실현할 수 있다. 도1B를 참조하면, CPU는 프로세서(162)에 대응하고, ROM 및 RAM은, 컴퓨터 가독 매체로서의 메모리 유니트(166)에 대응하고, 통신 회로는 I/O유니트(164)에 대응한다. 이 경우, 상술한 각 부분의 기능은, ROM에 저장되어 있는 제어 프로그램 (멀티캐스트 통신 프로그램)을 CPU가 실행함으로써 실현된다.
다음에, 상기의 구성을 가지는 장치의 동작에 대해서, 도18~도23을 이용하여 자세히 설명한다. 도18은, ALM 베이스에서의 분산형의 선택적이면서도 동적인 믹싱을 실행하는 MCU 동작의 주된 스텝을 나타내고 있고, 도19는, MHL 테이블 구축 방법의 스텝을 나타내고 있고, 도20은, DAMS 테이블 작성의 스텝을 나타내고 있고, 도21은, ALM-MCU 노드의 믹싱 동작의 스텝을 나타내고 있고, 도22는, 강제 믹싱 동작의 스텝을 나타내고 있고, 도23은, 선택적 믹싱 동작의 스텝을 나타내고 있다.
도19 및 도20은, ALM 테이블 생성 유니트(502)의 주요한 스텝을 나타내고 있다.
ALM 전송 테이블 갱신(910) 또는 ALM 세션 메시지(912)를 수신한 시점에서(1902), 도6에 나타내는 바와 같은 AMF 테이블(600)이 구축되고, ALM/비ALM 필드(열 618)는, 링크 564를 경유한 ALM 세션 메시지(912)에 기초하여, AMF 테이블 데이터베이스(506)에 있어서 갱신된다(1904).
도6은, 도2와 비교해 상세한 AMF 테이블이고, 완전한 정보를 함유하고 있다. 도6에서는, 테이블의 엔트리는 일반적인 값이지만, 설명을 용이하게 하기 위해 도2와 동일한 논리가 유지되어 있다. 열 602는, AMF 테이블이 위치하고 있는 현재의 ALM-MCU 노드와는 관계없이, AV컨텐츠의 생성원인 노드의 IP어드레스를 표시하고 있다(예를 들면, 도2의 노드A가, 노드A의 트리 소스로서의 엔트리604를 표시하고 있음). 열612는, 특정한 AV패킷의 송신원 어드레스(예:13.168.5.2)를 표시하고 있고, 열614는, 송신원의 포트 번호(13.168.5.2: port#5555)를 표시하고 있고, 열616은, 서포트되는 트랜스포트 프로토콜(예:TCP 또는 UDP)을 표시하고 있고, 열618은, 채널 타입으로서 ALM 또는 비ALM을 표시하고 있고, 열620은, 다음 송신처 어드레스(예:13.168.4.3)를 표시하고 있고, 최후의 열622는, 다음 송신처의 포트 번호(예:13.168.4.3:port#6666)를 표시하고 있다. 필드604(노드A), 필드606(노드B), 필드608(노드C), 및 필드610(노드D)은, ALM 트리의 루트를 나타내고 있다(ALM 트리는 도2와 동일하다). 테이블의 엔트리 624~662각각은, ALM 전송 테이블 갱신 910혹은 ALM 세션 메시지 912 정보에 기초하는, ALM 세션에 있어서의 각 노드가 관련하는 전송 테이블을 반영하고 있다. 이 테이블은, ALM 전송 테이블 갱신910 또는 ALM 세션 메시지912 정보에 기초하여 동적으로 변화한다.
다음에, MHL 테이블 및 DAMS 테이블의 구축 방법에 대해서, 도5, 도7, 및 도8에 기초하여 설명한다.
지금, AMF 테이블(600)(도6에 나타낸)이 이미 이용가능한 것으로 상정하고, MHL 테이블의 구축에 대해서 설명한다. 믹싱 타입(믹싱 또는 전송)을 결정하여 리프 노드를 검출할 목적으로, MHL 분석기(512)는, 링크(518)를 경유하여 AMF 테이블(600)에 액세스하여 MHL 테이블(700)(도7에 나타낸)을 구축한다(1906). 도7에 나타낸 바와 같은 MHL 테이블(700)을 구축하는 것을 목적으로 한다. MHL 분석기(512)에 의해 MHL 테이블(700)을 구축하는 방법에 대해서 설명하기 전에, MHL 테이블의 구조를 설명해 놓는다.
도7에 있어서, 열702는 트리 소스 정보의 엔트리이고, 이것은 도6에 있어서의 열602의 엔트리와 동일하고, 열704~712는 다음 송신처 노드 어드레스 정보의 엔트리이고, 이들은 도6에 있어서의 열620의 엔트리와 동일하다. 행726은, 믹싱 스테이터스 정보를 보지(保持)하고 있고, 행728은, 다음의 송신처 노드 각각의 스테이터스 정보로서 리프 또는 비(非)리프를 보지하고 있다.
MHL 분석기(512)는, MHL 테이블(700)을 구축하고, 구축된 MHL 테이블(700)을 링크(520)를 경유하여 MHL 테이블 데이터베이스(508)에 저장한다.
이하에서는, 본 실시형태의 하나의 특징인 MHL 테이블에 대해서, 도12A 및 도12B와, 도13A~도13D를 이용하여 자세히 설명한다. 이들 도면은, 4개의 노드를 가지는 본 실시형태를 나타내고 있다. MHL 테이블은 각 노드(자(自)노드)에 있어서 작성되기때문에, 본 실시형태에 있어서는, 도13A~도13D에 나타낸 바와 같은 4개의 MHL 테이블이 존재한다. 도12A는, 도3에 대응하고 있고, 노드간의 전송 경로를 나타내고 있다. 도12B는, 도2에 대응하고 있고, 각 노드의 라우팅 테이블을 나타내고 있다. 도13A~도13D는, 도12A 및 도12B의 라우팅에 있어서 이하의 규칙에 따라 노드A~노드D에 의해 작성되는 MHL 테이블(도7을 참조)을 나타낸다. 도13A~도13D에 있어서, 세로열의 A, B, C, D는 송신원 노드를 표시하고 있고, 가로열의 A, B, C, D는 다음 송신처 노드를 표시하고 있다. 「믹싱 스테이터스」는, 각 노드(자(自)노드)가 전송 처리를 실행할 때의 3개의 스테이터스, 즉, 전송 처리만을 실행하는 스테이터스(F)와, 믹싱 처리를 실행한 후에 전송 처리를 실행하는 스테이터스(MF)와, 믹싱 처리 및 전송 처리의 어느것도 실행하지 않는 스테이터스(X), 중의 1개를 나타내고 있다. 스테이터스(X)는, 자(自)노드에 있어서 음성 혹은 영상 또는 그 양쪽 모두를 재생하는(즉, 로컬적인 소비만을 실행함) 것을 의미한다. 「리프/비리프」스테이터스는, 다음 ALM-MCU 노드가 그 ALM-MCU 노드에 직접적 또는 간접적으로 접속되어 있는지를 나타낸다. 세로열의 A, B, C, D와 가로열의 A, B, C, D가 교차하는 필드는, 데이터가 전송되는 회수를 호프 길이로서 나타내고 있다. 이러한 필드에는, 데이터가 전송되지 않고 직접 송신될 때에는 호프 길이 「0」이 표시되고, 데이터가 전송될 때는 이송(移送)회수와 동등한 호프 길이를 표시하는 값(자연수 1, 2, 3,...)이 표시된다. 데이터가 직접 송신되지 않고, 전송도 되지 않을 경우, 필드는 공백이다.
본 실시형태에서는, 각 노드(자(自)노드)는, 데이터를 수신하면, 호프 길이 테이블에 있어서의 다음 송신처 노드에 대한, 복수의 송신원 노드(자노드를 포함)에 대응하는 호프 길이의 조합에 따라, 믹싱 및 전송 처리를 실행하든가, 전송 처리만을 실행하든가, 또는(믹싱 또는 전송을 행하지 않고) 수신한 데이터를 그대로 보지하는 처리를 실행한다. 여기서, 믹싱 처리는, 데이터의 중복이 발생할 가능성이 없을 경우에만 실행된다. 본 실시형태에 있어서, 믹싱 및 전송을 행하지 않고 수신한 데이터를 그대로 보지하는 처리는, 자노드에 있어서 음성 또는 영상 또는 그 양쪽을 재생하는 것을 의미한다.
구체적으로는, 각 노드(자노드)에 있어서, 다음 송신처 노드에 대한 「믹싱 스테이터스」는, 이하의 규칙에 따라 결정된다.
(1) 필드가 모두 공백일 경우, 믹싱 처리 및 전송 처리의 어느것도 실행하지 않는다(「X」)
(2) 필드내에 0이외의 복수의 수치가 존재할 경우, 믹싱 처리를 실행하지 않고 전송 처리만을 실행한다(「F」)
(3) 위의 어느것도 아닌 경우, 믹싱 처리를 실행한 후에 전송 처리를 실행한다(「MF」)
예를 들면, 도13B에 있어서, 조합 C1은, 「1+0+공백」을 나타내고 있다. 이 경우, 위의 규칙(3)에 따라 믹싱 처리를 실행한다(「MF」). 따라서, 노드B(자노드)는, 노드A로부터의 컨텐츠를 노드B의 컨텐츠와 믹스하여, 다음 송신처 노드C에 전송한다. 이러한 믹스된 컨텐츠(A+B)는, 믹싱 후에 분리하는 것은 불가능하다.
이것과는 달리, 도13B에 있어서, 조합 C2는 「1+0+1」을 나타내고 있다. 이 경우, 위의 규칙(2)에 따라, 믹싱 처리를 실행하지 않고 전송 처리만을 실행한다(「F」). 따라서, 노드B(자노드)에 있어서, 노드A로부터의 컨텐츠와 노드C로부터의 컨텐츠는, 노드B의 컨텐츠와 믹스되지않고, 다음 송신처 노드D에 전송된다. 컨텐츠 A, 컨텐츠 B, 및 컨텐츠 C는 자노드B에 있어서 믹스되어 있지 않기 때문에, 이러한 전송된 컨텐츠(A, B, C)는, 다음 송신처 노드D에 있어서 서로 분리하는 것이 가능하다. 이 경우, 노드B(자노드)에 있어서 상기 규칙(2)에 반하여 믹싱 처리를 실행한다면, 믹스된 컨텐츠(A+B+C)가 다음 송신처 노드D에 전송된다. 노드D에 있어서는, 도13D의 C3에 나타내는 것처럼, 컨텐츠 B 및 컨텐츠 C를 다음 송신처 노드A에 전송할 필요가 있다. 그렇지만, 믹스된 컨텐츠(A+B+C)로부터는, 컨텐츠 B 및 컨텐츠 C를 분리하는 것이 불가능하다. 믹스된 컨텐츠(A+B+C)가 노드D로부터 다음 송신처 노드A에 전송되면, 컨텐츠 A가 중복되어(=겹쳐져), 이것에 기인하여 에코가 발생한다(자신의 음성이 2회 들린다).
마찬가지로, 도13D에 있어서, 조합 C3은 「1+2+0」을 나타내고 있다. 이 경우, 자노드D에서는, 위의 규칙(2)에 따라, 믹싱 처리가 실행되지않고 전송 처리만이 실행된다(「F」). 따라서, 노드D(자노드)에 있어서, 노드B로부터의 컨텐츠 및 노드C로부터의 컨텐츠가 컨텐츠 D와 믹스되지 않고, 다음 송신처 노드A에 전송된다. 자노드D에 있어서 컨텐츠 B, 컨텐츠 C, 및 컨텐츠 D가 믹스되어 있지 않기 때문에, 이러한 전송된 컨텐츠(B, C, D)는, 다음 송신처 노드A에 있어서 서로 분리하는 것이 가능하다.
이와 같이, 데이터가 중복될 가능성이 없을 경우에는 믹싱 처리가 실행되는데 비해, 복수의 전송 데이터가 제공되어, 믹싱 처리를 실행하면 데이터가 중복될 가능성이 있을 경우, 전송 처리만이 실행된다. 이렇게 함으로써, 수신측에 있어서의 에코의 발생에 기인하는 통신 품질의 열화를 개선하는 한편으로, 채널의 사용 효율을 최대한으로 높일 수 있다.
또한, 도14A, 14B 및 도15A~도15E는, 5개 노드인 경우에 있어서의 제1의 예를 나타내고 있으며, 도16A, 16B 및 도17A~도17E는, 5개 노드인 경우에 있어서의 제2의 예를 나타내고 있다.
도14A 및 도16A는, 노드간의 전송 경로를 나타내고 있으며, 도14B 및 도16B는, 노드에 있어서의 라우팅 테이블을 나타내고 있고, 도15A~도15E 및 도17A~도17E는, 각각, 노드A~노드 E에 의해 준비되는 MHL 테이블을 나타내고 있다. 이러한 도면을 보는 방법은, 4개 노드일 경우인 위의 예와 동일하며, 도15A~도15E 및 도17A~도17E에 있어서의 호프 길이는, 각각, 도14B 및 도16B에 있어서의 라우팅 테이블에 의해 정의되고 있다.
결과로서, 예를 들면, 도15A에 있어서의 자노드A에 있어서, 다음 송신처 노드B 및 다음 송신처 노드 E에 대한 「믹싱 스테이터스」는 「MF」로서 결정된다(즉, 믹싱 처리 및 전송 처리가 실행됨). 왜냐하면, 믹싱 처리를 실행하더라도 노드A의 데이터가 중복될 가능성이 없기 때문이다. 동일한 이유에 의해, 도17A에 있어서의 자노드A에 있어서, 다음 송신처 노드B에 대한 「믹싱 스테이터스」는, 「MF」로서 결정된다.
한편, 도15D에 있어서의 자노드D에 있어서, 송신원 노드B, 송신원 노드D, 송신원 노드 E로부터 다음 송신처 노드C까지의 호프 길이는, 각각, 「3」, 「0」, 「1」이다. 이 경우, 다음 송신처 노드C의 열에 0이외의 복수의 수치(즉, 「3」 및 「1」)가 존재하기 때문에,「믹싱 스테이터스」는, 상기 규칙(2)에 따라 「F」로 결정된다. 따라서, 송신원 노드B, 송신원 노드D, 및 송신원 노드 E의 컨텐츠는, 자노드D에 있어서 믹스되지 않고 다음 송신처 노드C에 전송된다. 동일한 이유에 의해, 도17D의 자노드D에 있어서의 다음 송신처 노드C에 대한 「믹싱 스테이터스」와, 도17E의 자노드 E에 있어서의 다음 송신처 노드D에 대한 「믹싱 스테이터스」도, 「F」로서 결정되어, 믹싱 처리없이 전송 처리가 실행된다.
본 실시형태에 의하면, 노드의 수가 5이상으로 증가하여도, 수신 측에 있어서의 에코의 발생에 기인하는 통신 품질의 열화를 개선하는 한편으로, 채널의 사용 효율을 최대한으로 높이는 것이 가능하다.
다음에, 도19의 스텝 1908에 있어서, MHL 테이블(700)을, 각 엔트리(도7에 있어서의 열704, 행716부터, 열712, 행724까지)의 값을 「0」으로 함으로써 초기화한 후, 구축 프로세스를 개시한다. MHL 테이블(700)에 값을 넣는 프로세스(1910)는, 「트리 소스」열602의 모든 엔트리(행624~행662)가 처리될 때까지 속행한다(1932). 바꾸어 말하면, MHL 테이블 구축 완료 스텝 1910은, 도19의 스텝 1932에 있어서, 이하의 스텝을 실행함으로써 확인된다. 「트리 소스」열602의 모든 필드에 대해서, 도6의 행624~행662의 엔트리 전부가 조사된다. IP#A(트리 소스 필드 604)로부터 개시하여, MHL 테이블(도7을 참조)의 각 엔트리를 입력한다(1914). MHL 테이블(700)의 열702, 행716의 엔트리로서 IP#A가 입력된다. 다음에, 「트리 소스」(602)의 송신원 어드레스 필드(열612)에 진행된다(1916). AMF 테이블(600)의 「송신원 어드레스」엔트리 각각에 대해서(1918), 각각에 대한 다음의 송신처 어드레스 필드를 참조한다(1922). IP#A의 경우, 이 프로세스는, 송신원 어드레스(열612, 행624) 및 송신처 어드레스(열620, 행624)로부터 개시한다. 마찬가지로, 송신원 어드레스와 관련된 다음의 송신처 어드레스 엔트리 전부에 대해서(1924), 송신원 어드레스로부터 송신처 어드레스까지의 호프 카운트가 실행된다(1934). 예를 들면, IP#A(열612, 행624)와 IP#B(열620, 행624) 사이의 호프 카운트는 「0」이다. 왜냐하면, 이들은 직접 접속되어 있기 때문이다. 그렇지만, IP#C(열620, 행626)와 IP#D(열620, 행628)는, 송신원 어드레스 IP#A(열612, 행624)로부터 「1」호프만큼 떨어져 있다.
다음에, MHL 테이블(700)에 있어서, 트리 소스 어드레스 각각에 있어서의 다음 송신처 노드 어드레스(704, 706, 708, 710, 712)의 이 호프 카운트 정보가 갱신된다(1928). 상기 예에 기초하면, IP#C 및 IP#D 각각의 엔트리(열716, 행708, 및 열716, 행710)의 값은 「1」이다. MHL 테이블의 구축이 완료한 시점에서, DAMS 테이블(800)이 구축된다(1930).
DAMS 테이블(800)은, DAMS 테이블 생성기(514)가 MHL 테이블 데이터베이스(508)에 링크 522를 경유하여 액세스함으로써 구축된다. 구축된 DAMS 테이블(800)은, DAMS 테이블 데이터베이스(510)에 링크 524를 경유하여 저장된다.
DAMS 테이블의 구축은, MHL 테이블의 완성시, 또는 MHL 테이블의 갱신시에 개시된다(2002). 이 프로세스에서는, MHL 테이블(700)의 「송신처 노드 어드레스」(704, 706, 708, 710, 712)의 모든 엔트리에 대해서(2004), 각 열을 조사한다(2008). 「다음 송신처 노드 어드레스」행의 모든 엔트리값이 「0」인 경우(2012), MHL 테이블(700)의 믹싱 스테이터스 필드(726)에 다음 송신처가 존재하지 않음을 나타내는 「X」가 입력된다(예:IP#B)(2010). 0이 아닌 엔트리 끼리가 동일하지 않은 경우(2014) (예:1, 2,...등의 조합), MHL 테이블(700)의 믹싱 스테이터스 필드(726)에, ALM-MCU 노드가 수신 컨텐츠 전부를 전송하는 것을 나타내는 「F」가 입력된다 (예:IP#A)(2016). 0이 아닌 엔트리 끼리가 동일한 경우(예:전부가 「1」, 또는 전부가 「2」), MHL 테이블(700)의 믹싱 스테이터스 필드(726)에, ALM-MCU 노드가 수신 컨텐츠 전부를 믹스해서 전송하는 것을 나타내는 「M」이 입력된다(예:IP#C, IP#D)(2020).
다음에, MHL 테이블의 특정 「다음 송신처」에 있어서의 「리프/비(非)리프」필드(728)의 엔트리를, NL(비(非)리프) 또는 L(리프)의 어느 것인가로 편집할 필요가 있다. 믹싱 스테이터스가 「X」 또는 「F」인 경우, 「리프/비리프」필드(728)는 NL(비리프)라고 편집되고(2024), 믹싱 스테이터스가 「M」인 경우, 필드(728)는 L(리프)가 된다(2022).
상기 프로세스는, MHL 테이블(700)의 「송신처 노드 어드레스」(704, 706, 708, 710, 712) 전부가 처리될 때까지 반복된다(2018). 완료한 시점에서, DAMS 테이블(800)(도8), 구체적으로는 「최종 믹싱 스테이터스」열808을 갱신한다(2026).
DAMS 테이블(800)은, 복수의 다른 트리 소스(804) 노드로부터의 AV스트림 각각에 대한 AV동작을 결정할 목적으로 특정 노드(예를 들면 노드B(308))에 의해 사용된다. 따라서, DAMS 테이블을 구축하는 노드는, 자신의 DAMS 테이블(800)을 구축하기 전에 자기를 식별하지 않으면 안된다.
다음에, 자기의 식별 정보(802)를 구할 목적으로, 자신의 IP어드레스를 조사한다(2028). 이것은, 자신의 IP어드레스 또는 임의의 다른 어드레스 표현에 대해서 노드의 로컬 네트워크 컨피규레이션 파일을 참조함으로써 행해진다. 다음에, DAMS 테이블의 엔트리열804에 대응하는 AMF 테이블(600)의 「트리 소스」열602 각각에 대해서, DAMS 테이블(800)이 갱신된다. 이 조작은, AMF 테이블(600)의 「송신원 어드레스」필드(612)를 참조하고, MHL 테이블(700)의 「다음 송신처 노드 어드레스」(열702)(806)를 참조함으로써, 자(自)노드 어드레스의 최후의 엔트리까지(2034) 모두 실행한다(2030). MHL 테이블(700)에 있어서의 믹싱 스테이터스(726)를 조사하고(2036), DAMS 테이블(800)의 엔트리(808)에 적절한 값을 넣는다.
믹싱 스테이터스가 「X」인 경우(2046), AV컨텐츠에 아무것도 행할 필요가 없다(2038). 그렇지만, 믹싱 스테이터스가 「M」인 경우(2048), 믹싱 동작이 필요하다(2040). 어느쪽도 아닌 경우, AV컨텐츠는 다음 송신처로 전송된다(2044). 이들 스텝은, DAMS 테이블(800)에 있어서 「트리 소스」 및 「다음의 송신처 노드 어드레스」의 최후의 엔트리에 달할 때까지(2050), 각 노드 자신에 의해 반복된다(2042, 2052). DAMS 테이블의 구축이 완료한 시점에서, AV패킷의 처리를 행할 수 있다. 믹싱 스테이터스가 「M」인 경우(2048), 전송 동작이 실행되고, 따라서 최종 믹싱 스테이터스 열이 「MF」라고 편집된다.
예를 들면, 노드B가 자신의 DAMS 테이블(800)을 구축하고 있다고 상정하면, 노드B는, 자신의 IP어드레스(IP#B)(802)를 인식할 필요가 있다. 이 상정하에서, 노드B는, MHL 테이블(700)의 특정 트리 소스 어드레스열702를 참조한다. DAMS 테이블(800)의 구축 프로세스로서 최초에, 엔트리 IP#A(716)를 참조하여, 행716에 있어서의 호프 카운트 엔트리를 조사한다. IP#C(열708, 행716) 및 IP#D(열710, 행716)에 「1」의 엔트리가 있기때문에, DAMS 테이블(800)의 다음 송신처 노드 어드레스(806, 812, 814)의 엔트리로서 IP#C 및 IP#D를 넣는다. MHL 테이블(700)의 믹싱 스테이터스의 엔트리(열708, 행726) 및 (열710, 행726)이 「M」이기때문에, 최종 믹싱 스테이터스가 「MF」라고 마크되어, 도20에 기초하여(2040, 2044), 믹스한 패킷이 전송된다. 도7에 있어서의 트리 소스(702) 전부에 대해서 동일한 스텝을 실행한다.
DAMS 테이블의 갱신은, AV패킷의 처리와는 독립된 프로세스이다. AV패킷의 처리는, DAMS 테이블의 현재 상태에 기초하여 실행된다.
AV의 믹싱의 실행(2040) 트리거를 수신한 시점에서(2102), 강제 믹싱(2104) 또는 선택적 믹싱(2106)의 어느것인가가 실행된다.
강제 믹싱 유니트(532)는, 링크 516을 경유하여 AMF 테이블 데이터베이스(506)를 참조함으로써, 다른 ALM-MCU 노드(556)로부터 라우팅 엔진(552)에 의해 수신되어 자신에게 입력되는 AV스트림(550)을, 믹스한다. ALM/비ALM 선택기 유니트(538)는, ALM 스트림과 비ALM 스트림을 식별한다. 강제적으로 믹스된 컨텐츠는, 링크536을 경유하여 전송 유니트(554)에 전송된다. 한편, ALM 믹싱 유니트(504)는, MHL 테이블 데이터베이스(508) 및 DAMS 테이블 데이터베이스(510)를 각각의 링크 526 및 링크 528을 경유하여 참조하고, 다른 ALM/엔드 노드로부터 직접 수신되는 AV스트림(550), 또는, 강제 믹싱 유니트(532)로부터의 AV스트림을 믹스한다.
다음에, 선택적 믹싱 유니트(568)(비리프 스트림 선택기 유니트(540) 및 리프 스트림 선택기 유니트(544)를 구비하고 있음)는, 링크542를 경유하여 그대로 전송되는 AV스트림, 또는 믹싱 유니트(546)에 의해 믹스된 후에 링크548을 경유해 전송되는 AV스트림을, 분리한다. 최후에, 전부의 AV스트림이 전송 유니트(554)에 의해 링크560를 경유하여 라우팅 엔진(552)에 전송되고, ALM 테이블(600)에 기초하여 다음 송신처(558)에 전송된다.
도11은, 특정의 믹싱 동작으로서 도3의 예에 관련해 노드B(308로 표시되어 있음)의 ALM-MCU 동작을 행하는 장치를 나타내고 있다. 이 장치는, 노드B에 있어서의 분산형의 ALM AV 회의 어플리케이션을 위한 동적이면서도 선택적 믹싱을 유지하면서 루프의 문제를 배제할 목적으로 적용되는 방법의 실례를 나타내고 있다. 강제 믹싱 유니트(1122) 및 선택적 믹싱 유니트(1160)는, 각각 도5의 532 및 568과 동일하지만, 보다 상세하게 표시되어 있다.
앞에서 정의한 바와 같이, 강제 믹싱 스테이터스의 AV스트림은, ALM-MCU 노드에 의해 AMF 테이블(600)만을 참조해서 믹스되지 않으면 안된다. 한편, 선택적 믹싱 스테이터스의 AV스트림은, ALM-MCU 노드에 의해 DAMS 테이블(800) 및 MHL 테이블(700)에 기초하여 믹스된다. 이들 2개의 믹싱 동작은, 각각 역할이 다르다. 강제 믹싱은, 리프 노드가, ALM 노드에 의해 그 리프 노드 자신의 컨텐츠를 제외하고 믹스된 모든 AV스트림을 받도록 한다. 한편, 선택적 믹싱은, 리프 노드로부터의 AV스트림이 믹스되는, 또는 다음의 노드에 전송되는, 또는 그 양쪽이도록 한다.
예를 들면, 노드B(308로 표시되어 있음)의 경우, 노드H가, 노드H자신의 AV패킷을 제외한 다른 모든 AV패킷을(링크 1116을 경유하여) 받도록 할 필요가 있다. 마찬가지로, 노드B에 다른 리프 노드가 존재할 경우, 동일한 일을 말할 수 있다(링크 1118을 경유한다). 한편, 그 이외의 AV컨텐츠는, 링크 1120을 경유하여 선택적 믹싱 유니트(1160)(568)에 전송될 필요가 있다.
AV스트림은, 노드A(링크 1106 경유), 노드C (링크 1108 경유), 노드D(링크 1110 경유),노드H(링크 1112 경유), 및 다른 리프 노드(링크 1114 경유)(존재시)로부터, 수신된다. 노드의 참조 기호에 대해서는 도3을 참조해주었으면 한다. 모든 AV스트림은, ALM/비ALM 선택기(1138)로부터의 입력에 기초하여 믹싱 유니트(1104)에 매핑된다. 도22는, 강제 믹싱 유니트(1122)(532)의 주요한 스텝을 나타내고 있다. 믹싱 처리의 트리거를 수신하면(2202), AMF 테이블 데이터베이스(506)에 저장되어 있는 AMF 테이블(600)에 기초하여, 송신원 어드레스 612 및 송신원 포트 번호 614에 관련된 전부의 채널/포트로부터의 AV패킷이, 노드B에 있어서의 AV패킷 처리에 대해서 유효하게 된다(2204, 2206). ALM/비ALM 선택기(1138)는, 링크 1134를 경유하여 AMF 테이블 데이터베이스(506)를 참조하여 채널 타입 618을 식별한다(2212).
비ALM 채널 선택기인 경우(2218, 2216)(예:1112, 1114), 그 자신의 비ALM 입력 채널을 제외하고(2236), ALM 입력 채널 및 비ALM 입력 채널의 AV스트림을 믹스하고(2234)(예를 들면, 비ALM 채널 H(링크 1116을 경유함) 및 다른 리프(링크 1118을 경유함)를 위한 1103 및 1117의 동작), 이것을 전부의 비ALM 채널에 대해서 행한다(2230). 믹스된 AV컨텐츠를, 각각의 비ALM 채널/포트 1116 및 1118에 있어서 출력한다(2238). ALM 채널 선택기인 경우(2214, 2220), 전부의 비ALM 채널/입력 스트림의 AV컨텐츠(2224)가 믹스되어(2226), 선택적 믹싱 유니트(1160)(568)에 링크 1120을 경유하여 전송된다(2228). 전부의 입력 포트에 대해서(2206, 2210), AMF 테이블 입력에 기초하여 ALM의 AV컨텐츠 및 비ALM의 AV컨텐츠의 믹싱이 실행된다.
다음에, 도23에 나타낸 스텝에 있어서, 선택적 믹싱을 실행하기 위해(2302), 링크 1120을 경유한 강제 믹싱 유니트의 스트림과, 링크 1106, 1108, 1110을 경유한 독립적 입력 스트림을 식별한다(2304). 그 다음에, 선택적 믹싱을 행할 수 있도록, 리프 노드/비(非)리프 노드를 식별하여, MHL 테이블을 참조한다. 이 목적을 위해, 2306에 있어서, 비리프 스트림 선택기(1126) 리프 스트림 선택기(1146) 및 MHL 검출기(1142), MHL 테이블 데이터베이스(508) 및 DAMS 테이블 데이터베이스(510)에, 각각 링크 1136 및 링크 1140을 경유하여 액세스한다. DAMS 테이블(800)에 있어서, 자노드 어드레스 필드 802 및 최종 믹싱 스테이터스 필드 808이 참조되고(2308), MHL 테이블(700)에 있어서, 리프/비리프 필드 728이 참조된다(2310). 비리프 스트림 선택기(1126), 리프 스트림 선택기(1146), 및 MHL 검출기(1142)의 각 유니트는, 이들 필드 정보를 사용하여, 모든 리프 노드 및 비리프 노드의 믹싱 스테이터스를 식별한다(2312). DAMS 테이블(800)의 최종 믹싱 스테이터스 필드(808)는, AV스트림이 다음 노드에 전송되기 전에 행해지는 실제의 동작(아무것도 하지않는, 전송만, 믹싱 및 전송)을 표시하고 있다.
그 다음에, 리프 노드인지 아닌지(2328, 2318)와, 믹싱 스테이터스(2315)에 기초하여, 이하와 같이 결정을 한다. 리프 노드이고(2316), 믹싱 스테이터스(2328)가 「M」일 경우(2332), 즉 MHL 테이블(700)의 「리프」(728) 노드 중 DAMS 테이블에 있어서 「M」(808)으로 식별되는 입력 스트림에 대해서, 「리프 스트림 선택기」유니트에 있어서 믹싱 동작이 실행되고(2336), 「M」이 아닐 경우(2330), 입력 스트림에 대해서 아무것도 실행하지 않고(2334), AV컨텐츠를 그 출력 포트에 단지 전송한다(2338). 비(非)리프 노드이며(2314), 믹싱 스테이터스(2318)가 「F」일 경우(2322), 즉 MHL 테이블(700)의 「비(非)리프」(728) 노드 중 DAMS 테이블에 있어서 「F」로 식별되는 입력 스트림에 대해서, 「비리프 스트림 선택기」유니트에 있어서 전송 동작이 실행되고(2326), 「F」가 아닐 경우(2320), 아무것도 하지 않는다(2324). 믹싱 후의 스트림, 또는 믹싱없는 스트림은, 각각의 출력 포트에 전송된다(2338).
도2, 도3, 도6, 도7, 및 도8을 참조하여, 노드A(302), 노드C(306), 및 노드B(308)의 AV컨텐츠는, 믹싱되지 않고, 각각의 출력 포트 1150, 1152, 및 1154에 있어서 전송된다. 그렇지만, 노드A로부터의 컨텐츠와 노드B로부터의 컨텐츠가 믹싱되어(1156), 출력 포트 1158을 경유하여 노드C에 전송된다. 예를 들면, 도3에 있어서의 문제는, 본 실시형태에 있어서, 이와 같이 노드A의 컨텐츠와 노드B의 컨텐츠만을 믹스함으로써 해결된다. 왜냐하면, 노드C는 노드D의 컨텐츠를 독립적으로 수신하기 때문이다. 즉, 도3에 있어서, 노드B는, 노드A로부터의 컨텐츠와 노드B자신의 컨텐츠만을 믹스해야만 하며, 노드D 혹은 노드C로부터의 컨텐츠는 믹스해서는 안된다는 것을 인식하고 있지 않으면 안된다. 믹싱 문제를 회피할 목적으로, 이 인식은, 도13B에 나타낸 것처럼 노드B의 MHL 테이블로부터 얻어진다.
상술한 솔루션에 있어서는, MHL 테이블 및 DAMS 테이블에 기초한 선택적 믹싱 동작에 의해, ALM 베이스의 AV회의 세션에 있어서의 패킷 루프의 문제가 해결되는 한편으로, AMF 테이블, MHL 테이블, 및 DAMS 테이블을 구축할 때에 ALM 테이블을 동적으로 참조함으로써, 계속적인 동적성이 확보된다.
본 발명은, 특히, 음성 회의 시스템 및 비디오 회의 시스템에 있어서 사용할 목적으로(다만, 이것으로 한정되지 않음), 데이터를 복수의 노드 사이에서 네트워크를 경유해 수신 및 전송하는 멀티캐스트 통신 방법 및 장치에 적용할 수 있다.
160 ALM 노드
162 프로세서
164 입력/출력(I/O) 유니트
166 메모리유니트
168 스토리지 유니트
502 ALM 테이블 생성 유니트
504 ALM 믹싱 유니트
506 ALM 믹싱 전송(AMF) 테이블 데이터베이스
508 믹싱 호프 길이(MHL) 테이블 데이터베이스
510 분산형 ALM 믹싱 스테이터스(DAMS) 테이블 데이터베이스
512 믹싱 호프 길이(MHL) 분석기
514 분산형 ALM 믹싱 스테이터스(DAMS) 테이블 생성기
532 강제 믹싱 유니트
552 라우팅 엔진
554 전송 유니트
562 ALM 메시지 처리 유니트
568 선택적 믹싱 유니트
600 AMF 테이블
700 MHL 테이블
800 DAMS 테이블

Claims (12)

  1. 데이터의 송신원 노드 및 송신처 노드를 포함하고 있는 경로 정보에 따라, 복수의 노드 사이에서 네트워크를 경유해, 상기 테이터를 수신 및 전송하는 멀티캐스트 통신 방법으로서,
    제1 노드에 있어서 제1 데이터 및 제2 데이터를 수신하는 스텝과,
    상기 제1 데이터 및 상기 제2 데이터를 상기 경로 정보에 따라 다음 송신처 노드에 전송하는 스텝과,
    상기 제1 데이터의 제1 호핑수와 상기 제2 데이터의 제2 호핑수에 기초하여, 상기 제1 노드에 있어서 상기 제1 데이터를 상기 제2 데이터와 믹스할 지를, 결정하는 결정 스텝
    을 구비하고,
    상기 제1 데이터의 상기 제1 호핑수가, 상기 제1 데이터의 상기 송신원 노드와 상기 제1 데이터의 상기 다음 송신처 노드 사이의 노드 수로서 정의되고, 상기 제2 데이터의 상기 제2 호핑수가, 상기 제2 데이터의 상기 송신원 노드와 상기 제2 데이터의 상기 다음 송신처 노드 사이의 노드 수로서 정의되는, 멀티캐스트 통신 방법.
  2. 제1항에 있어서,
    상기 제1 노드에 있어서 상기 제1 데이터를 상기 제2 데이터와 믹스할지를 결정하는 상기 결정 스텝은,
    상기 제1 호핑수 및 상기 제2 호핑수의 양쪽이 0보다 클 때에, 상기 제1 노드에 있어서 상기 제1 데이터를 상기 제2 데이터와 믹스하지 않는 것을 결정하는 스텝을 더 포함하고 있는, 멀티캐스트 통신 방법.
  3. 복수의 노드 사이에서 네트워크를 경유하여 데이터를 수신 및 전송하는 멀티캐스트 통신 장치로서,
    상기 데이터를 송신원 노드로부터 수신하는 수신 수단과,
    상기 데이터의 상기 송신원 노드 및 송신처 노드를 포함하고 있는, 상기 데이터의 경로 정보를 저장하고 있는 라우팅 테이블과,
    상기 라우팅 테이블의 상기 경로 정보에 따라, 상기 데이터를 다음 송신처 노드에 전송하는 전송 수단과,
    전송되는 상기 데이터의, 상기 송신원 노드로부터 상기 다음 송신처 노드까지의 호핑수를 포함하고 있는 호프 길이 테이블과,
    다른 노드로부터 수신되는 데이터의 믹싱 처리를 실행하는 믹싱 처리 수단
    을 구비하고 있으며,
    상기 믹싱 처리 수단은, 상기 호프 길이 테이블에 있어서의 상기 호핑수에 따라 상기 믹싱 처리를 실행하는, 멀티캐스트 통신 장치.
  4. 제3항에 있어서,
    상기 경로 정보는, 상기 데이터의 라우팅 순서를 더 포함하고 있으며,
    상기 호핑수는, 상기 송신원 노드와 상기 다음 송신처 노드 사이의 상기 노드 수로서 정의되는, 멀티캐스트 통신 장치.
  5. 제4항에 있어서,
    상기 호프 길이 테이블은, 상기 복수 노드의 각각에 대해서 작성되고, 상기 송신원 노드 및 상기 다음 송신처 노드의 모든 조합에 대해서 상기 호핑수를 결정하는, 멀티캐스트 통신 장치.
  6. 제4항 또는 제5항에 있어서,
    상기 호프 길이호프 길이, 상기 데이터의 믹싱을 실행할지 말지에 관한, 상기 다음 송신처 노드 각각에 대한 스테이터스 정보를 구비하고 있으며,
    상기 믹싱 처리 수단은, 상기 스테이터스 정보에 따라 상기 믹싱 처리를 실행하는, 멀티캐스트 통신 장치.
  7. 제6항에 있어서,
    상기 전송수단은, 상기 다음 송신처 노드 1개에 대한 상기 스테이터스 정보가 전송 처리를 나타내고 있을 경우, 상기 다음 송신처 노드 중 1개에 대해서, 상기 믹싱 처리 수단에 있어서의 상기 믹싱 처리를 실행하지 않고 전송 처리를 실행하는, 멀티캐스트 통신 장치.
  8. 제7항에 있어서,
    상기 다음 송신처 노드 중 1개에 대해 0이외의 복수의 상기 호핑수가 존재할 경우에, 상기 다음 송신처 노드 중 상기 1개에 대한 상기 스테이터스 정보는 전송 처리를 나타내는, 멀티캐스트 통신 장치.
  9. 제6항 내지 제8항 중 어느 한 항에 있어서,
    상기 스테이터스 정보가 믹싱 처리를 나타내고 있을 경우,
    상기 믹싱 처리 수단은, 상기 믹싱 처리를 실행하고,
    상기 전송 수단은, 상기 믹싱 처리 수단에 있어서 믹스된 믹스 데이터를, 상기 다음 송신처 노드에 전송하는, 멀티캐스트 통신 장치.
  10. 제6항 내지 제9항 중 어느 한 항에 있어서,
    상기 스테이터스 정보가 재생 처리를 나타내고 있을 경우,
    상기 수신 수단에 있어서 수신된 상기 데이터는, 믹싱 처리도 전송 처리도 되지않고 재생되는, 멀티캐스트 통신 장치.
  11. 컴퓨터 가독 매체에 저장되어 있는 프로그램으로서, 컴퓨터에, 청구항 1에 기재된 상기 멀티캐스트 통신 방법을 실행시키는 프로그램.
  12. 실행가능한 멀티캐스트 통신 프로그램을 저장하고 있는 컴퓨터 가독 매체로서, 상기 멀티캐스트 통신 프로그램에 의해, 컴퓨터가,
    제1 노드에 있어서 제1 데이터 및 제2 데이터를 수신하는 스텝과,
    상기 제1 데이터 및 상기 제2 데이터를 경로 정보에 따라 다음 송신처 노드에 전송하는 스텝과,
    상기 제1 데이터의 호핑수와 상기 제2 데이터의 제2 호핑수에 기초하여, 상기 제1 노드에 있어서 상기 제1 데이터를 상기 제2 데이터와 믹스할지를 결정하는 스텝
    을 실행하고,
    상기 제1 데이터의 상기 제1 호핑수가, 상기 제1 데이터의 상기 송신원 노드와 상기 제1 데이터의 상기 다음 송신처 노드 사이의 노드 수로서 정의되고, 상기 제2 데이터의 상기 제2 호핑수가, 상기 제2 데이터의 상기 송신원 노드와 상기 제2 데이터의 상기 다음 송신처 노드 사이의 노드로서 정의되는, 컴퓨터 가독 매체.
KR1020107029161A 2009-03-18 2009-12-18 데이터를 복수의 노드간에서 네트워크를 경유하여 수신 및 전송하는 멀티캐스트 통신 방법 및 장치 KR101248712B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16118309P 2009-03-18 2009-03-18
US61/161,183 2009-03-18
PCT/JP2009/007012 WO2010106608A1 (en) 2009-03-18 2009-12-18 Multicast communication method and apparatus for receiving and forwarding data via a network among a plurality of nodes

Publications (2)

Publication Number Publication Date
KR20110013524A true KR20110013524A (ko) 2011-02-09
KR101248712B1 KR101248712B1 (ko) 2013-03-28

Family

ID=42110074

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107029161A KR101248712B1 (ko) 2009-03-18 2009-12-18 데이터를 복수의 노드간에서 네트워크를 경유하여 수신 및 전송하는 멀티캐스트 통신 방법 및 장치

Country Status (6)

Country Link
US (1) US8472441B2 (ko)
EP (1) EP2409456B1 (ko)
JP (1) JP5026601B2 (ko)
KR (1) KR101248712B1 (ko)
CN (1) CN102077508B (ko)
WO (1) WO2010106608A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5355222B2 (ja) * 2009-05-25 2013-11-27 パナソニック株式会社 パス設定装置およびパス設定方法
US9277021B2 (en) * 2009-08-21 2016-03-01 Avaya Inc. Sending a user associated telecommunication address
KR20120065611A (ko) * 2010-12-13 2012-06-21 한국전자통신연구원 절전형 라우팅 정보를 이용한 라우터 장치 및 라우터 장치의 라우팅 방법
WO2014047863A1 (en) * 2012-09-28 2014-04-03 Hewlett-Packard Development Company, L. P. Generating a shape graph for a routing table
US9577918B2 (en) 2012-11-19 2017-02-21 Cray Inc. Increasingly minimal bias routing
CN102984063A (zh) * 2012-12-24 2013-03-20 中国地质大学(武汉) 一种物联网中轻量级的安全路由方法及系统
CN105227454B (zh) * 2014-06-18 2019-02-26 中兴通讯股份有限公司 虚拟路由系统及方法
JP6365763B2 (ja) * 2015-03-16 2018-08-01 株式会社リコー 管理システム、通信システム、及び通信制御プログラム並びに通信制御方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0169663A1 (en) * 1984-06-23 1986-01-29 Michael James Sampson Prevention of plant damage by environmental hazards
CA2403772C (en) 2000-03-31 2008-12-23 Robert Andrew Shipman Network routing and congestion control
JP4535661B2 (ja) 2002-03-18 2010-09-01 日本電気株式会社 無線マルチホップネットワークにおける送信ノード、中継ノード及び通信システム
US7149678B2 (en) * 2002-03-28 2006-12-12 Microsoft Corporation High level executable network abstract machine
US20030223562A1 (en) 2002-05-29 2003-12-04 Chenglin Cui Facilitating conference calls by dynamically determining information streams to be received by a mixing unit
US7325071B2 (en) 2002-06-04 2008-01-29 Lucent Technologies Inc. Forwarding traffic in a network using a single forwarding table that includes forwarding information related to a plurality of logical networks
JP2004178236A (ja) * 2002-11-27 2004-06-24 Hitachi Ltd 分散型コミュニケーションシステム
US7418454B2 (en) * 2004-04-16 2008-08-26 Microsoft Corporation Data overlay, self-organized metadata overlay, and application level multicasting
JP2006074132A (ja) 2004-08-31 2006-03-16 Matsushita Electric Ind Co Ltd マルチキャスト通信方法及びゲートウェイ装置
US7460495B2 (en) * 2005-02-23 2008-12-02 Microsoft Corporation Serverless peer-to-peer multi-party real-time audio communication system and method
CN100399744C (zh) * 2005-04-30 2008-07-02 腾讯科技(深圳)有限公司 一种实现群组聊天的方法
US20070121632A1 (en) 2005-11-28 2007-05-31 Arabella Software, Ltd. Method and system for routing an IP packet
KR100733828B1 (ko) * 2006-02-20 2007-07-02 인천대학교 산학협력단 애드혹 네트워크에서의 멀티캐스트 라우팅 방법 및 주소할당 방법
US7379450B2 (en) * 2006-03-10 2008-05-27 International Business Machines Corporation System and method for peer-to-peer multi-party voice-over-IP services
KR20060054250A (ko) * 2006-04-21 2006-05-22 한국정보통신대학교 산학협력단 멀티캐스트 교환 장치 및 이를 이용한 멀티캐스트 데이터패킷 전송 방법
CN101207537A (zh) * 2006-12-22 2008-06-25 中兴通讯股份有限公司 无线自组织网络中寻找稳定路径的方法
US7693939B2 (en) * 2007-05-07 2010-04-06 Microsoft Corporation Context-based routing in multi-hop networks
JP4901594B2 (ja) 2007-06-11 2012-03-21 日本電信電話株式会社 光ファイバ線路網試験システム及び光ファイバ線路網試験方法
JP5058135B2 (ja) * 2008-02-08 2012-10-24 パナソニック株式会社 端末装置
US9240214B2 (en) * 2008-12-04 2016-01-19 Nokia Technologies Oy Multiplexed data sharing

Also Published As

Publication number Publication date
WO2010106608A1 (en) 2010-09-23
US20100238925A1 (en) 2010-09-23
CN102077508B (zh) 2013-06-19
CN102077508A (zh) 2011-05-25
EP2409456B1 (en) 2013-07-17
KR101248712B1 (ko) 2013-03-28
US8472441B2 (en) 2013-06-25
EP2409456A1 (en) 2012-01-25
JP2011524651A (ja) 2011-09-01
JP5026601B2 (ja) 2012-09-12

Similar Documents

Publication Publication Date Title
KR101248712B1 (ko) 데이터를 복수의 노드간에서 네트워크를 경유하여 수신 및 전송하는 멀티캐스트 통신 방법 및 장치
US8009671B2 (en) Multicast method and multicast routing method
JP4365393B2 (ja) 等価コストマルチパスマルチキャスト配信構造の形成のための方法,システム及びデバイス
KR101278843B1 (ko) 다자간 오디오-비디오 컨퍼런싱을 위한 애플리케이션-레벨라우팅 프로토콜의 방법, 컨퍼런싱 엔진 및 시스템
US6947434B2 (en) Subgroup multicasting in a communications network
US8270395B2 (en) Forming multicast distribution structures using exchanged multicast optimization data
Jia A scalable multicast source routing architecture for data center networks
SG186514A1 (en) Terminal apparatus and n-tree construction method
US10389618B2 (en) Distributing network path information in a network environment
CN103609064B (zh) 具备服务质量支持的协议无关组播
Civanlar et al. Peer-to-peer multipoint videoconferencing on the Internet
CN103609063A (zh) 协议无关组播最后一跳路由器发现
RU2611990C1 (ru) Способ групповой передачи пакетов через программно-конфигурируемые сети
Luo et al. A multiparty videoconferencing system over an application-level multicast protocol
Leal et al. New Approach to Inter‐domain Multicast Protocols
US11329907B2 (en) Establishing a multicast flow path through a network using multicast resources currently associated with a different multicast flow path
CN115550326B (zh) 一种利用虚拟会议实现多方会议级联的方法及系统
Chang et al. Multiparty videoconferencing using IP multicast
Godoi et al. Control evaluation in a LVoD system based on a peer-to-peer multicast scheme
Funabiki et al. Compact tree plus algorithms for application-level multicast communications in multihome networks
Alrabiah et al. Delay-bounded Online Multicasting
Shan et al. Border Media Gateway: Extending Multimedia Multicast Gateway to Support Inter-AS Conferencing
Nadeau et al. NXG03-2: Any Source Implicit Multicast (ASIMcast)
Al-Begain et al. A decentralised-control protocol for Source Specific Multicast
Mukhopadhyay Analysis of Multicast Based Overlay on Wireless Networks

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee