KR100493898B1 - 피제어 디바이스의 리스트를 제공하는 네트워크 장치,시스템 및 방법 - Google Patents

피제어 디바이스의 리스트를 제공하는 네트워크 장치,시스템 및 방법 Download PDF

Info

Publication number
KR100493898B1
KR100493898B1 KR10-2003-0024176A KR20030024176A KR100493898B1 KR 100493898 B1 KR100493898 B1 KR 100493898B1 KR 20030024176 A KR20030024176 A KR 20030024176A KR 100493898 B1 KR100493898 B1 KR 100493898B1
Authority
KR
South Korea
Prior art keywords
controlled device
token
controlled
list
network
Prior art date
Application number
KR10-2003-0024176A
Other languages
English (en)
Other versions
KR20040090224A (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 삼성전자주식회사
Priority to KR10-2003-0024176A priority Critical patent/KR100493898B1/ko
Priority to JP2004090567A priority patent/JP4597558B2/ja
Priority to CNB2004100346561A priority patent/CN100388704C/zh
Priority to EP04252224.3A priority patent/EP1469654B1/en
Priority to EP12168064.9A priority patent/EP2490407B1/en
Priority to US10/825,668 priority patent/US7693934B2/en
Publication of KR20040090224A publication Critical patent/KR20040090224A/ko
Application granted granted Critical
Publication of KR100493898B1 publication Critical patent/KR100493898B1/ko

Links

Classifications

    • 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/281Exchanging configuration information on appliance services in a home automation network indicating a format for calling an appliance service function 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/2805Home Audio Video Interoperability [HAVI] networks
    • 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/085Retrieval of network configuration; Tracking network configuration history
    • H04L41/0853Retrieval of network configuration; Tracking network configuration history by actively collecting configuration information or by backing up configuration information
    • 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/0866Checking the configuration
    • 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/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • 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
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • 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/2841Wireless

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Automation & Control Theory (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)
  • Selective Calling Equipment (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 네트워크 상에 연결된 피제어 디바이스들이 전송한 통지 메시지를 수신하는 통지/서치 메세지 수신 모듈과, 상기 네트워크 상에 연결된 피제어 디바이스들의 정보를 수집하여 상기 네트워크상에 연결된 모든 피제어 디바이스들의 서비스 정보의 리스트를 생성하고 관리하는 디바이스 리스트 관리 모듈 및 제어 포인트가 요청한 특정 피제어 디바이스의 서비스 정보를 상기 디바이스 리스트 관리 모듈에서 검색하여 전송하는 제어 모듈을 포함하는 것을 특징으로 하며, 네트워크 상에 연결된 피제어 디바이스가 다른 피제어 디바이스들의 리스트를 가지고 있어, 제어 포인트로부터 특정 피제어 디바이스를 찾는 메세지를 수신한 경우, 특정 피제어 디바이스가 상기 제어 포인트의 메세지를 수신하지 못하더라도 다른 피제어 디바이스가 제어 포인트에 대신 응답 메세지를 전송할 수 있어 네트워크 상태가 불안정하더라도 제어 포인트는 피제어 디바이스를 효율적으로 제어할 수 있는 잇점이 있다.

Description

피제어 디바이스의 리스트를 제공하는 네트워크 장치, 시스템 및 방법{NETWORK DEVICE, SYSTEM AND METHOD FOR PROVIDING LIST OF CONTROLLED DEVICE}
본 발명은 피제어 디바이스의 리스트를 제공하는 네트워크 장치, 시스템 및 방법에 관한 것으로서, 특히 네트워크 상에 연결된 피제어 디바이스가 다른 피제어 디바이스들의 리스트를 가지고 있어, 제어 포인트로부터 특정 피제어 디바이스를 찾는 메세지를 수신한 경우, 특정 피제어 디바이스를 대신하여 제어 포인트에 응답 메세지를 전송할 수 있는 피제어 디바이스의 리스트를 제공하는 네트워크 장치, 시스템 및 방법에 관한 것이다.
일반적으로, 홈 네트워크는 인터넷 프로토콜(Internet Protocol : IP) 기반의 사설 망(Private network)으로 이루어지는 것으로, 가정 내에서 사용되는 모든 형태의 개인 컴퓨터(PC)와 지능형 제품, 무선 장치 등의 다양한 기기들을 하나의 네트워크로 연결하여 통제한다.
홈 네트워크 방법은 사설 망에 존재하는 기기들에 미들웨어(middleware)라 불리우는 공통의 가상 컴퓨팅 환경을 구축하고 그 위에 애플리케이션을 제공하는 방식으로 제안되고 있는데, 상기 미들웨어란 홈 네트워크에서 여러 기기간의 통신이 가능하도록 하는 것으로 HAVI(Home AV Interoperability), UPnP(Universal Plug and Play), Jini, HWW(Home Wide Web) 등이 현재까지 제안되어 있다.
이러한 홈 네트워크 미들웨어를 통해 홈 네트워크에 존재하는 기기들은 피어-투-피어(Peer-to-Peer) 방식의 네트워크로 연결되는데, 각 장치들은 동적 호스트 구성 규약(Dynamic Host Configuration Protocol : 이하 DHCP라 함) 서버에 의해 할당되거나 자동 IP 지정 기능(Auto IP)에 의해 선택되는 IP 주소를 사용한다.
즉, 각각의 장치는 홈 네트워크에 처음 연결됐을 때 DHCP 서버를 검색하여 DHCP 서버의 응답에 따라 할당되는 주소를 확보하거나, DHCP 서버가 운영되지 않는 네트워크의 경우에는 Auto IP를 사용하여 일정 범위 내에서 IP 주소를 자동으로 선택한다.
이와 같이 DHCP 서버에 의하여 할당되거나 Auto IP에 의해 선택된 IP 주소를 사용하는 기기들은 TCP/IP(Transmission Control Protocol/Internet Protocol)를 사용하여 네트워크 상의 다른 기기들과 통신하고, IP 주소를 통해 네트워크 상에서 검색 및 조회가 가능하게 된다.
또한, UPnP와 같은 홈 네트워크 미들웨어는 홈 네트워크에 존재하는 기기를 찾기 위한 방법으로 Simple Service Discovery Protocol(이하 SSDP라 함)와 같은 프로토콜이 이용된다. 여기서, 상기 SSDP는 크게 2가지로 구분 할 수 있는데, 제어 포인트(Control Point : 이하 CP라 함)가 자신이 원하는 타입(Type)의 피제어 디바이스(Controlled Device :이하 CD라 함)를 검색 하기 위해 사용하는 멀티캐스트 서치(M-Search) 메세지와 CD가 자신의 상태에 대해 알리기 위해 사용하는 통지(Notify) 메시지가 있다. 상기 통지 메시지에는 CD가 네트워크에 연결되어 자신의 IP를 할당 받은 후 보내는 연결 통지(Notify Alive) 메세지와 CD가 네트워크에서 정상적으로 제거될 때 보내는 해지 통지(Notify Byebye)메세지가 있다. 즉, CD가 네트워크에 연결되면, DHCP 서버를 통해서 또는 Auto-IP 방식으로 IP를 할당 받고, 자기 자신이 네트워크에 추가 되었다는 사실을 알리기 위해 해지 통지 메시지를 UDP(user datagram protocol) 멀티캐스트(Multicast) 방식으로 보낸다. 그러나, 상기 UDP 패킷(Packet)이 제대로 전달 되었는지를 알 수 없어 상기 CD는 동일한 해지 통지 메시지를 동일한 멀티캐스트 주소로 몇차례 반복하여 전송한다.
또한, 상기 CP가 사용자로부터 또는 어플리케이션(Application)으로부터 특정 서비스를 수행 하도록 명령을 받게 되면, 해당 서비스를 수행 시키는데 필요한 타입의 CD를 검색하기 위해 멀티캐스트 서치 메시지를 만들고, UDP 멀티캐스트 방식으로 보낸다. 이 경우에도 UDP 멀티캐스트 방식은 CP가 보낸 멀티캐스트 서치 메시지에 대한 전달 상황을 알지 못하기 때문에 동일한 멀티캐스트 서치 메시지를 동일한 멀티캐스트 주소로 1회 이상 반복하여 보내게 된다.
그리고, 상기 CP가 보낸 멀티캐스트 서치 메시지를 수신한 CD는 자신의 타입이 상기 CP가 요청한 것과 동일한 경우 CP에게 멀티캐스트 서치 응답 메시지를 구성하여 보내게 된다. 이에, 상기 CP는 자신이 보낸 멀티캐스트 서치 메시지에 대한 응답 메시지를 수집하여 특정 CD를 선택하고, 필요한 경우는 CP 자신의 캐시(Cache)에 CD에 대한 정보를 저장해 둔다. 이 후, 상기 CP는 수집된 CD정보와 자신의 캐시를 통해 모은 CD 정보를 통해 서비스 수행에 필요한 CD를 제어할 수 있게 된다.
한편, 상기 CD가 정상적인 방법으로 네트워크에서 제거되면, 먼저 자신의 해지 통지 메시지를 만들어 UDP 멀티캐스트 방식으로 보낸다. 이에 상기 메시지를 수신한 CP는 자신의 캐시에 저장된 해당 CD를 삭제 한다.
도 1은 종래의 홈 네트워크에 존재하는 UPnP 제어 디바이스를 제어하기 위한 동작 과정을 나타낸 도면으로서, 제어 포인트는 원하는 서비스를 이용하기 위하여 네트워크에 연결된 디바이스를 찾는 디스커버리(Discovery)과정을 수행하며, 상기 디스커버리는 네트워크에 연결된 모든 장치들에게 멀티캐스트 패킷을 전달하기 위한 멀티캐스트 서치 방법 및 패킷의 수신 여부가 확인되지 않는 UDP(user datagram protocol) 방법을 이용한다.
먼저, CP(2000,..,2200)가 원하는 디바이스를 찾기 위해 디스커버리 과정을 수행하면 네트워크에 연결된 CD(1000,..,1500)는 상기 디바이스 패킷에 응답 메세지를 전송한다. 그러나, CP2(2100)가 CD(1000,..,1500)을 발견하기 위해 전송한 멀티캐스트 서치 메시지가 CD2(1100)에 전달되지 못하거나 멀티캐스트 서치 메시지를 수신한 CD3(1200)가 멀티캐스트 서치 응답 메시지를 CP2(2100)에게 보내지 못하고 패킷이 손실되는 경우가 발생 할 수 있으며, 이에 CP2(2100)는 해당 CD를 발견하는데 실패하게 된다.
도 2는 종래의 홈 네트워크에서 제어 포인트가 전송한 디바이스 패킷에 대해 피제어 디바이스가 전송한 응답 메세지를 제어 포인트가 전달 받지 못한 경우를 나타낸 도면이고, 도 3은 종래의 홈 네트워크에서 제어 포인트가 전송한 디바이스 패킷을 피제어 디바이스가 전송받지 못한 경우를 나타낸 도면이다.
도 4는 종래의 홈 네트워크에서 비정상적으로 종료된 피제어 디바이스의 상태를 제어 포인트가 알지 못하는 경우를 나타낸 도면이다. CD(1000,..,1200)가 정상적인 방법으로 네트워크에서 제거 되게 되면, 먼저 자신의 해지 통지 메시지를 만들어 UDP 멀티캐스트 방식으로 보낸다. 이에, 상기 해지 통지 메시지를 수신한 CP(2000)는 자신의 캐시(2010)에서 해당 CD에 대한 정보를 삭제함으로, 상기 CD가 네트워크 상에 존재하지 않음을 알 수 있다.
그러나, 네트워크에 연결되어 동작하고 있던 CD(1000,..,1200)가 비정상적으로 동작을 멈추게 된 경우, 상기 CD는 해지 통지 메시지를 보내지 못하게 되어 CP(2000)의 캐시(2010)에는 아직 해당 CD가 유효한 것으로 인식된다. 이러한 잘못된 캐시 정보는 CP(2000)의 캐시(2010)에 함께 기록된 CD의 유효시간이 지날 때까지 계속 남아있게 되며, 즉 UPnP 디스커버리 메커니즘이 캐시에 남아있는 CD에 대한 정보를 해당 CD가 보낸 연결 통지 메시지나 해지 통지 메세지를 통해서만 알 수 있기 때문에 해당 CD가 비정상적으로 종료 된 경우, 이에 대해 알려 줄 수 있는 방법이 없다는 문제점이 있다.
따라서, UPnP 네트워크에 연결된 CD들이 자기 자신의 상태를 서로 알리기 위해 통지 메시지를 멀티캐스트 하거나, 상기 CD가 비정상적으로 동작을 멈추었을 경우에도 CP(2000)의 캐시에 남아 있는 유효시간(Duration)때문에 해당 CD가 동작 하는 것으로 인식 되어지는 캐시 코히런스(Cache Coherence) 문제를 해결 하기 위해 방법 및 장치가 필요하다.
본 발명은 상기한 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 네트워크 상에 연결된 피제어 디바이스가 다른 피제어 디바이스들의 리스트를 가지고 있어, 제어 포인트로부터 특정 피제어 디바이스를 찾는 메세지를 수신한 경우, 특정 피제어 디바이스를 대신하여 제어 포인트에 응답 메세지를 전송할 수 있는 피제어 디바이스의 리스트를 제공하는 네트워크 장치, 시스템 및 방법을 제공하는 것이다.
본 발명의 다른 목적은 피제어 디바이스들이 피제어 디바이스의 리스트를 업데이트 하는 중에 특정 피제어 디바이스가 네트워크에 존재하지 않는 상태임을 발견하면 제어 포인트에게 알려 제어 포인트가 네트워크 상에 존재하지 않는 피제어 디바이스의 리스트를 캐시에서 삭제하도록 함으로써, 현재 동작하고 있는 피제어 디바이스들에 대한 정확한 상태를 파악할 수 있도록 하는 피제어 디바이스의 리스트를 제공하는 네트워크 장치, 시스템 및 방법을 제공하는 것이다.
상기 목적을 달성하기 위하여 본 발명은, 네트워크 상에 연결된 피제어 디바이스들이 전송한 통지 메시지를 수신하는 통지/서치 메세지 수신 모듈과, 상기 네트워크 상에 연결된 피제어 디바이스들의 정보를 수집하여 상기 네트워크상에 연결된 모든 피제어 디바이스들의 서비스 정보의 리스트를 생성하고 관리하는 디바이스 리스트 관리 모듈 및 제어 포인트가 요청한 특정 피제어 디바이스의 서비스 정보를 상기 디바이스 리스트 관리 모듈에서 검색하여 전송하는 제어 모듈을 포함하는 것을 특징으로 한다.
또한, 네트워크 상에 연결된 피제어 디바이스들의 통지 메세지를 수신하는 단계와, 상기 수신된 통지 메세지를 통해 네트워크 상에 연결된 피제어 디바이스들의 정보를 수집하고 리스트를 작성하는 단계와, 특정 피제어 디바이스의 정보 요청 메세지를 수신하는 단계와, 상기 정보 요청 메세지가 수신된 특정 피제어 디바이스의 정보를 상기 작성된 리스트에서 검색하는 단계 및 상기 검색된 특정 피제어 디바이스의 정보를 전송하는 단계를 포함하는 것을 특징으로 한다.
이하, 첨부한 도면들을 참조로 본 발명의 바람직한 실시예를 상세히 설명한다.
도 5는 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 네트워크 장치의 전체 구성도를 개략적으로 나타낸 도면으로서, 억세스 포인트(3000), 제어 포인트(control point :CP)(2000) 및 피제어 디바이스(controlled device :CD)(1000)로 구성된다.
억세스 포인트(3000)는 무선으로 연결된 제어 포인트(2000)와 피제어 디바이스(1000)를 연결시키는 장치이다.
제어 포인트(2000)는 네트워크 상에 존재하는 피제어 디바이스들(1000,1100,...,1500)을 찾기 위해 디스커버리 패킷을 전송하고, 그에 따른 응답 메세지를 전송받아 상기 네트워크 상에 존재하는 피제어 디바이스들(1000,1100,...,1500)을 제어한다.
피제어 디바이스(1000)는 상기 네트워크 상에 연결된 다른 피제어 디바이스(1100,...,1500)들이 전송한 통지 메시지를 수신하여, 상기 네트워크에 연결된 모든 피제어 디바이스들(1000,1100,...,1500)의 정보 리스트를 생성 및 관리하고, 상기 제어 포인트(2000)가 요청한 특정 피제어 디바이스의 정보를 검색하여 전송한다. 이하 도 6을 참조하여 피제어 디바이스의 구성 및 동작에 대하여 더 자세히 설명한다.
도 6은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 네트워크 장치의 피제어 디바이스의 내부 구성도를 나타낸 도면으로서, 피제어 디바이스(1000)는 디바이스 리스트 관리 모듈(1021), 네고시에이션 모듈(1022), 통지/서치 메세지 수신 모듈(1023), 토큰(token) 관리 모듈(1024), 타이머(timer) 관리 모듈(1025) 및 제어 모듈(1026)로 구성된다.
통지/서치 메세지 수신 모듈(1023)은 네트워크 상에 연결된 피제어 디바이스들(1000,1100,...,1500)이 전송한 통지(notify) 메시지 및 제어 포인트(2000)로부터 전송되는 서치(M-Search) 메세지를 수신한다.
디바이스 리스트 관리 모듈(1021)은 상기 네트워크 상에 연결된 피제어 디바이스들(1000,1100,...,1500)의 정보를 수집하여 상기 네트워크상에 연결된 모든 피제어 디바이스들(1000,1100,...,1500)의 서비스 정보의 리스트를 생성하고 관리한다.
제어 모듈(1026)은 제어 포인트(2000)가 요청한 특정 피제어 디바이스의 서비스 정보를 상기 디바이스 리스트 관리 모듈(1021)에서 검색하여 전송한다. 또한, 제어 모듈(1026)은 상기 피제어 디바이스에 상기 토큰 존재 여부를 확인하여 제어 포인트(2000)의 정보 요청 메세지에 응답하며, 상기 토큰 존재 여부를 확인한 후 피제어 디바이스의 상태 정보를 확인한다. 여기서, 상기 상태 정보는 초기(init) 상태, 진행(active) 상태 및 정지(stop) 상태로 이해될 수 있으며, 상기 초기 상태란 현재 자신이 가진 피제어 디바이스의 리스트 개수가 1일 경우(즉, 리스트에 자기 자신만 있는 경우)로 피제어 디바이스의 초기 상태에서만 가질 수 있는 상태이다. 초기 상태에서 자신의 리스트가 업데이트(update)되어 리스트 개수가 2개 이상이 되는 순간 상기 피제어 디바이스(1000)는 자신의 상태를 진행 상태로 변경한다. 상기 진행 상태란 현재 피제어 디바이스(1000) 자신이 토큰을 갖고 있는 상태로 서비스를 수행중인 상태이다. 상기 정지 상태란 진행 상태에서 서비스 수행을 마치고 현재는 아무런 동작을 수행 하지 않는 상태이다. 또한, 상기 토큰 존재 여부의 확인은 상기 상태 정보를 이용하여 이루어 진다.
토큰 관리 모듈(1024)은 토큰 생성 및 상기 생성된 토큰을 다른 피제어 디바이스로 전달 및 관리 한다.
타이머 관리 모듈(1025)은 셀프 타이머(Self Timer)와 웨이팅 타이머(Waiting Timer)를 생성하는데, 상기 셀프 타이머는 상기 토큰 관리 모듈(1024)에서 관리하는 토큰이 다른 피제어 디바이스로 전달되는 경우 상기 토큰이 전달된 다른 피제어 디바이스의 응답 시간을 체크한다. 즉, 각 피제어 디바이스들은 다른 피제어 디바이스에게 토큰을 넘겨주거나 응답(ACK)을 기다릴 때, 자신의 셀프 타이머를 동작 시키고, 상기 다른 피제어 디바이스로부터 응답이 오면 셀프 타이머를 종료 한다. 그리고, 셀프 타이머가 동작하는 동안 상기 다른 피제어 디바이스에게 응답이 오지 않으면, 셀프 타이머를 다시(Retry) 동작 시킨다(예를 들어, 3번 동작시킴). 상기 셀프 타이머가 3번 동작하는 동안에도 응답이 없으면, 상기 다른 피제어 디바이스에 대해 해지 통지 메세지를 대신 보내고, 자신의 리스트에서 상기 다른 피제어 디바이스의 리스트를 삭제한 후, 다음 과정(Operation)을 수행 한다.
또한, 상기 웨이팅 타이머는 상기 네트워크 상에 존재하는 피제어 디바이스에 대한 상기 토큰의 전체 순환 시간을 체크한다. 즉, 웨이팅 타이머는 특정 피제어 디바이스가 자신이 해야 할 서비스 동작을 정상적으로 마친 후, 자신이 갖고 있는 리스트에 남아 있는 피제어 디바이스의 개수에 비례하여 동작이 종료될 시점에 대해 예측하고 그만큼의 시간을 기다리기 위해 동작 하는 타이머로서, 상기 설정된 웨이팅 타이머가 완료되면, 새로운 토큰을 생성하여 다음 피제어 디바이스에게 토큰과 리스트 전송을 한다. 그리고, 정지 상태의 피제어 디바이스들은 모두 웨이팅 타이머를 구동 시키고 있어야 하며, 상기 웨이팅 타이머를 수행해야 할 시점에서 해당 피제어 디바이스가 갖는 리스트의 개수가 1인 경우 다른 피제어 디바이스들에게 자신의 연결 통지 메시지를 보내고, 자신의 상태를 정지 상태로 바꾼 후 웨이팅 타이머를 수행하여 다른 피제어 디바이스들에게 자신이 살아 있음을 알린다.
한편, 상기 셀프 타이머와 웨이팅 타이머는 동시에 동작 하지 않으며, 상기 피제어 디바이스(1000)의 상태 조건에 맞는 타이머가 동작 하도록 되어 있다.
네고시에이션 모듈(1022)은 상기 네트워크 상에 존재하는 피제어 디바이스들 에서 다수의 토큰이 존재할 경우 상기 토큰의 유효성을 조정 한다. 여기서, 상기 네고시에이션 모듈(1022)은 각 피제어 디바이스의 상태 정보를 이용하여 다수의 토큰 존재 여부를 판단한다. 또한, 상기 네고시에이션 모듈(1022)은 상기 토큰을 가진 각각의 피제어 디바이스가 저장하고 있는 피제어 디바이스의 리스트 개수를 비교하여 토큰의 유효성을 조정하며, 만약 상기 비교결과 피제어 디바이스의 리스트 개수가 동일한 경우, 상기 리스트에 등록된 각 피제어 디바이스들의 네트워크 잔류시간(Remain Duration Time)의 합을 비교하여 토큰의 유효성을 조정한다. 여기서, 상기 각 피제어 디바이스의 네트워크 잔류시간은 각 피제어 디바이스가 연결 통지 메세지를 전송할 때 같이 전송되며, 상기 전송된 각 피제어 디바이스의 유효시간(Duration Time)을 기초로 하여 계산된다.
도 7은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 방법의 전체 플로우챠트를 개략적으로 나타낸 도면으로서, 먼저 피제어 디바이스(1000)는 네트워크 상에 연결된 다른 피제어 디바이스들(1100,..,1500)로부터 통지 메세지를 전송받아 상기 다른 피제어 디바이스들의 리스트를 작성하는 초기화 과정을 수행한다(S100).
그 다음, 피제어 디바이스(1000)에서 토큰을 생성하여, 상기 생성된 토큰을 다른 피제어 디바이스로 전송하고, 상기 전송된 토큰을 수신하는 토큰 생성 여부 판단 과정, 토큰 수신 과정 및 토큰 전달 과정을 수행하고(S200,S300,S400), 상기 네트워크 상에 존재하는 피제어 디바이스(1000,..,1500) 내에 다수의 토큰이 존재할 경우 상기 토큰의 유효성을 조정하는 네고시에이션 과정을 수행하며(S500), 상기 다른 피제어 디바이스로부터 응답 메세지가 전송되지 않을 경우 제어 포인트(2000)에게 특정 피제어 디바이스(1000)가 네트워크에서 해지되었음을 알리는 해지 통지 메세지 전달 과정(S600), 및 상기 제어 포인트(2000)로부터 특정 디바이스의 정보를 찾는 서치 메세지를 전송받는 제어 포인트의 서치 메세지 수신 과정을 수행한다(S150). 여기서, 상기 각각의 과정은 상황 따라 병렬적으로 수행될 수 있다. 이하 도 8 내지 도 15를 참조하여 피제어 디바이스의 리스트를 제공하는 방법에 대하여 더 자세히 설명한다.
도 8은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 방법 중 초기화 과정을 나타낸 도면으로서, 먼저 피제어 디바이스(1000)가 네트워크에 연결되면, 상기 피제어 디바이스(1000)는 자신이 네트워크에 연결됨을 알리는 메세지를 멀티캐스트 한다(S110). 이에 네트워크에 연결되어 있던 다른 피제어 디바이스들(1100,...1500)이 상기 피제어 디바이스(1000)가 전송한 메세지에 대해서 자신들의 정보를 알려주는 연결 통지(notify alive) 메세지를 전송한다(S120).
이 후, 상기 피제어 디바이스(1000)는 전송된 연결 통지 메세지를 통해 네트워크 상에 연결된 다른 피제어 디바이스(1100,...,1500)의 정보를 수집하고 리스트를 작성한다(S130).
여기서, 피제어 디바이스들(1000,1100,...,1500)로부터 연결 통지 메세지를 수신하는 A 과정과 제어 포인트(2000)의 서치 메세지를 수신하는 B 과정은 상기 초기화 과정과 병렬적으로 수행될 수 있다.
도 9는 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 방법 중 피제어 디바이스가 다른 피제어 디바이스들이 전송한 연결 통지 메세지를 수신하는 과정을 설명한 도면으로서, 상기 도8의 단계 S120(또는, 도 8의 A 과정)에 해당된다.
상기 다른 피제어 디바이스들(1100,...,1500)이 상기 피제어 디바이스(1000)에게 연결 통지 메세지를 전송하고(S121), 이에 상기 피제어 디바이스(1000)는 다른 피제어 디바이스들(1100,...,1500)로부터 연결 통지 메세지가 수신되었는지 체크한다(S122). 만약, 다른 피제어 디바이스들(1100,...,1500)로부터 연결 통지 메세지가 수신되면, 상기 피제어 디바이스(1000)는 자신의 디바이스 관리 모듈(1021)에 상기 연결 통지 메세지를 전송한 디바이스들의 리스트를 추가시킨다(S123).
도 10은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 방법 중 피제어 디바이스가 제어 포인트로부터 전송된 서치 메세지를 수신하는 과정을 나타낸 도면으로서, 상기 도 8의 B과정에 해당된다.
먼저, 제어 포인트(2000)가 피제어 디바이스(1000)로 서치 메세지를 멀티캐스트하면(S151), 상기 피제어 디바이스(1000)는 제어 포인트(2000)로부터 서치 메세지가 수신되었는지 체크한다(S152). 만일, 상기 제어 포인트(2000)로부터 서치 메세지가 수신되면, 상기 피제어 디바이스(1000)는 수신된 서치 메세지가 요청하는 피제어 디바이스 타입이 자신의 디바이스 관리 모듈(1021)에 존재하는지를 검색한다(S153).
그 다음, 상기 피제어 디바이스(1000)는 자신의 상태가 진행(active)상태 인가를 판단하는데(S154), 여기서 자신의 상태가 진행 상태라 하는 것은 토큰을 가지고 있는 상태를 말한다.
만일, 자신의 상태가 진행 상태인 경우 피제어 디바이스(1000)는 상기 제어 포인트(2000)에게 해당 피제어 디바이스에 대한 정보 메세지를 전송한다(S155).
한편, 상기 피제어 디바이스(1000)의 디바이스 관리 모듈(1021)에 상기 제어 포인트(2000)가 찾는 피제어 디바이스가 존재하지 않을 경우, 또는 현재 상기 피제어 디바이스(1000)의 상태가 진행 상태가 아닐 경우에, 상기 피제어 디바이스(1000)는 제어 포인트(2000)에 응답 메세지를 전송할 수 없다.
도 11은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 방법 중 토큰 생성 여부를 판단하는 과정을 나타낸 도면으로서, 상기 초기화 과정에서 작성된 피제어 디바이스의 리스트 개수를 확인하고(S201), 상기 피제어 디바이스의 리스트 개수가 2개 이상일 경우 상기 피제어 디바이스(1000)는 자신의 상태 정보를 체크한다(S202,S203). 여기서, 상기 상태 정보란 초기(init) 상태, 진행(active) 상태 및 정지(stop) 상태로 이해될 수 있다.
만일, 상기 피제어 디바이스의 리스트 개수가 2개 이상이 안될 경우에는 피제어 디바이스의 리스트 개수가 2개 이상이 될 때까지 단계 S201 및 단계 S202를 계속 수행한다.
그 다음, 상기 자신의 상태 정보를 체크한 결과 상기 피제어 디바이스(1000)의 상태가 초기 상태일 경우, 상기 피제어 디바이스(1000)는 자신의 상태를 진행 상태로 변경하고 토큰을 생성 및 전달하는 과정을 수행한다(즉, L 과정)(S204).
만일, 상기 자신의 상태 정보를 체크한 결과 상기 피제어 디바이스(1000)의 상태가 정지 상태일 경우, 상기 피제어 디바이스(1000)는 웨이팅(waiting) 타이머를 동작시키고 상기 동작된 웨이팅 타이머의 재수행(예를 들어 3번) 여부를 판단한다(S205). 즉, 상기 피제어 디바이스(1000)의 웨이팅 타임을 수행시키고(S206), 이전 피제어 디바이스로부터 토큰과 피제어 디바이스의 리스트 전송 여부를 판단한다(S207). 여기서, 상기 이전 피제어 디바이스로부터 토큰과 피제어 디바이스의 리스트가 전송되었다면 토큰 전송 과정(즉, C 과정)으로 넘어간다.
한편, 상기 이전 피제어 디바이스로부터 토큰과 피제어 디바이스의 리스트가 전송되지 않았다면, 상기 설정된 피제어 디바이스(1000)의 웨이팅 타이머 시간이 종료되었는지를 판단하는데(S208), 여기서 상기 설정된 웨이팅 타이머 시간이 종료되지 않은 경우에는 웨이팅 타이머를 계속 동작 시키고, 상기 설정된 웨이팅 타이머 시간이 종료된 경우라면 상기 웨이팅 타이머가 수행된 횟수를 체크한 후 다시 웨이팅 타이머를 동작시킨다(S209). 여기서, 상기 웨이팅 타이머의 수행은 여러번(예를 들어 3번) 반복되며, 상기 설정된 횟수 만큼 웨이팅 타이머가 반복 수행되면, 피제어 디바이스(1000)는 자동으로 토큰을 생성한다(즉, L 과정 수행).
도 12는 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 방법 중 토큰의 생성 및 전달 과정을 나타낸 도면으로서, 먼저 피제어 디바이스(1000)가 토큰을 생성한 후(S301), 다음 피제어 디바이스가 연결 가능한지를 판단하고, 상기 다음 피제어 디바이스의 상태를 검사한다(S302,S303). 여기서, 상기 다음 피제어 디바이스와 연결될 수 없는 상태인 경우 해지 통지 메세지 전송 과정(즉, D 과정)을 수행하며, 상기 해지 통지 메세지 전송 과정은 하기 도 15에서 자세히 설명한다.
그 다음, 상기 검사 결과 상기 다음 피제어 디바이스의 상태가 정지 상태가 아닐 경우에는 네고시에이션 과정(즉, F 과정)을 수행한다. 상기 네고시에이션 과정은 하기 도 14에서 자세히 설명한다.
한편, 상기 검사 결과 다음 피제어 디바이스의 상태가 정지 상태일 경우(S304), 상기 피제어 디바이스(1000)는 토큰과 피제어 디바이스 리스트를 다음 피제어 디바이스에게 전달한다(S305). 여기서, 상기 리스트를 전달한 피제어 디바이스(1000)를 상기 피제어 디바이스 리스트의 마지막으로 수정되고, 상기 수정된 리스트의 첫번째에 기록된 피제어 디바이스를 상기 리스트를 전달할 다음 피제어 디바이스로 결정한다.
그 다음, 상기 토큰과 피제어 디바이스 리스트를 전송한 피제어 디바이스(1000)는 셀프 타이머를 동작시키고 상기 다음 피제어 디바이스로부터 응답(ACK) 메세지가 수신되는지를 판단한다(S307,S308).
만일, 상기 다음 피제어 디바이스로부터 응답 메세지가 온 경우, 상기 피제어 디바이스(1000)는 다음 피제어 디바이스에게 자신의 상태를 정지 상태로 변경하였다는 응답 메세지를 전송하고, 자신의 상태를 정지 상태로 변경한다(S311,S312)(즉, W 상태).
한편, 상기 다음 피제어 디바이스로부터 응답 메세지가 전송되지 않은 경우, 상기 피제어 디바이스(1000)는 셀프 타이머의 시간이 완료되었는지를 판단한다(S309). 여기서, 상기 셀프 타이머의 시간이 완료되지 않은 경우, 계속해서 셀프 타이머를 동작시키고, 만일 셀프 타이머의 시간이 완료된 경우에는 셀프 타이머의 재 수행 횟수를 체크한 후 다시 셀프 타이머를 동작 시킨다(S310). 여기서, 상기 셀프 타이머의 재 수행 횟수는 3회로 설정되어 있으며, 상기 설정된 횟수는 사용자의 임의에 따라 변경될 수 있다.
또한, 상기 셀프 타이머의 재 수행 횟수를 체크하여 재 수행 횟수가 3회 이상인 경우(S306), 상기 피제어 디바이스(1000)는 다음 피제어 디바이스에 대해 해지 통지 메세지 전송 과정(즉, D 과정)을 수행한다. 상기 해지 통지 메세지 전송 과정은 하기 도 15에서 자세히 설명한다.
도 13은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 방법 중 이전 피제어 디바이스가 피제어 디바이스에게 토큰을 전달 과정을 나타낸 도면으로서, 먼저 피제어 디바이스(1000)는 이전 피제어 디바이스가 전송한 토큰과 피제어 디바이스의 리스트를 수신한다(S401).
이 후, 상기 피제어 디바이스(1000)는 이전 피제어 디바이스에게 응답 메세지를 전송하고, 셀프 타이머를 작동 시킨다(S402,S404).
그 다음, 상기 피제어 디바이스(1000)는 이전 피제어 디바이스로부터 정지 상태로 변경되었다는 응답 메세지가 수신되었는지를 확인한다(S405).
상기 확인 결과 이전 피제어 디바이스로부터 응답 메세지가 수신된 경우, 상기 피제어 디바이스(1000)는 다음 피제어 디바이스에게 토큰과 리스트를 전송할 준비를 하고(즉, Q 과정), 만일 상기 확인 결과 이전 피제어 디바이스로부터 응답 메세지가 수신되지 않은 경우, 상기 피제어 디바이스(1000)는 셀프 타이머의 시간이 완료되었는지를 판단한다(S406). 여기서, 상기 셀프 타이머의 시간이 완료되지 않은 경우, 상기 피제어 디바이스(1000)는 계속해서 셀프 타이머를 동작시키고, 만일 상기 셀프 타이머의 시간이 완료된 경우에는 셀프 타이머의 재 수행 횟수를 체크한 후 다시 셀프 타이머를 동작 시킨다(S407). 여기서, 상기 셀프 타이머의 재 수행 횟수는 3회로 설정되어 있으며, 상기 설정된 횟수는 사용자의 임의에 따라 변경될 수 있다.
그 다음, 상기 셀프 타이머의 재 수행 횟수를 체크하여 재 수행 횟수가 3회 이상 반복된 경우(S403), 상기 피제어 디바이스(1000)는 해지 통지 메세지 전송 과정(즉, D 과정)을 수행한다. 상기 해지 통지 메세지 전송 과정은 하기 도 15에서 자세히 설명한다.
도 14는 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 방법 중 네고시에이션 과정을 나타낸 도면으로서, 상기 설명한 도 12의 단계 S304와 같이 설명한다.
상기 피제어 디바이스(1000)가 다음 피제어 디바이스에게 토큰과 피제어 디바이스의 리스트를 전송하기 위해서 상기 다음 피제어 디바이스의 상태를 검사하는데, 이때 상기 다음 피제어 디바이스의 상태가 정지 상태가 아닐 경우, 즉 다음 피제어 디바이스가 토큰을 가지고 있는 상태일 경우 네고시에이션 과정을 수행한다.
먼저, 상기 피제어 디바이스(1000)와 다음 피제어 디바이스의 디바이스 리스트 관리 모듈(1021)에 저장된 피제어 디바이스의 리스트 개수를 비교하는데, 만약 상기 비교결과 다음 피제어 디바이스에 저장된 피제어 디바이스의 리스트 개수가 큰 경우, 상기 피제어 디바이스(1000)는 자신의 상태를 정지 상태로 변경한다(S501,S502).
한편, 상기 피제어 디바이스의 리스트 개수 비교 결과 동일한 개수의 리스트를 가지고 있을 경우, 저장된 각 피제어 디바이스들의 네트워크 잔류시간의 합을 비교한다(S503). 여기서, 다음 피제어 디바이스에 저장된 피제어 디바이스의 리스트들의 잔류시간 합이 피제어 디바이스(1000)에 저장된 피제어 디바이스의 리스트들의 잔류시간의 합 보다 큰 경우, 상기 피제어 디바이스(1000)는 자신의 상태를 정지로 변경하고(S502), 만일 상기 다음 피제어 디바이스에 저장된 피제어 디바이스의 리스트들의 잔류시간 합이 상기 피제어 디바이스(1000)에 저장된 피제어 디바이스의 리스트들의 잔류시간의 합 보다 작은 경우, 다음 피제어 디바이스의 상태를 정지 상태로 변경한다(S504). 따라서, 네트워크 상에 토큰을 가진 피제어 디바이스가 하나만 존재하도록 한다.
도 15는 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 방법 중 해지 통지 메세지를 대신 전송해 주는 과정을 나타낸 도면으로서, 상기 피제어 디바이스가 해지 통지 메세지를 제어 포인트(2000)에게 대신 전송해 주는 경우는, 상기 피제어 디바이스(1000)가 다음 피제어 디바이스에게 토큰과 리스트를 전송하기 위해서 다음 피제어 디바이스의 상태를 확인한 결과 상기 다음 피제어 디바이스의 상태를 확인 할 수 없을 경우, 즉 다음 피제어 디바이스와 연결이 되지 않을 경우와, 상기 피제어 디바이스가 상기 다음 피제어 디바이스로부터 응답 메세지를 전송 받지 못한 경우, 즉 피제어 디바이스(1000)의 셀프 타이머가 종료된 후에도 다음 피제어 디바이스로부터 응답 메세지가 수신되지 않는 경우일 때 수행된다.
상기 피제어 디바이스(1000)는 상기 다음 피제어 디바이스와 연결이 되지 않거나 응답 메세지가 수신되지 않을 경우, 상기 다음 피제어 디바이스 대신 해지 통지 메세지를 멀티캐스팅 하고(S601), 자신의 디바이스 리스트 관리 모듈(1021)에 저장된 상기 다음 피제어 디바이스의 리스트를 삭제한다(S602). 여기서, 상기 피제어 디바이스(1000)가 상기 다음 피제어 디바이스 대신 해지 통지 메세지를 멀티캐스팅 해줌으로, 제어 포인트(2000)는 비정상적으로 해지된 특정 피제어 디바이스에 대한 정보도 알 수 있어 네트워크에 연결된 피제어 디바이스들의 정보를 정확하게 알 수 있고, 이로써 피제어 디바이스들을 효율적인 제어를 할 수 있다.
그 다음, 상기 피제어 디바이스(1000)는 자신의 디바이스 리스트 관리 모듈(1021)에 저장된 리스트의 개수를 확인하여 상기 저장된 리스트 개수가 1개이면, 상기 피제어 디바이스(1000)는 자기 자신의 연결 통지 메세지를 멀티캐스트 하고, 자신의 상태를 정지 상태로 변경한다(즉, E 상태)(S603,S607,S608). 만일, 상기 저장된 리스트 개수가 1개 이상이면 그 다음 피제어 디바이스에게 토큰과 리스트를 전송할 준비를 한다(즉, Q 과정).
한편, 상기 피제어 디바이스(1000)는 자신의 디바이스 리스트 관리 모듈(1021)에 저장된 리스트의 개수가 1개 이상인 경우에 있어서, 만일 네트워크 상에 피제어 디바이스가 단지 2개 존재할 경우에, 즉 피제어 디바이스(1000)와 다음 피제어 디바이스만 존재할 경우, 상기 피제어 디바이스(1000)와 다음 피제어 디바이스가 상호 토큰과 동일한 리스트를 계속 전송하는 불필요한 과정이 반복되게 된다.
따라서, 이와 같은 경우 상기 피제어 디바이스(1000)는 상기 다음 피제어 디바이스에게 정지 상태로 변경하라는 메세지를 전송하며, 이에 상기 다음 피제어 디바이스는 자신의 상태를 정지로 변경한다(S604 내지 S606).
이 후, 피제어 디바이스(1000)는 자신의 상태를 정지 상태로 변경하고 웨이팅 타이머를 동작 시킨다(즉, W 상태)(S605,S606).
도 16은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 네트워크 장치의 동작 과정 중 피제어 디바이스와 다른 피제어 디바이스의 연결 동작을 나타낸 도면으로서, 상기 도 8 및 도 9에서 설명한 초기화 과정 및 연결 통지 메세지 수신과정을 참조하여 설명한다.
먼저 피제어 디바이스(이하, 제1 피제어 디바이스라 함)가 네트워크에 연결되면, 자신을 알리는 메세지를 다른 피제어 디바이스(이하, 제2 피제어 디바이스라 함)에게 전송한다.
그 다음, 자신의 정보를 디바이스 리스트 관리 모듈(1021)에 저장하고, 상기 전송한 메세지에 응답하여 연결 통지 메세지를 전송한 제2 피제어 디바이스 정보를 상기 디바이스 리스트 관리 모듈(1021)에 저장함으로서, 상기 제1 피제어 디바이스는 네트워크 상에 존재하는 제2 피제어 디바이스의 정보를 제어 포인트(2000)에 알려 줄 수 있다.
도 17은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 네트워크 장치의 동작 과정 중 피제어 디바이스가 제어 포인트가 전송한 서치 메세지에 응답하는 동작을 나타낸 도면으로서, 상기 도 10에서 설명한 피제어 디바이스가 제어 포인트로부터 전송된 서치 메세지를 수신하는 과정을 참조하여 설명한다.
제어 포인트(2000)가 제2 피제어 디바이스를 찾는 서치 메세지를 멀티캐스트 하면, 네트워크 상에 존재하는 모든 피제어 디바이스(예를 들어, 제1, 제2, 제3 피제어 디바이스)들이 상기 제어 포인트(2000)의 멀티캐스트 메세지를 수신하여 상기 서치 메세지에서 요청한 서치 타입(Search Type)과 자신의 타입을 비교하여 해당될 경우 제어 포인트(2000)에게 응답하게 된다.
그러나, 네트워크가 불안정하여 상기 제어 포인트(2000)가 멀티캐스트한 메세지를 제3 피제어 디바이스(1200)만이 수신할 경우, 상기 제3 피제어 디바이스(1200)는 상기 제어 포인트(2000)가 찾는 제2 피제어 디바이스(1100)를 디바이스 리스트 관리 모듈(1221)에서 검색하여 상기 제어 포인트(2000)에게 대신 서치 메세지에 대한 응답 메세지를 구성하여 전송해 준다.
도 18은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 네트워크 장치의 동작 과정 중 토큰과 리스트를 전송하는 동작을 나타낸 도면으로서, 상기 도 12에서 설명한 토큰의 생성 및 전달 과정을 참조하여 설명한다.
먼저, 제1 피제어 디바이스(1000)가 토큰을 생성한 후, 제2 피제어 디바이스의 상태를 검사하고, 상기 제2 피제어 디바이스의 상태가 정지 상태일 경우, 자신의 디바이스 리스트 관리 모듈(1021)의 순서를 변경하여, 상기 제2 피제어 디바이스로 토큰과 리스트를 전송한다. 이 후, 상기 제1 피제어 디바이스(1000)는 셀프 타이머를 동작시키고, 상기 제2 피제어 디바이스로부터 응답을 기다린다.
상기 제2 피제어 디바이스는 상기 제1 피제어 디바이스(1000)로부터 전송받은 토큰과 리스트로 자신의 디바이스 리스트 관리 모듈(1121)을 업데이트 시킨 후, 상기 제1 피제어 디바이스(1000)에게 응답 메세지를 보내고, 셀프 타이머를 동작 시킨다.
이 후, 상기 제1 피제어 디바이스(1000)는 상기 제2 피제어 디바이스로부터 응답 메세지를 전송받고 셀프 타이머를 종료 시킨 후 웨이팅 타이머를 동작 시킨다.
그 다음, 상기 제1 피제어 디바이스(1000)가 상기 제2 피제어 디바이스에게 자신이 웨이팅 타이머로 변경된 사실을 전송하면, 상기 제2 피제어 디바이스는 상기 제1 피제어 디바이스(1000)로부터 응답 메세지를 전송받고 자신의 셀프 타이머를 종료시킨다.
도 19는 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 네트워크 장치의 동작 과정 중 피제어 디바이스 간의 네고시에이션 동작을 나타낸 도면으로서, 상기 도 14에서 설명한 네고시에이션 과정을 참조하여 설명한다.
도시된 바와 같이, 제3 피제어 디바이스(1200)가 제4 피제어 디바이스(1300)로 토큰 및 리스트를 전송하기 전에 상기 제4의 피제어 디바이스(1300)의 상태를 검사하는데, 상기 검사 결과 상기 제4 피제어 디바이스(1300)의 상태가 진행 상태일 경우 네고시에이션을 수행한다.
먼저, 상기 제3 피제어 디바이스(1200)의 디바이스 리스트 관리 모듈(1221)에 저장된 피제어 디바이스들의 리스트 개수와 상기 제4 피제어 디바이스(1300)의 디바이스 리스트 관리 모듈(1231)에 저장된 피제어 디바이스들의 리스트 개수를 비교하여 리스트 개수가 많은 피제어 디바이스가 이기게 된다. 즉, 상기 제3 피제어 디바이스(1200)가 가지고 있는 리스트 개수보다 상기 제4 피제어 디바이스(1300)가 가지고 있는 리스트 개수가 더 많기 때문에 상기 제3 피제어 디바이스(1200)의 상태는 정지 상태로 변경된다.
만약, 상기 제4 피제어 디바이스(1300)와 제5 피제어 디바이스(1400)에 저장된 리스트의 개수가 같을 경우, 상기 제4 피제어 디바이스(1300)에 저장된 각 피제어 디바이스들의 네트워크 잔류시간의 합과 상기 제5 피제어 디바이스(1400)에 저장된 각 피제어 디바이스들의 네트워크 잔류시간의 합을 비교하여 잔류 시간의 합이 큰 피제어 디바이스가 이기게 된다. 즉, 상기 제4 피제어 디바이스(1300)에 저장된 리스트의 잔류시간 합이 상기 제5 피제어 디바이스(1400)에 저장된 리스트 잔류시간 합보다 크므로, 상기 제5 피제어 디바이스(1400)의 상태가 정지 상태로 변경된다.
도 20은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 네트워크 장치의 동작 과정 중 피제어 디바이스의 해지 통지 메세지를 대신 전송하는 동작을 나타낸 도면으로서, 상기 도 15에서 설명한 통지 해지 메세지를 대신 전송해 주는 과정을 참조하여 설명한다.
도 20(a)는 제1 피제어 디바이스가 제2 피제어 디바이스를 찾을 수 없을 경우 제2 피제어 디바이스 대신 제1 피제어 디바이스가 해지 통지 메세지를 멀티캐스팅 하는 동작을 나타낸 도면이다.
먼저, 상기 제1 피제어 디바이스(1000)가 상기 제2 피제어 디바이스(1100)에게 토큰과 리스트를 전송하기 위해서 상기 제2 피제어 디바이스(1100)의 상태를 확인한다. 여기서, 상기 제2 피제어 디바이스(1100)의 상태가 확인되지 않을 경우, 즉 상기 제2 피제어 디바이스(1100)와 상기 제1 피제어 디바이스(1000)가 연결되어 있지 않은 경우, 상기 제1 피제어 디바이스(1000)는 자신의 디바이스 리스트 관리 모듈(1021)에 저장된 제2 피제어 디바이스의 리스트를 삭제한다.
그 다음, 상기 제1 피제어 디바이스(1000)는 상기 제2 피제어 디바이스(1100)에 대한 해지 통지 메세지를 멀티캐스팅 한다.
한편, 상기 제1 피제어 디바이스(1000)의 디바이스 리스트 관리 모듈(1021)에서 상기 제2 피제어 디바이스의 리스트가 삭제되면, 상기 제1 피제어 디바이스(1000)의 디바이스 리스트 관리 모듈(1021)에는 자신의 리스트만이 남아 있게 되므로, 상기 제1 피제어 디바이스(1000)는 자신의 연결 통지 메세지를 멀티캐스트한 후 자신의 상태를 정지 상태로 변경한다.
도 20(b)는 제1 피제어 디바이스가 제2 피제어 디바이스로부터 응답 메세지를 전송받지 못한 경우에 제2 피제어 디바이스 대신 제1 피제어 디바이스가 해지 통지 메세지를 멀티캐스팅 하는 동작을 나타낸 도면이다.
먼저, 상기 제1 피제어 디바이스(1000)가 토큰을 생성해서 상기 제2 피제어 디바이스(1100)에게 토큰과 리스트를 전송한 후 셀프 타이머를 작동시키고 상기 제2 피제어 디바이스(1100)의 응답을 기다린다. 이에, 상기 제2 피제어 디바이스(1100)는 상기 제1 피제어 디바이스(1000)에게 응답 메세지를 보내고 셀프 타이머를 동작 시킨다.
이 후, 상기 제1 피제어 디바이스(1000)는 상기 제2 피제어 디바이스(1100)의 응답을 수신하여 셀프 타이머를 종료 시킨다.
그 다음, 상기 제2 피제어 디바이스(1100)는 셀프 타이머를 동작시키면서 상기 제1 피제어 디바이스(1000)로부터 셀프 타이머를 종료했다는 응답을 기다리는데, 상기 제2 피제어 디바이스(1100)의 셀프 타이머가 종료될 때 까지 상기 제1 피제어 디바이스(1000)로부터 응답이 수신되지 않으면, 상기 제2 피제어 디바이스(1100)는 상기 제1 피제어 디바이스(1000)에 대한 해지 통지 메세지를 멀티캐스팅 한다.
그리고, 상기 제2 피제어 디바이스(1100)의 디바이스 리스트 관리 모듈(1121)에서 상기 제1 피제어 디바이스의 리스트를 삭제한다.
이로써, 상기 제2 피제어 디바이스(1100)의 디바이스 리스트 관리 모듈(1121)에는 자신의 리스트만이 남아 있게 되므로, 상기 제2 피제어 디바이스(1100)는 자신의 연결 통지 메세지를 멀티캐스트 한 후 자신의 상태를 정지 상태로 변경한다.
이상에서 본 발명에 대하여 상세히 기술하였지만, 본 발명이 속하는 기술 분야에 있어서 통상의 지식을 가진 사람이라면, 첨부된 청구범위에 정의된 본 발명의 정신 및 범위를 벗어나지 않으면서 본 발명을 여러 가지로 변형 또는 변경하여 실시할 수 있음은 자명하며, 따라서 본 발명의 실시예에 따른 단순한 변경은 본 발명의 기술을 벗어날 수 없을 것이다.
상기한 구성의 본 발명에 의하면, 네트워크 상에 연결된 피제어 디바이스가 다른 피제어 디바이스들의 리스트를 가지고 있어, 제어 포인트로부터 특정 피제어 디바이스를 찾는 메세지를 수신한 경우, 특정 피제어 디바이스가 상기 제어 포인트의 메세지를 수신하지 못하더라도 다른 피제어 디바이스가 제어 포인트에 대신 응답 메세지를 전송할 수 있어 네트워크 상태가 불안정하더라도 제어 포인트는 피제어 디바이스를 효율적으로 제어할 수 있는 잇점이 있다.
또한, 피제어 디바이스들이 피제어 디바이스의 리스트를 업데이트 하는 과정에서 특정 피제어 디바이스가 네트워크에 존재하지 않는 상태임을 발견하면 제어 포인트에게 그 사실을 알려 줌으로써, 상기 제어 포인트가 네트워크 상에 존재하지 않는 피제어 디바이스의 정보를 정확하게 파악할 수 있고, 이로써 피제어 디바이스를 효율적을 제어할 수 있도록 하는 잇점이 있다.
도 1은 종래의 홈 네트워크에 존재하는 UPnP 제어 디바이스를 제어하기 위한 동작 과정을 나타낸 도면.
도 2는 종래의 홈 네트워크에서 제어 포인트가 전송한 디바이스 패킷에 대해 피제어 디바이스가 전송한 응답 메세지를 제어 포인트가 전달 받지 못한 경우를 나타낸 도면.
도 3은 종래의 홈 네트워크에서 제어 포인트가 전송한 디바이스 패킷을 피제어 디바이스가 전송받지 못한 경우를 나타낸 도면.
도 4는 종래의 홈 네트워크에서 비정상적으로 종료된 피제어 디바이스의 상태를 제어 포인트가 알지 못하는 경우를 나타낸 도면.
도 5는 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 네트워크 장치의 전체 구성도를 개략적으로 나타낸 도면.
도 6은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 네트워크 장치의 피제어 디바이스 내부 구성도를 나타낸 도면.
도 7은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 방법의 전체 플로우챠트를 개략적으로 나타낸 도면.
도 8은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 방법 중 초기화 과정을 나타낸 도면.
도 9는 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 방법 중 피제어 디바이스가 다른 피제어 디바이스들이 전송한 연결 통지 메세지를 수신하는 과정을 설명한 도면.
도 10은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 방법 중 피제어 디바이스가 제어 포인트로부터 전송된 서치 메세지를 수신하는 과정을 나타낸 도면.
도 11은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 방법 중 토큰 생성 여부를 판단하는 과정을 나타낸 도면.
도 12는 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 방법 중 토큰의 생성 및 전달 과정을 나타낸 도면.
도 13은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 방법 중 이전 피제어 디바이스가 피제어 디바이스에게 토큰을 전달 과정을 나타낸 도면.
도 14는 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 방법 중 네고시에이션 과정을 나타낸 도면.
도 15는 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 방법 중 해지 통지 메세지를 대신 전송해 주는 과정을 나타낸 도면.
도 16은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 네트워크 장치의 동작 과정 중 피제어 디바이스와 다른 피제어 디바이스의 연결 동작을 나타낸 도면.
도 17은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 네트워크 장치의 동작 과정 중 피제어 디바이스가 제어 포인트가 전송한 서치 메세지에 응답하는 동작을 나타낸 도면.
도 18은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 네트워크 장치의 동작 과정 중 토큰과 리스트를 전송하는 동작을 나타낸 도면.
도 19는 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 네트워크 장치의 동작 과정 중 피제어 디바이스 간의 네고시에이션 동작을 나타낸 도면.
도 20은 본 발명에 따른 피제어 디바이스의 리스트를 제공하는 네트워크 장치의 동작 과정 중 피제어 디바이스의 해지 통지 메세지를 대신 전송하는 동작을 나타낸 도면.
< 도면의 주요부분에 대한 부호의 설명 >
1000 : 피제어 디바이스(CD) 2000 : 제어 포인트(CP)
1021 : 디바이스 리스트 관리 모듈 1022 : 네고시에이션 모듈
1023 : 통지/서치 메세지 수신 모듈 1024 : 토큰 관리 모듈
1025 : 타이머 관리 모듈 1026 : 제어 모듈

Claims (53)

  1. 네트워크 상에 연결된 피제어 디바이스들이 전송한 통지 메시지를 수신하는 통지/서치 메세지 수신 모듈;
    상기 네트워크 상에 연결된 피제어 디바이스들의 정보를 수집하여 상기 네트워크상에 연결된 모든 피제어 디바이스들의 서비스 정보의 리스트를 생성하고 관리하는 디바이스 리스트 관리 모듈; 및
    제어 포인트가 요청한 특정 피제어 디바이스의 서비스 정보를 상기 디바이스 리스트 관리 모듈에서 검색하여 전송하는 제어 모듈을 포함하는 것을 특징으로 하는 네트워크 장치.
  2. 제 1항에 있어서, 상기 통지/서치 메세지 수신 모듈은,
    제어 포인트로부터 전송되는 서치 메세지를 수신하는 것을 특징으로 하는 네트워크 장치.
  3. 제 1항에 있어서,
    토큰 생성 및 상기 생성된 토큰을 다른 피제어 디바이스로 전달/관리하는 토큰 관리 모듈을 더 포함하는 것을 특징으로 하는 네트워크 장치.
  4. 제 3항에 있어서, 상기 제어 모듈은,
    상기 피제어 디바이스에 상기 토큰 존재 여부를 확인하여 제어 포인트의 정보 요청 메세지에 응답하는 것을 특징으로 하는 네트워크 장치.
  5. 제 4항에 있어서, 상기 토큰 존재 여부의 확인은,
    상기 상태 정보를 이용하여 이루어지는 것을 특징으로 하는 네트워크 장치.
  6. 제 5항에 있어서, 상기 상태 정보는,
    초기 상태, 진행 상태 또는 정지 상태 중 어느 하나인 것을 특징으로 하는 네트워크 장치.
  7. 제 1항에 있어서,
    셀프 타이머를 생성하는 타이머 관리 모듈을 더 포함하는데, 상기 셀프 타이머는 상기 토큰 관리 모듈에서 관리되는 토큰이 다른 피제어 디바이스로 전달되는 경우 상기 토큰이 전달된 다른 피제어 디바이스의 응답 시간을 체크하는 것을 특징으로 하는 네트워크 장치.
  8. 제 7항에 있어서, 상기 타이머 관리 모듈은,
    웨이팅 타이머를 생성하는데, 상기 웨이팅 타이머는 상기 네트워크 상에 존재하는 피제어 디바이스에 대한 상기 토큰의 전체 순환 시간을 체크하는 것을 특징으로 하는 네트워크 장치.
  9. 제 1항에 있어서,
    상기 네트워크 상에 존재하는 피제어 디바이스들에서 다수의 토큰이 존재할 경우, 상기 토큰의 유효성을 조정하는 네고시에이션 모듈을 더 포함하는 것을 특징으로 하는 네트워크 장치.
  10. 제 9항에 있어서, 상기 네고시에이션 모듈은,
    각 피제어 디바이스의 상태 정보를 이용하여 다수의 토큰 존재 여부를 판단하는 것을 특징으로 하는 네트워크 장치.
  11. 제 9항에 있어서, 상기 네고시에이션 모듈은,
    상기 토큰을 가진 각각의 피제어 디바이스가 저장하고 있는 피제어 디바이스의 리스트 개수를 비교하여 토큰의 유효성을 조정하는 것을 특징으로 하는 네트워크 장치.
  12. 제 11항에 있어서, 상기 네고시에이션 모듈은,
    상기 비교결과 피제어 디바이스의 리스트 개수가 동일한 경우, 상기 리스트에 등록된 각 피제어 디바이스들의 네트워크 잔류시간의 합을 비교하여 토큰의 유효성을 조정하는 것을 특징으로 하는 네트워크 장치.
  13. 네트워크 상에 존재하는 디바이스들을 찾기 위해 디스커버리 패킷을 전송하고, 그에 따른 응답 메세지를 전송받아 상기 네트워크 상에 존재하는 디바이스들을 제어하는 제어 포인트; 및
    상기 네트워크 상에 연결된 다른 피제어 디바이스들이 전송한 통지 메시지를 수신하여, 상기 네트워크에 연결된 모든 피제어 디바이스들의 정보 리스트를 생성 및 관리하고, 상기 제어 포인트가 요청한 피제어 디바이스의 정보를 검색하여 전송해 주는 피제어 디바이스를 포함하는 것을 특징으로 하는 네트워크 시스템.
  14. 제 13항에 있어서, 상기 피제어 디바이스는,
    네트워크 상에 연결된 피제어 디바이스들이 전송한 통지 메시지를 수신하는 통지/서치 메세지 수신 모듈;
    상기 네트워크 상에 연결된 피제어 디바이스들의 정보를 수집하여 상기 네트워크상에 연결된 모든 피제어 디바이스들의 서비스 정보의 리스트를 생성하고 관리하는 디바이스 리스트 관리 모듈; 및
    제어 포인트가 요청한 특정 피제어 디바이스의 서비스 정보를 상기 디바이스 리스트 관리 모듈에서 검색하여 전송하는 제어 모듈을 포함하는 것을 특징으로 하는 네트워크 시스템.
  15. 제 14항에 있어서, 상기 통지/서치 메세지 수신 모듈은,
    제어 포인트로부터 전송되는 서치 메세지를 수신하는 것을 특징으로 하는 네트워크 시스템.
  16. 제 13항에 있어서, 상기 피제어 디바이스는,
    토큰 생성 및 상기 생성된 토큰을 다른 피제어 디바이스로 전달/관리하는 토큰 관리 모듈을 더 포함하는 것을 특징으로 하는 네트워크 시스템.
  17. 제 16항에 있어서, 상기 제어 모듈은,
    상기 피제어 디바이스에 상기 토큰 존재 여부를 확인하여 제어 포인트의 정보 요청 메세지에 응답하는 것을 특징으로 하는 네트워크 시스템.
  18. 제 17항에 있어서, 상기 토큰 존재 여부의 확인은,
    상기 상태 정보를 이용하여 이루어지는 것을 특징으로 하는 네트워크 시스템.
  19. 제 18항에 있어서, 상기 상태 정보는,
    초기 상태, 진행 상태 또는 정지 상태 중 어느 하나인 것을 특징으로 하는 네트워크 시스템.
  20. 제 16항에 있어서, 상기 피제어 디바이스는,
    셀프 타이머를 생성하는 타이머 관리 모듈을 더 포함하는데, 상기 셀프 타이머는 상기 토큰 관리 모듈에서 관리되는 토큰이 다른 피제어 디바이스로 전달될 경우, 상기 토큰이 전달된 다른 피제어 디바이스의 응답 시간을 체크하는 것을 특징으로 하는 네트워크 시스템.
  21. 제 20항에 있어서, 상기 타이머 관리 모듈은,
    웨이팅 타이머를 생성하는데, 상기 웨이팅 타이머는 상기 네트워크 상에 존재하는 피제어 디바이스에 대한 상기 토큰의 전체 순환 시간을 체크하는 것을 특징으로 하는 네트워크 시스템.
  22. 제 16항에 있어서, 상기 피제어 디바이스는,
    상기 네트워크 상에 존재하는 피제어 디바이스 내에 다수의 토큰이 존재할 경우, 상기 토큰의 유효성을 조정하는 네고시에이션 모듈을 더 포함하는 것을 특징으로 하는 네트워크 시스템.
  23. 제 22항에 있어서, 상기 네고시에이션 모듈은,
    각 피제어 디바이스의 상태 정보를 이용하여 다수의 토큰 존재 여부를 판단하는 것을 특징으로 하는 네트워크 시스템.
  24. 제 22항에 있어서, 상기 네고시에이션 모듈은,
    상기 토큰을 가진 피제어 디바이스가 저장하고 있는 피제어 디바이스의 리스트 개수를 비교하여 토큰의 유효성을 조정하는 것을 특징으로 하는 네트워크 시스템.
  25. 제 24항에 있어서,
    상기 비교결과 피제어 디바이스의 리스트 개수가 동일한 경우, 상기 리스트에 등록된 각 피제어 디바이스의 네트워크 잔류시간의 합을 비교하여 토큰의 유효성을 조정하는 것을 특징으로 하는 네트워크 시스템.
  26. 네트워크 상에 연결된 피제어 디바이스들의 통지 메세지를 수신하는 단계;
    상기 수신된 통지 메세지를 통해 네트워크 상에 연결된 피제어 디바이스들의 정보를 수집하고 리스트를 작성하는 단계;
    특정 피제어 디바이스의 정보 요청 메세지를 수신하는 단계;
    상기 정보 요청 메세지가 수신된 특정 피제어 디바이스의 정보를 상기 작성된 리스트에서 검색하는 단계; 및
    상기 검색된 특정 피제어 디바이스의 정보를 전송하는 단계를 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  27. 제 26항에 있어서,
    피제어 디바이스가 토큰을 생성하는 단계를 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  28. 제 27항에 있어서, 상기 정보 요청 메세지가 수신된 특정 피제어 디바이스의 정보를 상기 작성된 리스트에서 검색하는 단계는,
    상기 피제어 디바이스에 토큰의 존재 여부를 확인하여 토큰이 존재할 경우 수행되는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  29. 제 27항에 있어서,
    상기 토큰을 다른 피제어 디바이스로 전달하는 단계를 더 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  30. 제 29항에 있어서, 상기 토큰을 다른 피제어 디바이스로 전달하는 단계는,
    상기 피제어 디바이스가 디바이스 리스트 관리 모듈에 저장된 피제어 디바이스들의 리스트 개수를 확인하는 단계;
    상기 확인 결과 피제어 디바이스의 리스트 개수가 2개 이상일 경우 다른 피제어 디바이스로 토큰 및 저장된 피제어 디바이스 리스트를 전달하는 단계;
    상기 다른 피제어 디바이스로부터 응답 메세지 전송 여부를 체크하며, 셀프 타이머를 작동시키는 단계; 및
    상기 다른 피제어 디바이스로부터 응답 메세지가 전송되면 상기 셀프 타이머를 정지시키고, 웨이팅 타이머를 동작시키는 단계를 더 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  31. 제 30항에 있어서, 상기 저장된 피제어 디바이스 리스트를 전달하는 단계는,
    상기 리스트를 전달한 피제어 디바이스를 상기 피제어 디바이스의 리스트 마지막으로 수정하고, 상기 수정된 리스트의 첫번째에 기록된 피제어 디바이스를 상기 리스트를 전달할 피제어 디바이스로 결정하는 단계를 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  32. 제 30항에 있어서, 상기 셀프 타이머는,
    상기 토큰이 전달된 다른 피제어 디바이스의 응답 시간을 체크하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  33. 제 30항에 있어서, 상기 웨이팅 타이머는,
    상기 네트워크 상에 존재하는 피제어 디바이스에 대한 상기 토큰의 전체 순환 시간을 체크하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  34. 제 30항에 있어서,
    상기 웨이팅 타이머의 작동이 완료된 후에도 다른 피제어 디바이스로부터 토큰이 전송되지 않으면 자동으로 토큰을 생성하는 단계를 더 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  35. 제 30항에 있어서, 상기 다른 피제어 디바이스로부터 응답 메세지가 전송되지 않을 경우는,
    상기 피제어 디바이스가 디바이스 리스트 관리 모듈에 저장된 피제어 디바이스 리스트들 중에서 상기 응답 메세지를 전송하지 않은 피제어 디바이스의 리스트를 삭제하는 단계; 및
    상기 응답 메세지가 전송되지 않은 피제어 디바이스가 네트워크 상에 존재하지 않음을 제어 포인트에게 알려주는 단계를 더 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  36. 제 35항에 있어서, 상기 다른 피제어 디바이스로부터 응답 메세지가 전송되지 않을 경우는,
    상기 피제어 디바이스가 또 다른 피제어 디바이스에게 토큰 및 저장된 피제어 디바이스 리스트를 전달하는 단계를 더 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  37. 제 30항에 있어서,
    상기 네트워크 상에 존재하는 피제어 디바이스 내에 다수의 토큰이 존재할 경우 상기 토큰의 유효성을 조정하는 네고시에이션 단계를 더 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  38. 제 37항에 있어서, 상기 네고시에이션 단계는,
    상기 토큰을 가진 각각의 피제어 디바이스가 저장하고 있는 피제어 디바이스의 리스트 개수를 비교하여 토큰의 유효성을 조정하는 단계를 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  39. 제 38항에 있어서, 상기 네고시에이션 단계는,
    상기 비교결과 피제어 디바이스의 리스트 개수가 동일한 경우, 상기 리스트에 등록된 각 피제어 디바이스의 네트워크 잔류시간의 합을 비교하여 토큰의 유효성을 조정하는 단계를 더 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  40. 피제어 디바이스가 네트워크 상에 연결된 피제어 디바이스들의 통지 메세지를 수신하는 단계;
    상기 수신된 통지 메세지를 통해 네트워크 상에 연결된 피제어 디바이스들의 정보를 수집하고 리스트를 작성하는 단계;
    제어 포인트가 특정 피제어 디바이스의 정보를 요청하는 단계;
    상기 피제어 디바이스가 상기 요청받은 특정 피제어 디바이스의 정보를 상기 작성된 리스트에서 검색하는 단계; 및
    상기 검색된 특정 피제어 디바이스의 정보를 전송하는 단계를 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  41. 제 40항에 있어서,
    피제어 디바이스가 토큰을 생성하는 단계를 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  42. 제 41항에 있어서, 상기 피제어 디바이스가 상기 요청받은 특정 피제어 디바이스의 정보를 상기 작성된 리스트에서 검색하는 단계는,
    상기 피제어 디바이스에 토큰의 존재 여부를 확인하여 토큰이 존재할 경우, 수행하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  43. 제 41항에 있어서,
    상기 토큰을 다른 피제어 디바이스로 전달하는 단계를 더 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  44. 제 43항에 있어서, 상기 토큰을 다른 피제어 디바이스로 전달하는 단계는,
    피제어 디바이스가 디바이스 리스트 관리 모듈에 저장된 피제어 디바이스의 리스트 개수를 확인하는 단계;
    상기 확인 결과 피제어 디바이스의 리스트 개수가 2개 이상일 경우 다른 피제어 디바이스로 토큰 및 저장된 피제어 디바이스 리스트를 전달하는 단계;
    상기 다른 피제어 디바이스로부터 응답 메세지를 전송 여부를 체크하며, 셀프 타이머를 작동시키는 단계;
    상기 다른 피제어 디바이스로부터 응답 메세지가 전송되면 상기 셀프 타이머를 정지시키고, 웨이팅 타이머를 동작시키는 단계를 더 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  45. 제 44항에 있어서, 상기 저장된 피제어 디바이스 리스트를 전달하는 단계는,
    상기 리스트를 전달한 피제어 디바이스를 상기 피제어 디바이스의 리스트 마지막으로 수정하고, 상기 수정된 리스트의 첫번째에 기록된 피제어 디바이스를 상기 리스트를 전달할 피제어 디바이스로 결정하는 단계를 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  46. 제 44항에 있어서, 상기 셀프 타이머는,
    상기 토큰이 전달된 다른 피제어 디바이스의 응답 시간을 체크하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  47. 제 44항에 있어서, 상기 웨이팅 타이머는,
    상기 네트워크 상에 존재하는 피제어 디바이스에 대한 상기 토큰의 전체 순환 시간을 체크하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  48. 제 44항에 있어서,
    상기 웨이팅 타이머의 작동이 완료된 후에도 다른 피제어 디바이스로부터 토큰이 전송되지 않으면 자동으로 토큰을 생성하는 단계를 더 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  49. 제 44항에 있어서, 상기 다른 피제어 디바이스로부터 응답 메세지가 전송되지 않을 경우는,
    상기 피제어 디바이스가 디바이스 리스트 관리 모듈에 저장된 피제어 디바이스 리스트들 중에서 상기 응답 메세지를 전송하지 않은 피제어 디바이스의 리스트를 삭제하는 단계; 및
    상기 응답 메세지가 전송되지 않은 피제어 디바이스가 네트워크 상에 존재하지 않음을 제어 포인트에게 알려주는 단계를 더 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  50. 제 49항에 있어서, 상기 다른 피제어 디바이스로부터 응답 메세지가 전송되지 않을 경우는,
    상기 피제어 디바이스가 또 다른 피제어 디바이스에게 토큰 및 저장된 피제어 디바이스 리스트를 전달하는 단계를 더 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  51. 제 46항에 있어서,
    상기 네트워크 상에 존재하는 피제어 디바이스 내에 다수의 토큰이 존재할 경우, 상기 토큰의 유효성을 조정하는 네고시에이션 단계를 더 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  52. 제 51항에 있어서, 상기 네고시에이션 단계는,
    상기 토큰을 가진 각각의 피제어 디바이스가 저장하고 있는 피제어 디바이스의 리스트 개수를 비교하여 토큰의 유효성을 조정하는 단계를 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
  53. 제 52항에 있어서, 상기 네고시에이션 단계는,
    상기 비교결과 피제어 디바이스의 리스트 개수가 동일한 경우, 상기 리스트에 등록된 각 피제어 디바이스의 네트워크 잔류시간의 합을 비교하여 토큰의 유효성을 조정하는 단계를 더 포함하는 것을 특징으로 하는 피제어 디바이스의 리스트를 제공하는 방법.
KR10-2003-0024176A 2003-04-16 2003-04-16 피제어 디바이스의 리스트를 제공하는 네트워크 장치,시스템 및 방법 KR100493898B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR10-2003-0024176A KR100493898B1 (ko) 2003-04-16 2003-04-16 피제어 디바이스의 리스트를 제공하는 네트워크 장치,시스템 및 방법
JP2004090567A JP4597558B2 (ja) 2003-04-16 2004-03-25 被制御デバイスのリストを提供するネットワーク装置、システム及び方法
CNB2004100346561A CN100388704C (zh) 2003-04-16 2004-04-16 提供受控设备的列表的受控设备、网络***和方法
EP04252224.3A EP1469654B1 (en) 2003-04-16 2004-04-16 Network device, system and method for providing list of controlled devices
EP12168064.9A EP2490407B1 (en) 2003-04-16 2004-04-16 System and method for providing list of controlled devices
US10/825,668 US7693934B2 (en) 2003-04-16 2004-04-16 Network device, system and method for providing list of controlled devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0024176A KR100493898B1 (ko) 2003-04-16 2003-04-16 피제어 디바이스의 리스트를 제공하는 네트워크 장치,시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20040090224A KR20040090224A (ko) 2004-10-22
KR100493898B1 true KR100493898B1 (ko) 2005-06-10

Family

ID=32906610

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0024176A KR100493898B1 (ko) 2003-04-16 2003-04-16 피제어 디바이스의 리스트를 제공하는 네트워크 장치,시스템 및 방법

Country Status (5)

Country Link
US (1) US7693934B2 (ko)
EP (2) EP2490407B1 (ko)
JP (1) JP4597558B2 (ko)
KR (1) KR100493898B1 (ko)
CN (1) CN100388704C (ko)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7739375B2 (en) * 2004-05-10 2010-06-15 Sharp Labratories Of America, Inc. System and method for UPnP discovery advertisement byebye by proxy
KR100643282B1 (ko) * 2004-11-02 2006-11-10 삼성전자주식회사 UPnP 네트워크 상에서 특정 기기를 식별하는 방법,식별된 특정 기기를 통하여 컨텐츠를 재생하는 방법, 및장치
WO2006054223A1 (en) * 2004-11-18 2006-05-26 Koninklijke Philips Electronics N.V. Method and system for grouping networked devices together in groups
KR100636380B1 (ko) 2004-12-17 2006-10-19 한국전자통신연구원 이종의 홈네트워크 미들웨어상에 접속해 있는 홈디바이스들간의 상호 연동을 위한 홈네트워크 범용미들웨어 브릿지 시스템 및 그 방법
US20070005746A1 (en) * 2005-06-30 2007-01-04 Roe Bryan Y Enhanced network discovery service
KR100657326B1 (ko) 2005-07-07 2006-12-14 삼성전자주식회사 통신 장치의 전력관리 모드에 따라 네트워크애플리케이션을 작동시키는 방법 및 이를 위한 장치
DE102005033211A1 (de) 2005-07-13 2007-01-18 Deutsche Thomson-Brandt Gmbh Verfahren zur Feststellung der Aktivität eines Gerätes in einem Netzwerk verteilter Stationen sowie Netzwerkstation für die Durchführung des Verfahrens
US8705550B2 (en) * 2005-08-08 2014-04-22 Qualcomm Incorporated Device interface architecture and protocol
KR100736487B1 (ko) * 2005-09-30 2007-07-06 엘지전자 주식회사 홈 네트워크 시스템에서의 슬레이브 디바이스 번지변경방법
KR100677618B1 (ko) 2005-10-14 2007-02-02 삼성전자주식회사 UPnP 네트워크에서 비정상적으로 종료된 피제어장치의종료 메시지를 전송하기 위한 방법 및 장치
JP2007188183A (ja) * 2006-01-11 2007-07-26 Fujitsu Ltd 情報提供装置、情報提供プログラムおよび装置発見方法
US7649473B2 (en) * 2006-02-16 2010-01-19 Intelliserv, Inc. Physically segmented logical token network
WO2008005948A2 (en) * 2006-06-30 2008-01-10 Meebo, Inc. A method and system for determining and sharing a user's web presence
KR100823273B1 (ko) * 2006-06-30 2008-04-21 삼성전자주식회사 UPnP 컨텐트 디렉토리 서비스를 동기화하는 방법 및장치
JP4391536B2 (ja) 2007-02-27 2009-12-24 富士通株式会社 通信装置制御プログラム、通信装置
JP2008211608A (ja) * 2007-02-27 2008-09-11 Fujitsu Ltd 監視プログラム、監視装置、監視方法
KR101486771B1 (ko) * 2007-06-22 2015-01-29 삼성전자주식회사 제어 포인트의 연결 상태에 기초하여 UPnP 디바이스의자원을 관리하는 방법 및 장치
JP4959487B2 (ja) * 2007-09-21 2012-06-20 株式会社日立製作所 ネットワークデバイスのプログラム制御方法およびデバイス監視装置
US8223631B2 (en) * 2008-05-30 2012-07-17 At&T Intellectual Property I, L.P. Systems and methods to monitor and analyze customer equipment downtime in a voice over internet protocol (VoIP) service network
US8125999B2 (en) * 2008-05-30 2012-02-28 At&T Intellectual Property I, L.P. Systems and methods to minimize customer equipment downtime in a voice over internet protocol (VOIP) service network
KR101698354B1 (ko) 2010-07-16 2017-01-23 삼성전자주식회사 홈 네트워크에서 멀티캐스트 메시지를 이용하여 복수 개의 원격 사용자 인터페이스 서버들을 제어하기 위한 장치 및 방법
WO2012036508A2 (en) 2010-09-16 2012-03-22 Samsung Electronics Co., Ltd. System and method for managing a control device in a universal plug and play home network
CN103516566B (zh) * 2012-06-26 2017-02-01 华为技术有限公司 家庭网络设备实现业务控制的方法、装置及***
CN102769785A (zh) * 2012-06-29 2012-11-07 深圳市九洲电器有限公司 一种加载和输出服务信息的方法、机顶盒和***
CN104685834B (zh) * 2012-09-27 2018-02-06 京瓷株式会社 管理***、管理方法和设备
CN104079422A (zh) * 2013-03-28 2014-10-01 纬创资通股份有限公司 管理网络设备的方法
JP2015164031A (ja) * 2014-01-30 2015-09-10 株式会社リコー 画像表示システム
CN104301913A (zh) * 2014-10-10 2015-01-21 中国电子科技集团公司第四十一研究所 一种分布式的无线电监测网络及监测方法
CN106162819B (zh) * 2015-04-14 2019-08-06 宏碁股份有限公司 配对列表产生方法及电子装置
KR102426513B1 (ko) * 2015-12-14 2022-07-28 삼성전자주식회사 렌즈 어셈블리 및 그를 포함하는 전자 장치
CN110138735A (zh) * 2019-04-10 2019-08-16 视联动力信息技术股份有限公司 一种数据处理方法及装置
US11677624B2 (en) 2019-04-12 2023-06-13 Red Hat, Inc. Configuration of a server in view of a number of clients connected to the server
CN115811707A (zh) * 2021-09-16 2023-03-17 华为技术有限公司 一种设备发现方法、设备及***

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07262042A (ja) 1994-03-17 1995-10-13 Fujitsu Ltd プロセッサ障害検出方法
US5821937A (en) * 1996-02-23 1998-10-13 Netsuite Development, L.P. Computer method for updating a network design
US6021429A (en) * 1996-11-18 2000-02-01 Canon Information Systems, Inc. Network device which maintains a list of device addresses
US5905859A (en) * 1997-01-09 1999-05-18 International Business Machines Corporation Managed network device security method and apparatus
US6327613B1 (en) * 1998-01-12 2001-12-04 Adaptec, Inc. Method and apparatus for sharing peripheral devices over a network
WO1999044127A1 (en) * 1998-02-26 1999-09-02 Sun Microsystems, Inc. Dynamic lookup service in a distributed system
US6233611B1 (en) * 1998-05-08 2001-05-15 Sony Corporation Media manager for controlling autonomous media devices within a network environment and managing the flow and format of data between the devices
JP2000040039A (ja) 1998-07-23 2000-02-08 Nec Kofu Ltd デイジーチェーン障害回避方式
EP1022876B1 (en) 1999-01-25 2006-04-19 International Business Machines Corporation Service advertisements in wireless local networks
JP3823585B2 (ja) 1999-02-22 2006-09-20 株式会社日立製作所 機器ネットワーク接続方法およびルータ機器
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
US6845393B1 (en) * 1999-06-14 2005-01-18 Sun Microsystems, Inc. Lookup discovery service in a distributed system having a plurality of lookup services each with associated characteristics and services
JP4558139B2 (ja) 2000-05-02 2010-10-06 株式会社バッファロー ネットワーク管理装置
US7191236B2 (en) * 2000-05-02 2007-03-13 Canon Kabushiki Kaisha Transparent telecommunications system and apparatus
US7080078B1 (en) * 2000-05-09 2006-07-18 Sun Microsystems, Inc. Mechanism and apparatus for URI-addressable repositories of service advertisements and other content in a distributed computing environment
US7194689B2 (en) * 2000-08-22 2007-03-20 Microsoft Corporation Generic user control point tool for universal plug and play (UPnP) devices
US7194526B2 (en) * 2000-09-22 2007-03-20 Kyocera Corporation Network device management method, and network devices
US20020078161A1 (en) * 2000-12-19 2002-06-20 Philips Electronics North America Corporation UPnP enabling device for heterogeneous networks of slave devices
WO2002054697A1 (en) * 2000-12-28 2002-07-11 Abb Ab Method, system architecture and computer software for communication between devices
JP2002252882A (ja) 2001-02-23 2002-09-06 Sanyo Electric Co Ltd リモート操作システム
JP2002312258A (ja) 2001-04-09 2002-10-25 Ando Electric Co Ltd Usbモニタ方式
JP3826735B2 (ja) 2001-06-11 2006-09-27 株式会社日立製作所 分散システムによるサービス提供方法及び分散システムを構成する機器
US20030051009A1 (en) * 2001-09-10 2003-03-13 Shah Neelay N. Discovery and control of devices on an area network from the internet
US20030063608A1 (en) 2001-10-03 2003-04-03 Moonen Jan Renier Multicast discovery protocol uses tunneling of unicast message
US7146403B2 (en) * 2001-11-02 2006-12-05 Juniper Networks, Inc. Dual authentication of a requestor using a mail server and an authentication server
US7130582B2 (en) * 2002-11-19 2006-10-31 Timothy Barilovits Wireless communication system

Also Published As

Publication number Publication date
EP2490407B1 (en) 2014-02-12
KR20040090224A (ko) 2004-10-22
US7693934B2 (en) 2010-04-06
JP4597558B2 (ja) 2010-12-15
JP2004318852A (ja) 2004-11-11
EP1469654A2 (en) 2004-10-20
US20040208159A1 (en) 2004-10-21
EP1469654B1 (en) 2014-05-14
EP1469654A3 (en) 2012-06-20
EP2490407A1 (en) 2012-08-22
CN100388704C (zh) 2008-05-14
CN1538688A (zh) 2004-10-20

Similar Documents

Publication Publication Date Title
KR100493898B1 (ko) 피제어 디바이스의 리스트를 제공하는 네트워크 장치,시스템 및 방법
KR101055048B1 (ko) 정보 통신 시스템, 정보 처리 장치 및 방법, 및 기록 매체
US7292859B2 (en) Apparatus and method for managing device information through networks
JP4957225B2 (ja) 中継サーバおよび中継通信システム
US8060588B2 (en) Home network apparatus and system for cooperative work service and method thereof
EP2129082B1 (en) A method and assistance method and devices for configuring the nodes within an anycast group
EP2408146A2 (en) Zigbee/IP gateway
KR20030089126A (ko) 외부 인터넷에 의한 댁내망의 UPnP장치 관리제어 장치및 방법
US7337238B2 (en) Information processing apparatus, information processing method, and medium storing therein program for executing the method
US7761580B2 (en) System and method for determining a designated connection between components of computing devices
US8621063B2 (en) Method and apparatus for transmitting Byebye message when operation of controlled device in UPnP network is abnormally terminated
EP1478128B1 (en) Apparatus and method for connecting separate networks
JP2004194273A (ja) ホームネットワークシステムおよびそれにおける家電機器の追加/削除方法
WO2007039942A1 (ja) 端末装置及びサーバ装置及び指令装置
EP2895961B1 (en) Device discovery using broadcast technology
EP1684481B1 (en) System and Method for selecting an active connection
EP2160865B1 (en) Method and apparatus for managing resources of a universal plug and play device based on a connection status of a control point
KR100455123B1 (ko) UPnP 기반의 네트워크 시스템의 제어 메시지멀티캐스트 방법 및 장치
JP2002099473A (ja) ネットワーク上のサービス情報収集方法、ネットワーク上のサービス情報収集装置及びネットワーク上のサービス情報収集プログラムを格納した記録媒体
JP5718454B2 (ja) ホームネットワークに含まれる機器の機能を制御する方法
KR20040039043A (ko) UPnP 네트워크 시스템의 제어 메시지 전송 방법
JP2023007336A (ja) 制御装置、機器
KR100794041B1 (ko) 네트워크 시스템 및 운영방법
KR100794033B1 (ko) 네트워크 시스템 운영방법
KR20060090356A (ko) 리빙 네트워크 컨트롤 시스템에서의 통신 사이클 서비스를이용한 송수신 제어방법

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130429

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20140429

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20150429

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20160428

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20170427

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20180427

Year of fee payment: 14

LAPS Lapse due to unpaid annual fee