KR20080081864A - 중계 장치 및 중계 방법 - Google Patents

중계 장치 및 중계 방법 Download PDF

Info

Publication number
KR20080081864A
KR20080081864A KR20080021010A KR20080021010A KR20080081864A KR 20080081864 A KR20080081864 A KR 20080081864A KR 20080021010 A KR20080021010 A KR 20080021010A KR 20080021010 A KR20080021010 A KR 20080021010A KR 20080081864 A KR20080081864 A KR 20080081864A
Authority
KR
South Korea
Prior art keywords
request
network
message
communication situation
transmitting
Prior art date
Application number
KR20080021010A
Other languages
English (en)
Other versions
KR101001046B1 (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 KR20080081864A publication Critical patent/KR20080081864A/ko
Application granted granted Critical
Publication of KR101001046B1 publication Critical patent/KR101001046B1/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]
    • H04L12/46Interconnection of networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/283Processing of data at an internetworking point of a home automation network
    • H04L12/2832Interconnection of the control functionalities between home networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/20Arrangements for detecting or preventing errors in the information received using signal quality detector
    • H04L1/203Details of error rate determination, e.g. BER, FER or WER
    • 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/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • 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
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0092Error control systems characterised by the topology of the transmission link
    • H04L2001/0097Relays
    • 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)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

중계 장치는 제1 장치로부터 제1 네트워크를 통해 데이터를 수신한다. 그 후 중계 장치는 제2 장치로부터 제2 네트워크를 통해 제1 요청을 수신하고, 상기 제1 요청에 따라서 상기 제1 네트워크에 제2 요청을 송신한다. 그 후 중계 장치는 상기 제1 요청과 통신 상황에 따라서, 상기 제1 요청을 수신하기 전에 상기 제1 장치로부터 수신한 데이터를 상기 제2 네트워크를 통해 상기 제2 장치에 송신한다.
중계 장치, 중계 방법, 네트워크, 통신 상황, 에러율

Description

중계 장치 및 중계 방법{RELAY APPARATUS AND RELAY METHOD}
본 발명은 네트워크를 통하여 제1 요청을 수신하고, 제1 요청에 따른 제2 요청을 다른 네트워크에 송신하는 중계 장치 및 중계 방법에 관한 것이다.
분산된 복수의 네트워크를 서로 접속하는 장치에는, 브릿지, 라우터, 게이트웨이, 및 무선 액세스 포인트가 있다.
이러한 장치들은 전송 메시지의 목적지 어드레스, 프로토콜 등에 기초하여 전송을 억제하거나, 전송 메시지가 송신된 네트워크의 종류, 전송 메시지의 프로토콜 등에 기초하여 전송 메시지의 우선순위를 제어한다. 또한, 게이트웨이는 혼잡 제어와 전송 데이터의 네트워크 프로토콜 변환을 수행한다.
종래에는, 인터넷 프로토콜(IP)에 따른 전송 데이터의 IP 어드레스 또는 MAC 어드레스에 기초하거나 네트워크 프로토콜의 종류에 기초하여, 전송 메시지를 통과시킬지 또는 파기시킬지 여부를 판단한다.
또한, IP 및 TCP 프로토콜에서는, 혼잡 상태를 검출한 게이트웨이나, 네트워크에 접속된 컴퓨터 또는 가전 제품이 혼잡 제어 기능을 실현하는 경우, 다음과 같은 방법으로 혼잡을 억제한다. 먼저, 혼잡 상태를 일으키고 있는 전송 메시지를 송신한 컴퓨터, 가전 제품 등에 대하여 그 송신 속도를 감소시킬 것을 요구하는 요청(ICMP 소스 억제)을 송신한다. 그 후, 이 요청을 수신한 컴퓨터 또는 가전 제품은 더 이상 요청이 수신되지 않을 때까지 전송 메시지를 송신하는 속도를 감소시킴으로써 혼잡을 억제한다.
예를 들어, 일본 특개평07-210473호에 기재된 전송로 간의 데이터 필터링 방식에서는, 전송로 간의 데이터 필터링 기능을 확장하여, 전송로 자원의 효율적 이용과 혼잡 제어 기능의 확장을 행한다. 또한, 혼잡 제어를 행하는 경우, 전송 데이터의 속성의 분류에 기초하여, 데이터를 전송해야 하는 전송로의 혼잡의 억제, 게이트웨이의 버퍼 영역의 부족 등으로 인한 최근의 전송 데이터의 파기 가능성을 저감시킬 수 있다.
그러나, 혼잡 상태 중에 TCP 또는 UCP/IP 레벨에서 제어를 행하고, 이러한 레벨에서 혼잡을 억제하더라도, 이러한 제어는 상위 프로토콜의 규약 하에서는 에러 케이스가 되거나, 그 상위 프로토콜의 규약을 위반할 수 있다는 문제가 있다. 예를 들어, 상위 프로토콜에서 어떤 엔드 포인트에 메시지를 송신하는 경우에 그에 대한 응답을 수초 이내에 해야 하고, 그 응답을 수초 이내에 행하지 않은 경우에는 에러로 정의하는 규약을 갖는다면, 이러한 상황은 에러 케이스가 된다. 에러로 정의되지 않더라도, 이는 프로토콜 규약 위반이 된다.
중간 네트워크에서 프로토콜 종류를 이용하여 전송 메시지의 우선순위를 제 어하는 경우, 각종 메시지가 전송되는 전송로에서는, 특정 메시지가 정상적으로 전송될 가능성이 향상되어도, 그 메시지의 도달 가능성을 보장할 수 없다는 또 다른 문제가 있다.
또한, 브릿지, 라우터, 게이트웨이, 또는 무선 액세스 포인트에 접속된 네트워크 중 하나가 통신 불가능이 된 경우, 그 네트워크를 통해 흐르는 메시지는 목적지에 도달하지 않고, 따라서 상위 프로토콜이 기능하지 않는다는 또 다른 문제가 있다.
본 발명은 네트워크를 통해 수신한 요청에 단시간에 응답하는 것을 목적으로 한다.
본 발명의 일 양태에 따르면, 중계 장치는, 제1 장치로부터 제1 네트워크를 통해 데이터를 수신하도록 구성된 제1 수신부; 제2 장치로부터 제2 네트워크를 통해 제1 요청을 수신하도록 구성된 제2 수신부; 상기 제1 요청에 따라서 상기 제1 네트워크에 제2 요청을 송신하도록 구성된 제1 송신부; 및 상기 제1 요청과 통신 상황에 따라서, 상기 제1 요청을 수신하기 전에 상기 제1 장치로부터 수신한 데이터를 상기 제2 네트워크를 통해 상기 제2 장치에 송신하도록 구성된 제2 송신부를 포함한다.
본 발명의 또 다른 양태에 따르면, 중계 방법은, 제1 장치로부터 제1 네트워크를 통해 데이터를 수신하는 단계; 제2 장치로부터 제2 네트워크를 통해 제1 요청을 수신하는 단계; 상기 제1 요청에 따라서 상기 제1 네트워크에 제2 요청을 송신 하는 단계; 및 상기 제1 요청과 통신 상황에 따라서, 상기 제1 요청을 수신하기 전에 상기 제1 장치로부터 수신한 데이터를 상기 제2 네트워크를 통해 상기 제2 장치에 송신하는 단계를 포함한다.
(첨부 도면을 참조한) 이하의 바람직한 실시예의 설명으로부터 본 발명의 또 다른 특징들이 명확하게 될 것이다.
이하, 본 발명의 실시예를 도면을 참조하여 설명한다. 본원에서는 구체적인 처리예들을 기재하였으나, 이러한 구체적인 처리예들로 본 발명을 한정하고자 한 것은 아니다.
<시스템 전체의 구성도>
도 1은 본 발명의 실시예에 따른 시스템 전체의 구성을 나타낸 도면이다.
도 1에 도시된 바와 같이, 메시지 중계 장치(정보 리턴 장치)(100), 프린터(101), 디지털 텔레비전(102), 디지털 비디오 카메라(103A), 및 디지털 카메라(104A)가 네트워크(150)에 접속된다. 또한, 서버(106)는 네트워크(105)를 통해 메시지 중계 장치(100)에 접속된다. 메시지 중계 장치(100)는 네트워크(105 및 150)에 접속되고, 네트워크(105)와 네트워크(150) 사이에서 메시지를 중계한다. 본 실시예에 있어서는, 전술한 장치(기기)들을 예로 들었으나, 본 실시예를 이것으로 한정하고자 한 것은 아니다. 전술한 장치들 각각은 프로그램을 실행하기 위하여 필요한 자원들, 예컨대 처리 기능, 데이터 유지 기능 등을 가지며, 또한 전술한 자원들을 이용하여 기기(장치) 그 자체를 제어하는 제어 기능과의 통신을 행하기 위한 통신 기능을 갖는다.
<장치 시스템의 블록도>
도 2는 본 발명의 일 실시예로서 예를 든 장치(기기)의 하드웨어 시스템의 일반적인 구성을 나타낸 블록도이다. 본원에서 기재된 각종 기기(장치)들을 도 2에 도시된 구성으로 한정하고자 한 것은 아니다.
200은 각종 유닛들을 서로 접속하기 위한 입출력 버스(어드레스 버스, 데이터 버스, 및 제어 버스)이다. 201은 지정 간격에서 인터럽트를 발행하는 기능을 갖는 타이머이다. 타이머(201)는 또한 알려진 바와 같이 워치독(watchdog) 타이머 기능, 시간 계측 기능 등을 갖는다.
202는 ROM(Read-Only Memory)이며, 프로그램 코드, 변하지 않는 고정 데이터 등을 기억하는 기능을 갖는다. 203은 RAM(Random Access Memory)이며, 메인 메모리로서, 및 실행 프로그램의 영역, 이러한 프로그램의 실행 영역 및 데이터 영역으로서 기능한다.
204는 패러렐 컨트롤러이며, 컴퓨터 내에서 취급되는 병렬 데이터를 그대로 외부 장치와 입출력하는 기능을 갖는다. 205는 시리얼 컨트롤러이며, 컴퓨터 내에서 취급되는 병렬 데이터를 직렬 데이터로서 출력하고, 직렬 데이터를 병렬 데이터로 변환하여 그 병렬 데이터를 입력하는 기능을 갖는다.
206은 MPU(Microprocessor Unit)이며, 프로그램 명령을 순차적으로 실행하고, 인터럽트를 실행하는 기능을 갖는다.
207은 디바이스 컨트롤러이며, 하드 디스크, 디스플레이 등의 일반적인 외부 입출력 장치를 접속하는 기능을 갖는다. 208은 DMAC(Direct Memory Access Controller)이며, 내부 메모리와 외부 장치 사이에서 데이터를 직접 교환하는 경우의 제어를 실행하는 기능을 갖는다.
209는 A/D(analog-to-digital) 변환기이며, 아날로그 데이터를 디지털 데이터로 변환하고, 센서 등에 의해 검출된 양을 수치화하는 기능을 갖는다. 210은 D/A(digital-to-analog) 변환기이며, 디지털 데이터를 아날로그 데이터로 변환하고, 외부 액추에이터에 대한 조작량을 아날로그 형태 등으로 변환하는 기능을 갖는다.
220 및 221은 네트워크 인터페이스(NET/IF)이다. 메시지 중계 장치(100)는 네트워크(150 및 105)에 접속하기 위하여 2개의 네트워크 인터페이스를 갖는다. 메시지 중계 장치(100)의 네트워크 인터페이스(220 및 221)는 네트워크(105 및 150)를 통해 메시지를 송수신한다. 메시지 중계 장치(100) 이외의 장치들은 네트워크(150) 또는 네트워크(105)에 접속하기 위하여 하나의 네트워크 인터페이스를 갖는다.
<메시지 중계 장치 모듈 구성도>
도 3은 본 발명의 일 실시예로서 예를 든 메시지 중계 장치(정보 리턴 장치)(100)의 모듈 구성을 나타낸 블록도이다. 이 모듈은 도 2에 도시된 ROM(202)에 저장된 프로그램을 실행하는 MPU(206)에 의해 구현되는 프로그램 모듈이다. ROM(202)에 저장된 프로그램은 컴퓨터인 MPU(206)에 의해 판독되는 컴퓨터 프로그램이다.
메시지 중계 장치(정보 리턴 장치)(100)는 메시지 처리 제어부(300), 메시지 대행부(301), 통신 상황 파악부(302), 메시지 중계부(303), 및 네트워크 IF(인터페이스)(305)로 구성된다.
메시지 처리 제어부(300)는 메시지 대행부(301), 통신 상황 파악부(302), 메시지 중계부(303), 및 네트워크 IF(304, 305)를 제어하고, 데이터를 교환한다.
메시지 대행부(301)는 에러율과 프로토콜 종류에 기초하여 네트워크에 접속되는 기기들에 의해 수행되는 처리들을 대행할지 여부를 판정한다. 이러한 대행이 수행되어야 하는 경우, 메시지 대행부(301)는 네트워크(150)로부터 수신되는 메시지에 응답하여 응답 메시지를 송신한다. 본 실시예에 있어서, 메시지 대행부(301)는 네트워크(150)로부터 수신되는 메시지에 응답하여 응답 메시지를 송신한다. 이 응답 메시지는 네트워크(150 및 105)에서의 에러율과, 네트워크(105)를 통해 장치로부터 수신되어야 하는 응답에 요구되는 시간에 기초하여 송신된다. 또한, 메시지 대행부(301)는 장치를 대신하여 장치에 의해 사용되는 프로토콜을 에뮬레이트하는 기능을 가지며, 에뮬레이트가 불가능한 처리에 대한 메시지를 일시적으로 저장한다. 즉, 메시지 대행부(301)는 네트워크(105)를 통해 (서버(106)로부터) 정보를 취득한다.
통신 상황 파악부(302)는 네트워크 에러율을 계측하는 기능, 네트워크에 접속된 기기에 메시지를 송신한 후의 응답 시간을 계측하는 기능, 및 프로토콜 종류를 판정하는 기능을 갖는다.
메시지 중계부(303)는 네트워크(105)와 네트워크(150) 사이에서 메시지를 중 계한다. 더 구체적으로, 메시지 중계부(303)는 네트워크(150)를 통해 수신되는 메시지를 네트워크(105)에 송신한다. 또한, 메시지 중계부(303)는 네트워크(150) (및 105)의 통신 상황에 기초하여 네트워크(105)(서버(106))로부터 수신되는 메시지를 네트워크(150)에 송신한다.
네트워크 IF(304) 및 네트워크 IF(305)는 네트워크 인터페이스(NET/IF)이다. 네트워크 IF(304 및 305)는 각각 네트워크(150 및 105)를 통해 정보 처리 장치들 사이에서 데이터를 전송하도록 제어를 수행하는 기능, 및 네트워크 상황을 진단하는 기능을 갖는다. 또한, 네트워크 IF(304 및 305)는 각각 송신 패킷의 수, 수신 패킷의 수, 송신 패킷 에러의 수, 수신 패킷 에러의 수, 및 충돌 수를 계수하는 기능을 갖는다. 네트워크 IF(304 및 305)는 각각 네트워크(150 및 105)에 접속되어, 네트워크(150 및 105)를 통해 메시지를 송수신한다.
<시스템 처리 흐름>
본 발명을 실시하는 시스템에 의해 수행되는 전반적인 처리의 흐름을 도 4를 참조하여 설명한다. 도 4는 ROM(202)에 저장된 프로그램의 일부를 나타내며, 이 프로그램은 컴퓨터인 MPU(206)에 의해 판독되는 컴퓨터 프로그램이다.
이하, UPnP 프로토콜을 일례로 하여 설명한다. 즉, 메시지 중계 장치(정보 리턴 장치)(100)는 메시지 대행부(301)를 이용하여 UPnP 규격을 따른 디지털 미디어 서버를 에뮬레이트한다. 그 후, 메시지 중계 장치(100)는 서버(106)로부터 UPnP 대응 장치들인 프린터(101), 디지털 텔레비전(102), 디지털 비디오 카메라(103A), 및 디지털 카메라(104A)에 콘텐츠를 제공 또는 업로드한다.
여기서는 설명을 명확하게 하기 위해서 UPnP 프로토콜을 일례로서 이용하였으나, 본 발명을 이 프로토콜에 한정하고자 한 것은 아니다.
단계 401에서, 메시지 중계 장치(정보 리턴 장치)(100)의 메시지 대행부(301)는 서버(106)로부터 콘텐츠의 메타데이터를 취득한다(즉, 네트워크(105)를 통해 메시지를 수신한다). 즉, 메시지 대행부(301)는 네트워크(105)를 통해 서버(106)로부터 정보를 취득한다. 메시지 대행부(301)는 취득된 메타데이터를 저장한다.
단계 402에서, 통신 상황 파악부(302)는 이 응답을 수신하는데 걸리는 시간을 계측한다. 또한, 단계 402에서, 통신 상황 파악부(302)는 메시지 처리 제어부(300)를 경유하여 네트워크 IF(305)를 통해 수신/송신 패킷의 수, 수신/송신 에러의 수, 및 충돌 수를 취득하고, 에러율을 계산한다.
그 계산식은 다음과 같다:
에러율 = (Ierrs + Oerrs + Collis)/(Ipkts + Opkts)*100
(Ierrs: 수신 패킷 에러의 수; Oeers: 송신 패킷 에러의 수; Collis: 충돌수; Ipkts: 수신 패킷의 수; Opkts: 송신 패킷의 수)
여기서, 통신 상황 파악부(302)는 계산된 에러율과 응답 시간을 저장하고 유지한다. 일례로서, 에러율이 10%이며, 응답 시간은 5초인 것으로 가정한다.
단계 403에서, 네트워크 IF(304)는, 예를 들어, 콘텐츠 그 자체 또는 콘텐츠의 메타데이터를 취득하기 위하여 디지털 텔레비전(102) 등의 UPnP 대응 장치로부터 송신되는 요청 메시지를 수신한다(즉, 네트워크(150)를 통해 메시지를 수신함).
단계 404에서, 통신 상황 파악부(302)는 프로토콜(메시지)을 판정한다.
단계 405에서, 통신 상황 파악부(302)는 네트워크 IF(304)로부터 상기 정보를 취득하고, 상기 계산식을 이용하여 그 시점의 에러율을 계산한다.
단계 406에서, 메시지 처리 제어부(300)는 단계 404에서 판정된 프로토콜(메시지)이 메시지 대행부(301)에 의해 대행될 수 있는지 여부를 판정한다. 프로토콜이 대행될 수 있다면, 단계 407로 진행하고, 프로토콜이 대행될 수 없다면, 단계 408로 진행한다. 예를 들어, 콘텐츠의 메타데이터를 취득하는 프로토콜인 경우, 메시지 대행부(301)가 먼저 메타데이터를 취득하며, 따라서, 프로토콜이 대행가능한 것으로 판정한다. 그러나, 콘텐츠 그 자체를 취득하는 프로토콜인 경우, 프로토콜이 대행가능하지 않은 것으로 판정한다. 여기서, 항상 대행가능한 프로토콜이 사용되는 경우는 단계 406에 있어서의 판정이 불필요하며, 따라서, 단계 405 이후에 단계 407로 진행한다.
또한, 본 실시예에서는 상기 판정이 실행되지만, 프로토콜에 따라서 다양한 판정의 기준이 있으므로, 본 실시예는 이에 한하지 않는다.
단계 407에서, 단계 405에서 계산된 에러율이 단계 402에서 계산된 에러율(또는 기준치)보다 높다면, 단계 409로 진행하고, 단계 405에서 계산된 에러율이 단계 402에서 계산된 에러율(또는 기준치) 보다 낮다면, 단계 411로 진행한다.
단계 409에서, 프로토콜이 대행가능한지, 에러율이 높은지, 응답 시간이 상기 5초를 초과하는지의 판단 결과로서, 메시지 대행부(301)는 단계 403에서 수신되는 메시지를 서버(106)에 전송하지 않고, 프록시 응답을 행한다. 즉, 단계 401에 서 취득된 메타데이터가 요청 메시지가 송신된 소스에 송신된다. 여기서, 에러율이 더 높은 경우에 프록시 리턴이 행해진다. 또한, 단계 409에서, 메시지 대행부(301)는 네트워크(150 및 105)의 통신 상황에 기초하여 디지털 텔레비전(102)으로부터 수신되는 메시지(콘텐츠의 메타데이터를 취득하기 위한 요청 메시지)에 응답하여 응답 메시지를 송신한다. 이 응답 메시지는 단계 401에서 서버(106)로부터 취득되는 메타데이터를 포함한다. 네트워크(150 및 105)의 통신 상황의 일례로서, 네트워크(150, 105)에서의 에러율과, 네트워크(105)를 통해 장치(서버(106))로부터 수신되는 응답에 요구되는 시간이 있다. 또한, 디지털 텔레비전(102)으로부터 정보(메타데이터)를 취득하기 위한 요청을 수신한 경우(단계 403), 메시지 대행부(301)는 단계 401에서 정보를 취득한 때의 상황에 기초하여 단계 401에서 취득한 정보를 리턴한다.
이 때, 단계 407에서 전술한 바와 같이 메시지를 전송할지 여부를 판정하는 기준은 상기 예에 한하지 않는다. 예를 들어, (디지털 텔레비전(102)이 메타데이터를 수신하기까지의 기한(예컨대, 30초)) ≥ (메시지 중계 장치(100)가 단계 401에서 서버(106)로부터 메타데이터를 수신하는 때의 응답 시간(상기 예에서, 5초)) + (디지털 텔레비전(102)과 메시지 중계 장치(100) 사이의 추정 왕복 시간).
단, (디지털 텔레비전(102)과 메시지 중계 장치(100) 사이의 추정 왕복 시간) = (메시지 중계 장치(100)가 단계 401에서 서버(106)로부터 메타데이터를 수신하는 때의 응답 시간) x (메시지 중계 장치(100)가 단계 403에서 디지털 텔레비전(102)으로부터 요청을 수신하는 때의 에러율) / (메시지 중계 장치(100)가 단계 401에서 서버(106)로부터 메타데이터를 수신하는 때의 에러율).
단계 411에서, 단계 407에서의 에러율은 더 낮으므로, 대행이 가능하다. 그러므로, 응답 시간이 5초를 초과할 가능성은 낮은 것으로 판단한다. 그 결과, 메시지 중계 장치(303)에 의해 서버(106)에 그대로 메시지(메타데이터 취득 요청 메시지)가 전송된다. 그 후, 메시지를 수신함에 따라서, 서버(106)는 응답을 리턴한다. 메시지 중계부(303)는 단계 403에서 수신한 메시지의 소스에 네트워크(150)를 통해 그 응답을 송신한다. 즉, 메시지 중계부(303)는 네트워크(150)(및 105)의 통신 상황에 기초하여 네트워크(105)(서버(106))로부터 수신한 메시지를 네트워크(150)(디지털 텔레비전(102))에 송신한다. 즉, 메시지 대행부(301)가 (디지털 텔레비전(102)으로부터) 네트워크(150)를 통해 정보를 취득하기 위한 요청을 수신한 경우, 메시지 대행부(301)는 단계 401에서 정보를 취득한 때의 상황에 기초하여 단계 411에서 정보를 새롭게 취득하고, 이 취득된 정보를 리턴한다.
단계 409에서 프록시 응답이 행해지는 경우, 요청 메시지가 전송되고, 다음 요청을 대비하여 저장된 정보가 갱신될 수 있다.
또 다른 구성에 따르면, 단계 401에서 서버(106)로부터 메시지를 수신한 때의 상황이 양호하다면, 단계 403에서 수신한 메시지를 네트워크(105)에 송신할지라도, 단계 403에서의 메시지의 소스에 적절한 응답이 리턴되어야 하는 것으로 판단한다. 그 후, 단계 407에서 단계 411로 진행한다. 상황이 양호하지 않다면, 단계 407에서 단계 409로 진행한다. 여기서, 단계 403에서의 메시지의 소스는 디지털 텔레비전(102)이다. 또한, 메시지를 서버(106)로부터 수신하는 때의 상황이 양호 한 것을, 예를 들어, 네트워크(105)의 통신 품질이 양호하다고 한다(예컨대, 응답 시간이 소정치보다 작은 경우). 단계 407에서, 메시지 처리 제어부(300)는 단계 403에서 수신한 메시지를 네트워크(105)에 송신할지, 단계 401에서 수신한 메시지에 따라서 네트워크(150)에 메시지를 송신할지를 선택한다. 즉, 단계 407에서, 메시지 처리 제어부(300)는 메시지를 전송할지(단계 411), 프록시 응답을 행할지(단계 409)를 선택한다.
또 다른 구성에 따르면, 단계 405에서 계측된 네트워크(150)의 통신 상황이 양호하다면, 단계 403에서 수신한 메시지를 네트워크(105)에 송신할지라도, 단계 403에서의 메시지의 소스에 적절한 응답이 리턴되어야 하는 것으로 판단한다. 그리고, 네트워크(150)를 통해 수신한 메시지를 네트워크(105)에 송신한다. 상황이 양호하지 않다면, 단계 407에서 단계 409로 진행한다. 여기서, 단계 403에서의 메시지의 소스는 디지털 텔레비전(102)이다. 또한, 네트워크(150)의 통신 상황이 양호하다는 것은, 예를 들어, 디지털 텔레비전(102)으로부터의 메시지의 에러율이 소정치보다 크지 않다는 것을 말한다. 단계 407에서, 메시지 처리 제어부(300)는 단계 403에서 수신한 메시지를 네트워크(105)에 송신할지, 단계 401에서 수신한 메시지에 따라서 네트워크(150)에 메시지를 송신할지를 선택한다. 즉, 단계 407에서, 메시지 처리 제어부(300)는 메시지를 전송할지, 프록시 응답을 행할지를 선택한다.
또 다른 구성에 따르면, 단계 405에서 계측된 네트워크(105)의 통신 상황이 양호하다면, 단계 403에서 수신한 메시지를 네트워크(105)에 송신할지라도, 단계 403에서의 메시지의 소스에 적절한 응답이 리턴되어야 하는 것으로 판단한다. 그 후, 네트워크(105)를 통해 수신한 메시지를 네트워크(105)에 송신한다. 상황이 양호하지 않다면, 단계 407에서 단계 409로 진행한다. 여기서, 단계 403에서의 메시지의 소스는 디지털 텔레비전(102)이다. 또한, 서버(106)로부터 메시지를 수신한 때의 상황이 양호한 것은, 예를 들어, 네트워크(105)에서의 통신 품질이 양호하다는 것을 말한다(예컨대, 응답 시간이 소정치보다 작은 경우). 네트워크(105)에서의 통신 품질을 판정하기 위하여, 단계 405에서, 통신 상황 파악부(302)는 서버(106)에 메시지를 송신하고, 이에 응답이 리턴되기까지 걸리는 시간량을 계측한다. 단계 407에서, 메시지 처리 제어부(300)는 단계 403에서 수신한 메시지를 네트워크(105)에 송신할지, 단계 401에서 수신한 메시지에 따라서 네트워크(150)에 메시지를 송신할지를 선택한다. 즉, 단계 407에서, 메시지 처리 제어부(300)는 메시지를 전송할지, 프록시 응답을 행할지를 선택한다.
단계 408에서, 단계 406에서 프로토콜이 대행 불가능한 것으로 판단한다면, 단계 405에서 계산된 에러율이 단계 402에서 계산된 에러율(또는 기준치)보다 낮은 경우, 단계 411로 진행하고, 단계 405에서 계산된 에러율이 단계 402에서 계산된 에러율보다 큰 경우에는 단계 410으로 진행한다.
단계 411에서, 프로토콜이 대행 불가능하고, 에러율이 낮고, 응답 시간이 상기 5초를 초과할 가능성이 낮은 것으로 판단한 결과로서, 메시지 중계부(303)는 단계 403에서 수신한 메시지를 그대로 서버(106)에 전송한다. 여기서, 단계 403에서 수신한 메시지는 콘텐츠 취득 요청 메시지이다.
단계 410에서, 프로토콜이 대행 불가능하고, 에러율이 높으며, 따라서 응답 시간이 상기 5초를 초과할 가능성이 높기 때문에, 메시지 대행부(301)는 에러 메시지를 리턴한다. 즉, 메시지 대행부(301)는 네트워크(150 및 105)의 통신 상황 및 디지털 텔레비전(102)으로부터 수신한 메시지에 의해 사용되는 프로토콜에 기초하여, 네트워크(150)로부터 수신한 메시지에 응답하여 에러 메시지를 송신한다. 또한, 메시지 대행부(301)는 단계 403에서 수신한 메시지에 의해 사용되는 프로토콜에 기초하여, 단계 401에서 수신한 메시지에 따라서 네트워크(150)에 메시지를 송신할지, 에러 메시지를 송신할지를 선택한다. 다른 방법으로서, 메시지 대행부(301)는 단계 403에서 수신한 메시지에 의해 사용되는 프로토콜에 기초하여, 프록시 응답을 행할지(단계 409), 네트워크(150)에 에러 메시지를 송신할지(단계 410)를 선택한다.
본 실시예에 있어서는, 네트워크(150)의 통신 상황에 기초하여, 네트워크(150)로부터 수신한 메시지에 따라서 응답 메시지를 송신한다. 따라서, 네트워크(150)(또는 네트워크(105))의 통신 상황이 열악하여, 네트워크(105)를 통해 서버(106)에 메시지를 전송하고 서버(106)로부터의 응답을 기다릴 충분한 시간이 없다면, 단계 401에서 취득한 정보를 이용하여 응답 메시지를 송신할 수 있다.
또한, 네트워크(150)를 통해 정보를 취득하기 위한 요청을 수신한 경우(단계 403), 단계 401에서 정보를 취득한 때의 상황에 기초하여 단계 401에서 이미 취득한 정보를 리턴한다. 따라서, 네트워크(105)를 통해 서버(106)로부터 정보를 취득한 때에 시간이 너무 많이 걸리고, 네트워크(105)를 통해 서버(106)로부터 정보를 새로 취득하기에 충분한 시간이 없다면, 이미 취득한 정보를 리턴할 수 있다. 그 러나, 네트워크(105)를 통해 서버(106)로부터 정보를 취득한 때에 시간이 너무 많은 걸리지 않는 경우, 네트워크(105)를 통해 서버(106)로부터 정보를 새롭게 취득하기에는 충분한 시간이 있으므로, 새롭게 취득한 정보를 리턴할 수 있다. 또한, 네트워크(150)를 통해 정보를 취득하기 위한 요청을 수신한 경우, 네트워크(105)의 통신 상황을 조사하고, 단계 401에서 이미 취득한 정보를 리턴할지, 서버(106)로부터 새롭게 정보를 취득할지를 선택할 수 있다. 네트워크(150)를 통해 정보를 취득하기 위한 요청을 수신한 때의 네트워크(105)의 상황은, 네트워크(150)를 통해 정보의 취득 요청을 수신한 때에 서버(106)에 요청을 송신하고 그 요청에 대한 응답 시간에 기초하여 판단될 수 있다.
이 때, 단계 409에서 프록시 응답이 행해지는 경우, 요청 메시지를 전송하고, 다음 요청에 대한 준비를 위해 저장된 정보를 갱신한다.
이하, 본 발명의 제1 변형예에 따른 시스템을 도 5를 참조하여 설명한다.
도 5는 본 발명의 제1 변형예에 따른 시스템의 구성을 나타낸 도면이다. 여기서, 메시지 중계 장치(100)는 무선 LAN의 액세스 포인트 기능을 갖는 것으로 가정한다.
프린터(101), 디지털 텔레비전(102), 및 디지털 비디오 카메라(107)는, 예를 들어, 이더넷®을 사용하여 유선 네트워크(160)를 통해 메시지 중계 장치(100)에 접속된다. 또한, 디지털 비디오 카메라(103) 및 디지털 카메라(104)는, 예를 들어, IEEE 802.11a/b/g/n을 이용하여 무선 네트워크(170)를 통해 메시지 중계 장치(100)에 접속된다. 메시지 중계 장치(100)는 네트워크(160 및 170)에 접속되고, 유선 네트워크(160)와 무선 네트워크(170) 사이에서 메시지를 중계한다.
메시지 중계 장치(100)의 무선 LAN 액세스 포인트 기능으로서, 브릿지 및 라우터 기능이 있으나, 본 변형예는 양쪽의 기능을 이용하여 구현될 수 있으며, 어느 한쪽으로 한정하고자 한 것은 아니다.
이 때, 장치(기기)의 하드웨어 시스템의 구성은 도 2에 도시된 것과 동일하며, 메시지 중계 장치(100)의 모듈 구성은 도 3에 도시된 것과 동일하다. 그러나, 네트워크 IF(304 및 305)는 각각 유선 네트워크(160) 및 무선 네트워크(170)에 접속된다.
<시스템 처리 흐름>
본 발명의 제1 변형예에 따른 시스템에 의해 행해지는 처리 전반의 흐름을, 도 6을 참조하여 설명한다. 도 6은 ROM(202)에 저장된 프로그램의 일부를 나타내며, 이 프로그램은 컴퓨터인 MPU(206)에 의해 판독되는 컴퓨터 프로그램이다.
여기서, UPnP 프로토콜을 일례로서 사용한다. 메시지 중계 장치(100)의 메시지 대행부(301)에 의해 UPnP 프로토콜 메시지를 대행한다. 또한, UPnP 대응 장치인, 프린터(101), 디지털 텔레비전(102), 디지털 비디오 카메라(103), 및 디지털 카메라(104) 사이에서 콘텐츠를 유통하고 제어를 실행하는 것으로 가정한다. 그러나, 여기서 UPnP 프로토콜을 일례로서 설명하였지만, 본 발명은 이러한 프로토콜에 한하지는 않는다.
단계 601에서, 메시지 대행부(301)는 SSDP 장치 검색 메시지를 무선 네트워크(170)에 송신한다. 여기서, "SSDP"는 Simple Service Discovery Protocoal의 약 어이며, 네트워크에 존재하는 UPnP 장치를 검색하고 발견하기 위한 프로토콜이다. 다음, 메시지 대행부(301)는 응답 메시지를 수신하고, 수신된 응답 메시지의 세부사항을 저장한다.
단계 602에서, 통신 상황 파악부(302)는 응답 수신에 걸리는 시간을 계측하고, 동시에 전파 강도(RSSI: Received Signal Strength Indicator)를 계측한다. 여기서, 통신 상황 파악부(302)는 취득한 전파 강도와 응답 시간을 저장 및 보존한다. 예를 들어, 전파 강도는 80이며, 응답 시간은 1초인 것으로 가정한다.
디지털 텔레비전(102)과 같은 UPnP 대응 장치는, 예를 들어, SSDP 장치 검색 메시지를 송신한다. 단계 603에서, 네트워크 IF(304)에 의해 SSDP 장치 검색 메시지를 수신하고, 단계 604에서, 통신 상황 파악부(302)는 프로토콜(메시지)을 판정한다. 단계 605에서, 통신 상황 파악부(302)는 그 시점의 전파 강도를 취득한다.
단계 606에서, 메시지 처리 제어부(300)는 단계 604에서 판정된 프로토콜이 메시지 대행부(301)에 의해 대행 가능한지 여부를 판정한다. 프로토콜이 대행 가능하다면, 단계 607로 진행하고, 프로토콜이 대행 불가능하다면, 단계 608로 진행한다.
예를 들어, SSDP 프로토콜은, 사전에 무선 네트워크에 접속되어 있는 UPnP 대응 장치로부터 장치 정보를 취득할 수 있기 때문에, 대행 가능하다. 동일한 이유로, 장치 디스크립션과 서비스 디스크립션 취득 프로토콜도 대행 가능하다. 단계 603에서 수신한 메시지에 의해 요청된 정보를 단계 602에서 이미 수신한 경우, 메시지 대행부(301)는 프로토콜이 대행 가능한 것으로 판단한다. 그러나, 장치의 제어 프로토콜은 실제로 UPnP 대응 장치를 제어하는 메시지이므로, 메시지 대행부(301)는 프로토콜이 대행 불가능한 것으로 판단한다.
이 때, 본 실시예에서는 상기의 판단을 행하지만, 프로토콜에 따라서 다양한 판단의 기준이 존재하므로, 여기에 제공되는 설명에 한하지는 않는다. 또한, 단계 606에서의 판단은 대행이 항상 불가능한 프로토콜이 사용되는 경우에 불필요하므로, 단계 605 후에 단계 607로 진행한다.
단계 607에서, 단계 605에서 취득한 전파 강도가 단계 602에서 취득한 전파 강도(또는 기준치)보다 낮은 경우, 단계 609로 진행하는 반면, 단계 605에서 취득한 전파 강도가 단계 602에서 취득한 전파 강도보다 큰 경우에는, 단계 610으로 진행한다. 여기서, 단계 607에서 이루어지는 비교는, 예를 들어, 이하에서 설명하는 전파 강도에 기초하여 수행된다. 즉, 단계 602에서 계측된 디지털 비디오 카메라(103) 및 디지털 카메라(104)의 전파 강도 중 더 낮은 것과, 단계 605에서 계측된 디지털 비디오 카메라(103) 및 디지털 카메라(104)의 전파 강도 중 더 낮은 것을 비교한다. 다른 방법으로서, 단계 602 및 605에서, 디지털 비디오 카메라(103) 및 디지털 카메라(104)로부터 송신되는 신호 이외에 잡음(방해파)의 전파 강도를 계측하여, 단계 607의 비교에 이용할 수 있다. 그러나, 이러한 경우, 단계 605에서 취득된 전파 강도가 더 큰 경우, 단계 609로 진행한다.
단계 609에서, 단계 604에서 판정된 프로토콜이 대행 가능하며, 전파 강도가 낮고, 응답 시간이 상기 1초를 크게 초과하는 것으로 판정한 결과로서, 메시지 대행부(301)는 단계 603에서 수신한 장치 검색 메시지를 전송하지 않는다. 메시지 대행부(301)는 그 대신 프록시 응답을 행한다. 즉, 메시지 대행부(301)는 단계 602에서 수신한 메시지의 세부 사항을 포함하는 메시지를, 단계 603에서 수신한 메시지의 소스에 송신한다. 메시지 대행부(301)는 네트워크(160 및 170)의 통신 상황에 기초하여, 유선 네트워크(160)(디지털 텔레비전(102))로부터 수신한 메시지에 응답하여 응답 메시지를 송신한다.
단계 610에서는, 대행이 가능하며, 또한, 단계 607에서의 전파 강도가 더 크므로, 응답 시간이 상기 1초보다 더 클 가능성이 낮은 것으로 판단한다. 그 결과, 메시지(장치 검색 메시지)를 메시지 중계부(303)가 그대로 무선 네트워크(170)에 전송한다. 무선 네트워크(170)에 접속된 디지털 비디오 카메라(103) 및 디지털 카메라(104)는 메시지를 수신하면 응답을 리턴한다. 메시지 중계부(303)는 그 응답을 네트워크(160)를 통해 단계 603에서 수신한 메시지의 소스에 송신한다. 즉, 메시지 중계부(303)는 네트워크(160 및 170)의 통신 상황에 기초하여, 무선 네트워크(170)로부터 수신한 메시지를 유선 네트워크(160)(디지털 텔레비전(102))에 송신한다.
이 때, 단계 609에서 프록시 응답이 행해지는 경우, 메시지를 전송하고,다음 검색 메시지의 준비를 위하여 저장된 정보를 갱신할 수 있다.
또 다른 구성에 따르면, 단계 602에서 무선 네트워크(170)로부터 메시지를 수신한 때의 상황이 양호하다면, 단계 603에서 수신한 메시지를 무선 네트워크(170)에 송신할지라도, 메시지의 소스에 적절한 응답을 리턴해야 하는 것으로 판단한다. 그 후, 단계 607에서 단계 610으로 진행한다. 상황이 양호하지 않다면, 단계 607에서 단계 609로 진행한다. 여기서, 메시지의 소스(단계 603)는, 예를 들어, 디지털 텔레비전(102)이다. 무선 네트워크(170)로부터 메시지를 수신한 때의 상황이 양호한 것을, 예를 들어, 무선 네트워크(170)에서의 통신 품질이 양호하다고 한다. 구체적으로, 이것은 디지털 비디오 카메라(103), 디지털 카메라(104) 등으로부터의 전파 강도가 소정치보다 강하다고 하거나, 잡음의 전파 강도가 소정치보다 약하다고 한다. 단계 607에서, 메시지 처리 제어부(300)는 단계 603에서 수신한 메시지를 무선 네트워크(170)에 송신할지, 단계 602에서 수신한 메시지에 따라서 유선 네트워크(160)에 메시지를 송신할지를 선택한다. 즉, 단계 607에서, 메시지 처리 제어부(300)는 메시지를 전송할지, 프록시 응답을 행할지를 선택한다.
단계 608에서는, 단계 606에서 프로토콜이 대행 불가능한 것으로 판단하면, 단계 605에서 취득한 전파 강도가 단계 602에서 취득한 전파 강도보다 큰 경우, 단계 610으로 진행하는 반면, 단계 605에서 취득한 전파 강도가 단계 602에서 취득한 전파 강도보다 낮은 경우, 단계 611로 진행한다.
단계 611에서는, 프로토콜이 대행 불가능하며, 전파 강도가 낮으므로, 응답 시간이 상기 1초를 크게 초과할 가능성이 높으며, 따라서, 메시지 대행부(301)는 에러 메시지를 리턴한다. 메시지 리턴부(301)는 네트워크(160 및 170)의 통신 상황과 디지털 텔레비전(102)으로부터 수신한 메시지에 의해 사용되는 프로토콜에 기초하여, 유선 네트워크(160)로부터 수신한 메시지에 응답하여 에러 메시지를 송신한다. 즉, 메시지 대행부(301)는 유선 네트워크(160)로부터 수신한 메시지에 의해 사용되는 프로토콜에 기초하여, 단계 602에서 수신한 메시지에 따라서 유선 네트워 크(602)에 메시지를 송신할지, 에러 메시지를 송신할지를 선택한다. 즉, 메시지 대행부(301)는 유선 네트워크(160)로부터 수신한 메시지에 의해 사용되는 프로토콜에 기초하여, 프록시 응답을 행할지(단계 609), 네트워크(160)에 에러 메시지를 리턴할지(단계 611)를 선택한다.
이하, 본 발명의 제2 변형예에 따른 시스템에 대하여 도 7을 참조하여 설명한다.
도 7은 본 발명의 제2 변형예에 따른 시스템의 구성을 나타낸 도면이다. 여기서, 메시지 중계 장치(100)는 가상 사설 네트워크(VPN: virtual private network) 기능을 갖는 것으로 가정한다.
프린터(101) 및 디지털 텔레비전(102)은 네트워크(180)를 통해 메시지 중계 장치(100)에 접속된다. 또한, 디지털 비디오 카메라(103) 및 디지털 카메라(104)는 네트워크(190)를 통해 메시지 중계 장치(100)와 동일한 기능을 갖는 메시지 중계 장치(108)에 접속된다. 메시지 중계 장치(100)와 메시지 중계 장치(108)는 네트워크(140) 상에서 VPN을 통해 서로 접속된다.
이 때, 장치(기기)의 하드웨어 시스템의 구성은 도 2에 도시된 것과 동일하며, 메시지 중계 장치(100 및 108)의 모듈 구성은 도 3에 도시된 것과 동일하다. 그러나, 네트워크 IF(304 및 305)는 네트워크(140)에 접속된다.
<시스템 처리 흐름>
여기서, UPnP 프로토콜을 일례로 하며, 메시지 중계 장치(100 및 108)의 메시지 대행부(301)에 의해 UPnP 프로토콜 메시지를 대행한다. 또한, UPnP 대응 장 치인 프린터(101), 디지털 텔레비전(102), 디지털 비디오 카메라(103), 및 디지털 카메라(104) 사이에서 콘텐츠를 유통하고 제어를 실행하는 것으로 가정한다. 그러나, 여기서 UPnP 프로토콜을 일례로서 설명하지만, 본 발명은 이러한 프로토콜에 한하지 않는다.
메시지 중계 장치(100)의 메시지 대행부(301)는 네트워크(180)에 접속된 UPnP 대응 장치인 프린터(101) 및 디지털 텔레비전(102)의 장치 정보를 취득 및 유지한다. 또한, 메시지 중계 장치(108)의 메시지 대행부(301)는 네트워크(190)에 접속된 UPnP 대응 장치인 디지털 비디오 카메라(103) 및 디지털 카메라(104)의 장치 정보를 취득 및 유지한다. 메시지 중계 장치(100 및 108)는 각각의 메시지 대행부(301)를 사용하여 서로 유지하는 장치 정보를 교환한다.
전술한 동작을 통해서, 네트워크(180)에 접속된 메시지 중계 장치(100)의 메시지 대행부(301)는 네트워크(190)에 접속된 UPnP 대응 장치에 대한 대행을 수행할 수 있다. 또한, 네트워크(190)에 접속된 메시지 중계 장치(108)의 메시지 대행부(301)는 네트워크(180)에 접속된 UPnP 대응 장치에 대한 대행을 수행할 수 있다.
이 후, UPnP 수행 장치들로부터의 콘텐츠가 유통되며, 네트워크(180)와 네트워크(190) 사이에서 제어 메시지가 전송된다.
여기서, 메시지 중계 장치(100)와 메시지 중계 장치(108) 사이에 VPN 접속이 설정됨으로 인해, 메시지 중계 장치(100)와 메시지 중계 장치(108)에 의해 각각 메시지 대행이 수행된다. 그 처리 흐름은 도 4에 도시된 바와 같다.
일례의 실시예들을 참조하여 본 발명을 설명하였지만, 본 발명은 개시된 실 시예들에 한하지 않음을 이해하여야 한다. 이하의 청구항들의 범주는 모든 이러한 변형예와 균등한 구조 및 기능들을 포괄하도록 최광의로 해석되어야 한다.
도 1은 본 발명을 실시하는 시스템의 구성을 나타낸 도면.
도 2는 본 발명을 실시하는 장치 시스템을 나타낸 블록도.
도 3은 본 발명을 실시하는 메시지 중계 장치의 모듈 구성을 나타낸 도면.
도 4는 본 발명을 실시하는 시스템의 흐름도.
도 5는 본 발명을 실시하는 시스템의 구성을 나타낸 도면.
도 6은 본 발명을 실시하는 시스템의 흐름도.
도 7은 본 발명을 실시하는 시스템의 구성을 나타낸 도면.
<도면의 주요 부분에 대한 부호의 설명>
201: 타이머
204: 패러렐 컨트롤러
205: 시리얼 컨트롤러
207: 디바이스 컨트롤러
300: 메시지 처리 제어부
302: 통신 상황 파악부
301: 메시지 대행부
303: 메시지 중계부
304, 305: 네트워크 I/F

Claims (21)

  1. 중계 장치로서,
    제1 장치로부터 제1 네트워크를 통해 데이터를 수신하도록 구성된 제1 수신부;
    제2 장치로부터 제2 네트워크를 통해 제1 요청을 수신하도록 구성된 제2 수신부;
    상기 제1 요청에 따라서 상기 제1 네트워크에 제2 요청을 송신하도록 구성된 제1 송신부; 및
    상기 제1 요청과 통신 상황에 따라서, 상기 제1 요청을 수신하기 전에 상기 제1 장치로부터 수신한 데이터를, 상기 제2 네트워크를 통해 상기 제2 장치에 송신하도록 구성된 제2 송신부
    를 포함하는 중계 장치.
  2. 제1항에 있어서,
    상기 제1 송신부는 상기 통신 상황에 따라서 상기 제1 네트워크에 상기 제2 요청을 송신하는 중계 장치.
  3. 제1항에 있어서,
    상기 통신 상황에 따라서, 상기 제1 네트워크에 상기 제2 요청을 송신할지, 또는 상기 제1 요청을 수신하기 전에 상기 제1 장치로부터 수신한 데이터를 상기 제2 장치에 송신할지를 선택하도록 구성된 선택부를 더 포함하는 중계 장치.
  4. 제1항에 있어서,
    상기 제2 송신부는 상기 제1 요청에 응답하여, 상기 제1 요청을 수신하기 전에 상기 제1 장치로부터 수신한 데이터, 또는 에러 메시지를 상기 제2 장치에 송신하는 중계 장치.
  5. 제1항에 있어서,
    상기 제2 송신부는 상기 제2 네트워크의 통신 상황에 따라서, 상기 제1 요청을 수신하기 전에 상기 제1 장치로부터 수신한 데이터를 상기 제2 장치에 송신하는 중계 장치.
  6. 제1항에 있어서,
    상기 통신 상황은 에러율을 포함하는 중계 장치.
  7. 제1항에 있어서,
    상기 통신 상황은 상기 제2 장치로부터의 요청을 수신하기 전에 상기 제1 장치로부터의 데이터를 수신하기까지 걸리는 시간을 포함하는 중계 장치.
  8. 제1항에 있어서,
    상기 통신 상황은 전파 강도를 포함하는 중계 장치.
  9. 중계 방법으로서,
    제1 장치로부터 제1 네트워크를 통해 데이터를 수신하는 단계;
    제2 장치로부터 제2 네트워크를 통해 제1 요청을 수신하는 단계;
    상기 제1 요청에 따라서 상기 제1 네트워크에 제2 요청을 송신하는 단계; 및
    상기 제1 요청과 통신 상황에 따라서, 상기 제1 요청을 수신하기 전에 상기 제1 장치로부터 수신한 데이터를, 상기 제2 네트워크를 통해 상기 제2 장치에 송신하는 단계
    를 포함하는 중계 방법.
  10. 제9항에 있어서,
    상기 제2 요청을 송신하는 단계에서는, 상기 통신 상황에 따라서 상기 제1 네트워크에 상기 제2 요청을 송신하는 중계 방법.
  11. 제9항에 있어서,
    상기 통신 상황에 따라서, 상기 제1 네트워크에 상기 제2 요청을 송신할지, 또는 상기 제1 요청을 수신하기 전에 상기 제1 장치로부터 수신한 데이터를 상기 제2 장치에 송신할지를 선택하는 단계를 더 포함하는 중계 방법.
  12. 제9항에 있어서,
    상기 데이터를 송신하는 단계에서는, 상기 제1 요청에 응답하여, 상기 제1 요청을 수신하기 전에 상기 제1 장치로부터 수신한 데이터, 또는 에러 메시지를 상기 제2 장치에 송신하는 중계 방법.
  13. 제9항에 있어서,
    상기 데이터를 송신하는 단계에서는, 상기 제2 네트워크의 통신 상황에 따라서, 상기 제1 요청을 수신하기 전에 상기 제1 장치로부터 수신한 데이터를 상기 제2 장치에 송신하는 중계 방법.
  14. 제9항에 있어서,
    상기 통신 상황은 에러율을 포함하는 중계 방법.
  15. 제9항에 있어서,
    상기 통신 상황은 상기 제2 장치로부터의 요청을 수신하기 전에 상기 제1 장치로부터의 데이터를 수신하기까지 걸리는 시간을 포함하는 중계 방법.
  16. 제9항에 있어서,
    상기 통신 상황은 전파 강도를 포함하는 중계 방법.
  17. 컴퓨터 프로그램을 기억한 기억 매체로서,
    상기 컴퓨터 프로그램은,
    제1 장치로부터 제1 네트워크를 통해 데이터를 수신하는 단계;
    제2 장치로부터 제2 네트워크를 통해 제1 요청을 수신하는 단계;
    상기 제1 요청에 따라서 상기 제1 네트워크에 제2 요청을 송신하는 단계; 및
    상기 제1 요청과 통신 상황에 따라서, 상기 제1 요청을 수신하기 전에 상기 제1 장치로부터 수신한 데이터를, 상기 제2 네트워크를 통해 상기 제2 장치에 송신하는 단계
    를 포함하는 기억 매체.
  18. 제17항에 있어서,
    상기 제2 요청을 송신하는 단계에서는, 상기 통신 상황에 따라서 상기 제1 네트워크에 상기 제2 요청을 송신하는 기억 매체.
  19. 제17항에 있어서,
    상기 컴퓨터 프로그램은, 상기 통신 상황에 따라서, 상기 제1 네트워크에 상기 제2 요청을 송신할지, 또는 상기 제1 요청을 수신하기 전에 상기 제1 장치로부터 수신한 데이터를 상기 제2 장치에 송신할지를 선택하는 단계를 더 포함하는 기억 매체.
  20. 제17항에 있어서,
    상기 데이터를 송신하는 단계에서는, 상기 제1 요청에 응답하여, 상기 제1 요청을 수신하기 전에 상기 제1 장치로부터 수신한 데이터, 또는 에러 메시지를 상기 제2 장치에 송신하는 기억 매체.
  21. 제17항에 있어서,
    상기 데이터를 송신하는 단계에서는, 상기 제2 네트워크의 통신 상황에 따라서, 상기 제1 요청을 수신하기 전에 상기 제1 장치로부터 수신한 데이터를 상기 제2 장치에 송신하는 기억 매체.
KR20080021010A 2007-03-06 2008-03-06 중계 장치 및 중계 방법 KR101001046B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2007-00055760 2007-03-06
JP2007055760A JP5116319B2 (ja) 2007-03-06 2007-03-06 メッセージ中継装置及び方法

Publications (2)

Publication Number Publication Date
KR20080081864A true KR20080081864A (ko) 2008-09-10
KR101001046B1 KR101001046B1 (ko) 2010-12-14

Family

ID=39523341

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20080021010A KR101001046B1 (ko) 2007-03-06 2008-03-06 중계 장치 및 중계 방법

Country Status (5)

Country Link
US (1) US8249085B2 (ko)
EP (1) EP1968244A3 (ko)
JP (1) JP5116319B2 (ko)
KR (1) KR101001046B1 (ko)
CN (1) CN101262421B (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8526988B2 (en) * 2008-11-30 2013-09-03 Google Inc. Method and system for circulating messages
JP5870990B2 (ja) * 2013-12-04 2016-03-01 コニカミノルタ株式会社 中継装置、画像形成装置、中継方法および中継プログラム
JP6137149B2 (ja) * 2014-12-01 2017-05-31 コニカミノルタ株式会社 情報処理システム、クラウドサーバー、装置制御方法および装置制御プログラム
JP2021082876A (ja) * 2019-11-14 2021-05-27 三菱電機株式会社 通信システム、通信アダプタ、通信方法及びプログラム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07210473A (ja) 1994-01-12 1995-08-11 Hitachi Ltd 伝送路間のデータフィルタリング方式
US6563517B1 (en) * 1998-10-02 2003-05-13 International Business Machines Corp. Automatic data quality adjustment to reduce response time in browsing
JP3679289B2 (ja) * 1999-12-06 2005-08-03 株式会社日立製作所 ゲートウェイ装置によるデータ中継方法
IL153782A0 (en) * 2000-07-17 2003-07-31 Eplication Networks Ltd Bandwidth savings and qos improvements for www sites by caching static and dynamic content on a distributed network of caches
FI20002227A (fi) 2000-10-09 2002-04-10 Sanomawsoy Oyj Menetelmä, järjestely ja tietokoneohjelma verkkopalvelun tarjoamiseksi ja käyttöliittymä
US20020065074A1 (en) * 2000-10-23 2002-05-30 Sorin Cohn Methods, systems, and devices for wireless delivery, storage, and playback of multimedia content on mobile devices
US20020059371A1 (en) * 2000-11-16 2002-05-16 Jamail John M. Caching proxy streaming appliance systems and methods
JP3904435B2 (ja) * 2001-11-28 2007-04-11 株式会社日立製作所 Webサービス向け輻輳制御装置及び方法
JP2003258705A (ja) * 2002-03-06 2003-09-12 Sharp Corp 移動端末機および移動通信システムならびに移動通信方法
US6832259B2 (en) * 2002-08-29 2004-12-14 Motorola, Inc. Dynamic adjustment of transmitted data size for a subscriber device
KR20040104775A (ko) 2003-06-04 2004-12-13 삼성전자주식회사 이종 네트워크간에 효율적인 패킷 재전송을 위한 네트워크장치 및 패킷 재전송 방법
US9032096B2 (en) * 2003-12-17 2015-05-12 Cisco Technology, Inc. Reducing the impact of network latency on application performance
US7643480B2 (en) * 2004-01-22 2010-01-05 Hain-Ching Liu Method and system for reliably and efficiently transporting data over a network
JP4313266B2 (ja) * 2004-07-29 2009-08-12 株式会社エヌ・ティ・ティ・ドコモ サーバ装置、その制御方法およびコネクション確立方法
JP4541852B2 (ja) 2004-11-25 2010-09-08 株式会社エヌ・ティ・ティ・ドコモ アクセス情報管理システム、アクセス情報中継モバイル端末、アクセス情報管理方法
JP2006174231A (ja) * 2004-12-17 2006-06-29 Nippon Telegr & Teleph Corp <Ntt> ストリーミング視聴品質管理装置,ストリーミング視聴品質制御装置,ストリーミング視聴品質管理方法,ストリーミング視聴品質制御方法,ストリーミング視聴品質管理プログラムおよびストリーミング視聴品質制御プログラム
JP2006287331A (ja) * 2005-03-31 2006-10-19 Fujitsu Ltd 輻輳制御ネットワーク中継装置、および輻輳制御ネットワーク中継方法

Also Published As

Publication number Publication date
CN101262421A (zh) 2008-09-10
JP2008219591A (ja) 2008-09-18
US20080219155A1 (en) 2008-09-11
US8249085B2 (en) 2012-08-21
JP5116319B2 (ja) 2013-01-09
KR101001046B1 (ko) 2010-12-14
EP1968244A3 (en) 2014-10-01
CN101262421B (zh) 2011-06-01
EP1968244A2 (en) 2008-09-10

Similar Documents

Publication Publication Date Title
JP4000331B2 (ja) ネットワークのポートマッピング用システム
US8270309B1 (en) Systems for monitoring delivery performance of a packet flow between reference nodes
US7987279B2 (en) Control-relay apparatus
JP5939262B2 (ja) 送信制御方法、ノードおよび送信制御プログラム
JP5442387B2 (ja) 通信ネットワーク内の優先状態の自動検出と再構築
WO2012029422A1 (ja) 通信品質監視システム、通信品質監視方法、及び記憶媒体
KR101001046B1 (ko) 중계 장치 및 중계 방법
JP4532253B2 (ja) フレーム転送装置及びフレームのループ抑止方法
WO2006013811A1 (ja) 情報処理システム、情報処理装置、サーバ装置、情報処理方法及びプログラム
JP5440200B2 (ja) 中継装置及び帯域制御方法
JP7464046B2 (ja) 通信装置、通信方法、及び通信プログラム
JP2004192256A (ja) ネットワークコントローラ
WO2006035601A1 (ja) 情報処理装置、通信処理装置、情報処理システム、情報処理方法、通信処理方法およびプログラム
WO2006123456A1 (ja) パケット処理装置、通信システム、パケット処理方法、および当該方法を実行させるプログラム
CN111147386B (zh) 用于处理数据传输拥塞的方法、电子设备和计算机可读介质
JPWO2010055756A1 (ja) トポロジ特定方法、及びトポロジ特定装置
US9473597B2 (en) Implementing multiple MAC protocols using a single wireless communication unit
JP7529134B2 (ja) 通信システム、通信方法、接続先管理サーバ及びプログラム
JP5135292B2 (ja) Ip電話交換機及びip電話システム
Chiu et al. Design and Implement Adaptive Tree Topology Mechanism For Wi-Fi Wireless Network
EP3547613A1 (en) Method of performance monitoring and corresponding apparatus
JP5093528B2 (ja) 通信装置、および回線状況情報提供方法
Dukkipati et al. Minimizing the duration of flows
JP2004248257A (ja) 通信システム及び端末
van Antwerpen et al. Interface selection layer improving QoS using interface pair selection

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: 20131126

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20141126

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20151125

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20161124

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20171124

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20181126

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20191128

Year of fee payment: 10