KR100960772B1 - 메시징 시스템을 갖는 비디오 컨퍼런스 애플리케이션사용자 인터페이스 - Google Patents

메시징 시스템을 갖는 비디오 컨퍼런스 애플리케이션사용자 인터페이스 Download PDF

Info

Publication number
KR100960772B1
KR100960772B1 KR1020047009109A KR20047009109A KR100960772B1 KR 100960772 B1 KR100960772 B1 KR 100960772B1 KR 1020047009109 A KR1020047009109 A KR 1020047009109A KR 20047009109 A KR20047009109 A KR 20047009109A KR 100960772 B1 KR100960772 B1 KR 100960772B1
Authority
KR
South Korea
Prior art keywords
video conference
video
client
server
participant
Prior art date
Application number
KR1020047009109A
Other languages
English (en)
Other versions
KR20040069328A (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 KR20040069328A publication Critical patent/KR20040069328A/ko
Application granted granted Critical
Publication of KR100960772B1 publication Critical patent/KR100960772B1/ko

Links

Images

Classifications

    • 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/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1104Session initiation protocol [SIP]
    • 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/1827Network arrangements for conference optimisation or adaptation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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/185Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • 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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • H04L47/805QOS or priority aware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5069Address allocation for group communication, multicast communication or broadcast communication
    • 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/1066Session management
    • H04L65/1083In-session procedures
    • 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/1066Session management
    • H04L65/1083In-session procedures
    • H04L65/1093In-session procedures by adding participants; by removing participants
    • 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/1066Session management
    • H04L65/1101Session protocols
    • 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/4038Arrangements for multi-party communication, e.g. for conferences with 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/75Media network packet handling
    • H04L65/752Media network packet handling adapting media to network capabilities
    • 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/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/56Arrangements for connecting several subscribers to a common circuit, i.e. affording conference facilities
    • H04M3/567Multimedia conference systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/006Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems

Abstract

원거리 통신망(WAN)에 걸쳐 있는 비디오 컨퍼런스 시스템의 재생 제어 시스템이 제공된다. 이 재생 제어 시스템은 서로 다른 해상도 및 프레임 레이트를 허용하는 다수의 디스플레이 윈도우를 갖는 사용자 인터페이스와, 개별적인 디스플레이 요구 사항에 따라 정책 및 QoS 관리자(210)와 함께 디스플레이 및 전송 특성을 관리하는 메시징 시스템을 포함한다.
비디오 컨퍼런스, 메시징 시스템, 사용자 인터페이스,

Description

메시징 시스템을 갖는 비디오 컨퍼런스 애플리케이션 사용자 인터페이스{VIDEOCONFERENCE APPLICATION USER INTERFACE WITH MESSAGING SYSTEM}
관련 출원의 상호 참조
본 출원은 여기에 인용함으로써 그 전체 내용이 본 명세서에 포함되는 것으로서 2001년 12월 15일자로 출원된 발명의 명칭이 "VIDEOCONFERENCE APPLICATION USER INTERFACE"(비디오 컨퍼런스 애플리케이션 사용자 인터페이스)인 미국 가특허출원 제60/341,801호(대리인 문서 번호 PU010311)을 우선권으로서 주장한 출원이다. 본 출원은 또한 여기에 인용함으로써 그 전체 내용이 본 명세서에 포함되는 것으로서 2001년 12월 15일자로 출원된 발명의 명칭이 "VIDEO CONFERENCING BANDWIDTH SELECTION MECHANISM"(비디오 컨퍼런싱 대역폭 선택 메카니즘)인 공동 양도된 미국 가특허출원 제60/341,720호와, 여기에 인용함으로써 그 전체 내용이 본 명세서에 포함되는 것으로서 2001년 12월 15일자로 출원된 발명의 명칭이 "QUALITY OF SERVICE SETUP ON A TIME RESERVATION BASIS"(시간 예약 기반의 서비스 품질 설정)인 공동 양도된 미국 가특허출원 제60/341,671호와, 여기에 인용함으로써 그 전체 내용이 본 명세서에 포함되는 것으로서 2001년 12월 15일자로 출원된 발명의 명칭이 "VIDEO CONFERENCING CALL SETUP METHOD"(비디오 컨퍼런싱 호 설정 방법)인 공동 양도된 미국 가특허출원 제60/341,797호와, 여기에 인용함으로써 그 전체 내용이 본 명세서에 포함되는 것으로서 2001년 12월 15일자로 출원된 발명의 명칭이 "VIDEOCONFERENCE SESSION SWITCHING FROM UNICAST TO MULTICAST"(유니캐스트에서 멀티캐스트로의 비디오 컨퍼런스 세션 전환)인 공동 양도된 미국 가특허출원 제60/341,800호와, 여기에 인용함으로써 그 전체 내용이 본 명세서에 포함되는 것으로서 2001년 12월 15일자로 출원된 발명의 명칭이 "METHOD AND SYSTEM FOR PROVIDING A PRIVATE CONVERSATION CHANNEL IN A VIDEOCONFERENCING SYSTEM"(비디오 컨퍼런싱 시스템에서 사적인 대화 채널을 제공하는 방법 및 시스템)인 공동 양도된 미국 가특허출원 제60/341,799호와, 여기에 인용함으로써 그 전체 내용이 본 명세서에 포함되는 것으로서 2001년 12월 15일자로 출원된 발명의 명칭이 "SERVER INVOKED TIME SCHEDULED VIDEO CONFERENCE"(서버 기동형 시간 예정된 비디오 컨퍼런스)인 공동 양도된 미국 가특허출원 제60/341,819호와, 여기에 인용함으로써 그 전체 내용이 본 명세서에 포함되는 것으로서 2002년 3월 20일자로 출원된 발명의 명칭이 "VIDEOCONFERENCE SYSTEM ARCHITECTURE"(비디오 컨퍼런스 시스템 아키텍처)인 미국 가특허출원 제60/366,331호에도 관련되어 있다.
본 발명은 일반적으로 비디오 컨퍼런싱(videoconferencing)에 관한 것으로서, 보다 상세하게는 비디오 컨퍼런싱 애플리케이션 사용자 인터페이스 및 이 사용자 인터페이스 상에 디스플레이되는 비디오 데이터의 파라미터들을 제어하는 메시징 시스템에 관한 것이다.
비디오 컨퍼런싱에서는 컴퓨터 네트워크 상의 서로 다른 장소에 있는 몇명의 사용자들 사이에서의 생생한 양방향 대화형 비디오(live, two-way interactive video)의 전송을 필요로 한다. 실시간 대화형 비디오는 대량의 정보를 제약된 지연으로 전송하는 것을 요구한다. 비디오 컨퍼런싱의 한가지 단점은 실시간 비디오의 전송이 대역을 아주 많이 소모하고 또 어떤 상황에서는 가용 네트워크 자원을 쉽게 고갈시킬 수 있다는 것이다. 네트워크를 통해 전송되는 실시간 비디오의 비트 레이트는 주로 사용되는 비디오 해상도와 압축 알고리즘에 달려 있다. 기업 환경에서, 네트워크는 일반적으로 하나 이상의 WAN(Wide Area Network, 원거리 통신망)에 의해 연결되어 있는 다수의 LAN(Local Area Network, 근거리 통신망)을 포함한다. 일반적인 비디오 컨퍼런스 시스템의 제한 요인은 지리적 장소들 사이의 장거리 링크(long haul link)(예를 들면, WAN)이다.
따라서, 종래 기술의 단점들을 극복하는 비디오 컨퍼런스 애플리케이션 사용자 인터페이스를 갖는다면 바람직하면서도 아주 유리할 것이다.
종래 기술의 전술한 문제점들은 물론 기타 관련 문제점들도 본 발명, 즉 비디오 컨퍼런스 애플리케이션 사용자 인터페이스 및 이 사용자 인터페이스 상에 디스플레이되는 비디오 데이터의 파라미터들을 제어하는 메시징 시스템에 의해 해결된다.
본 발명의 한 측면에 따르면, 네트워크에 걸쳐 있는 비디오 컨퍼런스 시스템의 재생 제어 시스템이 제공된다. 이 재생 제어 시스템은 서로 다른 해상도 및 프레임 레이트를 허용하는 다수의 디스플레이 윈도우를 갖는 사용자 인터페이스 및 개별적인 디스플레이 요구 사항에 따라 디스플레이 및 전송 특성을 관리하는 메시징 시스템을 포함한다.
본 발명의 또다른 측면에 따르면, 비디오 컨퍼런싱 시스템의 사용자 인터페이스가 제공된다. 이 사용자 인터페이스는 동시에 디스플레이될 수 있고 또 서로 다른 해상도 및 프레임 레이트를 허용하는 다수의 디스플레이 윈도우를 갖는 비디오 재생 장치를 포함한다.
본 발명의 또다른 측면에 따르면, 네트워크에 걸쳐 있는 비디오 컨퍼런스 시스템의 서버가 제공된다. 이 서버는 개별적인 디스플레이 요구 사항에 따라 디스플레이 및 전송 특성을 관리하는 메시징 시스템을 포함한다.
본 발명의 또다른 측면에 따르면, 비디오 컨퍼런스 세션에 대응하는 콘텐츠를 디스플레이하는 방법이 제공된다. 이 방법은 동시에 디스플레이될 수 있고 또 서로 다른 해상도 및 프레임 레이트를 허용하는 다수의 디스플레이 윈도우를 제공하는 단계를 포함한다.
본 발명의 이들 측면, 특징 및 이점, 그리고 다른 측면, 특징 및 이점은 첨부 도면과 연계하여 기술되어 있는 양호한 실시예들에 대한 이하의 상세한 설명으로부터 명백하게 될 것이다.
도 1a는 본 발명의 예시적인 실시예에 따른, 본 발명이 적용될 수 있는 컴퓨터 시스템(100)을 나타낸 블록도.
도 1b는 본 발명의 예시적인 실시예에 따른, 유니캐스트 비디오 컨퍼런스 세 션을 나타낸 블록도.
도 1c는 본 발명의 예시적인 실시예에 따른, 멀티캐스트 비디오 컨퍼런스 세션을 나타낸 블록도.
도 2는 본 발명의 예시적인 실시예에 따른, 본 발명이 적용될 수 있는 네트워크(200)를 나타낸 블록도.
도 3은 본 발명의 예시적인 실시예에 따른, 도 2의 비디오 컨퍼런스 서버(205)를 나타낸 블록도.
도 4는 본 발명의 예시적인 실시예에 따른, 도 3의 데이터베이스 엔티티에 포함된 멤버 데이터베이스(314)의 멤버 데이터베이스 엔트리(400)를 나타낸 도면.
도 5는 본 발명의 예시적인 실시예에 따른, 도 3의 데이터베이스 엔티티(302)에 포함된 활성 세션 데이터베이스(312)의 활성 세션 엔트리(500)를 나타낸 블록도.
도 6은 본 발명의 예시적인 실시예에 따른, SNMP(Simple Network Management Protocol, 간이 망 관리 프로토콜) 클라이언트-서버 아키텍처(600)를 나타낸 블록도.
도 7은 본 발명의 예시적인 실시예에 따른, SIP(Session Initiation Protocol, 접속 설정 프로토콜)를 사용하여 비디오 컨퍼런스 세션에 등록하는 방법을 나타낸 도면.
도 8a는 본 발명의 예시적인 실시예에 따른, SIP를 사용하여 유니캐스트 비디오 컨퍼런스 세션을 설정하는 방법을 나타낸 도면.
도 8b는 본 발명의 예시적인 실시예에 따른, INVITE 요청이 클라이언트 #1(802)로부터 수신될 때(도 8a의 단계 810) 도 2의 비디오 컨퍼런스 서버(205)에 의해 수행되는 단계들을 나타낸 도면.
도 9는 본 발명의 예시적인 실시예에 따른, 도 8a의 방법을 더 구체적으로 나타낸 도면.
도 10은 본 발명의 또다른 예시적인 실시예에 따른, SIP를 사용하여 멀티캐스트 비디오 컨퍼런스 세션을 설정하는 방법을 나타낸 도면.
도 11은 본 발명의 예시적인 실시예에 따른, SIP를 사용하여 비디오 컨퍼런스 세션을 취소(cancel)하는 방법을 나타낸 도면.
도 12는 본 발명의 예시적인 실시예에 따른, SIP를 사용하여 2개의 클라이언트 사이의 비디오 컨퍼런스 세션을 종료(terminate)시키는 방법을 나타낸 도면.
도 13은 본 발명의 예시적인 실시예에 따른, SIP를 사용하여 3개의 클라이언트 사이의 비디오 컨퍼런스 세션을 종료시키는 방법을 나타낸 도면.
도 14는 본 발명의 또다른 예시적인 실시예에 따른, SIP를 사용하여 3개의 클라이언트 사이의 비디오 컨퍼런스 세션을 종료시키는 방법을 나타낸 도면.
도 15는 본 발명의 예시적인 실시예에 따른, 해상도 및 프레임 레이트 조정을 위한 시그널링 방법을 나타낸 도면.
도 16은 본 발명의 예시적인 실시예에 따른, 해상도 및 프레임 레이트 조정(클라이언트 2와 클라이언트 3) 이전의 시그널링을 나타낸 도면.
도 17은 본 발명의 예시적인 실시예에 따른, 해상도 및 프레임 레이트 조정( 클라이언트 2와 클라이언트 3) 이후의 시그널링을 나타낸 도면.
도 18a는 본 발명의 예시적인 실시예에 따른, 비디오 컨퍼런스 클라이언트 애플리케이션(1800)의 블록도.
도 18b는 본 발명의 예시적인 실시예에 따른, 도 18a의 멀티미디어 인터페이스 계층(1802)에 포함되는 오디오 믹서(1899)를 더 구체적으로 나타낸 블록도.
도 18c는 본 발명의 예시적인 실시예에 따른, 도 18a의 멀티미디어 인터페이스 계층(1802)에 포함되는 에코 소거 모듈(1898)을 더 구체적으로 나타낸 블록도.
도 19는 본 발명의 예시적인 실시예에 따른, 오디오 코덱(1804a) 또는 비디오 코덱(1804b) 중 어느 하나 및 그 양쪽 모두에 포함되어 있는 디코더(1890)에 의해 사용되는 방법을 나타낸 도면.
도 20은 본 발명의 예시적인 실시예에 따른 사용자 평면 프로토콜 스택(user plane protocol stack)(2000)을 나타낸 도면.
도 21은 본 발명의 예시적인 실시예에 따른 제어 평면 프로토콜 스택(control plane protocol stack)(2100)을 나타낸 도면.
도 22는 본 발명의 예시적인 실시예에 따른, 도 18a의 사용자 인터페이스(1808)에 대응하는 스크린 샷(2200)을 나타낸 블록도.
도 23은 본 발명의 예시적인 실시예에 따른 로그인 인터페이스(2300)을 나타낸 도면.
도 24는 본 발명의 예시적인 실시예에 따른, 접속 설정(session initiation)을 위한 사용자 선택 인터페이스(2400)를 나타낸 블록도.
도 25는 본 발명의 예시적인 실시예에 따른, 착신 호(incoming call)를 수락(accept) 또는 거부(reject)하는 초청 인터페이스(invitation interface)(2500)를 나타낸 블록도.
도 26은 본 발명의 예시적인 실시예에 따른 사용자 인터페이스(2600)를 나타낸 블록도.
도 27은 본 발명의 또다른 예시적인 실시예에 따른 사용자 인터페이스(2700)를 나타낸 블록도.
본 발명은 비디오 컨퍼런스 애플리케이션 사용자 인터페이스 및 이 사용자 인터페이스 상에 디스플레이되는 비디오 데이터의 파라미터들을 제어하는 메시징 시스템에 관한 것이다.
본 발명이 여러가지 형태의 하드웨어, 소프트웨어, 펌웨어, 특수 목적 프로세서, 또는 이들의 조합으로 구현될 수 있음을 잘 알 것이다. 양호하게는, 본 발명은 하드웨어와 소프트웨어의 조합으로서 구현된다. 게다가, 이 소프트웨어는 양호하게는 프로그램 저장 매체 상에 유형으로 구현되는 애플리케이션 프로그램으로서 구현된다. 이 애플리케이션 프로그램은 임의의 적합한 아키텍처를 포함하는 머신에 업로드(upload)되어 그에 의해 실행될 수 있다. 양호하게는, 이 머신은 하나 이상의 중앙 처리 장치(CPU), 랜덤 액세스 메모리(RAM), 및 입/출력(I/O) 인터페이스(들) 등의 하드웨어를 갖는 컴퓨터 플랫폼 상에 구현된다. 이 컴퓨터 플랫폼은 또한 오퍼레이팅 시스템 및 마이크로명령어 코드를 포함한다. 본 명세서에 기술되 는 여러가지 프로세스들 및 기능들은 오퍼레이팅 시스템을 통해 실행되는 마이크로명령어 코드의 일부나 애플리케이션 프로그램의 일부(또는 이들의 조합) 중 어느 하나일 수 있다. 게다가, 부가의 데이터 저장 장치 및 인쇄 장치 등의 여러가지 다른 주변 장치들이 컴퓨터 플랫폼에 연결될 수 있다.
또한 첨부 도면에 도시된 시스템 구성 컴포넌트들 및 방법 단계들의 일부가 양호하게는 소프트웨어로 구현되기 때문에, 시스템 컴포넌트들(또는 프로세스 단계들) 사이의 실제 연결은 본 발명이 프로그램되는 방식에 따라 달라질 수 있음을 잘 알 것이다. 본 명세서의 개시 내용이 주어지면, 당업자라면 본 발명의 이들 구현 또는 구성 및 이와 유사한 구현 또는 구성을 안출할 수 있을 것이다.
도 1a는 본 발명의 예시적인 실시예에 따른, 본 발명이 적용될 수 있는 컴퓨터 시스템(100)을 나타낸 블록도이다. 컴퓨터 프로세싱 시스템(100)은 시스템 버스(104)를 통해 다른 컴포넌트들에 연결되어 동작하는 적어도 하나의 프로세서(CPU)(102)를 포함한다. 판독 전용 메모리(ROM)(106), 랜덤 액세스 메모리(RAM)(108), 디스플레이 어댑터(110), I/O 어댑터(112), 사용자 인터페이스 어댑터(114), 사운드 어댑터(199), 및 네트워크 어댑터(198)는 시스템 버스(104)에 연결되어 동작한다.
디스플레이 장치(116)는 디스플레이 어댑터(110)에 의해 시스템 버스(104)에 연결되어 동작한다. 디스크 저장 장치(예를 들어, 자기 또는 광학 디스크 저장 장치)(118)는 I/O 어댑터(112)에 의해 시스템 버스(104)에 연결되어 동작한다.
마우스(120) 및 키보드(122)는 사용자 인터페이스 어댑터(114)에 의해 시스 템 버스(104)에 연결되어 동작한다. 마우스(120) 및 키보드(122)는 정보를 시스템(100)에 입력하고 그로부터 출력하는 데 사용된다.
적어도 하나의 스피커(이후부터 "스피커"라고 함)(197)는 사운드 어댑터(199)에 의해 시스템 버스(104)에 연결되어 동작한다.
(디지털 및/또는 아날로그) 모뎀(196)은 네트워크 어댑터(198)에 의해 시스템 버스(104)에 연결되어 동작한다.
이제부터, 본 발명의 예시적인 실시예에 따른 정책 기반 네트워크 관리(policy based network management, PBNM)에 대해 설명한다. PBNM이란 네트워크(본 발명이 적용될 수 있는 네트워크 일례에 대해서는 도 2와 관련하여 이하에서 기술함)를 관리하는 정책을 정의 및 배포하는 기능을 제공하는 기술을 말한다. 이들 정책은 대역폭 및 보안 등의 중요한 네트워크 자원의 통합 제어를 허용한다. PBNM은 네트워크 상에서의 차별화된 대우를 요구하는 IP 기반 비디오 컨퍼런싱 등의 애플리케이션을 가능하게 해준다. PBNM은 서로 다른 유형의 애플리케이션들이 단일 네트워크 상에 공존할 수 있게 해주는 기초를 제공하고 또 이들 애플리케이션 각각에 요구된 자원을 제공한다.
보다 구체적으로 설명하면, PBNM은 네트워크 자원을 소모하는 애플리케이션 및 사용자에 대한 정책을 정의한다. 예를 들어, 업무에 중요한 애플리케이션(business critical application)에는 최고 우선순위와 네트워크 상의 대역폭의 일부가 주어질 수 있고, 비디오 컨퍼런싱 및 VoIP(voice over IP)에는 그 다음 최고 우선순위가 할당될 수 있으며, 마지막으로 엄격한 대역폭 또는 시간 임 계 요건을 갖지 않는 웹 트래픽 및 파일 전송에는 네트워크 상의 나머지 자원이 주어질 수 있다. 사용자 및 애플리케이션에 대한 이러한 차별화는 PBNM을 사용하여 달성될 수 있다.
비디오 컨퍼런스 시스템은 비디오 컨퍼런스 애플리케이션에 대응하는 정책을 얻기 위해 네트워크 정책 서버에 질의함으로써 PBNM 시스템과 결부되어 있다. 비디오 컨퍼런스 서버는 네트워크 정책 서버로부터 정책을 획득하고, 그 수신된 파라미터들에 기초하여 네트워크에서 비디오 컨퍼런싱에 이용가능한 자원을 결정한다. 그 정책은 일반적으로 예를 들어 특정 사용자만이 이용할 수 있거나 또는 하루 중 특정 시간대 동안 이 애플리케이션이 이용할 수 있는 대역폭에 대응하게 된다. 이 구성은 예를 들면 정책들 및/또는 그의 일부를 추가, 삭제, 대체, 수정 등을 함으로써 용이하게 수정된다. 그 결과, 비디오 컨퍼런스 서버는 그 정책 내에 제공되어 있는 정보를 사용하여 네트워크 상에서의 컨퍼런싱 세션들을 관리하게 된다.
도 2는 본 발명의 예시적인 실시예에 따른, 본 발명이 적용될 수 있는 네트워크(200)를 나타낸 블록도이다. 네트워크(200)는 비디오 컨퍼런스 서버(205), 정책 및 QoS 관리자(210), MADCAP 서버(215), 복수의 제1 컴퓨터(220a-f), 제1 근거리 통신망(225), 제1 라우터(240), 복수의 제2 컴퓨터(230a-e), 제2 근거리 통신망(235), 제2 라우터(245), 및 원거리 통신망(250)을 포함한다.
이제부터, 본 발명의 예시적인 실시예에 따른 서버 아키텍처에 대해 설명한다. 도 3은 본 발명의 예시적인 실시예에 따른, 도 2의 비디오 컨퍼런스 서버(205)를 나타낸 블록도이다. 비디오 컨퍼런스 서버(205)는 이하의 3가지 기본 적인 엔티티, 즉 데이터베이스 엔티티(302), 네트워크 통신 엔티티(304), 및 세션 관리 엔티티(306)를 포함하는 것으로 생각될 수 있다.
세션 관리 엔티티(306)는 비디오 컨퍼런스 세션의 설정(setup) 및 해제(teardown)를 관리하는 일을 맡고 있다. 세션 관리 엔티티(306)는 또한 비디오 컨퍼런스 서버(205)의 주요 제어의 대부분을 제공한다. 세션 관리 엔티티(306)는 세션 관리 엔티티(306)의 기능들을 구현하는 세션 관리자(320)를 포함한다.
네트워크 통신 엔티티(304)는 비디오 컨퍼런스 시스템에 사용되는 많은 서로 다른 프로토콜들을 캡슐화하는 일을 맡고 있다. 이 프로토콜들에는 원격 운영 및 관리를 위한 SNMP(Simple Network Management Protocol, 간이 망 관리 프로토콜), COPS(Common Open Policy Service, 공통 개방형 정책 서비스) 또는 정책 관리를 위한 LDAP(Lightweight Directory Access Protocol, 경량 디렉토리 액세스 프로토콜) 등의 다른 프로토콜, 멀티캐스트 주소 할당을 위한 MADCAP(Multicast Address Dynamic Client Allocation Protocol, 멀티캐스트 주소 동적 클라이언트 할당 프로토콜), 비디오 컨퍼런스 세션 관리를 위한 SIP(Session Initiation Protocol, 접속 설정 프로토콜), 및 분산 비디오 컨퍼런싱 서버 관리를 위한 서버 대 서버 메시징(Server to Server messaging)이 포함될 수 있다. 따라서, 네트워크 통신 엔티티(304)는 SNMP 모듈(304a), LDAP 클라이언트 모듈(304b), MADCAP 클라이언트 모듈(304c), SIP 모듈(304d), 및 서버 대 서버 관리 모듈(304e)를 포함한다. 게다가, 이상의 구성 요소들(304a-e)은 각각 이하의 구성 요소들, 즉 원격 관리 단말기(382), 네트워크 정책 서버(대역폭 브로커)(384), MADCAP 서버(215), 데스크 톱 컨퍼런싱 클라이언트(388), 및 기타 비디오 컨퍼런싱 서버(390)와 통신한다. 이러한 통신은 프로토콜 모듈(330)에 의해 총괄하여 표현되어 있는 TCP(Transmission Control Protocol, 전송 제어 프로토콜), UDP(User Datagram Protocol, 사용자 데이터그램 프로토콜), IP(Internet Protocol, 인터넷 프로토콜)를 사용해서도 구현될 수 있다. 이상의 프로토콜 리스트 및 대응하는 구성 요소들은 단지 예시적인 것에 불과하며, 따라서 기타 프로토콜 및 대응하는 구성요소들이 본 발명의 사상 및 범위를 유지하면서 용이하게 사용될 수 있음을 잘 알 것이다.
또한, 비디오 컨퍼런스 서버(205)의 아키텍처는 휴대용 장치 상의 사용자가 비디오 컨퍼런스 세션으로부터의 콘텐츠를 전송 및 수신하기 위해 VPN(Virtual Private Network, 가상 사설망)을 통해 기업 인프라에 접속하는 데에도 적합함을 잘 알 것이다.
데이터베이스 엔티티(302)는 이하의 4가지 데이터베이스, 즉 스케쥴링 데이터베이스(310), 활성 세션 데이터베이스(312), 멤버 데이터베이스(member database)(314), 및 네트워크 아키텍처 데이터베이스(316)를 포함한다.
비디오 컨퍼런스 시스템 서버(205)는 회사 LDAP 서버(사용자 정보)(340) 및 선택적인 외부 데이터베이스(342)를 더 포함하거나 또는 적어도 이들과 인터페이스로 연결되어 있다. 선택적인 외부 데이터베이스(342)는 LDAP 클라이언트(304b)를 포함한다.
이제부터, 본 발명의 예시적인 실시예에 따른, 도 3의 데이터베이스 엔티티(302)에 포함된 멤버 데이터베이스(314)에 대해 설명한다. 멤버 데이터베이 스(314)는 비디오 컨퍼런스 시스템에 로그한 각 사용자에 관한 정보를 포함한다. 일례로서, 각각의 사용자에 대해 이하의 정보, 즉 사용자 이름, 패스워드(적용가능한 경우), 지원되는 비디오 코덱 및 캡처 해상도, 지원되는 오디오 코덱, 현재의 IP 주소, 현재의 호 번호(call number)[현재 활성 호(active call)의 멤버인 경우], 가용성(이용가능 여부), 비디오 카메라 유형 및 모델, 네트워크 상의 장소(각 장소는 제한된 대역폭의 원거리 통신망 링크에 의해 연결되어 있음), 및 CPU 유형과 처리 능력이 멤버 데이터베이스(314)에 유지될 수 있다. 이상의 항목들은 단지 예시적인 것에 불과하며, 따라서 각각의 사용자에 대해 이상의 항목들의 일부 또는 그 전부에 부가하여 또는 그를 대신하여 다른 항목들이 또한 본 발명의 사상 및 범위를 유지하면서 멤버 데이터베이스(314)에 유지될 수 있음을 잘 알 것이다.
도 4는 본 발명의 예시적인 실시예에 따른, 도 3의 데이터베이스 엔티티(302)에 포함된 멤버 데이터베이스(314)의 멤버 데이터베이스 엔트리(400)를 나타낸 도면이다. 도 4의 예시적인 실시예에서, 멤버 데이터베이스(314)는 간단한 연결 리스트(linked list)를 사용하여 구현된다. 그렇지만, 본 발명의 다른 실시예들에서 멤버 데이터베이스(314)의 여러가지 구현들이 본 발명의 사상 및 범위를 유지하면서 이용될 수 있음을 잘 알 것이다. 일례로서, LDAP 유형의 데이터베이스는 멤버 정보를 저장하는 데 사용될 수 있다.
이제부터, 본 발명의 예시적인 실시예에 따른, 도 3의 데이터베이스 엔티티(302)에 포함되어 있는 활성 세션 데이터베이스(312)에 대해 설명한다. 활성 세션 데이터베이스(312)는 현재 행해지고 있는 각각의 비디오 컨퍼런스 세션에 관한 정보를 포함한다. 일례로서, 각각의 호에 대해 이하의 정보, 즉 호 ID; 설명; 멀티캐스트(예/아니오); 멀티캐스트인 경우 멀티캐스트 IP 주소; 각 참가자에 대한 네트워크 위치, 현재의 전송 해상도, 현재의 전송 비트 레이트, 비디오 및 오디오 코덱; 공개적인/사적인 호(public/private call)(다른 사람이 참여할 수 있는가?); 예정된 세션 시간; 세션의 시작 시간; 및 임의의 추가 옵션이 활성 세션 데이터베이스(312)에 유지될 수 있다. 이상의 항목들이 단지 예시적인 것에 불과하며, 따라서 이상의 항목들의 일부 또는 그 전부에 부가하여 또는 그를 대신하여 다른 항목들도 본 발명의 사상 및 범위를 유지하면서 활성 세션 데이터베이스(312)에 유지될 수 있음을 잘 알 것이다.
도 5는 본 발명의 예시적인 실시예에 따른, 도 3의 데이터베이스 엔티티(302)에 포함된 활성 세션 데이터베이스(312) 내의 활성 세션 엔트리(500)를 나타낸 블록도이다. 도 5의 예시적인 실시예에서, 활성 세션 데이터베이스(312)는 간단한 연결 리스트를 사용하여 구현된다. 그렇지만, 본 발명의 다른 실시예들에서 활성 세션 데이터베이스(312)의 여러가지 구현들이 본 발명의 사상 및 범위를 유지하면서 사용될 수 있음을 잘 알 것이다.
다시 도 3을 참조하여, 이제부터 본 발명의 예시적인 실시예에 따른, 도 3의 데이터베이스 엔티티(302)에 포함된 네트워크 아키텍처 데이터베이스(316)에 대해 설명할 것이다. 네트워크 아키텍처 데이터베이스(316)는 전체 네트워크에 대한 풀 매핑(full mapping)을 포함한다. 네트워크 아키텍처 데이터베이스(316)는 각각의 활성 네트워크 요소(즉, IP 라우터, 이더넷 스위치 등)에 관한 정보 및 라우터와 스위치를 서로 연결시키는 링크에 관한 정보를 포함한다. 네트워크에서의 대역폭 및 서비스 품질을 효과적으로 관리하기 위해, 비디오 컨퍼런스 서버(205)는 이러한 정보를 알 필요가 있다.
동시에 수행될 수 있도록 허용된 비디오 컨퍼런스 세션의 수, 비디오 컨퍼런스 세션 비트 레이트, 및 대역폭 한계에 관한 정책 정보도 네트워크 아키텍처 데이터베이스(316)에 정의되어 있을 수 있다. 네트워크 아키텍처는 네트워크 아키텍처 데이터베이스(316) 내에 가중 그래프(weighted graph)로서 표현될 수 있다. 네트워크 아키텍처 데이터베이스(316)가 비디오 컨퍼런스 서버(205) 내의 선택적인 데이터베이스임을 잘 알 것이다. 네트워크 아키텍처 데이터베이스(316)는 정책 서버(210)에 요청한 정책을 캐싱하는 데 사용될 수 있다.
이제부터, 본 발명의 예시적인 실시예에 따른, 도 3의 데이터베이스 엔티티(302)에 포함되어 있는 스케쥴링 데이터베이스(310)에 대해 설명할 것이다. 스케쥴링 데이터베이스(310)는 사용자가 비디오 컨퍼런스 시스템을 사용할 시간을 예약하는 예정표(schedule)를 포함하고 있다. 이것은 예를 들어 원거리 통신망(250)을 통해 특정의 링크 상에서 동시에 행해질 수 있는 비디오 컨퍼런스 세션의 수에 관하여 정보 시스템 부문(Information Systems department)이 가지고 있는 정책들에 달려 있다.
이제부터, 도 3의 네트워크 통신 엔티티(304)에 대해 설명할 것이다. 네트워크 통신 엔티티(304)는 SNMP 모듈(304a), LDAP 클라이언트 모듈(304b), MADCAP 클라이언트 모듈(304c), SIP 모듈(304d), 및 서버 대 서버 관리 모듈(304e)을 포함 한다.
이제부터, 본 발명의 예시적인 실시예에 따른, 도 3의 네트워크 통신 엔티티(304)에 포함되어 있는 SNMP 모듈(304a)에 대해 설명할 것이다. 도 6은 본 발명의 예시적인 실시예에 따른, SNMP(Simple Network Management Protocol, 간이 망 관리 프로토콜) 클라이언트-서버 아키텍처(600)를 나타낸 블록도이다. 아키텍처(600)는 SNMP 모듈(304a)의 한 구현을 나타낸 것이지만, 본 발명은 도 6에 도시된 아키텍처에 한정되지 않으며, 따라서 다른 SNMP 아키텍처들도 본 발명의 사상 및 범위를 유지하면서 이용될 수 있음을 잘 알 것이다. SNMP는 비디오 컨퍼런스 서버의 원격 관리 및 모니터링을 위해 사용되어진다.
SNMP 클라이언트-서버 아키텍처(600)는 SNMP 관리 스테이션(management station)(610) 및 SNMP 피관리 엔티티(managed entity)(620)를 포함한다. SNMP 관리 스테이션(610)은 관리 애플리케이션(610a) 및 SNMP 관리자(610b)를 포함한다. SNMP 피관리 엔티티(620)는 피관리 자원(mangaged resource)(620a), SNMP 피관리 객체(managed object)(620b), 및 SNMP 에이전트(620c)를 포함한다. 게다가, SNMP 관리 스테이션(610) 및 SNMP 피관리 엔티티(620) 각각은 UDP 계층(630), IP 계층(640), MAC(매체 접근 제어) 계층(650), 및 물리 계층(660)을 더 포함한다.
SNMP 에이전트(620c)는 SNMP 관리 스테이션(610)으로부터의 모니터링 및 관리를 가능하게 해준다. SNMP 에이전트(620c)는 SNMP 아키텍처(600)에서의 클라이언트이다. SNMP 에이전트(620c)는 기본적으로 SNMP 관리 스테이션(610)에 대한 정보 및 동작의 요청에 응답하는 역할을 한다. SNMP 관리 스테이션(610)은 SNMP 아 키텍쳐(600)에서의 서버이다. SNMP 관리 스테이션(610)은 네트워크 내의 에이전트들을 관리하는 중심 엔티티(central entity)이다. SNMP 관리 스테이션(610)은 관리자가 SNMP 에이전트(620c)로부터 통계를 수집하고 SNMP 에이전트(620c)의 구성 파라미터들을 변경할 수 있게 해주는 기능을 수행한다.
SNMP 모델을 사용하여, 비디오 컨퍼런스 서버(205) 내의 자원들은 이들 자원을 객체로서 표현함으로써 관리될 수 있다. 각각의 객체는 피관리 에이전트(managed agent)의 한 측면을 표현하는 데이터 변수이다. 이러한 객체들의 집합체는 통상 MIB(Management Information Base, 관리 정보 베이스)라고 불리운다. MIB는 SNMP 관리 스테이션(610)의 SNMP 에이전트(620c)에 있는 액세스 포인트들의 집합체로서 기능한다. SNMP 관리 스테이션(610)은 SNMP 에이전트(620c)에 있는 MIB 객체들의 값을 검색함으로써 모니터링을 수행할 수 있다. SNMP 관리 스테이션(610)은 또한 SNMP 에이전트(620c)에서 동작이 수행되도록 할 수 있거나 SNMP 에이전트(620c)에 있는 구성 설정(configuration setting)을 변경할 수 있다.
SNMP는 IP 계층(640) 상부에서 동작하며 그의 전송 프로토콜을 위해 UDP 계층(630)을 사용한다.
SNMP 관리 프로토콜에서 사용되는 기본적인 메시지로는 다음과 같이 GET, SET, 및 TRAP가 있다. GET 메시지를 사용하여 SNMP 관리 스테이션(610)은 SNMP 에이전트(620c)에 있는 객체들의 값을 검색할 수 있다. SET 메시지를 사용하여 SNMP 관리 스테이션(610)은 SNMP 에이전트(620c)에 있는 객체들의 값을 설정할 수 있다. TRAP 메시지를 사용하여 SNMP 에이전트(620c)는 SNMP 관리 스테이션(610)에 중요한 이벤트를 통지할 수 있다.
이제부터, 본 발명의 예시적인 실시예에 따른, SNMP 피관리 엔티티(620)에 포함되어 있는 SNMP 피관리 자원(620a)에 대해 설명할 것이다. 원격 관리는 비디오 컨퍼런스 서버(205) 내의 이하의 자원, 즉 활성 세션 및 관련 통계, 세션 로그, 비디오 컨퍼런싱에 대한 네트워크 정책, SIP(접속 설정 프로토콜) 파라미터들 및 통계, 그리고 MADCAP 파라미터들 및 통계를 모니터링 및/또는 제어를 할 수 있다.
SNMP 관리 스테이션(610)으로부터, 이하의 3가지 유형의 SNMP 메시지, 즉 GetRequest, GetNextRequest, 및 SetRequest가 관리 애플리케이션을 대신하여 발행된다. 처음 2가지는 Get 함수의 변형이다. 3가지 메시지 모두는 SNMP 에이전트(620c)에 의해, 관리 애플리케이션(610a)에까지 전달되는 GetResponse 메시지의 형태로 긍정 응답(acknowledge)된다. SNMP 에이전트(620c)는 또한 피관리 자원에서 일어난 이벤트에 응답하여 트랩 메시지를 발행할 수도 있다.
다시 도 3을 참조하여, 이제부터 본 발명의 예시적인 실시예에 따른, 도 3의 네트워크 통신 엔티티(304)에 포함된 LDAP 클라이언트 모듈(304b)에 대해 설명할 것이다. LDAP 모듈(304b)은 공통 디렉토리 정보(common directory information)에 액세스하기 위한 표준 IP 기반 프로토콜인 LDAP를 이용한다. LDAP는 사용자별 기준을 충족시키는 엔트리를 검색하는 것, 엔트리를 추가하는 것, 엔트리를 삭제하는 것, 엔트리를 수정하는 것, 및 엔트리를 비교하는 것 등의 디렉토리 엔티티에 액세스하여 그를 수정하기 위한 동작들을 정의한다.
이제부터, 본 발명의 예시적인 실시예에 따른, 도 3의 네트워크 통신 엔티티 에 포함되어 있는 MADCAP 클라이언트 모듈(304c)에 대해 설명할 것이다. MADCAP 모듈(304c)은 호스트가 멀티캐스트 주소 할당 서버에 대해 멀티캐스트 주소 할당 서비스를 요청할 수 있게 해주는 프로토콜인 MADCAP를 이용한다. 비디오 컨퍼런싱 세션이 멀티캐스팅 서비스를 사용하도록 설정되어 있을 때, 비디오 컨퍼런스 서버(205)는 그 세션의 클라이언트들에 할당할 멀티캐스트 주소를 획득할 필요가 있다. 비디오 컨퍼런스 서버(205)는 MADCAP 프로토콜을 사용하여 멀티캐스트 주소 할당 서버로부터 멀티캐스트 주소를 동적으로 획득할 수 있다.
이제부터, 본 발명의 예시적인 실시예에 따른, 도 3의 네트워크 통신 엔티티(304)에 포함되어 있는 SIP 모듈(304d)에 대해 설명한다. SIP 모듈(304d)은 IP 기반 네트워크를 통해 한명 이상의 참가자들과의 멀티미디어 세션을 생성, 수정 및 종료하기 위한 애플리케이션 계층 제어 프로토콜인 SIP를 이용한다. SIP는 텍스트 메시지 기반 프로토콜이다.
SIP 기반 비디오 컨퍼런스 시스템에서, 각각의 클라이언트 및 서버는 SIP URL에 의해 식별된다. SIP URL은 이메일 주소와 동일한 형식인 user@host의 형태를 취하며, 대부분의 경우 SIP URL은 사용자의 이메일 주소이다.
이제부터, 본 발명의 예시적인 실시예에 따른, 도 3의 네트워크 통신 엔티티(304)에 포함되어 있는 서버 대 서버 관리 모듈(304e)에 대해 설명할 것이다. 서버 대 서버 관리 모듈(304e)은 비디오 컨퍼런스 서버들 간에 정보를 교환하기 위해 메시지를 이용한다. 서버 대 서버 관리 모듈(304e)은 양호하게는 독자적인 비디오 컨퍼런스 서버[예를 들어, 비디오 컨퍼런스 서버(205)]가 그 자신이 지 원하고 있는 네트워크[예를 들어 LAN(225)]에 로컬적으로 구축되어 있으며 따라서 몇개의 비디오 컨퍼런스 서버가 회사 광역 네트워크[예를 들면, 네트워크(200)]에 존재할 수 있는 것인 전형적인 배치에서 이용된다. 정보를 교환하기 위한 메시지의 주요 목적 중 어떤 것으로는 데이터베이스들을 동기화시키는 것 및 네트워크 자원들의 가용성을 검사하는 것이 있다.
이하의 메시지들이 정의되어 있다. 즉 QUERY - 원격 서버 내의 엔트리를 질의하는 것, ADD - 원격 서버에 엔트리를 추가하는 것, DELETE- 원격 서버로부터 엔트리를 삭제하는 것, 및 UPDATE - 원격 서버 상의 엔트리를 갱신하는 것이 있다.
서버 대 서버 메시징은 각 서버 사이의 TCP 기반 연결을 사용할 수 있다. 한 서버의 상태가 변동하면, 나머지 서버들은 동일한 정보를 사용하여 갱신된다.
이제부터, 본 발명의 예시적인 실시예에 따른, 비디오 컨퍼런스 서버(205)의 동작 시나리오에 대해 설명한다. 먼저, 비디오 컨퍼런스 세션의 설정에 대응하는 동작 시나리오에 대해 설명하고, 이어서 비디오 컨퍼런스 세션 동안의 해상도 및 프레임 레이트 조정에 대응하는 동작 시나리오에 대해 설명한다. 세션 동작 시나리오는 SIP 서버 발견(server discovery), 멤버 등록(member registration), 세션 설정(session setup), 세션 취소(session cancel), 및 세션 종료(session terminate)를 포함한다.
이제부터, 본 발명의 예시적인 실시예에 따른, SIP 서버 발견에 대응하는 세션 동작 시나리오에 대해 설명한다. 사용자(비디오 컨퍼런스 클라이언트 애플리케이션)는 사전 구성된 비디오 컨퍼런스 서버(수동으로 프로비저닝됨)에 등록하거나 시동 시에 REGISTER 요청을 알고 있는 "모든 SIP 서버" 멀티캐스트 주소 "sip.mcast.net"(224.0.1.75)로 전송함으로써 등록할 수 있다. 두번째 메카니즘(REGISTER 요청)이 양호한데 왜냐하면 각 사용자가 그의 비디오 컨퍼런스 클라이언트 애플리케이션에서 로컬 SIP 서버의 주소를 수동으로 설정할 필요가 없기 때문이다. 이 경우, 멀티캐스트 주소는 사용자가 비디오 컨퍼런스의 정확한 SIP 서버에 등록하고 있도록 하기 위해 네트워크에서 그 범위가 정확하게 지정될 필요가 있다. 이전의 방법들 이외에, 프로비저닝 프로세스(provisioning process)를 보다 간단하게 만드는 다른 방법에서, SIP 애플리케이션은 관리자가 sip.도메인이름 관례(예를 들어, sip.princeton.tce.com)를 사용하여 그의 SIP 서버를 지명할 것을 권장한다.
이제부터, 본 발명의 예시적인 실시예에 따른, 멤버 등록에 대응하는 세션 동작 시나리오에 대해 설명할 것이다. 도 7은 본 발명의 예시적인 실시예에 따른, SIP(Session Initiation Protocol, 접속 설정 프로토콜)를 사용하여 비디오 컨퍼런스 세션에 등록하는 방법을 나타낸 도면이다. 도 7의 일례는 비디오 컨퍼런스 클라이언트 애플리케이션(클라이언트)(702) 및 비디오 컨퍼런스 서버(서버)(205)를 포함한다. "클라이언트 애플리케이션"과 "클라이언트"라는 구문은 본 명세서에서 서로 교환하여 사용될 수 있음을 잘 알 것이다.
멤버 등록 기능에서, 클라이언트(702)는 SIP REGISTER 요청을 서버(205)로 전송한다(단계 710). 서버(205)는 이 메시지를 수신하고 클라이언트(702)의 IP 주소 및 SIP URL을 멤버 데이터베이스(314)에 저장한다.
REGISTER 요청은 비록 그의 사용법이 표준에 정의되어 있지는 않지만 메시지 보디를 포함할 수 있다. 이 메시지 보디는 서버(205)에 등록하는 클라이언트(702)의 구성 옵션들에 관한 부가의 정보를 포함할 수 있다.
서버(205)는 200 OK 메시지를 다시 클라이언트(702)로 전송함으로써 그 등록을 긍정 응답한다(단계 720).
이제부터, 본 발명의 예시적인 실시예들에 따른, 유니캐스트 및 멀티캐스트 비디오 컨퍼런스 세션에 대해 설명할 것이다. 도 1b 및 도 1c는 본 발명의 2가지 예시적인 실시예에 따른, 유니캐스트 비디오 컨퍼런스 세션과 멀티캐스트 비디오 컨퍼런스 세션을 각각 나타내는 블록도이다. 도 1b 및 도 1c의 일례는 클라이언트 1(130), 클라이언트 2(132), 클라이언트 3(134), 이더넷 스위치(136), IP 라우터(138), IP 라우터(140), 및 WAN(142)을 포함한다.
유니캐스트 일례에서, 고유 스트림이 각 클라이언트로부터 각각의 상대방 클라이언트로 전송된다. 이러한 방식은 더 많은 참가자가 네트워크에 참여할 때 많은 대역폭을 소모할 수 있다. 이와 반대로, 멀티캐스트 방식에서는, 단 하나의 스트림만이 각 클라이언트로부터 전송된다. 따라서, 멀티캐스트 방식은 유니캐스트 방식에 비해 대역폭 등의 네트워크 자원을 덜 소모한다.
이제부터, 본 발명의 예시적인 실시예에 따른, 유니캐스트 비디오 컨퍼런스 세션 설정에 대응하는 세션 동작 시나리오에 대해 설명할 것이다. 도 8a는 본 발명의 예시적인 실시예에 따른, SIP를 사용하여 유니캐스트 비디오 컨퍼런스 세션을 설정하는 방법을 나타낸 도면이다. 도 8a의 일례는 비디오 컨퍼런스 클라이언트 애플리케이션 #1(클라이언트 #1)(802), 비디오 컨퍼런스 서버(서버)(205), 및 비디오 컨퍼런스 클라이언트 애플리케이션 #2(클라이언트 #2)(806)를 포함한다.
INVITE 요청은 클라이언트 #1(802)로부터 서버(205)로 전송된다(단계 810). 이 INVITE 요청은 서버(205)로부터 클라이언트 #2(806)로 포워딩된다(단계 815).
180 링잉(ringing) 메시지는 클라이언트 #2(806)로부터 서버(205)로 전송된다(단계 820). 이 180 링잉 메시지는 서버(205)로부터 클라이언트 #1(802)로 포워딩된다(단계 825).
200 OK 메시지는 클라이언트 #2(806)로부터 서버(205)로 전송된다(단계 830). 이 200 OK 메시지는 서버(205)로부터 클라이언트 #1(802)로 포워딩된다(단계 835).
긍정 응답 메시지 ACK는 클라이언트 #1(802)로부터 클라이언트 #2(806)으로 전송된다(단계 840). 비디오 컨퍼런스 세션(미디어 세션)은 이 2개의 노드[클라이언트 #1(802)과 클라이언트 #2(806)] 사이에서 행해진다(단계 845).
도 8b는 본 발명의 예시적인 실시예에 따른, INVITE 요청이 비디오 컨퍼런스 클라이언트 애플리케이션 #1(802)로부터 수신될 때(도 8a의 단계 810) 비디오 컨퍼런스 서버(205)에 의해 수행되는 단계들을 나타낸 도면이다.
처음에 서버(205)는 요청하는 사용자[클라이언트 #1(802)]가 서버(205)에 등록되어 있는지를 알아보기 위해 검사를 행하고, 또한 서버(205)는 호출되고 있는 사용자[클라이언트 #2(806)]가 서버(205)에 등록되어 있는지를 알아보기 위해 검사를 행한다(단계 850).
서버(205)는 네트워크 상에서의 각 사용자의 위치를 결정하고(단계 855), (서로 다른 경우) 그 사용자의 2개의 위치를 연결시키는 저대역폭 WAN 링크[예를 들면, WAN(250)]이 있는지를 결정한다.
2개의 위치를 서로 연결시키는 저대역폭 WAN 링크가 없는 경우, 서버(205)는 호출을 개시한다(단계 865). 그렇지만, 2명의 사용자 사이에 저대역폭 링크가 있는 경우, 본 방법은 단계 870으로 진행한다.
단계 870에서, 서버(205)는 WAN(250)을 통한 비디오 컨퍼런스 세션에 관한 정책을 검사한다. 이것은 기본적으로 "X개의 세션이 Y의 최대 비트 레이트로 행해질 수 있음"으로 해석된다. 서버(205)는 이 정책에 기초하여 가용성에 대해 검사한다(단계 875). 가용성이 없는 경우, 서버(205)는 이하의 메시지, 즉 "600 - Busy Everywhere", "486 - Busy Here", "503 - Service Unavailable", 또는 "603 - Decline" 중 어느 것을 전송함으로써 INVITE 요청을 거부하고(단계 880), 본 방법은 종료된다(도 8a의 방법의 단계 815로 계속되지 않음). 그렇지만, 가용성이 있는 경우, 서버(205)는 호출을 개시한다(단계 865). 단계 865에 뒤이어서 도 8a의 방법의 단계 815가 이어짐을 잘 알 것이다.
도 9는 본 발명의 예시적인 실시예에 따른, 도 8a의 방법을 더 구체적으로 나타낸 도면이다. 도 9의 일례는 클라이언트 애플리케이션 1(998), 클라이언트 애플리케이션 2(997), 비디오 컨퍼런스 서버(205), 및 기타 비디오 컨퍼런스 서버(986)를 포함한다. 도 9에도 도시되어 있는 비디오 컨퍼런스 서버(205)의 구성요소들에는 멤버 데이터베이스(314), 활성 세션 데이터베이스(312), 네트워크 아 키텍처 데이터베이스(316)에 포함되어 있는 정책 데이터베이스(999), 세션 관리자(320), SIP 모듈(304d), 및 서버 대 서버 관리 모듈(304e)이 있다.
도 9는 비디오 컨퍼런스 서버(205) 내에서의 내부 상호 작용을 나타내기 위해 제공된 것이며, 따라서 비디오 컨퍼런스 서버(205)의 엔티티들 사이의 시그널링 흐름의 일례를 제공하기 위해 기본적인 수준에서 도시한 것에 불과하다.
INVITE 요청은 클라이언트 애플리케이션 1(998)로부터 비디오 컨퍼런스 서버(205) 내의 SIP 모듈(304d)로 전송된다(단계 903). SIP 모듈(304d)은 그 메시지를 디코딩하고 INVITE 요청을 세션 관리자(320)로 포워딩한다(단계 906). 세션 관리자(320)는 세션이 정확하게 설정될 수 있도록 하기 위해 활성 세션 데이터베이스(312), 멤버 데이터베이스(314), 및 네트워크 아키텍처 데이터베이스(316) 내의 정책 데이터베이스(999)를 검사한다(각각 단계 909, 단계 912, 및 단계 915). 세션이 정확하게 설정될 수 있는 경우, 활성 세션 데이터베이스(312), 멤버 데이터베이스(314), 및 정책 데이터베이스(999)는 OK 메시지를 세션 관리자(320)로 전송한다(단계 918, 단계 921, 및 단계 924). 이 확인 프로세스가 완료되면, 비디오 컨퍼런스 서버(205)는 기타 비디오 컨퍼런싱 서버들에 시스템 상태의 변동을 통지한다(단계 927, 및 단계 930).
세션 관리자(320)는 INVITE 메시지를 SIP 모듈(304d)로 포워딩하고(단계 933), 이어서 SIP 모듈(304d)은 INVITE 메시지를 클라이언트 애플리케이션 2(997)로 포워딩한다(단계 936). 클라이언트 애플리케이션 2(997)는 INVITE 메시지를 수신하면 SIP 모듈(304d)이 INVITE 메시지를 수신하였음을 나타내는 180 링잉 메시지 로 SIP 모듈(304d)에 응답한다(단계 939). 180 링잉 메시지는 SIP 모듈(304d)에 의해 수신되어 디코딩된 다음에 세션 관리자(320)로 포워딩된다(단계 942). 비디오 컨퍼런스 서버(205) 내의 도 9에 도시한 데이터베이스들 각각에서 클라이언트의 상태가 갱신된다(단계 945, 단계 948, 단계 951, 단계 954, 단계 957, 및 단계 958).
180 링잉 메시지는 세션 관리자(320)로부터 클라이언트 애플리케이션 1(998)로 포워딩된다(단계 960 및 단계 963). 이어서, 200 OK 메시지가 클라이언트 애플리케이션 2(997)로부터 SIP 모듈(304d)로 전송되고(단계 966), SIP 모듈(304d)로부터 세션 관리자(320)로 포워딩된다(단계 969). 200 OK 메시지는 클라이언트 애플리케이션 2(997)가 비디오 컨퍼런스 세션에의 초청을 수락하고 있음을 나타낸다.
비디오 컨퍼런스 서버(205) 내의 도 9에 도시한 데이터베이스들 각각에서 클라이언트의 상태가 갱신된다(단계 972, 단계 975, 단계 978, 단계 981, 단계 984, 및 단계 987). OK 메시지는 세션 관리자(320)로부터 SIP 모듈(304d)로 전송되고, SIP 모듈(304d)로부터 클라이언트 애플리케이션 1(998)로 포워딩된다(단계 988 및 단계 991). ACK 메시지는 클라이언트 애플리케이션 1(998)로부터 클라이언트 애플리케이션 2(997)로 전송되어 세션 설정을 완료하게 된다(단계 994).
이제부터, 본 발명의 예시적인 실시예에 따른, 멀티캐스트 비디오 컨퍼런스 세션 설정에 대응하는 세션 동작 시나리오에 대해 설명할 것이다. 멀티캐스트 세션 설정을 제공하기 위해, SDP(Session Description Protocol, 세션 기술 프로토콜)이 사용된다. SDP 프로토콜은 멀티캐스트 주소 및 포트 번호를 전달할 수 있 다.
멀티캐스트 세션 설정은 멀티캐스트 주소가 요구되는 것을 제외하고는 유니캐스트 세션 설정과 유사하다. 멀티캐스트 주소는 네트워크 내의 MADCAP 서버(215)에 의해 할당된다.
도 10은 본 발명의 또다른 예시적인 실시예에 따른, SIP를 사용하여 멀티캐스트 비디오 컨퍼런스 세션을 설정하는 방법을 나타낸 도면이다. 도 10의 일례는 비디오 컨퍼런스 클라이언트 애플리케이션 #1(클라이언트 #1)(1002), 비디오 컨퍼런스 서버(서버)(205), 비디오 컨퍼런스 클라이언트 애플리케이션 #2(클라이언트 #2)(1006), 및 MADCAP 서버(215)를 포함한다.
INVITE 요청이 클라이언트 #1(1002)로부터 서버(205)로 전송된다(단계 1010). MADCAP 요청이 서버(205)로부터 MADCAP 서버(215)로 전송된다(단계 1015). 긍정 응답 메시지 ACK가 MADCAP 서버(215)로부터 서버(205)로 전송된다(단계 1020). 이 INVITE 요청이 서버(205)로부터 클라이언트 #2(1006)로 포워딩된다(단계 1025).
180 링잉 메시지는 클라이언트 #2(1006)로부터 서버(205)로 전송된다(단계 1030). 이 180 링잉 메시지는 서버(205)로부터 클라이언트 #1(1002)로 포워딩된다(단계 1035).
200 OK 메시지가 클라이언트 #2(1006)로부터 서버(205)로 전송된다(단계 1040). 이 200 OK 메시지가 서버(205)로부터 클라이언트 #1(1002)로 포워딩된다(단계 1045).
긍정 응답 메시지 ACK가 클라이언트 #1(1002)로부터 클라이언트 #2(1006)로 전송된다(단계 1050). 비디오 컨퍼런스 세션(미디어 세션)이 이 2개의 노드[클라이언트 #1(1002)과 클라이언트 #2(1006)] 사이에서 일어난다(단계 1055).
이제부터, 본 발명의 예시적인 실시예에 따른, 비디오 컨퍼런스 세션의 취소에 대응하는 세션 동작 시나리오에 대해 설명한다. CANCEL 메시지는 대기 중인 세션 설정 시도(pending session setup attempt)를 종료하는 데 사용된다. 클라이언트는 이 메시지를 사용하여 클라이언트가 앞서 개시하였던 대기 중인 비디오 컨퍼런스 세션 설정 시도를 취소할 수 있다. 서버는 INVITE가 전송되었던 곳인 대기 중인 요청들을 갖는 동일한 장소들로 CANCEL 메시지를 포워딩한다. 클라이언트는 CANCEL 메시지에 대해 "200 OK" 메시지로 응답해서는 안된다. CANCEL 메시지가 성공하지 못한 경우, 세션 종료 시퀀스(즉, BYE 메시지)가 사용될 수 있다.
도 11은 본 발명의 예시적인 실시예에 따른, SIP를 사용하여 비디오 컨퍼런스 세션을 취소하는 방법을 나타낸 도면이다. 도 11의 일례는 비디오 컨퍼런스 클라이언트 애플리케이션 #1(클라이언트 #1)(1102), 비디오 컨퍼런스 서버(서버)(205), 및 비디오 컨퍼런스 클라이언트 애플리케이션 #2(클라이언트 #2)(1106)를 포함한다.
INVITE 요청은 클라이언트 #1(1102)로부터 서버(205)로 전송된다(단계 1110). 이 INVITE 요청은 서버(205)로부터 클라이언트 #2(1106)로 포워딩된다(단계 1115).
180 링잉 메시지는 클라이언트 #2(1106)로부터 서버(205)로 전송된다(단계 1120). 이 180 링잉 메시지는 서버(205)로부터 클라이언트 #1(1102)로 포워딩된다(단계 1125).
CANCEL 메시지는 클라이언트 #1(1102)로부터 서버(205)로 전송된다(단계 1130). 이 CANCEL 메시지는 서버(205)로부터 클라이언트 #2(1106)로 포워딩된다(단계 1135).
이제부터, 본 발명의 예시적인 실시예에 따른, 비디오 컨퍼런스 세션의 종료에 대응하는 세션 동작 시나리오에 대해 설명한다. 도 12는 본 발명의 예시적인 실시예에 따른, SIP를 사용하여 2개의 클라이언트 사이의 비디오 컨퍼런스 세션을 종료시키는 방법을 나타낸 도면이다. 도 12의 일례는 제1 클라이언트(비디오 컨퍼런스 클라이언트 애플리케이션 #1)(1202), 비디오 컨퍼런스 서버(서버)(205), 및 제2 클라이언트(비디오 컨퍼런스 클라이언트 애플리케이션 #2)(1206)를 포함한다.
클라이언트 #1(1202)은 클라이언트 #2(1206)와의 호를 중단(discontinue)하기로 결정한다. 따라서, 클라이언트 #1(1202)은 BYE 메시지를 서버(205)로 전송한다(단계 1210). 서버(205)는 BYE 메시지를 클라이언트 #2(1206)로 포워딩한다(단계 1220).
클라이언트 #2(1206)는 200 OK 메시지를 다시 서버(205)로 전송하여 자신[클라이언트 #2(1206)]이 연결 해제(disconnect)되었음을 나타낸다(단계 1230). 서버(205)는 이 200 OK 메시지를 클라이언트 #1(1202)로 포워딩하여 성공적으로 연결 해제되었음을 나타낸다(단계 1240).
도 13은 본 발명의 예시적인 실시예에 따른, SIP를 사용하여 3개의 클라이언 트 사이의 비디오 컨퍼런스 세션을 종료시키는 방법을 나타낸 도면이다. 도 13의 일례는 제1 클라이언트(비디오 컨퍼런스 클라이언트 애플리케이션 #1)(1302), 비디오 컨퍼런스 서버(서버)(205), 제2 클라이언트(비디오 컨퍼런스 클라이언트 애플리케이션 #2)(1306), 및 제3 클라이언트(비디오 컨퍼런스 클라이언트 애플리케이션 #3)(1308)를 포함한다.
클라이언트 #1(1302)는 클라이언트 #2(1306) 및 클라이언트 #3(1308)과의 호를 중단하기로 결정하지만, 이것이 클라이언트 #2(1306)와 클라이언트 #3(1308) 사이의 세션을 해제(tear down)시키지는 않는다.
클라이언트 #1(1302)는 BYE 메시지를 서버(205)로 전송한다(단계 1310). 서버(205)는 이 BYE 메시지를 해석하고, 클라이언트 #2(1306) 및 클라이언트 #3(1308)가 클라이언트 #1(1302)와의 비디오 컨퍼런스 세션에 관여하고 있음을 알게 되며, 이 BYE 메시지를 클라이언트 #2(1306) 및 클라이언트 #3(1308) 양쪽 모두에게 포워딩한다(단계 1320 및 단계 1330).
클라이언트 #2(1306)는 200 OK 메시지를 서버(205)로 전송한다(단계 1340). 서버(205)는 이 200 OK 메시지를 클라이언트 #1(1302)로 포워딩한다(단계 1350). 클라이언트 #3(1308)은 200 OK 메시지를 서버(205)로 전송한다(단계 1360). 서버(205)는 이 200 OK 메시지를 클라이언트 #1(1302)로 포워딩한다(단계 1370).
도 14는 본 발명의 또다른 예시적인 실시예에 따른, SIP를 사용하여 3개의 클라이언트 사이의 비디오 컨퍼런스 세션을 종료시키는 방법을 나타낸 도면이다. 도 14의 일례는 제1 클라이언트(비디오 컨퍼런스 클라이언트 애플리케이션 #1)(1402), 비디오 컨퍼런스 서버(서버)(205), 제2 클라이언트(비디오 컨퍼런스 클라이언트 애플리케이션 #2)(1406), 및 제3 클라이언트(비디오 컨퍼런스 클라이언트 애플리케이션 #3)(1408)를 포함한다.
클라이언트 #1(1402)은 클라이언트 #2(1406) 및 클라이언트 #3(1408)과의 호를 중단하기로 결정하지만, 이것이 클라이언트 #2(1406)와 클라이언트 #3(1408) 사이의 세션을 해제(tear down)시키지는 않는다.
클라이언트 #1(1402)은 클라이언트 #2(1406)로 보내려고 하는 BYE 메시지를 서버(205)로 전송한다(단계 1410). 서버(205)는 이 BYE 메시지를 클라이언트 #2(1406)로 포워딩한다(단계 1420). 클라이언트 #1(1402)은 클라이언트 #3(1408)으로 보내려고 하는 BYE 메시지를 서버(205)로 전송한다(단계 1430). 서버(205)는 이 BYE 메시지를 클라이언트 #3(1408)으로 포워딩한다(단계 1440).
클라이언트 #2(1406)는 200 OK 메시지를 서버(205)로 전송한다(단계 1450). 서버(205)는 이 200 OK 메시지를 클라이언트 #1(1402)로 포워딩한다(단계 1460). 클라이언트 #3(1408)은 200 OK 메시지를 서버(205)로 전송한다(단계 1470). 서버(205)는 이 200 OK 메시지를 클라이언트 #1(1402)로 포워딩한다(단계 1480).
도 12 내지 도 14에 관하여 기술한 이상의 일례들 이외에도, BYE 메시지를 비디오 컨퍼런스 가입자들이 속해있는 멀티캐스트 그룹 주소로 전송함으로써 종료가 실시될 수 있다. 이 방법을 사용하여, 서버 및 기타 클라이언트 애플리케이션들이 그 메시지를 수신하게 된다. 이와 같이 하는 것이 그와 관련된 오버헤드가 더 적기 때문에 세션을 종료하기 위한 보다 보편적이고 효율적인 메카니즘이다.
이제부터, 본 발명의 예시적인 실시예에 따른, 해상도 및 프레임 레이트 조정에 대응하는 동작 시나리오에 대해 설명할 것이다. 비디오 컨퍼런싱은 컴퓨터 네트워크 상의 서로 다른 장소에 있는 몇명의 사용자들 간에 생생한 양방향 대화형 비디오를 전송하는 것을 필요로 한다. 실시간 대화형 비디오는 대량의 정보를 제약된 지연으로 전송하는 것을 요구한다. 이것은 비디오 컨퍼런스 시스템이 연결되어 있는 컴퓨터 네트워크가 세션에 관여된 각 사용자에게 적정량의 대역폭 및 서비스 품질을 제공할 수 있어야만 함을 요구한다. 대역폭은 때로는 제한된 자원일 수 있고 서비스 품질은 모든 네트워크에서 항상 보장될 수 있는 것은 아니며, 따라서 어떤 한계가 존재하게 된다. 사설 기업 네트워크에서, 서비스 품질을 보장하는 것이 가능하지만, 대량의 대역폭을 보장하는 것이 항상 가능한 것은 아니다.
기본적인 기업 컴퓨터 네트워크 인프라는 저속 링크들을 통해 서로 연결되어 있는 몇개의 고속 LAN(local area network, 근거리 통신망)을 포함한다(예를 들어, 도 2 참조). 고속 LAN들 각각은 보통 단일 지리적 장소에 있는 네트워크 인프라를 표현하고, 저속 링크들은 다수의 지리적 장소들을 서로 연결시키는 장거리 링크이다. 저속 링크들이 사용되는 이유는 장거리 링크의 비용이 비교적 고가이고 또한 네트워크 트래픽의 대부분이 보통은 근거리 통신망 내에 국한되어 있으며, 따라서 대량의 데이터가 보통은 이들 장거리 링크들을 거쳐 교환되지 않기 때문이다.
IP 기반 네트워크를 통한 서비스 품질의 최근의 향상은 이제 다른 유형의 정보가 이들 네트워크를 거쳐 전송될 수 있도록 해주는 수단을 제공한다. 이것은 비실시간 데이터 트래픽 이외에 그 인프라를 거쳐 실시간 정보(즉, 오디오 및 비디 오)를 전송하기 위한 문을 열어준다. 네트워크 서비스 품질을 이용하는 비디오 컨퍼런싱 서비스는 이 인프라 상으로 오버레이하기에 아주 적합하게 되어 있다. 이제는 2개의 서로 다른 지리적 장소에 있는 2명의 사용자가 실시간 비디오 컨퍼런스 세션에 참여할 수 있는 것이 가능하다. 비디오 컨퍼런스 세션의 한가지 단점은 실시간 비디오의 전송이 아주 대량의 대역폭을 소모하고 가용 네트워크 자원을 쉽게 소진시킬 수 있다는 것이다. 네트워크를 거쳐 전송되는 실시간 비디오의 비트 레이트는 주로 사용되는 비디오 해상도 및 압축 알고리즘에 달려 있다. 일반적으로, 서로 다른 지리적 장소에 있는 2명, 3명 또는 4명의 사용자 사이에서의 하나의 비디오 컨퍼런스 세션은 적정량의 대역폭을 갖는 네트워크를 통해 적절히 지원될 수 있다. 그렇지만, 일반적으로 비디오 컨퍼런스 세션에서 4명이 넘는 부가의 사용자들이 지원될 수 없었고 또 제2 비디오 컨퍼런스 세션이 대역폭 제약으로 인해 지원될 수 없었던 경우가 있었다. 비디오 컨퍼런스 시스템의 제한 요인은 지리적 장소들 사이의 저속 장거리 링크이다.
한가지 가능한 해결책은 그 시스템에서 더 많은 사용자를 지원하기 위해 2개의 지리적 장소 사이의 장거리 링크의 대역폭을 증가시키는 것이다. 이 방식의 결점은 대역폭이 아주 고가라는 것이다. 제2 해결책은 비디오 컨퍼런스 세션 내의 제한된 수의 사용자들(즉, 적극적 사용자)만이 고해상도 및 고속 비트 레이트로 전송할 수 있고 그 세션 내의 나머지 사용자들(즉, 소극적 사용자)은 제한된 비트 레이트 및 제한된 해상도로 전송할 수 있을 뿐인 시스템을 갖는 것이다. 비디오 컨퍼런스 세션 주최자(videoconference session organizer)는 어느 사용자가 고해상 도로 전송하게 되고 어느 사용자가 저해상도로 전송하게 되는지를 제어하게 된다. 사용자가 세션에서 적극적으로 발언하거나 대화하지 않는 경우, 그의 비디오를 고해상도로 전송할 필요가 없다. 이러한 방식은 엄청난 대역폭 절감을 제공할 수 있다.
미리 도 18a의 비디오 컨퍼런스 클라이언트 애플리케이션(1800)을 참조하면, 이 방식은 비디오 컨퍼런스 클라이언트 애플리케이션(1800)에 여러가지 윈도우 크기(즉, 고해상도 및 저해상도의 디코딩된 비디오 스트림을 표현하기 위한 서로 다른 크기의 디스플레이 윈도우)를 지원하는 사용자 인터페이스(1808), 및 서버(205)와 기타 클라이언트의 애플리케이션들 사이의 통신을 규정하는 메시징 시스템(1842)[네트워크 엔티티(1806)에 포함되어 있으며, 이 네트워크 엔티티(1806)는 이어서 도 18a의 비디오 컨퍼런스 클라이언트 애플리케이션(1800)에 포함되어 있음]을 구비할 필요가 있다. 메시징 시스템(1842)은 클라이언트의 애플리케이션들 각각의 인코딩 해상도 및 전송 비트 레이트를 제어하는 메시지를 포함하게 된다.
이제부터, 본 발명의 예시적인 실시예에 따른, 해상도 및 비트 레이트 조정에 대응하는 메시지에 대해 설명할 것이다. 특히, MSG_WINDOW_SWITCH 메시지 및 MSG_ADJUST_CODEC 메시지에 대해 설명할 것이다.
MSG_WINDOW_SWITCH 메시지는 클라이언트로부터 서버로 전송되는 것으로서 적극적 사용자와 소극적 사용자 사이의 전환을 나타낸다. 즉, 적극적 사용자는 소극적으로 되고, 소극적 사용자는 적극적으로 된다. 비디오 컨퍼런스 서버는 클라이 언트에서의 이러한 요청에 긍정 응답하게 된다.
MSG_ADJUST_CODEC 메시지는 서버로부터 각 클라이언트로 전송된다. MSG_ADJUST_CODEC 메시지는 클라이언트가 어떤 해상도(즉, CIF 또는 QCIF) 및 프레임 레이트를 전송하고 있어야만 하는지를 클라이언트에게 알려준다. MSG_ADJUST_CODEC 메시지는 각 클라이언트에 의해 긍정 응답된다.
도 15는 본 발명의 예시적인 실시예에 따른, 해상도 및 프레임 레이트 조정을 위한 시그널링 방법을 나타낸 도면이다. 도 15의 일례는 비디오 컨퍼런스 서버(서버)(205), 클라이언트 1(1504), 클라이언트 2(1506), 클라이언트 3(1508), 및 클라이언트 4(1510)를 포함한다.
MSG_WINDOW_SWITCH 메시지는 클라이언트 1(1504)로부터 서버(205)로 전송된다(단계 1520). 긍정 응답 메시지 ACK가 서버(205)로부터 클라이언트 1(1504)로 전송된다(단계 1525).
MSG_ADJUST_CODEC(로우) 메시지가 서버(205)로부터 클라이언트 1(1504)로 전송된다(단계 1530). 긍정 응답 메시지 ACK가 클라이언트 1(1504)로부터 서버(205)로 전송된다(단계 1535).
MSG_ADJUST_CODEC(하이) 메시지가 서버(205)로부터 클라이언트 2(1506)로 전송된다(단계 1540). 긍정 응답 메시지 ACK가 클라이언트 2(1506)로부터 서버(205)로 전송된다(단계 1545).
MSG_ADJUST_CODEC(로우) 메시지가 서버(205)로부터 클라이언트 3(1508)으로 전송된다(단계 1550). 긍정 응답 메시지 ACK가 클라이언트 3(1508)으로부터 서버(205)로 전송된다(단계 1555).
MSG_ADJUST_CODEC(로우) 메시지가 서버(205)로부터 클라이언트 4(1510)로 전송된다(단계 1560). 긍정 응답 메시지 ACK가 클라이언트 4(1510)로부터 서버(205)로 전송된다(단계 1565).
도 16은 본 발명의 예시적인 실시예에 따른, 해상도 및 프레임 레이트 조정(클라이언트 2와 클라이언트 3) 이전의 시그널링을 나타낸 도면이다. 도 17은 본 발명의 예시적인 실시예에 따른, 해상도 및 프레임 레이트 조정(클라이언트 2와 클라이언트 3) 이후의 시그널링을 나타낸 도면이다. 도 16 및 도 17의 일례들은 클라이언트 1(1602), 클라이언트 2(1604), 네트워크 라우터(1606), 클라이언트 3(1608), 및 클라이언트 4(1610)를 포함한다.
"send at low bit-rate/resolution(저속 비트 레이트/저해상도로 전송)" 메시지는 클라이언트 1(1602)로부터 네트워크 라우터(1606)로 전송된다(단계 1620). "send at high bit-rate/resolution(고속 비트 레이트/고해상도로 전송)" 메시지는 클라이언트 3(1608)로부터 네트워크 라우터(1606)로 전송된다(단계 1625). "send at low bit-rate/resolution(저속 비트 레이트/저해상도로 전송)" 메시지는 클라이언트 2(1604)로부터 네트워크 라우터(1606)로 전송된다(단계 1630). "send at high bit-rate/resolution(고속 비트 레이트/고해상도로 전송)" 메시지는 클라이언트 4(1610)로부터 네트워크 라우터(1606)로 전송된다(단계 1635).
데이터는 멀티캐스트 주소를 사용하여 네트워크 라우터(1606)로부터 클라이언트 2(1604), 클라이언트 3(1608), 클라이언트 1(1602), 및 클라이언트 4(1610)로 전송된다(각각 단계 1640, 단계 1645, 단계 1650, 및 단계 1655).
도 17로 가서, "send at low bit-rate/resolution(저속 비트 레이트/저해상도로 전송)" 메시지는 클라이언트 1(1602)로부터 네트워크 라우터(1606)로 전송된다(단계 1720). "send at high bit-rate/resolution(고속 비트 레이트/고해상도로 전송)" 메시지는 클라이언트 3(1608)으로부터 네트워크 라우터(1606)로 전송된다(단계 1725). "send at high bit-rate/resolution(고속 비트 레이트/고해상도로 전송)" 메시지는 클라이언트 2(1604)로부터 네트워크 라우터(1606)로 전송된다(단계 1730). "send at low bit-rate/resolution(저속 비트 레이트/저해상도로 전송)" 메시지는 클라이언트 4(1610)로부터 네트워크 라우터(1606)로 전송된다(단계 1735).
데이터는 멀티캐스트 주소를 사용하여 네트워크 라우터(1606)로부터 클라이언트 2(1604), 클라이언트 3(1608), 클라이언트 1(1602), 및 클라이언트 4(1610)로 전송된다(각각 단계 1740, 단계 1745, 단계 1750, 및 단계 1755).
이제부터, 본 발명의 예시적인 실시예에 따른, 클라이언트 애플리케이션 아키텍처에 대해 설명할 것이다. 클라이언트 애플리케이션은 사용자와 대화하는 일, 다른 클라이언트 애플리케이션들과 멀티미디어 콘텐츠를 교환하는 일, 및 서버 애플리케이션과의 호를 관리하는 일을 맡고 있다. 도 18a는 본 발명의 예시적인 실시예에 따른, 비디오 컨퍼런스 클라이언트 애플리케이션(1800)의 블록도이다. 비디오 컨퍼런스 클라이언트 애플리케이션(1800)이 컴퓨터(220a-f) 중 어느 것 및/또는 컴퓨터(230a-e) 중 어느 것 등의 컴퓨터 상에 존재할 수 있음을 잘 알 것이다.
비디오 컨퍼런스 클라이언트 애플리케이션(1800)은 이하의 4개의 기본적인 기능 엔티티, 즉 멀티미디어 인터페이스 계층(1802), 코덱(1804)[오디오 코덱(1804a) 및 비디오 코덱(1804b)], 네트워크 엔티티(1806), 및 사용자 인터페이스(1808)를 포함한다.
멀티미디어 인터페이스 계층(1802)은 비디오 컨퍼런스 클라이언트 애플리케이션(1800)의 주 제어 인스턴스(main controlling instance)이다. 모든 시스템내 통신(intra-system communication)은 멀티미디어 인터페이스 계층(1802)을 통해 라우팅되고 그에 의해 제어된다. 멀티미디어 인터페이스 계층(1802)의 주요 기반 특징들 중 하나는 서로 다른 오디오 및 비디오 코덱(1804)을 용이하게 교환하는 기능이다. 이것 이외에, 멀티미디어 인터페이스 계층(1802)은 오퍼레이팅 시스템(OS) 의존 사용자 입/출력 엔티티(OS dependent user input/output entity) 및 네트워크 서브시스템으로의 인터페이스를 제공한다. 멀티미디어 인터페이스 계층(1802)은 멤버 데이터베이스(1820), 주 제어 모듈(1822), 오디오 믹서(1899), 및 에코 소거 모듈(1898)을 포함한다.
사용자 인터페이스(1808)는 최종 사용자의 비디오 컨퍼런스 클라이언트 애플리케이션(1800)과의 대화점(point of interaction)을 제공한다. 사용자 인터페이스(1808)는 양호하게는 OS 의존 모듈로서 구현되지만 반드시 그럴 필요는 없다. 많은 그래픽 사용자 인터페이스는 이들이 사용하는 특정의 OS에 의존적이다. 사용자 인터페이스(1808)의 4가지 주요 기능으로는 비디오 캡처, 비디오 디스플레이, 오디오 캡처, 및 오디오 재생이 있다. 사용자 인터페이스(1808)는 오디오/비디오 캡처 인터페이스(1830), 오디오/비디오 재생 모듈(1832), 멤버 뷰(member view) 모듈(1834), 채팅 모듈(1836), 및 사용자 선택/메뉴(1838)를 포함한다. 오디오/비디오 캡처 인터페이스(1830)는 카메라 인터페이스(1830a), 마이크로폰 인터페이스(1830b), 및 파일 인터페이스(1830c)를 포함한다. 오디오/비디오 재생 모듈(1832)은 비디오 디스플레이(1832a), 오디오 재생 모듈(1832b), 및 파일 인터페이스(1832c)를 포함한다.
네트워크 엔티티(1806)는 비디오 컨퍼런스 클라이언트 애플리케이션(1800)의 통신 서브시스템을 나타낸다. 네트워크 엔티티(1806)의 기능들은 SIP에 기반한 클라이언트 대 서버 메시징(client to server messaging)과, 오디오 및 비디오 스트림의 전송 및 수신이다. 네트워크 엔티티(1806)는 또한 클라이언트들 간의 미디어 스트림의 암호화 통신(cryptographic communication) 및 인증(authentication)을 위한 기본적인 보안 기능들을 포함한다. 네트워크 엔티티(1806)는 보안 모듈(1840), 메시징 시스템(1842), 비디오 스트림 모듈(1844), 오디오 스트림 모듈(1846), 및 IP 소켓(1848)을 포함한다.
오디오 코덱(1804a) 및 비디오 코덱(1804b)은 디지털 미디어의 압축(compression) 및 압축 해제(decompression)를 처리하는 서브시스템이다. 코덱으로의 인터페이스는 코덱의 교환이 용이하도록 하기 위해 단순하고 일반적이어야만 한다. 멀티미디어 인터페이스 계층(1802)과 코덱(1804) 사이의 간단한 관계가 구현을 위한 예시적인 템플릿 또는 가이드로서 이후에 정의되어 있다. 오디오 코덱(1804a) 및 비디오 코덱(1804b)은 각각 인코더(1880)와 디코더(1890)를 포함한 다. 인코더(1880)와 디코더(1890)는 각각 큐(1895)를 포함한다.
비디오 컨퍼런스 클라이언트 애플리케이션(1800)은 적어도 비디오 컨퍼런스 서버(205) 및 기타 클라이언트(1870)와 인터페이스로 연결되어 있다.
이제부터, 본 발명의 예시적인 실시예에 따른, 도 18a의 멀티미디어 인터페이스 계층(1802)에 포함되어 있는 멤버 데이터베이스(1820)에 대해 설명할 것이다. 멤버 데이터베이스(1820)는 세션 별로 참가중인 사용자 각각에 관한 정보를 저장한다. 멤버 데이터베이스(1820)는 송신측/수신측 IP 주소에 관한 정보, 클라이언트 성능, 특정의 코덱에 관한 정보, 및 서로 다른 사용자들의 상태에 관한 상세를 포함하고 있다. 이상의 항목들은 단지 예시적인 것에 불과하며, 따라서 이상의 항목들의 일부 또는 그 전부에 부가하여 또는 그를 대신하여 다른 항목들이 또한 본 발명의 사상 및 범위를 유지하면서 멤버 데이터베이스(1820)에 유지될 수 있음을 잘 알 것이다. 멤버 데이터베이스(1820)에 포함되어 있는 정보는 오디오 및 비디오 디코더(1890)로 보내려고 하는 착신 정보를 제어하기 위해 사용된다. 네트워크로부터 들어오는 미디어 정보는 정확한 오디오 및 비디오 디코더(1890)로 라우팅될 필요가 있다. 마찬가지로 중요한 점으로는, 오디오 및 비디오 인코더(1880)로부터 나오는 미디어 정보도 배포를 위해 정확한 유니캐스트 또는 멀티캐스트 주소로 라우팅될 필요가 있다는 것이다. 멤버 데이터베이스(1820)에 포함되어 있는 기초 정보도 또한 최종 사용자가 세션의 참가자들 및 그들의 성능을 알고 있도록 하기 위해 사용자 인터페이스(1808)로 라우팅된다. INVITE 요청이 비디오 컨퍼런스 서버(205)로부터 수신되자마자 사용자는 멤버 데이터베이스(1820)에 추가되며, BYE 요청이 비디오 컨퍼런스 서버(205)로부터 수신되자마자 사용자는 제거된다. 멤버 데이터베이스(1820)는 세션이 종료될 때 플러쉬(flush)된다.
이제부터, 본 발명의 예시적인 실시예에 따른, 도 18a의 멀티미디어 인터페이스 계층(1802)에 포함된 주 제어 모듈(1822)에 대해 설명할 것이다.
주 제어 모듈(1822)은 멀티미디어 인터페이스 계층(1802)의 아주 중요한 부분이다. 주 제어 모듈(1822)은 중앙 관리 서브시스템으로서 기능하며 이하의 주요 기능, 즉 오디오 및 비디오 디코더와 재생의 동기화 메카니즘, 디코더의 목적지를 기록을 위한 파일 또는 스크린에 연결, 및 애플리케이션 계층 서비스 품질을 제공한다.
오디오 및 비디오 재생의 동기화는 최적의 비디오 컨퍼런싱 사용자 경험에 아주 중요하다. 2개의 미디어 스트림을 정확하게 동기화시키기 위해, 타임스탬프(timestamp)가 사용되고 미디어 콘텐츠와 함께 전송될 필요가 있다. RTP(Real Time Protocol, 실시간 프로토콜)는 이를 위해 타임스탬프 및 순서 번호를 포함하기 위한 일반 헤더(generic header)를 제공한다. 제공되는 타임스탬프는 2개의 네트워크 노드 클록을 동기화시키기 위한 것이 아니라 일관된 재생을 위해 오디오 및 비디오 스트림을 동기화시키기 위한 것이다. 이들 타임스탬프는 캡처 시에 동일 노드 상의 공통 클록으로부터 도출될 필요가 있게 된다. 예를 들어, 비디오 프레임이 캡처될 때, 비디오 프레임이 캡처된 시간이 기록되어야만 한다. 오디오에 대해서도 마찬가지이다. RTP를 사용하는 것에 대한 부가의 상세 및 지침에 대해서는 본 명세서의 다른 곳에서 설명한다.
오디오와 비디오를 동기화시키는 데 있어서의 주 제어 모듈(1822)의 기능은메타데이터(타임스탬프와 순서 번호를 포함함)와 멀티미디어 데이터의 적절한 전달을 위해 네트워크 엔티티(1806)와 코덱(1804) 사이를 연결시켜주는 것이다. 패킷이 지연되면, 그 패킷은 시스템의 현재 상태에 따라 디코딩 이전에 또는 그 이후에 누락될 수 있다. RTP 타임스탬프는 이어서 프레젠테이션 및 재생 타임스탬프를 생성하기 위해 사용된다.
주 제어 모듈(1822)은 또한 오디오 및 비디오 디코더(1890)의 출력을 재생을 위해 스크린으로 보내는 일, 기록을 위해 파일로 보내는 일, 또는 둘다로 보내는 일을 맡고 있다. 각 디코더(1890)는 독립적으로 취급되며, 따라서 이렇게 함으로써 어떤 예시적인 상황에서 한 디코드의 출력은 스크린 상에 디스플레이될 수 있게 되고, 제2 디코더의 출력은 파일에 기록될 수 있게 되며, 또한 제3 디코더로부터의 출력은 동시에 파일과 스크린 둘다로 갈 수 있게 된다.
전술한 임무 이외에, 주 제어 모듈(1822)은 애플리케이션 계층 서비스 품질에도 관여하고 있다. 주 제어 모듈(1822)은 패킷 누락에 관한 정보, 즉 수신 및 전송된 바이트를 수집하고, 그에 따라 이 정보에 기초하여 동작한다. 이것은 네트워크에서 일어나는 상황을 개선시키는 데 도움을 주기 위해 또다른 클라이언트 또는 비디오 컨퍼런스 서버(205)에 메시지를 전송하는 것을 필요로 한다. RTCP(Real Time Control Protocol, 실시간 제어 프로토콜)이 통계 및 패킷 손실을 보고하기 위해 사용될 수 있으며, 또한 애플리케이션 고유 시그널링을 위해 사용될 수도 있다.
도 18b는 본 발명의 예시적인 실시예에 따른, 도 18a의 멀티미디어 인터페이스 계층(1802)에 포함되는 오디오 믹서(1899)를 더 구체적으로 나타낸 블록도이다. 본 명세서에서 "이득 제어 모듈"(gain control module)이라고도 불리우는 오디오 믹서(1899)는 복수의 오디오 디코더(1890)에 연결되어 동작한다. 다수의 오디오 디코더(1890)는 압축된 오디오 스트림을 수신하고 압축 해제된 오디오 스트림을 출력한다. 압축 해제된 오디오 스트림은 오디오 믹서(1899)에 입력되고, 합성된 오디오 스트림으로서 출력된다.
도 18c는 본 발명의 예시적인 실시예에 따른, 도 18a의 멀티미디어 인터페이스 계층(1802)에 포함되는 에코 소거 모듈(1898)을 더 구체적으로 나타낸 블록도이다. 에코 소거 모듈[본 명세서에서 "에코 소거기"(echo canceller)라고도 불리움](1898)은 스피커(1897)[예를 들어, 오디오 재생 모듈(1832b)]와 마이크로폰(1896)[예를 들어, 마이크로폰 인터페이스(1830b)]에 연결되어 동작한다. 스피커(1897)로부터의 사운드가 전이중(full duplex) 또는 양방향(two-way) 통신 시스템에서 재생될 때, 그 사운드는 근방의 청취자만이 듣도록 하기 위한 것이다. 그렇지만, 재생된 사운드는 또한 근방의 마이크로폰(1896)도 듣게 되며, 이에 따라 이어서 그 신호는 다시 먼 곳으로 전송될 수 있게 되어 에코(echo)로서 들리게 된다. 이러한 이유로, 비디오 컨퍼런스 클라이언트 애플리케이션(1800)은 이러한 효과를 완화시킴으로써 보다 나은 사용자 경험을 생성하기 위해 에코 소거 모듈(1898)을 필요로 한다.
이제부터, 본 발명의 예시적인 실시예에 따른, 비디오 컨퍼런스 클라이언트 애플리케이션(1800)의 서브시스템이 이용할 수 있는 인터페이스들에 대해 설명할 것이다. 이들 인터페이스는 사용자 인터페이스(1808), 네트워크 엔티티(1806), 및 코덱(1804)과의 대화점을 포함한다. 사용자 인터페이스(1808)는 캡처된 오디오 및 비디오를 그의 대응하는 타임스탬프와 함께 수신하기 위한 기능들을 제공한다. 이것 이외에, 디스플레이 및 재생을 위해 오디오 및 비디오를 사용자 인터페이스(1808)로 전송하기 위한 기능들도 제공되어야만 한다. 네트워크 엔티티(1806) 인터페이스는 세션 제어 및 보안을 위해 착신 및 발신 메시지를 전달하기 위한 기능들을 제공한다. 오디오 및 비디오 코덱(1804a, 1804b)은 압축 또는 압축 해제하기 위해 패킷들을 전송 및 수신하는 것 뿐만 아니라 구성 제어를 위한 기본적인 인터페이스를 제공한다.
이제부터, 본 발명의 예시적인 실시예에 따른, 오디오 및 비디오 코덱(1804a, 1804b)에 대해 설명할 것이다.
비디오 컨퍼런싱에서 사용할 수 있는 몇가지 오디오 및 비디오 코덱이 있다. 양호하게는 본 발명에 따라 사용되는 코덱은 소프트웨어 기반이지만, 꼭 그럴 필요는 없다. 본 발명의 예시적인 한 실시예에 따르면, 일반적인 데스크톱 컴퓨터의 처리 능력 제약으로 인해 H.263이 비디오 압축 및 압축 해제에 사용된다. 데스크톱 컴퓨터가 장래에 보다 강력하게 됨에 따라, H.26L 등의 보다 성능이 좋은 코덱을 사용하는 기능도 실현되어 이용될 수 있다. 물론, 본 발명은 전술한 유형의 코덱들에 제한되지 않으며, 따라서 다른 유형의 코덱들도 본 발명의 사상 및 범위를 유지하면서 사용될 수 있다.
이제부터, 본 발명의 예시적인 실시예에 따른, 코덱(1804a, 1804b)에 대한 인터페이스에 대해 설명할 것이다. 이 설명에서는 데이터입력(DataIn) 함수, 콜백(callback) 함수, 및 코덱 옵션을 포함하고 있다. 코덱(1804a, 1804b)으로의 인터페이스는 코덱의 상호 교환성이 있도록 또한 장래에 새로운 코덱을 추가하는 것이 가능하도록 충분히 유연성이 있고 일반적 의미로 정의되어야만 한다. 이러한 유연성있고 일반적인 인터페이스를 구현하기 위한 제안된 인터페이스는 사용자에게 제한된 수의 기능을 제공하는 아주 간단한 인터페이스이다.
데이터입력 함수는 단순히 인코더 또는 디코더 클래스의 프레임 또는 패킷을 저장하기 위해 사용된다.
멀티미디어 인터페이스 계층(1802)과 멀티미디어 코덱(1804) 사이의 간단한 연결을 제공하기 위해, 데이터 출력 함수가 콜백으로서 구현되어야만 한다. 멀티미디어 인터페이스 계층(1802)은 이 콜백 함수를 수신측 엔티티의 입력 함수로 설정한다. 예를 들어, 코덱이 프레임의 인코딩 또는 디코딩을 완료했을 때, 목적한 정보를 인코딩 또는 디코딩 프로세스로부터 전달하기 위해 이 함수가 코덱에 의해 호출될 것이다. 코덱이 이러한 콜백 동안 아무런 일도 할 수 없다는 제약으로 인해, 이 함수는 시스템에서의 대기 및 불필요한 지연을 방지하기 위해 가능한 한 신속히 복귀(return)해야만 한다. 공유 자원에 액세스할 때 이 함수에서 수행되어야만 하는 유일한 추가의 대기는 뮤텍스 록(mutex lock)이어야만 한다.
서로 다른 유형의 코덱들이 이용가능한 옵션들의 범위는 변하게 된다. 이들 옵션을 관리하기 위한 요구 사항을 만족시키기 위해, 간단한 인터페이스가 사용되 어야만 한다. 텍스트 기반 인터페이스가 양호한데(그렇지만 강제되는 것은 아님) 그 이유는 그것이 제공하는 유연성 때문이다. START 및 STOP 등의 공통 명령어 세트, 게다가 코덱 고유 명령어들이 있어야만 한다. 이 방법은 간단한 인터페이스를 제공하지만 간단한 인터프리터(interpreter)가 요구되기 때문에 코덱에 부가의 복잡성을 부가한다. 예로서, Options 함수는 옵션을 판독 및 기록하기에 충분히 일반성이 있을 수 있다.
예: Result = Options("start"), Result = Options("resolution = CIF"), 등
예를 들어, 코덱들 간의 공통 옵션 중 어떤 것들은 다음과 같이 표준화되어야만 한다. 즉, start, stop, pause, quality index(0 - 100), 및 resolution으로 표준화되어야만 한다.
quality index는 코덱의 전체 품질을 0% 내지 100% 사이의 값으로서 기술하는 인자이다. 값이 높을수록 비디오 품질이 더 좋다는 기본적인 가정을 따른다.
도 19는 본 발명의 예시적인 실시예에 따른, 오디오 코덱(1804a) 및/또는 비디오 코덱(1804b) 중 어느 하나에 포함되어 있는 디코더(1890)에서 사용되는 방법을 나타낸 도면이다. 이 방법은 디코더 콘텍스트(decoder context)(1901) 및 호출자 콘텍스트(caller context)(1902)와 관련하여 기술된다. 이 방법은 적어도 이하의 입력 및 출력, 즉 "data in"(데이터 입력)(1999), "signal in"(신호 입력)(1998), "signal out callback"(신호 출력 콜백)(1997), "set callback function"(콜백 설정 함수)(1996), 및 "data out callback"(데이터 출력 콜백)(1995)을 사용하여 동작한다. 입력 "data in"(데이터 입력)(1999)은 데이터 를 입력 큐에 저장하는 데 사용된다(단계 1905).
초기화 단계(초기화)는 디코더(1890)를 초기화하기 위해 수행된다(단계 1910). 시작(start) 또는 종료(exit) 명령을 기다리는 메인 루프가 실행된다(단계 1920). 종료 명령이 수신되면, 본 방법은 종료되고(단계 1922), 예를 들면 다른 동작으로 복귀가 이루어진다(단계 1924).
데이터가 입력 큐(1895)로부터 판독되거나, 입력 큐(1895)가 비어 있는 경우 대기 조건이 부과된다(단계 1930). 데이터는 단계 1930에서 판독된 경우 디코딩된다(단계 1940). "data out callback"(데이터 출력 콜백)(1995)이 단계 1920에 제공된다.
이제부터, 본 발명의 예시적인 실시예에 따른, 네트워크(200)에 의해 이용되는 통신에 대해 설명할 것이다. 이 설명은 네트워크 통신에 대해 전술한 것을 보충한다.
메시징 시스템(1842)[도 18a의 네트워크 엔티티(1806)에 포함되어 있음]은 비디오 컨퍼런스 클라이언트 애플리케이션(1800)과 비디오 컨퍼런스 서버(205) 사이의 인터페이스를 제공한다. 이 메시징 시스템(1842)은 세션 관리(즉, 세션의 설정 및 해제)에 사용하기 위한 것이다. 모든 시그널링 메시지는 비디오 컨퍼런스 서버(205)를 통해 전달되며 클라이언트에서 클라이언트로 직접 전달되지 않는다. 멀티미디어 콘텐츠 및 사적인 채팅 메시지 등의 데이터는 클라이언트들 사이에 직접 전송되는 유일한 정보를 구성한다. 메시징 시스템은 표준 기반 접속 설정 프로토콜(SIP)을 사용한다.
비디오 컨퍼런스 클라이언트 애플리케이션(1800)의 기능을 통제하는 몇가지 서로 다른 프로토콜이 있다. 예를 들어, SIP(접속 설정 프로토콜), RTP(실시간 프로토콜), RTCP(실시간 제어 프로토콜), 및 SDP(세션 기술 프로토콜)가 이용될 수 있다.
SIP(접속 설정 프로토콜)의 목적은 세션 관리이다. SIP는 IP 기반 네트워크 상의 한명 이상의 참가자와의 멀티미디어 세션을 생성, 수정 및 종료하기 위한 텍스트 기반 애플리케이션 계층 제어 프로토콜이다. SIP는 이를 달성하기 위해 클라이언트와 서버 사이에서 사용된다. SIP에 대해서는 비디오 컨퍼런스 서버(205)와 관련하여 앞서 구체적으로 기술하였다.
RTP(실시간 프로토콜)는 실시간 멀티미디어(즉, 오디오 및 비디오)의 전송을 위해 사용된다. RTP는 그 자신이 전달하는 멀티미디어 정보의 유형에 관한 부가의 상세를 제공하기 위한 애플리케이션 계층 프로토콜이다. RTP는 전송 계층 상부에 존재하며 보통 UDP(사용자 데이터그램 프로토콜)의 최상단에서 전달된다. 클라이언트 애플리케이션에서의 RTP의 주요 기능은 RTP가 캡슐화하고 있는 페이로드의 유형(예를 들어, MPEG4, H.263, G.723 등)을 식별하는 것 뿐만 아니라 (오디오 및 비디오 동기화를 위한) 타임스탬프, 순서 번호를 전송하기 위한 것이다.
도 20은 본 발명의 예시적인 실시예에 따른 사용자 평면 프로토콜 스택(user plane protocol stack)(2000)을 나타낸 도면이다. 사용자 평면 프로토콜 스택(2000)은 한 계층 상의 비디오(2010)와 음성(2020), 다른 계층 상의 비디오(2010)와 음성(2020) 둘다를 위한 RTP(2030), 또다른 계층 상의 UDP 포트 #X(2040)와 UDP 포트 #Y(2050), IP 계층(2060), 링크 계층(2070), 및 물리 계층(2080)을 포함한다. 일반 RTP 헤더(generic RTP header)에 부가하여, 코덱 고유 RTP 헤더(codec specific RTP header)가 사용된다.
RTCP(실시간 제어 프로토콜)은 RTP 표준의 일부이다. RTCP는 송신자와 수신자 사이의 통계 보고 도구로서 사용된다. 각각의 비디오 컨퍼런스 클라이언트 애플리케이션(1800)은 그들의 통계를 수집하여 이를 서버(205)에게 뿐만 아니라 서로에게도 전송한다. 비디오 컨퍼런스 서버(205)는 이 데이터에 기초하여 세션 중에 일어날지도 모를 문제점들에 관한 정보를 기록한다.
도 21은 본 발명의 예시적인 실시예에 따른 제어 평면 프로토콜 스택(control plane protocol stack)(2100)을 나타낸 도면이다. 이 제어 평면 프로토콜 스택(2100)은 한 계층 상의 SIP(2110), UI 코덱 변경 메시징(2120) 및 RTCP(2130)와, TCP 계층(2140), IP 계층(2150), 링크 계층(2160), 및 물리 계층(2170)을 포함한다.
SDP의 주요 목적은 세션의 미디어 스트림에 관한 정보를 전달하는 것이다. SDP는 이하의 항목들, 즉 세션 이름 및 목적, 세션이 활성인 시간, 세션을 구성하는 미디어, 미디어를 수신하기 위한 정보(즉, 주소, 포트, 포맷 등), 미디어의 유형, 전송 프로토콜(RTP/UDP/IP), 미디어의 포맷(H.263 등), 멀티캐스트, 미디어의 멀티캐스트 주소, 미디어의 전송 포트, 유니캐스트, 및 미디어의 원격 주소를 포함하지만, 이에 한정되는 것은 아니다.
SDP 정보는 SIP 메시지의 메시지 보디이다. 이들은 함께 전송된다.
이제부터, 본 발명의 예시적인 실시예에 따른, 도 18a의 사용자 인터페이스(1808)에 대해 설명할 것이다. 사용자 인터페이스(1808)는 비디오 컨퍼런스 클라이언트 애플리케이션(1800)의 아주 중요한 요소이다. 사용자 인터페이스(1808)는 몇가지 뷰(디스플레이/버튼/메뉴/...)를 포함하며, 모든 입력 데이터(오디오/비디오 캡처, 버튼, 키 스트로크)를 처리할 수 있다.
도 22는 본 발명의 예시적인 실시예에 따른, 도 18a의 사용자 인터페이스(1808)에 대응하는 스크린 샷(2200)을 나타낸 블록도이다. 스크린 샷(2200)은 "대형 뷰"(big view)(2210), "소형 뷰"(small view)(2220), 채팅 뷰 부분(2230), 멤버 뷰 부분(2240), 및 채팅 편집 부분(2250)을 포함한다.
다시 도 18a를 참조하면, 비디오 캡처 인터페이스(1830)는 다음과 같은 웹 캠(web cam)(도시 생략), 캡처 카드 및 고품질 카메라(도시 생략), 카메라 인터페이스(1830a), 마이크로폰 인터페이스(1830b), 파일 인터페이스(1830c), 기타 중 임의의 것을 포함할 수 있다.
웹 캠은 윈도즈 오퍼레이팅 시스템에 의해 제공되는 VFW(Video For Windows) API(Application Programming Interface, 애플리케이션 프로그래밍 인터페이스)를 사용하여 USB 또는 파이어와이어(Firewire)(IEEE 1394) 인터페이스를 통해서나 또는 리눅스 등의 다른 오퍼레이팅 시스템 하에서 사용되는 대안의 캡처 드라이버를 통해 지원되어야만 한다. 물론, 본 발명은 상기의 인터페이스, 오퍼레이팅 시스템, 또는 드라이버에 한정되지 않으며, 따라서 다른 인터페이스, 오퍼레이팅 시스템 및 드라이버도 본 발명의 사상 및 범위를 유지하면서 사용될 수 있다.
멤버 뷰 모듈(1834)은 진행 중인 호에 참가하고 있는 멤버들을 보여주는 데 사용된다. 호의 개시자(즉, 마스터)는 원하지 않는 멤버를 누락시키거나 적극적인 멤버를 선택하거나 할 수 있다. 모든 멤버는 사적인 채팅 메시지 교환을 위한 하나 이상의 멤버를 선택할 수 있다. 게다가, 멤버의 상태는 멤버 뷰 모듈(1834)에 표시된다. 이어서, 멤버는 다른 멤버들에게 자기가 현재 자리에 없지만 곧 되돌아올 것임을 표시하기 위해 자기 자신의 상태를 예를 들면 "자리에 없음"(Unavailable)으로 설정할 수 있다.
비디오 스트림 이외에, 모든 멤버는 채팅 모듈(1836)을 사용하여 다른 멤버들 모두 또는 그의 일부에게만 채팅 메시지를 전송할 기회도 갖는다. 이 메시지는 채팅 뷰에 디스플레이되고 채팅 편집 뷰에서 편집된다. 스크롤바를 사용하여 오래된 메시지를 볼 수 있다.
이제부터, 본 발명의 예시적인 실시예에 따른, 클라이언트 애플리케이션(1800)의 동작 시나리오에 대해 설명할 것이다. 이하의 설명은 단지 클라이언트 애플리케이션(1800)의 특징들 중 일부에 대한 기본적인 지침에 불과하며 특성들의 전체 리스트를 나타내고자 한 것이 아니다. 이 설명은 로그인(login), 호의 개시(initiation), 호의 수락(acceptance), 및 로그오프(logoff)를 포괄하고 있다.
로그인은 클라이언트 애플리케이션(1800)이 처음으로 기동될 때 행해진다. 로그인은 시동시에 오퍼레이팅 시스템으로 제공된 로그인 이름에 기초하여 자동적으로 행해질 수 있거나, 로그인에 독립적인 다른 인터페이스가 사용될 수 있다. 그것은 현재 사용되고 있는 양호한 네트워크 인증 방법과, 정책들이 어떻게 운용되는지에 달려있다. 가장 간단한 방법은 명명의 일관성을 유지하고 또 (적용가능한 경우) 기존의 사용자 데이터베이스를 재사용할 수 있도록 윈도즈 오퍼레이팅 시스템에서 사용되는 것과 동일한 로그인 이름을 사용하는 것이다.
도 23은 본 발명의 예시적인 실시예에 따른 로그인 인터페이스(2300)을 나타낸 도면이다. 가입 기능(sign up feature)(2330)은 사용자가 현재 서버 상에 계정을 가지고 있지 않은 경우 사용된다. 이메일 주소는 용이한 접속을 위해 임의의 이메일 주소 입력 상자(2340)에 제공될 수 있다.
호를 개시하기 위해, 클라이언트 애플리케이션(1800)은 이용가능한 후보의 리스트를 얻기 위해 서버(205)에 질의를 한다. 클라이언트는 그 자신이 비디오 컨퍼런스 세션에 참여시키고자 하는 사용자들을 선택할 수 있다. 2명의 참가자가 참여하고 있는 경우 세션은 유니캐스트로서 설정되고, 그렇지 않고 2명을 넘는 참가자가 참여하고 있는 경우 세션은 멀티캐스트 세션으로서 설정된다.
도 24는 본 발명의 예시적인 실시예에 따른, 접속 설정(session initiation)을 위한 사용자 선택 인터페이스(2400)를 나타낸 블록도이다.
사용자가 호에 초대되면, 개시자의 이름을 보여주는 메시지가 사용자의 화면 상에 디스플레이된다. 이어서 사용자는 그 호를 수락하거나 거부할 수 있다. 사용자가 그 호를 수락하면, 클라이언트 애플리케이션(1800)은 수락 (또는 긍정 응답) 메시지를 서버(205)로 전송한다. 이어서, 서버(205)는 그 호에 현재 참가하고 있는 모든 멤버들에게 이 새로운 멤버에 관하여 알려준다. 사용자가 서버(205)로 취소 메시지를 전송함으로써 그 호를 거부하는 경우, 다른 모든 멤버들에게도 그러한 사실에 관하여 알려준다. 도 25는 본 발명의 예시적인 실시예에 따른, 착신 호(incoming call)를 수락(accept) 또는 거부(reject)하는 초청 인터페이스(invitation interface)(2500)를 나타낸 블록도이다.
로그오프는 비디오 컨퍼런스 서버(205)의 데이터베이스 엔티티(302)에 포함되어 있는 멤버 데이터베이스(314)로부터 사용자를 제거하게 된다. BYE 메시지가 그 세션에 참가 중인 클라이언트 각각에게로 전송된다. 이것은 멀티캐스트 또는 유니캐스트를 통해 행해질 수 있다. 멀티캐스트가 이 메시지를 전송하는 데 양호한 방법이다.
본 발명은 비디오 컨퍼런스 애플리케이션에 사용자 인터페이스를 제공하며, 이 사용자 인터페이스는 다수의 비디오 디스플레이 윈도우 크기(고해상도 및 저해상도 디코딩된 비디오 스트림을 표현하기 위한 서로 다른 크기의 디스플레이 윈도우)를 지원한다. 게다가, 본 발명은 서버가 비디오 컨퍼런스 세션 제어 클라이언트 또는 네트워크 장비로부터 전송된 메시지에 기초하여 각각의 개별 클라이언트의 비디오 인코딩 파라미터를 제어할 수 있게 해주는 메시징 시스템을 제공한다. 사용자 인터페이스 및 메시징 시스템은 비디오 컨퍼런스 세션에서의 제한된 인원의 사용자들(즉, 적극적 사용자들)만이 고해상도 및 고속 비트 레이트로 전송할 수 있는 환경을 구축하며, 나머지 사용자들(즉, 소극적 사용자들)은 제한된 비트 레이트 및 제한된 해상도로 전송할 수 있을 뿐이다. 비디오 컨퍼런스 세션에 적극적으로 참가하고 있지 않은 사용자에게 고해상도 및 고속 비트 레이트로 비디오를 전송하 지 않음으로써 네트워크에서 대역폭이 보다 효율적으로 사용될 수 있다. 사용자 인터페이스 및 메시징 시스템은 또한 본 명세서에서 총괄하여 "재생 제어 시스템"이라고도 불리운다. "적극적 사용자" 및 "적극적 참가자"라는 문구는 본 명세서에서 사용교환되어 사용될 수 있음을 잘 알 것이다. 게다가, "소극적 사용자" 및 "소극적 참가자"라는 문구는 본 명세서에서 사용교환되어 사용될 수 있음을 잘 알 것이다. 적극적 참가자는 비디오 컨퍼런스 세션에 적극적으로 참여하지 않고 있는 소극적 참가자와는 반대로 비디오 컨퍼런스 세션에 적극적으로 참여(예를 들면, 발언)하는 자이다.
본 발명의 예시적인 실시예에서, 비디오 컨퍼런스 세션 통제자(videoconference session controller)[이후 "세션 통제자"(session controller)라 함]는 어느 사용자가 고해상도로 전송하고 어느 사용자가 저해상도로 전송하는지를 제어한다. 예시적인 실시예에서, 세션 통제자는 비디오 컨퍼런스 세션의 (다른) 참가자들의 사용자 인터페이스보다 성능이 좋은 사용자 인터페이스를 가지며, 따라서 세션 통제자는 어느 참가자가 적극적 참가자이고 어느 참가자가 소극적 참가자인지를 선택할 수 있다. 세션 통제자는 비디오 컨퍼런스 세션의 개시자이거나 (비디오 컨퍼런스 세션의 다른 참가자 또는 심지어 비참가자를 포함하는) 어떤 다른 사람일 수 있다. 본 발명의 예시적인 실시예가 단 한명의 세션 통제자와 관련하여 기술되고 있지만 본 발명은 2명 이상의 세션 통제자를 사용하여 용이하게 구현될 수 있음을 잘 알 것이다. 또한, 적극적 사용자 및 소극적 사용자의 선택이 본 명세서에서는 2개의 서로 다른 사용자 인터페이스, 즉 세션 통제자용 의 (성능이 더 좋은) 한 사용자 인터페이스와 비디오 컨퍼런스의 (다른) 참가자용의 다른 사용자 인터페이스와 관련하여 기술되어 있지만 다른 개수의 사용자 인터페이스 및 그의 다른 구성 및 구현이 본 발명의 사상 및 범위를 유지하면서 당업자에 의해 용이하게 구현될 수 있음을 잘 알 것이다. 세션 통제자의 사용자 인터페이스는 이하에서 도 27을 참조하여 기술되고, (다른) 참가자들의 사용자 인터페이스는 이하에서 도 26을 참조하여 기술된다.
도 26은 본 발명의 예시적인 실시예에 따른 사용자 인터페이스(2600)를 나타낸 블록도이다. 본 발명의 예시적인 실시예에 따르면, 사용자 인터페이스(2600)는 비디오 컨퍼런스 시스템에서 서로 다른 해상도를 지원하기 위해 2개의 서로 다른 크기의 디스플레이 윈도우를 포함하고 있다. 설명의 목적상, 이 2개의 서로 다른 윈도우 크기는 다음과 같이 선택된다. 즉, 고해상도에는 352×288 윈도우(2630)가 선택되고 저해상도에는 88×72 윈도우(2640)가 선택된다. 본 발명이 상기 개수의 서로 다른 윈도우 크기에 한정되지 않고 또 상기 해상도에도 한정되지 않으며, 따라서 다른 개수의 서로 다른 윈도우 크기 및 해상도가 본 발명의 사상 및 범위를 유지하면서 이용될 수 있음을 잘 알 것이다. 즉, 본 명세서에 제공된 본 발명의 개시 내용을 보면, 당업자는 본 발명의 사상 및 범위를 유지하면서 본 발명의 이러한 구성 및 구현과 다른 여러가지 구성 및 구현을 용이하게 안출할 것이다.
예시적인 일례에서, 2명의 주요 참가자(즉, 적극적 참가자)가 고해상도로 인코딩 및 전송하고 있으며 이들은 대형 윈도우에 디스플레이된다. 나머지 참가자들(즉, 소극적 참가자들)은 저해상도로 인코딩 및 전송하고 있으며 이들은 소형 윈도우에 디스플레이된다.
도 27은 본 발명의 또다른 예시적인 실시예에 따른 사용자 인터페이스(2700)를 나타낸 블록도이다. 본 발명의 예시적인 실시예에 따르면, 비디오 컨퍼런스 세션의 세션 통제자는 다수의 참가자들 중 누가 비디오 컨퍼런스 세션에서 주요(즉, 적극적) 참가자인지를 그 자신이 선택할 수 있도록 해주는 보다 성능이 좋은 사용자 인터페이스를 가지게 된다. 본 발명의 예시적인 실시예에 따르면, 세션 통제자는 그 자신의 화면의 우측에 있는 윈도우(2640) 중 하나(저해상도 윈도우들 중 하나)를 선택함으로써 주요 참가자를 선택한다. 이 영상 위에서 더블클릭함으로써 또는 드래그-앤-드롭 프로세스를 통해, 선택된 참가자는 저해상도 모드에서 고해상도 모드로 전환되어진다. 현재 고해상도 모드에 있는 참가자들 중 한명이 이어서 저해상도 모드로 전환되어진다. 사용자 인터페이스(2700)는 고해상도의 352×288 윈도우(2630) 및 저해상도의 88×72 윈도우(2640)를 포함하는 것 이외에 텍스트 채팅 윈도우(2750) 및 상태 윈도우(2760)도 포함하고 있다.
비디오 컨퍼런스 세션의 참가자들이 세션 통제자에게 그 자신들이 적극적인 사용자가 되기를 원함을 통지할 수 있도록 페이징 버튼(2790) 등의 부가의 기능이 사용될 수 있다. 세션 통제자는 이어서 수동으로 이 참가자를 고해상도 모드로 전환시킬 수 있거나 그것은 자동화된 프로세스를 통해 행해질 수 있다.
도 15로 돌아가서, 메시지 "MSG_WINDOW_SWITCH"는 클라이언트(예를 들면, 세션 제어기)로부터 서버(205)로 전송된다. MSG_WINDOW_SWITCH 메시지는 2명의 참가자가 해상도를 전환하고 있음을 서버에 통지하는 데 사용된다. 즉, 한명의 참가자 는 고해상도에서 저해상도로 전환하고 있으며, 또한명의 참가자는 저해상도에서 고해상도로 전환하고 있다. 따라서, 2명의 참가자는 적극적 참가자와 소극적 참가자로서 역할을 전환한다. MSG_WINDOW_SWITCH 메시지는 세션 통제자가 새로운 적극적 참가자를 선택할 때 생성된다. 서버(205)가 MSG_WINDOW_SWITCH 메시지를 수신하면, 서버(205)는 그 메시지를 처리하고 그 세션에 참가하고 있는 각각의 클라이언트에게 메시지(MSG_ADJUST_CODEC)를 송출한다.
"MSG_ADJUST_CODEC" 메시지는 서버(205)로부터 비디오 컨퍼런스 세션 내의 각각의 클라이언트에게로 전송된다. MSG_ADJUST_CODEC 메시지는 각각의 클라이언트가 어느 비트 레이트로 전송하고 있는지(즉, 고속 비트 레이트인지 저속 비트 레이트인지)에 관하여 그들에게 통지한다. MSG_ADJUST_CODEC 메시지는 또한 고속 비트 레이트로 전송하고 있는 클라이언트의 IP 주소도 포함하고 있다. 이 정보는 각각의 착신 비디오 스트림마다 사용자 인터페이스 상에 어느 윈도우가 디스플레이되는지를 결정하는 데 사용된다.
이와 같이, 상기 도 16 및 도 17은 2명의 참가자(클라이언트 2와 클라이언트 3)를 각각 적극적 참가자에서 소극적 참가자로 전환하기 이전 및 그 이후의 네트워크에서의 데이터 전송을 나타낸 것이다. 도 15는 그 전환을 행하기 위해 이용되는 시그널링을 나타낸 것이다.
이상의 예시적인 실시예들이 본 명세서에서 첨부 도면을 참조하여 기술되어 있지만, 본 발명이 이들 구체적인 실시예들에 한정되지 않으며 여러가지 다른 변경 및 수정이 당업자에 의해 본 발명의 범위 또는 사상을 벗어나지 않고 그 안에서 시 행해질 수 있음을 잘 알 것이다. 이러한 변경 및 수정 모두는 첨부된 청구항들에 의해 정의되어 있는 본 발명의 범위 내에 포함되는 것으로 보아야 한다.

Claims (38)

  1. 네트워크에 걸쳐 있는 비디오 컨퍼런스 시스템의 재생 제어 시스템에 있어서,
    다수의 디스플레이 윈도우를 갖는 사용자 인터페이스 - 상기 다수의 디스플레이 윈도우는 서로 간에 서로 다른 해상도들 및 프레임 레이트들이 동시에 디스플레이되도록 허용함 -, 및
    개별적인 디스플레이 요구 사항에 따라 디스플레이 및 전송 특성을 관리하는 메시징 시스템
    을 포함하는 재생 제어 시스템.
  2. 제1항에 있어서,
    상기 디스플레이 및 전송 특성은 인코딩 해상도와 전송 비트 레이트를 포함하는 재생 제어 시스템.
  3. 제1항에 있어서,
    상기 메시징 시스템은, 현재의 비디오 컨퍼런스 세션과 관련하여 적극적 참가자에서 수동적 참가자로 변경하는 것과 수동적 참가자에서 적극적인 참가자로 변경하는 것 중 하나를 나타내는 메시지의 전송 및 수신 중 적어도 하나를 수행하는 기능을 포함하는 재생 제어 시스템.
  4. 제1항에 있어서,
    상기 사용자 인터페이스 및 상기 메시징 시스템은, 비디오 컨퍼런스 세션의 적극적 참가자들이 비디오 컨퍼런스 세션의 소극적 참가자들보다 고해상도 및 고속 프레임 레이트 중 적어도 하나로 비디오 데이터를 전송하도록 구성되어 있는 재생 제어 시스템.
  5. 제1항에 있어서,
    상기 사용자 인터페이스는, 현재의 비디오 컨퍼런스 세션과 관련하여 해당 참가자가 적극적 참가자인지 소극적 참가자인지에 기초하여 상기 다수의 디스플레이 윈도우 사이를 전환할 수 있는 재생 제어 시스템.
  6. 제1항에 있어서,
    상기 메시징 시스템은, 현재의 비디오 컨퍼런스 세션과 관련하여 비디오 데이터가 전송되어야만 하는 해상도 및 프레임 레이트를 나타내는 메시지의 전송 및 수신 중 적어도 하나를 수행하는 기능을 포함하는 재생 제어 시스템.
  7. 제1항에 있어서,
    상기 사용자 인터페이스는 비디오 컨퍼런스 세션 동안 다수의 디코더를 생성하는 기능을 갖는 재생 제어 시스템.
  8. 제1항에 있어서,
    상기 사용자 인터페이스는 각각의 수신된 비디오 데이터 스트림마다 하나의 디코더를 생성하는 기능을 갖는 재생 제어 시스템.
  9. 제1항에 있어서,
    상기 사용자 인터페이스는 동일한 비디오 컨퍼런스 세션 동안 서로 다른 디코더를 생성, 교환 및 이용하는 기능을 갖는 재생 제어 시스템.
  10. 제1항에 있어서,
    상기 사용자 인터페이스는 서로 다른 비디오 컨퍼런스 세션에 대해 서로 다른 디코더를 생성, 교환 및 이용하는 기능을 갖는 재생 제어 시스템.
  11. 제1항에 있어서,
    로컬 오디오 데이터 및 로컬 비디오 데이터 중 적어도 하나를 적어도 캡처하는 오디오/비디오 캡처 인터페이스를 더 포함하는 재생 제어 시스템.
  12. 제11항에 있어서,
    상기 오디오/비디오 캡처 인터페이스는 카메라 인터페이스, 마이크로폰 인터페이스, 및 파일 인터페이스 중 적어도 하나를 포함하는 재생 제어 시스템.
  13. 제1항에 있어서,
    상기 사용자 인터페이스는 현재의 비디오 컨퍼런스 세션과 관련하여 해당 참가자가 적극적 참가자에서 소극적 참가자로의 전환 및 소극적 참가자에서 적극적 참가자로의 전환 중 하나를 요청하고 있음을 알려주는 페이징 버튼(paging button)을 포함하는 재생 제어 시스템.
  14. 제1항에 있어서,
    상기 네트워크는 적어도 2개의 클라이언트 장치와 적어도 하나의 서버를 포함하고,
    상기 사용자 인터페이스는 상기 적어도 2개의 클라이언트 장치 중 어느 것에 의해서도 사용되도록 구성되어 있는 재생 제어 시스템.
  15. 제1항에 있어서,
    상기 네트워크는 적어도 2개의 클라이언트 장치와 적어도 하나의 서버를 포함하며,
    상기 메시징 시스템은 상기 서버 및 상기 적어도 2개의 클라이언트 장치 중 어느 것에 의해서도 사용되도록 구성되어 있는 재생 제어 시스템.
  16. 비디오 컨퍼런싱 시스템의 사용자 인터페이스에 있어서,
    동시에 디스플레이될 수 있는 다수의 디스플레이 윈도우를 갖는 비디오 재생 장치 - 상기 다수의 디스플레이 윈도우는 서로 간에 서로 다른 해상도들 및 프레임 레이트들이 디스플레이되도록 허용함 -
    를 포함하는 사용자 인터페이스.
  17. 제16항에 있어서,
    상기 비디오 재생 장치는, 비디오 컨퍼런스 세션의 적극적 참가자들이 비디오 데이터를 상기 비디오 컨퍼런스 세션의 소극적 참가자들보다 고해상도 및 고속 프레임 레이트 중 적어도 하나로 전송하도록 구성되어 있는 사용자 인터페이스.
  18. 제16항에 있어서,
    상기 비디오 재생 장치는 비디오 컨퍼런스 세션 동안 다수의 디코더를 생성하는 기능을 갖는 사용자 인터페이스.
  19. 제16항에 있어서,
    상기 비디오 재생 장치는 각각의 수신된 비디오 데이터 스트림마다 하나의 디코더를 생성하는 기능을 갖는 사용자 인터페이스.
  20. 제16항에 있어서,
    상기 비디오 재생 장치는 동일한 비디오 컨퍼런스 세션 동안 서로 다른 디코더를 생성, 교환 및 이용하는 기능을 갖는 사용자 인터페이스.
  21. 제16항에 있어서,
    상기 비디오 재생 장치는 서로 다른 비디오 컨퍼런스 세션에 대해 서로 다른 디코더를 생성, 교환 및 이용하는 기능을 갖는 사용자 인터페이스.
  22. 제16항에 있어서,
    상기 사용자 인터페이스는 로컬 오디오 데이터 및 로컬 비디오 데이터 중 적어도 하나를 적어도 캡처하는 오디오/비디오 캡처 인터페이스를 더 포함하는 사용자 인터페이스.
  23. 제22항에 있어서,
    상기 오디오/비디오 캡처 인터페이스는 카메라 인터페이스, 마이크로폰 인터페이스, 및 파일 인터페이스 중 적어도 하나를 포함하는 사용자 인터페이스.
  24. 제16항에 있어서,
    상기 사용자 인터페이스는 현재의 비디오 컨퍼런스 세션과 관련하여 해당 참가자가 적극적 참가자에서 소극적 참가자로의 전환 및 소극적 참가자에서 적극적 참가자로의 전환 중 하나를 요청하고 있음을 알려주기 위한 페이징 버튼을 포함하는 사용자 인터페이스.
  25. 네트워크에 걸쳐 있는 비디오 컨퍼런스 시스템의 서버에 있어서,
    개별적인 디스플레이 요구 사항에 따라 비디오 컨퍼런스 컨텐츠의 디스플레이 및 전송 특성을 관리하는 메시징 시스템
    을 포함하는 서버.
  26. 제25항에 있어서,
    상기 메시징 시스템은 현재의 비디오 컨퍼런스 세션과 관련하여 적극적 참가자에서 소극적 참가자로의 변경 및 소극적 참가자에서 적극적 참가자로의 변경 중 하나를 나타내는 메시지의 전송 및 수신 중 적어도 하나를 수행하는 기능을 포함하는 서버.
  27. 제25항에 있어서,
    상기 메시징 시스템은 현재의 비디오 컨퍼런스 세션과 관련하여 컨텐츠가 전송되어야만 하는 해상도 및 프레임 레이트를 나타내는 메시지의 전송 및 수신 중 적어도 하나를 수행하는 기능을 포함하는 서버.
  28. 비디오 컨퍼런스 세션에 대응하는 콘텐츠를 디스플레이하는 방법에 있어서,
    디스플레이 장치에서, 동시에 디스플레이될 수 있는 다수의 디스플레이 윈도우를 제공하는 단계 - 상기 다수의 디스플레이 윈도우는 서로 간에 서로 다른 해상도들 및 프레임 레이트들이 디스플레이되도록 허용함 -
    를 포함하는 방법.
  29. 제28항에 있어서,
    상기 제공 단계는 상기 비디오 컨퍼런스 세션과 관련하여 해당 참가자가 적극적 참가자인지 소극적 참가자인지에 기초하여 상기 다수의 디스플레이 윈도우 사이를 전환하는 기능을 제공하는 단계를 포함하는 방법.
  30. 제28항에 있어서,
    상기 비디오 컨퍼런스 세션 동안 다수의 디코더를 생성하는 기능을 제공하는 단계를 더 포함하는 방법.
  31. 제28항에 있어서,
    각각의 수신된 콘텐츠 스트림마다 하나의 디코더를 생성하는 기능을 제공하는 단계를 더 포함하는 방법.
  32. 제28항에 있어서,
    상기 비디오 컨퍼런스 세션 동안 서로 다른 디코더를 생성, 교환 및 이용하는 것 중 적어도 하나를 수행하는 기능을 제공하는 단계를 더 포함하는 방법.
  33. 제28항에 있어서,
    개별적인 디스플레이 요구 사항에 따라 디스플레이 및 전송 특성을 관리하는 기능을 제공하는 단계를 더 포함하는 방법.
  34. 제33항에 있어서,
    상기 디스플레이 및 전송 특성은 인코딩 해상도 및 전송 비트 레이트를 포함하는 방법.
  35. 제33항에 있어서,
    디스플레이 및 전송 특성을 관리하는 기능을 제공하는 상기 단계는, 상기 비디오 컨퍼런스 세션과 관련하여 적극적 참가자에서 소극적 참가자로의 변경 및 소극적 참가자에서 적극적 참가자로의 변경 중 하나를 나타내는 메시지의 전송 및 수신 중 적어도 하나를 수행하는 기능을 제공하는 단계를 포함하는 방법.
  36. 제28항에 있어서,
    상기 비디오 컨퍼런스 세션의 적극적 참가자들에게 상기 비디오 컨퍼런스 세션의 소극적 참가자들보다 고해상도로 콘텐츠를 인코딩 및 전송하는 기능을 제공하는 단계를 더 포함하는 방법.
  37. 제32항에 있어서,
    디스플레이 및 전송 특성을 관리하는 기능을 제공하는 상기 단계는, 상기 비디오 컨퍼런스에 대응하는 콘텐츠를 전송하기 위한 해상도 및 프레임 레이트를 나타내는 메시지의 전송 및 수신 중 적어도 하나를 수행하는 기능을 제공하는 단계를 포함하는 방법.
  38. 제28항에 있어서,
    해당 참가자가 적극적 참가자에서 소극적 참가자로의 전환 및 소극적 참가자에서 적극적 참가자로의 전환을 요청하고 있음을 알려주는 페이징 신호를 출력하는 기능을 제공하는 단계를 더 포함하는 방법.
KR1020047009109A 2001-12-15 2002-12-13 메시징 시스템을 갖는 비디오 컨퍼런스 애플리케이션사용자 인터페이스 KR100960772B1 (ko)

Applications Claiming Priority (17)

Application Number Priority Date Filing Date Title
US34180101P 2001-12-15 2001-12-15
US34167101P 2001-12-15 2001-12-15
US34181901P 2001-12-15 2001-12-15
US34179701P 2001-12-15 2001-12-15
US34180001P 2001-12-15 2001-12-15
US34172001P 2001-12-15 2001-12-15
US34179901P 2001-12-15 2001-12-15
US60/341,800 2001-12-15
US60/341,671 2001-12-15
US60/341,799 2001-12-15
US60/341,797 2001-12-15
US60/341,720 2001-12-15
US60/341,801 2001-12-15
US60/341,819 2001-12-15
US36633102P 2002-03-20 2002-03-20
US60/366,331 2002-03-20
PCT/US2002/039984 WO2003052613A1 (en) 2001-12-15 2002-12-13 Videoconference application user interface with messaging system

Publications (2)

Publication Number Publication Date
KR20040069328A KR20040069328A (ko) 2004-08-05
KR100960772B1 true KR100960772B1 (ko) 2010-06-01

Family

ID=27575409

Family Applications (6)

Application Number Title Priority Date Filing Date
KR10-2004-7009219A KR20040071200A (ko) 2001-12-15 2002-12-11 화상회의 대역폭 선택 메커니즘
KR1020047009196A KR100948317B1 (ko) 2001-12-15 2002-12-11 클라이언트 사이의 세션을 위한 QoS 계약의 설정 능력을 제공하는 방법 및 시스템
KR1020047009220A KR100971273B1 (ko) 2001-12-15 2002-12-12 클라이언트 사이에 멀티캐스트 세션을 설정하기 위한 방법 및 시스템
KR10-2004-7009195A KR20040071199A (ko) 2001-12-15 2002-12-12 유니캐스트에서 멀티캐스트로의 화상회의 세션 스위칭
KR10-2004-7009308A KR20040062994A (ko) 2001-12-15 2002-12-13 비디오 회의 시스템에서 개인 대화 채널을 제공하는 방법및 시스템
KR1020047009109A KR100960772B1 (ko) 2001-12-15 2002-12-13 메시징 시스템을 갖는 비디오 컨퍼런스 애플리케이션사용자 인터페이스

Family Applications Before (5)

Application Number Title Priority Date Filing Date
KR10-2004-7009219A KR20040071200A (ko) 2001-12-15 2002-12-11 화상회의 대역폭 선택 메커니즘
KR1020047009196A KR100948317B1 (ko) 2001-12-15 2002-12-11 클라이언트 사이의 세션을 위한 QoS 계약의 설정 능력을 제공하는 방법 및 시스템
KR1020047009220A KR100971273B1 (ko) 2001-12-15 2002-12-12 클라이언트 사이에 멀티캐스트 세션을 설정하기 위한 방법 및 시스템
KR10-2004-7009195A KR20040071199A (ko) 2001-12-15 2002-12-12 유니캐스트에서 멀티캐스트로의 화상회의 세션 스위칭
KR10-2004-7009308A KR20040062994A (ko) 2001-12-15 2002-12-13 비디오 회의 시스템에서 개인 대화 채널을 제공하는 방법및 시스템

Country Status (8)

Country Link
US (5) US9014059B2 (ko)
EP (6) EP1454451A1 (ko)
JP (7) JP2005513865A (ko)
KR (6) KR20040071200A (ko)
CN (6) CN1618071B (ko)
AU (6) AU2002357813A1 (ko)
MX (6) MXPA04005816A (ko)
WO (6) WO2003052993A2 (ko)

Families Citing this family (201)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003081449A1 (en) * 2002-03-20 2003-10-02 Thomson Licensing S.A. Videoconference system architecture
GB0230301D0 (en) * 2002-12-30 2003-02-05 Nokia Corp Streaming media
US7360164B2 (en) * 2003-03-03 2008-04-15 Sap Ag Collaboration launchpad
US20040228291A1 (en) * 2003-05-15 2004-11-18 Huslak Nicolas Steven Videoconferencing using managed quality of service and/or bandwidth allocation in a regional/access network (RAN)
EP1631917B1 (en) 2003-06-12 2010-12-08 Camiant, Inc. Dynamic service delivery with topology discovery for communication networks
AU2004247251B2 (en) * 2003-06-12 2009-01-22 Camiant, Inc. PCMM application manager
US7146185B2 (en) * 2003-06-12 2006-12-05 Richard Lane Mobile station-centric method for managing bandwidth and QoS in error-prone system
CN100337430C (zh) * 2003-07-19 2007-09-12 华为技术有限公司 一种例外通配的实现方法
US7369493B2 (en) * 2003-10-28 2008-05-06 At&T Corp. Congestion control in an IP network
US7778326B1 (en) * 2003-12-23 2010-08-17 At&T Intellectual Property Ii, L.P. System and method for dynamically determining multimedia transmission based on communication bandwidth
US20050265318A1 (en) * 2004-01-08 2005-12-01 Nokia Corporation Apparatus, system, and method for rejecting a session establishment request
US20050154793A1 (en) * 2004-01-08 2005-07-14 Hisham Khartabil Apparatus, system, and method for rejecting a session establishment request
MXPA06007673A (es) * 2004-01-22 2006-09-04 Ericsson Telefon Ab L M Control de acceso para peticion de canal de multidifusion.
US20050188415A1 (en) * 2004-01-23 2005-08-25 Camiant, Inc. Video policy server
US7788357B2 (en) * 2004-01-23 2010-08-31 Camiant, Inc. Policy-based admission control and bandwidth reservation for future sessions
FR2866768A1 (fr) * 2004-02-19 2005-08-26 France Telecom Procede d'acces a un service a travers un reseau d'acces multivoies
JP4049115B2 (ja) * 2004-03-15 2008-02-20 セイコーエプソン株式会社 プロジェクタ
US7773581B2 (en) * 2004-03-19 2010-08-10 Ericsson Ab Method and apparatus for conferencing with bandwidth control
US7062286B2 (en) * 2004-04-05 2006-06-13 Motorola, Inc. Conversion of calls from an ad hoc communication network
KR20050099899A (ko) * 2004-04-12 2005-10-17 엘지전자 주식회사 UPnP 네트워크의 IP 멀티캐스트 할당 방법
JP4571437B2 (ja) * 2004-05-31 2010-10-27 インターナショナル・ビジネス・マシーンズ・コーポレーション 解像度が異なる複数のウィンドウを表示するためのシステム、方法およびプログラム
US7756594B2 (en) * 2004-06-14 2010-07-13 Microsoft Corporation Systems and methods for parsing flexible audio codec topologies
KR100840365B1 (ko) 2004-07-30 2008-06-20 삼성전자주식회사 다중 피.오.씨 세션의 세션 결합 방법 및 그 시스템
US7590065B2 (en) * 2004-08-04 2009-09-15 Microsoft Corporation Equal-opportunity bandwidth regulation
US20060031607A1 (en) * 2004-08-05 2006-02-09 Microsoft Corporation Systems and methods for managing input ring buffer
CN100409683C (zh) * 2004-08-10 2008-08-06 中兴通讯股份有限公司 一种在视讯运营平台上召开视频会议的方法
CN100417220C (zh) * 2004-09-28 2008-09-03 中兴通讯股份有限公司 一种通过终端拨号召开多点视频会议的方法
US7706901B2 (en) 2004-10-01 2010-04-27 Microsoft Corporation Low latency real-time audio streaming
US7256816B2 (en) 2004-10-25 2007-08-14 3V Technologies Incorporated Systems and processes for scheduling and conducting audio/video communications
KR100739489B1 (ko) * 2004-12-13 2007-07-13 한국전자통신연구원 서버와 클라이언트의 사이의 네트워크 경로에 속하는라우터에 접속하는 대역폭 브로커 및 차등화 서비스 제공방법
CN100403794C (zh) * 2004-12-29 2008-07-16 华为技术有限公司 一种实现流媒体业务的视讯终端和方法
US20060168331A1 (en) * 2005-01-06 2006-07-27 Terevela, Inc. Intelligent messaging application programming interface
US7796603B1 (en) 2005-01-14 2010-09-14 Acme Packet, Inc. Method and system for controlling media sessions in networks that use communication protocols with distinct signaling and media channels
US8249076B1 (en) * 2005-01-14 2012-08-21 Acme Packet, Inc. Method, system and architecture for validating media sessions in networks that use communication protocols with distinct signaling and media channels
CN100505864C (zh) * 2005-02-06 2009-06-24 中兴通讯股份有限公司 一种多点视频会议系统及其媒体处理方法
US7558267B2 (en) * 2005-02-11 2009-07-07 Microsoft Corporation Method and system for placing restrictions on sessions
JP4700977B2 (ja) * 2005-02-16 2011-06-15 富士通株式会社 多地点会議システム
US7716283B2 (en) * 2005-02-16 2010-05-11 Microsoft Corporation Television system video conferencing
US7830409B2 (en) * 2005-03-25 2010-11-09 Cherng-Daw Hwang Split screen video in a multimedia communication system
US8352853B2 (en) * 2005-06-30 2013-01-08 Motorola Mobility Llc Composer circuit and method for encoding device independent multi-modal content
AU2005334066A1 (en) * 2005-06-30 2007-01-11 Promim Pty Ltd A system and method for controlling transmission and display of video
CN100448228C (zh) * 2005-09-02 2008-12-31 杭州华三通信技术有限公司 组播报文穿越非组播网络的方法及其应用的网络系统
JP2009507450A (ja) 2005-09-07 2009-02-19 ヴィドヨ,インコーポレーテッド 高信頼性基本層トランクに関するシステムおよび方法
JP4722656B2 (ja) * 2005-09-29 2011-07-13 京セラ株式会社 無線通信装置及び無線通信方法
KR100677497B1 (ko) * 2005-11-02 2007-02-02 엘지전자 주식회사 단말기의 중복 통보 메시지 처리 방법
US7889732B2 (en) * 2005-12-22 2011-02-15 Alcatel-Lucent Usa, Inc. Method for converting between unicast sessions and a multicast session
US8436889B2 (en) * 2005-12-22 2013-05-07 Vidyo, Inc. System and method for videoconferencing using scalable video coding and compositing scalable video conferencing servers
EP1972108A4 (en) * 2005-12-23 2015-08-26 Netsocket Inc OPERATING MANAGER FOR MEDIA DISTRIBUTION IN AN IP NETWORK
CN100531381C (zh) * 2006-01-27 2009-08-19 中国科学院声学研究所 基于rtp协议的iptv机顶盒组/单播无缝切换方法
CN101030918B (zh) * 2006-03-03 2010-06-02 华为技术有限公司 一种基于ip网络提供组播业务的方法、设备和系统
CN100428796C (zh) * 2006-03-13 2008-10-22 华为技术有限公司 视频点播方法、系统、服务器和终端
JP4977385B2 (ja) * 2006-03-15 2012-07-18 日本電気株式会社 テレビ会議システム及びテレビ会議方法
US8477662B2 (en) * 2006-04-28 2013-07-02 Vidcom Corporation Court video teleconferencing system and method
US7983201B2 (en) * 2006-05-09 2011-07-19 Avaya Inc. Coordinated invitations to a conference call
US8571012B2 (en) * 2006-05-12 2013-10-29 Oracle International Corporation Customized sip routing to cross firewalls
US8582555B2 (en) * 2006-05-12 2013-11-12 Oracle International Corporation SIP routing customization
CN101047748B (zh) * 2006-05-16 2011-09-14 华为技术有限公司 会客厅业务的方法
US7565616B2 (en) * 2006-06-02 2009-07-21 Hewlett-Packard Development Company, L.P. System for controlling display content for multiple electronic display units
US7945620B2 (en) * 2006-06-13 2011-05-17 International Business Machines Corporation Chat tool for concurrently chatting over more than one interrelated chat channels
US20070291108A1 (en) * 2006-06-16 2007-12-20 Ericsson, Inc. Conference layout control and control protocol
US8284915B2 (en) * 2006-06-30 2012-10-09 At&T Intellectual Property Ii, L.P. Method and apparatus for providing virtual closed circuit television
WO2008042852A2 (en) * 2006-09-29 2008-04-10 Vidyo, Inc. System and method for multipoint conferencing with scalable video coding servers and multicast
TW200816707A (en) * 2006-07-31 2008-04-01 Ibm System, method and computer program for transferring information on network
EP1887751A1 (en) * 2006-08-11 2008-02-13 Nokia Siemens Networks Gmbh & Co. Kg Method and system for synchronizing at least two media streams within one push-to-talk-over-cellular session
US8817668B2 (en) * 2006-09-15 2014-08-26 Microsoft Corporation Distributable, scalable, pluggable conferencing architecture
US8235724B2 (en) 2006-09-21 2012-08-07 Apple Inc. Dynamically adaptive scheduling system
US8429223B2 (en) * 2006-09-21 2013-04-23 Apple Inc. Systems and methods for facilitating group activities
US8956290B2 (en) 2006-09-21 2015-02-17 Apple Inc. Lifestyle companion system
US8745496B2 (en) 2006-09-21 2014-06-03 Apple Inc. Variable I/O interface for portable media device
US8001472B2 (en) 2006-09-21 2011-08-16 Apple Inc. Systems and methods for providing audio and visual cues via a portable electronic device
US8576851B2 (en) * 2006-09-22 2013-11-05 Microsoft Corporation Integrating data with conversations
US8249068B2 (en) * 2006-10-20 2012-08-21 Alcatel Lucent Method and apparatus for establishing multicast groups
US8311197B2 (en) * 2006-11-10 2012-11-13 Cisco Technology, Inc. Method and system for allocating, revoking and transferring resources in a conference system
US20080120370A1 (en) * 2006-11-22 2008-05-22 Brian Chan Virtual Meeting Server Discovery
US10389762B2 (en) * 2006-12-19 2019-08-20 Bce Inc. Method, system and apparatus for causing a communication client to join a media-over-packet communication session
JPWO2008105429A1 (ja) * 2007-02-27 2010-06-03 京セラ株式会社 通信端末およびその制御方法
CN101257395B (zh) * 2007-02-27 2010-12-08 中国移动通信集团公司 支持多媒体会议预约的系统及方法
US8631069B2 (en) * 2007-03-01 2014-01-14 Oracle International Corporation Web and multi-media conference
US7701970B2 (en) * 2007-04-10 2010-04-20 International Business Machines Corporation Protocol negotiation for a group communication system
US8243119B2 (en) 2007-09-30 2012-08-14 Optical Fusion Inc. Recording and videomail for video conferencing call systems
WO2009063762A1 (ja) * 2007-11-12 2009-05-22 Nec Corporation データ通信システムおよび方法およびプログラム
WO2009074081A1 (fr) * 2007-11-30 2009-06-18 Huawei Technologies Co., Ltd. Méthode, système et dispositif d'établissement d'une porteuse en diffusion broadcast ou en diffusion multicast
EP2223538B1 (en) 2007-12-17 2016-03-23 Telefonaktiebolaget LM Ericsson (publ) Method and arrangement for network qos
JP4516594B2 (ja) * 2007-12-27 2010-08-04 株式会社日立製作所 メッセージ送信制御方法、メッセージ送信制御装置、及びメッセージ送信制御プログラム
US8904031B2 (en) * 2007-12-31 2014-12-02 Genesys Telecommunications Laboratories, Inc. Federated uptake throttling
KR101499549B1 (ko) * 2008-01-15 2015-03-06 삼성전자주식회사 원격 접속 서비스를 제공하는 UPnP 장치 및 그 방법
US8379533B2 (en) * 2008-01-15 2013-02-19 Samsung Electronics Co., Ltd. Universal plug and play method and apparatus to provide remote access service
US9113334B2 (en) * 2008-02-01 2015-08-18 Tekelec, Inc. Methods, systems, and computer readable media for controlling access to voice resources in mobile networks using mobility management signaling messages
US8275830B2 (en) 2009-01-28 2012-09-25 Headwater Partners I Llc Device assisted CDR creation, aggregation, mediation and billing
US8630192B2 (en) 2009-01-28 2014-01-14 Headwater Partners I Llc Verifiable and accurate service usage monitoring for intermediate networking devices
US8832777B2 (en) * 2009-03-02 2014-09-09 Headwater Partners I Llc Adapting network policies based on device service processor configuration
US8589541B2 (en) 2009-01-28 2013-11-19 Headwater Partners I Llc Device-assisted services for protecting network capacity
US20150156455A1 (en) * 2008-07-01 2015-06-04 Michael J. Maresca, JR. System and method for enabling realtime remote communication in the medical field
US20100005497A1 (en) * 2008-07-01 2010-01-07 Michael Maresca Duplex enhanced quality video transmission over internet
US8346923B2 (en) * 2008-11-12 2013-01-01 Sophos Plc Methods for identifying an application and controlling its network utilization
NO332009B1 (no) * 2008-12-12 2012-05-21 Cisco Systems Int Sarl Fremgangsmate for a igangsette kommunikasjonsforbindelser
US8380790B2 (en) * 2008-12-15 2013-02-19 Microsoft Corporation Video conference rate matching
US20100149301A1 (en) * 2008-12-15 2010-06-17 Microsoft Corporation Video Conferencing Subscription Using Multiple Bit Rate Streams
US8149263B2 (en) * 2009-01-21 2012-04-03 Freeport Technologies Distributed scheduling, call control, and resource management for dispersed dynamic video communications networks
US9565707B2 (en) 2009-01-28 2017-02-07 Headwater Partners I Llc Wireless end-user device with wireless data attribution to multiple personas
US10264138B2 (en) 2009-01-28 2019-04-16 Headwater Research Llc Mobile device and service management
US10237757B2 (en) 2009-01-28 2019-03-19 Headwater Research Llc System and method for wireless network offloading
US9980146B2 (en) 2009-01-28 2018-05-22 Headwater Research Llc Communications device with secure data path processing agents
US10326800B2 (en) 2009-01-28 2019-06-18 Headwater Research Llc Wireless network service interfaces
US9706061B2 (en) 2009-01-28 2017-07-11 Headwater Partners I Llc Service design center for device assisted services
US9572019B2 (en) 2009-01-28 2017-02-14 Headwater Partners LLC Service selection set published to device agent with on-device service selection
US10798252B2 (en) 2009-01-28 2020-10-06 Headwater Research Llc System and method for providing user notifications
US9300708B2 (en) 2009-02-05 2016-03-29 Google Technology Holdings LLC Connecting to a multimedia broadcast/multicast service channel
US9025927B2 (en) * 2009-03-25 2015-05-05 Cyberlink Corp. Systems and methods of variable frame rate playback
US8977684B2 (en) * 2009-04-14 2015-03-10 Citrix Systems, Inc. Systems and methods for computer and voice conference audio transmission during conference call via VoIP device
US8352600B2 (en) * 2009-04-21 2013-01-08 Alcatel Lucent System and method for determining a maximum packet data unit (PDU) payload transmission size for communicating in a managed computer network system
US8437282B2 (en) * 2009-06-21 2013-05-07 Clearone Communications Hong Kong Limited System and method of multi-endpoint data conferencing
JP5373969B2 (ja) * 2009-07-08 2013-12-18 テレフオンアクチーボラゲット エル エム エリクソン(パブル) ネットワークにおける進行中のデータ配信時のセッション切り換え
CN101990083B (zh) * 2009-07-29 2014-04-09 宏碁股份有限公司 视频会议信号处理系统
CN101640787B (zh) * 2009-08-24 2011-10-26 中兴通讯股份有限公司 一种层次化控制访问组播组的方法和装置
US20110066745A1 (en) * 2009-09-14 2011-03-17 Sony Ericsson Mobile Communications Ab Sharing video streams in commnication sessions
CN102055949B (zh) * 2009-11-02 2013-10-02 华为终端有限公司 多媒体会议的录播方法、装置及系统、回播方法及装置
US8411129B2 (en) * 2009-12-14 2013-04-02 At&T Intellectual Property I, L.P. Video conference system and method using multicast and unicast transmissions
US8471890B1 (en) 2009-12-30 2013-06-25 Insors Integrated Communications Adaptive video communication channel
US9205328B2 (en) 2010-02-18 2015-12-08 Activision Publishing, Inc. Videogame system and method that enables characters to earn virtual fans by completing secondary objectives
KR101422040B1 (ko) * 2010-02-23 2014-07-30 엘지전자 주식회사 홈네트워크 시스템에서 세션 개시 방법 및 장치
CN101795388A (zh) * 2010-04-07 2010-08-04 兴旺 楼宇可视对讲方法及系统
US9682324B2 (en) 2010-05-12 2017-06-20 Activision Publishing, Inc. System and method for enabling players to participate in asynchronous, competitive challenges
US8717409B2 (en) * 2010-05-13 2014-05-06 Lifesize Communications, Inc. Conducting a direct private videoconference within a videoconference
US8717408B2 (en) * 2010-05-13 2014-05-06 Lifesize Communications, Inc. Conducting a private videoconference within a videoconference via an MCU
JP5392185B2 (ja) * 2010-05-28 2014-01-22 コニカミノルタ株式会社 動画配信システム、そのためのサーバ、動画の配信方法、およびコンピュータプログラム
US8947492B2 (en) 2010-06-18 2015-02-03 Microsoft Corporation Combining multiple bit rate and scalable video coding
US8576271B2 (en) * 2010-06-25 2013-11-05 Microsoft Corporation Combining direct and routed communication in a video conference
CN102316301B (zh) 2010-06-29 2014-05-07 华为终端有限公司 会议切换的方法、系统及设备
CN101945245B (zh) * 2010-09-06 2013-09-25 华为终端有限公司 视讯会议应用的实现方法、装置及系统
KR20120047621A (ko) * 2010-11-04 2012-05-14 한국전자통신연구원 멀티 홉 다중 입출력 시스템 및 방법
KR20120083820A (ko) * 2011-01-18 2012-07-26 삼성전자주식회사 컨텐츠 전송 시스템에서 컨텐츠 전송 방법 및 장치
US20120259924A1 (en) * 2011-04-05 2012-10-11 Cisco Technology, Inc. Method and apparatus for providing summary information in a live media session
NZ595638A (en) 2011-10-07 2013-09-27 Let S Powow Ltd Collaboration Extension System
CN102348168A (zh) * 2011-10-14 2012-02-08 华为终端有限公司 一种群组通话的方法、终端及应用服务器
US9942580B2 (en) * 2011-11-18 2018-04-10 At&T Intellecutal Property I, L.P. System and method for automatically selecting encoding/decoding for streaming media
CN102387049B (zh) * 2011-11-25 2014-02-19 浪潮电子信息产业股份有限公司 一种基于snmp协议的云服务质量评价方法
KR101696321B1 (ko) * 2011-12-27 2017-01-13 한국전자통신연구원 화상 회의 제어 시스템 및 화상 회의 예약 방법
US9524491B2 (en) * 2012-03-12 2016-12-20 Unisys Corporation Master navigation controller for a web-based conference collaboration tool
US9369667B2 (en) * 2012-04-11 2016-06-14 Jie Diao Conveying gaze information in virtual conference
JP2013251630A (ja) * 2012-05-30 2013-12-12 Toshiba Corp 情報端末およびプログラム
JP5949272B2 (ja) * 2012-07-25 2016-07-06 株式会社リコー 通信システムおよびプログラム
US8767031B2 (en) * 2012-08-20 2014-07-01 Wolzien Llc Video call center
CN102970091B (zh) * 2012-11-14 2015-06-10 深圳市欧博科技有限公司 一种实现分组语音广播的装置及方法
GB2511721A (en) * 2012-12-06 2014-09-17 Nec Corp Communication system
NO336150B1 (no) * 2012-12-19 2015-05-26 Videxio As Fremgangsmåte og enhet for å optimalisere storskala videokonferanser
JP6111753B2 (ja) * 2013-03-11 2017-04-12 株式会社リコー 情報処理装置、伝送システム、プログラム
GB201304803D0 (en) * 2013-03-15 2013-05-01 Mitel Networks Corp Videoconferencing
US9288435B2 (en) * 2013-03-27 2016-03-15 Google Inc. Speaker switching delay for video conferencing
US9232183B2 (en) 2013-04-19 2016-01-05 At&T Intellectual Property I, Lp System and method for providing separate communication zones in a large format videoconference
US9473363B2 (en) * 2013-07-15 2016-10-18 Globalfoundries Inc. Managing quality of service for communication sessions
JP6236962B2 (ja) * 2013-07-26 2017-11-29 株式会社リコー 通信システム、方法、通信装置およびプログラム
CN103533315A (zh) * 2013-09-11 2014-01-22 天脉聚源(北京)传媒科技有限公司 一种音视频数据的处理方法和装置
US9118654B2 (en) 2013-10-11 2015-08-25 Edifire LLC Methods and systems for compliance monitoring in secure media-based conferencing
US8970659B1 (en) 2013-10-11 2015-03-03 Edifire LLC Methods and systems for secure media-based conferencing
US9118809B2 (en) 2013-10-11 2015-08-25 Edifire LLC Methods and systems for multi-factor authentication in secure media-based conferencing
JP6307746B2 (ja) * 2014-03-18 2018-04-11 株式会社リコー 宛先管理システム、通信システム、宛先管理方法、及びプログラム
US10322351B2 (en) 2014-07-03 2019-06-18 Activision Publishing, Inc. Matchmaking system and method for multiplayer video games
CN105323536A (zh) * 2014-07-30 2016-02-10 三亚中兴软件有限责任公司 一种电视会议中与会者私聊的方法及装置
US9167098B1 (en) 2014-09-29 2015-10-20 Edifire LLC Dynamic conference session re-routing in secure media-based conferencing
US9137187B1 (en) 2014-09-29 2015-09-15 Edifire LLC Dynamic conference session state management in secure media-based conferencing
US9282130B1 (en) 2014-09-29 2016-03-08 Edifire LLC Dynamic media negotiation in secure media-based conferencing
US9131112B1 (en) 2014-09-29 2015-09-08 Edifire LLC Dynamic signaling and resource allocation in secure media-based conferencing
US10776739B2 (en) 2014-09-30 2020-09-15 Apple Inc. Fitness challenge E-awards
US10118099B2 (en) 2014-12-16 2018-11-06 Activision Publishing, Inc. System and method for transparently styling non-player characters in a multiplayer video game
JP2016151824A (ja) * 2015-02-16 2016-08-22 富士通コンポーネント株式会社 Kvmスイッチ
US10315113B2 (en) 2015-05-14 2019-06-11 Activision Publishing, Inc. System and method for simulating gameplay of nonplayer characters distributed across networked end user devices
US9894126B1 (en) * 2015-05-28 2018-02-13 Infocus Corporation Systems and methods of smoothly transitioning between compressed video streams
US9942180B2 (en) * 2015-06-26 2018-04-10 Blackberry Limited Private text chatting sessions
US10471348B2 (en) 2015-07-24 2019-11-12 Activision Publishing, Inc. System and method for creating and sharing customized video game weapon configurations in multiplayer video games via one or more social networks
US9872199B2 (en) 2015-09-22 2018-01-16 Qualcomm Incorporated Assigning a variable QCI for a call among a plurality of user devices
US10097608B2 (en) * 2015-12-26 2018-10-09 Intel Corporation Technologies for wireless transmission of digital media
US10243905B2 (en) 2016-03-07 2019-03-26 Facebook, Inc. Location-based conversation engine for entities in a social networking system
JP2017167879A (ja) * 2016-03-17 2017-09-21 株式会社リコー 会議システム、接続制御装置、接続制御方法及びプログラム
US10652303B2 (en) * 2016-04-28 2020-05-12 Rabbit Asset Purchase Corp. Screencast orchestration
KR101716874B1 (ko) * 2016-07-28 2017-03-17 주식회사 지앤톡 라이브 채팅 가능한 통신 단말 및 채팅 애플리케이션
KR101730115B1 (ko) * 2016-10-04 2017-04-26 주식회사 삼십구도씨 영상 처리 장치 및 영상 처리 방법
US10500498B2 (en) 2016-11-29 2019-12-10 Activision Publishing, Inc. System and method for optimizing virtual games
CN108124158B (zh) * 2016-11-29 2019-04-26 视联动力信息技术股份有限公司 多媒体终端及多媒体终端的数据处理方法
CN108121588B (zh) * 2016-11-30 2019-02-05 视联动力信息技术股份有限公司 一种访问外部资源的方法及其视联网接入服务器
WO2018175989A1 (en) * 2017-03-23 2018-09-27 Krush Technologies, Llc Video signal control and manipulation in public and private communication networks
US10561945B2 (en) 2017-09-27 2020-02-18 Activision Publishing, Inc. Methods and systems for incentivizing team cooperation in multiplayer gaming environments
US10974150B2 (en) 2017-09-27 2021-04-13 Activision Publishing, Inc. Methods and systems for improved content customization in multiplayer gaming environments
US11040286B2 (en) 2017-09-27 2021-06-22 Activision Publishing, Inc. Methods and systems for improved content generation in multiplayer gaming environments
US10765948B2 (en) 2017-12-22 2020-09-08 Activision Publishing, Inc. Video game content aggregation, normalization, and publication systems and methods
CN108449570B (zh) * 2018-03-26 2020-06-23 苏州科达科技股份有限公司 跨用户域视频会议的实现方法、系统、设备及存储介质
KR102460538B1 (ko) * 2018-05-28 2022-10-28 삼성에스디에스 주식회사 영상 품질 조정 방법과 이를 수행하기 위한 단말 및 중계 서버
CN108961165B (zh) * 2018-07-06 2021-03-09 北京百度网讯科技有限公司 用于加载图像的方法和装置
JP2020052145A (ja) * 2018-09-25 2020-04-02 トヨタ自動車株式会社 音声認識装置、音声認識方法、及び音声認識プログラム
US11679330B2 (en) 2018-12-18 2023-06-20 Activision Publishing, Inc. Systems and methods for generating improved non-player characters
US10757366B1 (en) 2019-04-03 2020-08-25 International Business Machines Corporation Videoconferencing dynamic host controller
US10791224B1 (en) 2019-08-20 2020-09-29 Motorola Solutions, Inc. Chat call within group call
US11097193B2 (en) 2019-09-11 2021-08-24 Activision Publishing, Inc. Methods and systems for increasing player engagement in multiplayer gaming environments
US11712627B2 (en) 2019-11-08 2023-08-01 Activision Publishing, Inc. System and method for providing conditional access to virtual gaming items
JP6917115B2 (ja) * 2019-12-04 2021-08-11 祐介 田嶋 移動店舗型商談支援システム
US11524234B2 (en) 2020-08-18 2022-12-13 Activision Publishing, Inc. Multiplayer video games with virtual characters having dynamically modified fields of view
US11351459B2 (en) 2020-08-18 2022-06-07 Activision Publishing, Inc. Multiplayer video games with virtual characters having dynamically generated attribute profiles unconstrained by predefined discrete values
US20220116265A1 (en) * 2020-10-12 2022-04-14 Ribbon Communications Operating Company, Inc. Methods, apparatus and systems for efficient cross-layer network analytics
US11539920B1 (en) 2021-06-21 2022-12-27 Soundhound, Inc. Sidebar conversations
CN113727056B (zh) * 2021-08-30 2023-09-22 聚好看科技股份有限公司 一种数据传输连接的管理方法及服务器
JP7421134B2 (ja) * 2021-12-28 2024-01-24 キヤノンマーケティングジャパン株式会社 情報処理システム、情報処理方法、プログラム

Family Cites Families (130)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5382972A (en) * 1988-09-22 1995-01-17 Kannes; Deno Video conferencing system for courtroom and other applications
US5136581A (en) * 1990-07-02 1992-08-04 At&T Bell Laboratories Arrangement for reserving and allocating a plurality of competing demands for an ordered bus communication network
US5375068A (en) * 1992-06-03 1994-12-20 Digital Equipment Corporation Video teleconferencing for networked workstations
US5594859A (en) * 1992-06-03 1997-01-14 Digital Equipment Corporation Graphical user interface for video teleconferencing
US5444702A (en) * 1992-09-14 1995-08-22 Network Equipment Technologies, Inc. Virtual network using asynchronous transfer mode
JPH06189301A (ja) * 1992-12-21 1994-07-08 Hitachi Ltd 映像伝送処理装置
JPH06209470A (ja) * 1993-01-11 1994-07-26 Hitachi Ltd 映像伝送処理装置
EP0622930A3 (en) * 1993-03-19 1996-06-05 At & T Global Inf Solution Division of applications for computer arrangement with collaboration.
US5872923A (en) * 1993-03-19 1999-02-16 Ncr Corporation Collaborative video conferencing system
US5625410A (en) * 1993-04-21 1997-04-29 Kinywa Washino Video monitoring and conferencing system
US5689553A (en) * 1993-04-22 1997-11-18 At&T Corp. Multimedia telecommunications network and service
US5347511A (en) * 1993-06-07 1994-09-13 International Business Machines Corp. Traffic management in packet communications networks
US5394402A (en) * 1993-06-17 1995-02-28 Ascom Timeplex Trading Ag Hub for segmented virtual local area network with shared media access
JPH0746569A (ja) * 1993-07-29 1995-02-14 Fujitsu Ltd テレビ会議多地点制御システム
JPH0779424A (ja) * 1993-09-06 1995-03-20 Hitachi Ltd 多地点映像通信装置
JPH0795552A (ja) * 1993-09-20 1995-04-07 Fujitsu Ltd テレビ会議ネットワーク管理システム
JPH07135594A (ja) * 1993-11-11 1995-05-23 Canon Inc 撮像制御装置
US5574934A (en) * 1993-11-24 1996-11-12 Intel Corporation Preemptive priority-based transmission of signals using virtual channels
US5446491A (en) * 1993-12-21 1995-08-29 Hitachi, Ltd. Multi-point video conference system wherein each terminal comprises a shared frame memory to store information from other terminals
JPH07202887A (ja) 1993-12-28 1995-08-04 Toshiba Corp 分散会議システム
US5481297A (en) * 1994-02-25 1996-01-02 At&T Corp. Multipoint digital video communication system
US5548324A (en) * 1994-05-16 1996-08-20 Intel Corporation Process, apparatus and system for displaying multiple video streams using linked control blocks
JPH07322229A (ja) * 1994-05-25 1995-12-08 Canon Inc ビデオ会議システム
US5625407A (en) * 1994-07-08 1997-04-29 Lucent Technologies Inc. Seamless multimedia conferencing system using an enhanced multipoint control unit and enhanced endpoint devices
CA2159249C (en) * 1994-11-21 1998-09-22 Mark A. Fitser Method for automatically establishing a conference call
EP0717545A3 (en) * 1994-12-13 1998-06-17 AT&T Corp. Interactive telephone networking service
JP2738329B2 (ja) * 1995-02-13 1998-04-08 日本電気株式会社 発信者指定メッセージ表示方法とその装置
US5572582A (en) * 1995-02-24 1996-11-05 Apple Computer, Inc. Method and apparatus for establishing communication between two teleconferencing endpoints
JPH08242435A (ja) 1995-03-03 1996-09-17 Takashi Ishida 通信機器の使用予約管理システム
US5600644A (en) * 1995-03-10 1997-02-04 At&T Method and apparatus for interconnecting LANs
JPH08251566A (ja) 1995-03-15 1996-09-27 Hitachi Ltd テレビ会議装置
US5657096A (en) * 1995-05-03 1997-08-12 Lukacs; Michael Edward Real time video conferencing system and method with multilayer keying of multiple video images
JPH09101767A (ja) * 1995-07-31 1997-04-15 Canon Inc 端末装置、端末の制御方法、会議システム、およびコンピュータ可読メモリ
US6286034B1 (en) * 1995-08-25 2001-09-04 Canon Kabushiki Kaisha Communication apparatus, a communication system and a communication method
JPH09214618A (ja) 1996-02-02 1997-08-15 Canon Inc 通信装置及び通信システム
US5760823A (en) * 1995-09-01 1998-06-02 Lucent Technologies Inc. Video messaging arrangement
CA2230267C (en) * 1995-09-04 2001-07-31 British Telecommunications Public Limited Company Transaction support apparatus
US5808662A (en) * 1995-11-08 1998-09-15 Silicon Graphics, Inc. Synchronized, interactive playback of digital movies across a network
US5835723A (en) * 1995-12-28 1998-11-10 Intel Corporation Dynamic assignment of multicast addresses
US6101546A (en) * 1996-03-11 2000-08-08 Microsoft Corporation Method and system for providing data files that are partitioned by delivery time and data type
US5812552A (en) * 1996-03-19 1998-09-22 At & T Corp Method and apparatus for dynamically forming multimedia emulated local area networks
US6343313B1 (en) * 1996-03-26 2002-01-29 Pixion, Inc. Computer conferencing system with real-time multipoint, multi-speed, multi-stream scalability
US6002768A (en) * 1996-05-07 1999-12-14 International Computer Science Institute Distributed registration and key distribution system and method
GB2313251B (en) * 1996-05-17 2000-06-07 Motorola Ltd Multimedia communications conferencing system and method of exchanging private communication
JP3419627B2 (ja) * 1996-06-11 2003-06-23 株式会社日立製作所 ルータ装置
US5995503A (en) 1996-06-12 1999-11-30 Bay Networks, Inc. Method and apparatus for providing quality of service routing in a network
US6212182B1 (en) * 1996-06-27 2001-04-03 Cisco Technology, Inc. Combined unicast and multicast scheduling
JPH1032652A (ja) 1996-07-12 1998-02-03 Ricoh Co Ltd マルチメディア通信システム
US6332153B1 (en) * 1996-07-31 2001-12-18 Vocaltec Communications Ltd. Apparatus and method for multi-station conferencing
US5974446A (en) * 1996-10-24 1999-10-26 Academy Of Applied Science Internet based distance learning system for communicating between server and clients wherein clients communicate with each other or with teacher using different communication techniques via common user interface
US5995490A (en) 1996-12-13 1999-11-30 Siemens Information And Communication Networks, Inc. Method and system for integrating video and data transfers in a multimedia session
JP2828086B2 (ja) 1997-01-14 1998-11-25 日本電気株式会社 多地点テレビ会議システム
US6076166A (en) * 1997-01-17 2000-06-13 Philips Electronics North America Corporation Personalizing hospital intranet web sites
US5886734A (en) * 1997-01-28 1999-03-23 Videoserver, Inc. Apparatus and method for storage and playback of video images and audio messages in multipoint videoconferencing
JP3733984B2 (ja) * 1997-01-29 2006-01-11 富士ゼロックス株式会社 情報蓄積装置および情報蓄積方法
FR2761562B1 (fr) * 1997-03-27 2004-08-27 France Telecom Systeme de visioconference
WO1998044733A1 (en) * 1997-03-31 1998-10-08 Broadband Associates Method and system for providing a presentation on a network
JP3529621B2 (ja) * 1997-05-12 2004-05-24 株式会社東芝 ルータ装置、データグラム転送方法及び通信システム
JPH10322392A (ja) 1997-05-16 1998-12-04 Hitachi Ltd パケットネットワークシステム及び通信制御装置
JPH10336176A (ja) * 1997-06-04 1998-12-18 Nippon Telegr & Teleph Corp <Ntt> グループ通信方法及びシステム及びグループ通信プログラムを格納した記憶媒体
US6134589A (en) 1997-06-16 2000-10-17 Telefonaktiebolaget Lm Ericsson Dynamic quality control network routing
US6446116B1 (en) * 1997-06-30 2002-09-03 Sun Microsystems, Inc. Method and apparatus for dynamic loading of a transport mechanism in a multipoint data delivery system
JPH1127283A (ja) 1997-07-04 1999-01-29 Hitachi Ltd 通信網輻輳制御装置
US6288739B1 (en) * 1997-09-05 2001-09-11 Intelect Systems Corporation Distributed video communications system
US6259701B1 (en) * 1997-09-11 2001-07-10 At&T Corp. Method and system for a unicast endpoint client to access a multicast internet protocol (IP) session
US6148068A (en) * 1997-10-20 2000-11-14 Nortel Networks Limited System for managing an audio conference
US5928331A (en) * 1997-10-30 1999-07-27 Matsushita Electric Industrial Co., Ltd. Distributed internet protocol-based real-time multimedia streaming architecture
US6272127B1 (en) * 1997-11-10 2001-08-07 Ehron Warpspeed Services, Inc. Network for providing switched broadband multipoint/multimedia intercommunication
JPH11191882A (ja) * 1997-12-25 1999-07-13 Nec Corp テレビ会議予約システムおよびテレビ会議予約プログラムを記録した記録媒体
US6421706B1 (en) * 1998-02-25 2002-07-16 Worldcom, Inc. Multicast and unicast internet protocol content distribution having a feedback mechanism for real-time and store and forward information transfer
CN1073770C (zh) * 1998-03-11 2001-10-24 沈楫 自动建立电话会议的方法及设备
US6188691B1 (en) * 1998-03-16 2001-02-13 3Com Corporation Multicast domain virtual local area network
US6313822B1 (en) * 1998-03-27 2001-11-06 Sony Corporation Method and apparatus for modifying screen resolution based on available memory
US6275493B1 (en) * 1998-04-02 2001-08-14 Nortel Networks Limited Method and apparatus for caching switched virtual circuits in an ATM network
US6353616B1 (en) * 1998-05-21 2002-03-05 Lucent Technologies Inc. Adaptive processor schedulor and method for reservation protocol message processing
US6473088B1 (en) * 1998-06-16 2002-10-29 Canon Kabushiki Kaisha System for displaying multiple images and display method therefor
JP2000004244A (ja) 1998-06-17 2000-01-07 Matsushita Electric Ind Co Ltd 資源予約管理装置
KR100285177B1 (ko) * 1998-06-30 2001-03-15 황대준 인터넷 프로토콜 멀티캐스팅 환경에서의 신뢰성있는 다자간 정보 전송 방법
US6181300B1 (en) * 1998-09-09 2001-01-30 Ati Technologies Display format conversion circuit with resynchronization of multiple display screens
US6453336B1 (en) * 1998-09-14 2002-09-17 Siemens Information And Communication Networks, Inc. Video conferencing with adaptive client-controlled resource utilization
JP2000134213A (ja) 1998-10-22 2000-05-12 Sony Corp 通信装置、通信方法、および提供媒体
US6434618B1 (en) 1998-11-12 2002-08-13 Lucent Technologies Inc. Programmable network element for packet-switched computer network
US6404873B1 (en) * 1998-12-01 2002-06-11 Siemens Information And Communication Networks, Inc. Subconference calling in a telephony-over-LAN environment
US6113822A (en) * 1998-12-23 2000-09-05 General Electric Company Polyolefins as nucleating agent for foamed engineering polymers
JP2000244487A (ja) 1999-02-18 2000-09-08 Nippon Telegr & Teleph Corp <Ntt> 多人数参加型仮想空間コミュニケーションシステム
JP2000253053A (ja) 1999-02-25 2000-09-14 Hitachi Ltd ネットワークシステム
JP2000253049A (ja) * 1999-03-01 2000-09-14 Fujitsu Ltd ルーティング装置およびルーティング方法
JP2000253137A (ja) * 1999-03-01 2000-09-14 Toshiba Corp 画像通信端末、画像通信システムおよび移動局
JP2000258748A (ja) * 1999-03-10 2000-09-22 Nec Corp 液晶表示装置
US6711137B1 (en) * 1999-03-12 2004-03-23 International Business Machines Corporation System and method for analyzing and tuning a communications network
US6775247B1 (en) * 1999-03-22 2004-08-10 Siemens Information And Communication Networks, Inc. Reducing multipoint conferencing bandwidth
US6366950B1 (en) * 1999-04-02 2002-04-02 Smithmicro Software System and method for verifying users' identity in a network using e-mail communication
US7106374B1 (en) * 1999-04-05 2006-09-12 Amherst Systems, Inc. Dynamically reconfigurable vision system
JP2000299739A (ja) * 1999-04-13 2000-10-24 Nec Corp テレビ会議システム、及びその予約サーバ、制御装置、テレビ会議端末及びプログラムを記憶した記憶媒体
US6473858B1 (en) * 1999-04-16 2002-10-29 Digeo, Inc. Method and apparatus for broadcasting data with access control
US6907243B1 (en) * 1999-06-09 2005-06-14 Cisco Technology, Inc. Method and system for dynamic soft handoff resource allocation in a wireless network
DE19929698A1 (de) * 1999-06-29 2001-01-18 Bba Friction Gmbh Verfahren zum Herstellen von Reibbelägen
US6771661B1 (en) * 1999-07-21 2004-08-03 Cisco Technology, Inc. Apparatus and methods for providing event-based data communications device configuration
US6757259B1 (en) * 1999-08-12 2004-06-29 Intel Corporation Control of internet based video conferencing
JP2001094579A (ja) * 1999-09-27 2001-04-06 Canon Inc データ伝送システム及びデータ伝送方法
FR2799326B1 (fr) 1999-10-04 2001-12-28 France Telecom Protocole de lancement d'une application logicielle a distance et de reservation de ressources reseau avec qualite de service
JP2001128132A (ja) * 1999-10-28 2001-05-11 Nippon Telegr & Teleph Corp <Ntt> ビデオ会議システム、方法、およびその方法を記録した記録媒体
JP2001156775A (ja) * 1999-11-25 2001-06-08 Nippon Telegr & Teleph Corp <Ntt> グループ制御方法及びその装置並びにそのプログラムを記録した媒体
US7142512B1 (en) * 1999-12-02 2006-11-28 Hitachi, Ltd. Network measurement controlling system apparatus and method
JP2001177566A (ja) * 1999-12-15 2001-06-29 Nippon Telegr & Teleph Corp <Ntt> 分配選択型光スイッチングネットワーク、分配選択型光送受信ノード及びその通信制御方法
JP2001184288A (ja) 1999-12-24 2001-07-06 Casio Comput Co Ltd チャットシステム及びチャット方法
US20010049087A1 (en) * 2000-01-03 2001-12-06 Hale Janet B. System and method of distance education
JP3506092B2 (ja) * 2000-02-28 2004-03-15 日本電気株式会社 マルチキャストパケット転送装置、マルチキャストパケット転送システム及び記憶媒体
US20020023132A1 (en) 2000-03-17 2002-02-21 Catherine Tornabene Shared groups rostering system
TWI245997B (en) * 2000-04-06 2005-12-21 Distribution Systems Res Inst IP communication system, IP transfer network, gateway device, server, network point device, medium router, terminal device and terminal communication method
JP2001313915A (ja) 2000-04-28 2001-11-09 Matsushita Electric Ind Co Ltd テレビ会議装置
JP4543496B2 (ja) 2000-05-10 2010-09-15 ソニー株式会社 通信システム
US6760749B1 (en) * 2000-05-10 2004-07-06 Polycom, Inc. Interactive conference content distribution device and methods of use thereof
TW527833B (en) * 2000-05-19 2003-04-11 Sony Corp Network conferencing system, participation authorization method and presenting method
JP2001333403A (ja) 2000-05-19 2001-11-30 Sony Corp ネットワーク会議システム及び参加認証方法、会議管理サーバ及び参加認証方法
ATE371321T1 (de) * 2000-05-22 2007-09-15 Ericsson Telefon Ab L M Anwendungsbeeinflusste richtlinie
US6798418B1 (en) * 2000-05-24 2004-09-28 Advanced Micro Devices, Inc. Graphics subsystem including a RAMDAC IC with digital video storage interface for connection to a graphics bus
US20020087699A1 (en) * 2000-07-31 2002-07-04 Telefonaktiebolaget Lm Ericsson (Publ) Dynamic QoS management in differentiated services using bandwidth brokers, RSVP aggregation and load control protocols
US7065042B1 (en) * 2000-08-15 2006-06-20 Nortel Networks Limited Aggregating filters
US7007098B1 (en) * 2000-08-17 2006-02-28 Nortel Networks Limited Methods of controlling video signals in a video conference
EP1348165A4 (en) * 2000-12-26 2009-01-28 Polycom Inc SYSTEM AND METHOD FOR COORDINATING A CONFERENCE USING A FIXED SERVER
US7143433B1 (en) * 2000-12-27 2006-11-28 Infovalve Computing Inc. Video distribution system using dynamic segmenting of video data files
US6677979B1 (en) * 2001-06-12 2004-01-13 Cisco Technology, Inc. Method and apparatus for dual image video teleconferencing
US7225271B1 (en) * 2001-06-29 2007-05-29 Cisco Technology, Inc. System and method for recognizing application-specific flows and assigning them to queues
US7035230B1 (en) * 2001-07-11 2006-04-25 Cisco Technology, Inc. System and method for bandwidth and conference resource reservation
KR100426519B1 (ko) * 2001-12-06 2004-04-08 에스케이텔레텍주식회사 이동통신 단말기를 이용한 멀티캐스트 패킷 통신방법
US7180535B2 (en) * 2004-12-16 2007-02-20 Nokia Corporation Method, hub system and terminal equipment for videoconferencing
US8014308B2 (en) * 2006-09-28 2011-09-06 Microsoft Corporation Hardware architecture for cloud services
US20080312820A1 (en) * 2007-06-14 2008-12-18 Ajesh Kapoor Method of driver assignment and scheduling segmented long-haul routes
US8756318B1 (en) * 2007-10-09 2014-06-17 Microsoft Corporation Software deployment using client location

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
1995 Proc. fo the 3rd ACM International Conference on Multimedia pp.511-522 Steven McCanne외 "vic: a flexible framework for packet video"(1995.12.05-09.)*

Also Published As

Publication number Publication date
KR20040071201A (ko) 2004-08-11
CN1328683C (zh) 2007-07-25
AU2002357194A1 (en) 2003-06-30
KR20040062683A (ko) 2004-07-07
JP2005513870A (ja) 2005-05-12
CN1605074A (zh) 2005-04-06
KR100948317B1 (ko) 2010-03-17
US20050010638A1 (en) 2005-01-13
KR100971273B1 (ko) 2010-07-20
WO2003053004A1 (en) 2003-06-26
JP2005513865A (ja) 2005-05-12
KR20040071199A (ko) 2004-08-11
EP1468369A4 (en) 2010-01-13
JP2005513875A (ja) 2005-05-12
CN1618203A (zh) 2005-05-18
WO2003053034A9 (en) 2004-04-08
KR20040071200A (ko) 2004-08-11
MXPA04005818A (es) 2004-09-10
CN1618202A (zh) 2005-05-18
EP1454281B1 (en) 2012-02-08
CN1633652B (zh) 2010-05-12
JP2005534207A (ja) 2005-11-10
US7656824B2 (en) 2010-02-02
CN1618071A (zh) 2005-05-18
EP1454478A1 (en) 2004-09-08
CN1618071B (zh) 2012-01-04
EP1461901A4 (en) 2010-01-13
AU2002357224A1 (en) 2003-06-30
AU2002357192A1 (en) 2003-06-30
AU2002357144A8 (en) 2003-06-30
EP1454451A1 (en) 2004-09-08
MXPA04005817A (es) 2004-09-10
KR20040062994A (ko) 2004-07-09
JP2005513869A (ja) 2005-05-12
WO2003053005A1 (en) 2003-06-26
US9014059B2 (en) 2015-04-21
MXPA04005814A (es) 2004-09-10
MXPA04005816A (es) 2004-09-10
EP1468369A1 (en) 2004-10-20
WO2003053034A1 (en) 2003-06-26
CN100344097C (zh) 2007-10-17
US20050060368A1 (en) 2005-03-17
JP2009153172A (ja) 2009-07-09
WO2003052613A1 (en) 2003-06-26
MXPA04005813A (es) 2004-09-10
AU2002357813A1 (en) 2003-06-30
EP1454281A2 (en) 2004-09-08
JP4091546B2 (ja) 2008-05-28
CN1620798A (zh) 2005-05-25
EP1461901A1 (en) 2004-09-29
EP1454281A4 (en) 2010-01-13
JP2005513836A (ja) 2005-05-12
EP1454252A1 (en) 2004-09-08
CN1633652A (zh) 2005-06-29
US20050132000A1 (en) 2005-06-16
WO2003052993A2 (en) 2003-06-26
EP1454478A4 (en) 2010-07-07
MXPA04005812A (es) 2004-09-10
AU2002357144A1 (en) 2003-06-30
US20080158337A1 (en) 2008-07-03
KR20040069328A (ko) 2004-08-05
WO2003052611A1 (en) 2003-06-26
CN100477707C (zh) 2009-04-08
WO2003052993A3 (en) 2004-02-05
AU2002361666A1 (en) 2003-06-30
EP1454252A4 (en) 2010-01-13
US20060038877A1 (en) 2006-02-23

Similar Documents

Publication Publication Date Title
KR100960772B1 (ko) 메시징 시스템을 갖는 비디오 컨퍼런스 애플리케이션사용자 인터페이스
KR100964983B1 (ko) 네트워크에 걸쳐서 화상회의 세션을 자동으로 개시하는 방법 및 시스템, 네트워크에 걸쳐서 화상회의 세션에 참가하기 위한 방법 및 네트워크에 걸쳐서 멀티캐스트 세션에 참가하기 위한 방법
US20050226172A1 (en) Video conference call set up
US20050132412A1 (en) Videoconference system architecture

Legal Events

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