KR20040014993A - 시간 민감 정보의 통신 시스템 - Google Patents

시간 민감 정보의 통신 시스템 Download PDF

Info

Publication number
KR20040014993A
KR20040014993A KR10-2003-7003032A KR20037003032A KR20040014993A KR 20040014993 A KR20040014993 A KR 20040014993A KR 20037003032 A KR20037003032 A KR 20037003032A KR 20040014993 A KR20040014993 A KR 20040014993A
Authority
KR
South Korea
Prior art keywords
network
path
resources
resource
manager
Prior art date
Application number
KR10-2003-7003032A
Other languages
English (en)
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 KR20040014993A publication Critical patent/KR20040014993A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/16Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
    • H04W28/26Resource reservation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2805Home Audio Video Interoperability [HAVI] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • H04L12/2814Exchanging control software or macros for controlling appliance services in a home automation network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/283Processing of data at an internetworking point of a home automation network
    • H04L12/2834Switching of information between an external network and a home network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • H04L12/2809Exchanging configuration information on appliance services in a home automation network indicating that an appliance service is present in a home automation network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L2012/284Home automation networks characterised by the type of medium used
    • H04L2012/2843Mains power line
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L2012/284Home automation networks characterised by the type of medium used
    • H04L2012/2845Telephone line
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L2012/2847Home automation networks characterised by the type of home appliance used
    • H04L2012/2849Audio/video appliances
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Automation & Control Theory (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명에 따른 UPnP 아키텍쳐는, UPnP 네트워크를 통해, 오디오 비디오 정보, 및 다른 시간 민감 정보의 통신을 지원하기 위해, 레이스(race) 또는 해저드(hazard) 없이 하나의 장치 또는 그 서브 유닛에 대해 다수의 컨덴더를 지원하는 자원 관리 모듈과, 소스 투 싱크(source-to-sink) 경로 관리를 제공하는 경로 관리자와, A/V 애플리케이션이 액티비티를 스케줄링할 수 있게 해주는 액션 관리자를 포함하도록 확대된다. 이와 함께, 자원 관리자 및 경로 관리자는 경로 유효성, 무결성 및 서비스 품질(QoS)을 보증한다. 자원 관리자는 혼합 이더네트, 1394, 802.11, USB, HPNA를 이용하여 네트워크에 분산된 자원과 같은 이종(heterogeneous) 네트워크에 분산된 장치 자원을 관리하도록 구성된다. 경로 관리자는 이종 네트워크에 분산되는 네트워크 자원을 관리하도록 구성된다. 자원 관리자 및 경로 관리자는 네트워크 경계 상에서의 경로가 유효함을 보증하도록 또한 구성된다. 스케줄링 액션은 애플리케이션의 에이전트로서 작동하는 각 액션 관리자의 의무이며, 자원 관리자 및 경로 관리자의 클라이언트이다. 자원 관리자 및 경로 관리자는 UPnP 구조의 통합적인 부분으로서 구성되며, 이대로, HTTP 메시지를 통해 애플리케이션과 통신한다.

Description

시간 민감 정보의 통신 시스템{AUDIO-VIDEO MANAGEMENT IN UPnP}
UPnP(Universal Plug and Play)는 모든 형태 인자의 지능형 가전, 무선 장치, PC의 널리 보급된 P2P(peer-to-peer) 네트워크 연결을 위한 아키텍쳐이다. 이는 가정에 있건, 작은 사업장에 있건, 공중 공간(public spaces)에 있건, 혹은 인터넷에 접속되었건 등의, 임시적이거나 또는 관리되지 않는 네트워크에 대해 사용이 편리하고, 유연성이 있으며, 표준 기반형 연결이 가능하도록 설계된다. UPnP는 레버리지(leverages) TPC/IP 및 웹 기술이, 가정, 사무실, 공용 공간의 네트워크화된 장치들간의 데이터를 제어 및 전송하는 것 외에, 이음매 없는(seamless) 근접성 네트워킹을 가능하게 하는 분산형의, 개방 네트워킹 아키텍쳐이다.
UPnP는 홈 네트워크에서 다양한 장치들 간의 연결성을 제공하나, 다중 애플리케이션 환경에서 오디오 비디오 정보의 통신용으로 적합하지는 않다. 예를 들어, VCR 또는 DVD 플레이어로부터 텔레비전 스크린으로의 오디오 비디오(AV) 정보전송은, 통상 적어도 소정 레벨의 서비스 품질(Quality-of-Service : QoS)을 갖는 전용 포인트 투 포인트 통신 채널을 필요로 한다. AV 정보의 전송, 또는 다른 시간 민감 통신(time-sensitive communication)과 관련하여, UPnP 1.0은 세 가지 주요한 단점을 갖는다.
UPnP의 첫 번째 단점은, 동일한 장치 또는 그 서브 유닛의 제어를 위해 경쟁할 수도 있는 다수의 애플리케이션을 지원하지 않는다는 점이다. 따라서, 다수의 애플리케이션이 하나의 장치 또는 그 서브 유닛의 상태를 변경시키고자 하는 경우, 레이스(race) 조건이 발생할 수 있고, 애플리케이션의 관점에서는 그 효과가 비결정적(non-deterministic)일 수도 있다.
두 번째 단점은, UPnP가 스트림 관리를 포함하여, 서비스 품질(QoS)을 보증하는 부담을 애플리케이션에게 지운다는 점이다. 따라서, 실시간 요건을 갖는 애플리케이션은 네트워크 자원을 직접 관리해야 한다. 예를 들어, UPnP 애플리케이션은 접속을 셋업(setup)해야 하고, 소정의 QoS를 지원하도록 채널 및 대역폭을 할당해야 한다. 당 분야에서 알려져 있는 바와 같이, 이러한 태스크는 매우 부담되는 것이며, 애플리케이션이 1394 장치로부터의 비디오 신호를, 상이한 무선 네트워크에 속하는 무선 스크린으로 스트리밍하는 것과 같이, 상이한 네트워크상의 장치를 처리할 필요가 있는 경우에, 특히 부담스럽다. 애플리케이션은 통상 스트리밍 태스크를 수행하기 위해 상이한 네트워크에 의해 제공되는 상이한 인터페이스를 사용하도록 요구된다.
세 번째 단점은, UPnP가 임의의 액티비티(activity)를 수행하도록 상주해야하며, 자동적으로 개시하도록 동작을 스케줄링할 수만은 없다는 점이다. 이러한 스케줄링의 결여로 인해 다수의 애플리케이션에서 동시에 상주하게 되며, 시스템이 차후의 액티비티에 대한 요구, 또는 반복적인 태스크를 위한 요구를 대비하도록 남겨지는 것 이상으로 비효율적이다.
발명의 개시
본 발명의 목적은 UPnP 네트워크를 통해 오디오 비디오 정보의 전송을 지원하는 시스템, 방법, 및 아키텍쳐를 제공하는 것이다. 본 발명의 다른 목적은 장치 및 그 장치의 서브 유닛에 대한 다수 컨덴더 액세스(multiple contender access)를 제어하는 UPnP 네트워크 관리 시스템을 제공하는 것이다. 본 발명의 또 다른 목적은 소정의 서비스 품질 레벨에서 신뢰 가능한 통신을 제공하는 UPnP 네트워크 관리 시스템을 제공하는 것이다. 본 발명의 또 다른 목적은 액티비티의 스케줄링을 위해 제공하는 UPnP 네트워크 관리 시스템을 제공하는 것이다.
상기한 목적들은 UPnP 아키텍쳐에 다음과 같은 모듈 및 시스템, 즉,
레이스(race) 또는 해저드(hazard) 없이 하나의 장치 또는 그 서브 유닛에 대해 다수의 컨덴더를 지원하고, 경로 관리자와 함께 작업하여 경로 유효성(validity) 및 무결성(integrity)을 보증하는 자원 관리 모듈과,
경로 유효성, 무결성, 서비스 품질을 보증하는 것을 포함하여, 소스 투 싱크(source-to-sink) 경로 관리를 제공하는 경로 관리자와,
A/V 애플리케이션이 액티비티를 스케줄링할 수 있게 해 주는 액션 관리자
를 부가함으로써 달성된다.
자원 관리자 및 경로 관리자는 혼합 이더넷, 1394, 802.11, HyperLAN2, USB, HPNA를 사용하는 네트워크에 분산된 자원과 같은 이종(heterogeneous) 네트워크에 분산된 장치 및 네트워크 자원을 관리하도록 구성되며, 네트워크 경계를 가로지른 경로가 효과적인 통신을 제공할 것을 보증하도록 구성된다. 액션 관리자는 자원 관리자 및 경로 관리자의 클라이언트이며, 애플리케이션의 에이전트로서 작용한다. 자원 관리자 및 경로 관리자는 UPnP 프레임워크의 통합 부분(integral part)으로서 구성되며, 이렇게 하여, HTTP 메시지를 통해 애플리케이션과 통신한다.
본 발명은 첨부되는 도면을 참조하여, 실시예에 의해 보다 상세하게 설명될 것이다.
본 발명은 소비 제품 및 홈 네트워킹 분야에 관한 것으로, 특히 UPnP 1.0에 오디오 비디오 관리 성능을 제공하는 것에 관한 것이다.
도 1은 다수의 이종 네트워크와 상호 작용하는 UPnP 사용자 제어 포인트(UCPs)를 포함하는 예시적인 블록도,
도 2는 UPnP 사용자 제어 포인트와 비(non)IP 네트워크를 브리징하는 시스템의 예시적인 블록도,
도 3은 본 발명에 따른 다수의 이종 네트워크 상에서 시간 민감 정보의 통신을 지원하는 UPnP 아키텍처의 예시적인 블록도,
도 4는 본 발명에 따른 통신 경로에 따라 장치 자원을 예약하는 프로세스의 예시적인 흐름도,
도 5는 본 발명에 따른 통신 경로에 따라 네트워크 세그먼트를 셋업하는 프로세사의 예시적인 흐름도이다.
도면 전반에 걸쳐, 동일한 참조 부호는 유사하거나 또는 대응하는 특징 또는 기능을 나타낸다.
도 1은 다수의 이종 네트워크(170, 180)상의 장치(171, 181)와 상호 작용하는 IP 네트워크(160) 상의 UPnP 제어기(161)를 포함하는 시스템(100)의 예시적인 블록도를 도시한다. 본 발명은 임의의 형태의 UPnP 호환 가능한 제어 엔티티(UPnP-compatible control entities)에 적용 가능하나, 참조를 용이하게 하기 위해, UPnP 제어기(161)는 이후 사용자 제어 포인트(user control points : UCPs)로서 지칭되며, 이는 이러한 콘트롤러에 대해 통상적으로 사용되는 용어와 부합한다.
다수의 슬레이브 네크워크를 위한 호스트 시스템(110)내의 UPnP 프록시 인에블링 로직(120)은 슬레이브 네트워크 인터페이스(140, 150) 각각을 통해, 피제어형(uncontrolled), 혹은 슬레이브 장치(171, 181)와 상호 작용한다. 주어진 예에서 슬레이브 장치(171, 181)는 USB 장치이고 슬레이브 장치(181)는 블루투스(Bluetooth) 장치(W1 및 W2)이다. 단일의 호스트 시스템(110)이 예시되어 있으나, 당업자라면 호스트 시스템(110)은 각종 장치들 사이에서 분산될 수도 있음을 인지할 것이다. IEEE 1394 네트워크, 802.11 네트워크, HomeRF 네트워크,Firefly 네트워크와 같은 HAVi 호환 가능한 네트워크, X-10 네트워크와 같은 전력선 네트워크, Jimi 호환 가능한 네트워크를 포함하여, 네트워크 상에서의 장치의 제어를 용이하게 하는 임의의 네트워크에 본 발명의 원리를 실질적으로 적용할 수 있다 하더라도, 예시적으로 USB 네트워크(170) 및 블루투스 RF 네트워크(180)가 도시되어 있다.
호스트 시스템(110)내의 UPnP 인에이블링 로직(120)은 UPnP 사용자 제어 포인트(161)와 슬레이브 장치(171, 181) 사이의 커멘드 및 메시지의 변환(transformation) 및 결합(coordination)을 실행한다. 참조를 용이하게 하기 위해, IP 네트워크(160)상의 UPnP 순응형 객체는 UPnP 객체로서 지칭되며, 비(non)IP 네트워크(170, 180)상의 장치는 비 UPnP 장치로서 지칭된다.
도 2는 USB 네트워크와 같은 비IP 네트워크(170)를 UPnP 사용자 제어 포인트(161)와 브리징하는 호스트 시스템(110)의 예시적인 블록도를 도시한다. 도시한 바와 같이, UPnP 인에이블링 로직(120)은 이후 더 기술되는 유니/멀티캐스트 TPC/IP 및 UDP/IP(232)의 상부에 HTTP(231)를 포함하는 UPnP 스택(130)을 통해 IP 네트워크(160)상의 UCP(161)와 상호 작용한다. DHCP 클라이언트(231A)가 또한 도시되어 있다. UPnP 인에이블링 로직(120)은 슬레이브 네트워크 인터페이스(140)와 또한 상호 작용하여 슬레이브 장치(171)와의 제어 및 메시징을 실행한다. 본 예에서, USB 네트워크 인터페이스(140)는 장치 드라이버(241), 클래스 드라이버(242), USB 스택(243), USB 호스트 콘트롤러(244)를 포함하여, 현재의 USB 표준안과 부합한다. 이후 더 기술하는 바와 같이, 슬레이브 네트워크 인터페이스(140)는 UPnP인에이블링 로직(120)에, 네트워크(170)상의 각각의 장치(171)에 관한 정보, 각각의 장치(171)의 현재 상태(접속/접속해제/스탠바이/등), 각각의 장치(171)의 현재 성능 등을 제공한다.
도 3은 본 발명에 따른 UPnP 아키텍쳐의 예시적인 블록도를 도시한다. 본 발명은 인에이블링 로직(120)에 필수적인 특성 및 기능을 제공하여, 이종 네트워크상의 장치들간의 오디오 비디오 정보, 또는 다른 시간 민감 정보의 효율적이고 효과적인 전송을 용이하게 한다. 특히, UPnP 인에이블링된 이종 네트워크를 통해 A/V의 통신 및 다른 시간 민감 정보를 지원하기 위해, 액션 관리 모듈(310), 자원 관리 모듈(320), 경로 관리 모듈(330), 및 이들과 제각기 연관된 데이터베이스, 즉, 액션 데이터베이스(315), 자원 데이터베이스(325), 경로 데이터베이스(335)가 제공된다. 본 발명의 UPnP 네트워크 관리 시스템은, 이후 상세히 기술하는 바와 같이, 장치 및 그 장치의 서브 유닛에 대한 다중 컨텐더 액세스를 제어하고, 소정의 QoS 레벨에서 신뢰 가능한 통신을 제공하며, 액티비티의 스케줄링을 제공하도록 구성된 하나 이상의 UPnP 포록시 인에이블링 로직 블록(120)을 포함한다.
이해를 용이하게 하기 위해, 본 명세서에서는 본 발명의 특성 또는 기능에 의해 영향을 받는 UPnP 프록시 인에이블링 로직(120)의 기능들만이 기술되어 있다. 또한, 이해를 용이하게 하기 위해, 다음과 같은 정의가 제공된다.
장치 자원, 또는 간단히 자원 : 장치 자원은 장치 및 이들의 서브 유닛을 포함한다. 예를 들어, VCR 장치 및 튜너, 클록, 타이머, 테이프 트랜스포트와 같은 그 서브 유닛이 장치 자원이다.
네트워크 자원 : 네트워크 자원은 채널 및 대역폭을 포함한다.
경로 : 경로는 순서화되고, 네트워크 접속된 장치 자원들의 시퀀스로서, 소스 자원으로부터 개시하여 싱크 자원에서 종료한다. A/V 스트림은 시퀀스 순서에 따른 경로를 통해 흐를 수 있다.
A/V 액션, 또는 간단히 액션 : A/V 액션은 특정 유형의 A/V 스트림, 또는 다른 시간 민감 스트림에 대응하는 것으로서, 경로를 따라 흐르며, 특정의 시간에서 개시하고, 다른 특정의 시간에서 종료하며, 아마도 주기적으로 발생한다. 예를 들어, 기록 액션은 VCR 튜너로부터 PC 디스크까지의 MPEG2 비디오 스트림을 제공하며, 매일 3:30 pm에서 개시하여, 5:00 pm에서 죵료한다.
본 발명에 따르면, A/V 액션의 스케줄링은 다음과 같은 시퀀스로 실행된다. 즉,
1. 액션의 경로를 따라 모든 자원을 예약한다. 예약은 액션이 실행될 때의 시간에서 개시하는 효과를 가지며, 그 액션의 기간 동안 지속된다.
2. 접속을 셋업하고 그 QoS 요건에 따른 액션의 경로를 따라 네트워크 자원을 할당한다.
3. 지정된 시간에서 액션을 스케줄링한다.
바람직한 실시예에시, 애플리케이션에는 자원 예약, 경로 세팅, 스케줄링 액티비티를 직접 관리하는 옵션이 주어지거나, 또는 이들 액티비티를 관리하도록 액션 관리자(310)에게 요구할 수 있다. 액션 관리자(310)를 제공함으로써, 애플리케이션은 상세한 자원 관리 및 경로 관리에 대한 부담을 없앨 수 있다. 장치 자원은액션 관리자(310), 또는 애플리케이션에 의해 실행 시간 휠씬 이전에 예약될 수 있으나, 바람직하게는, 네트워크 자원이 할당되고, 액션이 발생하는 시간 바로 이전에 경로가 셋업되어, 네트워크 자원의 사용을 최대화한다.
바람직한 실시예에서, 각각의 경로 관리자는 대응하는 피어(peer) 자원 관리자를 갖는다. 자원 및 경로 관리자는 함께 특정의 네트워크내의 장치 자원 및 네트워크 자원을 관리하고, 경로 유효성 및 무결성을 보증한다. 예를 들어, 1394 네트워크의 자원 관리자는 그 네트워크내의 장치 자원을 관리하고, 피어 경로 관리자는 장치 자원을 접속하는 네트워크 자원을 관리한다. 자원 관리자는 전체 경로를 따라 장치 자원이 서로 통신함으로써, 모두 예약되거나, 모두 해제됨을 보증한다. 마찬가지로, 경로 관리자는 전체 경로가 서로 통신함으로써, 또한 전체 경로가 셋업됨을 보증한다. 경로 관리자는 테어 다운(tear down)인 경우 그들의 대응하는 피어 자원 관리자에게 또한 통지하여 네트워크 자원을 해제한다.
본 발명의 바람직한 실시예에서, 통상적인 UPnP 사양은 자원 관리, 경로 관리, 및 스케줄링을 지원하기 위해 HTTP 요구 및 응답 커맨드를 포함하도록 보정된다. 자원 관리 커맨드는 그 자원이 예약되는 경로와, 예약을 위한 개시 시간 및 종료 시간을 식별하는 메시지 본체와 함께, RESERVE 및 RELEASE를 포함한다. 경로 관리 커맨드는 데이터 스트림의 경로, 유형 및 특성, 스트림의 QoS의 요건, 경로 셋업을 위한 개시 시간 및 종료 시간을 포함하는 메시지 본체와 함께, SETUP 및 TEARDOWN을 포함한다. 스케줄링 커맨드는 액션의 경로, 개시 시간('현재'를 포함함), 종료 시간, 데이터 스트림의 유형 및 특성, 스트림의 QoS 요건을 포함하는 메시지 본체와 함께, SCHEDULE 및 UNSCHEDULE을 포함한다. 일단 스케줄링 커맨드가 송출되면 스케줄링 커맨드는 애플리케이션이 네트워크에서 이탈하도록 허용한다.
본 발명의 장비의 이용 가능성을 통신하기 위해, 장치 기술(description) 데이터베이스(305)는 각각의 장치 또는 서비스와 연관된 액션 관리자(310), 자원 관리자(320), 경로 관리자(330)의 (URL로서) 로케이션을 포함한다. 바람직한 실시예에서, 장치 관리자 모듈(340)은 장치 기술 데이터베이스(305)에 이들 URL을 자동적으로 부가한다.
HTTP 서버(231)
초기화 시간에서, UPnP HTTP 서버(231)는 매(every) 자원 관리자(320), 경로 관리자(330), 액션 관리자(310)에 대해, 하나의 스레드(thread)를 생성한다. 바람직하게, 각 유형의 하나의 관리자는 네트워크마다 세팅되고, 특정 네트워크는, 특정 유형의 관리자가 전혀 사용되지 않거나, 또는 하나 이상이 사용될 것임을 나타내도록 구성 파일(configuration file)(도시하지 않음)이 사용된다. HTTP 서버(231)는 이후 더 기술되는, 자원 관리자(320), 경로 관리자(330), 및 액션 관리자(310)로 방향 설정되는 요구를 또한 인식하여 디스패치한다.
자원 관리자 모듈(320)
자원 관리자 모듈(320)의 주된 기능은 다수의 애플리케이션이 동일한 장치 또는 서브 유닛을 이용하고자 하는 경우의 레이스 상태를 방지하는 것이다. 바람직하게, 자원 관리자(320)는 네트워크 고유의 것으로서, 대응하는 네트워크 내에서, 자원, 또는 자원의 서브세트를 관리할 책임이 있다. 예를 들어, 1394 장치 및 802.11 장치로 구성된 UPnP 환경에서, 적어도 두 개의 자원 관리자 모듈(320)이 제공되는데, 1394 장치에 대해 하나의 모듈, 802.11 장치에 대해 하나의 모듈이 제공된다. 1384 자원 관리자는 1394 장치 및 그 서브 유닛을 관리할 책임이 있고, 802.11 관리자는 802.11 장치 및 그 서브 유닛을 관리할 책임이 있다.
자원 관리자(320)는 혼합형 이더네트, 1394, 802.11, USB, HPNA 등을 이용하여 네트워크에 분산된 자원과 같은 이종 네트워크에 분산된 자원을 관리하며, 각각의 자원 관리자(320)는 네트워크 경계를 걸치는 경로가 적절하게 동작할 것을 보증하도록 구성된다. 자원 관리자(320)는 소스로부터 싱크로의 경로를 따라 모든 엔티티가 적절하게 구성될 수도 있고, 의도된 트랜잭션을 위해 예약될 수 있는 경우, 또한, 그러한 경우에만 예약이 설정되도록, 올 오어 넌(all-or-none) 예약을 보증한다. 자원 관리자(320)는 UPnP 프레임워크의 통합 부분이며, HTTP 서버(231)를 통해 통신되는 HTTP 메시지를 통해 애플리케이션과 통신한다.
동작시에, 애플리케이션, 또는 액션 관리자(310)와 같은 UPnP 시스템 콤포넌트는 자원 예약 요구를 송출한다. 이렇게 함으로써, 자원 관리자는 요구자가 된다. 예약 요구(이하 "액티브 관리자"로서 지칭됨)를 수신하는 모든 자원 관리자는 경로의 유효성을 보증해야 하고, 올 오어 넌 예약 프로세스에 동반해야 한다. 이러한 이유로, RESERVE, RELEASE, SETUP, 및 TEARDOWN과 같은 모든 요구는 그 경로를 따라 장치 및 네트워크 자원이 관리되어야 할 전체 경로를 나타낸다. 경로는,그 경로상의 모든 장치 자원이 도달 가능한 경우에만 유효하다. 장치 자원은, 액티브 관리자의 책임 하에 있는 경우에, 또는 자원 관리자를 갖고 있고 자원 관리자가 도달 가능한 경우에, 도달 가능하다. 자원 관리자는, 예를 들어 긍정 응답 메시지(acknowledgement message)를 통해, 정의된 마감 시간이 경과하기 전에 액티브 관리자로부터의 요구에 응답하는 경우에만 도달 가능하다. 상기 도달 가능성 및 경로 유효성에 대한 정의는 네트워크 자원 및 경로 자원에도 또한 적용된다.
데드 록(dead lock)을 방지하기 위해, 요구자는 액션의 경로를 따라 모든 자원을 예약한다. 임의의 자원이 이용 가능하지 않은 경우, 예약은 실패된다. 일례로서, VCR로부터 TV 디스플레이로의 비디오를 스트리밍하도록 시도하기 전에, 애플리케이션은 먼저 VCR 튜너 및 TV 디스플레이를 예약한다. 이 두 가지를 예약할 수 없는 경우, 스트리밍은 개시되지 않는다. 도 3에 네트워크 서비스 앱스트랙션(abstraction)층(390, 391, 392), 슬레이브 네트워크 인터페이스(393). 네트워크 테이블(394), DHCP 클라이언트(395), 성능 익스포트(export) 모듈(396), 장치 성능 데이터베이스(397), 프리젠테이션(presentation) 익스포트 모듈(398), 장치 프리젠테이션 데이터베이스(399), 기술(description) 익스포트 모듈(381), 장치 테이블(345), 이벤트(event) 소스 모듈(382), 이벤트 기술 데이터베이스(383), 서비스 상태 테이블(384)이 또한 도시되어 있다. 참조 번호(120d)는 네트워크 또는 장치 단위로 도시되어 있고, 참조 번호(120b)는 서비스 단위로 도시되어 있다.
도 4는, 도 3의 예시적인 자원 관리자(320)가 사용하기에 적절한 예약 프로세스의 주요한 로직의 예시적인 블록도를 도시하고 있다. 요구자는 요구를 전송하며, 이 요구는 임의의 알려진 자원 관리자에 대한 "RESERVE" 메시지 또는 "RELEASE" 메시지일 수도 있다. 각각의 자원 관리자는 연속적인 루프를 실행하여, 참조 번호(410)에서 메시지를 수신하도록, 즉 경로에 따른 요구, 자원 예약 요구를 수신하길 대기한다.
(415)에서, 메시지가 RESERVE 요구인 경우, 관리자는 루프(420-435)를 통해, 그 책임 하에 경로에 따라 모든 자원을 예약하도록 시도한다. (425)에서, 수신 자원 관리자는 먼저 (420)에서의 관리자의 제어 내에서 각각의 자원에 대해, 예약되어야 할 자원을 발견하려 시도한다. 예약될 자원이 발견되고, 자원이 수신 자원 관리자의 책임 하에 있는 경우, 자원을 예약하도록 시도한다. 예약이 성공적인 경우, (430)에서, 예약 요구를 수정하여 이 자원이 예약되었음을 나타내고, 다음 예약될 자원을 발견하도록 진행한다. 프로세스(420-435)는 (435)에서, 다음 자원에 의해, 자원 관리자가 그 책임 하에 경로내의 모든 자원을 성공적으로 예약하거나, 또는 이 하나의 자원을 예약하는 것을 실패할 때까지 반복된다. (430)에서, 실패한 예약인 경우에, 자원 관리자는 (480)에서, FAILED 메시지를 요구자에 전송한다. 자원 관리자는 이러한 태스크에 대해 예약된 모든 자원을 해제하고, 모든 이전의 자원 관리자에 RELEASE 메시지를 전송하고, (485)에서, 이러한 경로에 대한 예약을 종료하고, (490)에서, 자원 관리 데이터베이스(325)를 갱신한다.
루프(420-435)를 통해, 자원 관리자가 그 책임 하에 모든 자원을 성공적으로 예약한 경우, (440)에서, 예약될 더 이상의 자원이 존재하는지, 즉, 경로의 종단을 체크할 것이다. 존재하지 않는 경우, (445)에서 자원 관리자는 SUCCESS 메시지를전송하며, (490)에서 그 대응하는 자원 관리 데이터베이스(325)를 갱신하고, 이러한 경로에 대한 예약을 종료한다. (440)에서, 경로 내에 더 이상의 예약될 자원이 존재하는 경우, 예약된 자원을 "예약"으로서만 표시하고, (450)에서 이 요구를 다음 자원 관리자에 전송하고, 다음 자원 관리자로부터 긍정 응답 메시지를 대기한다. (455)에서, 타임아웃 이전에 긍정 응답 메시지를 수신하지 않는 경우, (480)에서 FAILED 메시지를 요구자에 전송하며, 그 요구에 대해 예약된 모든 자원을 해제하고, RELEASE 메시지를 모든 이전의 자원 관리자로 전송하고, (490)에서 그 대응하는 자원 관리 데이터베이스(325)를 갱신하고, 이러한 경로에 대한 예약을 종료한다. (455)에서, 자원 관리자는 타임아웃 이전에 긍정 응답 메시지를 수신하는 경우, (490)에서 자원 관리자는 그 대응하는 자원 관리 데이터베이스(325)를 갱신하고, 루프는 (410)로 복귀하여, 각각의 후속 요구에 대하여 상기 프로세스를 반복한다.
(415)에서, 메시지가 RELEASE인 경우, 자원 관리자는 (460)에서 요구자가 리스트된 자원을 해제하도록 자격 부여받았는지 또는 허가되었는지 여부를 먼저 체크한다. 요구자가 다른 자원 관리자(320), 경로 관리자(330), 액션 관리자(310), 또는 자원의 소유자(자원이 예약되는 애플리케이션)인 경우, 요구자는 자원을 해제하도록 자격 부여된다. (460)에서, 요구자가 자원을 해제하도록 자격 부여되지 않은 경우, 요구는 무시된다. 선택 사양적으로, FAILED 메시지가 자격 부여되지 않은 요구자로 전송될 수 있다. (460)에서, 요구자가 자격 부여된 경우, (465)에서, 자원 관리자는 그 책임 하에 경로에 대해 예약된 자원을 해제하고, (490)에서, 그 대응하는 자원 관리 데이터베이스(325)를 갱신한다. 자원 관리자는 (410)으로 복귀하여 새로운 요구를 서비스한다.
부가적으로(도시되지 않음), 자원이 해제되는 것을 보증하기 위해, 요구자가 자원을 명시적으로 해제하지 않는다 해도, 자원 관리자(320)는 예약 기간의 만료 시에, 또는 곧이어, 모든 자원을 해제하도록 설정된다.
또한, 도 4의 상술한 예약 액티비티에 부가하여, 또는 이와 결합하여, 본 발명의 바람직한 실시예의 도 3의 자원 관리자(320)는 다음과 같은 기능을 또한 수행한다.
자원 관리자(320)는 테이블과 같은 인 코어 데이터 구조로서 바람직하게 구현되는 자원 관리 데이터베이스(325)를 생성하여 유지한다. 각각의 자원에 대해, 데이터베이스는 자원이 예약되었는지 여부, 자원의 소유자, 예약의 개시 및 종료 시간, 예약의 주기성, 자원 관리 관련 제어 기능에 관한 정보를 유지한다. 애플리케이션을 대신하여 UPnP 시스템 콤포넌트에 의해 예약이 행해진 경우, 콤포넌트에 관련된 정보가 또한 기록된다.
자원 관리자(320)가 RESERVE 요구를 수신하는 경우, 요구된 자원을 예약하려 시도하면서, 도 4의 흐름도에 기술된 바와 같이 경로 유효성을 체크하고 올 오어 넌 예약을 시행한다. 예약의 그 일부가 성공하는 경우, 자원 관리자(320)는 데이터베이스(325)에 예약을 기록한다. 자원이 자원 관리 제어 기능을 제공하는 경우, 자원 관리자는 XML/SOAP 메시지를 또한 형성하고 이것을 대응하는 서비스 제어 모듈(370)에 전송한다.
자원 관리자(320)는 자원의 도달 또는 발송에 관한 통지를 수신하기 위한 인터페이스를 또한 제공한다. 도달 통지를 수신하는 경우, 데이터베이스(325)에 엔트리를 생성하고, 자원의 기술을 페치하며, 자원에 대한 자원 관리 관련 제어 기능에 관한 통지를 추출하고, 데이터베이스(325)에 관한 정보를 입력한다. 자원 관리자(320)가 발송 통지(departure notification)를 수신하는 경우, 엔트리를 삭제하거나, 자원의 발송을 나타내도록 엔트리를 표시할 수 있다. 엔트리를 표시함으로써, 자원이 반환되는 경우 엔트리를 재설정하는데 요구되는 프로세싱이 불필요해진다.
또한, 자원 관리자(320)는 액션 관리자(310) 또는 경로 관리자(320)와 같은 UPnP 시스템 콤포넌트에 대한 인터페이스를 제공하여, HTTP 메시징을 거치지 않고 자원을 예약하거나 해제한다.
자원 관리자(320)는 행정(administration) 및 통지(notification) 기능을 또한 제공한다. 자원 관리자(320)는, 질의의 데이터베이스(325)로의 인터페이스를 제공하는데, 그 질의는, 예를 들어, 요구자가 특정 자원의 소유자인지 여부에 관한 것이다. 이것은 또한 이벤트 가입 모듈(event subscription module)(360)을 통해, 그 책임 하의 모든 자원에 대한 자원 관리에 관련되는 이벤트에 가입(subscribe)한다. 이벤트의 통지를 수신하는 경우, 자원 관리자(320)는 데이터베이스(325)를 갱신하고, 적절한 경우에, 소유자에게 통지한다.
경로 관리자 모듈(330)
경로 관리자(330)는 네트워크 자원 및 장치 접속 객체를 관리하는데 책임이 있다. 장치 접속 객체는, 예를 들어 IEC61883에서, 장치 플러그 및 서브 유닛 플러그를 포함한다. 이것은 경로를 따라 장치 자원을 접속하고, 네트워크 자원을 할당하여 소스-싱크간 셋업 및 QoS를 보증한다. 따라서, 본 발명의 바람직한 실시예에서, 애플리케이션은 필요로 하는 자원의 특성을 인지하지 않고도, A/V 스트림의 필요성 및 특성을 경로 관리자(330)에 대해 지정할 필요가 있을 뿐이다. 애플리케이션, 또는 액션 관리자(310)와 같은 UPnP 시스템 콤포넌트는 경로 셋업 요구를 송출할 수 있다. 이와 같이 함으로써, 애플리케이션 또는 콤포넌트는 요구자가 된다. 경로 셋업 요구는 셋업될 경로, 경로가 요구되는 개시 및 종료 시간, 스트림의 유형 및 특성, 스트림의 QoS 요건을 포함한다. 장치 자원 관리자(320)의 경우에서와 같이, 경로 관리자(330)는 올 오어 넌 경로 무결성을 보증하도록 구성된다. 임의의 접속이 행해질 수 없거나, 또는 임의의 네트워크 자원이 할당될 수 없는 경우, 경로에 관련된 모든 객체의 상태가 리세트(reset)되고 모든 장치 자원 및 네트워크 자원이 해제된다.
바람직한 실시예에서, 경로 관리자(330)는 도 5에 도시한 바와 같이 연속 루프를 실행한다. 루프의 로직은 도 4에 도시한 루프의 로직과 유사하기 때문에, 여기서는 두 로직에 공통하는 세부 사항은 반복되지 않는다. 요구자는 임의의 알려진 경로 관리자(330)에 요구를 전송한다. (515)에서, 요구가 SETUP인 경우, 수신 경로 관리자(330)는 루프(520-535)를 통해, 그 책임 하에 있는 경로 내의 모든 세그먼트를 셋업하려 시도한다. (520)에서, 이러한 관리자의 제어 내에서 각각의 네트워크 세그먼트에 대해 루프가 개시/지속된다. (535)에서, 이들 모든 세그먼트가 다음 세그먼트에 함께 성공적으로 세팅될 수 있는 경우, (550)에서, 경로 관리자는 그가 막 셋업한 세그먼트를 "세트"로서 표시하고, 다음의 미세팅된 세그먼트의 경로 관리자에 메시지를 전송하며, 다음 경로 관리자가 응답하길 대기한다. (555)에서, 타임아웃 이전에 응답이 수신되지 않은 경우, (580)에서, 경로 관리자는 요구자에 실패 메시지를 전송하고, (585)에서, 그 책임 하에 있는 모든 네트워크 세그먼트를 테어 다운하며, 이 경로에 대한 세그먼트를 셋업한 이전의 모든 경로 관리자에 TEARDOWN 메시지를 전송한다. (510)로 루프가 복귀하기 이전에 (595)에서 대응하는 경로 관리 데이터베이스를 갱신한다. 경로를 테어 다운하는 것은 경로 내의 모든 장치 관련 객체를 리세팅하고 경로에 대한 모든 네트워크 자원을 해제하는 것을 포함한다. 이 프로세스는 실패 없이 전체 경로가 세팅될 때까지 계속된다. (540)에서 그 자신의 성공적인 셋업 이후에 경로의 종단을 검출하는 경로 관리자(330)는, (545)에서, 성공 응답을 요구자로 되전송하고, (595)에서 대응하는 경로 관리 데이터베이스를 갱신하며, 새로운 요구를 제공하도록, 즉, 경로에 따른 요구를 수신하도록 (510)로 복귀한다.
(525)에서, 프로세스에서, 경로 관리자(330)가 그 책임 하에 모든 세그먼트를 세팅할 수 없는 경우(이는 (530)에서 체크됨), (580)에서 실패 통지를 요구자에 전송하고, (585)에서, 그 책임 하에 모든 네트워크 자원을 해제하고, 이 경로에 대한 세그먼트를 셋업한 이전의 모든 경로 관리자에 TEARDOWN 메시지를 전송한다.그것은 또한 (510)에서 상기 해제 요구를 통해 피어 자원 관리자(320)에게 테어 다운을 통지하고, (595)에서 대응하는 경로 관리 데이터베이스를 갱신하며, 루프의 개시로 복귀하여 셋업 프로세스가 종료하여 새로운 요구를 서비스한다. 경로 관리자가 요구의 네트워크 자원 요건의 하한(lower limit)을 충족할 수 없는 경우, 즉, 이용 가능한 전체 대역폭이 요구된 최소 대역폭 미만인 경우, 할당의 실패가 발생할 수 있다.
(540)에서 경로의 종단이 존재하지 않는 경우, (550)에서 요구는 다음 관리자로 전송된다. (555)에서 요구가 긍정 응답되지 않는 경우 실패 메시지가 전송된다. 그렇지 않은 경우 대응하는 경로 관리 데이터베이스가 갱신된다.
(515)에서, 요구가 TEARDOWN 요구인 경우, 경로 관리자(330)는 먼저 요구자가 경로를 테어 다운하도록 자격 부여되었는지 여부를 체크한다. 요구자가 자원 관리자(320), 다른 경로 관리자(330), 액션 관리자(310), 또는 경로의 소유자인 경우 경로를 테어 다운하도록 자격 부여된다. 경로의 소유자는 요구시에, 요구 내에 표시된 기간 동안, 경로 내의 모든 자원을 소유한다. (560)에서 체크되는 바와 같이, 요구자가 자격 부여되는 경우, 루프가 (510)로 복귀하기 전에, (565)에서, 경로 관리자(330)는 그 책임 하에 세그먼트를 테어 다운하고, (570)에서, 이러한 경로에 대해 이미 예약된 자원을 해제하도록 그 피어 자원 관리자에게 통지하며, (595)에서, 대응하는 경로 관리 데이터베이스를 갱신한다.
상술한 경로 생성 프로세서에 부가하여 또는 이에 결합하여, 본 발명의 바람직한 실시예의 경로 관리자(330)는 다음과 같은 기능을 수행한다.
경로 관리자(330)는 경로 데이터베이스(335)를 생성하여 유지한다. 경로 데이터베이스(335)는 경로를 셋업하고, QoS 요건을 충족하는데 필요한 정보를 포함한다. 각각의 경로에 대해, 경로 관리자(330)는 자원의 상태 및 성능, 할당된 네트워크 자원, 소유자 요구자, 소유자 액션 등을 기록한다.
SETUP 요구의 수신시에, 경로 관리자(330)는 앞서 상세하게 기술한 바와 같이, 그 책임 하에 경로의 세그먼트를 셋업하고 경로 셋업 무결성을 보증하려 시도한다. 경로 관리자(330)는 셋업의 그 일부에서 성공적인 경우, 데이터베이스(335)내에 경로에 관한 정보를 기록한다. 특정 네트워크의 경로 관리자(330)는 이러한 네트워크 내에서 경로를 셋업하는 방법을 이해한다. 예를 들어, 1394 네트워크의 경로 관리자는 "플러그"를 사용하고, 이들 플러그를 통해 장치 및/또는 서브 유닛의 접속과 관련하여, IEC61883과 같은 1394 표준안 및 프로토콜과 연관된 규칙을 따를 것이다.
1394 네트워크와 같은 QoS를 보증할 수 있는 네트워크의 경우, 경로 관리자(330)는 요구자로부터의 QoS 요건을 충족하도록 네트워크 자원을 할당한다. IP/이더넨트처럼 QoS 요건을 보증할 수 없는 네트워크의 경우, 경로 관리자(330)는 이용 가능한 최상의 설비를 할당한다. 예를 들어, 경로 관리자(330)는 이더네트 네트워크에서 DifServe와 같은 설비를 사용하려 시도한다.
경로 관리자(330)는 자원 관리자(320)와 같이, UPnP 시스템 콤포넌트에 인터페이스를 제공하여, 해제된 자원의 리스트를 전달한다. 경로 관리자(330)가 이러한 리스트를 수신하는 경우, 이들 자원을 포함하는 경로를 테어 다운하여 데이터베이스(335)를 갱신한다.
경로 관리자(330)는 자원의 도달 또는 발송에 관한 통지를 수신하는 인터페이스를 제공한다. 도달 통지를 수신하는 경우, 경로 관리자(330)는 데이터베이스 내에 엔트리를 생성하고, 장치 자원의 기술을 페치하며, 경로 관리 관련 제어 기능에 관한 정보를 추출하고, 이 정보를 데이터베이스(335)에 입력한다. 발송 통지를 수신하는 경우, 경로 관리자(330)는 엔트리를 삭제하거나, 엔트리를 표시하여 자원의 발송을 표시한다.
경로 관리자(330)는 경로 데이터베이스(335)를 질의하기 위한 인터페이스를 또한 제공한다.
액션 관리자 모듈(310)
액션 관리자 모듈(310)은 애플리케이션이 액션을 스케줄링할 수 있게 하여, 액션 관리자(310)가 액션 요구를 보호하도록 한다. 액션 관리자(310)는 자원 관리, 경로 셋업, 및 액션 관리의 세부 사항으로부터 애플리케이션을 또한 자유롭게 한다. 바람직한 실시예에서, 스케줄링 요구는 경로, 액션의 개시 및 종료 시간, A/V 스트림의 유형, 특성, 및 스트림의 QoS 요건을 포함한다.
액션 관리자(310)는 다음과 같은 기능을 수행한다.
액션 관리자(310)는 액션 데이터베이스(315)를 생성하여 유지한다. 데이터베이스(315)는 액션을 관리하는 방법에 관한 정보를 기록한다. 이 정보는 경로, 개시 및 종료 시간, 액션을 스케줄링한 애플리케이션, A/V 스트림의 유형, 특성,및 스트림의 QoS 요건을 포함한다. 효율을 위해, 데이터베이스(315)는 바람직하게 액션을 시간 큐로 구성한다.
액션 관리자(310)가 SCHEDULE 요구를 수신하는 경우, RESERVE 요구를 경로 내의 자원의 자원 관리자(320)에 전송한다. 성공 응답을 수신할 때, 액션 개시 시간이 "현재"인 경우, 액션 관리자(310)는 경로 내의 경로 관리자에 SETUP 요구를 전송한다. 성공 응답을 수신하는 경우, 요구된 액션을 개시한다. 액션 개시 시간이 차후인 경우에, 액션 관리자(310)는 데이터베이스(315)에 액션을 입력하여 실행 시간이 도달하길 대기한다. 자원 관리자 및 경로 관리자는 실패시에, 모든 장치 및 네트워크 자원을 적절하게 해제하므로, 액션 관리자는 해제를 개시할 필요는 없다.
액션 관리자(310)는 액션이 스케줄링되기 전의 액션에 의해 요구된 경로를 셋업하도록 그 자신 충분한 길이의 시간을 제공한다. 데이터베이스(315)의 주기적인 체크에 의해 표시되는 바와 같이, 또는 타이머 이벤트에 대한 응답으로서, 경로를 셋업할 시간인 경우, 액션 관리자(310)는 요구 애플리케이션이 이 시점에서 요구된 모든 자원을 소유하는지 여부를 체크한다. 예를 들어, 선점(preemption)을 통해, 소유자(자원의 예약자)가 변경된 경우에, 실행은 실패한다. 애플리케이션이 요구된 모든 자원을 여전히 소유하는 경우, 액션 관리자(310)는 경로 관리자(330)에게 액션의 경로를 셋업하도록 지시한다. 경로가 성공적으로 세팅된 이후에, 경로 관리자(330)는 액션을 개시한다. 경로 세팅이 실패하는 경우, 실행은 실패한다. 실패의 경우 경로 관리자(330)는 자원 관리자(320)에 통지하므로, 액션 관리자(310)는 그와 같이 행할 필요는 없다. 액션 관리자(310)는 애플리케이션이 여전히 존재하는 경우, 애플리케이션에게 실행 결과를 통지하거나, 또는 차후의 조사를 위해 결과를 로깅한다.
선택 사양적으로, 애플리케이션이 스케줄링된 액션을 선점할 수도 있는 선점이 구현될 수도 있다. 애플리케이션에 의해 선택된 경우, 액션 관리자(310)는 액션을 스케줄링한 애플리케이션을 대신하여(on behalf of) 선점 협상(negotiation)에 참여한다. 협상 결과 어느 자원을 포기하여야 하는 경우, 액션 관리자는, 애플리케이션이 여전히 존재하는 경우에, 애플리케이션에게 통지하거나, 차후 조사를 위해 그 케이스(case)를 로깅한다. 한편, 경로 셋업을 개시하기 이전에 선점이 발생하는 경우, 액션 관리자(310)는 선점된 액션을 위해 자원을 예약한 모든 자원 관리자(320)에 RELEASE 요구를 전송한다. 그렇지 않은 경우, 액션 관리자(310)는 경로에 대해 셋업된 모든 경로 관리자에 TEAR DOWN 메시지를 전송한다. 경로 관리자는 이에 이어서 이들의 대응하는 피어 자원 관리자에게 통지하여 예약된 자원을 해제한다. 외부 이벤트에 의해 자원이 선점되는 경우, 예를 들어, 예약시의 채널과 상이한 채널을 수신하도록 튜너가 수동으로 변경되는 경우, 대응하는 자원 관리자는 이벤트에 관한 통지를 수신한다. 자원 관리자는 자원의 소유자에게 이벤트를 통지한다.
바람직한 실시예에서, 액션 관리자(310)는 두 가지 스레드(thread), 즉, 제조자 스레드와 소비자 스레드로 구현된다. 제조자 스레드는 SCHEDULE 및 UNSCHEDULE 요구에 응답한다. SCHEDULE 요구의 수신시, 액션 관리자(310)의 제조자 스레드는 요구된 자원을 예약하려 시도한다. 현 시점에서 액션이 실행되어야 하고, 모든 자원이 성공적으로 예약된 경우, 제조자 스레드는 경로를 셋업하고, 액션을 즉시 스케줄링하도록 또한 개시한다. 요구가 차후의 것인 경우, 성공적인 예약시에, 제조자 스레드는 그 액티비티를 데이터베이스(315)에 입력한다. 액션을 위한 경로 셋업의 스케줄링된 시간이 도달된 경우, 소비자 스레드는 이 시점에서 데이터베이스(315)로부터 실행되어야 할 모든 액티비티를 인출하여, 이들을 실행한다.
장치 접속/접속 해제 처리기(380)의 바람직한 실시예에서, 처리기(380)는 기술 데이터베이스(305) 내의 장치 및/또는 서비스의 기술부에 엔트리를 삽입한다. 이러한 엔트리는 바람직하게, 장치/서비스에 대해 책임이 있는 자원 관리자(320), 경로 관리자(320), 액션 관리자(310)의 URL을 나타낸다.
장치 관리자(340)
상기와 같이, 예약된 경로에 대응하는 정보 전송이 개시하는 경우, 장치 관리자(340)는 다수의 애플리케이션이 동일한 자원의 상태를 변경하도록 시도하는 경우에 발생될 수도 있는 레이스 상태를 방지하기 위해, 상태 변경 요구를 실행할 권리에 관한 규칙을 시행(enforce)하도록 구성된다. 실행할 권리는 두 개의 단계, 즉 예약 및 게이트 유지 단계로 시행(enforce)된다.
예약 : 애플리케이션은 커맨드 실행 시간 동안 자원의 소유권을 이미 획득한 경우, 또한 그러한 경우에만, 상태 변경 커맨드를 실행할 권리를 갖는다. 자원의소유자가 되기 위해, 애플리케이션은 자원 관리자(320)를 통해 자원을 성공적으로 예약해야 한다. 액션 관리자(310)가 스케줄 커맨드를 수신한 후에, 요구 애플리케이션이 액션 실행시에 액션의 경로에 따라 자원을 소유하는 것을 보증하도록 액션에 의해 요구된 자원을 먼저 예약할 것이다.
게이트 유지(Gate Keeping) : 자원을 액세스하는 커맨드는 장치 관리자 모듈(340)을 통해 실행된다. 장치 관리자(340)가 상태 변경 커맨드를 자원에 전달하기 전에, 장치 관리자(340)는 요구자가 그와 같이 행할 권리를 갖는지 여부를 체크한다. 각각의 장치 및 이에 따른 모든 연관된 장치 자원 및 네트워크 자원은, 그 장치 자원, 네트워크 자원, 및 네트워크 접속 객체를 관리할 책임이 있는 하나의 자원 관리자 및 하나의 경로 관리자를 갖는다. 바람직한 실시예에서, 책임 있는 자원 관리자만이 임의의 장치 자원을 예약할 권리를 갖고, 책임 있는 경로 관리자만이 네트워크 자원을 할당하고 접속 객체를 조작할 권리를 갖는다. 또한, 소유자 애플리케이션 또는 애플리케이션을 나타내는 액션 관리자만이 액션을 실행할 수 있다. 이로 인해 장치가 그 자신의 예약 성능을 제공하지 않는다 하더라도, 모든 자원을 예약하지 않은 애플리케이션이 액션을 실행하도록 시도하는 경우의 실패 응답을 얻도록 초래될 것이다. 바람직한 실시예에서, 임의의 요구자는 자원이 예약되지 않는 기간 동안 장치의 상태를 변경할 권리를 갖는다. 그러나, 결과적인 상태는, 예약된 자원을 위한 사전 스케줄링된 상태 변경을 위한 시간이 도달될 때 요구된 바와 같이, 선점될 것이다.
바람직한 실시예에서, 장치 관리자(340)는 다음과 같은 기능을 제공한다.
장치 관리자(340)는 장치의 도달/발송으로 인한 서비스에 대한 스레드를 생성/삭제하고, 자원 관리자(320) 및 변경에 관한 경로 관리자(330)에게 통지한다.
장치 관리자(340)가 타겟 장치의 상태를 변경할 제어 커맨드를 수신하는 경우, 장치 관리자(340)는 이와 같이 행할 권리를 갖는지 여부를 먼저 체크한다. 이것은 요구자가 자격 부여된 경우에만 서비스에 대해 커맨드를 전송할 것이다. 바람직한 실시예에서, 장치 관리자(340)는 장치 또는 네트워크 자원의 예약 상태를 먼저 질의한다. 요구가 충족될 수 없는 경우, 장치 관리자(340)는 "실패" 응답을 요구자에 전송한다. 상태가 변경 가능하지 않은 경우, 또는 관련 상태 값이 요구된 값인 경우, 예를 들어, 자원이 이미 예약된 상태에 있거나, 요구량이 공급량을 초과하는 경우, 예를 들어, 불충분한 대역폭이 남아 있는 경우에, 요구가 실패한다. 그렇지 않은 경우, 장치 관리자(340)는 상태의 값을 요구된 값으로 세팅하고, "성공" 응답을 요구자에 전송한다.
전술한 내용은 본 발명의 원리를 단지 예시한다. 본 명세서에서 명시적으로 기술되거나, 도시되지 않았다 하더라도, 당업자라면 본 발명의 원리를 구체화하고 첨부하는 청구 범위의 정신 및 범주 내에서 그에 따른 각종 변형을 고안할 수 있음을 이해하여야 한다.

Claims (20)

  1. UPnP 네트워크(160)를 통해 시간 민감 정보의 통신을 촉진시키는 시스템(100)에 있어서,
    상기 시간 민감 정보의 통신을 개시하기 전에, 상기 시간 민감 정보의 소스(source) 및 상기 시간 민감 정보의 싱크(sink) 사이의 경로에 따라 다수의 예약된 자원을 형성하기 위해, 다수의 자원을 예약하도록 구성되는 관리 시스템(120)
    을 포함하는 시간 민감 정보의 통신 시스템(100).
  2. 제 1 항에 있어서,
    상기 소스 및 상기 싱크 사이의 경로는 다수의 네트워크(160, 170, 180)를 따라 확장되고, 상기 소스는 상기 다수의 네트워크(160, 170, 180)의 제 1 네트워크 상에 존재하며, 상기 싱크는 상기 다수의 네트워크(160, 170, 180)의 제 2 네트워크 상에 존재하는 시스템(100).
  3. 제 2 항에 있어서,
    상기 관리 시스템(120)은 다수의 자원 관리 모듈(320)을 포함하고,
    각각의 자원 관리 모듈(320)은 상기 다수의 네트워크(160, 170, 180)의 대응하는 네트워크와 연관되고, 대응하는 네트워크 상의 상기 다수의 예약된 자원의 하나 이상의 장치 자원을 예약하도록 구성되며,
    상기 제 1 네트워크와 연관되는 상기 자원 관리 모듈(320)은 상기 다수의 네트워크(160, 170, 180)의 다른 네트워크 상에서 상기 다수의 예약된 자원의 하나 이상의 장치 자원을 예약하기 위해 예약 요구를 다른 자원 관리 모듈(320)에 전송하도록 구성되는 시스템(100).
  4. 제 3 항에 있어서,
    각각의 자원 관리 모듈(320)은 UPnP 프레임워크(framework)의 통합적인 부분으로서 구성되고, HTTP 메시지를 통해 애플리케이션과 통신하는 시스템(100).
  5. 제 3 항에 있어서,
    다른 네트워크내의 다른 자원 관리 모듈(320)은, 후속 자원 관리자가 상기 제 1 네트워크로부터 상기 제 2 네트워크로의 경로를 따라, 다른 자원 관리 모듈(320)에 의해 도달 가능한 경우에만, 상기 하나 이상의 장치 자원을 예약하도록 구성되는 시스템(100).
  6. 제 3 항에 있어서,
    각각의 자원 관리 모듈(320)은 요구된 예약이 실행될 수 없는 경우에, 경로를 따라 해제 메시지(495)를 이전의 자원 관리 모듈(320)에 전송하도록 구성되고,
    상기 이전의 자원 관리 모듈(320)은 해제 메시지의 수신시에 상기 다수의 예약된 자원의 연관된 장치 자원을 해제하는(465) 시스템(100).
  7. 제 3 항에 있어서,
    상기 관리 시스템(120)은 다수의 경로 관리 모듈(330)을 더 포함하며,
    각각의 경로 관리 모듈(330)은 상기 다수의 네트워크(160, 170, 180)의 대응하는 네트워크와 연관되고, 대응하는 네트워크 상에서 하나 이상의 네트워크 자원을 예약하도록 구성되며,
    상기 제 1 네트워크와 연관되는 상기 경로 관리 모듈(330)은 상기 다수의 네트워크(160, 170, 180)의 다른 네트워크 상에서 하나 이상의 네트워크 자원을 예약하기 위해 예약 요구를 다른 경로 관리 모듈(330)에 전송하도록 구성되고,
    각각의 자원 관리 모듈(320) 및 경로 관리 모듈(330)은 UPnP 프레임워크의 통합적인 부분으로서 구성되고, HTTP 메시지를 통해 애플리케이션과 통신하는 시스템(100).
  8. 제 2 항에 있어서,
    상기 관리 시스템(120)은 다수의 경로 관리 모듈(330)을 포함하며,
    각각의 경로 관리 모듈(330)은 상기 다수의 네트워크(160, 170, 180)의 대응하는 네트워크와 연관되고, 대응하는 네트워크 상에서 하나 이상의 네트워크 자원을 예약하도록 구성되며,
    상기 제 1 네트워크와 연관되는 상기 경로 관리 모듈(330)은 상기 다수의 네트워크(160, 170, 180)의 다른 네트워크 상에서 하나 이상의 네트워크 자원을 예약하기 위해 예약 요구를 다른 경로 관리 모듈(330)에 전송하도록 구성되는 시스템(100).
  9. 제 8 항에 있어서,
    상기 경로 관리 모듈(330)의 적어도 하나는 규정된 서비스 품질(QoS)을 갖는 네트워크 자원을 예약하도록 구성되는 시스템(100).
  10. 제 1 항에 있어서,
    다수의 예약된 자원을 예약한 요구자에 의한 것을 제외하고, 상태 변경 커맨드가 상기 다수의 예약된 자원의 장치 자원으로 전송되는 것을 방지하도록 구성되는 장치 관리자 모듈(340)을 더 포함하는 시스템(100).
  11. 제 1 항에 있어서,
    애플리케이션 프로그램(161)으로부터의 스케줄 요구에 근거하여, 예약 요구를 상기 관리 시스템(120)으로 전송하고, 상기 스케줄 요구에 포함되는 스케줄링된 시간에 대응하는 시간에서 경로 셋업 요구를 상기 관리 시스템(120)으로 전송하도록 구성되는 액션 관리자 모듈(310)을 더 포함하는 시스템(100).
  12. UPnP 네트워크(160)를 통해 시간 민감 정보의 통신을 촉진시키는 방법에 있어서,
    상기 시간 민감 정보의 소스 및 상기 시간 민감 정보의 싱크 사이의 경로를 정의하는 단계와,
    상기 경로를 따라 다수의 예약된 자원을 형성하도록 다수의 자원을 예약하는단계(420-450)
    를 포함하는 시간 민감 정보의 통신 방법.
  13. 제 12 항에 있어서,
    상기 소스 및 상기 싱크 사이의 경로는 다수의 네트워크(160, 170, 180)를 따라 확장되고, 상기 소스는 상기 다수의 네트워크(160, 170, 180)의 제 1 네트워크 상에 존재하며, 상기 싱크는 상기 다수의 네트워크(160, 170, 180)의 제 2 네트워크 상에 존재하는 방법.
  14. 제 13 항에 있어서,
    상기 다수의 자원을 예약하는 단계(420-450)는,
    상기 경로를 따라 네트워크와 연관되는 상기 다수의 자원을 예약하는 단계(420-435)와,
    상기 경로를 따라 예약 요구를 다른 네트워크로 전송하는 단계(450)와,
    상기 다른 네트워크와 연관된 자원을 예약하는 단계와,
    상기 다수의 자원의 각각의 자원이 상기 경로를 따라 예약될 때까지 상기 경로를 따라 상기 예약 요구를 각각의 다른 네트워크로 전송하고 각각의 다른 네트워크와 연관된 자원을 예약하는 것을 반복하는 단계(440)
    를 포함하는 방법.
  15. 제 14 항에 있어서,
    상기 예약 요구의 수신이 상기 경로를 따라 후속의 다른 네트워크에 의해 긍정 응답되는 경우에만(455), 각각의 다른 네트워크에서 자원이 예약되는 방법.
  16. 제 14 항에 있어서,
    요구된 예약이 실행될 수 없는 경우에(430) 상기 경로를 따라 이전의 네트워크에 해제 메시지를 전송하는 단계(495)와,
    상기 해제 메시지의 수신시에(410) 상기 이전의 네트워크에서 상기 다수의 예약된 자원의 결합된 장치 자원을 해제하는 단계(465)
    를 더 포함하는 방법.
  17. 제 13 항에 있어서,
    상기 제 1 네트워크 상에서 하나 이상의 네트워크 자원을 예약하는 단계와,
    예약 요구를 다른 네트워크로 전송하는 단계와,
    상기 다수의 네트워크(160, 170, 180)의 다른 네트워크 상에서 하나 이상의 네트워크 자원을 예약하는 단계
    를 더 포함하는 방법.
  18. 제 17 항에 있어서,
    상기 예약 요구는 규정된 서비스 품질(QoS)을 포함하는 방법.
  19. 제 12 항에 있어서,
    상기 다수의 예약된 자원을 예약한 요구자에 의한 것을 제외하고, 상태 변경 커맨드가 상기 다수의 예약된 자원의 장치 자원으로 전송되는 것을 방지하는 단계를 더 포함하는 방법.
  20. 제 12 항에 있어서,
    애플리케이션 프로그램으로부터의 스케줄 요구에 근거하여, 예약 요구를 관리 시스템(120)으로 전송하는 단계와,
    상기 스케줄 요구에 포함되는 스케줄링된 시간에 대응하는 시간에서 경로 셋업 요구를 상기 관리 시스템(120)으로 전송하는 단계를 더 포함하는 방법.
KR10-2003-7003032A 2001-06-29 2002-06-20 시간 민감 정보의 통신 시스템 KR20040014993A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/895,964 US20030005130A1 (en) 2001-06-29 2001-06-29 Audio-video management in UPnP
US09/895,964 2001-06-29
PCT/IB2002/002509 WO2003003658A1 (en) 2001-06-29 2002-06-20 AUDIO-VIDEO MANAGEMENT IN UPnP

Publications (1)

Publication Number Publication Date
KR20040014993A true KR20040014993A (ko) 2004-02-18

Family

ID=25405370

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-7003032A KR20040014993A (ko) 2001-06-29 2002-06-20 시간 민감 정보의 통신 시스템

Country Status (6)

Country Link
US (1) US20030005130A1 (ko)
EP (1) EP1405462A1 (ko)
JP (1) JP2004531180A (ko)
KR (1) KR20040014993A (ko)
CN (1) CN1520659A (ko)
WO (1) WO2003003658A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101181100B1 (ko) * 2006-11-13 2012-09-07 삼성전자주식회사 확장된 avb 예약 프로토콜

Families Citing this family (100)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7305104B2 (en) * 2000-04-21 2007-12-04 Digimarc Corporation Authentication of identification documents using digital watermarks
JP2002082994A (ja) * 2000-06-28 2002-03-22 Fujitsu Ltd インターネット・データベース
GB0129174D0 (en) * 2001-12-06 2002-01-23 Koninl Philips Electronics Nv Havi-upnp bridging
GB0129177D0 (en) * 2001-12-06 2002-01-23 Koninl Philips Electronics Nv Havi-upnp bridging
TWI318831B (en) * 2002-09-27 2009-12-21 Panasonic Corp Resource management system
US8356067B2 (en) * 2002-10-24 2013-01-15 Intel Corporation Servicing device aggregates
DE10250102A1 (de) * 2002-10-28 2004-07-15 Deutsche Thomson-Brandt Gmbh Verfahren zur Verwaltung von eingerichteten logischen Verbindungen in einem Netzwerk verteilter Stationen sowie Netzwerkstation
DE10302477A1 (de) * 2003-01-23 2005-02-24 Deutsche Thomson-Brandt Gmbh Verfahren zur Verfügbarmachung eines Eingabeparameters einer Netzwerkstation eines Netzwerks eines ersten Typs in einem Netzwerk eines zweiten Typs sowie Verbindungseinheit zur Verbindung der Netzwerke des ersten und zweiten Typs
WO2004082210A2 (en) * 2003-03-13 2004-09-23 Koninklijke Philips Electronics N.V. A method of transferring a data file between stations in a network
US6947409B2 (en) * 2003-03-17 2005-09-20 Sony Corporation Bandwidth management of virtual networks on a shared network
CN100339851C (zh) * 2003-03-31 2007-09-26 联想(北京)有限公司 实现远程电子相册的系统及方法
US7739385B1 (en) * 2003-06-16 2010-06-15 Cisco Technology, Inc. Explicit locking of resources in devices accessible on a network
FR2856874B1 (fr) * 2003-06-24 2005-09-23 Canon Europa Nv Procede et systeme de reservation d'au moins une ressource d'un appel controlable par un controleur au sein d'un reseau, programme d'ordinateur correspondant
FR2857807B1 (fr) * 2003-07-18 2005-12-02 Cit Alcatel Procede de transaction pour un approvisionnement de regles dans un reseau gere a base de regles
EP1526714A1 (en) * 2003-08-06 2005-04-27 Matsuhita Electric Industrial Co., Ltd. Information processing apparatus
US7587530B2 (en) * 2003-08-20 2009-09-08 Hewlett-Packard Development Company, L.P. Method and apparatus for managing device reservation
KR100608590B1 (ko) * 2003-09-16 2006-08-03 삼성전자주식회사 서비스 품질에 따른 서비스 지원이 가능한 네트워크 장치,이를 이용한 네트워크 시스템 및 그 방법
KR100949020B1 (ko) 2003-09-22 2010-03-23 엘지전자 주식회사 멀티캐스트 스트리밍 서비스 방법 및 시스템
US7574514B2 (en) * 2003-09-30 2009-08-11 Sharp Laboratories Of America, Inc. Systems and methods for identifying original streams of media content
KR100940814B1 (ko) * 2003-10-11 2010-02-05 엘지전자 주식회사 네트워크 자동 설정 방법
JP2005134975A (ja) 2003-10-28 2005-05-26 Sony Corp 情報配信方法、情報配信システムおよび情報配信装置
US8205235B2 (en) 2003-11-14 2012-06-19 Sharp Laboratories Of America, Inc. Systems and methods for representing a tuner device in a media server content directory service
CN1311666C (zh) * 2003-12-01 2007-04-18 海信集团有限公司 实现基于upnp协议无线网络路由机制的方法
KR100562907B1 (ko) * 2003-12-18 2006-03-21 삼성전자주식회사 미디어 컨텐츠의 통합 관리 장치 및 그 방법
US7668939B2 (en) 2003-12-19 2010-02-23 Microsoft Corporation Routing of resource information in a network
US7647385B2 (en) 2003-12-19 2010-01-12 Microsoft Corporation Techniques for limiting network access
US20050149215A1 (en) * 2004-01-06 2005-07-07 Sachin Deshpande Universal plug and play remote audio mixer
US7877468B2 (en) * 2004-01-23 2011-01-25 Concurrent Computer Corporation Systems and methods for vertically integrated data distribution and access management
EP2341432A1 (en) 2004-03-13 2011-07-06 Adaptive Computing Enterprises, Inc. System and method of co-allocating a reservation spanning different compute resources types
US8782654B2 (en) 2004-03-13 2014-07-15 Adaptive Computing Enterprises, Inc. Co-allocating a reservation spanning different compute resources types
US7890629B2 (en) * 2004-03-13 2011-02-15 Adaptive Computing Enterprises, Inc. System and method of providing reservation masks within a compute environment
WO2005089241A2 (en) 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method for providing object triggers
CA2559603A1 (en) 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
WO2005094075A2 (en) * 2004-03-19 2005-10-06 Ucentric Holdings Inc. Centralized resource management and un-managed device support
US7735085B2 (en) * 2004-05-26 2010-06-08 Qualcomm Incorporated System for application priority based on device operating mode
US20070266388A1 (en) 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
US7614075B2 (en) * 2004-08-13 2009-11-03 Microsoft Corporation Dynamically generating video streams for user interfaces
US8176490B1 (en) 2004-08-20 2012-05-08 Adaptive Computing Enterprises, Inc. System and method of interfacing a workload manager and scheduler with an identity manager
DE102004043969A1 (de) 2004-09-11 2006-03-16 Deutsche Thomson-Brandt Gmbh Netzwerkverbindungsschalteinheit
US7747733B2 (en) 2004-10-25 2010-06-29 Electro Industries/Gauge Tech Power meter having multiple ethernet ports
CA2586763C (en) 2004-11-08 2013-12-17 Cluster Resources, Inc. System and method of providing system jobs within a compute environment
US20060195618A1 (en) * 2005-02-25 2006-08-31 International Business Machines Corporation Data processing system, method, and computer program product for creation and initialization of a virtual adapter on a physical adapter that supports virtual adapter level virtualization
US7475166B2 (en) * 2005-02-28 2009-01-06 International Business Machines Corporation Method and system for fully trusted adapter validation of addresses referenced in a virtual host transfer request
US7996455B2 (en) 2005-06-17 2011-08-09 Adaptive Computing Enterprises, Inc. System and method for providing dynamic roll-back reservations in time
US8863143B2 (en) 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
EP1872249B1 (en) 2005-04-07 2016-12-07 Adaptive Computing Enterprises, Inc. On-demand access to compute resources
CA2605710A1 (en) * 2005-05-04 2006-11-09 Operax Ab A method, system and bandwidt manager for preventing overbooking of resources in a data network
US7636302B2 (en) 2005-05-20 2009-12-22 Cisco Technology, Inc. Avoiding unnecessary RSVP-based preemptions
US20070027808A1 (en) * 2005-07-29 2007-02-01 Microsoft Corporation Strategies for queuing events for subsequent processing
US8705550B2 (en) * 2005-08-08 2014-04-22 Qualcomm Incorporated Device interface architecture and protocol
WO2007029337A1 (ja) * 2005-09-09 2007-03-15 Fujitsu Limited データ損失を低減するアドホック系ネットワーク装置
US20070168507A1 (en) * 2005-11-15 2007-07-19 Microsoft Corporation Resource arbitration via persistent reservation
KR100713975B1 (ko) 2005-11-17 2007-05-02 엘지전자 주식회사 홈네트워크에서의 컨텐츠 예약 재생 방법
CN1997014A (zh) * 2006-01-05 2007-07-11 三星电子株式会社 适应于动态网络改变的流服务提供方法
KR100750160B1 (ko) * 2006-01-25 2007-08-17 삼성전자주식회사 UPnP 상에서 디바이스의 기능을 예약하는 방법 및 장치
CN100396010C (zh) * 2006-02-14 2008-06-18 华为技术有限公司 一种确定QoS策略的方法
US20070220563A1 (en) * 2006-03-02 2007-09-20 Hong Kong Applied Science and Technology Research Institute Company Limited Method and apparatus for media sharing
US20070234385A1 (en) * 2006-03-31 2007-10-04 Rajendra Bopardikar Cross-layer video quality manager
US8117246B2 (en) * 2006-04-17 2012-02-14 Microsoft Corporation Registering, transfering, and acting on event metadata
EP1855477A1 (en) * 2006-05-12 2007-11-14 Tellink Comm. Ltd. Audio/video signal-sharing device
WO2007136194A1 (en) * 2006-05-19 2007-11-29 Lg Electronics Inc. Method and apparatus for supporting multicast of media data in a network
US8027353B2 (en) * 2006-06-02 2011-09-27 Telefonaktiebolaget L M Ericsson (Publ) IMS service proxy in HIGA
FR2901943B1 (fr) * 2006-06-06 2008-12-12 Canon Kk Procede de reservation de ressource lors de la transmission d'un contenu dans un reseau de communication, produit programme d'ordinateur, moyen de stockage et dispositif correspondants
US7639619B2 (en) * 2006-06-07 2009-12-29 Sharp Laboratories Of America, Inc. System and method for quality of service (QoS) setup of a network segment having an intermediate device
CN101114933A (zh) * 2006-07-26 2008-01-30 华为技术有限公司 对能力管理对象维护、对能力管理的方法、系统及终端
FR2906666A1 (fr) * 2006-10-03 2008-04-04 Canon Kk Procede de reservation de ressource dans un reseau local comprenant une pluralite de sous-reseaux, produit programme d'ordinateur, moyen de stockage et dispositif correspondants.
KR100832542B1 (ko) * 2006-12-08 2008-05-27 한국전자통신연구원 UPnP QoS 네트워크 시스템 및 이의 경로 및 자원예약 방법
CN101632268B (zh) * 2007-02-06 2014-12-03 熵敏通讯股份有限公司 网络中的参数化服务质量架构
JP5168699B2 (ja) 2007-02-06 2013-03-21 エントロピック・コミュニケーションズ・インコーポレイテッド ネットワークにおけるパラメータ化サービス品質アーキテクチャ
EP2458801A1 (en) * 2007-02-14 2012-05-30 Entropic Communications Inc. Parameterized quality of service in a network
US8041773B2 (en) 2007-09-24 2011-10-18 The Research Foundation Of State University Of New York Automatic clustering for self-organizing grids
TW201002003A (en) * 2008-05-05 2010-01-01 Koninkl Philips Electronics Nv Methods and devices for managing a network
US8977710B2 (en) * 2008-06-18 2015-03-10 Qualcomm, Incorporated Remote selection and authorization of collected media transmission
CN102006266B (zh) 2009-09-02 2015-03-11 华为终端有限公司 服务质量参数的配置方法以及远程访问服务器和系统
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US10877695B2 (en) 2009-10-30 2020-12-29 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US10862784B2 (en) * 2011-10-04 2020-12-08 Electro Industries/Gauge Tech Systems and methods for processing meter information in a network of intelligent electronic devices
US10275840B2 (en) 2011-10-04 2019-04-30 Electro Industries/Gauge Tech Systems and methods for collecting, analyzing, billing, and reporting data from intelligent electronic devices
US10303860B2 (en) 2011-10-04 2019-05-28 Electro Industries/Gauge Tech Security through layers in an intelligent electronic device
US10771532B2 (en) 2011-10-04 2020-09-08 Electro Industries/Gauge Tech Intelligent electronic devices, systems and methods for communicating messages over a network
EP2904829A1 (en) * 2012-10-02 2015-08-12 Telefonaktiebolaget L M Ericsson (PUBL) Network node and method for handling spectrum bands in a mobile radio communication system
US9003039B2 (en) * 2012-11-29 2015-04-07 Thales Canada Inc. Method and apparatus of resource allocation or resource release
US11816465B2 (en) 2013-03-15 2023-11-14 Ei Electronics Llc Devices, systems and methods for tracking and upgrading firmware in intelligent electronic devices
US11734396B2 (en) 2014-06-17 2023-08-22 El Electronics Llc Security through layers in an intelligent electronic device
FR3045255A1 (fr) 2015-12-11 2017-06-16 Orange Routeur d'un reseau domestique, interface de supervision et un procede de supervision de l'utilisation d'un reseau domestique
GR1008894B (el) * 2015-12-15 2016-11-14 Arm Limited Βελτιστοποιημενη συνεχης ροη σε μια μη διατεταγμενη διασυνδεση
US10958435B2 (en) 2015-12-21 2021-03-23 Electro Industries/ Gauge Tech Providing security in an intelligent electronic device
US10430263B2 (en) 2016-02-01 2019-10-01 Electro Industries/Gauge Tech Devices, systems and methods for validating and upgrading firmware in intelligent electronic devices
CN105791165B (zh) * 2016-02-29 2019-11-08 宇龙计算机通信科技(深圳)有限公司 一种业务承载方法、通信终端、控制网元s-cscf以及系统
US10814893B2 (en) 2016-03-21 2020-10-27 Ge Global Sourcing Llc Vehicle control system
US10205784B2 (en) * 2016-03-21 2019-02-12 General Electric Company Communication system and method for controlling data distribution quality of service in time sensitive networks
US11072356B2 (en) 2016-06-30 2021-07-27 Transportation Ip Holdings, Llc Vehicle control system
SG11201807512RA (en) * 2016-07-27 2018-09-27 Megaport Services Pty Ltd Provisioning private network connections
US11754997B2 (en) 2018-02-17 2023-09-12 Ei Electronics Llc Devices, systems and methods for predicting future consumption values of load(s) in power distribution systems
US11734704B2 (en) 2018-02-17 2023-08-22 Ei Electronics Llc Devices, systems and methods for the collection of meter data in a common, globally accessible, group of servers, to provide simpler configuration, collection, viewing, and analysis of the meter data
US11686594B2 (en) 2018-02-17 2023-06-27 Ei Electronics Llc Devices, systems and methods for a cloud-based meter management system
US11196837B2 (en) 2019-03-29 2021-12-07 Intel Corporation Technologies for multi-tier prefetching in a context-aware edge gateway
US11388054B2 (en) 2019-04-30 2022-07-12 Intel Corporation Modular I/O configurations for edge computing using disaggregated chiplets
US11863589B2 (en) 2019-06-07 2024-01-02 Ei Electronics Llc Enterprise security in meters

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6751221B1 (en) * 1996-10-04 2004-06-15 Kabushiki Kaisha Toshiba Data transmitting node and network inter-connection node suitable for home network environment
JP3660443B2 (ja) * 1996-10-15 2005-06-15 株式会社東芝 データ転送制御システム及び中継装置
US6538416B1 (en) * 1999-03-09 2003-03-25 Lucent Technologies Inc. Border gateway reservation protocol for tree-based aggregation of inter-domain reservations
US6363434B1 (en) * 1999-03-30 2002-03-26 Sony Corporation Of Japan Method of managing resources within a network of consumer electronic devices
EP1058422A1 (en) * 1999-06-02 2000-12-06 THOMSON multimedia Methods for bridging a HAVi sub-network and a UPnP sub-network and device for implementing said methods
US6725281B1 (en) * 1999-06-11 2004-04-20 Microsoft Corporation Synchronization of controlled device state using state table and eventing in data-driven remote device control model
US6910068B2 (en) * 1999-06-11 2005-06-21 Microsoft Corporation XML-based template language for devices and services
US6892230B1 (en) * 1999-06-11 2005-05-10 Microsoft Corporation Dynamic self-configuration for ad hoc peer networking using mark-up language formated description messages
US6618764B1 (en) * 1999-06-25 2003-09-09 Koninklijke Philips Electronics N.V. Method for enabling interaction between two home networks of different software architectures
US6973653B1 (en) * 1999-10-21 2005-12-06 Sony Corporation Method for utilizing resource characterizations to optimize performance in an electronic device
KR20020026745A (ko) * 2000-10-02 2002-04-12 윤종용 인터넷을 기반으로 한 네트워크 시스템 및 그 통신방법
US7171475B2 (en) * 2000-12-01 2007-01-30 Microsoft Corporation Peer networking host framework and hosting API
US6766407B1 (en) * 2001-03-27 2004-07-20 Microsoft Corporation Intelligent streaming framework

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101181100B1 (ko) * 2006-11-13 2012-09-07 삼성전자주식회사 확장된 avb 예약 프로토콜

Also Published As

Publication number Publication date
US20030005130A1 (en) 2003-01-02
WO2003003658A1 (en) 2003-01-09
JP2004531180A (ja) 2004-10-07
EP1405462A1 (en) 2004-04-07
CN1520659A (zh) 2004-08-11

Similar Documents

Publication Publication Date Title
KR20040014993A (ko) 시간 민감 정보의 통신 시스템
US7013339B2 (en) Method to control a network device in a network comprising several devices
JP5065422B2 (ja) ネットワークリソースの交渉
KR100493895B1 (ko) 협업 서비스를 위한 홈 네트워크 시스템 및 방법
US20060155802A1 (en) Method to realize dynamic networking and resource sharing among equipments
US20110055708A1 (en) Method for changing service quality of a content adaptively
US6252886B1 (en) Bandwidth reservation
JP2004516711A (ja) スレーブデバイスの異種ネットワーク用UPnP構造
US8626892B2 (en) Methods and devices for managing a network
US20010026533A1 (en) Method to perform a scheduled action of network devices
KR100526179B1 (ko) 데이터 스트림의 무선 송수신을 위한 네트워크 관리 방법 및 이를 이용한 네트워크 장치
WO2006056919A1 (en) Control points for controlling devices in a network
US7908387B2 (en) Lookup service system in JINI-based home network supporting IEEE1394 and TCP/IP
WO2000002337A1 (en) Bandwidth reservation
EP2160865B1 (en) Method and apparatus for managing resources of a universal plug and play device based on a connection status of a control point
Delphinanto et al. Improving quality of experience by adding device resource reservation to service discovery protocols
KR100699634B1 (ko) 유피엔피 디바이스에 대한 제어권 관리 방법
Sung et al. A QoS-enabled service discovery and delivery scheme for home networks
WO2007148915A1 (en) Method and apparatus for supporting multicast of media data in a network
KR20030032405A (ko) 홈 네트워크 시스템에서의 디바이스 장애관리 시스템
WO2008010673A1 (en) Method for managing data transfer services on a network
WO2008044893A1 (en) Method for processing a request of access to a network
WO2007136194A1 (en) Method and apparatus for supporting multicast of media data in a network

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid