KR20080007182A - Method and system for providing universal plug and play resource surrogates - Google Patents
Method and system for providing universal plug and play resource surrogates Download PDFInfo
- Publication number
- KR20080007182A KR20080007182A KR1020070070773A KR20070070773A KR20080007182A KR 20080007182 A KR20080007182 A KR 20080007182A KR 1020070070773 A KR1020070070773 A KR 1020070070773A KR 20070070773 A KR20070070773 A KR 20070070773A KR 20080007182 A KR20080007182 A KR 20080007182A
- Authority
- KR
- South Korea
- Prior art keywords
- service
- mutualized
- mutualizing
- control point
- advertisement
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0806—Configuration setting for initial configuration or provisioning, e.g. plug-and-play
- H04L41/0809—Plug-and-play configuration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/256—NAT traversal
- H04L61/2582—NAT traversal through control of the NAT server, e.g. using universal plug and play [UPnP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
본 발명은 범용 플러그 앤 플레이(Universal Plug and Play, 이하 'UPnP'라 함)에 관한 것으로서, 보다 상세하게는 장치 및 서비스와 같은 UPnP 리소스를 업데이트를 하는 것에 관한 것이다.The present invention relates to Universal Plug and Play (hereinafter referred to as "UPnP"), and more particularly, to updating UPnP resources such as devices and services.
UPnP는 홈 네트워크와 같은 근거리개인통신망(Private Area Network : PAN) 및 근거리통신망(Local Area Network : LAN)에 대한 표준으로서 중요성이 증가하고 있다. Simple Service Discovery Protocol(SSDP)는 UPnP 표준의 기초를 형성하는 중요한 프로토콜들 중의 하나이다. UPnP 표준에서, SSDP는 네트워크에서 그들의 가용성(可用性 : availability)을 광고하기 위해 디바이스 및/또는 UPnP 서비스와 같은 UPnP 리소스(resource)에 의해 이용된다. UPnP 디바이스가 이용가능해질 때, UPnP 디바이스는 자신의 가용성을 광고하기 위해 주기적으로 네트워크에서 "alive" 메시지를 멀티캐스트(multicast)한다. 마찬가지로, UPnP 서비스 또한 주기적으로 같은 방법으로 네트워크에서 자신의 존재를 광고한다.UPnP is becoming increasingly important as a standard for local area networks (PANs) and local area networks (LANs), such as home networks. Simple Service Discovery Protocol (SSDP) is one of the important protocols that form the basis of the UPnP standard. In the UPnP standard, SSDPs are used by UPnP resources such as devices and / or UPnP services to advertise their availability in the network. When a UPnP device becomes available, the UPnP device periodically multicasts an "alive" message in the network to advertise its availability. Similarly, UPnP services also periodically advertise their presence on the network in the same way.
네트워크에 접속된 CE(Consumer Electronics) 디바이스들이 공동으로 같이 작동가능하게 하는 것이 UPnP 표준의 첫째의 목적이다. CE 디바이스들은 정밀한 개인용 컴퓨터부터 자동 온도 조절 장치 같은 하나의 기능만을 가진 기기까지 있다. CE 디바이스들의 수명 기간은 1년 이하부터 수년에 이른다. CE 산업에서 경쟁력은 CE 디바이스들에 있어서 빈번하게 새로운 서비스들의 출현을 야기한다. 새로운 서비스들은 종종 새로운 CE 하드웨어 및/또는 펌웨어 업데이트를 통해 출현한다. 그러나, 비록 현재 소비자의 하드웨어가 여전히 기능을 하더라도, 그러한 서비스들을 얻는 것은 새로운 하드웨어의 구입을 필요로 하기 때문에, 강화된 서비스들을 가진 새로운 하드웨어의 출현이 소비자에게는 비용 효과가 높지않다. 게다가, 새로운 하드웨어는 현재의 하드웨어와 호환성을 제공하지 않을 수도 있다. 이런 호환성이 없는 것 또한 펌웨어 업데이트에서 일어난다. 게다가, 업데이트된 서비스가 "buggy"인 경우에는, 소비자가 이전 서비스로 전환하기기 쉽지 않고, 종종 불가능하다.The primary purpose of the UPnP standard is to enable CE (Consumer Electronics) devices connected to a network to work together jointly. CE devices range from precision personal computers to instruments with only one function, such as thermostats. The life spans of CE devices range from one year to several years. Competitiveness in the CE industry frequently leads to the emergence of new services in CE devices. New services often appear with new CE hardware and / or firmware updates. However, even though the current consumer's hardware is still functioning, obtaining such services requires the purchase of new hardware, so the emergence of new hardware with enhanced services is not cost effective for the consumer. In addition, new hardware may not provide compatibility with current hardware. This incompatibility also occurs in firmware updates. In addition, when the updated service is "buggy", it is not easy and often impossible for the consumer to switch to the previous service.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 디바이스의 하드웨어/펌웨어에 대한 변화가 필요없는 UPnP 디바이스와 서비스의 업그레이드를 제공하는 방법 및 시스템이 필요하다.An object of the present invention for solving the above problems is a need for a method and system for providing an upgrade of UPnP devices and services that do not require changes to the hardware / firmware of the device.
본 발명은 제어 포인트(control point) 및 복수의 범용 플러그 앤 플레이(UPnP) 디바이스들을 포함하는 네트워크에서 서비스를 제공하는 방법 및 시스템 을 제공한다. 일 실시예에서, 이 것은 새로운 하드웨어 또는 펌웨어/소프트웨어 업데이트 없이 원래 UPnP 디바이스/서비스 기능성을 기능적으로 대체할 수 있는 서로게이트(surrogate)를 사용함으로써 달성된다. 서로게이트는 서로게이트를 구현하는 디바이스가 동일 네트워크에서 서로게이트를 구현할 수 없는 UPnP 디바이스와 공존할 수 있는 UPnP 네트워크에서 적절한 작동을 가능하게 한다. 이것은 새로운 하드웨어 또는 펌웨어/소프트웨어 업데이트를 필요로 하지 않고 현재 디바이스 기능성을 업데이트하게 한다.The present invention provides a method and system for providing a service in a network comprising a control point and a plurality of universal Plug and Play (UPnP) devices. In one embodiment, this is accomplished by using a surrogate that can functionally replace the original UPnP device / service functionality without new hardware or firmware / software updates. Surrogate enables proper operation in UPnP networks where devices implementing surrogate can coexist with UPnP devices that cannot implement surrogate in the same network. This allows updating current device functionality without requiring new hardware or firmware / software updates.
본 발명의 특징, 관점, 이점들은 다음의 발명의 상세한 설명, 첨부된 청구항, 도면을 참조하여 이해될 수 있을 것이다.The features, aspects, and advantages of the present invention will be understood with reference to the following detailed description, appended claims, and drawings.
UPnP 명세(specification)는 하드웨어, 펌웨어 및/또는 소프트웨어의 변화없이 UPnP 디바이스 및/또는 서비스에 대한 업그레이드를 가능하게 하지 않는다. 본 발명은 새로운 하드웨어 또는 펌웨어/소프트웨어 업데이트를 요구하지 않으면서 현재 디바이스 기능성(functionality)을 업데이트하게 하는 방법 및 시스템을 제공한다. 일 실시예에서, 이것은 새로운 하드웨어 또는 펌웨어/소프트웨어 없이 원래 UPnP 디바이스/서비스 기능성을 기능적으로 대체할(replace)(예를 들어, 대신할(act for), 교체할(substitute for), 강화할(enhance), 새로운 서비스를 부가할, 현재 서비스를 감소시킬, 이전 버전으로 서비스 업데이트를 전환할) 수 있는 서로게이트(Surrogate)를 사용함으로써 달성된다. 서로게이트는 서로게이트를 구현하는 디바이스가 동일 네트워크에서 서로게이트를 구현할 수 없는 UPnP 디바이스와 공존할 수 있는 UPnP 네트워크에서 적절한 작동을 가능하게 한다.The UPnP specification does not enable upgrades to UPnP devices and / or services without changing hardware, firmware and / or software. The present invention provides a method and system that allows updating of current device functionality without requiring new hardware or firmware / software updates. In one embodiment, this will functionally replace (eg, act for, substitute for, enhance) the original UPnP device / service functionality without new hardware or firmware / software. This is accomplished by using Surrogate, which can add new services, reduce current services, and switch service updates to previous versions. Surrogate enables proper operation in UPnP networks where devices implementing surrogate can coexist with UPnP devices that cannot implement surrogate in the same network.
서로게이팅(surrogating) 리소스 (즉, 서로게이트(surrogate) 리소스)는 다른 리소스(즉, 서로게이티드(surrogated) 리소스)를 대신하여 서비스를 제공한다.Surrogating resources (i.e. surrogate resources) provide services on behalf of other resources (i.e. surrogated resources).
본 발명에 따르면, 서로게이트는 새로운 하드웨어 또는 펌웨어의 업데이트 없이 새로운 서비스를 추가하고, 현재 서비스를 새로운 서비스로 대체하고, 현재 서비스 기능을 감소시키고, 모두 이전 버전으로 돌아가게 업데이트 시킨다. 또한 서로게이트는 서로게이트를 구현하는 디바이스가 그렇지 아니한 디바이스와 동일 네트워크에서 공존할 수 있는 UPnP 네트워크에서 적절한 동작이 이루어지게 한다. 게다가, 디바이스는 동시에 하나 이상 및 복수의 서로게이트를 가질 수도 있다. 비슷하게, 디바이스는 동시 또는 다른 시간에 하나 이상의 디바이스에 대해서 서로게이트가 될 수 있다.According to the present invention, the surrogate adds a new service without updating new hardware or firmware, replaces the current service with a new service, reduces the current service function, and updates all of them back to the previous version. In addition, surrogate allows proper operation in a UPnP network in which a device implementing the surrogate can coexist in the same network as a device that does not. In addition, the device may have more than one and a plurality of surrogates at the same time. Similarly, devices can be surrogate for one or more devices at the same time or at different times.
다음의 상세한 설명에서, 본 발명에 따라, 서로게이팅 UPnP 리소스 들의 세 가지 구현 예가 설명된다. 각각의 구현은 동일 네트워크에서 서로게이팅 리소스가 레가시(legacy) UPnP 리소스들과 공존할 때 적절한 상호 사용이 가능하게 다른 해결책을 제공한다.In the following detailed description, three implementations of mutually gating UPnP resources are described, in accordance with the present invention. Each implementation provides a different solution that enables proper interoperability when mutually harmonized resources coexist with legacy UPnP resources in the same network.
본 발명에 따른 서로게이팅 처리(surrogating process)의 첫 번째 구현은 네트워크에서 서로게이팅 UPnP 리소스와 서로게이티드 UPnP 리소스가 그들 스스로를 광고할 수 있게 한다. 새로운 SDDP 헤더는, 서로게이티드 리소스 대신 사용되어야 하는 서로게이팅 리소스를 UPnP 제어 포인트에게 알리기 위해서, 사용된다. 도 1은 본 발명의 일 실시예에 따라, 상기 첫 번째 구현을 구체화하는 홈 네트워크로서 LAN과 같은 네트워크(100)의 예를 나타내는 블록 다이아그램이다.The first implementation of the surrogating process according to the present invention allows mutually gating UPnP resources and mutually UPnP resources in the network to advertise themselves. The new SDDP header is used to inform the UPnP control point of the mutual resources that should be used instead of the mutual resources. 1 is a block diagram illustrating an example of a
네트워크(100)는 적어도 하나의 UPnP 디바이스(예를 들어, 디바이스(110)), 서로게이팅 UPnP 디바이스(112), 적어도 하나의 UPnP 제어 포인트(예를 들어, 디바 이스(114))를 포함한다. UPnP 디바이스(110, 112) 및 제어 포인트(114)는 이더넷(Ethernet), WiFi 등과 같은 LAN(101)에 연결되어 있다. 네트워크(100)는 다른 제어 포인트(117) 및 서로게이팅 디바이스 또는 서로게이티드 디바이스가 될 수 있는 다른 UPnP 디바이스(119)를 더 포함할 수 있다. UPnP 디바이스(110)는 제어 포인트로부터 호출될 수 있는 서비스(111)를 제공한다. 서로게이팅 디바이스(112)는 서로게이티드 디바이스(110)에 의해 제공되는 서비스들의 기능성을 강화하는 UPnP 서비스(115)를 제공한다.The
서로게이팅 디바이스(112)는 디바이스 리스너(listener)(검출부)(120), 디바이스 광고부(advertizer)(116) 및 리퀘스트 라우터(request router)(118)를 포함한다. 디바이스 리스너(120)는 어떤 UPnP 리소스(장치/서비스) 광고와 UPnP 제어 포인트로부터 요청에 대하여 LAN에서 UPnP 멀티캐스트 채널을 듣는다. 디바이스 광고부(116)는 서로게이트하는 디바이스를 대신하여 새로운 장치/서비스의 존재를 광고한다. 리퀘스트 라우터(118)는 제어 포인트(114)로부터 디바이스(110)에서 서비스(111) 또는 디바이스(112)에서 서비스(115)로 서비스 요청을 다시 향하게 한다. The
서로게이팅 처리는 세가지 단계(Phase)인 셋업(set-up) 단계, 탐색(discovery) 단계 및 호출(invocation) 단계를 포함한다.The mutual processing includes three phases: a set-up phase, a discovery phase, and an invocation phase.
셋업 단계 동안, 디바이스(112)는 새로운 서비스(115)를 추가하거나 또는 서비스(115)가 되게 서비스(111)를 업데이트하기 위하여, 디바이스(110)에 대한 서로게이팅 디바이스로서 행동하도록 구성된다. 셋업 단계는 다음 단계(step)들을 포함한다:During the setup phase, the
단계 1 : 서비스(115), 디바이스 리스너(120), 디바이스 광고부(116) 및 리퀘스트 라우터(118)를 디바이스(112)에 인스톨하는 단계.Step 1: Installing the
단계 2 : LAN에서 UPnP 디바이스/서비스 광고와 UPnP 제어 포인트로부터 요청에 대한 UPnP 멀티캐스트 채널을 듣는 리스너(120)를 선택적으로 구성하는 단계.Step 2: optionally configuring a
단계 3 : 예를 들어, 광고부에게 디바이스(110) 및 서비스(111)의 식별(identities)(Universally Unique Identifier(UUID))을 제공함으로써 디바이스(110)와 서비스(111)를 광고하는 광고부를 선택적으로 구성하는 단계. Step 3: For example, the advertisement unit for advertising the
셋업 단계는 다음의 두 가지 다른 경우들 중 하나로 계속될 수 있다.The setup phase can continue in one of two different cases.
경우 1 : 디바이스(110)가 동일 UPnP 네트워크에서 디바이스(120)로서 이미 작동하고있는 후, 디바이스(110)의 서로게이팅 디바이스(즉, 서로게이트)가 되게 디바이스(120)를 셋업하는 경우; 또는Case 1: when
경우 2 : 디바이스(110)가 동일 UPnP 네트워크에서 디바이스(120)로서 온라인(on-line)이 되기 전, 디바이스(110)의 서로게이팅 디바이스(즉, 서로게이트)가 되게 디바이스(120)를 셋업하는 경우.Case 2: setting
도 2는 상기 경우 1에 따라 셋업 단계 후 탐색 단계(10)의 흐름도를 나타내고, 탐색 단계(10)는 다음의 단계들을 포함한다:2 shows a flowchart of a
단계 1 : 셋업이 상기 경우 1에 따르는 경우, 디바이스(110)는 UPnP SSDP를 사용하는 멀티캐스트 채널에서 디바이스(110) 자신과 서비스(111)를 광고하고, 아래 단계 3으로 간다. 셋업이 상기 경우 2에 따르는 경우, 디바이스(120)는 디바이스(110)를 대신하여 광고하지 않고, 단계 2로 간다.Step 1: If the setup is in accordance with Case 1 above, the
단계 2 : 그 후에, 디바이스(110)는 온라인이 되고, UPnP SSDP "alive" 광고를 사용하는 멀티캐스트 채널에서 디바이스(110) 자신과 서비스(111)를 광고한다.Step 2: Thereafter, the
단계 3 : 디바이스 리스너(120)는 SSDP 광고에 기초한 디바이스(110) 및 서비스(111)의 가용성(可用性 : availability)을 검출한다.Step 3: The
단계 4 : 디바이스 광고부(116)는 서로게이팅 디바이스(112), 서로게이티드서비스(111) 및 서비스(115)의 가용성을 광고하기 시작한다. 서로게이티드 서비스(111)는 원래 서비스(111)와 동일하지만, 서로게이티드 서비스(111)의 어드레스(예를 들어, URL)는 서로게이티드 디바이스(110) 대신 서로게이팅 디바이스(112)에서 리퀘스트 라우터(118)를 가리킨다.Step 4: The
a : 디바이스(112) 광고에서, 디바이스 광고부(116)는 부가적인 대체(replacement) 헤더, "REPLACE"를 추가한다. 이 헤더의 값은 디바이스(110)의 UUID이다. 이것은 디바이스(112)가 디바이스(110)의 기능적인 대체라고 제어 포인트에게 알린다. a: In the
b : 서비스(111) 광고에서, 디바이스 광고부(116)는 부가적인 대체 헤더, "REPLACE"를 추가한다. 이 헤더의 값은 "UUID:service type:service version"의 형태(form)이다. "UUID"는 디바이스(110)의 UUID이다. "service type"과 "service version"은 각각 서비스(111)의 서비스 타입와 서비스 버전이다. 이것은 디바이스(112)의 서비스(111)가 디바이스(110)로부터의 서비스(111)를 기능적으로 대체한다는 것을 제어 포인트에게 알린다.b: In the
단계 5 : 그 후에, 제어 포인트(114)는 온라인이 되고 LAN(101)에서 온라인 디바이스를 탐색하기 위한 UPnP "M-Search" 요청을 멀티캐스트한다.Step 5: Thereafter, the
단계 6 : 디바이스(110), 서비스(111), 디바이스(112) 및 서비스(115) 모두는 제어 포인트(114)로부터 탐색(search) 요청에 응답한다. 디바이스(112)로부터 응답과 서로게이티드 서비스(111)로부터 응답에서, 부가적인 헤더, "REPLACE"가 있다. 이 헤더의 값은 "UUID:service type:service version"의 형태이다. "UUID"는 디바이스(110)의 UUID이다. "service type"과 "service version"은 각각 서비스(111)의 서비스 타입와 서비스 버전이다. 이것은 디바이스(112)로부터 서비스(111)가 디바이스(110)로부터 서비스(111)를 기능적으로 대체한다는 것을 제어 포인트에게 알린다. Step 6: The
단계 7 : 하나 이상의 응답에서의 "REPLACE" 헤더에 기초하여, 제어 포인트(114)는 디바이스(112)가 디바이스(110)를 기능적으로 대체하고, 서비스(115)가 서비스(111)를 기능적으로 대체하는가를 결정한다.Step 7: Based on the "REPLACE" header in the one or more responses, the
단계 8 : 제어 포인트(114)는 디바이스(110) 및 서비스(111)로부터의 응답과 그들로부터 어떤 광고도 무시한다. 대신에, 제어 포인트(114)는 서로게이팅 디바이스(112) 및 서로게이팅 서비스(115)로부터의 응답을 이용한다.Step 8: The
제어 포인트(114)가 서로게이팅 디바이스(112) 및 서로게이팅 서비스(115)가 온라인으로 가기 전에 UPnP 네트워크에서 이미 동작하고 있는 경우에는, 다음으로 상기 단계 5에서 단계 8은 다음과 같이 변화한다 : (i) 제어 포인트(114)는 멀티캐스트 채널을 청취하고 어떤 디바이스로부터 SSDP 광고들을 수신한다. 그리고 (ii) 제어 포인트(114)가 서로게이팅 처리를 지원하는 경우, 제어 포인트(114)는 디바이스(110) 및 서비스(111)로부터의 광고들을 무시하고, 대신에 디바이스(112) 및 서비스(115)로부터의 광고들을 사용한다 ; 그렇지 않은 경우에는, 제어 포인트(114)는 "REPLACE" 헤더를 무시하고 UPnP 명세에 따라 동작한다.If the
도 3은 호출 단계(20)의 흐름도이며, 다음과 같은 단계들을 포함한다.3 is a flowchart of the calling step 20, which includes the following steps.
단계 11 : 탐색 단계 후에, 제어 포인트(114)는 서비스(115)에 대하여 UPnP 서비스 요청을 발생시킨다.Step 11: After the discovery step, the
단계 12 : 리퀘스트 라우터(118)는 요청(request)을 수신한다. 리퀘스트 라우터(118)는 요청을 조사하고, 서비스(115)를 목적으로 한 것인지를 결정한다. 리퀘스트 라우터(118)는 호출을 위하여 서비스(115)에 요청을 한다.Step 12: The
단계 13 : 리퀘스트 라우터(118)는 서비스(115)로부터 응답을 수신한다. 상기 리퀘스트 라우터(118)는 제어 포인트(114)에 응답을 넘겨준다.Step 13:
단계 14 : 제어 포인트(114)는 서로게이티드 서비스(111)에 다른 UPnP 서비스 요청을 발생시킨다.Step 14: The
단계 15 : 리퀘스트 라우터(118)는 요청을 수신한다. 그리고 요청을 조사함으로써 서비스(111)를 목적으로 한 것인지 결정한다.Step 15: The
단계 16 : 리퀘스트 라우터(118)는 디바이스(110)의 서비스(111)를 호출하 고, 서비스(111)로부터 하나 이상의 서비스 응답을 수신한다.Step 16: The
단계 17 : 리퀘스트 라우터(118)는 서비스(111) 대신에 리퀘스트 라우터(118)를 가리키는 서비스 응답에서 각각의 서비스 응답과 어드레스(URL)의 변화를 조사한다. Step 17: The
단계 18 : 다음으로 리퀘스트 라우터(118)는 각각 수정된 응답을 제어 포인트(114)에게 되돌려 준다.Step 18: The
상기 단계 15 내지 단계 18 동안, 서비스(115)는 서비스(111)에 대하여 서로게이트로서 기능한다.During steps 15-18 above,
본 발명에 따른 서로게이팅 처리의 두 번째 구현은 서로게이팅 디바이스가 서로게이티드 디바이스에게 서로게이티드 디바이스 자신 또는 그 서비스들을 주기적으로 광고하지 않고 제어 포인트들로부터의 "M-Search" 요청들에 응답하지 않도록 알리게 한다. 도 4는 본 발명의 일 실시예에 따라, 상기 두 번째 구현을 구체화하는 홈 네트워크로서 LAN과 같은 네트워크(200)의 예를 나타내는 블록 다이아그램이다.The second implementation of the mutualizing process according to the present invention does not respond to "M-Search" requests from control points without the mutually engaging device periodically advertising the mutualized device itself or its services to the mutualized device. Let them know. 4 is a block diagram illustrating an example of a
네트워크(200)는 적어도 하나의 UPnP 디바이스(210), 적어도 하나의 서로게이팅 디바이스(212) 및 적어도 하나의 UPnP 제어 포인트(214)를 포함한다. 디바이스들(210, 212, 214)은 이더넷, WiFi 등과 같은 LAN(201)에 연결되어 있다. UPnP 디바이스(210)는 제어 포인트(214)로부터 호출될 수 있는 UPnP 서비스(211)를 포함한다. 게다가, 서로게이티드 디바이스(210)는 디바이스(210)의 SSDP 기능들을 작동하게/작동하지않게(턴온/턴오프) 사용되는 탐색부(Discovery module)를 포함한다.The
서로게이팅 디바이스(212)는 UPnP 서비스(215)를 포함한다. 상기 서비스(215)는 디바이스(210)의 서비스의 기능성을 대체하는(예를 들어, 강화하는) 새로운 서비스이다. 서로게이팅 디바이스(212) 또한 디바이스 리스너(220), 디바이스 광고부(216) 및 리퀘스트 라우트(218)를 포함한다. 디바이스 리스너(220)는 UPnP 디바이스/서비스 광고와 UPnP 제어 포인트로부터 응답에 대하여 LAN(201)에서 UPnP 멀티캐스트 채널을 듣는다. 디바이스 광고부(216)는 서로게이트하는 UPnP 디바이스를 대신하여 새로운 디바이스/서비스의 존재를 광고한다. 리퀘스트 라우터(218)는 제어 포인트(214)로부터 서로게이티드 디바이스(210)에서의 서비스(211) 또는 서로게이팅 디바이스(212)에서의 서비스(215)로 서비스 요청을 다시 향하게 한다. The
서로게이팅 처리는 3 단계를 포함한다 : 셋업단계, 탐색 단계, 호출단계.The mutualizing process includes three steps: a setup step, a search step, and a call step.
셋업 단계는 상기 설명된 첫 번째 구현의 셋업 단계를 따른다. 디바이스(212)는 새로운 서비스(215)를 추가하기 위하여 또는 서비스(211)가 서비스(215)가 되게 업데이트하기 위하여 디바이스(210)에 대하여 서로게이팅 디바이스로서 행동하도록 구성된다.The setup step follows the setup step of the first implementation described above. The
도 5는 본 발명의 일 실시예에 따라, 상기 경우 1에 따라 셋업 단계 후의 탐색 단계(30)의 흐름도이다. 상기 탐색 단계(30)는 다음 단계들을 포함한다.5 is a flowchart of a search step 30 after the setup step according to case 1, according to an embodiment of the invention. The search step 30 includes the following steps.
단계 21 : 경우 1에 따라 셋업 단계가 수행된 경우에는, 디바이스(210)는 UPnP SSDP를 사용하는 멀티캐스트 채널에서 디바이스(210) 자신 및 서비스(211)를 광고하고, 아래 단계 23으로 간다. 경우 2에 따라 셋업 단계가 수행된 경우에는, 디바이스(212)는 디바이스(210) 대신 광고하지 않고, 아래 단계 22로 간다.Step 21: When the setup step is performed according to Case 1, the
단계 22 : 그 후에, 디바이스(210)는 온라인이 되고, UPnP SSDP 메세지를 사용하는 LAN(201)의 멀티캐스트 채널에서 디바이스(210) 및 서비스(211)의 가용성을광고한다.Step 22: The
단계 23 : 디바이스 리스너(220)는 LAN(201)의 멀티캐스트 채널을 청취함(listening)으로써 디바이스(210) 및 서비스(211)의 가용성을 검출한다.Step 23: The
단계 24 : 디바이스(212)는 디바이스(210)의 SSDP 기능을 끄기(turn off) 위하여 탐색부(213)에 호출 메세지를 보낸다.Step 24: The
단계 25 : 탐색부(213)는 호출 메세지를 수신하고, SSDP "bye-bye" 메세지를 멀티캐스트하고, 디바이스(210)는 광고를 멀티캐스팅하는 것을 중단한다.Step 25: The
단계 26 : 디바이스(212)가 "bye-bye" 메세지를 수신한 후에, 디바이스(210) 및 서비스(211)를 요청하도록 탐색부(213)에 메세지를 보내고, 상기 디바이스(210) 및 서비스(211)는 유니캐스트 SSDP "alive" 메세지(가용성을 광고하는 것)를 디바이스(212)에 주기적으로 보낼 것이다.Step 26: After the
단계 27 : 디바이스 광고부(216)는 LAN(201)에 SSDP "alive" 메세지들을 멀티캐스팅함으로써, 디바이스(212), 서로게이티드 서비스(211) 및 서비스(215)를 광고하기 시작한다. 서로게이티드 서비스(211)는 원래 서비스(211)와 동일하나, 서로게이티드 서비스(211)의 URL은 서로게이티드 디바이스(210) 대신 서로게이팅 디바이스(212)에서 리궤스트 라우터(218)를 가리킨다.Step 27: The
단계 28 : 그 후에, 제어 포인트(214)는 온라인이 되고, 어떤 온라인 디바이스를 찾기 위하여 LAN(201)에서 UPnP "M-Search" 요청을 멀티캐스트한다.Step 28: The
단계 29 : 디바이스(212), 서비스(215) 및 서로게이티드 서비스(211)는 제어 포인트(214)로부터 탐색 요청에 응답한다.Step 29: The
도 6은 본 발명의 일 실시예에 따라, 호출 단계(40)의 흐름도이다. 다음의 단계들을 포함한다.6 is a flowchart of a
단계 31 : 탐색 단계 후에, 제어 포인트(214)는 서로게이팅 서비스(215)에 대하여 UPnP 서비스 요청을 발생시킨다.Step 31: After the discovery step, the
단계 32 : 리퀘스트 라우터(218)는 요청(request)을 수신하고, 요청을 조사함으로써 서비스(115)를 목적으로 한 것인지를 결정한다. 리퀘스트 라우터(118)는 호출을 위하여 서비스(215)에 요청을 한다.Step 32: The
단계 33 : 서비스(215)는 리퀘스트 라우터(218)에 응답을 보낸다. 리퀘스트 라우터(218)는 제어 포인트(214)에 응답을 넘겨준다.Step 33: The
단계 34 : 제어 포인트(214)는 서로게이티드 서비스(211)에 다른 UPnP 서비스 요청을 발생시킨다.Step 34: The
단계 35 : 리퀘스트 라우터(218)는 요청을 수신한다. 그리고 요청을 조사함으로써 서비스(211)를 목적으로 한 것인지 결정한다.Step 35: The
단계 36 : 리퀘스트 라우터(218)는 디바이스(210)에서 서비스(211)를 호출하고, 서비스(210)로부터 하나 이상의 서비스 응답을 수신한다.Step 36: The
단계 37 : 리퀘스트 라우터(218)는 디바이스(210)로부터 각각의 서비스 응답을 조사하고, URL은 서비스(211) 대신 리퀘스트 라우터(218)를 가리키는 것과 같은 서비스 응답에서 모든 URL을 변화시킨다(REPLACE를 가진 대체 헤더는 이 구현에서 는 불필요하다).Step 37: The
단계 38 : 리퀘스트 라우터(218)는 수정된 응답을 제어 포인트(214)에게 되돌려준다.Step 38: The
본 발명에 따라 서로게이팅 처리의 세 번째 구현은 서로게이티드 UPnP 디바이스가 서로게이트(즉, 서로게이팅 디바이스)를 검출하게 할 수 있게 하고, 새롭게 추가되는 SSDP 헤더를 사용함으로써 서로게이트가 이용가능할 때 그 자신의 SSDP 광고를 턴오프할 수 있게 한다. 도 7은 본 발명의 일 실시예에 따라, 상기 세 번째 구현을 구체화하는 홈 네트워크로서 LAN과 같은 네트워크(300)의 예를 나타내는 블록 다이아그램이다.A third implementation of the mutual gating process in accordance with the present invention allows a mutually UPnP device to detect a surrogate (i.e. a mutually gating device), and when the surrogate is available by using a newly added SSDP header Allows you to turn off your SSDP ads. 7 is a block diagram illustrating an example of a
네트워크(300)는 적어도 하나의 UPnP 디바이스(310), 적어도 하나의 서로게이팅 디바이스(312) 및 적어도 하나의 UPnP 제어 포인트(314)를 포함한다. 디바이스들(310, 312, 314)은 이더넷, WiFi 등과 같은 LAN(301)에 연결되어 있다.
서로게이티드 UPnP 디바이스(310)는 제어 포인트(314)로부터 호출될 수 있는 서비스(311)를 포함한다. 게다가, 디바이스(310)는 디바이스(310)의 SSDP 기능들을 턴온/턴오프하는 탐색부(Discovery module)(313)를 포함한다.The engaged
서로게이팅 디바이스(312)는 UPnP 서비스(315)를 포함한다. 서비스(315)는 디바이스(310)의 서비스의 기능성을 강화하는 새로운 서비스이다. 서로게이팅 디바이스(312)는 디바이스 리스너(320), 디바이스 광고부(316) 및 리퀘스트 라우트(318)를 더 포함한다. 디바이스 리스너(320)는 UPnP 디바이스/서비스 광고와 UPnP 제어 포인트로부터 응답을 듣는다. 디바이스 광고부(316)는 서로게이트 디바 이스를 대신하여 새로운 디바이스/서비스의 존재를 광고한다. 리퀘스트 라우터(318)는 제어 포인트(314)로부터 응답에 달려있는 서비스(311) 또는 서비스(315)로 서비스 요청을 다시 향하게 한다.The mutually gating
서로게이팅 처리는 3 단계를 포함한다 : 셋업단계, 탐색 단계, 호출단계.The mutualizing process includes three steps: a setup step, a search step, and a call step.
셋업 단계는 상기 설명된 첫째 구현의 셋업 단계를 따른다. 디바이스(312)는 새로운 서비스(315)를 추가하기 위하여 또는 서비스(311)가 서비스(315)가 되게 업데이트하기 위하여 디바이스(310)에 대하여 서로게이팅 디바이스로서 행동하도록 구성된다.The setup step follows the setup step of the first implementation described above. The
도 8는 본 발명의 일 실시예에 따라, 상기 경우 1에 따라 셋업 단계 후의 탐색 단계(50)의 흐름도이다. 상기 탐색 단계(50)는 다음 단계들을 포함한다.8 is a flowchart of a
단계 41 : 경우 1에 따라 셋업 단계가 수행된 경우에는, 디바이스(310)는 UPnP SSDP를 사용하는 멀티캐스트 채널에서 디바이스(310) 자신 및 서비스(311)를 광고하고, 아래 단계 43으로 간다. 경우 2에 따라 셋업 단계가 수행된 경우에는, 디바이스(312)는 디바이스(310) 대신 광고하지 않고, 아래 단계 42로 간다.Step 41: If the setup step is performed according to Case 1, the
단계 42 : 그 후에, 디바이스(310)는 온라인이 되고, UPnP SSDP를 사용하는 멀티캐스트 채널에서 디바이스 자신(310)과 서비스(311)의 가용성을 광고한다.Step 42: The
단계 43 : 디바이스 리스너(320)는 디바이스(310)와 서비스(311)의 가용성을 검출한다.Step 43: The
단계 44 : 디바이스 광고부(316)는 서로게이팅 디바이스(312), 서로게이티드 서비스(311) 및 서비스(315)의 가용성을 광고하기 시작한다. 서로게이티드 서비 스(311)는 원래 서비스(311)와 동일하지만, 서로게이티드 서비스(311)의 URL은 디바이스(310) 대신 리퀘스트 라우터(318)를 가리킨다.Step 44: The
a : 디바이스(312) 광고에서, 디바이스 광고부(316)는 부가적인 대체(replacement) 헤더, "REPLACE"를 SSDP 메세지에 삽입한다. 이 헤더의 값은 디바이스(310)의 UUID이다. 이것은 디바이스(312)는 디바이스(310)의 기능적인 대체라고 제어 포인트에게 알린다. a: In the
b : 서비스(311) 광고에서, 디바이스 광고부(316)는 새로운 헤더, "REPLACE"를 SSDP 메세지에 삽입한다. 이 헤더의 값은 "UUID:service type:service version"의 형태이다. "UUID"는 디바이스(310)의 UUID이다. "service type"과 "service version"은 각각 서비스(311)의 서비스 타입와 서비스 버전이다. 이것은 디바이스(312)로부터의 서로게이팅 서비스(311)가 디바이스(310)로부터 서로게이티드 서비스(311)를 기능적으로 대체한다는 것을 제어 포인트에게 알린다.b: In the
단계 45 : 탐색부(313)는 멀티캐스트 채널을 청취(listening)함으로써 디바이스(312), 서비스(315), 서로게이티드 서비스(311)의 가용성을 검출한다.Step 45: The
단계 46 : 서로게이팅 디바이스(312)가 온라인이라는 것을 알고 있는 탐색부(313)는 SSDP "bye-bye" 메세지를 멀티캐스트하고, 스스로 광고를 중단한다.Step 46: The
단계 47 : "bye-bye" 메세지를 수신한 후에, 디바이스(312)는 디바이스(310) 및 서비스(311)를 요청하도록 탐색부(313)에 메세지를 보내고, 상기 디바이스(310) 및 서비스(311)는 디바이스(312)에 주기적으로 유니캐스트 SSDP "alive" 메세지를 보낼 것이다.Step 47: After receiving the "bye-bye" message, the
단계 48 : 그 후에, 제어 포인트(314)는 온라인이 되고, LAN(301)에서 어떤 온라인 디바이스를 찾기 위하여 UPnP "M-Search" 요청을 멀티캐스트한다.Step 48: The
단계 49 : 디바이스(312), 서비스(315) 및 서로게이티드 서비스(311)는 제어 포인트(314)로부터 탐색 요청에 응답한다.Step 49: The
도 9는 본 발명의 일 실시예에 따라, 호출 단계(60)의 흐름도이다. 다음의 단계들을 포함한다.9 is a flowchart of a
단계 51 : 탐색 단계 후에, 제어 포인트(314)는 서비스(315)에 대하여 UPnP 서비스 요청을 발생시킨다.Step 51: After the discovery step, the
단계 52 : 리퀘스트 라우터(318)는 요청(request)을 수신하고, 요청을 조사함으로써 서비스(315)를 목적으로 한 것인지를 결정하고, 그것을 서비스(315)에 보낸다.Step 52: The
단계 53 : 서비스(315)는 요청을 수신하고, 제어 포인트(314)에 응답을 넘겨 주는 리퀘스트 라우터(318)에 응답을 보낸다. Step 53: The
단계 54 : 제어 포인트(314)는 서로게이티드 서비스(311)에 다른 UPnP 서비스 요청을 발생시킨다.Step 54: The
단계 55 : 리퀘스트 라우터(318)는 요청을 수신하고, 요청을 조사함으로써 서비스(311)를 목적으로 한 것인지 결정한다.Step 55: The
단계 56 : 리퀘스트 라우터(318)는 디바이스(310)에서 서비스(311)를 호출하고, 거기서부터 하나 이상의 서비스 응답을 수신한다.Step 56: The
단계 57 : 리퀘스트 라우터(318)는 각각의 서비스 응답을 조사하고, URL은 서비스(311) 대신 리퀘스트 라우터(318)를 가리키는 것처럼 각각의 서비스 응답에서 모든 URL을 변화시킨다.Step 57: The
단계 58 : 리퀘스트 라우터(318)는 수정된 응답을 제어 포인트(314)에게 되돌려준다.Step 58: The
따라서, 본 발명에 따라, 서로게이트는 새로운 하드웨어 또는 펌웨어의 업데이트 없이 새로운 서비스를 추가하고, 현재 서비스를 새로운 서비스로 대체하고, 현재 서비스 기능을 감소시키고, 모두 이전 버전으로 돌아가게 업데이트 시킨다. 또한 서로게이트는 서로게이트를 구현하는 디바이스가 그렇지 아니한 디바이스와 동일 네트워크에서 공존할 수 있는 UPnP 네트워크에서 적절한 동작이 이루어지게 한다. 게다가, 디바이스는 동시에 하나 이상 및 복수의 서로게이트를 가질 수도 있다. 유사하게, 디바이스는 동시 또는 다른 시간에 하나 이상의 디바이스에 대해서 서로게이트가 될 수 있다.Thus, in accordance with the present invention, the surrogate adds a new service without updating new hardware or firmware, replaces the current service with a new service, reduces the current service function, and updates all back to the previous version. In addition, surrogate allows proper operation in a UPnP network in which a device implementing the surrogate can coexist in the same network as a device that does not. In addition, the device may have more than one and a plurality of surrogates at the same time. Similarly, devices can be surrogate for one or more devices at the same time or at different times.
본 발명에 따른 상기의 전술한 예시 아키텍처는 당업자에게 자명한, 프로세서에 의한 실행될 프로그램 명령, 논리 회로, ASIC, 펌웨어 등의 다양한 방법으로 구현될 수 있다. 따라서 본 발명은 여기에 기술된 예시에 제한되지 않는다.The above-described exemplary architecture according to the present invention can be implemented in various ways such as program instructions to be executed by a processor, logic circuits, ASICs, firmware, etc., which will be apparent to those skilled in the art. Thus, the present invention is not limited to the examples described herein.
본 발명은 어떤 바람직한 버전과 관련하여 상당히 상세하게 기술하였지만, 다른 버전들도 가능하다. 그러므로 첨부된 청구항의 진의와 범위는 여기의 바람직한 버전의 기술에 제한되어서는 안 될 것이다.Although the present invention has been described in considerable detail with reference to certain preferred versions, other versions are possible. Therefore, the spirit and scope of the appended claims should not be limited to the description of the preferred versions herein.
도 1은 본 발명의 일 실시예에 따라, 리소스 액세스를 위한 서로게이팅 처리를 구현하는 네트워크의 블록 다이아그램이다.1 is a block diagram of a network that implements a mutual gating process for resource access, in accordance with an embodiment of the invention.
도 2는 본 발명의 일 실시예에 따라, 서로게이팅 처리의 탐색 단계의 단계의 흐름도이다.2 is a flow chart of the steps of a search step of a mutual gating process, in accordance with an embodiment of the present invention.
도 3은 본 발명의 일 실시예에 따라, 서로게이팅 처리의 호출 단계의 단계의 흐름도이다.3 is a flow chart of the steps of the invoking step of the mutualizing process, according to one embodiment of the invention.
도 4는 본 발명의 다른 실시예에 따라, 리소스 액세스를 위한 서로게이팅 처리를 구현하는 네트워크의 블록 다이아그램이다.4 is a block diagram of a network that implements a mutual gating process for resource access, in accordance with another embodiment of the present invention.
도 5는 본 발명의 다른 실시예에 따라, 서로게이팅 처리의 탐색 단계의 단계의 흐름도이다.5 is a flow chart of the steps of a search step of a gating process, in accordance with another embodiment of the present invention.
도 6은 본 발명의 다른 실시예에 따라, 서로게이팅 처리의 호출 단계의 단계의 흐름도이다.6 is a flowchart of the steps of the invoking step of the mutualizing process, according to another embodiment of the present invention.
도 7은 본 발명의 다른 실시예에 따라, 리소스 액세스를 위한 서로게이팅 처리를 구현하는 네트워크의 블록 다이아그램이다.7 is a block diagram of a network that implements a mutual gating process for resource access, in accordance with another embodiment of the present invention.
도 8은 본 발명의 다른 실시예에 따라, 서로게이팅 처리의 탐색 단계의 단계의 흐름도이다.8 is a flow chart of the steps of a search step of a gating process, in accordance with another embodiment of the present invention.
도 9는 본 발명의 다른 실시예에 따라, 서로게이팅 처리의 호출 단계의 단계의 흐름도이다.9 is a flow chart of the steps of the invoking step of the mutualizing process, according to another embodiment of the present invention.
Claims (40)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US83084106P | 2006-07-13 | 2006-07-13 | |
US60/830,841 | 2006-07-13 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080007182A true KR20080007182A (en) | 2008-01-17 |
KR101384664B1 KR101384664B1 (en) | 2014-04-17 |
Family
ID=39220661
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070070773A KR101384664B1 (en) | 2006-07-13 | 2007-07-13 | Method and system for providing universal plug and play resource surrogates |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR101384664B1 (en) |
CN (1) | CN101491020B (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103107928B (en) * | 2013-01-30 | 2015-08-05 | 南京邮电大学 | A kind of modified model UPnP A/V system based on login mechanism |
CN104065702A (en) * | 2014-05-18 | 2014-09-24 | 陕西理工学院 | Service agent method capable of reducing service equipment response, located on console |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030095897A (en) * | 2002-06-15 | 2003-12-24 | 엘지전자 주식회사 | Synchronizing method for universal plug and play network |
JP4136639B2 (en) * | 2002-12-13 | 2008-08-20 | キヤノン株式会社 | Service providing system and service providing apparatus |
US7490171B2 (en) * | 2003-05-19 | 2009-02-10 | Intel Corporation | Universal plug-and-play mirroring device, system and method |
US7603266B2 (en) | 2003-09-19 | 2009-10-13 | Microsoft Corporation | Generic emulator of devices in a device communications protocol |
KR20050055134A (en) * | 2003-12-05 | 2005-06-13 | 삼성전자주식회사 | Apparatus, system and method for forwarding byebye message in place of cd using the upnp network management information |
CN100385872C (en) * | 2005-11-18 | 2008-04-30 | 宁波大学 | General intelligent network possessing general intelligent network nodes |
-
2007
- 2007-07-06 CN CN2007800262587A patent/CN101491020B/en active Active
- 2007-07-13 KR KR1020070070773A patent/KR101384664B1/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
KR101384664B1 (en) | 2014-04-17 |
CN101491020B (en) | 2011-12-28 |
CN101491020A (en) | 2009-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4142960B2 (en) | System and method for searching for devices on a local area network | |
US20180191600A1 (en) | Redirection of service or device discovery messages in software-defined networks | |
US8176529B2 (en) | Apparatus and method for controlling devices in one or more home networks | |
JP4785969B2 (en) | Method and system for providing general purpose plug and play resource surrogate | |
RU2483455C2 (en) | Methods and apparatus for detecting peer-to-peer overlay networks | |
US9323587B2 (en) | Method and system for automatic detecting and resolving APIs | |
CN107404512B (en) | Resource subscription method, resource subscription device and resource subscription system | |
US20110238840A1 (en) | Method, system, and device for service negotiation | |
US20090160943A1 (en) | Detecting legacy bridges in an audio video bridging network | |
WO2016202056A1 (en) | Home network service sharing method and apparatus | |
JP5508273B2 (en) | Network location service | |
US20060168320A1 (en) | Network topology discovery service | |
WO2019011247A1 (en) | Mac address information synchronization method, device and storage medium | |
EP2406937B1 (en) | Methods and apparatus for discovery of peer-to-peer overlay networks | |
KR101384664B1 (en) | Method and system for providing universal plug and play resource surrogates | |
US7617316B2 (en) | Network connection device, network system and method for avoiding duplication of proxy function | |
CN102891763B (en) | A kind of method and apparatus obtaining CIM resource | |
US20080104272A1 (en) | Method and system for routing a message over a home network | |
JP4425710B2 (en) | Method, system, and medium for performing IPv6 communication | |
US7826445B2 (en) | Message formation and distribution in heterogeneous networks | |
CN114257473B (en) | Method, device, equipment and medium for realizing multiple transparent bridges in resource pool | |
TWI362199B (en) | ||
WO2003102803A1 (en) | Host resolution for ip networks with nat | |
KR100691451B1 (en) | A association method of telecommunications equipment of wireless local area network in mobile phone | |
Cisco et al. | UPnP Device Architecture V1. 1 Annex A–IP Version 6 Support |
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 | ||
FPAY | Annual fee payment |
Payment date: 20180321 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20190319 Year of fee payment: 6 |