KR20070012678A - 멀티미디어 통신 및 협업 시스템 및 프로토콜 - Google Patents
멀티미디어 통신 및 협업 시스템 및 프로토콜 Download PDFInfo
- Publication number
- KR20070012678A KR20070012678A KR1020067022300A KR20067022300A KR20070012678A KR 20070012678 A KR20070012678 A KR 20070012678A KR 1020067022300 A KR1020067022300 A KR 1020067022300A KR 20067022300 A KR20067022300 A KR 20067022300A KR 20070012678 A KR20070012678 A KR 20070012678A
- Authority
- KR
- South Korea
- Prior art keywords
- routing server
- time routing
- real time
- real
- bandwidth
- Prior art date
Links
- 230000006854 communication Effects 0.000 title claims abstract description 39
- 238000004891 communication Methods 0.000 title claims abstract description 39
- 238000000034 method Methods 0.000 claims abstract description 102
- 230000008569 process Effects 0.000 claims abstract description 66
- 238000012545 processing Methods 0.000 claims abstract description 64
- 238000011144 upstream manufacturing Methods 0.000 claims description 21
- 230000003068 static effect Effects 0.000 claims description 18
- 230000001934 delay Effects 0.000 claims description 3
- 238000005259 measurement Methods 0.000 claims description 3
- 238000012546 transfer Methods 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 24
- 238000010586 diagram Methods 0.000 description 10
- 230000008859 change Effects 0.000 description 4
- 235000008694 Humulus lupulus Nutrition 0.000 description 3
- 230000009471 action Effects 0.000 description 3
- 101100236764 Caenorhabditis elegans mcu-1 gene Proteins 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 241000699670 Mus sp. Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000002465 magnetic force microscopy Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011112 process operation Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/141—Systems for two-way working between two video terminals, e.g. videophone
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/028—Dynamic adaptation of the update intervals, e.g. event-triggered updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/121—Shortest path evaluation by minimising delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/403—Arrangements for multi-party communication, e.g. for conferences
- H04L65/4038—Arrangements for multi-party communication, e.g. for conferences with floor control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/56—Arrangements for connecting several subscribers to a common circuit, i.e. affording conference facilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/15—Conference systems
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
본 발명은 네트워크를 통해 멀티미디어 세션을 라우팅 및 프로세싱하는 실시간 라우팅 서버를 포함하는 시스템에 관한 것이다. 시스템은 또한 네트워크를 통해 멀티미디어 통신 세션을 관리하기 위한 그룹 서버를 포함한다. 그룹 서버는 라우팅 서버에 연결된다. 시스템은 또한 네트워크를 통해 멀티미디어 통신 세션을 스케줄링하고 처리하는 다수의 엔드포인트 프로세싱 장치를 포함한다. 다수의 엔드포인트 프로세싱 장치는 라우팅 서버 및 그룹 서버에 결합된다. 프로토콜은 네트워크의 토폴로지를 결정하고, 대역폭을 예약하고, 미디어 프로세싱 리소스를 예약하고, 최상의 루트를 탐색하고, 멀티미디어 데이터를 전달 및 프로세싱하기위해 최상의 실시간 라우팅 서버를 포함한다.
Description
본 발명의 실시예는 멀티미디어 통신 세션 및 협업을 위한 시스템 및 프로토콜에 관한 것이다. 특히, 본 발명의 실시예는 멀티미디어 사용자가 실시간으로 인터넷 프로토콜("IP") 네트워크를 통해 고품질의 화상, 오디오, 이미지, 텍스트, 및 문서에 의해 서로 통신하게 하는 시스템 및 프로토콜에 관한 것이다.
다수 사용자 및 멀티미디어 통신은 실시간으로 오랫동안 도전적 기술적 문제를 가지고 있다. 가장 간단한 방법은 도1에 도시된 바와 같이, 각각의 사용자가 모든 다른 사용자에게 미디어 데이터(예를 들어, 화상, 오디오, 이미지, 텍스트 및 문서)를 전송하는 것이다.
이러한 종래 기술의 사용자의 메시 접속은 각각의 사용자가 다수의 사용자로부터 상이한 미디어를 수신해야 하고, 각각의 사용자가 동일한 미디어 데이터를 다수의 사용자에게 전송해야 하므로 매우 높은 대역폭을 필요로 한다. 네트워크에서 데이터 트래픽의 전체 대역폭은 사용자의 수에 따라 빠르게 증가할 것이다. 각각의 사용자 터미널의 필요한 프로세싱 전력은 사용자의 수에 따라 증가할 것이다. 따라서, 다수의 사용자들의 이러한 메시 접속은 통상적으로 바람직하지 않다.
도2의 종래 기술의 화상 회의는 모든 사용자에 대한 중앙 접속 포인트로서 다중 포인트 제어 유닛("MCU")을 사용함으로써 이러한 문제를 해결하려고 한다.
대역폭을 절약하기 위해, MCU는 모든 사용자로부터의 엔코딩된 화상 비트스트림을 수신하고, 이들을 디코딩하고, 모든 또는 선택된 수의 화상 시퀀스를 하나의 화상 시퀀스로 믹싱하고, 결합된 화상 시퀀스를 엔코딩하고, 및 단일 비트스트림을 각각의 사용자에게 개별적으로 전송한다. 다수의 화상 시퀀스를 믹싱하는데 있어서, 통상적으로 소정의 입력 화상 시퀀스의 해상도는 결합된 화상 시퀀스를 소정의 해상도로 일치시키기 위해 감소되어야 한다. 예를 들어, 만일 사용자1, 사용자2, 및 사용자3이 자신의 화상에 대해 CIF(Common INtermediate Format)를 이용하고, 사용자4, 사용자5 및 사용자6이 자신의 화상을 위해 QCIF(Quarter CIF)를 이용하면, 첫 번째 세 명의 화상 해상도는 352×288 픽셀이며, 나머지 세 명의의 화상 해상도는 176×144 픽셀이다. 처음부터 4개의 화상 시퀀스가 통상적으로 단일 CIF 화상 시퀀스로 믹싱된다고 가정하면, 처음부터 세 개의 화상 시퀀스의 해상도는 이들이 출력 화상 시퀀스로 네 번째의 화상과 결합되기 전에 CIF에서 QCIF로 감소된다. 도3은 이러한 예에 대한 프로세싱을 도시한다. 어떤 화상 시퀀스가 서로 믹싱될 지의 선택은 통상적으로 다른 음성 활성 선택("VAS") 또는 의장 제어에 의해 행해진다. 전술한 예에서, 만일 VAS가 사용되면, 화상 회의에서 4개의 가장 큰 음성과 관련한 4개의 화상 시퀀스가 믹싱을 위해 선택된다. 만일 의장 제어가 선택되면, 사용자 중 하나가 의장으로서 지정되며, 이러한 사용자는 어던 화상 시퀀스가 서로 믹싱될 지를 결정할 수 있다.
단일 MCU의 사용의 경우, 사용자의 수는 MCU의 대역폭 및 프로세싱 전력이 사용자의 수에 따라 증가하므로 통상적으로 제한된다. 다수의 사용자가 이용하는 많은 수의 동시 화상 회의를 제어하기 위해, 종래 기술에서, 다수의 MCU가 도4에 도시된 바와 같이 캐스캐이딩된다. 통상의 화상 회의 시스템에서, 화상 콜이 사용자들 사이에서 적절한 MCU를 통해 행해질 수 있도록 다른 것들 사이에서 사용자가 어떤 MCU에 접속하고 어떻게 MCU가 캐스캐이딩되는 지의 정보를 유지하는 게이트 키퍼가 통상적으로 존재한다. 각각의 MCU에 대해, 다른 MCU에 대한 접속은 통상적으로 다른 사용자에 대한 접속과 동일하게 처리된다. 예를 들어, 만일 화상 회의가 MCU1상에 3명, MCU2상에 2명, MCU3상에 2명, 및 MCU4상에 3명의 사용자가 포함되면, 각각의 개별 MCU는 자신 고유의 로컬 화상을 믹싱하여, 믹싱된 화상을 자신의 이웃한 MCU에 단일 화상 비트 스트림으로서 전송한다. 이는 사용자1.1로부터의 화상이 MCU1, MCU3 및 MCU4상에서 3개의 화상 믹서들을 통해 사용자4.1F로 전송되는 것을 의미한다.
이러한 종래 기술의 캐스캐이딩된 MCU 화상 회의 시스템의 문제 중 하나는 트기 IP 네트워크 상에서의 종단 지연이다. 우선, 각각의 MCU상의 화상 프로세싱은 지연을 초래한다. 둘째로, 각각의 MCU는 통상적으로 다수의 비디오 시퀀스를 디코딩 및 믹싱하기 전에 도달을 위해 모든 관련된 화상 패킷을 대시해야 한다. 또한 송신 지연이 존재한다. 따라서, 전체 종단 지연은 때때로 사용자가 실시간 양방향 통신을 하기에는 너무 길 수도 있다. 통상적으로 지연의 정도는 소정의 두 종단 사이의 전달 경로에서 캐스캐이드된 MCU의 수에 따라 증가한다.
따라서, 통상의 종래 기술의 화상 회의 시스템의 일 단점은 많은 사용자들을 조정할 능력이 없다는 것이다. 종래 기술의 비디오 화상의 다른 단점은 통상적으로 사용자당 비용이 상대적으로 높다는 것이다. 또 다른 단점은 사용자 및 캐스캐이드된 MCU의 수가 증가할 때, 호 셋업의 복잡성이 매우 높고 신속하게 될 수 있다는 것이다.
본 발명의 시스템은 네트워크를 통해 멀티미디어 세션을 라우팅 및 프로세싱하는 실시간 라우팅 서버를 포함한다. 시스템은 또한 네트워크를 통해 멀티미디어 통신 세션을 관리하기 위한 그룹 서버를 포함한다. 그룹 서버는 라우팅 서버에 결합된다. 시스템은 또한 네트워크를 통해 멀티미디어 통신 세션을 스케줄링하고 처리하는 다수의 엔트 포인트 처리 장치를 포함한다. 다수의 엔드포인트 프로세싱 장치는 라우팅 서버 및 그룹 서버에 연결된다.
본 발명의 방법은 네트워크의 토폴로지를 결정하는 것에 관한 것이다. 네트워크를 통해 멀티미디어 통신 세션을 라우팅 및 프로세싱하는 실시간 라우팅 서버를 위한 각각의 어드레스가 그룹 서버로부터 획득된다. 정적 이웃 설정(static neighbor configuration)이 세팅된다. 동적 이웃 설정은 실시간 라우팅 서버 사이의 각각의 경로에 대한 서비스 레벨의 품질, 경로에 따른 홉 카운트, 실시간 라우팅 서버 사이의 대역폭 용량, 및 실시간 라우팅 서버 사이의 공통 경로 트래픽에 대한 서비스 레벨의 품질에 기초하여 결정된다.
본 발명의 방법은 대역폭 및 미디어 프로세싱 리소스를 예약하는 것에 대해 개시된다. 리소스 실시간 라우팅 서버에 대한 미디어 프로세싱 리소스가 멀티미디어 통신 세션을 결합시키기 위해 충분한 지에 대한 체크가 행해진다. 다중 실시간 라우팅 서버를 포함하는 멀티미디어 통신 세션에 대해, 예약 요청은 소스 실시간 라우팅 서버로부터 모든 수신지 실시간 라우팅 서버로 전송된다. 소스 실시간 라우팅 서버로부터 수신지 실시간 라우팅 서버로의 경로에 대한 성공적인 대역폭 예약의 통지에 대한 체크가 행해진다. 수신지 실시간 라우팅 서버에 대한 성공적인 미디어 프로세싱 리소스 예약의 통지에 대한 체크가 행해진다.
네트워크에서 대역폭을 예약하는 방법이 개시된다. 첫 번째 실시간 라우팅 서버에서, 대역폭 예약 요청이 업스트림 실시간 라우팅 서버로부터 수신된다. 목적지 실시간 라우팅 서버로의 적어도 하나의 다운스트림 경로가 충분한 대역폭을 갖는지에 대한 결정이 행해진다. 만일 첫 번째 실시간 라우팅 서버가 중계 실시간 라우팅 서버이고 수신지 실시간 라우팅 서버가 아닌 경우, 대역폭 예약 요청은 충분한 대역폭을 가진 다운스트림 이웃 실시간 라우팅 서버로 전송되고 사용자 카운트는 그대로 유지된다. 만일 첫 번째 실시간 라우팅 서버가 수신지 전용 실시간 라우팅 서버이거나, 수신지 및 중계 실시간 라우팅 서버인 경우, 대역폭은 첫 번째 실시간 라우팅 서버와 업스트림 이웃 실시간 라우팅 서버 사이의 경로에 대해 예약된다. 만일 첫 번째 실시간 라우팅 서버가 중계 실시간 라우팅 서버뿐만 아니라 수신지 실시간 라우팅 서버일 경우, 대역폭 예약 요청은 충분한 대역폭을 갖는 다운스트림 이웃 실시간 라우팅 서버로 전송되며, 사용자 카운트는 하나씩 증가된다.
본 발명의 다른 특징 및 장점은 첨부된 도면 및 상세한 설명으로부터 명백하게 될 것이다.
본 발명의 실시예는 예로써 설명되며 첨부된 도면에 한정되지 않으며, 동일한 참조 번호는 유사한 구성을 나타낸다.
도1은 종래 기술의 메시 네트워크를 나타낸다.
도2는 단일 멀티포인트 제어 유닛을 갖는 종래 기술의 화상 회의 시스템을 나타낸다.
도3은 다중 포인트 제어 유닛에서 4개의 화상 시퀀스를 하나로 믹싱하는 종래 기술의 예를 도시한다.
도4는 종래 기술의 화상 시스템에서 캐스캐이딩된 다중 포인트 제어 유닛을 도시한다.
도5는 그룹 서버, 멀티미디어 애플리케이션 라우팅 서버, 및 엔드포인트 장치를 포함하는 시스템의 실시예를 도시한다.
도6은 멀티미디어 애플리케이션 라우팅 서버의 블록도이다.
도7은 멀티미디어 애플리케이션 라우팅 서버의 시스템 제어 모듈의 블록도이다.
도8은 멀티미디어 애플리케이션 라우팅 서버의 멀티미디어 기능 모듈의 블록도이다.
도9는 자동 토폴로지 프로토콜("ATP")의 흐름도이다.
도10은 자동 토롤로지 프로토콜의 일부로서 동적 이웃 멀티미디어 애플리케 이션 라우팅 서버를 찾는 방법의 흐름도이다.
도11은 호 승인 제어, 대역폭의 예약, 및 진보된 서비스 라우팅 프로토콜("ASRP")의 일부로서 새로운 사용자에 대한 미디어 프로세싱 리소스의 예약의 흐름도이다.
도12는 진보된 서비스 라우팅 프로토콜의 일부로서 대역폭 및 호 승인 제어를 예약하는 방법의 흐름도이다.
도13은 최대 2개의 멀티미디어 애플리케이션 라우팅 서버를 포함하는 화상 프로세싱 방식을 도시한다.
도14는 멀티미디어 애플리케이션 라우팅 서버를 포함하는 화상을 프로세싱하는 택일적 방식을 도시한다.
본 발명의 실시예는 통상적인 종래 기술의 화상이 갖는 문제점을 해결하고 실시간 멀티미디어 통신 및 협업을 위한 기능을 부가하는 것을 돕는다. 본 발명의 실시예의 시스템 구조의 컴포넌트는 멀티미디어 데이터를 라우팅 및 프로세싱할 수 있는 멀티미디어 애플리케이션 라우팅 서버("MARS")이다. MARS 유닛은 또한 실시간 라우팅 서버로도 언급된다. 시스템의 다른 컴포넌트는 엔드포인트("EP") 및 그룹 서버("GS")를 포함한다. 엔드포인트는 또한 엔드포인트 프로세싱 유닛으로도 언급된다.
도5는 실시간 멀티미디어 통신 및 협업을 제공하는 시스템(50)을 도시한다. 시스템(50)은 4개의 MARS 유닛(61-64)을 갖는 시스템의 예이다. 실시간 라우팅 서 버(61-64)는 네트워크를 통해 그룹 서버(70)에 결합된다. MARS 유닛(61-64) 및 그룹 서버(70)는 또한 네트워크를 통해 엔드포인트 프로세싱 장치(11-15, 21-24, 31-32, 및 41-46)에 결합된다. 시스템(50)의 모든 컴포넌트-MARS 유닛(61-64), 그룹 서버(70), 및 EP 장치(11-15, 21-24, 31-32, 및 41-46)-는 인터넷 프로토콜("IP") 네트워크에 결합되고 이들의 IP 어드레스에 의해 식별된다. 택일적으로, 다른 타입의 네트워크 및 다른 타입의 어드레싱이 사용된다.
다른 실시예의 경우, 다소의 MARS 장치, 그룹 서버 및 EP 장치는 멀티미디어 통신 및 협업 시스템(50)의 일부일 수 있다. 예를 들어, 하나의 MARS 장치, 하나의 그룹 서버, 및 몇몇 EP 장치일 수 있다. 다른 예로써, 10 MARS 유닛, 하나의 그룹 서버, 및 45 EP 프로세싱 장치일 수 있다.
시스템(50)의 사용자는 엔드포인트 프로세싱 정치(11-15, 21-24, 31-32 및 41-46)와 상호작용한다. 시스템(50)은 엔드포인트 프로세싱 장치의 사용자가 최소의 지연으로 화상을 실시간으로 전송하게 한다. 따라서, 사용자는 통신 및 협업할 수 있다. 실시간 화상 외에도, 시스템(50)은 또한 사용자가 최소의 지연으로 실시간 화상을 전송하게 한다. 시스템(50)은 또한 사용자가 이미지, 텍스트, 및 문서와 같은 다른 디지털 정보를 전송하게 한다. 따라서, 사용자는 시스템(50)을 사용하는 각각의 다른 사용자와 실시간 멀티미디어 통신 세션을 구축할 수 있다.
시스템(50)의 각각의 사용자는 그룹 서버 데이터 베이스로 레지스터링되고 사용자 이메일 어드레스에 의해 식별된다. 세션을 처리하기 위해, 사용자는 엔드포인트와 관련되고, 엔드포인트는 MARS와 관련되며, MARS는 그룹 서버와 관련된다.
그룹 서버(70)는 시스템(50)의 네트워크를 통해 멀티미디어 통신 세션을 관리한다. 그룹 서버(70)에서, 몇몇 소프트웨어 프로세스는 사용자의 그룹 내의 모든 통신 세션을 관리하고 그룹 전역에서 세션을 처리하기 위한 다른 그룹 서버와 정보를 교환하는 것을 실행한다. 일 실시예의 경우, 그룹 서버(70)는 리눅스 운영 시스템을 이용한다. 그룹 서버(70)에서 실행하는 소프트웨어 프로세스는 프로비져닝(provisioning) 서버, 웹 서버 및 멀티미디어 협업 및 달력 관리와 관련한 프로세스를 포함한다.
MARS 장치의 기능은 두 개의 큰 영역으로 나누어진다. 하나는 미디어 데이터를 라우팅하는 것이고, 다른 하나는 미디어 데이터를 프로세싱하는 것이다. 정적 데이터 경로가 통상적으로 시스템의 설정시 결정되는 통상적인 종래 기술의 화상 회의 시스템의 소정의 종래 기술의 캐스캐이딩 MCU와 다르게, MARS는 동적으로 미디어 데이터를 소스로부터 수신지로 가장 짧은 지연을 갖고 전달하기 위해 충분한 대역폭을 갖는 최상의 경로를 찾는다. 또한, 화상이 소스로부터 수신지까지의 경로를 따라 모든 MCU에서 프로세싱될 통상의 종래 기술의 화상 회의 시스템에서 소정의 종래 기술의 캐스캐이딩 MCU와 다르게, 시스템(50)의 구조는 비디오 프로세싱이 화상 소스로부터 소정의 주어진 수신지로 최대 두 MARS 유닛에서 실행되는 것을 보장한다.
최상의 미디어 경로를 찾는 기술은 이러한 목적을 위해 특별히 한정된 두 프로토콜을 포함한다. 하나는 자동 토폴로지 프로토콜("ATP")이고 다른 하나는 진보된 서비스 라우팅 프로토콜("ASRP")이다. ATP는 모든 MARS가 자신의 이웃 및 그 이웃과의 접속 대역폭을 인식하도록 MARS 유닛들 사이의 시스템 토폴로지를 통신하도록 사용된다. ATP는 네트워크 상의 새로운 MARS가 존재하고 시스템 구성에서 변화기 있을 때마다 사용된다. ASRP는 가장 짧은 지연 경로가 MARS 유닛으로부터 자신의 수신지로 전송될 미디어 패킷에 대해 결정되도록 모든 MARS가 ATP 정보를 사용하게 하고 동적으로 데이터 지연에 대해 자신의 이웃을 조사하게 한다.
도6은 멀티미디어 애플리케이션 라우팅 서버(61)의 블록도이며 실시간 라우팅 서버(61)로도 언급된다. MARS 유닛(61)은 시스템 제어 모듈("SCM")(90) 및 미디어 기능 모듈("MFMs")(110, 120 및 130)을 포함한다. 미디어 기능 모듈(110, 120, 130)은 또한 다중 기능 모듈로서 언급된다. 시스템 제어기 모듈(90) 및 미디어 기능 모듈(110, 120 및 130)은 백플레인 모듈("BPM") 이더넷 스위치(140)에 결합된다. 택일적으로 다른 타입의 스위치가 사용될 수 있다.
본 발명의 일 실시예의 경우, BPM 이더넷 스위치(140)는 캘리포니아, 어바인의 Broadcom Corporation에 의해 제공된 모델 BCM 5646 이더넷 스위치이다. 전력 공급기(150)는 이더넷 스위치(140) 및 다른 컴포넌트에 결합된다. 백플레인 모듈 이더넷 스위치(140)는 차례로 이더넷 프로토콜 네트워크(160)에 결합된다.
시스템 제어기 모듈(90)은 시스템 제어기 유닛(SCU)(92) 및 미디어 기능 유닛(MFU)(102)를 포함한다. 미디어 기능 유닛(110)은 미디어 기능 유닛(112 및 114)을 포함한다. 미디어 기능 유닛(120)은 미디어 기능 유닛(122 및 124)을 포함한다. 미디어 기능 유닛(130)은 미디어 기능 유닛(132 및 134)을 포함한다. 미디어 기능 유닛(102, 112, 114, 122, 124, 137 및 134)은 또한 다기능 유닛으로 언급 된다.
MARS(61)의 구조는 고속 멀티미디어 및 화상 프로세싱을 제공한다. 본 발명의 일 실시예의 경우, MARS(61)는 대략 초당 120,000 백만 명령(MIPS)의 벤치마크 속도를 갖는다. MARS(61)은 네트워크에 대한 라우터 및 서버로서 동작한다. MARS(61)의 구조는 대용량 저장소가 아닌 고속 실시간 화상 및 멀티미디어 프로세싱에 대해 조정된다. 따라서, MARS 유닛(61)은 실시간 비디오 통신 및 협업 세션을 허용한다.
도7은 시스템 제어 모듈(90)의 블록도이며, 이는 시스템 제어 유닛(92) 및 미디어 기능 유닛(102)을 포함한다. 시스템 제어 유닛(92)은 실시간 라우팅 서버(61)를 제어한다. 시스템 제어 유닛(92)은 일리노이즈 샤움버그의 모토롤라 주식회사에 의해 제공된 PowerPC®마이크로프로세서(172)를 포함한다. PowerPC®마이크로프로세서(172)는 컴팩트 플래시 카드(182)에 결합된다. 컴팩트 플래시 카드는 마이크로프로세서(172)에 대한 리눅스 운영 시스템을 포함한다. 컴팩트 플래시 카(182)는 개인용 컴퓨터에서 하드 디스크 드라이브와 유사한 방식으로 동작한다. 마이크로프로세서(172)는 또한 동기식 DRAM("SDRAM") 메모리(174)에 결합된다. 메모리(174)는 마이크로프로세서(172)에 의한 실행을 위해 코드 및 데이터를 유지시킨다. 본 발명의 일 실시예의 경우, 메모리(174)는 32 메가바이트의 크기이다. 택일적 실시예의 경우, 메모리(174)는 32메가바이트보다 작거나 클 수 있다.
PowerPC 마이크로프로세서(172)는 PCI 버스(184)를 통해 디지털 신호 처리기 ("DSP")에 결합된다. 일 실시예의 경우, DSP(176)는 텍사스 달라스의 Texas Instruments Inc에 의해 제공된 모델 TMS320C6415 DSP이다. DSP(176)는 시스템 제어기 유닛(92)을 위한 미디어 프로세싱 리소스이다. 디지털 신호 처리기(176)는 32메가바이트 SDRAM 메모리(178)에 결합된다. 택일적 실시예는 더 크거나 더 작은 메모리(178)를 갖는다.
PowerPC마이크로프로세서(172)는 라인(186)을 통해 이더넷 스위치(140)에 결합된다. 이더넷 스위치(140)는 차례로 네트워크(160)에 결합된다. 미디어 기능 유닛(102)은 32메가바이트 SDRAM 메모리(204)에 결합된 PowerPC®마이크로프로세서(202)를 포함한다.
PowerPC마이크로프로세서(202)는 PCI 버스(206)에 결합된다. PCI 버스(206)는 차례로 디지털 신호 처리기(208 내지 211)에 결합된다. 각각의 디지털 신호 처리기(208 내지 211)는 텍사스 달라스의 Texas Instruments Inc에 의해 제공된 모델 TMS320C6415 DSP이다. 디지털 신호 처리기(208)는 SDRAM 메모리(220)에 결합된다. 디지털 신호 처리기(209)는 SDRAM 메모리(221)에 결합된다. 디지털 신호 처리기(210)는 SDRAM 메모리(222)에 결합된다. 디지털 신호 처리기(211)는 SDRAM 메모리(223)에 결합된다. 일 실시예의 경우, 각각의 SDRAM 메모리(220 내지 223)는 32메가바이트 메모리를 포함한다.
PowerPC 마이크로프로세서(202)는 또한 라인(230)을 통해 이더넷 스위치에 결합된다.
도8은 미디어 기능 유닛(112 및 114)을 포함하는 미디어 기능 모듈(110)의 블록도를 포함한다. 미디어 기능 유닛(112)은 SDRAM 메모리(282)의 32메가바이트에 결합된 PowerPC마이크로프로세서(280)를 포함한다. PowerPC마이크로프로세서는 PCI 버스(310)에 결합된다. PowerPC마이크로프로세서는 또한 라인(308)을 통해 이더넷 스위치(140)에 결합된다.
PC 버스(310)는 차례로 디지털 신호 처리기(291 내지 294)에 결합된다. 디지털 신호 처리기(291)는 32메가바이트 SDRAM 메모리(300)에 결합된다. 디지털 신호 처리기(292)는 32메가바이트 SDRAM 메모리(301)에 결합된다. 디지털 신호 처리기(293)는 32메가바이트 SDRAM 메모리(302)에 결합된다. 디지털 신호 처리기(294)는 32메가바이트 SDRAM 메모리(303)에 결합된다.
미디어 기능 유닛(114)은 미디어 기능 유닛(112)과 유사하다. 미디어 기능 유닛(114)는 SDRAM 메모리(242)에 결합된 PowerPC마이크로프로세서(240)를 포함한다. PowerPC마이크로프로세서(240)는 라인(278)을 통해 이더넷 스위치(140)에 결합된다. PowerPC마이크로프로세서(240)는 또한 PCI 버스(250)에 결합된다.
PCI 버스(250)는 차례로 디지털 신호 처리기(261 내지 264)에 결합된다. 디지털 신호 처리기(261)는 메모리(270)에 결합된다. 디지털 신호 처리기(262)는 메모리(271)에 결합된다. 디지털 신호 프로세서(263)는 메모리(272)에 결합된다. 디지털 신호 프로세서(264)는 메모리(273)에 결합된다. 각각의 메모리(270 내지 273)는 32메가바이트 SDRAM 메모리이다. 택일적 실시예의 경우, 다른 크기의 메모리가 사용될 수 있다.
도6에 도시된 미디어 기능 모듈(120 및 130)은 미디어 기능 모듈(110)과 유사하다.
MARS(61)는 미디어 데이터를 라우팅하고 미디어 데이터를 프로세싱할 수 있다. 디지털 신호 처리기(261 내지 264)와 같은 MARS(61)의 디지털 신호 처리기는 디지털 미디어 프로세싱 리소스로서 동작한다. MARS(61)의 시스템 제어 유닛(92)은 미디어 데이터를 라우팅하는데 사용된다.
최상의 미디어 경로를 탐색하는 기술은 이러한 목적을 위해 특별히 한정된 두 프로토콜을 포함한다. 프로토콜을 실행하기 위한 프로그램은 시스템 제어 유닛(92)의 컴팩트 플래시 메모리(182)에 저장되며, 마이크로프로세서(72)에 의해 실행된다. 프로토콜 중 하나는 자동 토폴로지 프로토콜("ATP")이다. 다른 프로토콜은 진보된 서비스 라우팅 프로토콜("ASRP")이다.
ATP 프로토콜은 모든 MARS 유닛이 그 이웃을 인식하고 MARS 유닛의 이웃을 통해 소정의 수신지 MARS로 미디어 패킷을 전송하기 위한 라우팅 테이블을 갖도록 MARS 유닛(61) 사이의 시스템(50) 토폴로지와 통신하도록 사용된다. ATP 프로토콜은 네트워크 상에 새로운 MARS가 있거나, 시스템(50) 구조에 변경이 있는 경우, 시스템(50) 토폴로지를 체크하기 위해 주기적으로 사용된다.
ASRP 프로토콜은 모든 MARS 유닛이 ATP 정보를 이용하고 리소스 예약을 위해 MARS 유닛의 이웃과 동적으로 통신하게 한다. ASRP 프로토콜은 또한 MARS로부터 미디어 패킷의 수신지로 송신될 미디어 패킷을 위한 최상의 루트를 탐색하는데 사용된다.
따라서, ATP 및 ASRP 프로토콜은 멀티미디어 통신 및 협업 세션을 세팅 및 처리하는데 사용된다.
MARS 유닛(61)의 시스템 제어 유닛(92)의 마이크로프로세서(172)는 ATP 및 ASRP 프로토콜을 실행하는데 사용된다. 시스템 제어 유닛(92) 및 미디어 기능 유닛(102, 112, 114,122, 124, 132 및 134)에서 디지털 신호 처리기가 미디어 프로세싱 태스크를 실행하기 위해 사용된다.
ATP 프로토콜은 이웃한 MARS 유닛을 탐색하기 위해 MARS 유닛을 위해 몇몇 메카니즘을 이용한다. 이웃의 정의는 몇몇 속성을 포함한다. 이러한 속성은 하나의 MARS로부터 다른 MARS까지의 경로를 따르는 IP 라우터(홉)의 수, MARS 유닛 사이의 지연, 두 MARS 유닛 사이의 대역폭 용량, 두 MARS 유닛 사이의 이용 트래픽, 및 소정의 관리 정책을 포함한다.
만일 소스 MARS 유닛 및 수신지 MARS 유닛이 서로 이웃이 아닌 경우, 소스 MARS 유닛으로부터의 미디어 트래픽은 수신지 MARS 유닛에 좀 더 인접한 이웃 MARS 유닛에 전송된다. 이웃 MARS 유닛은 아마도 다른 이웃 MARS 유닛을 통해, 수신지 MARS 유닛으로 트래픽을 전달한다.
시스템(50)의 네트워크 토폴로지를 한정하는 소정의 속성은 자동으로 검색된다. 예를 들어, IP 루트 정보 및 정책 기반 제한은 몇몇 표준 라우팅 프로토콜을 통해 검색된다. 이러한 표준 라우팅 프로토콜은, 라우터로부터 루트 정보를 조회하기 위해 최단 경로 우선 프로토콜("OSPF"), 보더 게이트웨이 프로토콜("BGP"), 라우팅 정보 프로토콜("RIP"), 및 인터넷 제어 메시지 프로토콜("ICMP"); MPLS 환 경에서 서비스 레벨 승인("SLA")으로 명확한 루트를 요청하기 위해 트래픽 엔지니어링을 갖는 리소스 예약 프로토콜("RSVP-TE") 또는 다른 표준 멀티 프로토콜 라벨 스위칭("MPLS") 네트워크 프로토콜; 및 광학 네트워크에 대한 SLA로 명확한 경로를 요청하기 위해 광학 인터넷워킹 포럼의 사용자 네트워크 인터페이스("OIF-UNI") 프로토콜을 포함한다.
만일 MARS 유닛이 신흥 EFM(Ethernet in the First Mile) 네트워크 또는 메트로 이더넷 기반 구조의 L2 이더넷 기반 가상 사설망("VPN")과 같은 소정의 다른 네트워크에서 사용되면, 상이한 프로토콜이 상기 네트워크의 SLA를 이용하여 명확한 루트를 요청하도록 사용된다.
소정의 두 MARS 유닛 사이의 지연을 측정하기 위해, 네트워크 시각 프로토콜("NTP")은 두 MARS 유닛 사이의 로컬 시각을 동기화시키기 위해 사용되고, 시각 샘플링된 패킷이 측정을 위해 두 MARS 유닛 사이에서 전송될 수 있다.
소정의 두 MARS 유닛 사이의 대역폭 용량을 측정하기 위해, 패킷 분산 기술이 사용될 수 있다.
ATP 프로토콜 실행의 최종 결과는 이웃 정보를 포함하는 각각의 MARS 유닛에 대한 라우팅 테이블이다. 타이머는 시스템(50) 구조에 변화가 있는지를 알아보기 위해 주기적으로 ATP 동작을 트리거하기 위해 사용될 수 있다. 라우팅 테이블에서, 하나의 MARS 유닛으로부터 다른 MARS 유닛으로의 다중 경로가 허락되며, 실제 라우팅 경로가 동적으로 결정된다.
도9는 ATP 프로토콜 동작의 흐름도이다. ATP 프로토콜은 동작(350)에서 시 작한다. 동작(532)에서, 시스템(50) 내의 모든 MARS 유닛의 IP 어드레스는 그룹 서버(70)로부터 획득된다.
동작(354)은 정적 이웃 구성이 사용되는지를 체크한다. 정적 이웃 구성은 MARS 유닛의 이웃을 설명하는 수동으로 네트워크 관리자에 의해 설정된 구조이다. 만일 정적 이웃 구조가 사용되지 않으면, 동작(358)에서 어떠한 정적 이웃도 설정되지 않는다.
만일 정적 이웃 구조가 설정되면, 동작(356)에서 정적 MARS 이웃이 설정되고 MARS 이웃이 통보된다.
동작(360)은 정적 MARS 이웃 통보가 다른 MARS 유닛으로부터 수신되는지를 알아보기 위한 체크이다. 만일 없으며, 프로세스 흐름은 동적 MARS 이웃을 탐색하는 동작(364)으로 진행한다. 그러나 만일 MARS 유닛이 다른 MARS 유닛으로부터 정적 이웃 통보를 수신하면, 프로세스는 동작(362)으로 진행한다. 동작(362)은 정적 이웃으로서 MARS 유닛 통보를 수용한다. 동작(362) 이후의 다음 동작은 동작(364)이며, 이는 동적 MARS 유닛 이웃을 탐색한다. 동적 이웃을 탐색하기 위한 동작(364)은 도10과 관련하여 이하에서 후술된다.
도9에 도시된 바와 같이, 동작(364) 이후의 다음 동작은 라우팅 테이블을 결정하기 위한 동작(368)이다. 다음 동작은 동작(372)인데, 이는 인적 검색이 네트워크 구성에 대해 사용되었는지에 대한 조회이다. 만일 인적 검사가 사용되면, 흐름은 동작(370)으로 진행하는데, 이는 정적 이웃 구성이 변경되는지에 대한 체크이다. 만일 정적 이웃 구성이 변경되면, 흐름은 다시 동작(356)으로 진행하는데, 이 는 정적 이웃을 세팅하고 정적 이웃을 통보한다. 만일 정적 이웃 구성이 변경되지 않으면, 흐름은 동작(374)으로 진행한다. 만일 동작(372)에서 어떠한 인적 검사도 없으면, 흐름은 동작(374)으로 진행한다.
동작(374)은 ATP 프로토콜을 다시 실행할 시간인지 또는 새로운 MARS 유닛이 네트워크에 부가되었는지를 문의한다. 만일 ATP를 다시 실행할 시간이거나 새로운 MARS 유닛이 시스템 또는 네트워크에 부가되면, 흐름은 동작(360)으로 진행하는데, 이는 정적 이웃 통보가 다른 MARS 유닛으로부터 수신되었는 지를 알기 위한 체크이다. 만일 ATP를 다시 실행할 시간이 아니거나 새로운 MARS 유닛이 네트워크에 부가되지 않으면, 동작(374)은 가능하게는 타이머로 세팅된 이후의 시간에 반복된다.
도10은 ATP 프로토콜의 일부로서 동적 이웃을 탐색하는 프로세스(364)의 흐름도이다. 프로세스(364)는 리더 MARS 유닛이 로컬 영역 네트워크에 대한 MARS 유닛의 클러스터에 대해 필요한 지를 체크하기 위해 동작(402)에서 시작한다. 만일 리더 MARS 유닛이 요구되지 않으면, 흐름은 동작(404)으로 진행한다. 동작(404)에서, 라우터, 대역폭, 지연, 및 현재 MARS 유닛과 모든 다른 후보 MARS 유닛 사이의 서비스의 품질에 대한 정보가 획득된다.
만일 동작(402)이 리더 MARS 유닛이 LAN 상의 MARS 유닛의 클러스터를 위해 요구되면, 프로세스는 동작(406)으로 진행하는데, 여기서 체크는 현재의 MARS 유닛이 클러스터 리더인지에 대해 행해진다. 만일 현재의 MARS 유닛이 클러스터 리더이면, 프로세스 흐름은 동작(404)으로 진행한다. 만일 동작(406)에서, 현재의 MARS 유닛이 클러스터 리더가 아니라고 결정되면, 프로세스 흐름은 동작(412)으로 진행한다. 동작(412)에서, 동일한 클러스터의 모든 MARS 유닛은 이웃으로 지정되고, 모든 다른 MARS 유닛은 이웃이 아닌 것으로 지정된다. 동작(412) 이후, 프로세스 흐름은 라우팅 테이블을 결정하기 위해 도9의 동작(362)으로 진행한다.
도10에 도시된 바와 같이, 동작(404)의 완료 후, 프로세스 흐름은 동작(408)으로 진행하는데, 여기서 적절한 서비스 라우터의 품질을 갖지 않는 모든 경로가 거절된다.
프로세스 흐름은 동작(410)으로 계속되는데, 여기서 모든 후보 MARS 유닛이 거리 측정에 따라 정렬된다.
프로세스 흐름은 동작(414)으로 계속되며, 여기서 체크는 현재의 MARS 유닛과 후보 MARS 유닛 사이에 경로가 존재하는지에 대해 행해진다. 만일 대답이 아니오이면, 프로세스 흐름은 동작(418)으로 진행하는데, 이는 MARS 유닛이 도달가능하지 않다는 것을 나타낸다. 동작(418) 이후, 프로세스 흐름은 이하에 설명된 동작(432)으로 계속된다.
만일 동작(414)에서, 현재의 MARS 유닛과 후보 MARS 유닛 사이의 경로가 존재하는 것으로 결정되면, 프로세스 흐름은 동작(416)으로 계속된다. 동작(416)에서, 체크는 경로에 대한 지연 시간이 최대 지연 시간("Td")보다 작은지에 대해 행해진다. 동작(416)에서 체크가 또한 경로에 따른 IP 라우터의 수가 IP 라우터("Tr")의 최대 수보다 작은지에 대해 행해진다. 다시 말해, 체크는 경로에 따른 홉의 수가 최대 수의 홉보다 작은 지에 대해 결정된다. 만일 동작(416)에서 지연 및 홉 카운트가 각각의 최대치보다 작으면, 프로세스 흐름은 동작(420)으로 진행한 다. 그러나 만일 지연 또는 홉 카운트가 각각의 최대치를 초과하면, 프로세스 흐름은 동작(418)으로 진행하며, 여기서 후보 MARS 유닛은 도달 불가능한 것으로 라벨링된다.
동작(420)에서, 결정은 후보 MARS 유닛이 이웃 MARS 유닛과 공통 경로를 공유하는지에 대해 행해진다. 다시 말해, 동작(420)은 후보 MARS 유닛과 이웃 MARS 유닛 사이의 이용 트래픽을 체크한다. 만일 대답이 아니오이면, 프로세스 흐름은 동작(424)으로 진행한다. 만일 대답이 예이면, 프로세스 흐름은 동작(426)으로 진행한다.
동작(426)에서, 후보 MARS 유닛은 이웃 유닛이 아닌 것으로 라벨링된다. 동작(426)으로부터, 프로세스 흐름은 후술된 동작(432)으로 진행한다.
동작(424)에서, 후보 MARS 유닛은 이웃으로 통보된다. 프로세스 흐름은 동작(428)으로 이동하며, 여기서 후보 MARS 유닛은 가능한 이웃으로 라벨링된다.
다음 동작은 동작(432)이며, 여기서 체크가 MARS 유닛이 마지막 후보 MARS 유닛인지에 대해 행해진다. 만일 후보 MARS 유닛이 최종 후보 MARS 유닛이 아니면, 프로세스 흐름은 동작(422)에 의해 나타난 바와 같이, 다음 후보 MARS 유닛을 위한 동작(411)으로 진행한다.
만일 MARS 후보가 최종 후보 MARS이면, 흐름은 동작(434)으로 진행한다. 동작(434)에서, 통보 또는 통지가 모든 가능한 이웃으로부터 수신되었는지에 대해 체크가 행해진다. 만일 대답이 예이면, 동작(440)에서 모든 가능한 이웃이 이웃으로 설정된다. 만일 대답이 아니오이면, 동작(436)에서, 두 개 이상의 이웃 통보가 존 재하는지에 대한 조회가 행해진다. 만일 두 개 이상의 이웃 통보가 있다면, 동작(430)에서 이웃 통보는 후보로서 세팅되고 프로세스 흐름은 동작(410)으로 진행한다. 그러나 만일 동작(436)에서 두 개 이상의 이웃 통보가 없다면, 프로세스 흐름은 하나 또는 이웃이 없음을 나타내는 동작(438)으로 진행하고, 프로세스 흐름은 라우팅 케이블을 결정하기 위해 도9의 동작(368)으로 이동한다.
도11 및 12는 진보된 서비스 라우팅 프로토콜을 나타낸다. 일단 네트워크 토폴로지가 알려지면, 미디어 트래픽 라우팅은 최상 경로를 위해 표준의 세트에 따라 실행된다. ASRP 프로토콜은 두 목적을 위해 사용된다. 첫 번째 목적은 호 승인 제어("CAC")를 위한 대역폭 및 미디어 프로세싱 리소스를 탐색하고 승인된 사용자에 대한 리소스를 예약하는 것이다. CAC 메카니즘은 모든 승인된 통신 세션 및 사용자가 충분한 리소스를 가질 것을 보장하기 위해 사용된다. 성공적으로 처리 또는 조절될 수 없는 통신 세션 또는 사용자는 거절된다.
도11은 CAC에 대한 ASRP의 동작을 나타낸 흐름도이다. 각각의 MARS 유닛은 모든 등록된 통신 세션 참여자에 대한 각각의 통신 세션을 위한 데이터베이스를 유지한다. 각각의 엔드포인트에 대한 데이터베이스의 정보는 접속 대역폭, 계산 전력, 디스플레이 용량, IP 어드레스, 로그인 사용자 이름 및 ID(이메일 주소), 화상 디스플레이 레이아웃, 디트스트림의 리스트 등을 포함한다. 중간의 MARS 유닛에 대한 데이터베이스는 상기 MARS 유닛과 관련되지 않은 엔드포인트상의 정보를 유지하지 않는다. 이러한 정보에 기초하여, MARS 유닛은 어떤 종류의 동작을 상기 사용자에 대해 실행할 필요가 있는지를 결정한다. 따라서, MARS 유닛은 얼마나 많은 리소스가 세션을 결합시키기 위해 소정의 사용자에 대해 요구되는 지의 정보를 제공할 수 있다.
따라서, 도11은 진보된 서비스 라우팅 프로토콜의 일부인 호 승인 제어 절차의 흐름도이다. 도11은 승인된 사용자에 대한 대역폭 및 미디어 프로세싱 리소스를 예약하기 위한 흐름도이다. 도11의 흐름도는 만일 충분한 대역폭 및 미디어 프로세싱 리소스가 이용불가능하면, 새로운 사용자가 거절될 것을 나타낸다.
동작(502)에서, 새로운 사용자는 시스템(50)에 대한 통신 세션을 결합시키는 것을 요청한다. 동작(504)에서, 체크는 소스 MARS 유닛상의 디지털 신호 처리 리소스에 대해 행해진다. 이어 프로세스 흐름은 동작(506)으로 진행하며, 체크는 DSP 리소스가 충분하거나 충족되는지에 대해 행해진다. 만일 대답이 아니오이면, 동작(508)에서 새로운 사용자는 거절된다. 만일 대답이 예이면, 프로세스 흐름은 동작(510)으로 진행한다.
동작(510)에서, 체크는 MARS 세션이 단일 MARS 세션인 지에 대해 행해진다. 만일 대답이 예이면, 프로세스 흐름은 동작(518)으로 이동한다. 동작(518)에서, 새로운 사용자가 승인되고 DSP 리소스는 소스 MARS 유닛에 대해 예약된다. 만일 동작(510)에서 대답이 아니오이면, 프로세스 흐름은 동작(512)으로 진행한다.
동작(512)에서, 소스 MARS 유닛은 N 이웃을 통해 모든 수신지 MARS 유닛으로 예약 요청을 전송한다.
이어 프로세스는 동작(514)으로 이동한다. 동작(514)에서, 체크는 소스 MARS 유닛이 소스 MARS로부터 각각의 수신지 MARS 유닛으로의 경로에 대한 성공적 인 대역폭 예약에 대해 통보를 수신하는지에 대해 행해진다. 만일 대답이 예라면, 프로세스 흐름은 동작(516)으로 이동한다. 만일 대답이 아니오라면, 프로세스 흐름은 동작(522)으로 이동한다. 동작(522)에서, 새로운 사용자가 거절된다. 게다가, 동작(522)에서 모든 일시적인 대역폭 및 DSP 리소스 예약이 취소된다.
동작(516)에서, 체크는 소스 MARS 유닛이 모든 수신지 MARS 유닛으로부터의 성공적인 DSP 리소스 예약에 대해 통보를 수신하는 지에 대해 행해진다. 만일 대답이 아니오이면, 프로세스 흐름은 동작(522)으로 진행하는데, 여기서 새로운 사용자는 거절되고, 모든 일시적인 대역폭 및 DSP 리소스 예약은 취소된다. 만일 대답이 예라면, 새로운 사용자는 동작(520)에서 승인된다. 동작(520)에서, 소스 MARS 유닛 상의 DSP 리소스가 예약된다. 게다가, 동작(520)에서 모든 다른 대역폭 및 DSP 리소스 예약이 유지된다.
타이머는 네트워크 상의 소정의 다른 장치로부터의 통보 또는 통지의 수신에 의존하는 소정의 결정에서 사용된다. 만일 예상된 통보 또는 통지가 현재 시각에서 수신되지 않으면, 통보는 수신되지 않은 것으로 고려된다.
도12는 어떻게 MARS 유닛이 대역폭 예약의 성공 또는 실패를 결정하는 지의 세부 사항을 도시한다. 따라서, 도12는 ASRP 프로토콜의 두 번째 목적과 관련되며, 이는 소스로부터 수신지로의 각각의 송신에 대한 라우팅 경로를 동적으로 결정한다. 호 승인 제어 절차는 세션을 결합하기 위해 새로운 사용자에 대한 대역폭 및 DSP 리소스를 예약한다. 그럼에도 불구하고, 통신 세션에 있는 모든 사용자가 동일한 세션의 다른 사용자에게 능동적으로 미디어 데이터를 전송하는 것은 아니 다. 따라서, 도12의 ASRP 절차는 각각의 활성 사용자로부터 미디어 데이터에 대한 라우팅 경로를 시그널링하는데 사용된다. 따라서 도12의 흐름도는 호 승인 제어에 관련되지만, 또한 미디어 데이터에 대한 네트워크의 대역폭 예약에 관련된다.
도12에 도시된 바와 같이, 동작(602)에서, MARS 유닛은 통신 세션을 결합시키기 위해 새로운 사용자에 대한 MARS 유닛의 업스트림 이웃 중 하나를 통해 예약 요청을 수신한다. 프로세스 흐름은 동작(604)으로 진행한다. 동작(604)에서, 체크는 소정의 MARS 유닛에 대한 적어도 하나의 다운스트림 경로가 충분한 대역폭을 갖는지를 알기 위해 행해진다. 만일 대답이 아니오라면, 동작(606)에서, 대역폭 예약은 실패이다. 만일 대답이 예이면, 프로세스 흐름은 동작(608)으로 진행한다.
동작(608)에서, 체크는 MARS 유닛이 예정된 시간 주기 내에서 더 많은 업스트림 이웃으로부터의 동일한 예약 요청을 수신하는 지에 대해 행해진다. 만일 대답이 아니오이면, 프로세스 흐름은 동작(616)으로 진행하는데, 이는 후술된다. 만일 대답이 예이면, 프로세스 흐름은 동작(610)으로 진행한다. 동작(610)에서, 모든 이러한 업스트림 이웃으로부터의 사용 카운트의 비교가 행해진다. 사용 카운트는 각각의 MARS 유닛과 관련된다.
프로세스 흐름은 동작(610)으로부터 동작(612)으로 이동한다. 동작(612)에서, 체크는 이러한 업스트림 이웃들 중 하나만이 최대 사용 카운트를 갖는지에 대해 행해진다. 만일 대답이 예이면, 프로세스 흐름은 동작(616)으로 이동한다. 만일 대답이 아니오이면, 프로세스 흐름은 동작(614)으로 이동한다.
동작(614)에서, 선택은 예약 요청에 대한 가장 빠른 도달 시간을 갖는 업스 트림 이웃으로 구성된다. 이어 프로세스 흐름은 동작(616)으로 이동한다.
동작(616)에서, 체크는 현재의 MARS 유닛이 중계 전용 MARS 유닛인지에 대해 행해진다. 중계 전용 MARS 유닛은 미디어 데이터를 프로세싱하지 않고 미디어 데이터를 전달만(즉, 바이패스)하는 MARS 유닛이다. 미디어 데이터를 전달하고 미디어 데이터를 프로세싱하거나 하지 않는 통상의 중계 MARS 유닛과는 대조적이다. 만일 현재의 MARS 유닛이 중계 전용 MARS 유닛이면, 프로세스 흐름은 동작(620)으로 진행한다. 동작(620)에서, 예약 요청은 충분한 대역폭을 갖는 MARS 유닛 다운스트림 이웃에 전달된다. 게다가, 현재 MARS 유닛의 사용 카운트는 변경되지 않는다.
만일 현재의 MARS 유닛이 중계 전용 MARS 유닛이 아니면, 프로세스 흐름은 동작(616)에서 동작(618)으로 이동한다. 동작(618)에서, 경로는 현재의 MARS 유닛과 업스트림 이웃 사이에서 예약되며, 모든 다른 업스트림 이웃이 거절된다.
동작(618) 이후, 프로세스 흐름은 동작(622)으로 이동한다. 동작(622)에서, 체크는 MARS 유닛이 수신지 MARS 유닛 전용인지에 대해 행해진다. 만일 대답이 예이면, 단계(628)에서 추가로 행해지는 것은 없다. 그러나 만일 대답이 아니오이면, 이어 프로세스 동작(626)으로 이동한다. 동작(626)에서, MARS 유닛의 사용 카운트는 1씩 증가된다. 더욱이, 예약 요청은 충분한 대역폭을 갖는 다운스트림 이웃에 전달된다. 이어 프로세스 흐름은 동작(624)으로 이동한다.
동작(626 및 620) 이후, 프로세스 흐름은 동작(624)으로 이동한다. 동작(624)에서, 체크는 통보가 현재의 MARS 유닛으로부터 각각의 다운스트림 수신지 MARS 유닛으로 경로에 대해 성공적인 대역폭 예약에 대해 수신되었는지에 대해 행해진다. 만일 대답이 예이면, 프로세스 흐름은 동작(630)으로 이동한다. 동작(630)에서, 중계 MARS 유닛은 대역폭을 예약하기 위해 통보된다. 그러나 만일 대답이 아니오이면, 프로세스 흐름은 동작(632)으로 이동한다. 동작(632)에서, 대역폭 예약은 실패한다.
멀티미디어 통신 세션의 경우, 소정의 참여자가 수신지이다. 참여자와 관련된 MARS 유닛은 수신지 MARS 유닛이다. 데이터를 전송하는 통신 세션에서 능동적인 참여자는 소스일 것이다. 능동적인 참여자와 관계된 MARS 유닛은 소스 MARS 유닛일 것이다. 사용자와 MARS 유닛 사이의 관계는 그룹 서버(70)에 의해 결정되고 각각의 MARS 유닛으로 전달된다. 각각의 멀티미디어 통신 세션의 경우, 통신 세션을 모니터링하고 어떤 사용자가 소스인지를 결정하는 하나의 MARS 유닛이 있다. 이러한 MARS 유닛에서, 능동적인 참여자는 자동으로 결정되거나, 사용자에 의해 지정된다.
MARS 유닛 그 자체에서 결정되는, 데이트 프로세싱이 필요한 경우에만, 단지 소스 및 수신지 MARS 유닛이 미디어 데이터를 프로세싱할 것이다. 소스 MARS 유닛과 지정 MARS 유닛 사이의 데이터 스트림을 위해, 중계 MARS 유닛은 데이터를 프로세싱하지 않는다. 따라서 최대 두 개의 MARS 유닛이 소스 및 수신지 사이의 데이터 스트림을 위해 데이터를 프로세싱한다.
도13은 어떻게 시스템(50)의 구조가 소정의 수신지에 대해 소정의 소스가 두 MARS 유닛에서 최대로 프로세싱되는 것을 보장하는 지의 예이다. 이러한 예에서, MARS(702) 및 MARS(703)과 관련된 사용자에게 전송되어야 하는 MARS(701)과 관련된 3개의 화상 소스가 있다. 모든 3개의 입력 비디오 소스가 높은 비트 레이트를 갖는 것으로 가정하면, MARS(701)은 모든 3개의 입력 화상 비트스트림에 대해 더 낮은 비트 레이트로 변환 프로세싱을 실행한다. 화상1이 MARS(702)상의 사용자에 의해서만 요구되므로, 화상1은 두 번째 프로세싱에 대해 MARS(702)로 전송된다. 반면에, 화상2는 MARS(702) 및 MARS(703) 상에서 사용자에 의해 요구된다. 따라서, 비디오2 비트스트림은 MARS(702)와 관련된 사용자를 만족시키기 위해 두 번째 프로세싱에 대해 MARS(702)로 전송된다. 동시에, 화상2 비트스트림은 또한 MARS(702)를 바이패싱하고 MARS(703)과 관련된 사용자를 만족시키기 위해 두 번째 프로세싱에 대해 MARS(703)로 전송된다. 따라서, MARS(702)는 화상2 비트스트림을 통해 통과하기 위해 통상의 중계 MARS로서 동작한다. 끝으로, 화상3은 MARS(703)와 관련된 사용자에 의해서만 요구된다. 화상3 비트스트림은 MARS(702)을 바이패스하고 MARS(703)로 전송된다. 화상3 비트스트림은 추가의 프로세싱을 필요로 하지 않기 때문에, MARS(703)은 단순히 두 번째 프로세싱 없이 화상3을 사용자에게 바이패스(즉, 통과)시킨다.
MARS(702) 및 MARS(703)과 관련한 사용자에 대해 요구된 출력 화상2가 정확하게 동일한 경우, 도14에 도시된 바와 같이, 화상2의 프로세싱을 조절하는 택일적 방법이 가능하다. 차이점은 입력 화상2 비트스트림이 바이패스(즉, 중계) 라우팅 유닛이 아니라 MARS(702)의 프로세싱 유닛으로만 전송된다는 것이다. 프로세싱된 화상2 비트스트림은 MARS(703)으로 전송되고 어떠한 추가의 프로세싱도 MARS(703) 에 대해 요구되지 않는다. 따라서, MARS 유닛(703)은 중계 전용 MARS 유닛으로 동작한다. 이러한 택일적 방법의 장점은 이미 MARS(702)상에서 프로세싱된 동일한 화상2 출력에 대해 MARS(703)에서 프로세싱 동작을 절약하는 것이다. 이러한 택일적 방식의 단점은 소정의 비디오 소스에 대한 MARS(703)에 대한 프로세싱 리소스의 할당이 동일한 출력 화상이 동일한 화상 소스의 다른 수신지가 되는 것이 발생하는 중계 MARS 유닛과 관련한 사용자에 의해 요구되는 지에 대해 의존한다는 것이다.
EP 장치(도5의 11-15 ,21-24, 31-32, 및 41-46) 중 하나와 같은 EP 장치는 소프트웨어 터미널로서 동작하는 개인적 컴퓨터("PC")일 수 있다. EP 장치는 사용자 인터페이스 장치와 접속된 전용 하드웨어 장치일 수도 있다. EP 장치는 또한 PC 및 하드웨어 장치의 조합일 수도 있다.
EP 장치는 멀티미디어 통신 세션을 스케줄 및 처리하기 위해 인적 사용자에 대해 사용된다. EP 장치는 비디오 카메라, 오디오 마이크로폰, 포인팅 장치(예를 들어, 마우스), 키보드 같은 타이핑 장치, 및 모니터 상의 소정의 이미지/텍스트 디스플레이와 같은 사용자 인터페이스 장치로부터의 입력을 캡쳐링할 수 있다. EP 장치는 또한 PC 모니터, TV 모니터, 스피커 및 이어폰과 같은 사용자 인터페이스 장치로 출력을 전송할 수 있다.
EP 장치는 네트워크 대역폭 및 EP 장치의 컴퓨팅 전력에 따라 비디오, 오디오, 이미지, 및 텍스트를 인코딩한다. EP 장치는 인코딩된 데이터를 관련된 MARS로 전송한다. 동시에, EP 장치는 관련된 MARS로부터 코딩된 미디어 데이터를 수신한다. EP 장치는 데이터를 디코딩하고 디코딩된 데이터를 오디오에 대해서 이어폰 또는 스피커, 및 화상, 이미지, 및 텍스트를 디스플레이하기 위해서 PC 모니터와 같은 출력 장치로 전송한다. 미디어 데이터 외에, EP 장치는 또한 EP 장치 및 관련된 MARS 사이에서 송신된 통신 메시지를 프로세싱한다. 메시지는 모임을 스케줄링하고, 모임에 참여하고, 다른 사용자를 모임에 초대하고, 모임에서 빠져나가고, 호를 설정하고, 호에 대답하고, 호를 종료하고, 모임을 제어하고, 미팅 참여자의 화상 위치를 정렬하고, 버디 리스트 상태를 업데이트하고, MARS와의 네트워크 접속을 체킹하는 것 등을 포함한다.
실제로, 설명된 방법은 기계 판독 가능 명령으로 구성된 하나 이상의 프로그램을 구성할 수 있다. 흐름도를 참조한 방법의 설명은 기술 분야의 당업자가, 적절하게 구성된 컴퓨터 또는 다른 타입의 프로세싱 기계(기계 판독가능 미디어로부터 명령을 실행하는 기계의 프로세서)에 의해 제공된 동작(행위)를 실행하도록 상기한 명령을 포함하는 상기한 프로그램을 개발하게 한다. 기계 판독가능 명령은 컴퓨터 프로그래밍 언어에서 기록될 수 있거나, 펌웨어 로직에서 실행될 수도 있다. 인식된 표준에 적합한 프로그래밍 언어에서 기록되면, 상기한 명령은 다양한 하드웨어 플랫폼에 대해 그리고 다양한 운영 시스템에 인터페이스를 위해 실행될 수 있다. 게다가, 본 발명의 실시예는 소정의 특정한 프로그래밍 언어에 한정되지 않는다. 다양한 프로그래밍 언어는 본 발명의 실시예를 구현하는데 사용될 수도 있다. 더욱이, 하나의 형태 또는 다른 형태(즉, 프로그램, 절차, 프로세스, 애플리케이션, 모듈, 로직 등)인 소프트웨어를 동작을 취하거나 결과를 초래하는 것으로 이야기 하는 것이 기술분야에서 통상적이다. 이러한 표현은 동작을 실행하거나 결과를 생성하게 하는 기계에 의해 소프트웨어의 실행을 언급하는 표준 방식이다. 다소의 프로세스가 본 발명의 사상을 벗어나지 않고 설명된 방법에 포함되며, 어떠한 특정한 순서가 도시되고 설명한 블록의 배열에 의해 제한되지 않는다.
본 발명의 실시예가 설명되었다. 그러나 본 발명의 광의적 사상을 벗어나지 않고 다양한 변경 및 변화가 행해질 수 있음이 명백하다. 설명과 도면은 결론적으로 제한적인 성격이 아니라 설명을 위한 것이다.
Claims (22)
- 네트워크를 통해 멀티미디어 통신 세션들을 라우팅 및 프로세싱하는 실시간 라우팅 서버;상기 네트워크를 통해 상기 멀티미디어 통신 세션들을 관리하며, 상기 라우팅 서버에 연결된 그룹 서버; 및상기 네트워크를 통해 멀티미디어 통신 세션들을 스케줄링 및 처리하며, 상기 라우팅 서버 및 상기 그룹 서버에 연결된 다수의 엔드포인트 프로세싱 장치들을 포함하는,시스템.
- 제1항에 있어서,상기 네트워크는 인터넷 프로토콜(IP) 네트워크이며, 상기 라우팅 서버, 상기 그룹 서버 및 상기 다수의 엔드포인트 프로세싱 장치 각각은 식별을 위한 개별 IP 어드레스를 갖는 것을 특징으로 하는 시스템.
- 제1항에 있어서,상기 실시간 라우팅 서버는 최단 지연 경로를 동적으로 결정하기 위해 동적 루트 프로세싱 회로를 포함하는 것을 특징으로 하는 시스템.
- 제1항에 있어서,중계 모드에서 상기 실시간 라우팅 서버는 상기 멀티미디어 통신 세션의 데이터를 프로세싱하지 않고 멀티미디어 통신 세션을 통해 통과할 수 있는 것을 특징으로 하는 시스템.
- 제1항에 있어서,다수의 엔드포인트 프로세싱 장치 중 하나의 엔드포인트 프로세싱 장치는 사용자에 의해 동작된 개인용 컴퓨터를 포함하는 것을 특징으로 하는 시스템.
- 제1항에 있어서,다수의 엔드포인트 프로세싱 장치 중 하나의 엔드포인트 프로세싱 장치는 전용 하드웨어 장치를 포함하는 것을 특징으로 하는 시스템.
- 네트워크의 토폴로지를 결정하는 방법으로서,그룹 서버로부터 상기 네트워크를 통해 멀티미디어 통신 세션들을 라우팅 및 프로세싱하도록 실시간 라우팅 서버에 대한 각각의 어드레스들을 획득하는 단계;정적 이웃 구성을 세팅하는 단계; 및실시간 라우팅 서버들 사이의 각각의 경로에 대한 서비스 레벨의 품질, 경로들을 따르는 홉 카운트, 실시간 라우팅 서버들 사이의 지연, 실시간 라우팅 서버들 사이의 대역폭 용량, 및 실시간 라우팅 서버들 사이의 공통 경로 트래픽에 기초한 동적 이웃 구성을 결정하는 단계를 포함하는,네트워크의 토폴로지를 결정하는 방법.
- 제7항에 있어서, 이웃 정보에 기초하여 라우팅 테이블을 형성하는 단계를 더 포함하는 것을 특징으로 하는 네트워크의 토폴로지를 결정하는 방법.
- 제7항에 있어서,상기 동적 이웃 구성은 네트워크 관리 정책에 추가로 기초하는 것을 특징으로 하는 네트워크의 토폴로지를 결정하는 방법.
- 제7항에 있어서,동적 이웃 구성을 결정하는 상기 동작은 새로운 실시간 라우팅 서버가 상기 네트워크에 부가될 때 반복되는 것을 특징으로 하는 네트워크의 토폴로지를 결정하는 방법.
- 제7항에 있어서,상기 동적 이웃 구성을 결정하는 단계는,실시간 라우팅 서버들 사이의 각각의 경로에 대한 서비스 레벨의 품질, 경로들을 따르는 홉 카운트, 실시간 라우팅 서버들 사이의 지연, 실시간 라우팅 서버들 사이의 대역폭 용량, 및 실시간 라우팅 서버들 사이의 공통 경로 트래픽과 관련한 정보를 획득하는 단계;서비스 요구의 품질을 충족시키지 않는 모든 경로를 거절하는 단계;경로들을 따르는 홉 카운트들을 포함하는 거리 측정에 따른 후보 실시간 라우팅 서버들을 정렬하는 단계;제1 실시간 라우팅 서버와 후보 실시간 라우팅 서버 사이의 경로가 존재하는 지를 결정하는 단계;상기 제1 실시간 라우팅 서버와 상기 후보 실시간 라우팅 서버 사이의 지연이 최대 지연보다 작은 지를 결정하는 단계;상기 제1 실시간 라우팅 서버와 상기 후보 실시간 라우팅 서버 사이의 대역폭 용량이 최소 대역폭 용량보다 큰 지를 결정하는 단계; 및상기 후보 실시간 라우팅 서버가 이웃 실시간 라우팅 서버와 공통 경로를 공유하는 지를 결정하는 단계를 포함하는 것을 특징으로 하는 네트워크의 토폴로지를 결정하는 방법.
- 제11항에 있어서,경로가 있는지, 지연이 최대 지연보다 작은지, 대역폭 용량이 최소 대역폭 용량보다 큰지, 및 공통 경로가 공유되는 지를 결정하는 동작은 각각의 후보 실시간 라우팅 서버에 대해 반복되는 것을 특징으로 하는 네트워크의 토폴로지를 결정하는 방법.
- 제7항에 있어서,상기 네트워크는 인터넷 프로토콜(IP) 네트워크인 것을 특징으로 하는 네트워크의 토폴로지를 결정하는 방법.
- 대역폭 및 미디어 프로세싱 리소스들을 예약하는 방법으로서,소스 실시간 라우팅 서버상의 미디어 프로세싱 리소스들이 멀티미디어 통신 세션을 결합시키기 위해 사용자에 대해 충분한지를 체크하는 단계;다중 실시간 라우팅 서버들을 포함하는 멀티미디어 통신 세션에 대해, 상기 소스 실시간 라우팅 서버로부터 모든 수신지 실시간 라우팅 서버로 예약 요청들을 전송하는 단계;상기 소스 실시간 라우팅 서버로부터 수신지 실시간 라우팅 서버까지의 경로들에 대해 성공적인 대역폭 예약의 통보를 체크하는 단계; 및수신지 실시간 라우팅 서버들에 대해 성공적인 미디어 프로세싱 리소스 예약의 통보를 체크하는 단계를 포함하는,대역폭 및 미디어 프로세싱 리소스들을 예약하는 방법
- 제14항에 있어서,상기 소스 실시간 라우팅 서버는 성공적인 대역폭 예약 및 미디어 프로세싱 리소스들의 통보를 체크하는 것을 특징으로 하는 대역폭 및 미디어 프로세싱 리소스들을 예약하는 방법.
- 제14항에 있어서,상기 미디어 프로세싱 리소스들은 디지털 신호 프로세싱(DSP) 리소스들인 것을 특징으로 하는 대역폭 및 미디어 프로세싱 리소스들을 예약하는 방법.
- 제14항에 있어서,성공적인 대역폭 예약 및 성공적인 미디어 프로세싱 리소스 예약의 통보가 현재 시간 주기에 따라 수신되지 않는 경우, 상기 통보는 수신된 것으로 간주되지 않는 것을 특징으로 하는 대역폭 및 미디어 프로세싱 리소스들을 예약하는 방법.
- 네트워크에서 대역폭을 예약하는 방법으로서,제1 실시간 라우팅 서버에서 업스트림 실시간 라우팅 서버로부터 대역폭 예약 요청을 수신하는 단계;수신지 실시간 라우팅 서버로의 적어도 하나의 다운스트림 경로가 충분한 대역폭을 갖는 지를 결정하는 단계;만일 상기 제1 실시간 라우팅 서버가 중계 실시간 라우팅 서버이고 수신지 실시간 라우팅 서버가 아닌 경우, 충분한 대역폭을 갖는 다운스트림 이웃 실시간 라우팅 서버로 상기 대역폭 예약 요청을 전달하고 사용 카운트는 변경하지 않는 단계;만일 상기 제1 실시간 라우팅 서버가 수신지 전용 실시간 라우팅 서버 또는 수신지 및 중계 실시간 라우팅 서버인 경우, 상기 제1 실시간 라우팅 서버와 상기 업스트림 이웃 실시간 라우팅 서버 사이의 경로를 위한 대역폭을 예약하는 단계; 및만일 상기 제1 실시간 라우팅 서버가 중계 실시간 라우팅 서버일 뿐만 아니라 수신지 실시간 라우팅 서버인 경우, 충분한 대역폭을 갖는 다운스트림 이웃 실시간 라우팅 서버로 상기 대역폭 예약 요청을 전달하고 상기 사용 카운팅을 1씩 증가시키는 단계를 포함하는,네트워크에서 대역폭을 예약하는 방법.
- 제18항에 있어서,만일 대역폭 예약 요청이 다운스트림 이웃 실시간 라우팅 서버로 전달되면, 상기 제1 실시간 라우팅 서버로부터 상기 다운스트림 이웃 실시간 라우팅 서버까지의 경로에 대해 성공적인 대역폭 예약의 통보를 체크하는 단계를 포함하는 것을 특징으로 하는 네트워크에서 대역폭을 예약하는 방법.
- 네트워크에서 대역폭을 예약하는 방법으로서,제1 실시간 라우팅 서버에서 업스트림 실시간 라우팅 서버로부터 대역폭 예약 요청을 수신하는 단계;수신지 실시간 라우팅 서버로의 적어도 하나의 다운스트림 경로가 충분한 대역폭을 갖는 지를 결정하는 단계;예정된 시간 주기 내에서 대역폭 예약 요청을 전송하는 업스트림 이웃 실시간 라우팅 서버들로부터 업스트림 이웃 실시간 라우팅 서버를 선택하는 단계;만일 상기 제1 실시간 라우팅 서버가 중계 실시간 라우팅 서버이고 수신지 실시간 라우팅 서버가 아닌 경우, 충분한 대역폭을 갖는 다운스트림 이웃 실시간 라우팅 서버로 상기 대역폭 예약 요청을 전달하고 사용 카운트는 변경하지 않는 단계;만일 상기 제1 실시간 라우팅 서버가 수신지 전용 실시간 라우팅 서버 또는 수신지 및 중계 실시간 라우팅 서버인 경우, 상기 제1 실시간 라우팅 서버와 상기 선택된 업스트림 이웃 실시간 라우팅 서버 사이의 경로를 위한 대역폭을 예약하는 단계; 및만일 상기 제1 실시간 라우팅 서버가 중계 실시간 라우팅 서버일 뿐만 아니라 수신지 실시간 라우팅 서버인 경우, 충분한 대역폭을 갖는 다운스트림 이웃 실시간 라우팅 서버로 상기 대역폭 예약 요청을 전달하고 상기 사용 카운트를 1씩 증가시키는 단계를 포함하는,네트워크에서 대역폭을 예약하는 방법.
- 제20항에 있어서,업스트림 이웃 실시간 라우팅 서버들로부터 업스트림 이웃 실시간 라우팅 서버를 선택하는 단계는,만일 상기 예정된 시간 주기 내에서 대역폭 예약 요청을 전송하는 상기 업스 트림 이웃 실시간 라우팅 서버들 중 하나만이 최대 사용 카운트를 갖는 경우, 상기 업스트림 이웃 실시간 라우팅 서버를 선택하는 단계; 및만일 예정된 시간 주기 내에서 대역폭 예약 요청을 전송하는 두 개 이상의 상기 업스트림 이웃 실시간 라우팅 서버가 최대 사용 카운트를 가지면, 상기 대역폭 예약 요청에 대해 가장 이른 도달 시간을 갖는 업스트림 이웃 실시간 라우팅 서버를 선택하는 단계를 포함하는 것을 특징으로 하는 네트워크의 대역폭을 예약하는 방법.
- 제21항에 있어서,만일 대역폭 예약 요청이 다운스트림 이웃 실시간 라우팅 서버로 전달되면, 상기 제1 실시간 라우팅 서버로부터 상기 다운스트림 실시간 라우팅 서버까지의 경로에 대해 성공적인 대역폭 예약의 통보를 체크하는 단계를 포함하는 것을 특징으로 하는 네트워크에서 대역폭을 예약하는 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/810,791 | 2004-03-26 | ||
US10/810,791 US20050213557A1 (en) | 2004-03-26 | 2004-03-26 | Multimedia communication and collaboration system and protocols |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20070012678A true KR20070012678A (ko) | 2007-01-26 |
Family
ID=34961187
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020067022300A KR20070012678A (ko) | 2004-03-26 | 2005-02-24 | 멀티미디어 통신 및 협업 시스템 및 프로토콜 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20050213557A1 (ko) |
KR (1) | KR20070012678A (ko) |
CN (1) | CN1939032A (ko) |
GB (1) | GB2428163B (ko) |
TW (1) | TW200612702A (ko) |
WO (1) | WO2005104490A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9231985B2 (en) | 2012-09-25 | 2016-01-05 | Samsung Electronics Co., Ltd. | Source device, router and control method |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8095228B2 (en) * | 2004-05-27 | 2012-01-10 | Canon Kabushiki Kaisha | Data distribution apparatus, its control method, program, and storage medium |
US8379576B1 (en) * | 2004-12-03 | 2013-02-19 | Apple Inc. | Call admission control systems and methods for wireless networks |
US7441061B2 (en) * | 2005-02-25 | 2008-10-21 | Dynamic Method Enterprises Limited | Method and apparatus for inter-module communications of an optical network element |
US7734693B2 (en) * | 2005-12-29 | 2010-06-08 | Cisco Technology, Inc. | Methods and apparatuses for managing resources within a collaboration system |
US8116317B2 (en) * | 2006-01-31 | 2012-02-14 | Microsoft Corporation | Preventing quality of service policy abuse in a network |
US7929524B2 (en) | 2006-09-29 | 2011-04-19 | Cisco Technology, Inc. | Apparatus and method to hide transit only multi-access networks in OSPF |
US7979550B2 (en) | 2007-05-24 | 2011-07-12 | Sihai Xiao | Methods and apparatuses for adjusting bandwidth allocation during a collaboration session |
CN102428728B (zh) * | 2009-05-18 | 2015-05-06 | 瑞典爱立信有限公司 | 用于动态资源保留的方法和布置 |
JP5857443B2 (ja) * | 2011-05-12 | 2016-02-10 | ソニー株式会社 | コンテンツ共有システム |
CN102244763B (zh) * | 2011-06-24 | 2013-10-23 | 杭州华三通信技术有限公司 | 一种基于互控级联会议的呼叫连接建立方法和设备 |
CN102882833A (zh) * | 2011-07-12 | 2013-01-16 | 上海长江新成计算机系统集成有限公司 | 多媒体集成管理系统网络传输架构及其传输方法 |
CN102523165B (zh) * | 2011-12-23 | 2014-10-01 | 中山大学 | 一种适用于未来互联网的可编程交换机系统 |
CN102739517B (zh) * | 2012-05-25 | 2015-10-07 | 中国人民解放军国防科学技术大学 | 基于层叠网络的路由选择方法及系统 |
US8948001B2 (en) * | 2012-06-26 | 2015-02-03 | Juniper Networks, Inc. | Service plane triggered fast reroute protection |
CN104065682B (zh) * | 2013-03-21 | 2017-10-10 | 赛恩倍吉科技顾问(深圳)有限公司 | 资料传输方法 |
CN103327288A (zh) * | 2013-06-08 | 2013-09-25 | 青岛优视通网络有限公司 | 一种可穿越防火墙的视讯系统 |
US9762505B2 (en) | 2014-01-07 | 2017-09-12 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Collaborative route reservation and ranking in high performance computing fabrics |
GB2522661B (en) | 2014-01-31 | 2021-03-31 | Metaswitch Networks Ltd | Context configuration |
CN103974135B (zh) * | 2014-05-07 | 2016-02-24 | 广州骏视信息科技有限公司 | 一种视频分享方法及系统 |
US9602379B2 (en) * | 2014-07-21 | 2017-03-21 | Cisco Technology, Inc. | Real-time route selection based-on estimated transmission overhead |
CN107409197A (zh) * | 2015-03-16 | 2017-11-28 | 株式会社理光 | 通信控制装置、通信系统、通信控制程序和通信控制方法 |
CN106878659B (zh) | 2017-03-08 | 2019-11-29 | 威盛电子股份有限公司 | 视频会议系统以及服务器 |
US10986017B2 (en) * | 2018-08-23 | 2021-04-20 | Agora Lab, Inc. | Large-scale real-time multimedia communications |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7215663B1 (en) * | 1996-01-16 | 2007-05-08 | C2 Global Technologies, Inc. | Private IP communication network architecture |
JP3725424B2 (ja) * | 1998-08-31 | 2005-12-14 | 富士通株式会社 | サービス割り当て装置 |
US6418139B1 (en) * | 1998-11-25 | 2002-07-09 | Nortel Networks Limited | Mechanism to guarantee quality of service to real-time traffic on IP networks |
US6950407B1 (en) * | 2000-09-26 | 2005-09-27 | Mci, Inc. | Method and system for providing settlement of interconnected packet-switched networks |
GB0026482D0 (en) * | 2000-10-30 | 2000-12-13 | Siemens Plc | End-to-end voice over IP streams for telephone calls established via legacy switching systems |
US7299349B2 (en) * | 2002-01-31 | 2007-11-20 | Microsoft Corporation | Secure end-to-end notification |
US7215640B2 (en) * | 2002-07-11 | 2007-05-08 | Hitachi, Ltd. | Method and apparatus for path configuration in networks |
US7363230B2 (en) * | 2002-08-01 | 2008-04-22 | Yamaha Corporation | Audio data processing apparatus and audio data distributing apparatus |
-
2004
- 2004-03-26 US US10/810,791 patent/US20050213557A1/en not_active Abandoned
-
2005
- 2005-02-24 GB GB0618138A patent/GB2428163B/en not_active Expired - Fee Related
- 2005-02-24 WO PCT/US2005/006322 patent/WO2005104490A1/en active Application Filing
- 2005-02-24 KR KR1020067022300A patent/KR20070012678A/ko not_active Application Discontinuation
- 2005-02-24 CN CNA2005800098371A patent/CN1939032A/zh active Pending
- 2005-03-25 TW TW094109384A patent/TW200612702A/zh unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9231985B2 (en) | 2012-09-25 | 2016-01-05 | Samsung Electronics Co., Ltd. | Source device, router and control method |
Also Published As
Publication number | Publication date |
---|---|
GB2428163A (en) | 2007-01-17 |
US20050213557A1 (en) | 2005-09-29 |
CN1939032A (zh) | 2007-03-28 |
GB0618138D0 (en) | 2006-10-25 |
WO2005104490A1 (en) | 2005-11-03 |
GB2428163B (en) | 2008-01-23 |
TW200612702A (en) | 2006-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20070012678A (ko) | 멀티미디어 통신 및 협업 시스템 및 프로토콜 | |
KR100948317B1 (ko) | 클라이언트 사이의 세션을 위한 QoS 계약의 설정 능력을 제공하는 방법 및 시스템 | |
KR100964983B1 (ko) | 네트워크에 걸쳐서 화상회의 세션을 자동으로 개시하는 방법 및 시스템, 네트워크에 걸쳐서 화상회의 세션에 참가하기 위한 방법 및 네트워크에 걸쳐서 멀티캐스트 세션에 참가하기 위한 방법 | |
US20050226172A1 (en) | Video conference call set up | |
US8208003B2 (en) | Minimizing fast video update requests in a video conferencing system | |
KR20040104526A (ko) | 화상회의 시스템 아키텍처 | |
JP2014099862A (ja) | 遠隔会議用のマルチメディアストリームの効率的な伝送のための方法および装置 | |
KR20150001362A (ko) | 오픈플로우 환경에서의 멀티캐스트 트래픽을 처리하기 위한 장치 및 방법 | |
JP2003069563A (ja) | 多地点間会議方法及びシステム | |
Civanlar et al. | Peer-to-peer multipoint videoconferencing on the Internet | |
Delgrossi et al. | A Comparison with RSVP | |
CN114095308A (zh) | 多媒体会议质量的增强方法、装置、设备及存储介质 | |
Zuehlke et al. | Voting based bandwidth management in multiparty video conferences |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |