KR101058970B1 - 분산 네트워크 내에서 프로바이더의 온라인 상태를관리하기 위한 방법 및 시스템 - Google Patents

분산 네트워크 내에서 프로바이더의 온라인 상태를관리하기 위한 방법 및 시스템 Download PDF

Info

Publication number
KR101058970B1
KR101058970B1 KR1020087015256A KR20087015256A KR101058970B1 KR 101058970 B1 KR101058970 B1 KR 101058970B1 KR 1020087015256 A KR1020087015256 A KR 1020087015256A KR 20087015256 A KR20087015256 A KR 20087015256A KR 101058970 B1 KR101058970 B1 KR 101058970B1
Authority
KR
South Korea
Prior art keywords
provider
binding
requester
network
stay online
Prior art date
Application number
KR1020087015256A
Other languages
English (en)
Other versions
KR20080078014A (ko
Inventor
브라이언트 이스트햄
Original Assignee
파나소닉 전공 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 파나소닉 전공 주식회사 filed Critical 파나소닉 전공 주식회사
Publication of KR20080078014A publication Critical patent/KR20080078014A/ko
Application granted granted Critical
Publication of KR101058970B1 publication Critical patent/KR101058970B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • 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
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network

Abstract

시스템은 분산 네트워크 내에서 프로바이더 및 리퀘스터 사이의 통신을 관리한다. 리퀘스터는 컴퓨팅 장치 상에서 실행되고, 스테이 온라인 바인딩을 제공한다. 스테이 온라인 바인딩은 리퀘스터에 의해 요구된 바인딩을 식별한다. 프로바이더는 컴퓨팅 장치 상에서 실행되고, 바인딩을 제공한다. 프로바이더는 리퀘스터로부터 스테이 온라인 바인딩을 수신하며, 프로바이더가 스테이 온라인 바인딩을 인지하게 되었기 때문에, 바인딩을 계속해서 제공한다.
개재 액세스 노드 네트워크, 리퀘스터, 프로바이더

Description

분산 네트워크 내에서 프로바이더의 온라인 상태를 관리하기 위한 방법 및 시스템{SYSTEMS AND METHODS FOR MANAGING A PROVIDER'S ONLINE STATUS IN A DISTRIBUTED NETWORK}
본 발명은 일반적으로는 컴퓨터 및 컴퓨터 관련 기술에 관한 것이다. 더 구체적으로, 분산 네트워크 내에서 프로바이더의 온라인 상태를 관리하기 위한 방법 및 시스템에 관한 것이다.
컴퓨터 및 통신 기술은 빠른 속도로 계속 진보하고 있다. 실제로, 컴퓨터 및 통신 기술은 인간 생활의 다방면에 영향을 미친다. 예를 들어, 소비자들에 의해 사용되고 있는 많은 장치들은 그 내부에 소형 컴퓨터를 가지고 있다. 이러한 소형 컴퓨터는 크기 및 고도화(degree of sophistication)의 정도가 다르다. 이러한 소형 컴퓨터는 하나의 마이크로컨트롤러로부터 전기능 완비 컴퓨터 시스템까지 모든 것을 포함한다. 예를 들어, 이러한 소형 컴퓨터는 마이크로컨트롤러 등과 같은 원-칩(one-chip) 컴퓨터, 컨트롤러 등과 같은 원-보드(one-board)형 컴퓨터, IBM-PC 호환기(compotible) 등과 같은 통상의 데스크톱 컴퓨터 등일 수 있다.
컴퓨터는 통상 1개 이상의 프로세서를 그 중심부에 구비하고 있다. 프로세서는 보통 외부의 다른 입출력에 접속되어, 특정한 컴퓨터 또는 장치를 관리하는 기 능을 갖는다. 예를 들어, 온도 자동 조절기(thermostat) 내의 프로세서는, 온도 설정을 선택하는데 사용되는 보턴, 온도를 바꾸기 위한 난로(furnace) 또는 에어컨, 및 현재 온도를 디스플레이 상에서 읽거나 표시하거나 하기 위한 온도 센서와 접속될 수 있다.
많은 기기, 장치 등은 하나 또는 그 이상의 컴퓨터를 포함한다. 예를 들어, 온도 자동 조절기, 난로, 에어 컨디셔닝 시스템, 냉장고, 전화, 타이프라이터, 자동차, 자판기 및 많은 다른 형식의 산업 장비가, 통상 소형 컴퓨터, 또는 프로세서를 몇 개인가 내장하고 있다. 컴퓨터 소프트웨어는 이들 컴퓨터의 프로세서를 동작시키며, 어떤 특정한 임무(task)를 어떻게 실행하는가를 프로세서에 명령한다. 예를 들어, 온도 자동 조절기를 동작시키는 컴퓨터 소프트웨어는 특정 온도에 도달되면, 에어컨을 멈추거나, 또는 필요에 따라서 히터를 가동시킬 수도 있다.
이러한 종류의 소형 컴퓨터로서 장치, 기기, 도구 등의 일부를 이루는 것은 종종 임베디드 시스템으로 불리기도 한다. 이 "임베디드 시스템"이라는 용어는 보통, 더 큰 시스템의 일부를 이루는 컴퓨터 하드웨어 및 소프트웨어를 말한다. 임베디드 시스템은 키보드, 마우스, 및/또는 모니터와 같은 통상의 입출력 장치를 구비하지 않아도 된다. 보통은 각 임베디드 시스템의 중심부는 하나 또는 그 이상의 프로세서가 있다.
조명 시스템이 임베디드 시스템을 내장할 수도 있다. 임베디드 시스템은 조명 시스템의 효과를 감시하고 제어하는데 사용될 수도 있다. 예를 들어, 임베디드 시스템은 조명 시스템 내의 조명의 밝기를 감소시키기 위한 조절(control)을 행할 수도 있다. 또한, 임베디드 시스템은 이들 조명의 밝기를 증가시키기 위한 조절을 행할 수도 있다. 임베디드 시스템은 조명 시스템 내의 개별 라이트(individual lights) 사이에서 어떤 특정한 조명 패턴을 시작하는 제어를 행할 수도 있다. 임베디드 시스템은 조명 시스템 내의 개별 스위치에 접속될 수도 있다. 이러한 임베디드 시스템은 스위치로 하여금 개별 라이트 또는 조명 시스템 전체의 전원을 넣거나 끄도록 명령할 수도 있다. 마찬가지로, 임베디드 시스템은 조명 시스템 내의 개별 라이트에 접속될 수도 있다. 각각의 개별 라이트의 밝기 또는 전원 상태(power state)는 임베디드 시스템에 의해 제어될 수도 있다.
보안 시스템도 또한 임베디드 시스템을 내장할 수도 있다. 임베디드 시스템은 보안 시스템을 구성하는 개별 보안 센서(individual security sensor)를 제어하는데 사용될 수도 있다. 예를 들어, 임베디드 시스템은 각 보안 센서의 전원을 넣기 위한 제어를 자동적으로 행할 수도 있다. 임베디드 시스템은 각각의 개별 보안 센서에 접속될 수도 있다. 예를 들어, 임베디드 시스템은 동작 센서(motion sensor)에 접속될 수도 있다. 임베디드 시스템은 개별 동작 센서의 전원을 자동적으로 넣고, 만일 동작이 검출될 경우에, 동작 센서를 기동시킬 수도 있다. 동작 센서를 기동시키는 것은, 그 동작 센서 내에 위치한 LED의 전원을 넣고, 동작 센서의 출력 포트로부터 경보(alarm)를 출력하기 위한 명령을 내리는 것을 포함할 수도 있다. 임베디드 시스템은, 또한 도어(door)를 감시하는 센서에 접속될 수도 있다. 임베디드 시스템은 도어가 열리거나 닫힌 경우, 그 도어를 감시하는 센서에 명령을 내려서, 기동시킬 수도 있다. 마찬가지로, 임베디드 시스템은 윈도우(window)를 감 시하는 센세에 접속될 수도 있다. 이 임베디드 시스템은 윈도우가 열리거나 닫히면, 그 윈도우를 감시하는 센서를 기동시키는 명령을 내릴 수도 있다.
일부 임베디드 시스템은, 또한 휴대 전화와 같은 무선 제품을 제어하기 위해 사용될 수도 있다. 상기 임베디드 시스템은 휴대 전화의 LED 표시부의 전원을 넣도록 명령을 내릴 수도 있다. 상기 임베디드 시스템은 또한, 휴대 전화 내의 음성 스피커를 기동시켜서, 사용자에게 휴대 전화에 관련된 음성 통지를 제공하는 일이 있을 수도 있다.
가전 제품도 임베디드 시스템을 내장할 수도 있다. 가전 제품은 예를 들어, 스토브, 냉장고, 전자렌지 등과 같은 종래 부엌에서 일반적으로 사용되는 기기를 포함할 수도 있다. 가전 제품은 또한, 사용자의 건강 및 후생(well-being)에 관련된 기기들도 포함할 수도 있다. 예를 들어, 마사지 리클라이너(massage recliner)는 임베디드 시스템이 내장되어 있을 수도 있다. 임베디드 시스템은 사용자의 기호에 따라서, 의자의 등받이부를 자동적으로 눕히도록 명령을 내릴 수도 있다. 임베디드 시스템은 또한, 사용자의 기호에 따라서, 리클라이너 내부에서 진동을 일으키는 의자 내의 진동 콤포넌트(oscillating component)을 가동시키도록 명령을 내릴 수도 있다.
가정에 존재하는 다른 제품도 또한, 임베디드 시스템이 내장되어 있을 수도 있다. 예를 들어, 임베디드 시스템은 화장실에 임베디드 시스템을 이용하여, 저수조를 보충하는데 사용되는 물의 수위를 제어할 수도 있다. 젯트식 욕조에 임베디드 시스템을 이용하여, 공기의 유출량을 제어할 수도 있다.
이와 같이, 많은 다른 시스템, 자원, 제품 등에 임베디드 시스템이 감시하고 제어하기 위해서 사용된다. 인터넷 및 월드 와이드 웹의 성장으로, 인터넷에 접속되어, 원격적인 감시 및/또는 제어를 가능케 한 임베디드 시스템이 증가하고 있다. 다른 임베디드 시스템은 지역네트워크(local area network), 광역네트워크(wide area network) 등을 포함하는 컴퓨터 네트워크에 접속되기도 한다.
일부 임베디드 시스템은 컴퓨터 네트워크을 이용하여, 다른 컴퓨팅 장치에 데이터 및/또는 서비스를 제공할 수도 있다. 또는, 통상의 컴퓨터 혹은 컴퓨팅 장치가, 컴퓨터 네트워크를 이용하여, 데이터 및/또는 서비스를 다른 컴퓨팅 장치로 제공하고 있을 수도 있다. 때로는, 이들 데이터 및/또는 서비스의 프로바이더가, 상기 컴퓨터 네트워크에 차선책으로서 접속하는 일이 있을 수도 있다. 다른 상황에 있어서, 상기 네트워크 상에 상당히 많은 프로바이더가 존재하고 있을 수도 있다. 이러한 상황이, 다른 상황과 마찬가지로 네트워크를 통한 통신의 효율을 떨어뜨리고 있을 수도 있다. 컴퓨터 네트워크에 있어서의 전자 통신을 최적화하는 시스템 및 방법이 제공된다면, 이점(benefit)이 실현될 수도 있다.
본 명세서에 개시된 실시예는, 통상 분산 네트워크 내에서 프로바이더와 리퀘스터 사이의 통신을 관리하기 위한 시스템에 관한 것이다. 실시예에 따르면, 리퀘스터는 컴퓨팅 장치 상에서 실행된다. 리퀘스터는 스테이 온라인 바인딩(stay online binding)을 제공한다. 스테이 온라인 바인딩은 리퀘스터에 의해 요구된 적어도 하나의 바인딩을 식별한다. 리퀘스터는 스테이 온라인 바인딩을 제공한다. 또한 실시예에 따르면, 프로바이더는 컴퓨팅 장치 상에서 실행된다. 프로바이더는 리퀘스터로부터 스테이 온라인 바인딩을 수신하고, 프로바이더가 스테이 온라인 바인딩을 인지하게 되었기 때문에, 계속해서 상기 바인딩을 제공한다.
일부 실시예에 있어서, 시스템은 개재 액세스 노드(intervening access node) 네트워크를 포함한다. 시스템 내에서의 리퀘스터와 프로바이더 사이의 통신은 개재 액세스 노드 네트워크를 통하여 송신된다.
다른 실시예에 있어서, 프로바이더 컴퓨팅 장치는 메모리와 전자 통신하는 프로세서를 포함한다. 지시(instruction)는 방법을 실시하는 메모리에 저장된다. 프로바이더 컴퓨팅 장치는 프로바이더와 관련된 어떠한 스테이 온라인 바인딩에 대해서도 개재 액세스 노드 네트워크로부터의 통신을 감시한다. 프로바이더 컴퓨팅 장치는 또한, 개재 액세스 노드 네트워크를 통하여 통신하고 있는 프로바이더에 관련한 스테이 온라인 바인딩이 없다고 판단되는 경우, 바인딩의 제공을 중단한다.
다른 실시예에 있어서, 프로바이더 컴퓨팅 장치는 프로바이더와 관련된 어떠한 스테이 온라인 바인딩이라도 조회한다. 프로바이더는 또한, 바인딩을 재차 제공한다. 또 다른 실시예에 있어서, 프로바이더 컴퓨팅 장치는 무접속 프로토콜(connectionless protocol)을 사용하고 있는 프로바이더와 관련된 어떠한 스테이 온라인 바인딩이라도 조회한다.
또 다른 실시예에 있어서, 리퀘스터 컴퓨팅 장치는, 메모리와 통신하는 프로세서를 포함한다. 지시는 방법을 실시하는 메모리에 저장된다. 리퀘스터 컴퓨팅 장치는, 리퀘스터와 관련된 적어도 하나의 바인딩이 존재하는지를 판단한다. 리퀘스터 컴퓨팅 장치는 또한, 프로바이더로부터 데이터 또는 서비스 수신하기 위해서, 바인딩을 사용할 수 있다.
분산 네트워크 내에서 프로바이더 및 리퀘스터 사이의 통신을 관리하기 위한 방법도 또한 개시된다. 상기 방법은 스테이 온라인 바인딩을 리퀘스터에서 프로바이더로 제공한다. 상기 방법은, 프로바이더가 스테이 온라인 바인딩을 인지하게 되었기 때문에, 프로바이더에 의해 적어도 하나의 바인딩을 제공한다. 상기 방법은 프로바이더와 관련된 어떠한 스테이 온라인 바인딩이라도 존재하는지를 판단한다. 일부 실시예에 있어서, 리퀘스터 및 프로바이더 사이의 통신은 개재 액세스 노드 네트워크를 통하여 송신된다. 상기 방법은 프로바이더와 관련된 모든 스테이 온라인 바인딩을 위한 개재 액세스 노드 네트워크로부터의 통신을 감시한다. 상기 방법은 또한, 프로바이더와 관련된 스테이 온라인 바인딩의 존재를 감시하기 위한 무접속 프로토콜을 사용할 수 있다.
다른 실시예에 있어서, 상기 방법은 개재 액세스 노드 네트워크를 통하여 통신하고 있는 프로바이더에 관련한 스테이 온라인 바인딩이 없다고 판단되는 경우, 리퀘스터로의 바인딩 제공을 중단한다. 일부 실시예에 있어서, 상기 방법은 개재 액세스 노드 네트워크를 통하여 통신하고 있는 프로바이더에 관련한 스테이 온라인 바인딩이 없다고 판단되는 경우, 네트워크와의 접속을 끊음으로써 리퀘스터로의 바인딩 제공을 중단한다. 개시된 방법은 프로바이더와 관련된 스테이 온라인 바인딩에 대한 조회를 하기 전(前)에, 리퀘스터로의 바인딩 제공을 중단한 후, 미리 정해진 기간(period of time)을 대기할 수 있다. 프로바이더와 관련된 적어도 하나의 스테이 온라인 바인딩이 존재하는 곳에서는, 상기 방법에 따라서, 프로바이더가 다시 계속해서 바인딩을 제공한다. 상기 방법은 또한, 프로바이더로부터 데이터 또는 서비스를 수신하기 위해, 바인딩을 사용한다.
분산 네트워크 내에서 프로바이더의 통신을 관리하기 위한 방법을 실시하도록 구성된 컴퓨팅 장치도 개시된다. 컴퓨팅 장치는 메모리와 전자 통신하는 프로세서를 포함한다. 지시(instruction)는 방법을 실시하는 메모리에 저장된다. 상기 방법은 또한, 리퀘스터로부터 스테이 온라인 바인딩을 수신한다. 프로바이더가 스테이 온라인 바인딩을 인지하게 되었기 때문에, 상기 방법은 바인딩을 계속 제공한다.
분산 네트워크에 있어서, 클라이언트와 장치가 종종 접속될 수 있고, 접속이 끊어질 수 있는 곳에서는, 언제 접속을 확립하는지와 얼마나 오래 접속이 확립되어야만 하는지에 관련한 문제(issue)가 있을 수 있다. 일부 시스템에 있어서, 클라이언트는 적극적으로 접속을 요구할 수 있으며, 그 후에 클라이언트가 접속을 해제할 때까지 접속을 "소유"할 수 있다. 이러한 타입의 시스템은 직접 접속(direc connection)에 대해서는 제대로 작동하지만, 분산된 환경에서는 그렇지 못하다. 분산된 환경에 있어서, 클라이언트가 "소유한" 실제 접속은 개재 노드에 될 수 있고, 장치에는 될 수 없다. 이 경우에 있어서의 문제는, 어떻게 장치와 개재 노드사이의 접속이 확립되는지와 언제 이것이 닫힐 수 있는지를 포함한다.
이러한 문제의 해법은 "접속 카운트(connection count)"를 유지하고, "접속 카운트"가 제로(0)일 경우, 접속을 해제하는 것일 수 있다. 이것은 난해함을 나타낼 수 있는데, 그 이유는 시스템의 분산성(distributed nature)이 누가 카운트를 유지하는가를 판단하기 어렵게 만들 수 있기 때문이다. 카운트에 있어서 어떠한 에러가 종종 지속적 접속 및 분산 네트워트 상의 추가적 로드(additional load)를 야기한다.
상기에서 언급한 바와 같이, 관련 문제는 장치 측 상에 누가 접속을 확립하는지를 판단하게 된다. 상기에서 논의된 "클라이언트로부터의 직접 접속"의 경우에 있어서, 장치는 접속을 절대로 열지(open) 않을 수 있다. 분산된 경우에 있어서, 장치가 접속을 열어야만 하는지를 판단하는 것이 어려울 수도 있다.
일단 클라이언트와 장치가 접속되면, 장치가 제공할 수 있는 다수의 서비스에 관련된 더한 문제(further problems) 가 있을 수 있다. 예를 들어, 접속된 클라이언트는 제공될 수 있는 모든 서비스를 요구하지 않을 수도 있으나, 어느 서비스가 흥미로운지를 식별하는 직접적 방법(direct method)이 결여될 수도 있다. 접속이 존재해야만 하는지를 아는 것에 관련된 모든 문제는, 어느 서비스가 제공되어야만 하는가라는 문제와 관련이 있다.
장치가 접속을 시작하도록 하는 것이 이득(benefit)일 수 있다. 하나의 이득은, 만일 장치가 접속을 적절하게 닫지 않고 끊는다면, 올바르게 "클리닝 업(cleaning up)"되는 장치를 포함할 수 있다. 또 다른 이득은, 이러한 해법이 어느 접속이 존재해야만 하는지에 대한 집중된 지식(centralized knowledge) 없이, 분산 환경 내에서 작동할 수 있는 것을 포함한다.
본 발명의 범례적 실시예가, 이하의 설명과 그에 첨부된 청구항을 첨부 도면에 관련시켜 참조함으로써, 보다 명백해질 것이다. 이들 도면은, 범례적 실시예만을 도면화하고 있으므로, 발명의 범위 제한으로 생각되어서는 안된다는 이해를 바탕으로, 본 발명의 범례적 실시예를 더 특정하고 상술하는 설명을, 다음의 첨부 도면을 이용하여 행하지만, 그 도면 중;
도 1은, 컴퓨터 네트워크 내에 2개의 개재 액세스 노드를 예시하는 네트워크 블록도이다.
도 2는, 컴퓨터 내트워크 내에 수개(several)의 개재 액세스 노드를 예시하는 네트워크 블록도이다.
도 3은, 리퀘스터 및 프로바이더를 갖는 개재 액세스 노드 네트워크의 일실시예를 나타내는 블록도이다.
도 4는, 네트워크 내에 프로바이터와 리퀘스터 사이의 통신을 확립하기(establishing) 위한 방법을 예시하는 타이밍도이다.
도 5는, 개재 액세스 노드의 일실시예를 나타내는 블록도이다.
도 6은, 하나 이상의 개재 액세스 노드 및 두 개의 프로바이더를 포함하는 개재 액세스 노드 네트워크를 나타내는 블록도이다.
도 7은, 두 개의 리퀘스트 신호 및 두개의 스테이 온라인 바인딩을 송출하는(sending out) 리퀘스터를 나타내는 블록도이다.
도 8은, 두 개의 바인딩 및 두 개의 스테이 온라인 리퀘스트 신호를 송출하는 프로바이더를 나타내는 블록도이다.
도 9는, 개재 액세스 노드 네트워크에 접속될 수 있는 프로바이더 및 두 개의 리퀘스터를 나타내는 블록도이다.
도 10은 네트워크와 통신하는 프로바이더의 방법의 실시예를 나타내는 흐름도이다.
도 11은, 네트워크 내에 프로바이더와의 통신을 확립하는 리퀘스터의 방법의 실시예를 나타내는 흐름도이다.
도 12는, 임베디드 프로바이더 또는 임베디드 리퀘스터로서 사용될 수 있는 임베디드 장치의 실시예에 사용될 수 있는 하드웨어 콤포넌트를 나타내는 블록도이다.
도 13은, 실시될 수 있는 본 시스템 및 방법에 있어서의 시스템의 일실시예를 예시하는 도이다.
도 14는 실시될 수 있는 본 발명의 본 시스템 및 방법에 있어서의 시스템의 추가 일실시예이다.
도 15는, 홈 시스템의 일실시예를 예시하는 블록도이다.
여기서, 각 도면을 참조하여 본 발명의 다양한 실시예를 설명한다. 도면 중, 같은 참조 번호는 동일, 혹은 기능적으로 유사한 요소를 나타낸다. 본 발명의 각 실시예는, 본 명세서에서 개괄적으로 설명하고, 각각의 도면에 예시하고 있는 바와 같이, 다양한 다른 구성으로 배열되어 디자인된 것이다. 따라서, 이하에 이들 도면으로 대표되는 본 발명의 다수의 범례적 실시예를 더 상세히 설명하지만, 그 설명 은, 단순히 본 발명의 각 실시예를 나타내는 것이며, 청구항에 기재한 발명의 범위를 한정하는 것을 의도하고 있지 않다.
본 명세서에서는 "범례적(exemplary)"이라는 단어를 전적으로, "용례(example), 사례(instance), 또는 예증(illustration)으로서"라는 의미로 사용한다. 본 명세서에서 "범례적"이라고 설명된 실시예를, 반드시 다른 실시예보다 유리 혹은 가장 적합한 것으로 해석해야만 하는 것은 아니다. 각 실시예의 다양한 양태가 도면에 나타난다. 그러나, 특별히 나타내지 않는 한, 이들 도면은 반드시 스케일(scale)대로 그려지지는 않는다.
본 명세서에 개시되는 각 실시예 특징의 다수는, 컴퓨터 소프트웨어이거나 전자적 하드웨어, 혹은 양자의 조합하여 실현해도 좋다. 이 하드웨어와 소프트웨어의 호환성을 명료하게 나타내기 위해서, 다양한 콤포넌트에 대하여, 그들의 기능성을 개괄적으로 설명한다. 이러한 기능성을 하드웨어 또는 소프트웨어의 어느 쪽으로 실현할지는, 특정 용도 및 시스템 전체에 과해진 설계 조건에 의존한다. 숙련된 기술자(skilled artisans)라면, 그 설명된 기능성을 특정한 용도마다 몇 개의 변형된 방법으로 실현가능 할지도 모르지만, 이러한 실현 수법을 본 발명의 범위로부터 이탈한 것으로 해석해서는 안 된다.
상기 설명된 기능성을 컴퓨터 소프트웨어로써 실현하는 경우, 이러한 소프트웨어는, 기억 장치 내에 놓이고, 또는/및 시스템 버스 또는 네트워크를 통하여 전송된 컴퓨터 명령 또는 컴퓨터 실행가능한 코드라면, 어떠한 종류의 것을 포함해도 좋다. 본 명세서에서 설명된 콤포넌트에 관계된 기능성을 실현하는 소프트웨어는 단일 명령, 또는 다수의 명령을 포함해도 좋으며, 수 개의 다른 코드 세그먼트에 걸쳐서 분포하여도, 다른 프로그램 사이에 분포하여도, 수개의 기억 장치를 횡단하여 분포하여도 좋다.
도 1은 상기 네트워크(100) 안에 2개의 개재 액세스 노드를 예시하는 네트워크 블록도이다. 프로바이더(102)가 네트워크(100)와 전자 통신하고 있다. 도 1의 네트워크 실시예(100)는, 이 네트워크(100)와 전자 통신하고 있는 2개의 리퀘스터(104)를 포함한다. 상기 2개의 개재 액세스 노드(106)도 네트워크(100) 상에 있다. 네트워크(100) 상에 노드가 더 있어도 좋다.
개재 액세스 노드(106)는, 네트워크(100)에 특징과 서비스를 제공하고 있는 네트워크이다. 개재 액세스 노드(106)는 다양한 방법으로 사용되고 있을 수도 있다. 예를 들어, 개재 액세스 노드(106)는, 네트워크에 존재하여, 네트워크(100) 상의 컴퓨터, 어플리케이션 및/또는 대상에 서비스를 제공할 수도 있다. 개재 액세스 노드(106)는 프로토콜 컨버터를 주기 위해서도 사용될 수도 있다. 개재 액세스 노드(106)는 임베드될 수도 있으며, 또한 그것(106)은 기업 거래를 취급하기에 충분한 크기일 수도 있다.
개재 액세스 노드(106)가 포함되어도 좋은 하나의 특징은 대상의 세련화(refinement)에 관한 것이다. 대상의 세련화는, 개재 액세스 노드(106) 자신이, 대상을 대신하여, 동일한 인터페이스를 다른 방법으로 실현하는 상황에 참조된다. 이로 인해, 그 중에서도, 인터페이스를 실현할 시의 여러 문제가 그 인터페이스의 실제의 엔드 프로바이더(end provider)를 바꾸는 일 없이 수정가능하게 된다.
개재 액세스 노드(106)의 다른 특징에 대상 확장(object augmentation)이라는 특징이 있다. 대상 확장의 경우에는 엔드 프로바이더가 서포트(support)하고 있지 않은 대상에 대하여, 그 개재 액세스 노드(106)가 새로운 인터페이스를 부가한다.
현재의 양식(current design)에 있어서는, 개재 액세스 노드(106)가 고객과 장치 사이를 구별하지 않으며, 추가된 서비스가 어떠한 것이더라도 (허가되어) 접속된 실체(entity) 또는 노드라면 어디에서도 이용이 가능하다.
도 1에 나타낸 네트워크는 웹서비스의 많은 특징을 계승하여도 좋다 .웹서비스는, 웹프로토콜, 통상, HTTP 또는 SOAP를 이용하여 액세스된다. 아키텍쳐(architecture)는 피어-투-피어 체계(peer-to-peer paradigm)에서의 네트워크 구축에 근거한다.
서로 통신하고 있는 다수의 개재 액세스 노드(106)가 개재 액세스 노드 네트워크(110)를 형성한다. 리퀘스터(104) 및/또는 프로바이더(102)에는, 이 개재 액세스 노드 네트워크(110) 중의 하나 이상의 개재 액세스 노드(106)가 단일 개재 액세스 노드(106)로 보인다. 개재 액세스 노드 네트워크(110)에 포함되는 개수(個數) 또는 크기는, 프로바이더(102) 및/또는 리퀘스터(104)에 대하여 분명하다(transparent).
프로바이더(102)는, 서비스(108)의 근원(source)이 되는 네트워크(100) 상의 노드이다. 리퀘스터(104)는, 그 서비스(108)의 사용자가 되는 네트워크(100) 상의 노드이다. 리퀘스터(104)는, 노드 상에 실현된 소프트웨어 실체(entity)이며, 서비 스(108)를 직접 찾아내어, 그것을 제어하고, 또는 그것과 상호작용할 수도 있다.
서비스(108)는, 컴퓨팅 장치에 의해 제공될 수도 있는 어떠한 종류의 서비스여도 좋다. 가능한 서비스(108)의 예에는, 위치로부터 온도 데이터의 제공, 관찰 데이터의 제공, 날씨 정보의 제공, 오디오 스트림의 제공, 비데오 스트림의 제공 등이 포함되는 일도 있다.
서비스(108)는, 하나 이상의 바인딩(112)을 통하여 액세스된다. 바인딩(112)에는, 대상의 식별자(identifier)(114) 및 인터페이스 식별자(116)가 포함된다. 통상은, 대상(114)과 인터페이스(116)가 쌍으로 되어 있다. 프로바이더(102)는 복수의 바인딩(112)을 제공할 수 있다. 다수의 프로바이더가 동일 서비스(108), 바인딩(112), 대상(114), 혹은 인터페이스(116)를 제공할 수 있는 상황이 있을 수 있다.
프로바이더(102)는 임베디드 프로바이더여도 좋다. 임베디드 프로바이더는, 임베디드 장치 상에 실현된 프로바이더(102)이다. 임베디드 프로바이더는 통상의 데스크탑 컴퓨터에 관계된 콤포넌트와 동일한 것을 포함하는 타입의 컴퓨팅 장치이나, 모든 것이 동일하지는 않다. 예를 들어, 임베디드 장치에 따라서는, 모니터가 포함되지 않으며, 다른 것에서는, 키보드 혹은 마우스가 포함되지 않고, 또한 임베디드 장치에 따라서는, 모니터 또는 키보드/마우스의 어느 한쪽이 포함되는 것도 아니다. 많은 임베디드 장치는, 마이크로 컨트롤러에 기초한(microcontroller-based) 장치로 되어 있다. 즉, 그 임베디드 장치의 중앙 처리부는 마이크로 컨트롤러이다.
리퀘스터 및 프로바이더의 임무는 장치 및 개재 액세스 노드(106)에 접속된 소프트웨어 노드에 의해 부여될 수 있다. 더군다나, 개재 액세스 노드(106)는 리퀘스터 및/또는 프로바이더일 수 있다. 예를 들어, 개재 액세스 노드(106) 사이의 통신을 셋업할 경우, 개재 액세스 노드(106)는 리퀘스터/프로바이더일 수 있다. 개재 액세스 노드(106)가 프로바이더에 대한 정보를 요구할 경우, 개재 액세스 노드(106)가 또 다른 개재 액세스 노드(106)에 접속될 경우에, 개재 액세스 노드(106)는 리퀘스터로서 역할한다. 개재 액세스 노드(106)가 다른 프로바이더에 대한 정보를 다른 개재 액세스 노드(106)에 제공할 경우, 개재 액세스 노드(106)는 프로바이더로서 역할한다.
본 명세서에서 이용되는 용어 "네트워크"는, 일련의 노드가 통신로에 의해 접속된 시스템에 참조된다. 노드는, 다른 노드와 통신하는 물리적인 컴퓨팅 장치이다. 노드의 특정한 움직임(specific behavior)은, 이것이 실행하는 소프트웨어 또는 어플리케이션에 의해 결정된다. 네트워크의 노드로 작동하고 있는 어플리케이션은, 소프트웨어 모듈을 통하여, 서로 통신한다. 소프트웨어 모듈은, 네트워크 상에서의 데이터 송신 방법을 형식화한 규칙인 프로토콜을 실현한다. 프로토콜에 따라서는, 데이터 전송의 타이밍, 시퀀싱(sequencing), 그리고 에러 체크를 처리한다. 다른 것은, 이들 노드로 변환되는 지령(command) 및 응답과 데이터의 포맷화의 방법을 더 처리한다. 일련의(a set of) 서로 협동하는 프로토콜을 프로토콜 스택(stack)이라 부르며, 각 프로토콜은, 그 스택 내에서 다른 레이어(layer) 상에 구축된 레이어로서 동작한다. 프로토콜 스택의 상부 레이어(top layer)는 어플리케 이션에 사용되고, 중간 레이어(middle layer)는 노드 사이에서 데이터 그룹(패킷 및 프래임(packets and frames))의 전송을 처리하며, 하부 레이어(bottom layer)는 데이터를 전송하는 하드웨어의 네트워크 접속에 직접관여한다.
물리적인 네트워크는, 어떤 종류의 물리적 매체(예를 들어, 전선, 광화이버, 공기)에 의해 접속된 노드로 이루어진다. 이 물리적인 접속은, 때때로 링크로서 참조될 수도 있다. 물리적 네트워크는, 2개의 노드에 한정되고, 포인트-투-포인트(point-to-point)로서 참조될 수도 있으며, 한편 물리적 네트워크는, 3개 이상의 노드를 서포트하고, 다중 액세스로서 참조될 수도 있다. 다중 액세스 네트워크는 그 위의 각 노드에 물리적 어드레스를 갖게 하고, 이것을 이용하여, 그 네트워크 상의 다른 노드를 구별한다.
물리적 네트워크 상에 논리적 네트워크를 얹어 놓아(superimpose), 노드의 그룹을 고유하게 특정해도 좋다. 논리적 네트워크는, 그 내부의 각 노드에 논리적 어드래스를 갖게 하고, 그것을 프로토콜에 의해 그 노드의 물리적 어드래스로 맵핑한다. 서브네트워크, 도는 서브네트는 네트워크의 물리적 또는 논리적으로 독립적인 부분이며, 서브네트 번호에 의해 구별된다.
대부분의 프로토콜은 논리적 네트워크를 처리한다, 이것은 물리적 네트워크에 관한 사정의 대부분이 이미 명료히 정의하여 실현되어 있고, 새롭게 물리적 레이어를 정의할 필요가 없기 때문이다. 논리적 네트워크는, 물리적 네트워크로부터 절연되어 있다는 이점도 있으므로, 보다 범용적(汎用的)이다. 예를 들어, TCP/IP는, 논리적 네트워크(IP)의 상부(top) 상에 정의된다. IP는 많은 물리적 네트워크 (이더넷(ethernet), 직렬식, 무선식 등) 상에서 동작가능하다. 그 때문에, TCP/IP는, 어떤 특정한 논리적 네트워크에 관해서만 정의되는 것보다, 더욱더 일반적인 해결 수단이 된다.
개재 액세스 노드(106)를 얼마든지 네트워크(100)에 이용하여도 좋다. 도 2는 네트워크(200)을 예시하고 있으며, 이것은 도시된 바와 같이 개재 액세스 노드(206)을 포함한다. 3개의 리퀘스터(204, 205)가, 이들 개재 액세스 노드(206)와 전자 통신하고 있다. 도 2에 도시된 네트워크의 실시예(200)에서는, 프로바이더(202, 205, 206e)에 의해 서비스(208, 228, 248)이 제공되며, 이들을 상기 3개의 리퀘스터(204, 205) 전부가 요구하고 있다. 각 서비스(208, 228, 248)로부터의 데이터는 개재 액세스 노드 네트워크(210)를 통하여 보내진다.
도 2의 개재 액세스 노드 네트워크(210)은 도 1의 개재 액세스 노드 네트워크(110)와 동일하게 동작한다. 통상 작동에서는, 리퀘스터(104, 204, 205) 및 프로바이더(102, 202, 205, 206e)가 도 1의 개재 액세스 노드 네트워크(110)와 도 2의 개재 액세스 노드 네트워크(210)의 사이에서 차이를 나타내는 일은 없다. 도 2는, 노드가 리퀘스터/프로바이더(205)에 의해 예시되는 바와 같이, 리퀘스터 및 프로바이더 쌍방의 역할을 수행하여도 좋다는 것을 예시하고 있기도 하다. 이 리퀘스터/프로바이더(205)는, 서비스(208)과 바인딩(232)를 제공한다. 도 2는, 서비스/바인딩의 제공이 개재 액세스 노드(206e)에 의해 제공되어도 좋다는 것을 예시하고 있기도 하다.
상기에서 나타낸 바와 같이, 네트워크에서는 많은 서비스와 많은 바인딩을 이용할 수 있을지도 모른다. 이들 서비스를 언제나 제공해 두는 것이 아니라, "신호화(signaled)" 해서 바인딩을 제공할 수 있다면, 상당히 유익할 것이다. 추가적으로, 프로바이더(102)와 개재 액세스 노드 네트워크(110) 사이에 사용된 접속이 일시적인 경우, 확립된 접속이 더 이상 필요하지 않거나, 또는 접속이 원하는 대로 확립되지 않았을 때, 프로바이더(102)에 신호를 보내는 방법을 제공하는 것이 유익할 수 있다. 본 명세서에 개시된 시스템 및 방법에 의하면, 네트워크를 통하여 요구를 효율적으로 전달할 수 있고, 그 접속을 쌍방의 루프(loop)로 행할 수 있으며, 또한 다수의 무관심 프로바이더(접속될 수 없거나, 바인딩(112)을 현재는 제공하고 있지 않을 수 있는 프로바이더를 의미)에 대응할 수 있다.
상기 개재 액세스 노드(106, 206)는, 루프를 포함하는 임의의 방법으로 접속해도 좋다. 도 1 및 2에서는, 리퀘스터(104, 204, 205) 및 프로바이더(102, 202, 205, 206e)를 예시했다. 리퀘스터 및 프로바이더가 분리한 노드여도, 개재 액세스 노드 상에 병존하여도 좋다. 개재 액세스 노드 네트워크(110)에 의해 사용된 방법은, 리퀘스터(104, 204, 205)가 프로바이더(102, 202, 205, 206e)에 의해 바인딩(112)의 추가 및 제거를 감지하도록 한다. 이들은 또한, 네트워크(100) 상에서 바인딩(112)의 유용성에 대한 조회를 허용한다. 개재 액세스 노드 네트워크에 대한 추가적인 상세한 설명은, 다음의 계류중인(copending) 특허 출원에 기술되어 있다: 발명자 Bryant Easthan and Tom Milligan에 의해 2005년 12월 13일 출원된, 표제 "Systems and Methods for Handling Failover in a Distributed Routing Environment"인 미국 특허출원번호 11/302,306; 및 발명자 Bryant Easthan and Tom Milligan에 의해, 2005년 12월 2일 출원된, 표제 "Systems and Methods for Efficient Electronic Communication in a Distributed Routing Environment"인 미국 특허출원번호 11/292,944. 본 발명의 양수인에게 할당된 이들 계류중인 특허 출원은, 전체로서 참조에 의해 편입된다.
바인딩(112)에 관한 노드를 통한 조회는, TCP/IP와 같은 접속지향 프로토콜(connection-oriented protocol)을 사용하거나, 또는 UDP/IP와 같은 무접속 프로토콜에 의해 이루어진다. 무접속 프로토콜 사용의 이득은, 더 적은 접속이 필요한 만큼, 개재 액세스(106, 206)에 대한 더 낮은 비용을 포함한다.
도 3은 리퀘스터(304) 및 프로바이더(302)를 갖는 개재 액세스 노드 네트워크의 일실시예를 나타내는 블록도이다. 상기에서 논의된 바와 같이, 리퀘스터(304)는 프로바이더 및 리퀘스터 양쪽 모두로서 역할할 수 있다. 본 실시예에 있어서, 리퀘스터(304)는, 바인딩(320)을 제공함으로써, 그리고 개재 액세스 노드 네트워크(310)를 통하여, 프로바이더의 서비스(108)를 사용함으로써, 프로바이더 및 리퀘스터 양쪽 모두로서 역할한다.
리퀘스터(304)에 의해 제공된 바인딩은 스테이 온라인 바인딩(320)이다. 스테이 온라인 바인딩(320)은, 프로바이더(102)가 제공하고 있는 서비스(108)를 요구하는, 리퀘스터가 네트워크(310)에 접속되어 있는 요구된 서비스(108)를 제공하는 모든 프로바이더(102)를 통지할 목적으로 쓰여질 수 있다. 이러한 경우에 있어서, 스테이 온라인 바인딩(320)의 대상ID(314b)는 서비스(108)에 의해 제공된 적어도 하나의 대상(114)과 같다.
스테이 온라인 바인딩(320)은, 통상적으로 대상ID(314b) 및 인터페이스ID(322a)를 포함하기 때문에, 레귤러 바인딩(112)과 유사하다. 스테이 온라인 바인딩(320)은, 개재 액세스 노드 네트워크(110)를 통하여 송신된 어떠한 다른 바인딩(112)에 포함될 수 있는 동일하거나 또는 유사한 정보를 포함할 수 있기 때문에, 어떠한 다른 바인딩(112)처럼 취급될 수 있다.
상기에서 논의된 바와 같이, 프로바이더(302)는 또한,프로바이더 및 리퀘스터 양쪽 모두로서 역할할 수 있다. 본 실시예에 있어서, 프로바이더(302)는 바인딩(312)을 제공하고, 리퀘스터(304)로부터 개재 액세스 노드 네트워크(310)를 통하여 전송될 수 있는 스테이 온라인 바인딩(320)을 기다림으로써, 프로바이더 및 리퀘스터 양쪽 모두로서 역할한다.
프로바이더(302)에 의해 제공된 바인딩(312)은, 대상ID(314a) 및 인터페이스ID(316a)를 포함할 수 있다. 스테이 온라인 바인딩(320)과는 다르게, 본 실시예의 바인딩(312)은 요구된 서비스(108)와 상호작용을 하기 위햐여 사용된 인터페이스를 식별할 수 있다.
도 4는, 네트워크 내에 프로바이터와 리퀘스터 사이의 통신을 확립하기(establishing) 위한 방법을 예시하는 타이밍도이다. 시간축(401)이 도시되어 있다. 리퀘스터(404)는 네트워크(100) 상에서 서비스(108)에 대한 검색을 행할 수 있다. 네트워크(100)에 접속된 후, 어떤 지점(some point), 시간(t1)에서, 리퀘스터(404)는 스테이 온라인 바인딩(320)을 제공할 수 있다(410). 스테이 온라인 바인
딩(320)은, 리퀘스터(404)가 호환성 바인딩(compatible binding(312))의 어떠한 프 로바이더에게 접속을 확립하고, 그 바인딩(112)을 제공하며, 온라인 상에 머물도록 요청(ask)하는 방식이다.
호환성 바인딩(312)은, 스테이 온라인 바인딩(320)의 대상ID(314d)가 프로바이더(402)를 통하여 서비스(108)에 의해 제공된 바인딩(312)의 대상(314a)과 동일한 바인딩이다. 본 실시예에 있어서, 어떤 지점, 시간(t2)에서, 프로바이더(402)는 바인딩(312)을 제공할 수 있다(420). 다른 실시예에 있어서, 프로바이더(402)는 리퀘스터(404)가 그 스테이 온라인 바인딩(320)을 제공하기(410) 전에, 바인딩(312)을 제공할 수 있다(420).
프로바이더(402)는 네트워크(100)에 추가된 바인딩(312)을 갖는다. 바인딩(312)을 송신(420)한 후, 어떤 지점, 시간(t3)에서 리퀘스터(404)는 스테이 온라인 바인딩(320)을 제거할 수 있다(430). 이 제거(430)는 프로바이더(402)에 도달할 수 있다. 프로바이더(402)가 상기 제거(430)를 감지한 후에, 시간(t4)에서 프로바이더(402)는 바인딩(312)을 제거할 수 있다(440).
도 5는, 개재 액세스 노드(506)의 실시예를 나타내는 블록도이다. 개재 액세스 노드(506)는, 개재 액세스 노드(320)가 예를 들어, 프로바이더(102)로 전송되어야만 하는지를 판단할 수 있게 하는데 필수적인 정보를 포함할 수 있다. 마찬가지로, 개재 액세스 노드(506)는 또한 바인딩(112)이 예를 들어, 리퀘스터(104)로 전송되어야만 하는지를 판단할 수 있게 하는데 필수적인 정보를 포함할 수 있다.
개재 액세스 노드(506)는, 인지된 네트워크(110) 상의 모든 바인딩(112)을 포함할 수 있는 바인딩(526)의 데이터베이스를 포함할 수 있다. 이들 바인딩(526) 은, 각각 대상ID(114) 및 인터페이스ID(116)를 또한 포함할 수 있는 바인딩(512) 및 스테이 온라인 바인딩(520)을 포함할 수 있다. 네트워크 내의 각 노드는 비록 바인딩(112)을 위한 프로바이더의 총수(總數-total count)를 알 수 없을 수도 있으나, 특정 바인딩(112, 320)이 존재하는지는 알 수 있다. 만일, 특정 바인딩(112)을 제공하는 다수의 프로바이더(102)가 있다면, 그때 바인딩(112)은 노드의 관점에서 모든 프로바이더(102)가 네트워크(110)와의 접속이 끊길 때까지, 존재하는 것을 중단할 수 없거나, 그 바인딩(112)을 제거할 수 없다. 바인딩(526)의 데이터베이스는 TCP/IP와 같은 접속지향 프로토콜 또는 UDP/IP와 같은 무접속 프로토콜로 프로바이더(102)에 의해 조회될 수 있다. 조회(query)는 존재하는 모든 바인딩(112, 320)을 위한 것일 수 있다. 데이터 베이스는 또한, 프로바이더에 의해 감시될 수 있어서, 컨텐츠 내에서의 변경이 결정된다.
도 6은, 하나 이상의 개재 액세스 노드 및 동일한 바인딩(812)을 공급하고 있는 두 개의 프로바이더(802a, 802b)를 포함하는 개재 액세스 노드 네트워크(810)를 나타내는 블록도(800)이다. 바인딩(112)은, 만일 그들의 대상ID(114) 및 인터페이스(116)가 동일하다면, 동일한 것으로 간주된다. 프로바이더(802)가 접속 및 무접속(connect and disconnect) 일 경우, 네트워크(810)는 어느 프로바이더(802)를 사용할 것인지를 판단할 수 있다. 프로바이더A(802a)는 제1 바인딩(812a)을 포함할 수 있다. 프로바이더B(802b)는 제1 바인딩(812b)를 포함할 수 있다. 따라서, 양쪽 프로바이더(802)는 동일한 바인딩인 제1 바인딩(812)을 포함할 수 있다. 네트워크(810) 및 프로바이더(802a, 802b)는, 어느 프로바이더(802)가 바인딩(112)을 공 급해도 좋은지와, 필요할 경우, 나중에 바인딩(112)을 공급하기 위하여 어느 것이 예비로 남게 될지를 교섭하여 판단할 수 있다. 이러한 상황은 통상, 두 개 이상의 프로바이더(102)가, 거의 동일한 시간에 네트워크(810)에 접속되어, 각각의 프로바이더(102)가 이미 그 바인딩(112)을 통지한 후에야 비로소, 다른 프로바이더(102)를 인지하게 되는 경우에 발생한다. 본 실시예에 있어서, 이러한 논리의 스테이 온라인 바인딩(320)으로의 적용은, 마지막 프로바이더(802)가 바인딩(812)을 분리 또는 제거할 때까지, 바인딩(320)이 네트워크(810) 내에 존재할 것이라는 것을 보증할 수 있다.
도 7을 참조하면, 특정 바인딩(112)이 리퀘스터(904)에 의해 요구될 경우, 리퀘스터(904)는 제1 스테이 온라인 바인딩A(920a) 및 제2 스테이 온라인 바인딩B(920b)를 개재 액세스 노드 네트워크(110)에 추가함으로써, 스테이 온라인 바인딩(920a, 920b)을 제공할 수 있다. 제1 스테이 온라인 바인딩A(920a)은, 바인딩(920a)을 수신하는 누구에게라도 대상ID(914a)를 갖는 바인딩(112)이 요구된다는 것을 통지할 수 있다. 본 실시예에 있어서, 스테이 온라인 바인딩A(920a)은 대상ID A(914a) 및 인터페이스ID 스테이 온라인(922)을 포함할 수 있다. 스테이 온라인 식별자(identifier)는 부합하는 대상ID(114)를 갖는 프로바이더(102)에, 프로바이더(102)가 그 바인딩(112)을 공급하고 온라인에 남아야 한다는 것을 통지할 수 있다. 제2 스테이 온라인 바인딩B(920b)은 바인딩을 수신하는 누구에게라도 대상ID(914b)를 갖는 바인딩(112)이 요구된다는 것을 통지할 수 있다.
도 8은, 두 개의 바인딩(1012a, 1012b)을 제공하는 프로바이더(1002)의 블록 도이다. 프로바이더(1002)가 개재 액세스 노드 네트워크(110)에 접속될 경우, 스테이 온라인 바인딩A(920a) 및 스테이 온라인 바인딩B(920b)의 존재를 판단할 수 있다. 다른 실시예에 있어서, 프로바이더(1002)는 적용가능한 스테이 온라인 바인딩(520)의 존재를 판단하기 위해 접속하지 않고, 네트워크(110)를 조회하고, 적용가능한 스테이 온라인 바인딩(520)이 검출된 경우에만 접속을 확립한다.
스테이 온라인 바인딩(920)을 감지하는 중에, 그리고 접속을 확립한 후에, 프로바이더(1002)는 제1 바인딩A(1012a) 및 제2 바인딩B(1012b)를 추가함으로써, 그 바인딩(1012a, 1012b)을 더할 수 있다. 제1 바인딩A(1012a)의 추가는 그것을 수신하는 누구에게라도 제1 바인딩A(1012a)이 사용가능하다는 것을 통지한다. 제2 바인딩B(1012b)의 추가는 그것을 수신하는 누구에게라도 제2 바인딩B(1012b)이 사용가능하다는 것을 통지한다. 이 정보에 의해, 리퀘스터(104)는 프로바이더(1002)로부터 바인딩(1012a, 1012b)을 사용할 수 있다.
도 9는, 개재 액세스 노드에 접속될 수 있는 프로바이더(102) 및 두 개의 리퀘스터(104a, 104b)의 블록도이다. 리퀘스터A(104a)는 스테이 온라인 바인딩A(1120a)을 제공할 수 있다. 리퀘스터B(104b)는 스테이 온라인 바인딩B(1120b)를 제공할 수 있다. 프로바이더(102)는 스테이 온라인 바인딩A(1120a) 및/또는 스테이 온라인 바인딩B(1120b)를 수신할 수 있다. 만일 프로바이더(102)가 스테이 온라인 바인딩(1120a) 또는 스테이 온라인 바인딩B(1120b)를 계속 수신한다면, 프로바이더(102)는 그 사용가능한 바인딩(1112), 바인딩A(1112a) 및 바인딩B(1112b)을 제공할 수 있다. 프로바이더(102)가 그 사용가능한 바인딩(1112)를 추가한 후에, 리퀘 스터(104a, 104b)는 요구된 바인딩(1112a, 1112b)을 각각 사용할 수 있다. 프로바이더(102)는 그 후에, 리퀘스터(104a, 104b)로 바인딩(1112)을 계속 제공할 수 있다. 특히, 프로바이더(102)는 바인딩A(1112a)를 리퀘스터A(104a)로, 바인딩B(1112b)를 리퀘스터B(104b)로 제공할 수 있다.
만일 리퀘스터(104) 중에서 하나만이 그 스테이 온라인 바인딩(1120)을 제거한다면, 프로바이더(102)는 개재 액세스 노드 네트워크(110)에 접속된 채로 유지될 수 있으며, 사용가능 바인딩(1112)을 계속해서 제공할 수 있다. 예를 들어, 만일 리퀘스터A(104a)가 그 스테이 온라인 바인딩A(1120a)를 제거했다면, 프로바이더(102)는 그 후에, 리퀘스터A(104a)로 바인딩A(1112a)의 공급을 중단할 수 있을 것이다. 그러나, 리퀘스터B(104b)가 여전히 그 스테이 온라인 바인딩B(1120b)을 추가하고 있으므로, 프로바이더(102)는 그 사용가능 바인딩(1112)을 계속해서 제공할 수 있으며, 바인딩B(1112b)를 리퀘스터B(104b)로 계속 제공할 수 있다. 만일 양쪽 리퀘스터A(104a) 및 리퀘스터B(104b)가 모두 그 스테이 온라인 바인딩(1120a, 1120b)를 제거하는 것을 멈추어, 개재 액세스 노드 네트워크(100)에 접속된 어떠한 리퀘스터(104)도 프로바이더(102)와 관련된 스테이 온라인 바인딩(1120)을 공급하지 않는다면, 예를 들어, 그 후에 프로바이더(102)는 잠시 네트워크(110)와의 접속을 끊을 수 있다. 이것은 접속이 끊어진 장치를 클리닝 업하는 것과 관련된 난제를 제거할 수 있다. 왜냐하면, 이러한 판단의 가능은 그 서비스가 필요 없을 경우, 프로바이더가 네트워크와의 접속을 끊는 것을 가능하도록 하기 때문이다.
도 10은 개재 액세스 노드 네트워크(110)와 통신하는 프로바이더(102)의 방 법(1200)의 실시예를 나타내는 흐름도이다. 프로바이더(102)는 개재 액세스 노드 네트워크(110)에 접속될 수 있다(1202). 프로바이더(102)가 개재 액세스 노드 네트워크(110)에 접속된(1202) 후에, 프로바이더(102)는, 프로바이더(102)가 제공할 수 있는(1210) 어떠한 바인딩(112)이라도 식별하는 개재 액세스 노드 네트워크(110) 상에 존재하는 어떠한 스테이 온라인 바인딩(320)이 존재하는지를 판단할 수 있다(1206). 만일 프로바이더(102)가, 프로바이더(102)에 의해 제공된 적어도 하나의 바인딩(112)을 식별하는 스테이 온라인 바인딩(320)이 있다고 판단하면(1206), 그 후에 프로바이더(102)는 그 바인딩(112)을 네트워크(110)로 제공한다(1210). 만일 프로바이더(102)가, 프로바이더(102)에 의해 제공된(1210) 적어도 하나의 바인딩(112)을 식별하는 어떠한 스테이 온라인 바인딩(320)도 없다고 판단하면, 그 후에 프로바이더는 개재 액세스 노드 네트워크(110)와의 접속을 끊는다(1214). 다른 실시예에 있어서, 상기 판단(1206)은 무접속 프로토콜을 이용할 수 있으며, 네트워크로의 접속보다 선행할 수 있다(1202).
프로바이더(102)가 그 바인딩(112)을 제공한(1210) 후에, 프로바이더(102)는 스테이 온라인 바인딩(320)이 여전히 존재하는지를 판단하기(1206) 전에, 일정 기간(a period of time) 대기(1212)할 수 있다. 추가적으로, 네트워크(100)와의 접속이 끊긴(1214) 후, 프로바이더(102)는 네트워크(100)와 재접속되기 전(前) 및 사용가능 스테이 온라인 바인딩(320)이 존재하는지를 판단하기 전에, 일정 기간을 대기(1216)할 수 있다. 이 일정 기간은 동일한 기간일 수 있거나 또는 길이가 다를 수 있다.
도 11은, 네트워크 내에 프로바이더(102)와의 통신을 확립하는 리퀘스터(104)의 방법의 실시예를 나타내는 흐름도이다. 리퀘스터(104)는 네트워크(100)에 접속될 수 있다. 리퀘스터(104)는 어느 바인딩(112)이 필요한지를 판단할 수 있다(1304). 예를 들어, 리퀘스터(104)는 서비스(108)로부터 데이터가 필요하다고 판단할 수 있다. 리퀘스터(104)는 그 후에, 어느 바인딩(112)이 데이터을 얻는데 필요한지를 판단한다.
리퀘스터(104)는 새로운 스테이 온라인 바인딩(320)을 패키징(package)(1306)할 수 있다. 새로운 온라인 바인딩(320)의 패키징(1306)은, 스테이 온라인 식별자인 인터페이스ID(322)를 갖는 적절한 대상ID(114)의 패키징(1306)을 포함할 수 있다. 새로운 스테이 온라인 바인딩(320)의 패키징(1306)은, 이전에 패키징된 또는 아래에서 논의된 바와 같이 더 이상 필요하지 않은 스테이 온라인 바인딩(320)의 패키징(1306)은 포함하지 않을 수 있다.
리퀘스터(104)는 스테이 온라인 바인딩(320)을 제공한다(1308). 스테이 온라인 바인딩(320)의 제공(1308)은, 네트워크(100)를 통하여 스테이 온라인 바인딩(320)을 송신하는 것을 포함할 수 있다. 리퀘스터(104)는 프로바이더(102)로부터의 바인딩(112)을 수신할 수 있다(1312). 리퀘스터(104)는 적어도 하나의 스테이 온라인 바인딩(320)을 제거할지를 판단할 수 있다(1314). 만일, 리퀘스터(104)가 적어도 하나의 스테이 온라인 바인딩(320)이 제거되면 안된다고 판단하면(1314), 리퀘스터(104)는 어느 바인딩(112)이 필요한지를 다시 판단하기 전에, 일정 기간 대기할 수 있다(1322). 만일, 리퀘스터(104)가 적어도 하나의 스테이 온라인 바인 딩(320)을 제거해야한다고 판단하면(1314), 리퀘스터(104)는 스테이 온라인 바인딩(320)을 제거할 수 있다(1316). 본 실시예에 있어서, 리퀘스터(104)는 더 이상 필요없는 스테이 온라인 바인딩(320)만을 제거한다(1316). 예를 들어, 리퀘스터(104)가 요구된 서비스(108)를 수신한 후에, 리퀘스터(104)는 더 이상 바인딩(112)을 필요로 하지 않을 수 있으며, 따라서 서비스(108)을 위한 스테이 온라인 바인딩(320)을 제거할 수 있다(1316).
리퀘스터(104)는 어떠한 잔존 바인딩(remaining binding(112))이 필요한지를 판단할 수 있다(1318). 만일 리퀘스터(104)가 필요한 잔존 바인딩(112)이 있다고 판단하면(1318), 리퀘스터(104)는 어느 바인딩(112)이 필요한지를 다시 판단할 수도 있다(1304). 만일 리퀘스터(104)가 필요한 바인딩(112)이 없다고 판단하면(1304), 리퀘스터(104)는 일정 기간을 대기할 수 있으며(1320), 어느 바인딩(112)이 필요한지를 다시 판단할 수 있다(1320).
도 12는, 컴퓨팅 장치 또는 임베디드 장치의 실시예에 사용될 수 있는 하드웨어 콤포넌트의 블록도이다. 컴퓨팅 장치 및/또는 임베디드 장치는 프로바이더, 리퀘스터 및/또는 개재 액세스 노드로서 사용될 수 있다. CPU(1410) 또는 프로세서는 장치(1402)의 동작을 제어하기 위해 제공되어 좋고, 거기에는 다른 콤포넌트를 포함하며, 버스(1412)를 통하여 CPU(1410)에 접속되어 있다. CPU(1410)는, 해당 분야에서 알려진 마이크로프로세서, 마이크로컨트롤러, 디지털 시그널 프로세서 또는 다른 장치로서 실시되어도 좋다. CPU(1410)는, 메모리(1414)에 저장된 프로그램 코드에 근거하여, 논리적 및 산술적인 연산을 행한다. 어떤 실시예에 있어서, 메모 리(1414)는 CPU(1410)에 포함된 온- 보드(on-board) 메모리여도 좋다. 예를 들어, 마이크로컨트롤러는 종종, 어느 정도의(a certain amount of) 온-보드 메모리를 포함하고 있다.
컴퓨팅 또는 임베디드 장치(1402)에 네트워크 인터페이스(1416)를 포함하고 있어도 좋다. 네트워크 인터페이스(1416)는, 임베디드 장치(1402)와 네트워크(100)에 접속된 다른 장치 사이의 통신을 용이하게 한다. 네트워크(100)는, 페이저(pager) 네트워크, 휴대 전화 네트워크, 세계적인 통신 테트워크, 인터넷, 컴퓨터 네트워크, 전화 네트워크, 그 밖의 것이어도 좋다. 네트워크 인터페이스(1416)는, 적용가능한 네트워크(100)의 표준 프로토콜에 따라서 동작한다.
장치(1402)에 메모리(1414)를 포함해도 좋다. 메모리(1414)가, 일시적인 데이터를 저장하는 랜덤 액세스 메모리(RAM)를 포함할 수도 있다. 그렇지 않으면, 또는 그에 더하여, 메모리(1414)가 고정된 코드 및 구성 데이터 등, 보다 영구적인 데이터를 저장하는 리드 온리 메모리(ROM)를 포함할 수도 있다. 메모리(1414)를, 하드 디스크 드라이브와 같은 자기적(magnetic) 기억 장치로서 실시해도 좋다. 메모리(1414)는, 전자적 정보를 저장가능한 어떠한 타입의 전자적 장치여도 좋다.
장치(1402)에, 다른 장치와의 통신을 용이하게 하는 통신 포트(1418)를 포함해도 좋다. 장치(1402)에, 키보드, 마우스, 조이스틱, 터치스크린, 모니터, 스피커, 프린터 등과 같은 입출력 장치(1420)를 포함해도 좋다.
본 시스템 및 방법은, 몇몇 상황(several contexts)에서 이용될 수도 있다. 도 13은, 본 시스템 및 방법을 실현가능한 시스템의 일실시예를 예시한다. 도 13 은, 조명 컨트롤러 시스템(1508)을 포함하는 조명 시스템(1500)의 일실시예를 예시하는 블록도이다. 도 13의 조명 시스템(1500)은, 가정의 다양한 방에 설치될 수도 있다. 이 시스템(1500)은, 예시된 바와 같이, 방(A1502), 방(B1504) 및 방(C1506)을 포함한다. 도 13에는 3개의 방을 나타냈으나, 시스템(1500)은, 가정 내, 주거 또는 그 외의 환경에 있어서 어떠한 수와 종류의 방에서 실현해도 좋다.
조명 컨트롤러 시스템(1508)은, 시스템(1500) 내의 추가 임베디드 시스템 및 콤포넌트를 감시하고 제어할 수도 있다. 하나의 실시예에 있어서, 방(A1502) 및 방(B1504)은 각각, 스위치 콤포넌트(1514, 1518)을 포함한다. 이들 스위치 콤포넌트(1514, 1518)은 2차 임베디드 시스템(1516, 1520)을 포함해도 좋다. 이들 2차 임베디드 시스템(1516, 1520)은, 조명 컨트롤러 시스템(1508)으로부터 지시를 받을 수 있다. 2차 임베디드 시스템(1516, 1520)은 다음으로, 이들 지시를 실행할 수도 있다. 이들 지시는, 다양한 조명 콤포넌트(1510, 1512, 1522, 1524)의 전원을 키거나, 또는 전원을 끄는 것을 포함해도 좋다. 이들 지시는, 상기 다양한 조명 콤포넌트(1510, 1512, 1522, 1524)의 밝기를 낮추거나, 또는 밝기를 높이는 것을 포함할 수도 있다. 이들 지시는, 상기 조명 콤포넌트(1510, 1512, 1522, 1524)의 밝기를 다양한 패턴으로 조절하는 것을 포함할 수도 있다. 상기 2차 임베디드 시스템(1516, 1520)은, 상기 방(A1502) 및 방(B1504)에 위치된 각 조명 콤포넌트(1510, 1512, 1522, 1524)의 조명 컨트롤러 시스템(1508)에 의한 감시 및 제어를 용이하게 한다.
조명 컨트롤러 시스템(1508)은, 묘사된 방(C1506) 내의 2차 임베디드 시스 템(1528)을 포함하는 조명 콤포넌트(1526)으로 직접 지시를 내릴 수도 있다. 조명 컨트롤러(1508)는, 상기 2차 임베디드 시스템(1528)에 지시하여, 개별 조명 콤포넌트(1526)를 파워 업시키거나, 또는 파워 다운시킬 수 있다. 마찬가지로, 조명 컨트롤러 시스템(1508)으로부터 받는 지시에, 개별 조명 콤포넌트(1526)의 밝기를 떨어뜨리거나, 또는 밝기를 올리는 것을 포함해도 좋다.
조명 컨트롤러 시스템(1508)은, 시스템(1500) 내의 개별 조명 콤포넌트(1530, 1532)을 감시하고, 직접 지시를 내릴 수도 있다. 이들 지시는 상기에 기술한 것과 유사한 지시를 포함할 수도 있다.
도 13의 실시예에 있어서, 조명 콤포넌트(1510, 1512, 1522, 1524, 1526, 1530, 1532)은 프로바이더로서 취급될 수 있다. 이들 콤포넌트는, 예를 들어 조명 콤포넌트가 on 또는 off인지, 상기 조명 콤포넌트를 통과하는 현재 또는 과거의 와트수 등, 그 상태에 관련한 데이터를 포함할 수 있다. 마찬가지로, 2차 임베디드 시스템(1516, 1520, 1528)은 프로바이더 및 리퀘스터 양쪽 모두로 역할할 수 있다. 예를 들어, 2차 임베디드 시스템(1516, 1520, 1528)은 조명 콤포넌트(1510, 1512, 1522, 1524, 1526, 1530, 1532)로부터 데이터 또는 서비스를 요구할 수 있다. 2차 임베디드 시스템(1516, 1520, 1528)은 또한, 조명 콤포넌트(1510, 1512, 1522, 1524, 1526, 1530, 1532)로부터 수신된 데이터를 리퀘스터로서 역할하는 조명 컨트롤러 시스템(1508)으로 제공할 수 있다.
도 14는, 본 발명에 관한 본 시스템 및 방법을 실현 가능한 시스템의 또 다른 실시예이다. 도 14는, 보안 시스템(1600)을 예시하는 블록도이다. 이 묘사된 실 시예 중의 보안 시스템(1600)은, 방(A1602), 방(B1604), 및 방(C1606) 내에 실현되어 있다. 이들 방은, 가정 또는 그 외의 봉쇄된 환경의 역내(域內-confines) 내에 있을 수도 있다. 시스템(1600)을 해방된 환경에서 실현해도 좋으며, 그 경우, 방(A, B, C), 즉 방(1602, 1604, 1606)은, 각각 영역, 또는 경계를 나타낸다.
상기 시스템(1600)은, 보안 컨트롤러 시스템(1608)을 포함한다. 이 보안 컨트롤러 시스템(1608)은, 시스템(1300) 내의 다양한 콤포넌트를 감시하고, 이들의 정보를 수신한다. 예를 들어, 동작 센서(1614, 1618)가 2차 임베디드 시스템(16916, 1620)을 포함해도 좋다. 동작 센서(1614, 1618)는, 움직임을 위한 근접 공간을, 감시하고, 움직임이 검출되면, 2차 임베디드 시스템(1616, 1620)을 통하여, 보안 컨트롤러 시스템(1608)에 경고한다. 보안 컨트롤러 시스템(1608)은, 시스템(1600) 내의 다양한 콤포넌트에 지시를 내려도 좋다. 예를 들어, 보안 컨트롤러 시스템(1608)은, 2차 임베디드 시스템(1616, 1620)에 지시를 내려서, 윈도우 센서(1610, 1622) 및 도어 센서(1612, 1624)를 파워 업시키거나, 또는 파워 다운시킬 수 있다. 하나의 실시예에 있어서, 윈도우 센서(1610, 1622)가 윈도우의 움직임을 검출했을 경우, 2차 임베디드 시스템(1616, 1620)이 보안 컨트롤러 시스템(1608)에 통지한다. 마찬가지로, 도어 센서(1612, 1624)가 도어의 움직임을 검출했을 경우, 2차 임베디드 시스템(1616, 1620)이 보안 컨트롤러 시스템(1608)에 통지한다. 2차 임베디드 시스템(1616, 1620)은, 동작 센서(1614, 1618)에 지시하여, 이 동작 센서(1614, 1618) 내에 배치된 LED(도시하지 않음)를 작동시킬 수 있다.
보안 컨트롤러 시스템(1608)은, 시스템(1600) 내의 개별 콤포넌트를 감시하 고, 이들에게 직접 지시를 내릴 수 있다. 예를 들어, 보안 컨트롤러 시스템(1608)은, 동작 센서(1630), 또는 윈도우 센서(1632)를 감시하고, 이들을 파워 업시키거나, 파워 다운시키는 지시를 내릴 수 있다. 보안 컨트롤러 시스템(1608)은, 동작 센서(1630) 및 윈도우 센서(1632)에 지시하여, 이들 센서(1630, 1632) 내의 LED(도시하지 않음) 또는 음성 경보를 동작시켜도 좋다.
상기 시스템(1600)을 구성하는 개별의 각 콤포넌트가 2차 임베디드 시스템을 포함해도 좋다. 예를 들어, 도 14는, 2차 임베디드 시스템을 포함하는 도어 센서(1626)를 예시하고 있다. 보안 컨트롤러 시스템(1608)은, 상기의 기술과 유사한 방식으로 2차 임베디드 시스템(1628)을 감시하고, 지시를 내려도 좋다.
도 14의 실시예에 있어서, 센서(1610, 1612, 1622, 1624, 1626, 1630, 1632)는 프로바이더로서 취급될 수 있다. 이들 센서(1610, 1612, 1622, 1624, 1626, 1630, 1632)는, 그 상태에 관련한 데이터를 포함할 수 있다. 예를 들어, 윈도우 센서(1610, 1622, 1632)는 그들이 열려있는지 또는 닫혀있는지(open or closed)에 관한 데이터를 제공할 수 있다. 마찬가지로, 2차 임베디드 시스템(1616, 1620, 1628)은 프로바이더 및 리퀘스터 양쪽 모두로 역할할 수 있다. 예를 들어, 2차 임베디드 시스템(1616, 1620, 1628)은 센서(1610, 1612, 1622, 1624, 1626, 1630, 1632)로부터 데이터 또는 서비스를 요구할 수 있다. 2차 임베디드 시스템(1616, 1620, 1628)은 또한, 센서(1610, 1612, 1622, 1624, 1626, 1630, 1632)로부터 수신된 데이터를 리퀘스터로서 역할하는 보안 컨트롤러 시스템(1608)으로 제공할 수 있다.
도 15는 홈 시스템(1700)의 일실시예를 예시하는 블록도이다. 이 홈 시스템(1700)은, 상기 조명 시스템(1500), 보안 시스템(1600) 등과 같은 다양한 시스템의 감시를 용이하게 하는 홈 컨트롤러(1708)를 포함한다. 홈 시스템(1700)은, 사용자가 1개 이상의 임베디드 시스템을 통하여 다양한 콤포넌트 및 시스템을 제어하는 것을 가능하게 한다. 하나의 실시예에 있어서, 홈 컨트롤러 시스템(1708)이, 도 13 및 도 14에 관하여 상기에 기술한 것과 동일한 방식으로 감시하고, 정보를 제공한다. 묘사된 실시예에 있어서, 홈 컨트롤러(1708)가 2차 임베디드 시스템(1720)을 통하여 난방 콤포넌트(1724)에 지시를 내린다. 난방 콤포넌트(1424)는, 거주 장소 또는, 오피스에서 통상 볼 수 있는 난로 또는 그 외의 가열 장치를 포함해도 좋다. 홈 컨트롤러 시스템(1708)은, 2차 임베디드 시스템(1720)을 통하여, 난방 콤포넌트(1724)를 파워 업시키거나, 파워 다운시키는 지시를 내릴 수 있다.
마찬가지로, 홈 컨트롤러(1708)는, 홈 시스템(1700) 내의 냉방 콤포넌트(1730) 등의 콤포넌트를 감시하고, 직접 지시를 내릴 수 있다. 냉방 콤포넌트(1730)는, 거주 장소, 또는 오피스에서 통상 볼 수 있는 에어컨 또는 그 이외의 냉방 장치를 포함해도 좋다. 센트럴 홈 컨트롤러(1708)는, 냉방 콤포넌트(1730)에 지시하여, 그 센트럴 임베디드 시스템(1408)에 의해 모아진 온도의 계측(temperature reading)에 근거하여, 전력을 증대시키거나, 또는 전력을 저하시켜도 좋다. 홈 시스템(1700)은, 도 13 및 14에 관한 상기에 기술한 것과 유사한 방식으로 기능한다.
도 15의 실시예에 있어서, 윈도우 센서(1710), 도어 센서(1712), 난방 콤포 넌트(1724), 냉방 콤포넌트(1730) 및 조명 콤포넌트(1722, 1726, 1732)는 프로바이더로서 취급될 수 있다. 이들 구성요소(element)(1710, 1712, 1722, 1724, 1726, 1730, 1732)는, 그 상태에 관련한 데이터를 포함할 수 있다. 예를 들어, 난방 및 냉방 콤포넌트(1724, 1730)는 이들의 각각의 방(1704, 1706) 내에서 현재 온도에 관한 데이터를 제공할 수 있다. 난방 및 냉방 콤포넌트(1724, 1730)는, 콤포넌트가 on 또는 off인지, 최근의 전력 사용, 모든 시스템 에러 등, 콤포넌트 상태에 관한 데이터를 제공할 수 있다. 마찬가지로, 2차 임베디드 시스템(1716, 1720, 1728)은 프로바이더 및 리퀘스터 양쪽 모두로 역할할 수 있다. 예를 들어, 2차 임베디드 시스템(1716, 1720, 1728)은 이들 구성요소(1710, 1712, 1722, 1724, 1726, 1730, 1732)로부터 데이터 또는 서비스를 요구할 수 있다. 2차 임베디드 시스템(1716, 1720, 1728)은 또한, 이들 구성요소(1710, 1712, 1722, 1724, 1726, 1730, 1732)로부터 수신된 데이터를 리퀘스터로서 역할하는 홈 컨트롤러 시스템(1708)으로 제공할 수 있다.
임베디드 시스템에는 많은 종류가 있으며, 장치 네트워크를 만드는 많은 이유가 있다. 장치 네트워킹의 응용을 몇 개(several) 예시한다. 해당 분야의 지식을 가진자라면, 상기 논의된 예들은 모든 것을 규명한 것이 아님을 이해할 것이다.
장치 네트워킹 응용의 일례는, 원격 감시이다. 많은 유용한 장치 네트워크가 원격 감시, 즉, 1개의 노드로부터 다른 노드로의 정보의 한 방향(one-way) 전송을 포함한다. 이러한 응용에 있어서, 프로바이더는, 통상 리퀘스터에 따라서 어떤 정보를 보고하는 소형 서버로서 작동한다. 프로바이더는, 그 상태 정보(state information)를 서브스크라이버(subscriber)로 발신하도록 셋업(set up)하는 것도 가능하다. 리퀘스터가 주기적 보고를 요구해도 좋으며, 상태 변화의 정도, 갱신을 요구해도 좋으나, 이 경우, 아마도, 어느 정도의 빈도로 갱신을 송신할지 한정하는 어떤 수단(some means)을 동반한다. 프로바이더는, 어떤 현상(some event), 또는 예외적인 상황이 발생한 경우, 리퀘스터에 통지하도록 셋업할 수가 있다.
장치 네트워크 응용의 다른 예는 원격 제어로, 리퀘스터가 프로바이더로 지시를 송신하고, 어떤 특정의 동작을 행하게 하는 것이 가능하다. 대다수의 경우, 원격 제어는 어떤 종류의 피드백(feedback)을 포함한다.
장치 네트워킹 응용의 또 다른 예는, 분포 제어 시스템이다. 네트 워크를 통하여, 개별 프로바이더에 관한 기능 및 데이터를 결합하고, 조합하여, 부가 가치를 동반하는 분포 시스템을 만들 수가 있다. 때때로, 이러한 분포 시스템은, 다소(多少)라도 자동적으로 성립시키는 것이 가능하다. 대부분의 경우, 보다 고도(高度)인 장치가 피어-투-피어 네트워크에 참가하여, 구성, 감시, 또는 진단 상(上)의 의무(diagostic duties)를 수행한다. 이러한 시스템을 대상(object)으로 만들어도 좋으며, 그럴 경우 대상의 통신은, 피어(peer)로서 행하거나, 시스템 내의 각 대상이 제어 로직을 모두 포함하는 단일 센트럴 노드와 통신하는 마스터-슬레이브(master-slave) 구성을 통하여 행한다.
네트워킹 응용의 각 카테고리에서, 리퀘스터는 다양한 방식으로 프로바이더 접속되어도 좋다. 관계하는 프로바이더가 비교적 소수(少數)인 경우에는, 리퀘스터는 웹브라우저, 페이저(pager), 또는 심지어 WAP가능한 휴대 전화를 이용하여, 프 로바이더와 다소라도 대화적인 방법으로 통신하여도 좋다. 그러나, 프로바이더의 수가 증가함에 따라서, 이들 방법이 기능하지 않을 수도 있으며, 그 때에는 스프레드시트(spreadsheet) 또는 데이터베이스 응용과 같은 보다 범용성이 있는 데이터 관리 기술을 리퀘스터가 채용할 수도 있다.
시간의 흐름, 또는 기술이 다름에 따라서, 다양한 네트워크가 실현되면, 동일한 가정 또는 설비에 다수의 네트워크가 존재하여, 각각이 자신의 프로토콜을 이용하여, 다른 사람과 통신할 수 없는 상황이 출현할 수도 있다. 그 경우에는, 다양한 네트워크 및 프로토콜을 가교(架橋-bridge)하여 단일(single)이며, 보다 큰 네트워크를 만들 수 있다. 이것은, 단일인 어플리케이션으로 각 프로바이더로의 액세스를 가능하게 하며, 모든 프로바이더와의 교류를 용이하게 한다.
정보 및 신호가, 다양한 다른 수법 및 기술을 이용하여 표현될 수도 있다. 예를 들어, 이상의 설명을 통하여 언급된 데이터, 명령, 지령, 정보, 신호, 비트, 심볼, 칩이, 전압, 전류, 전자파, 매그네틱 필드(magnetic fields), 또는 입자, 광학적인 필드, 또는 입자, 또는 이들의 모든 조합에 의해 표현될지도 모른다.
본 명세서에 개시된 실시예에 관하여 설명한 다양한 예시적인 논리 블록, 모듈, 회로, 및 알고리즘 스텝은, 전자적 하드웨어, 컴퓨터 소프트웨어, 또는 양자의 조합으로서 실현해도 좋다. 이 하드웨어와 소프트웨어의 호환성을 명료하게 예시하기 위해서, 다양한 예시적인 콤포넌트, 블록, 모듈, 회로, 및 스텝을, 이들의 기능성에 관하여, 위에서 개괄적으로 설명하였다. 이러한 기능성 실현 결과가 하드웨어인지 소프트웨어인지는, 시스템 전체에 관련된 특정 용도 및 설계 제한에 의존한 다. 숙련된 당업자라면, 특정의 각 용도에 대하여, 상기에 기술한 기능성을 다양한 방식으로 실현할 수도 있으나, 이러한 실현의 결단이 본 발명의 범위로부터의 일탈이 된다고 해석해서는 안 된다.
본 명세서에서 개시된 실시예에 관하여 설명한 다양한 예시적인 논리 블록, 모듈, 및 회로는, 범용 프로세서, 디지털 시그널 프로세서(DSP), ASIC(Application specific integrated circuit), FPGA(Field Programmable Gate Array signal), 또는 그 외의 프로그래밍가능한 로직 장치, 분산형 게이트, 또는 트랜지스터 로직, 분산형 하드웨어 콤포넌트, 또는 모든 이들의 조합으로 본 명세서에 기재된 기능을 수행하도록 설계된 것에 의해, 실현 또는 실행해도 좋다. 범용 프로세서는 마이크로프로세서도 좋지만, 그 대신에, 그 프로세서를 종래의 어떠한 프로세서, 컨트롤러, 마이크로 컨트롤러, 또는 스테이트 머신(state machine)으로 해도 좋다. 프로세서는 컴퓨팅 장치의 조합으로서 실현해도 좋으며, 예를 들어, DSP와 마이크로프로세서, 복수의 마이크로프로세서, 또는 하나 이상의 마이크로프로세서로 DSP 코어와 결합된 것의 조합이어도 좋고, 또는 모든 그 이외의 이러한 구성으로 해서 실현해도 좋다.
본 명세서에서 개시된 실시예에 관련하여 설명한 방법 또는 알고리즘의 스텝은, 직접적으로 하드웨어로서, 프로세서에 의해 실행되는 소프트웨어 모듈로서, 또는 이 2개의 조합으로서 실현해도 좋다. 소프트웨어 모듈은, RAM 메모리, 플래쉬 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터, 하드웨어 디스크, 분리가능(removable) 디스크, CD-ROM, 그 외 해당 분야에서 알려진 모든 다른 형태 의 기억 매체에 내재(內在)시켜도 좋다. 범례적인 기억 매체는, 프로세서에 결합하고, 그 프로세서가, 그 기억 매체에 대하여, 정보의 판독 및 정보의 기록을 행할 수 있도록 한다. 이에 대신하여, 기억 매체를 프로세서와 일체(一體)로 해도 좋다. 이들 프로세서 및 기억 매체를 ASIC에 내재시켜도 좋다. 이 ASIC를 사용자 단말에 내재시켜도 좋다. 이에 대신하여, 이들 프로세서 및 기억 매체를 사용자 단말에 분산 콤포넌트로서 내재시켜도 좋다.
본 명세서에 개시된 방법은, 그 기억된 방법을 달성하는 1개 이상의 단계 또는 동작을 포함하고 있다. 이들 방법의 단계 및/또는 동작은, 본 발명의 범위를 일탈하는 일없이 서로 교체가능하다. 즉, 실시예의 적정한 동작을 위해서 특별한 순서의 단계, 또는 동작을 필요로 하는 경우를 제외하고, 단계 및/또는 동작의 순서 및/또는 적용은, 본 발명의 범위를 일탈하는 일없이 변경가능하다.
본 발명의 특정한 실시예 및 용례를 예시하여 설명하였으나, 이 발명은 본 명세서에 개시된 세부 구성 및 콤포넌트에 한정되지 않는다고 해석해야만 한다. 본 명세서에 개시된 본 발명의 방법 및 시스템의 구성, 동작, 및 세부에 대하여, 해당 분야의 숙련자라면, 명백하게 다양한 변경, 변형 및 변종이 발명의 범위 및 정신을 일탈하지 않고 이루어질 수 있다.
본 발명은 임베디드 시스템에 이용할 수 있다.

Claims (20)

  1. 분산 네트워크 내에서 프로바이더(provider) 및 리퀘스터(requestor) 사이의 통신을 관리하기 위한 시스템에 있어서,
    상기 시스템은:
    컴퓨팅 장치 상에서 실행되는 리퀘스터;
    컴퓨팅 장치 상에서 실행되는 프로바이더; 및
    상기 리퀘스터와 상기 프로바이더 사이에 제공되는 개재 액세스 노드 네트워크(intervening access node network)를 포함하고,
    상기 리퀘스터는 스테이 온라인 바인딩을 제공하며, 또한
    상기 스테이 온라인 바인딩은 상기 리퀘스터에 의해 요구된 적어도 하나의 바인딩을 식별하고,
    상기 프로바이더는, 적어도 하나의 바인딩을 제공하며, 상기 리퀘스터로부터 상기 스테이 온라인 바인딩을 수신하고, 상기 프로바이더가 스테이 온라인 바인딩을 인지하게 되었기 때문에, 계속해서 상기 적어도 하나의 바인딩을 제공하며
    상기 리퀘스터와 상기 프로바이더 사이의 통신은 상기 개재 액세스 노드 네트워크를 통하여 통신하고,
    상기 프로바이더는:
    프로세서;
    상기 프로세서와 전자 통신하기 위한 메모리; 및
    상기 메모리에 저장된 지시를 포함하며,
    상기 지시는:
    상기 프로바이더와 관련된 어떠한 스테이 온라인 바인딩에 대해서도 개재 액세스 노드 네트워크로부터의 통신을 감시하고, 상기 개재 액세스 노드 네트워크를 통하여 통신하고 있는 상기 프로바이더에 관련한 스테이 온라인 바인딩이 없다고 판단되는 경우, 상기 프로바이더의 네트워크와의 접속을 끊는 것을 포함하는 것을 특징으로 하는 분산 네트워크 내에서 프로바이더 및 리퀘스터 사이의 통신을 관리하기 위한 시스템.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 제1 항에 있어서,
    상기 프로바이더의 상기 메모리에 저장된 상기 지시는,
    상기 프로바이더와 관련된 어떠한 스테이 온라인 바인딩에 대해서도 조회하고, 상기 바인딩을 재차 제공하는 것을 더 포함하는 것을 특징으로 하는 분산 네트워크 내에서 프로바이더 및 리퀘스터 사이의 통신을 관리하기 위한 시스템.
  7. 제6 항에 있어서,
    상기 프로바이더와 관련된 어떠한 스테이 온라인 바인딩에 대해서도 조회하는 것은, 무접속 프로토콜(connectionless protocol)을 사용하는 것을 더 포함하는 것을 특징으로 하는 분산 네트워크 내에서 프로바이더 및 리퀘스터 사이의 통신을 관리하기 위한 시스템.
  8. 제1 항에 있어서,
    상기 리퀘스터는:
    프로세서;
    상기 프로세서와 전자 통신하는 메모리;
    상기 메모리에 저장된 지시를 포함하고,
    상기 지시는 상기 리퀘스터와 관련된 적어도 하나의 바인딩이 존재하는 지를 판단하는 것을 포함하는 것을 특징으로 하는 분산 네트워크 내에서 프로바이더 및 리퀘스터 사이의 통신을 관리하기 위한 시스템.
  9. 제8 항에 있어서,
    상기 리퀘스터의 상기 메모리에 저장된 상기 지시는,
    상기 프로바이더로부터 데이터 또는 서비스를 수신하기 위해, 상기 바인딩을 사용하는 것을 더 포함하는 것을 특징으로 하는 분산 네트워크 내에서 프로바이더 및 리퀘스터 사이의 통신을 관리하기 위한 시스템.
  10. 분산 네트워크 내에서 개재 액세스 노드 네트워크를 통하여 프로바이더 및 리퀘스터 사이의 통신을 관리하기 위한 방법에 있어서,
    상기 방법은:
    상기 개재 액세스 노드 네트워크를 통하여 스테이 온라인 바인딩을 상기 리퀘스터에서 상기 프로바이더로 제공하는 단계;
    상기 프로바이더가 상기 스테이 온라인 바인딩을 인지하게 되었기 때문에, 상기 프로바이더에 의해 적어도 하나의 바인딩을 제공하는 단계; 및
    상기 프로바이더와 관련된 어떠한 스테이 온라인 바인딩에 대해서도 개재 액세스 노드 네트워크로부터의 통신을 감시하고, 상기 개재 액세스 노드 네트워크를 통하여 통신하고 있는 상기 프로바이더와 관련된 스테이 온라인 바인딩이 없다고 판단되는 경우, 상기 프로바이더의 네트워크와의 접속을 끊는 단계를 포함하는 것을 특징으로 하는 분산 네트워크 내에서 프로바이더 및 리퀘스터 사이의 통신을 관리하기 위한 방법.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 제10 항에 있어서,
    상기 통신을 감시하는 단계는 무접속 프로토콜을 사용하는 것을 특징으로 하는 분산 네트워크 내에서 프로바이더 및 리퀘스터 사이의 통신을 관리하기 위한 방법.
  15. 삭제
  16. 삭제
  17. 제14 항에 있어서,
    상기 리퀘스터로의 상기 바인딩 제공을 중단한 후, 미리 정해진 기간을 대기하는 단계; 및
    상기 프로바이더에 관련된 스테이 온라인 바인딩에 대하여 조회하는 단계를 더 포함하는 것을 특징으로 하는 분산 네트워크 내에서 프로바이더 및 리퀘스터 사이의 통신을 관리하기 위한 방법.
  18. 제17 항에 있어서,
    만일 상기 프로바이더와 관련된 적어도 하나의 스테이 온라인 바인딩이 존재하면, 상기 프로바이더는 계속해서 상기 바인딩을 제공하는 단계를 더 포함하는 것을 특징으로 하는 분산 네트워크 내에서 프로바이더 및 리퀘스터 사이의 통신을 관리하기 위한 방법.
  19. 제10 항에 있어서,
    상기 프로바이더로부터 데이터 또는 서비스를 수신하기 위해, 상기 바인딩을 사용하는 것을 특징으로 하는 분산 네트워크 내에서 프로바이더 및 리퀘스터 사이의 통신을 관리하기 위한 방법.
  20. 분산 네트워크 내에서 개재 액세스 노드 네트워크를 통하여 프로바이더와 리퀘스터 사이의 통신을 관리하기 위한 방법을 실시하도록 구성된 컴퓨팅 장치에 있어서,
    상기 컴퓨팅 장치는:
    프로세서;
    상기 프로세서와 전자 통신하는 메모리;
    상기 메모리에 저장된 지시를 포함하고,
    상기 지시는:
    적어도 하나의 바인딩을 제공하고, 상기 리퀘스터로부터 스테이 온라인 바인딩을 수신하며, 상기 프로바이더가 상기 스테이 온라인 바인딩을 인지하게 되었기 때문에, 상기 적어도 하나의 바인딩을 계속해서 제공하고, 상기 프로바이더와 관련된 어떠한 스테이 온라인 바인딩에 대해서도 개재 액세스 노드 네트워크로부터의 통신을 감시하고, 상기 개재 액세스 노드 네트워크를 통하여 통신하고 있는 상기 프로바이더와 관련된 스테이 온라인 바인딩이 없다고 판단되는 경우, 상기 프로바이더의 네트워크와의 접속을 끊는 것을 포함하는 것을 특징으로 하는 분산 네트워크 내에서 프로바이더 및 리퀘스터 사이의 통신을 관리하기 위한 방법을 실시하도록 구성된 컴퓨팅 장치.
KR1020087015256A 2005-12-29 2006-02-20 분산 네트워크 내에서 프로바이더의 온라인 상태를관리하기 위한 방법 및 시스템 KR101058970B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/324,025 US8073929B2 (en) 2005-12-29 2005-12-29 Systems and methods for managing a provider's online status in a distributed network
US11/324,025 2005-12-29
PCT/JP2006/303506 WO2007074542A1 (en) 2005-12-29 2006-02-20 Systems and methods for managing a provider's online status in a distributed network

Publications (2)

Publication Number Publication Date
KR20080078014A KR20080078014A (ko) 2008-08-26
KR101058970B1 true KR101058970B1 (ko) 2011-08-23

Family

ID=36889053

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087015256A KR101058970B1 (ko) 2005-12-29 2006-02-20 분산 네트워크 내에서 프로바이더의 온라인 상태를관리하기 위한 방법 및 시스템

Country Status (7)

Country Link
US (2) US8073929B2 (ko)
EP (1) EP1984816B1 (ko)
JP (1) JP4697227B2 (ko)
KR (1) KR101058970B1 (ko)
CN (2) CN103327067B (ko)
RU (1) RU2412466C2 (ko)
WO (1) WO2007074542A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3973986B2 (ja) * 2002-07-12 2007-09-12 株式会社エヌ・ティ・ティ・ドコモ ノード探索方法、ノード、通信システム及びノード探索プログラム
US8073929B2 (en) 2005-12-29 2011-12-06 Panasonic Electric Works Co., Ltd. Systems and methods for managing a provider's online status in a distributed network
US9294509B2 (en) * 2013-11-14 2016-03-22 Broadcom Corporation Hierarchical management of devices
US9665633B2 (en) 2014-02-19 2017-05-30 Snowflake Computing, Inc. Data management systems and methods
CN104135388B (zh) * 2014-08-15 2017-06-06 曙光信息产业(北京)有限公司 一种分布式系统中数据节点的安全管理方法
US10834231B2 (en) * 2016-10-11 2020-11-10 Synergex Group Methods, systems, and media for pairing devices to complete a task using an application request

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050004914A1 (en) * 1996-10-11 2005-01-06 Sun Mircrosystems, Inc. Methods, apparatus, and product for distributed garbage collection

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6222856B1 (en) 1996-07-02 2001-04-24 Murali R. Krishnan Adaptive bandwidth throttling for individual virtual services supported on a network server
US6498795B1 (en) * 1998-11-18 2002-12-24 Nec Usa Inc. Method and apparatus for active information discovery and retrieval
US6460076B1 (en) * 1998-12-21 2002-10-01 Qwest Communications International, Inc. Pay per record system and method
US20040243483A1 (en) * 1999-07-30 2004-12-02 Web2Cad Ag Mechanical engineering web portal
EP1228455A1 (en) * 1999-11-02 2002-08-07 E-Clarity, Inc. Verbal classification system for the efficient sending and receiving of information
US6922685B2 (en) 2000-05-22 2005-07-26 Mci, Inc. Method and system for managing partitioned data resources
US7496637B2 (en) * 2000-05-31 2009-02-24 Oracle International Corp. Web service syndication system
US6928051B2 (en) 2000-12-18 2005-08-09 Intel Corporation Application based bandwidth limiting proxies
CA2331046A1 (en) * 2001-01-15 2002-07-15 Netpcs Networks Inc. Method and system for internet connection and communication management
WO2003005235A1 (en) * 2001-07-04 2003-01-16 Cogisum Intermedia Ag Category based, extensible and interactive system for document retrieval
US7194543B2 (en) 2001-11-12 2007-03-20 Mci, Llc System and method for creating and managing survivable, service hosting networks
US7853643B1 (en) * 2001-11-21 2010-12-14 Blue Titan Software, Inc. Web services-based computing resource lifecycle management
US6954798B2 (en) * 2002-08-28 2005-10-11 Matsushita Electric Works, Ltd. Content-based routing of data from a provider to a requestor
US7275104B1 (en) * 2003-04-29 2007-09-25 Blue Titan Software, Inc. Web-services-based data logging system including multiple data logging service types
US7831693B2 (en) * 2003-08-18 2010-11-09 Oracle America, Inc. Structured methodology and design patterns for web services
US10397342B2 (en) * 2003-09-24 2019-08-27 International Busniess Machines Corporation Web service contract selection
US7328282B2 (en) * 2003-10-23 2008-02-05 International Business Machines Corporation Aspect oriented web service invocation
US7464142B2 (en) * 2003-12-12 2008-12-09 International Business Machines Corporation Port type agnostic proxy support for web services intermediates
US20060010236A1 (en) * 2004-06-10 2006-01-12 International Business Machines Corporation Usage-based methodology for providing web services
GB2419790B (en) * 2004-10-29 2009-04-08 Hewlett Packard Development Co Asynchronous messaging in web services
US7808904B2 (en) * 2004-11-18 2010-10-05 Fortinet, Inc. Method and apparatus for managing subscriber profiles
US20060200381A1 (en) * 2005-03-04 2006-09-07 Epson America Inc. Epson digital marketing system
US8270293B2 (en) * 2005-12-02 2012-09-18 Panasonic Corporation Systems and methods for efficient electronic communication in a distributed routing environment
US8073929B2 (en) 2005-12-29 2011-12-06 Panasonic Electric Works Co., Ltd. Systems and methods for managing a provider's online status in a distributed network

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050004914A1 (en) * 1996-10-11 2005-01-06 Sun Mircrosystems, Inc. Methods, apparatus, and product for distributed garbage collection

Also Published As

Publication number Publication date
EP1984816B1 (en) 2015-07-29
WO2007074542A1 (en) 2007-07-05
RU2412466C2 (ru) 2011-02-20
KR20080078014A (ko) 2008-08-26
US20120047198A1 (en) 2012-02-23
US20070156875A1 (en) 2007-07-05
JP4697227B2 (ja) 2011-06-08
EP1984816A1 (en) 2008-10-29
CN103327067B (zh) 2016-04-27
US8073929B2 (en) 2011-12-06
RU2008125159A (ru) 2009-12-27
JP2008522251A (ja) 2008-06-26
US8626873B2 (en) 2014-01-07
CN101128801A (zh) 2008-02-20
CN103327067A (zh) 2013-09-25

Similar Documents

Publication Publication Date Title
KR100970530B1 (ko) 컴퓨터 네트워크 상의 선택식 멀티캐스트 프록시를제공하기 위한 시스템 및 방법
KR101058970B1 (ko) 분산 네트워크 내에서 프로바이더의 온라인 상태를관리하기 위한 방법 및 시스템
JP4412405B2 (ja) ネットワーク内通信用転送処理を選択するためのシステムと方法
WO2007069342A1 (en) Systems and methods for controlling embedded devices using device style sheets
KR100978413B1 (ko) 분포된 라우팅 환경에서 효과적인 전자 통신을 행하기 위한시스템 및 방법
RU2405271C2 (ru) Системы и способы для управления трафиком в одноранговой сети
US7614080B2 (en) Systems and methods for providing secure access to embedded devices using a trust manager and a security broker
KR100996026B1 (ko) 분산 라우팅 환경에서의 장애 극복 처리 시스템 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
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: 20140722

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150716

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160701

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170720

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180719

Year of fee payment: 8