KR20080075138A - 분포된 라우팅 환경에서 효과적인 전자 통신을 행하기 위한시스템 및 방법 - Google Patents

분포된 라우팅 환경에서 효과적인 전자 통신을 행하기 위한시스템 및 방법 Download PDF

Info

Publication number
KR20080075138A
KR20080075138A KR1020087013336A KR20087013336A KR20080075138A KR 20080075138 A KR20080075138 A KR 20080075138A KR 1020087013336 A KR1020087013336 A KR 1020087013336A KR 20087013336 A KR20087013336 A KR 20087013336A KR 20080075138 A KR20080075138 A KR 20080075138A
Authority
KR
South Korea
Prior art keywords
provider
binding
access node
intervening access
requested
Prior art date
Application number
KR1020087013336A
Other languages
English (en)
Other versions
KR100978413B1 (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 KR20080075138A publication Critical patent/KR20080075138A/ko
Application granted granted Critical
Publication of KR100978413B1 publication Critical patent/KR100978413B1/ko

Links

Images

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]
    • 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/2854Wide area networks, e.g. public data networks
    • H04L12/2856Access arrangements, e.g. Internet access
    • H04L12/2869Operational details of access network equipments
    • H04L12/2898Subscriber equipments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4541Directories for service discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Medical Informatics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)

Abstract

프로바이더(102)와의 통신을 관리하기 위한 시스템을 개시한다. 프로바이더(102)는 프로바이더 바인딩(112)을 포함한다. 리퀘스터(104a, 104b)는 요구된 바인딩을 요구한다. 개재 액세스 노드(110)는 프로바이더(102)오 리퀘스터(104a, 104b)에 전기적으로 접속되어 있다. 개재 액세스 노드(110)는, 메모리 내에 기억되어 있음과 동시에, 프로바이더와의 통신을 관리하는 방법을 실행하는 프로그램 명령을 포함한다. 프로바이더 바인딩은 프로바이더로부터 수신된다. 프로바이더 바인딩은 저장된다. 리퀘스터로부터 송신된 요구 신호는 요구된 바인딩을 특정한다. 요구된 바인딩이 프로바이더로부터 제공된 것인지의 여부가 판단된다. 요구 신호는 요구된 바인딩이 프로바이더로부터 제공된 것이라고 판단된 경우에 있어서만, 프로바이더로 보내진다.
프로바이더, 개재 액세스 노드, 리퀘스터

Description

분포된 라우팅 환경에서 효과적인 전자 통신을 행하기 위한 시스템 및 방법{SYSTEMS AND METHODS FOR EFFICIENT ELECTRONIC COMMUNICATION IN A DISTRIBUTED ROUTING ENVIRONMENT}
본 발명은 일반적으로는 컴퓨터 및 컴퓨터 관련 기술에 관한 것이다. 더 구체적으로, 본 발명은 분포된 환경에서 효과적인 전자 통신을 행하기 위한 시스템 및 방법에 관한 것이다.
컴퓨터 및 통신 기술은 빠른 속도로 계속 진보하고 있다. 실제로, 컴퓨터 및 통신 기술은 인간 생활의 다방면에 영향을 미친다. 예를 들어, 소비자들에 의해 사용되고 있는 많은 장치들은 그 내부에 소형 컴퓨터를 가지고 있다. 이러한 소형 컴퓨터는 크기 및 고도화(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)이 실현될 수도 있다.
프로바이더와 통신을 관리하는 시스템을 개시(開示)한다. 프로바이더는 프로바이더 바인딩(provider binding)을 포함한다. 리퀘스터(requestor)는 요청된 바인딩을 포함한다. 개재 액세스 노드(intervening access node)는, 상기 프로바이더 및 상기 리퀘스터와 전자 통신을 행한다. 이 개재 액세스 노드는, 메모리에 저장된 프로그램 명령을 포함하며, 이것이 프로바이더와의 통신을 관리하는 방법을 실현한다. 상기 프로바이더 바인딩이 상기 프로바이더로부터 수신된다. 이 프로바이더 바인딩이 저장된다. 상기 리퀘스터로부터 요구 신호가 보내지고, 이것이 상기 요구된 바인딩을 특정한다. 상기 요구된 바이딩이 상기 프로바이더로부터 제공되어 있는지, 상기 프로바이더 바인딩의 대상(object)을 상기 요구된 바인딩으로부터 대상과 비교함으로써, 판단된다. 상기 요구된 바인딩이 상기 프로바이더로부터 제공되어 있다고 판단되면, 그때에만, 상기 요구 신호가 상기 프로바이더로 보내진다. 실시예에 따라서는, 상기 요구 신호를 상기 프로바이더로 보내는 일없이, 상기 요구 신호에 확인 응답해도 좋다.
어떤 실시예에 있어서는, 상기 프로바이더는 개재 액세스 노드가 아니라고 판단되어도 좋다. 따라서, 어떤 실시예에 있어서는, 상기 프로바이더는 개재 액세스 노드가 아니다.
상기 개재 액세스 노드는 또한, 다른 어떠한 개재 액세스 노드로 상기 요구 신호를 보내도 좋다. 복수의 개재 액세스 노드가 상기 시스템에 포함되어도 좋다. 이 실시예에 있어서, 상기 방법은 상기 요구 신호를 상기 복수의 개재 액세스 노드로 보내어도 좋다.
상기 개재 액세스 노드는, 수신된 요구 신호 리스트를 포함해도 좋다. 또한, 상기 개재 액세스 노드는, 개재 액세스 노드가 아닌 프로바이더 리스트를 포함해도 좋다. 상기 개재 액세스 노드는, 상기 개재 액세서 노드가 아닌 프로바이더의 바인딩 리스트를 가져도 좋다. 상기 프로바이더 바인딩과 상기 요구된 바인딩은 각각, 대상 및 인터페이스를 포함해도 좋다.
상기 프로바이더는 다양한 형태로 실시되어도 좋다. 예를 들어, 상기 프로바이더는 조명 컨트롤 시스템의 일부를 이루는 임베디드 시스템이어도 좋다. 상기 프로바이더는 시큐리티 시스템의 일부를 이루는 임베디드 시스템이어도 좋다. 또한, 상기 프로바이더는 홈 컨트롤 시스템의 일부를 이루는 임베디드 시스템이어도 좋다.
리퀘스터와 프로바이더 간(間)의 전자 통신을 관리하는 방법도 개시된다. 개재 액세스 노드는, 상기 프로바이더 및 상기 리퀘스터와 전자 통신을 행한다. 이 개재 액세스 노드에서, 상기 프로바이더로부터 상기 프로바이더 바인딩이 수신된다. 이 프로바이더 바인딩이 상기 개재 액세스 노드 상에 저장된다. 상기 리퀘스트로부터 요구 신호가 보내져서, 그것이 상기 요구된 바인딩을 특정한다. 상기 요구된 바인딩이 상기 프로바이더로부터 제공되어 있는지, 상기 프로바이더 바인딩의 대상을 상기 요구된 바인딩으로부터의 대상과 비교함으로써, 판단된다. 상기 요구된 바인딩이 상기 프로바이더로부터 제공되어 있다고 판단되면, 그때에만, 상기 요구 신호가 상기 프로바이더로 보내진다.
리퀘스터와 프로바이더 간의 전자 통신을 관리하는 방법을 실현하도록 구성된 컴퓨팅 장치도 개시된다. 프로세서가 있으며, 그것이 메모리와 전자 통신을 행한다. 상기 메모리에 명령이 저장되고, 방법을 실현하고 있다. 상기 컴퓨팅 장치에서, 상기 프로바이더로부터 상기 프로바이더 바인딩이 수신된다. 이 프로바이더 바인딩이 상기 컴퓨팅 장치에 저장된다. 상기 리퀘스터로부터 요구 신호가 보내지고, 이것이 상기 요구된 바인딩을 특정한다. 상기 요구된 바인딩이 상기 프로바이더로부터 제공되어 있는지, 상기 프로바이더 바인딩의 대상을 상기 요구된 바인딩으로부터의 대상과 비교함으로써, 판단된다. 상기 요구된 바인딩이 상기 프로바이더로부터 제공되어 있다고 판단되면, 그때에만, 상기 요구 신호가 상기 프로바이더로 보내진다.
리퀘스터와 프로바이더 간의 전자 통신을 관리하는 방법을 실현하는 실행가능한 명령을 포함하는 컴퓨터 판독가능한 매체도 개시된다. 개재 액세스 노드는, 상기 프로바이더 및 상기 리퀘스터와 전자 통신을 행한다. 이 개재 액세스 노드에서, 상기 프로바이더로부터 상기 프로바이더 바인딩이 수신된다. 이 프로바이더 바인딩이 상기 개재 액세스 노드 상에 저장된다. 상기 리퀘스터로부터 요구 신호가 송신되고, 이것이 상기 요구된 바인딩을 특정한다. 상기 요구된 바인딩이 상기 프로바이더로부터 제공되어 있는지, 상기 프로바이더 바인딩의 대상을 상기 요구된 바인딩으로부터의 대상과 비교함으로써, 판단된다. 상기 요구된 바인딩이 상기 프로바이더로부터 제공되어 있다고 판단되면, 이때에만, 상기 요구 신호가 상기 프로바이더로 보내진다. 어떤 실시예에서는, 별도의 항목을 저장해도 되며, 여기에는 수신된 요구 신호 리스트와, 개재 액세스 노드가 아닌 프로바이더 리스트와, 상기 개재 액세스 노드가 아닌 프로바이더의 바인딩의 리스트가 포함된다.
본 발명의 범례적 실시예가, 이하의 설명과 그에 첨부된 청구항을 첨부 도면에 관련시켜 참조함으로써, 보다 명백해질 것이다. 이들 도면은, 범례적 실시예만을 도면화하고 있으므로, 발명의 범위 제한으로 생각되어서는 안된다는 이해를 바 탕으로, 본 발명의 범례적 실시예를 더 특정하고 상술하는 설명을, 다음의 첨부 도면을 이용하여 행하지만, 그 도면 중;
도 1은, 컴퓨터 네트워크 내에 2개의 개재 액세스 노드를 예시하는 네트워크 블록도이다.
도 2는, 컴퓨터 네트워크 내에 수개(several)의 개재 액세스 노드를 예시하는 네트워크 블록도이다.
도 3은, 요구 신호를 송출하는 리퀘스터의 블록도이다.
도 4는, 개재 액세스 노드에 의한 신호 전달의 방법을 예시하는 흐름도이다.
도 5는, 차선의 링크를 통하여 접속된 프로바이더를 예시하는 네트워크 블록도이다.
도 6은, 개재 액세스 노드의 일실시예의 블록도이다.
도 7은, 프로바이더가 네트워크에 접속되는 방법의 일실시예인 블록도이다.
도 8은, 리퀘스터가 프로바이더와 서비스 통신 링크를 설치하는 방법의 일실시예인 블록도이다.
도 9는, 개재 액세스 노드가 요구 신호를 특정 프로바이더로 보내야 하는지 판단하는 방법의 일실시예인 블록도이다.
도 10은, 개제 액세스 노드가 요구 신호를 특정 프로바이더로 보내야 하는지 판단하는 방법의 다른 실시예인 블록도이다.
도 11은, 임베디드 장치의 일실시예에 이용가능한 하드웨어 콤포넌트의 블록도이다.
도 12는, 본 명세서에 개시된 시스템 및 방법을 이용가능한 조명 시스템을 예시하는 블록도이다.
도 13은, 본 명세서에 개시된 시스템 및 방법을 이용가능한 보안 시스템을 예시하는 블록도이다.
도 14는, 본 명세서에 개시된 시스템 및 방법을 이용가능한 홈 시스템을 예시하는 블록도이다.
여기서, 각 도면을 참조하여 본 발명의 다양한 실시예를 설명한다. 도면 중, 같은 참조 번호는 동일, 혹은 기능적으로 유사한 요소를 나타낸다. 본 발명의 각 실시예는, 본 명세서에서 개괄적으로 설명하고, 각각의 도면에 예시하고 있는 바와 같이, 다양한 다른 구성으로 배열되어 디자인된 것이다. 따라서, 이하에 이들 도면으로 대표되는 본 발명의 다수의 범례적 실시예를 더 상세히 설명하지만, 그 설명은, 단순히 본 발명의 각 실시예를 나타내는 것이며, 청구항에 기재한 발명의 범위를 한정하는 것을 의도하고 있지 않다.
본 명세서에서는 "범례적(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)가 쌍으로 되어 있다. 다수의 프로바이더가 동일 서비스(108), 바인딩(112), 대상(114), 혹은 인터페이스(116)를 제공할 수 있는 상황이 있을 수 있다. 각 바인딩(112)을 고유한(unique) 바인딩ID(118)으로 나타낼 수가 있다. 바인딩ID(118)은 네트워크(100)에 대하여 반드시 고유해야만 한다.
프로바이더(102)는 임베디드 프로바이더여도 좋다. 임베디드 프로바이더는, 임베디드 장치 상에 실현된 프로바이더(102)이다. 임베디드 프로바이더는 통상의 데스크탑 컴퓨터에 관계된 콤포넌트와 동일한 것을 포함하는 타입의 컴퓨팅 장치이나, 모든 것이 동일하지는 않다. 예를 들어, 임베디드 장치에 따라서는, 모니터가 포함되지 않으며, 다른 것에서는, 키보드 혹은 마우스가 포함되지 않고, 또한 임베디드 장치에 따라서는, 모니터 또는 키보드/마우스의 어느 한쪽이 포함되는 것도 아니다. 많은 임베디드 장치는, 마이크로 컨트롤러에 기초한(microcontroller-based) 장치로 되어 있다. 즉, 그 임베디드 장치의 중앙 처리부는 마이크로 컨트롤러이다.
본 명세서에서 이용되는 용어 "네트워크"는, 일련의 노드가 통신로에 의해 연결된 시스템에 참조된다. 노드는, 다른 노드와 통신하는 물리적인 컴퓨팅 장치이다. 노드의 특정한 움직임(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)" 해서 바인딩을 제공할 수 있다면, 상당히 유익할 것이다. 본 명세서에 개시된 시스템 및 방법에 의하면, 네트워크를 통하여 요구를 효율적으로 전달할 수 있고, 그 접속을 쌍방의 루프(loop)로 행할 수 있으며, 또한 다수의 무관심 프로바이더(또 다른 서비스를 제공할 수 없는 프로바이더를 의미)에 대응할 수 있다.
상기 개재 액세스 노드(106, 206)은, 루프를 포함하는 임의의 방법으로 접속해도 좋다. 도 1 및 2에서는, 리퀘스터(104, 204, 205) 및 프로바이더(102, 202, 205, 206e)를 예시했다. 리퀘스터 및 프로바이더가 분리한 노드여도, 개재 액세스 노드 상에 병존하여도 좋다.
여기서, 도 3을 참조하면, 리퀘스터(304)가 바인딩(309)을 희망하면, 시스템을 통하여 요구 신호(305)가 보내진다. 이 신호(305)는, 모든 개재 액세스 노드에 도달해야만 하며, 또한 상기 바인딩(309)을 아마도 제공할 수 있을지도 모르는 프로바이더에만 도달해야 한다. 요구 신호(305)는, 이 신호를 고유하게 식별하는 신호ID(307)와, 찾고 있는 바인딩을 인식하는 바인딩(309)을 포함한다. 개재 액세스 노드 시스템은 루프를 포함할 수도 있으므로, 각 신호(305)는 고유하게 식별화된다. 이 방법으로는, 루프백(loopback)을 검출할 수 있다. 중간 노드에, 어떠한 신호의 수신에도 관심이 없다고 선언시키는 일이 있어도 좋다.
도 4는, 개재 액세스 노드(106)에 의한 신호 전달의 방법(400)을 예시하는 흐름도이다. 요구 신호(305)를 수신한다(402). 그리고, 그 신호(305)의 고유한 식별자(307)를 체크함으로써, 이 요구 신호(305)가 중복되어 있는지 판단한다(404). 이 신호가 중복되어 있으면, 이 노드는 즉시, 그 신호(305)에 확인 응답한다(406).
만일, 신호(305)가 중첩되어 있지 않으면, 이 신호를 본 노드에 송신한 노드를 제외하고, 본 노드에 접속되어 있는 모든 개재 액세스 노드로, 그 신호를 전달한다(408). 그리고, 이 노드는 신호를 송신한, 접속되어 있는 노드로부터의 확인 응답을 기다린다(410). 이들 확인 응답을 받아, 그리고/또는 타임 아웃에 도달했을 때, 상기 신호를 본 노드(the present node)에 송신한 노드로 확인 응답을 송신한다(412).
도 4에 개략적으로 도시된 방법(400)은, 루프를 포함할 수도 있는 개재 노드(106)가 최적의 움직임(optimal behavior)을 보인 것이다. 중간 노드에 직접 접속된(병존하는) 프로바이더는, 매우 적은 오버헤드(overhead)로 동일한 로직을 이용할 수 있다.
개재 액세스 노드가 아닌 어떤 프로바이더로 어떻게 착신시키는가 라는 문제가 있다. 도 5는, 이러한 사태가 일어날 수 있는 네트워크(500)를 예시한 블록도이다. 문제가 발생할지도 모를 프로바이더 노드(502)는, 다양한 방법을 이용하여(예를 들어, 슬로 모뎀 라인(slow modem lines)과 같은) 접속을 행할 수 있는, 통상, 소형의 임베디드 장치이다. 도시된 바와 같이, 리퀘스터(504)가 일련의(a set of) 개재 액세스 노드(506a-c)와 전자 통신 중이다. 하나의 개재 액세스 노드(506b)는, 불충분한 접속(poor connection)(507a)(예를 들어, 슬로 모뎀, 불일치 접속(inconsistent connection) 등)을 통하여 단일 프로바이더(502a)로 접속되어 있다. 또 다른 개재 노드(506c)는, 게이트웨이(503)에 의해 상당히 많은 수의 프로바이더(502b-c)에 접속되어 있다.
개재 노드(506c)는, 게이트웨이(503)에 대하여 불충분한 접속(507b)을 가지며, 이것은 게이트웨이(503)의 다른 쪽에 있는 상기 다수의 프로바이더(502b-c)에 의해 그 정도를 증가시킨다. 프로바이더에 타입이 있으며, 그리고/또는, 그 접속에 타입이 있으므로, 도 4에서의 상기 로직(신호를 보내고, 확인 응답을 기다림)에서는, 불충분한 움직임(저속)을 초래할지도 모른다. 이들의 처리하기 어려운 프로바이더(장치)가, 언제든, 비교적 많은 수의 네트워크에 접속된다면, 더한 문제가 발생할 수도 있다.
일부 선별 로직(filtering logic)을 이용하여, 어느 프로바이더를 신호화해야 하는지 판단해도 좋다. 또한, 이들 프로바이더가 중간 노드가 아니라면, 이들이 "루프"의 일부를 형성할 가능성은 없다고 가정할 수 있다. 프로바이더가 그 자신을 개재 액세스 노드로서 식별하지 않는지, 또는 그 접속 타입이 어떤 조건을 만족시키지 않는다면, 그 프로바이더는 개재 액세스 노드가 아니라는 가정을 시스템에 설치해도 좋다. 이것은, 비개재 프로바이더라면, 상기 신호(305)를 다른 어떠한 노드로 보낼 필요가 없으므로, 신호(305)의 고유한 식별자(307)가 미사용(未使用-unused)이 된다는 것을 의미한다. 이것은, 이들 비개재 프로바이더로부터의 확인 응답을 기다릴 필요가 없다는 것을 의미하고 있다.
상기 로직에 근거하여, 비개재 프로바이더에 접속된 개재 액세스 노드는, 요구된 바인딩을 그 비개재 프로바이더가 제공하는 일련의 바인딩과 비교함으로써, 신호를 보내야만 하는지를 판단할 수 있다. 요구되고 있는 바인딩을 비개재 프로바이더가 제공할 수도 있다면, 그 프로바이더로 신호를 송출한다. 그렇지 않으면, 신호를 송출하지 않는다. 이 판단은, 바인딩(309)의 대상 부분과, 각 바인딩(112)의 오브젝트를 비교함으로써, 행하여진다. 신호를 보내야만 하는지의 판단은, 그 개재 노드로 알 수 있는 구성, 또는 그 외의 정보에 근거하여, 다른 방식으로 행하여도 좋다.
도 6은, 개재 액세스 노드(606)의 일실시예의 블록도이다. 이 개재 액세스 노드(606)는, 요구 신호(305)를 프로바이더(102)로 보내야만 하는지의 판단을 가능하게 하는데 필요한 정보를 포함한다. 개재 노드(606)는, 수신한 요구 신호(608)의 리스트를 포함하므로, 이미 요구를 받았는지의 여부를 판단할 수 있다. 비개재 프로바이더의 리스트(610)도 포함되므로, 이 노드(606)는, 자신이 접속된 개재 액세스 노드가 아닌 프로바이더를 식별할 수 있다. 상기 비개재 프로바이더를 위한 바인딩 리스트(612)도 포함된다. 개재 노드(606)은, 이 리스트를 이용하여 요구 신호를 1개 이상의 비개재 프로바이더로 보내야만 하는지를 판단해도 좋다. 개재 액세스 노드(606)에는, 자신이 알아챈 네트워크 상의 바인딩을 모두 포함하는 바인딩의 데이터베이스(614)가 포함될 수도 있다.
도 7은, 프로바이더(102)가 네트워크(100)에 접속하는 방법(700)의 일실시예의 흐름도이다. 프로바이더(102)가 네트워크(100)로 접속된다(702). 그리고, 상기 프로바이더(102)가, 그 바인딩을 네트워크(100) 내의 개재 액세스 노드(106)로 통지한다(704). 프로바이더(102)가 그 바인딩을 통지하면(704), 그 각 통지를 네트워크(100) 상의 개재 액세스 노드(106)가 수신한다. 이들 개재 액세스 노드(106)은 이어서, 이 정보를 저장한다(706). 이때, 이들 개재 액세스 노드(106)는, 상기 프로바이더가 비개재 프로바이더인지를 저장한다. 1개 이상의 노드에 통신되는 이 새로운 프로바이더의 통지를 가용성 통지로서 참조하여도 좋다.
1개 이상의 개재 액세스 노드(106)를, 디렉토리로서의 역할을 가지도록 구성해도 좋다. 프로바이더의 가용성 및 이러한 프로바이더와의 통식 방식에 관하여, 다른 노드로 정보를 제공하는 노드가 디렉토리이다. 디렉토리로서의 역할을 갖는 개재 액세스 노드(106)는 어느 것이나 다 프로바이더(102) 정보를 디렉토리에 저장한다.
개재 액세스 노드(106)에 접속된 디바이스 및 소프트웨어 노드에, 리퀘스트 및 프로바이더의 역할을 갖게 할 수가 있다. 더군다나, 개재 액세스 노드(106)가, 리퀘스터 및/또는 프로바이더여도 좋다. 예를 들어, 그 개재 액세스 노드(106)은, 개재 액세스 노드(106) 사이에서 통신을 개시할 즈음의 리퀘스터/프로바이더일 수도 있다. 개재 액세스 노드(106)는, 그것(106)이 개재 액세스 노드(106)에 접속할 때에, 그 개재 액세스 노드(106)가 프로바이더에 관한 정보를 요구할 경우, 리퀘스터로서의 역할을 갖는다. 개재 액세스 노드(106)는, 다른 프로바이더에 관한 정보를 다른 개재 액세스 노드(106)에 제공하고 있을 때, 프로바이더로서의 역할을 갖는다.
도 8은, 리퀘스터(104)가 네트워크(100)와 서비스 통신 링크를 설치하는 방법(800)의 일실시예인 블록도이다. 리퀘스터(104)가 네트워크(100)로 접속한다(802). 그리고, 그 개재 액세스 노드(106)로부터의 바인딩 리스트를 리퀘스터(104)가 요구할 수도 있다(804). 이 리퀘스터는, 그 바인딩 리스트를 이용하여, 그것이 어떠한 서비스를 필요로 하고 있는지 판단할 수 있으며, 프로바이더 바인딩(112)을 포함하는 신호(305)를 송신함으로써, 프로바이더(102)로부터의 서비스(108)를 요구한다(806). 이 리퀘스터(104)로부터 프로바이더(102)로의 요구를, 개재 액세스 노드 네트워크(110, 210)가 통신한다(808). 다음으로, 프로바이더(102)가, 요구된 서비스의 제공을 개시한다(810).
도 9는, 개재 액세스 노드가 요구 신호를 특정 프로바이더로 보내야할지 판단하는 방법(900)의 일실시예인 흐름도이다. 요구 신호(305)를, 액세스 노드가 수신한다(902). 이 액세스 노드는, 다음으로 다른 모든 개재 액세스 노드로 그 신호를 보낸다(904). 액세스 노드는, 다음으로 모든 비개재 프로바이더에 대해서도, 요구되고 있는 바인딩을 그 비개재 프로바이더가 제공할 수 있는지를 판단한다(906). 액세스 노드는, 그 비개재 프로바이더(610)과 이들 비개재 프로바이더로부터의 바인딩(612)을 조사하여, 요구되고 있는 바인딩을 이들 비개재 프로바이더가 제공할 수 있는지를 판단함으로써, 상기 판단을 행하여도 좋다. 만일, 요구되고 있는 바인딩을 상기 비개재 프로바이더가 제공할 수 있다면, 그 프로바이더로 상기 신호를 송신한다(908). 그렇지 않으면, 신호를 송신하지 않는다(910).
도 10은, 개재 액세스 노드가 요구 신호를 특정 프로바이더로 보내야 할지를 판단하는 방법(1000)의 다른 실시예의 흐름도이다. 프로바이더(102)가 상기 네트워크로 접속한다(1002). 그리고, 그 프로바이더가 바인딩(112)을 네트워크 내의 상기 개재 액세스 노드로 통지한다(1004). 프로바이더가, 그 바인딩을 통지하면(1004), 그 각 통지를, 네트워크 상의 각 개재 액세스 노드가 수신한다. 상기 개지 액세스 노드는, 다음으로 이 정보를 저장한다(1006). 이때, 상기 개재 액세스 노드는, 그 접속이 지속적인지, 네트워크 접속의 빠르기, 프로바이더로부터의 응답 시간, 그리고, 프로바이더의 능력 등의 인자를 고려한, 네트워크 접속에 대한 상기 프로바이더의 질(quality)에 근거하여, 상기 프로바이더가 비개재 프로바이더라고 판단(1008)하거나, 또는 가정하기도 한다.
요구 신호를 상기 개재 액세스 노드가 수신한다(1010). 그 개재 액세스 노드는, 다음으로 다른 모든 액세스 노드에 대하여 그 신호를 보낸다(1012). 이 개재 액세스 노드는, 다음으로 그것이 직접적으로 접속되어 있는 어떠한 비개재 액세스 노드 프로바이더를 가지고 있는지를 판단한다(1014). 개재 액세스 노드는, 다음으로 어떠한 비개재 액세스 노드 프로바이더에 대해서도, 요구되고 있는 바인딩을 그 비개재프로바이더가 제공할 수 있는지를 판단한다(1016). 개재 액세스 노드는, 그 비개재 프로바이더(610)와 이들 비개재 프로바이더로부터의 바인딩(612)을 조사하여, 요구되고 있는 바인딩을 이들 비개재 프로바이더가 제공할 수 있는지 판단함으로써, 상기 판단을 행할 수도 있다. 만일, 요구되고 있는 바인딩을 상기 비개재 프로바이더가 제공할 수 있다면, 그 프로바이더로 상기 신호를 송신한다(1018). 그렇지 않으면, 그 비개재 프로바이더로 신호를 송신하지 않는다.
도 11은, 임베디드 프로바이더 또는 임베디드 리퀘스터 중 어느 하나로서 사용될 수도 있는 임베디드 장치의 일실시예에 이용가능한 하드웨어 콤포넌트의 블록도이다.
CPU(1110) 또는 프로세서는 임베디드 장치(1102)의 동작을 제어하기 위해 제공되어 좋고, 거기에는 다른 콤포넌트를 포함하며, 버스(1112)를 통하여 CPU(1110)에 연결되어 있다. CPU(1110)는, 해당 분야에서 알려진 마이크로프로세서, 마이크로컨트롤러, 디지털 시그널 프로세서 또는 다른 장치로서 실시되어도 좋다. CPU(1110)는, 메모리(1114)에 저장된 프로그램 코드에 근거하여, 논리적 및 산술적인 연산을 행한다. 어떤 실시예에 있어서, 메모리(1114)는 CPU(1110)에 포함된 온- 보드(on-board) 메모리여도 좋다. 예를 들어, 마이크로컨트롤러는 종종, 어느 정도의(a certain amount of) 온-보드 메모리를 포함하고 있다.
임베디드 장치(1102)에 네트워크 인터페이스(1116)를 포함하고 있어도 좋다. 네트워크 인터페이스(1116)는, 임베디드 장치(1102)와 네트워크(100)에 접속된 다른 장치 사이의 통신을 용이하게 한다. 네트워크(100)는, 페이저(pager) 네트워크, 휴대 전화 네트워크, 세계적인 통신 테트워크, 인터넷, 컴퓨터 네트워크, 전화 네트워크, 그 밖의 것이어도 좋다. 네트워크 인터페이스(1116)는, 적용가능한 네트워크(100)의 표준 프로토콜에 따라서 동작한다.
임베디드 장치(1102)에 메모리(1114)를 포함해도 좋다. 메모리(1114)가, 일시적인 데이터를 저장하는 랜덤 액세스 메모리(RAM)을 포함할 수도 있다. 그렇지 않으면, 또는 그에 더하여, 메모리(1114)가 고정된 코드 및 구성 데이터 등, 보다 영구적인 데이터를 저장하는 리드 온리 메모리(ROM)를 포함할 수도 있다. 메모리(1114)를, 하드 디스크 드라이브와 같은 자기적(magnetic) 기억 장치로서 실시해도 좋다. 메모리(1114)는, 전자적 정보를 저장가능한 어떠한 타입의 전자적 장치여도 좋다.
임베디드 장치(1102)에, 다른 장치와의 통신을 용이하게 하는 통신 포트(1118)를 포함해도 좋다. 임베디드 장치(1102)에, 키보드, 마우스, 조이스틱, 터치스크린, 모니터, 스피커, 프린터 등과 같은 입출력 장치(1120)를 포함해도 좋다.
본 시스템 및 방법은, 몇몇 상황(several contexts)에서 이용될 수도 있다. 도 12는, 본 시스템 및 방법을 실현가능한 시스템의 일실시예를 예시한다. 도 12는, 조명 컨트롤러 시스템(1208)을 포함하는 조명 시스템(1200)의 일실시예를 예시하는 블록도이다. 도 12의 조명 시스템(1200)은, 가정의 다양한 방에 설치될 수도 있다. 이 시스템(1200)은, 예시된 바와 같이, 방(A), 방(B) 및 방(C)을 포함한다. 도 12에는 3개의 방을 나타냈으나, 시스템(1200)은, 가정 내, 주거 또는 그 외의 환경에 있어서 어떠한 수와 종류의 방에서 실현해도 좋다.
조명 컨트롤러 시스템(1208)은, 시스템(1200) 내의 추가 임베디드 시스템 및 콤포넌트를 감시하고 제어할 수도 있다. 하나의 실시예에 있어서, 방(A1202) 및 방(B1204)은 각각, 스위치 부품(1214, 1218)을 포함한다. 이들 스위치 부품(1214, 1218)은 2차 임베디드 시스템(1216, 1220)을 포함해도 좋다. 이들 2차 임베디드 시스템(1216, 1220)은, 조명 컨트롤러 시스템(1208)으로부터 명령을 받아도 좋다. 2차 임베디드 시스템(1216, 1220)은 다음으로, 이들 명령을 실행할 수도 있다. 이들 명령은, 다양한 조명 부품(1210, 1212, 1222, 1224)의 전원을 키거나, 또는 전원을 끄는 것을 포함해도 좋다. 이들 명령은, 상기 다양한 조명 부품(1210, 1212, 1222, 1224)의 밝기를 낮추거나, 또는 밝기를 높이는 것을 포함할 수도 있다. 이들 명령은, 상기 조명 부품(1210, 1212, 1222, 1224)의 밝기를 다양한 패턴으로 조절하는 것을 포함할 수도 있다. 상기 2차 임베디드 시스템(1216, 1220)은, 상기 방(A1202) 및 방(B1204)에 위치된 각 조명 부품(1210, 1212, 1222, 1224)의 조명 컨트롤러 시스템(1208)에 의한 감시 및 제어를 용이하게 한다.
조명 컨트롤러 시스템(1208)은, 묘사된 방(C1206) 내의 2차 임베디드 시스템(1228)을 포함하는 조명 부품(1226)으로 직접 명령을 내릴 수도 있다. 조명 컨트롤러(1208)는, 상기 2차 임베디드 시스템(1228)에 명령하여, 개별 조명 부품(1226)의 전력을 저하시키거나, 또는 전력을 증대시켜도 좋다. 마찬가지로, 조명 컨트롤러 시스템(1208)으로부터 받는 명령에, 개별 조명 부품(1226)의 밝기를 떨어뜨리거나, 또는 밝기를 올리는 것을 포함해도 좋다.
조명 컨트롤러 시스템(1208)은, 시스템(1200) 내의 개별 조명 부품(1230, 1232)을 감시하고, 직접 명령을 내릴 수도 있다. 이들 명령은 상기에 기술한 것과 유사한 명령을 포함할 수도 있다.
도 13은 본 발명에 관한 본 시스템 및 방법을 실현 가능한 시스템의 또 다른 실시예이다. 도 13은, 보안 시스템(1300)을 예시하는 블록도이다. 이 묘사된 실시예 중의 보안 시스템(1300)은, 방(A1302), 방(B1304), 및 방(C1306) 내에 실현되어 있다. 이들 방은, 가정 또는 그 외의 봉쇄된 환경의 역내(域內-confines) 내에 있 을 수도 있다. 시스템(1300)을 해방된 환경에서 실현해도 좋으며, 그 경우, 방(A, B, C), 즉 방(1302, 1304, 1306)은, 각각 영역, 또는 경계를 나타낸다.
상기 시스템(1300)은, 보안 컨트롤러 시스템(1308)을 포함한다. 이 보안 컨트롤러 시스템(1308)은, 시스템(1300) 내의 다양한 콤포넌트를 감시하고, 이들의 정보를 수신한다. 예를 들어, 동작 센서(1314, 1318)가 2차 임베디드 시스템(1316, 1320)을 포함해도 좋다. 동작 센서(1314, 1318)는, 움직임을 위한 근접 공간을, 감시하고, 움직임이 검출되면, 2차 임베디드 시스템(1316, 1320)을 통하여, 보안 컨트롤러 시스템(1308)에 경고한다. 보안 컨트롤러 시스템(1308)은, 시스템(1300) 내의 다양한 콤포넌트에 명령을 내려도 좋다. 예를 들어, 보안 컨트롤러 시스템(1308)은, 2차 임베디드 시스템(1316, 1320)에 명령을 내려서, 윈도우 센서(1310, 1322) 및 도어 센서(1312, 1324)의 전력을 증대시키거나, 또는 전력을 저하시켜도 좋다. 하나의 실시예에 있어서, 윈도우 센서(1310, 1322)가 윈도우의 움직임을 검출했을 경우, 2차 임베디드 시스템(1316, 1320)이 보안 컨트롤러 시스템(1308)에 통지한다. 마찬가지로, 도어 센서(1312, 1324)가 도어의 움직임을 검출했을 경우, 2차 임베디드 시스템(1316, 1320)이 보안 컨트롤러 시스템(1308)에 통지한다. 2차 임베디드 시스템(1316, 1320)은, 동작 센서(1314, 1318)에 명령하여, 이 동작 센서(1314, 1318) 내에 배치된 LED(도시하지 않음)를 작동시켜도 좋다.
보안 컨트롤러 시스템(1308)은, 시스템(1300) 내의 개별 컴포넌트를 감시하고, 이들에게 직접 명령을 내려도 좋다. 예를 들어, 보안 컨트롤러 시스템(1308)은, 동작 센서(1330), 또는 윈도우 센서(1332)를 감시하고, 이들 전력을 증대시키 거나, 전력을 저하시키는 명령을 내려도 좋다. 보안 컨트롤러 시스템(1308)은, 동작 센서(1330) 및 윈도우 센서(1332)에 명령하여, 이들 센서(1330, 1332) 내의 LED(도시하지 않음) 또는 음성 경보를 동작시켜도 좋다.
상기 시스템(1300)을 구성하는 개별의 각 콤포넌트가 2차 임베디드 시스템을 포함해도 좋다. 예를 들어, 도 13은, 2차 임베디드 시스템을 포함하는 도어 센서(1326)를 예시하고 있다. 보안 컨트롤러 시스템(1308)은, 상기의 기술과 유사한 방식으로 2차 임베디드 시스템(1328)을 감시하고, 명령을 내려도 좋다.
도 14는 홈 시스템(1400)의 일실시예를 예시하는 블록도이다. 이 홈 시스템(1400)은, 상기 조명 시스템(1200), 보안 시스템(1300) 등과 같은 다양한 시스템의 감시를 용이하게 하는 홈 컨트롤러(1408)를 포함한다. 홈 시스템(1400)은, 사용자가 1개 이상의 임베디드 시스템을 통하여 다양한 콤포넌트 및 시스템을 제어하는 것을 가능하게 한다. 하나의 실시예에 있어서, 홈 컨트롤러 시스템(1408)이, 도 12 및 도 13에 관하여 상기에 기술한 것과 동일한 방식으로 감시하고, 정보를 제공한다. 묘사된 실시예에 있어서, 홈 컨트롤러(1408)가 2차 임베디드 시스템(1420)을 통하여 난방 부품(1424)에 명령을 내린다. 난방 부품(1424)은, 거주 장소 또는, 오피스에서 통상 볼 수 있는 난로 또는 그 외의 가열 장치를 포함해도 좋다. 홈 컨트롤러 시스템(1408)은, 2차 임베디드 시스템(1420)을 통하여, 난방 부품(1424)의 전력을 증대시키거나, 또는 전력을 저하시키는 명령을 내려도 좋다.
마찬가지로, 홈 컨트롤러(1408)는, 홈 시스템(1400) 내의 냉방 부품(1430) 등의 컴포넌트를 감시하고, 직접 명령을 내려도 좋다. 냉방 부품(1430)은, 거주 장 소, 또는 오피스에서 통상 볼 수 있는 에어컨 또는 그 이외의 냉방 장치를 포함해도 좋다. 센트럴 홈 컨트롤러(1408)는, 냉방 부품(1430)에 명령하여, 그 센트럴 임베디드 시스템(1408)에 의해 모아진 온도의 계측(temperature reading)에 근거하여, 전력을 증대시키거나, 또는 전력을 저하시켜도 좋다. 홈 시스템(1400)은, 도 12 및 13에 관한 상기에 기술한 것과 유사한 방식으로 기능한다.
임베디드 시스템에는 많은 종류가 있으며, 장치 네트워크를 만드는 많은 이유가 있다. 장치 네트워킹의 응용을 몇 개(several) 예시한다. 해당 분야의 지식을 가진자라면, 이들 논의된 예는 모든 것에 미치지 않는다(not exhaustive) 것을 이해할 것이다.
장치 네트워킹 응용의 일례는, 원격 감시이다. 많은 유용한 장치 네트워크가 원격 감시, 즉, 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) 액세스 노드를 포함하고,
    상기 개재 액세스 노드는, 메모리에 저장된 프로그램 명령과 실행 방법을 포함하며,
    상기 실행 방법은,
    상기 프로바이더로부터 상기 프로바이더 바인딩을 수신하는 단계;
    상기 프로바이더 바인딩을 저장하는 단계;
    상기 요구된 바인딩을 특정하는 상기 리퀘스터로부터 보내진 요구 신호를 수신하는 단계;
    상기 요구된 바인딩이 상기 프로바이더로부터 제공되어 있는지를 판단하는 단계; 그리고,
    상기 요구된 바인딩이 상기 프로바이더로부터 제공되어 있다고 판단되는 때에만, 상기 요구 신호를 상기 프로바이더로 보내는 단계를 포함하며,
    상기 판단은, 상기 프로바이더 바인딩의 대상(object)을 상기 요구된 바인딩 으로부터의 대상과 비교함으로써 달성되는 시스템.
  2. 제1 항에 있어서,
    상기 프로바이더는 개재 액세스 노드가 아닌 시스템.
  3. 제1 항에 있어서,
    상기 개재 액세스 노드에 의해 실행되는 상기 방법은, 상기 프로바이더가 개재 액세스 노드가 아닌 것을 판단하는 단계를 더 포함하는 시스템.
  4. 제1 항에 있어서,
    상기 프로바이더 바인딩과 상기 요구된 바인딩은 각각, 대상 및 인터페이스를 포함하는 시스템.
  5. 제4 항에 있어서,
    상기 시스템은 복수의 개재 액세스 노드를 더 포함하며,
    상기 방법은, 상기 요구 신호를 상기 복수의 개재 액세스 노드로 보내는 단계를 더 포함하는 시스템.
  6. 제1 항에 있어서,
    상기 개재 액세스 노드에 의해 실행되는 상기 방법은, 상기 요구 신호를 어 떤 다른 개재 액세스 노드로 보내는 단계를 더 포함하는 시스템.
  7. 제1 항에 있어서,
    상기 개재 액세스 노드에 의해 실행되는 상기 방법은, 상기 요구 신호를 상기 프로바이더로 보내는 일없이, 상기 요구 신호에 확인 응답하는 단계를 더 포함하는 시스템.
  8. 제1 항에 있어서,
    상기 개재 액세스 노드는, 수신된 요구 신호 리스트를 더 포함하는 시스템.
  9. 제8 항에 있어서,
    상기 개재 액세스 노드는, 개재 액세스 노드가 아닌 프로바이더 리스트를 더 포함하는 시스템.
  10. 제9 항에 있어서,
    상기 개재 액세스 노드는, 개재 액세스 노드가 아닌 상기 프로바이더를 위한 바인딩 리스트를 더 포함하는 시스템.
  11. 제1 항에 있어서,
    상기 프로바이더는, 조명 컨트롤 시스템의 일부인 임베디드 장치(embedded device)인 시스템.
  12. 제1 항에 있어서,
    상기 프로바이더는, 보안 시스템의 일부인 임베디드 장치인 시스템.
  13. 제1 항에 있어서,
    상기 프로바이더는, 홈 컨트롤 시스템의 일부인 임베디드 장치인 시스템.
  14. 리퀘스터와 프로바이더 간(間)의 전자 통신을 관리하는 방법에 있어서,
    상기 방법은,
    프로바이더 및 리퀘스터와 전자 통신하는 개재 액세스 노드를 제공하는 단계;
    상기 개재 액세스 노드로, 상기 프로바이더로부터의 상기 프로바이더 바인딩을 수신하는 단계;
    상기 개재 액세스 노드 상에 상기 프로바이더 바인딩을 저장하는 단계;
    요구된 바인딩을 특정하는 상기 리퀘스터로부터 보내진 요구 신호를 수신하는 단계;
    상기 요구된 바인딩이 상기 프로바이더로부터 제공되어 있는지를 판단하는 단계; 그리고,
    상기 요구된 바인딩이 상기 프로바이더로부터 제공되어 있다고 판단되는 때 에만, 상기 요구 신호를 상기 프로바이더로 보내는 단계를 포함하며,
    상기 판단은, 상기 프로바이더 바인딩의 대상을 상기 요구된 바인딩으로부터의 대상과 비교함으로써, 달성되는 방법.
  15. 제14 항에 있어서,
    상기 프로바이더는, 개재 액세스 노드가 아니라고 판단하는 단계를 더 포함하는 방법.
  16. 제15 항에 있어서,
    상기 요구 신호를 어떤 다른 개재 액세스로 보내는 단계를 더 포함하는 방법.
  17. 제16 항에 있어서,
    개재 액세스 노드가 아닌 프로바이더를 위한 바인딩 리스트에 액세싱하는 단계를 더 포함하는 방법.
  18. 리퀘스터 및 프로바이더 간의 전자 통신을 관리하는 방법을 실현하도록 구성된 컴퓨팅 장치에 있어서,
    상기 컴퓨팅 장치는,
    프로세서;
    상기 프로세서와 전자 통신을 행하는 메모리;
    상기 메모리에 저장된 명령을 포함하고,
    방법을 실현하기 위해 실행가능한 상기 명령은,
    상기 컴퓨팅 장치에서 프로바이더로부터의 프로바이더 바인딩을 수신하는 단계;
    상기 컴퓨팅 장치 상에 상기 프로바이더 바인딩을 저장하는 단계;
    요구된 바인딩을 특정하는 리퀘스터로부터 보내진 요구 신호를 수신하는 단계;
    상기 요구된 바인딩이 상기 프로바이더로부터 제공되어 있는지를 판단하는 단계; 그리고,
    상기 요구된 바인딩이 상기 프로바이더로부터 제공되어 있다고 판단되는 때에만, 상기 요구 신호를 상기 프로바이더로 보내는 단계를 포함하며,
    상기 판단은, 상기 프로바이더 바인딩의 대상을 상기 요구된 바인딩으로부터의 대상과 비교함으로써, 달성되는 컴퓨팅 장치.
  19. 리퀘스터와 프로바이더 간의 전자 통신을 관리하는 방법을 실현하는 실행가능한 명령을 포함하는 컴퓨터 판독가능한 매체에 있어서,
    상기 방법은,
    프로바이더 및 리퀘스터와 전자 통신을 행하는 개재 액세스 노드를 제공하는 단계;
    상기 개재 액세스 노드에서 상기 프로바이더로부터의 프로바이더 바인딩을 수신하는 단계;
    상기 개재 액세스 노드 상에 상기 프로바이더 바인딩을 저장하는 단계;
    요구된 바인딩을 특정하는 상기 리퀘스터로부터 보내진 요구 신호를 수신하는 단계;
    상기 요구된 바인딩이 상기 프로바이더로부터 제공되어 있는지를 판단하는 단계; 그리고,
    상기 요구된 바인딩이 상기 프로바이더로부터 제공되어 있다고 판단되는 때에만, 상기 요구 신호를 상기 프로바이더로 보내는 단계를 포함하며,
    상기 판단은, 상기 프로바이더 바인딩의 대상을 상기 요구된 바인딩으로부터의 대상과 비교함으로써, 달성되는 방법.
  20. 제19 항에 있어서,
    상기 방법은,
    수신된 요구 신호 리스트를 저장하는 단계;
    개재 액세스 노드가 아닌 프로바이더 리스트를 저장하는 단계; 그리고,
    개재 액세스 노드가 아닌 상기 프로바이더를 위한 바인딩 리스트를 저장하는 단계를 더 포함하는 방법.
KR1020087013336A 2005-12-02 2005-12-28 분포된 라우팅 환경에서 효과적인 전자 통신을 행하기 위한시스템 및 방법 KR100978413B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/292,944 US8270293B2 (en) 2005-12-02 2005-12-02 Systems and methods for efficient electronic communication in a distributed routing environment
US11/292,944 2005-12-02

Publications (2)

Publication Number Publication Date
KR20080075138A true KR20080075138A (ko) 2008-08-14
KR100978413B1 KR100978413B1 (ko) 2010-08-26

Family

ID=36353640

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087013336A KR100978413B1 (ko) 2005-12-02 2005-12-28 분포된 라우팅 환경에서 효과적인 전자 통신을 행하기 위한시스템 및 방법

Country Status (7)

Country Link
US (1) US8270293B2 (ko)
EP (1) EP1964373B1 (ko)
JP (1) JP4623073B2 (ko)
KR (1) KR100978413B1 (ko)
CN (1) CN101124802B (ko)
RU (1) RU2385486C2 (ko)
WO (1) WO2007063611A1 (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
CN101813893B (zh) * 2010-04-07 2012-02-01 芯硕半导体(中国)有限公司 一种采用曝光方式标定曝光能量需求分布的方法
US20110314512A1 (en) * 2010-06-22 2011-12-22 Symbol Technologies, Inc. Methods for security and monitoring within a worldwide interoperability for microwave access (wimax) network
WO2013031159A1 (ja) 2011-08-29 2013-03-07 東レ株式会社 ポリ乳酸樹脂組成物、その製造方法およびそれからなる成形品
RU2622855C1 (ru) * 2016-06-06 2017-06-20 Общество с ограниченной ответственностью "НТЦ Веллинк" Способ и система выбора оптимального провайдера для передачи данных

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5781551A (en) * 1994-09-15 1998-07-14 Texas Instruments Incorporated Computer communications system with tree architecture and communications method
JP3087642B2 (ja) * 1996-02-14 2000-09-11 三菱電機株式会社 アプリケーション共有システム
JPH1074146A (ja) * 1996-08-30 1998-03-17 Hitachi Ltd オブジェクト指向分散システム
US6085030A (en) * 1997-05-02 2000-07-04 Novell, Inc. Network component server
US6085236A (en) * 1998-01-06 2000-07-04 Sony Corporation Of Japan Home audio video network with device control modules for incorporating legacy devices
JPH11239176A (ja) * 1998-02-20 1999-08-31 Nippon Telegr & Teleph Corp <Ntt> アドホックネットワークのパケットルーティング方法
US6320845B1 (en) * 1998-04-27 2001-11-20 Cisco Technology, Inc. Traffic management and flow prioritization on a routed computer network
US6618764B1 (en) * 1999-06-25 2003-09-09 Koninklijke Philips Electronics N.V. Method for enabling interaction between two home networks of different software architectures
US7003571B1 (en) * 2000-01-31 2006-02-21 Telecommunication Systems Corporation Of Maryland System and method for re-directing requests from browsers for communication over non-IP based networks
US6826148B1 (en) * 2000-07-25 2004-11-30 Sun Microsystems, Inc. System and method for implementing a routing scheme in a computer network using intention packets when fault conditions are detected
US6954798B2 (en) * 2002-08-28 2005-10-11 Matsushita Electric Works, Ltd. Content-based routing of data from a provider to a requestor
JP2004342081A (ja) 2003-04-25 2004-12-02 Matsushita Electric Ind Co Ltd 制御装置、電気機器、制御システム、制御方法及び制御プログラム
CN103001923B (zh) * 2003-06-05 2016-03-30 英特特拉斯特技术公司 用于控制对在计算机系统上的电子内容片段的访问的方法和系统
US7319853B2 (en) * 2003-10-15 2008-01-15 Easton Corporation Home system including a portable fob having a display
US7328282B2 (en) * 2003-10-23 2008-02-05 International Business Machines Corporation Aspect oriented web service invocation
JP2005149456A (ja) * 2003-10-24 2005-06-09 Matsushita Electric Works Ltd 群管理システム及びサービス提供装置
US7464142B2 (en) * 2003-12-12 2008-12-09 International Business Machines Corporation Port type agnostic proxy support for web services intermediates
CA2548368C (en) * 2003-12-12 2010-11-02 International Business Machines Corporation Port type agnostic proxy support for web services intermediaries
US8077619B2 (en) * 2005-02-14 2011-12-13 Telefonaktiebolaget L M Ericsson (Publ) Method for aggregating data traffic over an access domain and nodes therefor

Also Published As

Publication number Publication date
RU2008121936A (ru) 2009-12-10
JP4623073B2 (ja) 2011-02-02
KR100978413B1 (ko) 2010-08-26
RU2385486C2 (ru) 2010-03-27
US8270293B2 (en) 2012-09-18
CN101124802B (zh) 2011-09-14
JP2008102919A (ja) 2008-05-01
CN101124802A (zh) 2008-02-13
EP1964373B1 (en) 2013-10-30
WO2007063611A1 (en) 2007-06-07
US20070127371A1 (en) 2007-06-07
EP1964373A1 (en) 2008-09-03

Similar Documents

Publication Publication Date Title
KR100970530B1 (ko) 컴퓨터 네트워크 상의 선택식 멀티캐스트 프록시를제공하기 위한 시스템 및 방법
JP4412405B2 (ja) ネットワーク内通信用転送処理を選択するためのシステムと方法
KR100978413B1 (ko) 분포된 라우팅 환경에서 효과적인 전자 통신을 행하기 위한시스템 및 방법
US20070135940A1 (en) System and methods for controlling embedded devices using device style sheets
KR101058970B1 (ko) 분산 네트워크 내에서 프로바이더의 온라인 상태를관리하기 위한 방법 및 시스템
JP2005537753A (ja) 望ましい予約速度に基づくサブネットワーク帯域幅の最適化
JP6564327B2 (ja) マルチコントローラネットワークにおける相互作用制御の設定
KR100981488B1 (ko) 트러스트 매니저 및 보안 브로커를 이용하여 임베디드장치로의 보안 액세스를 제공하기 위한 시스템 및 방법
KR100996026B1 (ko) 분산 라우팅 환경에서의 장애 극복 처리 시스템 및 방법

Legal Events

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

Payment date: 20130801

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150716

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160701

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170720

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20180719

Year of fee payment: 9