KR100817661B1 - 인터넷에 접속하는 서버, 기기 및 통신 시스템 - Google Patents

인터넷에 접속하는 서버, 기기 및 통신 시스템 Download PDF

Info

Publication number
KR100817661B1
KR100817661B1 KR20047011710A KR20047011710A KR100817661B1 KR 100817661 B1 KR100817661 B1 KR 100817661B1 KR 20047011710 A KR20047011710 A KR 20047011710A KR 20047011710 A KR20047011710 A KR 20047011710A KR 100817661 B1 KR100817661 B1 KR 100817661B1
Authority
KR
South Korea
Prior art keywords
server
terminal
tcp connection
packet
transmits
Prior art date
Application number
KR20047011710A
Other languages
English (en)
Other versions
KR20050043794A (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 KR20050043794A publication Critical patent/KR20050043794A/ko
Application granted granted Critical
Publication of KR100817661B1 publication Critical patent/KR100817661B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2521Translation architectures other than single NAT servers
    • H04L61/2528Translation at a proxy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • 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/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5603Access techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/663Transport layer addresses, e.g. aspects of transmission control protocol [TCP] or user datagram protocol [UDP] ports

Abstract

통신 시스템은 인터넷에 접속된 기기(101) 및 서버(104)를 포함하고, 이 통신 시스템은, 기기(101)와, 인터넷에 접속 가능한 단말(102) 간의 통신을 서버(104)를 통하여 전송한다. 기기(101)는 서버(104)에 통지 패킷을 주기적으로 송신한다. 서버(104)는, 단말(102)로부터 기기(101)에의 전송 요구가 있는 경우 통지 패킷에 응답하여 접속 요구 패킷을 기기(101)에 송신한다. 기기(101)는, 서버(104)로부터 접속 요구 패킷을 수신하면, 서버(104)에 TCP 접속 요구를 송신한다. 서버(104)는, 접속 요구 패킷에 응답하여 기기(101)로부터 서버(104)에 송신되는 TCP 접속 요구를 수락하고, 이에 따라서 TCP 접속을 설정한다. 이와 같이, 서버(104)는 TCP 접속 설정 후에 그 TCP 접속을 통하여 단말(102)과 기기(101) 간의 통신을 전송한다.

Description

인터넷에 접속하는 서버, 기기 및 통신 시스템{SERVER, DEVICE, AND COMMUNICATION SYSTEM CONNECTED TO THE INTERNET}
본 발명은, IP 프로토콜을 사용하는 통신 시스템에 관한 것이고, 더욱 상세하게는, 인터넷상의 기기로부터 지정된 타이밍에 라우터를 통해서 근거리 통신망 내의 기기에 대한 통신을 개시할 수 있는 통신 시스템에 관한 것이다.
최근, 사무실 또는 가정을 막론하고, 네트워크 어드레스 변환(NAT; network address translation) 기능 또는 네트워크 어드레스 포트 변환(NAPT; network address port translation) 기능을 구비한 라우터에 의해서 근거리 통신망(LAN)과 인터넷이 일반적으로 접속되어 있다.
인터넷에 접속된 기기간에 통신을 실행하기 위하여, 세계에서 유일하게 할당된 글로벌 IP 어드레스가 사용된다. 한편, 인터넷에 접속되는 기기의 수의 급속한 증가로 인하여 글로벌 IP 어드레스는 부족한 경향이 있다. 따라서, 인터넷에 직접 접속되지 않은 조직 또는 가정의 LAN에 있어서는, RFC1918에 의해서 규정된 LAN 내에서만 유일한 프라이빗(private) IP 어드레스를 사용하는 것이 일반적이다. 프라이빗 IP 어드레스는 인터넷상에 있어서 유일하지 않으므로, 이 상태에서는 프라이빗 IP 어드레스를 갖는 기기는 인터넷에 접속된 기기와 통신을 실행할 수 없다. 이 문제는 NAT 또는 NAPT 기능에 의해서 해결되며, 이 기능은, 프라이빗 IP 어드레스가 할당된 기기가 인터넷을 통하여 통신할 수 있도록, 글로벌 IP 어드레스와 프라이빗 IP 어드레스의 상호 변환 기능을 제공한다.
이하에, NAT 기능의 메커니즘을 도 8A의 통신 시퀀스 다이어그램을 참조하여 설명한다. LAN(711)은 라우터(703)를 통하여 인터넷(712)에 접속되어 있다. 기기(701)는 LAN(711)에 접속되고, 서버(702)는 인터넷(712)에 접속되어 있다. 기기(701)의 IP 어드레스는 프라이빗 IP 어드레스 "192.168.1.2"이고, 서버(702)의 IP 어드레스는 글로벌 IP 어드레스 "4.17.168.6"인 것으로 한다. 라우터(703)의 인터넷측 어드레스는 글로벌 IP 어드레스 "202.224.159.142"이다. 설명의 편의상, 라우터(703)의 인터넷측 어드레스는 1개인 것으로 한다.
이러한 네트워크 구성에 있어서, 서버(702)와의 통신을 개시하기 위해서는, 기기(701)는, 우선, LAN(711)에 IP 패킷(704)을 전송한다. 송수신지를 지정하기 위하여, IP 패킷(704)은 발신지(source) IP 어드레스(SA), 수신지(destination) IP 어드레스(DA), 발신지 포트(SP) 및 수신지 포트(DP)를 저장하는 필드와, 필요한 정보를 저장하는 페이로드를 포함한다.
라우터(703)는, IP 패킷(704)의 수신지가 글로벌 IP 어드레스 "4.17.168.6"인 것을 검출하고, IP 패킷(704)의 왕로(往路) 변환(708)을 실행하여 그것을 IP 패킷(705)으로서 인터넷(712)에 전송한다. 왕로 변환(708)에서는, IP 패킷(704)의 SA 필드 내의 프라이빗 IP 어드레스 "192.168.1.2"를, 라우터(703)의 인터넷측의 글로벌 IP 어드레스 "202.224.159.142"로 치환한다. 이 때, 라우터(703)는, IP 패킷(704)의 SA "192.168.1.2"와 IP 패킷(705)의 DA "4.17.168.6"의 세트를, 도 8B에 나타내는 바와 같은 라우터(703) 내부에 보존되는 NAT 테이블(713)에 저장한다.
변환(708)의 결과, IP 패킷(705)은 글로벌 IP 어드레스만을 포함하는, 인터넷상에서 전송이 가능한 패킷이 된다. 따라서, IP 패킷(705)은 목적으로 하는 서버(702)에 전송되고, 서버(702)에서 패킷 응답 처리(S710)가 실행되어서, 응답 IP 패킷(706)이 라우터(703)에 회신된다. 패킷 응답 처리(S710)에 있어서 패킷의 SA와 DA의 값은 교환된다.
라우터(703)는, IP 패킷(706)을 수신하면, 그것을 NAT 테이블(713)과 비교한다. 비교 결과, IP 패킷(706)의 DA가 IP 어드레스(705)의 SA와 일치하면, 라우터(703)로부터 전송된 패킷에 대한 응답인 것이 확인되어서, 귀로(歸路) 변환(709)을 실행한다.
귀로 변환(709)에 있어서, 라우터(703)는, IP 패킷(706)의 DA 필드 내의 글로벌 IP 어드레스 "202.224.159.142"를, IP 패킷(706)의 SA 필드 내의 IP 어드레스 "4.17.168.6"을 근거로 하여 NAT 테이블(713)에 저장된 기기(701)의 IP 어드레스 "192.168.1.2"로 치환하고, 그것을 IP 패킷(707)으로서 LAN(711)에 전송한다. 그 결과, IP 패킷(707)은 기기(701)에 송신되고, 기기(701)에서 IP 패킷(704)의 응답으로서 수신된다.
NAT 테이블(713)은 통신을 실행하는 동안 저장되고, 통신이 완료되면 파기된다. 통신 완료는, 통상적으로, TCP 패킷의 경우에 syn 패킷의 검출, 또는 통신이 실행되지 않는 시간에 의한 타임 아웃(time out)에 의해서 판정된다. UDP 패킷의 경우에는 통상적으로 타임 아웃에 의해서 판정된다. 이에 따라서, LAN상의 서버(702)와 인터넷상의 기기(701)와의 사이에 통신이 가능하게 된다.
따라서, NAT 기능을 구비한 라우터에 의해서, LAN상의 기기와 인터넷상의 기기와의 사이의 통신이 가능하게 된다. 그러나, NAT 메커니즘에서는, LAN상의 복수의 기기가 동시에 인터넷상의 기기와 통신을 실행하기 위해서는, 동시에 통신하는 기기의 수 만큼 많은 글로벌 IP 어드레스를 NAT 라우터에 할당해야 하므로, 글로벌 IP 어드레스의 감소 효과가 작아진다. 이러한 과제를 해결하기 위하여, NAT 기능을 확장하여 NAPT 기능이 개발되었다.
이하에, NAPT 기능의 메커니즘을 도 9A의 통신 시퀀스 다이어그램을 참조로 하여 설명한다. 도 8A의 NAT와 동일한 동작의 설명은 생략한다. NAT에서는, IP 패킷의 IP 어드레스만을 변환하지만, NAPT에서는 포트도 동시에 변환한다. 즉, 도 9A의 왕로 변환(808)에 있어서, NAT와 동일한 변환 처리에 추가하여, 라우터(803)가 현재 사용하지 않는 포트 번호(여기서는 "100")를 선택하고, 그것을 IP 패킷(804)의 SP(여기서는 "1")와 치환하여 IP 패킷(805)으로 변환한다. 이 때, 라우터(803)는, IP 패킷(804)의 SA "192.168.1.2"와 IP 패킷(805)의 DA "4.17.168.6"의 세트에 추가하여, IP 패킷(804)의 SP(1)와 라우터(803)의 치환된 포트(100)의 세트를 라우터(803) 내부의 NAPT 테이블(813)(도 9B 참조)에 저장한다.
라우터(803)는, IP 패킷(806)을 수신하면, 수신 패킷의 내용과 테이블(813)을 비교한다. 비교한 결과, 수신한 IP 패킷(806)의 DA가 IP 어드레스(805)의 SA와 일치하고, IP 패킷(806)의 DP가 IP 어드레스(805)의 SP와 일치하면, 수신한 패킷(806)이 라우터(803)가 전송한 패킷(805)에 대한 응답인 것이 확인된다. 따라서, 귀로 변환(809)을 실행한다. 귀로 변환(809)에서는 NAT의 동작에 추가하여, IP 패킷(806)의 DP(여기서는 "100)의 내용을 저장된 IP 패킷(804)의 SP(여기서는 "1")로 치환하여, IP 패킷(807)으로 변환한다. 결과적으로, LAN상의 기기(801)와 인터넷(812)상의 서버(802)와의 사이에 통신이 가능하게 된다. 상기의 NAPT 기능에 의하면, LAN측으로부터 복수의 기기가 동시에 통신하는 경우, 기기(801)로부터의 통신을 라우터의 포트 번호로써 구별할 수 있고, 따라서 라우터(803)의 글로벌 IP 어드레스가 1개만 있어도, 라우터의 포트의 수 만큼 통신을 동시에 실행할 수 있다.
이상과 같이, NAT 또는 NAPT 기술에 의하면, 프라이빗 IP 어드레스를 갖는 LAN 내의 기기로부터 인터넷상의 서버에 접속하는 것이 용이하다. 한편, 프라이빗 IP 어드레스를 갖는 LAN 내의 기기에, 인터넷상의 기기로부터 희망할 때 언제든지 자유롭게 접속하는 것은 용이하지 않다. 이 때문에, 휴대전화로부터 인터넷을 통하여, 가정 내의 가전기기에 접속해서 제어하는 등의 기능의 실현은 어려웠다. 이것은, LAN 내의 기기가 프라이빗 IP 어드레스를 갖고 있고, 패킷이 인터넷상의 기기로부터 프라이빗 IP 어드레스에 전송될 수 없기 때문이다. 이러한 과제를 해결하기 위해서 스태틱(static) NAT 또는 포트 포워딩(port forwarding)이라고 하는 기능을 제안한다.
스태틱 NAT 기능에 있어서는, 사용자는 라우터에 스태틱 NAT 테이블을 미리 설정해야 한다. 스태틱 NAT 테이블의 엔트리는, 접속하고 싶은 LAN 내의 기기의 IP 어드레스 및 포트와, 라우터의 임의의 비어 있는 포트로 구성된다. 사용자는, 인터넷으로 LAN 내의 기기에 접속하기를 희망하는 경우, 사용자의 단말로부터, 라우터의 글로벌 IP 어드레스와 스태틱 NAT 테이블에 미리 설정된 포트의 세트를 지정하여 패킷을 전송한다. 라우터는, 사용자의 단말로부터 수신한 패킷의 내용을, 미리 설정된 스태틱 NAT 테이블의 엔트리와 비교하고, 패킷의 수신지를 엔트리에서의 LAN 내의 기기의 IP 어드레스와 포트로 치환하여 전송한다.
이러한 스태틱 NAT에 의해서, 인터넷상의 기기로부터 LAN 내의 기기에 대하여 통신이 가능하게 된다. 그러나, 스태틱 NAT에 있어서는, 사용자가 스태틱 NAT 테이블을 미리 설정해야 하고, 또한 IP 어드레스의 지식이 없는 최종 사용자에게는 그 설정 내용이 복잡하다. 또한, 라우터의 글로벌 IP가 PPP 또는 DHCP 프로토콜에 의해서 다이내믹하게 할당되어 있는 경우에, 사용자가 그 어드레스를 파악하는 것이 어렵고, 접속 수신지를 지정할 수 없다. 그리고 또한, 외부 패킷이 LAN 내에 전송되므로 보안성이 낮아진다. 또한, 사용자가 관리하는 라우터가 ISP의 프라이빗 어드레스의 네트워크에 접속되어 있는 경우, 즉 NAT가 다단(多段; multiple stage)으로 되어 있는 경우에는, ISP의 라우터의 스태틱 NAT가 설정되지 않으면 인터넷으로부터의 통신을 할 수 없게 된다. 이와 같이 많은 과제가 있었다.
여기서 설명한 바와 같이, 프라이빗 IP 어드레스를 갖는 LAN 내의 기기로부터 인터넷상의 기기에 접속하는 것은 용이하지만, 프라이빗 IP 어드레스를 갖는 LAN 내의 기기에, 인터넷상의 기기로부터 희망할 때 접속하는 것은 용이하지 않았다. 이 때문에, PC(퍼스널 컴퓨터) 또는 휴대전화로부터 인터넷을 통하여, 가정 내의 PC 또는 가전기기에 접속해서 제어하는 등의 기능의 실현은 어려웠다.
따라서, 본 발명의 목적은 상기의 과제를 해결하는 것이다. 즉, 본 발명은 인터넷상의 기기로부터 프라이빗 IP 어드레스를 갖는 LAN 내의 기기에, 필요할 때 언제든지 자유롭게 통신하는 방법을 제공한다. 특히, 본 발명은, 사용자가 라우터에 미리 복잡한 설정을 할 필요가 없고, 또한, 라우터의 인터넷측 어드레스가 다이내믹하게 할당되어 있는 경우에도 수신지 통신기기를 용이하게 지정할 수 있고, 또한 NAT 라우터가 다단(多段)인 경우에도, 상기의 통신을 실현할 수 있는 통신 방법을 제공한다.
본 발명의 제1통신 시스템은, 인터넷에 접속된 적어도 하나의 기기와, 인터넷에 접속 가능한 적어도 하나의 단말과의 사이의 통신을, 인터넷에 접속된 서버를 통하여 전송하는 통신 시스템이다. 이 통신 시스템에 있어서, 서버 및 기기는 이하와 같이 동작한다.
기기는 서버에 주기적으로, 비연결형(connectionless) IP 패킷인 통지 패킷을 송신하고, 통지 패킷은 기기에 관한 어드레스에 정보를 포함한다(기기의 어드레스에서의 정보 및/또는 네트워크 어드레스 변환 라우터에 의해 기기에 할당되는 어드레스에서의 정보임). 통지 패킷을 수신했을 때, 서버는 수신된 주기적 통지 패킷에 포함되어 있는 상기 정보를 근거로 기기의 어드레스 정보를 저장 또는 갱신한다. 서버는, 단말로부터 기기에 송신을 요구하는 경우, 상기 통지 패킷에 대한 응답으로서, 기기의 상기 저장된 어드레스 정보를 사용하여, 비연결형 IP 패킷인 접속 요구 패킷을 상기 기기에 송신한다. 기기는, 서버로부터 접속 요구 패킷을 수신하는 경우, 서버에 TCP 접속 요구를 송신한다. 서버는, 접속 요구 패킷에 응답하여, 기기로부터 서버에 송신된 TCP 접속 요구를 수락하고, 이에 따라서 TCP 접속을 설정한다. 서버는, TCP 접속 설정 후, 그 TCP 접속을 통하여 단말과 기기 간의 통신을 전송한다.
제1통신 시스템에 의하면, 서버로부터 기기에 송신된 접속 요구 패킷은, 기기로부터의 통지 패킷의 응답으로서 송신되므로, 기기가, NAT 기능을 구비한 라우 터에 의해서 인터넷에 접속되어 있는 경우에도, 접속 요구 패킷을 스태틱 NAT 설정없이 라우터를 통하여 기기에 송신할 수 있다. 또한, TCP 접속의 설정시에, 기기로부터 서버에 접속을 요구하므로, 스태틱 NAT 설정을 하지 않고 TCP 접속을 설정할 수 있다. 따라서, 필요할 때는 언제든지 서버와 기기 간에 TCP 접속을 설정할 수 있고, 서버가 이 TCP 접속을 통하여 통신을 전송하므로, NAT 라우터의 유무에 관계없이 필요할 때는 언제든지 단말로부터, LAN에 접속된 기기에 통신을 실행할 수 있다. 또한, 본 발명에서는, 통신을 전송하지 않는 기간에는 부하(負荷)가 작은 패킷을 이용하고, 통신 전송 기간에는 통신의 신뢰성이 높은 TCP 접속을 이용하므로, 서버의 부하를 작게 하면서 신뢰성 있는 통신을 실현할 수 있다.
본 발명의 제2통신 시스템에 의하면, 제1통신 시스템에 있어서 서버 등이 다음과 같이 동작한다. 단말은, 서버에 대하여 기기 ID를 포함하는 HTTP 요구를 송신함으로써 기기에 대한 전송을 요구한다. 서버는, 단말과 기기 간의 통신을 전송할 때에, 단말로부터의 HTTP 요구를, 기기로부터 확장된 TCP 접속을 통하여 송신한다. 기기는 전송된 HTTP 요구를 처리하여, 대응하는 HTTP 응답을 TCP 접속을 통하여 서버에 전송한다. 서버는 HTTP 응답을 단말에 전송한다. 제2통신 시스템에 의하면, HTTP를 이용하여 NAT 라우터의 유무에 관계없이 필요할 때는 언제든지, 기존의 웹 브라우저를 구비한 단말로부터, LAN에 접속된 기기에 통신을 실행할 수 있다.
상기의 제2통신 시스템에 있어서, 기기는 웹 서버 모듈과 전송 모듈을 구비할 수도 있다. 웹 서버 모듈은, 전송 모듈로부터 HTTP 요구를 수신하여 HTTP 응답을 회신한다. 전송 모듈은, 서버로부터 접속 요구 패킷을 수신하면, 서버에 대하여 TCP 접속 요구를 송신하여 TCP 접속을 설정하고, 그 TCP 접속을 통하여 서버로부터 HTTP 요구를 수신하여 웹 서버에 전송하고, 웹 서버로부터 HTTP 응답을 수신하여 TCP 접속을 통하여 서버에 전송한다.
이 동작에 의하면, HTTP를 이용하여 NAT 라우터의 유무에 관계없이, 필요할 때는 언제든지, 기존의 웹 브라우저를 구비한 단말로부터, LAN에 접속된 기기에 통신을 실행할 수 있고, 또한 기존의 웹 서버 모듈을 기기에 실장할 수 있다.
본 발명의 제3통신 시스템에 의하면, 제1통신 시스템에 있어서 서버 등이 다음과 같이 동작한다.
서버는, 적어도 하나의 단말로부터 복수의 전송 요구를 수신할 수 있고, 단말로부터 기기에 복수의 전송 요구가 있는 경우에, 전송 요구에 대응하는 각각의 고유한 세션(session) 식별자를 생성하고, 접속 요구 패킷에 의하여 기기에 통지한다. 기기는, 서버로부터 세션 식별자를 포함한 접속 요구 패킷을 수신한 경우, 서버에 TCP 접속을 설정하여, 그 설정한 TCP 접속을 통하여 세션 식별자를 서버에 송신하고, TCP 접속 설정 후에는, TCP 접속을 통하여 서버와 통신한다. 서버는, 접속 요구 패킷에 응답하여 기기로부터 서버에 송신된 TCP 접속 요구를 수락하여 TCP 접속을 설정하고, 설정된 TCP 접속을 통하여 기기로부터 송신되는 세션 식별자를 수신하여, 수신한 세션 식별자를 TCP 접속에 대응시킴으로써, 복수의 TCP 접속을 단말로부터의 복수의 접속 요구에 대하여 대응시킨다. 서버는, 단말이 세션 식별자를 지정하여 접속을 요구하고, 또한, 그 지정된 세션 식별자에 대응하는 TCP 접속이 이미 설정된 경우에만, 그 설정된 TCP 접속을 통하여 단말로부터의 통신을 전송함으로써, 각각의 세션 식별자에 대하여 병렬로 통신 내용을 전송한다.
제3통신 시스템에 의하면, 서버와 기기 간에 복수의 TCP 접속을 설정할 수 있고, 각각의 TCP 접속을 통한 통신 내용을 각각의 세션 ID로써 관리함으로써, 내용을 혼란시키거나 일관성을 희생하지 않고, 단말로부터 기기에 모든 세션 ID에 대하여 병렬로 통신을 실행할 수 있다.
제1통신 시스템에 있어서, 서버는 복수의 기기에 대하여, 각각의 기기의 최종 액세스 시각을 저장하는 저장부(storage section)를 구비하고, 다음과 같이 동작할 수도 있다. 서버는, 기기로부터의 주기적 통지 패킷(periodic notice packet)을 수신하면, 최종 액세스 시각을 통지 패킷의 수신 시각으로 갱신한다. 그리고, 단말로부터, 기기에의 전송 요구가 있는 경우에, 기기의 최종 액세스 시각과 현재 시각과의 차이가 소정의 기간을 초과하면, 서버는 접속 요구를 거부한다. 그 차이가 소정의 기간 이내이면, 서버는 통지 패킷에 대한 응답으로서 접속 요구 패킷을 상기 기기에 송신한다.
따라서, 단말로부터 서버에 접속을 요구할 때에, 기기가 동작 개시하여 통신할 준비가 되어 있는 것을, 즉시 확인할 수 있다. 그러므로, 통신 불가능한 경우에 단말에 대한 거부를 고속으로 응답할 수 있다. 기기의 IP 어드레스가 ISP에 의해서 다이내믹하게 할당되므로, 기기의 전원 중단 등에 의해서, 서버에 등록된 기기의 IP 어드레스가 다른 기기에 이미 할당된 경우에도, 다른 기기에의 잘못된 접속 요구를 회피할 수 있다.
본 발명의 제4통신 시스템에 의하면, 제1통신 시스템에 있어서 서버 등이 다음과 같이 동작한다.
서버는 복수의 기기에 대하여, 각각의 기기의 최종 액세스 시각을 저장하는 저장부를 구비하고 있다. 서버는, 최대 액세스 확인 주기 정보를 기기에 미리 송신한다. 기기는, 그 최대 액세스 확인 주기 정보를 수신하여 그것을 내부에 저장하고, 최대 액세스 확인 주기 정보가 나타내는 주기보다도 짧은 주기로 통지 패킷을 주기적으로 송신한다. 서버는, 기기로부터 통지 패킷을 수신하면, 최종 액세스 시각을 통지 패킷의 수신 시각으로 갱신한다. 서버는, 단말로부터, 기기에의 전송 요구가 있는 경우에, 기기의 최종 액세스 시각과 현재 시각과의 차이가, 최대 액세스 확인 주기 정보가 나타내는 주기를 초과하면, 접속 요구를 거부하고, 그 차이가 최대 액세스 확인 주기 정보가 나타내는 주기 이내이면, 통지 패킷에 대한 응답으로서 접속 요구 패킷을 상기 기기에 송신한다.
제4통신 시스템에 의하면, 단말로부터 서버에 접속을 요구할 때에, 기기가 동작 개시하여 통신할 준비가 되어 있는 것을, 즉시 확인할 수 있고, 또한 통신 불가능한 경우에 단말에 대한 거부를 고속으로 응답할 수 있고, 또한 기기의 IP 어드레스가 ISP에 의해서 다이내믹하게 할당되고, 또한 기기의 전원 중단 등에 의해서, 서버에 등록된 기기의 IP 어드레스가 다른 기기에 이미 할당된 경우에도, 다른 기기에의 잘못된 접속 요구를 회피할 수 있다. 또한, 서버로부터 기기에 최대 액세스 확인 주기 정보를 미리 지정함으로써, 기기가 통신할 준비가 되어 있는 것을 확인하는 통지 패킷의 송신 주기를 제어할 수 있고, 서버에서의 통지 패킷의 수신 부하와 통신 불가능한 것을 검출할 때까지의 시간을 절충(trade-off)에 의해서 자유롭게 조정할 수 있다.
본 발명의 제5통신 시스템에 의하면, 제1통신 시스템에 있어서 서버 등이 다음과 같이 동작한다.
서버는, 서버 증명서를 저장하고 또한 통신을 암호화하고 복호화하는 암호 통신부를 구비하고 있다. 단말은, 서버 증명서를 검증하는 검증부와, 통신을 암호화하고 복호화하는 암호 통신부를 구비하고 있다. 기기는, 통신을 암호화하고 복호화하는 암호 통신부를 구비하고 있다. 서버는, 단말과 기기 간에 비밀 정보를 전송할 때, 단말에 서버 증명서를 미리 송신한다. 단말은, 서버 증명서를 검증한 후, 증명서가 비밀 정보의 송신 및 수신용인 것이 확실하면, 암호 통신부로써 비밀 정보를 암호화한다. 기기는, 설정된 TCP 접속을 통하여 암호 통신부로써 비밀 정보를 암호화하여, 서버와의 비밀 정보의 송신 및 수신을 실행한다. 서버는, 설정된 TCP 접속을 통해서 단말로부터 기기에 비밀 정보를 전송할 때, 단말로부터 암호화된 비밀 정보를 수신하여, 그 수신한 정보를 암호 통신부로써 복호화하고, 복호화된 정보를 암호 통신부로써 암호화하여 그 정보를 기기에 송신한다. 또한, 서버는, 기기에 의해서 설정된 TCP 접속을 통하여 기기로부터 단말에 비밀 정보를 전송할 때는, 기기로부터 암호화된 비밀 정보를 수신하여, 그 정보를 암호 통신부로써 복호화하고, 복호화된 정보를 암호 통신부로써 암호화하여 그 암호화된 정보를 상기 단말에 송신한다.
제5통신 시스템에 의하면, 단말과 기기 간에 비밀 통신이 가능하고, 또한 각각의 기기에는 단말로부터 접속 수신지를 검증하기 위한 서버 증명서가 필요하지 않고, 서버에 1 종류만이 필요하다.
본 발명의 제6통신 시스템에 의하면, 제1통신 시스템에 있어서 서버 등이 다음과 같이 동작한다.
서버는, 서버 증명서를 저장하고 또한 통신을 암호화하고 복호화하는 암호 통신부를 구비하고 있다. 단말은, 서버 증명서를 검증하는 검증부와, 통신을 암호화하고 복호화하는 암호 통신부를 구비하고 있다. 기기는, 서버 증명서를 검증하는 검증부와, 통신을 암호화하고 복호화하는 암호 통신부를 구비하고 있다. 서버는, 단말과 기기의 사이에 비밀 정보를 전송할 때, 단말과 기기에 각각 서버 증명서를 미리 송신한다. 단말은, 서버 증명서를 검증한 후, 증명서가 확실하면, 자체의 암호 통신부로써 비밀 정보를 암호화하여 서버와의 비밀 정보의 송신 및 수신을 실행한다. 기기는, 서버 증명서를 검증한 후, 증명서가 확실하면, 자체의 암호 통신부로써 비밀 정보를 암호화하여 기기에 의해서 설정된 TCP 접속을 통하여 서버와의 비밀 정보의 송신 및 수신을 실행한다. 서버는, 기기에 의해서 설정된 TCP 접속을 통해서 단말로부터 기기에 비밀 정보를 전송할 때, 단말로부터 암호화된 비밀 정보를 수신하여, 그 수신한 정보를 자체의 암호 통신부로써 복호화하고, 복호화된 정보를 자체의 암호 통신부로써 암호화하여 암호화된 정보를 기기에 송신한다. 또한, 서버는, 기기에 의해서 설정된 TCP 접속을 통하여 기기로부터 단말에 비밀 정보를 전송할 때는, 기기로부터 암호화된 비밀 정보를 수신하여, 그 수신한 정보를 자체의 암호 통신부로써 복호화하고, 복호화된 정보를 암호 통신부로써 암호화하여 그 암호화된 정보를 상기 단말에 송신한다.
제6통신 시스템에 의하면, 단말과 기기와의 사이에 비밀 통신이 가능하고, 또한 각각의 기기에는 단말로부터 접속 수신지를 검증하기 위한 서버 증명서가 필요하지 않고, 서버에 1 종류만이 필요하다.
본 발명의 제7통신 시스템은, 인터넷에 접속된 적어도 하나의 기기와, 인터넷에 접속 가능한 적어도 하나의 단말과의 사이의 통신을, 인터넷에 접속된 서버를 통하여 전송하는 통신 시스템이다. 이 통신 시스템에 있어서, 서버 등은 이하와 같이 동작한다.
서버는 복수의 기기에 대하여, 각각의 기기의 최종 액세스 시각을 저장하는 저장부를 구비하고 있다. 기기는, 서버에 제1 및 제2통지 패킷을 주기적으로 송신하고, 제1통지 패킷의 송신 주기는 제2통지 패킷의 송신 주기보다 길다. 서버는, 기기로부터 제1 및 제2통지 패킷을 수신하고, 기기로부터 제1통지 패킷을 수신했을 때에 최종 액세스 시각을 수신 시각으로 갱신하지만, 기기로부터 제2통지 패킷을 수신했을 때에는 최종 액세스 시각을 갱신하지 않는다. 서버는, 단말로부터, 기기에의 전송 요구가 있는 경우에, 기기의 최종 액세스 시각과 현재 시각과의 차이가 소정의 기간을 초과하면, 접속 요구를 거부한다. 그 차이가 소정의 기간 이내이면, 서버는 제1 및 제2통지 패킷에 대한 응답으로서 접속 요구 패킷을 상기 기기에 송신한다. 기기는, 서버로부터 접속 요구 패킷을 수신한 경우, 서버에 TCP 접속 요구를 송신한다. 서버는, 접속 요구 패킷에 응답하여 기기로부터 서버에 송신된 TCP 접속 요구를 수락하고, 이에 따라서 TCP 접속을 설정한다. 서버는, TCP 접속 설정 후, 그 TCP 접속을 통하여 단말과 기기 간의 통신을 전송한다.
제7통신 시스템에 의하면, 단말로부터 서버에 접속을 요구할 때에, 기기가 동작 개시하여 통신할 준비가 되어 있는 것을, 즉시 확인할 수 있고, 이에 따라서 통신 불가능한 경우에 단말에 대한 거부를 신속하게 응답할 수 있다. 또한 기기의 IP 어드레스가 ISP에 의해서 다이내믹하게 할당되고, 따라서 기기의 전원 중단 등에 의해서, 서버에 등록된 기기의 IP 어드레스가 다른 기기에 이미 할당된 경우에도, 다른 기기에의 잘못된 접속 요구를 회피할 수 있다. 또한, 본 발명에 의하면, 통지 패킷을 제1 및 제2통지 패킷으로 구별하고, 최종 액세스 시각의 갱신을, 제1통지 패킷을 수신할 때만으로 한정한다. 따라서, NAT 라우터가 접속 요구 패킷을 통지 패킷에 대한 응답인 것으로 인식하는 응답 시간이 더 짧아지므로, 통지 패킷의 송신 빈도를 증가시킬 필요가 있는 경우에도, 서버에 있어서 부하가 높은 최종 액세스 시각의 갱신 빈도를 증가시킬 필요가 없다.
상기의 통신 시스템에 있어서의 서버 및 기기의 기능은, 컴퓨터 등 프로그램 가능한 장치로 소정의 프로그램을 실행함으로써 실현할 수 있다. 이러한 프로그램은 컴퓨터로써 판독 가능한 기록매체로서 제공될 수도 있다.
본 발명은, 여기서 설명한 바와 같이, 인터넷상의 기기로부터 프라이빗 IP 어드레스를 갖는 LAN 내의 기기와, 자유롭게 통신할 수 있는 방법을 제공하고, 또한 사용자가 라우터에 미리 복잡한 설정을 할 필요가 없다. 또한, 본 발명은, 인터넷측 어드레스가 라우터에 다이내믹하게 할당되어 있는 경우에도 통신 수신지를 용이하게 지정할 수 있고, 또한 NAT 라우터가 다단(多段)인 경우에도, 동작할 수 있는 방법을 제공한다. 이 때, UDP 패킷에 의한 서버에 대한 낮은 부하와, TCP 패킷에 의한 단말과 기기 간의 통신의 고신뢰성을 동시에 실현할 수 있다.
스태틱 NAT를 실행하지 않는 것은, 제3자로부터의 공격에 견딜 수 있고, 보안성이 높고, 또한 서버의 통신 부하의 조정이 용이하며, 통상의 웹 브라우저와 HTTP 통신을 구비한 단말을 이용하여 광범위하게 다양하고 사용하기 쉬운 통신 시스템을 낮은 비용으로 실현할 수 있고, 많은 기타의 탁월한 효과를 얻을 수 있다.
도 1은 본 발명의 제1실시형태에 있어서의 통신 시퀀스를 나타내는 도면.
도 2는 본 발명의 통신 시스템에 있어서의 네트워크 구성을 나타내는 도면.
도 3A는 본 발명의 통신 시스템에 있어서의 LAN상의 통지 UDP 패킷의 내용을 나타내는 도면.
도 3B는 본 발명의 통신 시스템에 있어서의 WAN상의 통지 UDP 패킷의 내용을 나타내는 도면.
도 3C는 본 발명의 통신 시스템에 있어서의 WAN상의 접속 요구 UDP 패킷의 내용을 나타내는 도면.
도 3D는 본 발명의 통신 시스템에 있어서의 LAN상의 접속 요구 UDP 패킷의 내용을 나타내는 도면.
도 4는 본 발명의 통신 시스템에 있어서의 서버 내에 등록된, 기기 ID, SA와 DA 등 어드레스, 최종 액세스 시각을 포함하는 엔트리를 나타내는 도면.
도 5는 본 발명의 제2실시형태에 있어서의 통신 시퀀스를 나타내는 도면.
도 6은 본 발명의 제2실시형태의 통신 시퀀스에 있어서의 기기의 구성을 나타내는 도면.
도 7은 본 발명의 제3실시형태에 있어서의 통신 시퀀스를 나타내는 도면.
도 8A는 종래 기술의 NAT 기능을 구비한 라우터의 통신 시퀀스를 나타내는 도면.
도 8B는 NAT 테이블을 나타내는 도면.
도 9A는 종래 기술의 NAPT 기능을 구비한 라우터의 통신 시퀀스를 나타내는 도면.
도 9B는 NAPT 테이블을 나타내는 도면.
이하, 첨부 도면을 참조하여, 본 발명의 통신 시스템의 바람직한 실시형태를 상세하게 설명한다.
(제1실시형태)
도 1은 본 발명의 제1실시형태의 통신 시스템의 통신 시퀀스를 설명하는 도면이다. 도 2는 본 발명의 통신 시스템의 네트워크 접속 도면이다. 본 발명의 통신 시스템은, 근거리 통신망(LAN)(106)상의 기기와 인터넷(105)상의 기기 간의 통신을 실현하며, LAN(lO6)에 접속된 기기(101)와, 인터넷(105)상에 접속된 서버(104)와, LAN(lO6)과 인터넷을 접속하는 라우터(103)를 포함하고 있다. 또한, 인터넷(105)에는 통신 단말(102)도 접속되어 있다.
라우터(103)는 NAPT 기능을 구비하고 있다. 기기(101)의 IP 어드레스는 프라이빗 IP 어드레스 "192.168.1.2"이고, 서버(104)의 IP 어드레스는 글로벌 IP 어드레스 "4.17.168.6"인 것으로 한다. 라우터(103)의 인터넷(105)측 어드레스는 인터 넷 서비스 제공자로부터 DHCP 또는 PPP 등의 프로토콜에 의해서 할당되고, 다이내믹하게 변화되며, 이 시점에서는 라우터(103)의 인터넷측 어드레스는 글로벌 IP 어드레스 "202.224.159.142"인 것으로 한다. 설명의 편의상, 라우터(103)의 인터넷(105)측 어드레스는 1개만 있는 것으로 한다. 또한 본 실시형태에 있어서, IP 어드레스는 IP ver.4.에 따르는 것으로 한다.
도 1을 참조하여, 본 실시형태의 통신 시퀀스를 설명한다.
기기(101)는, 우선, 서버(104)에 최대 액세스 확인 주기 정보 요구(107)를 송신한다. 서버는 이것에 대한 응답으로서, 최대 액세스 확인 주기 정보 통지(108)를 송신한다. 이러한 통신(107 및 108)은 UDP 또는 TCP의 어느 하나에 의해서 실행되어도 좋다. 이러한 통신은 LAN(lO6)측에 접속된 기기(101)로부터 개시되므로, NAPT 기능을 구비한 라우터(103)를 통하여 지장 없이 통신할 수 있다. 여기서, 최대 액세스 확인 주기는, 기기(101)로부터 서버(104)에 송신되는 통지 UDP 패킷(이후에 설명)의 송신 시간 간격의 최대치를 나타내고, 그 값은, 예로서, 5분이다.
기기(101)는 통지 UDP 패킷(109)을 주기적으로 송신한다. 이 송신 주기는 이전에 취득한 최대 액세스 확인 주기의 값(예로서, 5분)보다 더 짧다. 통지 UDP 패킷(109)은 기기(101)에 개별적으로 부여된 기기 식별자인 "기기 ID"를 포함한다. 통지 UDP 패킷(109)은 라우터(103)에 의해서, 왕로의 NAPT 변환이 실행된 후 인터넷(105)에 송출되어, 서버(104)에서 수신된다.
도 3A 및 3B는 변환 전후의 통지 UDP 패킷의 내용을 나타낸다. 통지 UDP 패킷의 송신 주기는, 라우터(103)가 UDP 패킷의 NAPT 테이블을 시한 만료(타임 아웃) 에 의해서 파기하는 시간보다도 짧게 설정한다. 그 결과, 라우터(103)에는, 도 9B에 나타내는 바와 같은 NAPT 테이블이 시한 만료 없이 계속적으로 저장된다.
도 1로 돌아가서, 서버(104)는, 통지 UDP 패킷(109)을 수신하여, 헤더 내의 각각의 어드레스 SA, DA, SP, DP와 기기 ID를 추출하고, 도 4에 나타내는 바와 같이, 이러한 정보를 기기(기기 ID="1234")(101)에 대응하는 엔트리의 세트로서 서버 내에 등록하여 저장한다(단계 Sl19). 또한, 단계 Sl19에서는, 최종 액세스 시각을 엔트리에 부가하고, 서버(104)가 통지 UDP 패킷(109)을 수신한 시각을 기록한다. 이후, 서버(104)는, 통지 UDP 패킷(109)을 수신할 때마다 단계 S120에 나타내는 바와 같이 기기에 대응하는 엔트리의 최종 액세스 시각을 갱신한다. 또한, 이 때, 통지 UDP 패킷(109)의 헤더 내의 SA, SP의 어드레스가 이미 변경되어 있는 경우는, 엔트리 내의 그것들의 어드레스의 값도 갱신한다. 따라서, 라우터(103)의 인터넷(WAN)(105)측 IP 어드레스가 다이내믹하게 할당되는 경우, 최신의 어드레스가 엔트리에 저장된다. 상기 시퀀스를 실행함으로써, 통신 준비가 완료된다.
통신 준비가 이와 같이 완료되어 있지만, 단말(102)로부터 기기(101)에 통신을 개시하고 싶은 경우, 단말(102)은 기기(101)의 기기 ID를 파라미터로서 지정하여, 서버(104)에 기기 접속 요구(110)를 송신한다. 여기서, 기기 ID는 단말(102)이 미리 인식하고 있는 것으로 한다. 서버(104)는, 기기 접속 요구(110)를 수신하면, 단말(102)에 의해서 지정된 기기 ID를 검색 키로서 이용하여, 도 4에 나타내는 테이블로부터 서버 내에 등록된 기기 ID를 검색하고, 기기(101)가 등록한 대응 엔트리를 취득한다(단계 S121).
이어서, 서버(104)는 엔트리 내의 최종 액세스 시각을 확인하여, 최종 액세스 시각과 현재 시각과의 차이가 최대 액세스 확인 주기를 초과하는 경우, 기기 접속 요구(110)를 거부한다. 최대 액세스 확인 주기 이하인 경우는, 단계 S122로 진행하여 기기(101)에 접속 요구 UDP 패킷(111)을 송신한다.
이와 같이, 최종 액세스 시각을 확인함으로써, 기기(101)가 정상적으로 동작하는 것을 확인할 수 있고, 또한 통신이 현재까지 정상인가 아닌가를 체크할 수 있으므로, 기기 접속 요구(110)의 수락 또는 거부를 즉시 판정할 수 있다. 또한, 라우터(103)의 인터넷(WAN)(105)측 IP 어드레스는 ISP에 의해서 다이내믹하게 할당되어 있으므로, 기기(101)의 전원 차단후 어느 정도의 시간이 경과하면, 서버(104)에 등록된 기기(101)의 IP 어드레스가 다른 기기에 할당될 수도 있지만, 이러한 경우에도 다른 기기에의 잘못된 접속 요구를 방지할 수 있다.
이어서, 서버(104)는, 고유한 세션 식별자를 생성하여 서버 내에 저장한다(단계 S122). 또한, 서버(104)는 기기(101)에 대응하는 엔트리로부터 SA, DA, SP, DP의 각각의 어드레스를 취득하고, 이것들을 이용하여 세션 식별자가 페이로드에 포함된 접속 요구 UDP 패킷(111)을 송신한다. 여기서, 접속 요구 UDP 패킷(111)은 통지 UDP 패킷(109)에 대한 응답으로서 구성되어 있다. 도 3C는 인터넷(WAN)(105)에 송출된 접속 요구 UDP 패킷의 내용을 나타낸다. 도 3C에 나타내는 패킷의 어드레스와 포트의 값은, 각각 도 3B에 나타내는 패킷에서의 어드레스와 포트의, 발신지와 수신지의 값을 교환한 값이다. 따라서, 접속 요구 UDP 패킷(111)은 통지 UDP 패킷(109)의 응답 패킷인 것을 알 수 있다. 접속 요구 UDP 패킷(111)은, 라우터(103)에 있어서 귀로(歸路)의 NAPT 변환에 의해서, 도 3C에 나타내는 구성으로부터 도 3D에 나타내는 구성으로 변환되어서, 기기(101)에 전송된다.
기기(101)는, 접속 요구 UDP 패킷(111)을 수신한 경우, 서버(104)에 TCP 접속 요구(112)를 송신한다. TCP 접속 요구(112)에 관한 상세한 설명은 생략하지만, syn, ack/syn, ack 패킷에 의해서 접속을 설정하는 통상의 TCP 접속 설정 절차로써 실행할 수 있다. TCP 접속 요구(112)는 LAN측으로부터 WAN측에 대하여 필요하므로, NAPT 기능을 구비한 라우터(103)를 통하여 TCP 접속을 지장 없이 설정할 수 있다.
이러한 방법으로, 서버(104)와 기기(101) 간에 TCP 접속이 설정되지만, UDP 패킷은 비연결형(connectionless)이므로, 이 상태에서는 서버(104)에 있어서, TCP 접속이 접속 요구 UDP 패킷(111)에 응답하여 설정된 것인가 아닌가를 판정할 수 없다. 따라서, 이하에 설명하는 처리 순서가 실행된다.
우선, 기기(101)는 자체의 TCP 접속을 통하여, 접속 요구 UDP 패킷(111)에 의해서 통지된 세션 식별자를, 세션 식별자 통지(113)에 의해서 서버에 반송한다. 서버(104)는, 세션 식별자를 수신하면, 단계 S123에서 세션 식별자를 대조(對照)한다. 대조 결과, 이 세션 식별자가 기기 접속 요구(110)에 의해서 생성된 것이 검증되면, 서버(104)는 접속 요구(110)에 응답하여 단말(102)과 기기(101) 간의 통신의 전송에 이 TCP 접속을 사용할 것을 결정한다.
세션 식별자 대신에, 기기 ID를 이용하여, TCP 접속과 접속 요구 UDP 패킷을 대응시킬 수 있지만, 이 경우에는 서버(104)와 기기(101) 간에 복수의 TCP 접속을 동시에 설정할 수 없는 문제가 있다. 본 실시형태에 의하면, 서버(104)와 기기(101)의 사이에 복수의 TCP 접속을 설정할 수 있고, 각각의 TCP 접속을 통한 통신 내용을 개별적인 세션 식별자로써 관리함으로써, 개별적인 TCP 접속을 통하여 복수의 통신 내용에 대한 무질서한 혼란 없이, 일관성을 유지하면서 통신을 실행할 수 있고, 각각의 세션 식별자에 대하여 병렬로 단말(102)로부터 기기(101)에 복수의 통신이 가능하다.
이 처리 순서에 있어서, 서버(104)와 기기(101) 간에 TCP 접속이 설정되면, 서버(104)는 그 TCP 접속을 통하여 단말(102)과 기기(101)와의 사이의 통신의 전송을 개시한다. 즉, 서버(104)는 단말(102)로부터의 통신(114)을 통신(115)으로서 기기(101)에 전송하고, 기기(101)로부터의 통신(116)을 통신(117)으로서 단말(102)에 전송한다. 최종적으로, 통신이 완료되면, 서버(104) 또는 기기(101)는, TCP 접속 차단(118)을 실행하여, 통상의 TCP 접속이 차단되고, 일련의 시퀀스가 완료된다.
서버(104)에 의한 통신의 전송은, TCP 접속이 유지되어 있는 한, 몇 번이라도 원하는 대로 반복할 수 있어서, 단말(102)과 기기(101) 간에 일련의 통신을 실행할 수 있다. 도 1은 단말(102)로부터의 통신에 대하여 기기(101)가 응답하는 모드(mode)를 나타내고 있지만, 이것에 한정되지 않으며, TCP 접속이 유지되어 있는 동안, 어떠한 방법의, 어떠한 타입의 프로토콜의 통신의 전송이라도 실행할 수 있다.
이상 설명한 바와 같이, 본 실시형태에 의하면, 통지 UDP 패킷(109)에 대한 응답으로서 접속 요구 UDP 패킷(111)을 전송함으로써, 인터넷상의 단말(102)로부터 프라이빗 IP 어드레스를 갖는 LAN 내의 기기(101)에 대하여, 희망하는 타이밍에 자유롭게 통신을 개시할 수 있다. 따라서, 예로서, 인터넷에 단말로서 접속된 휴대전화 또는 PDA를 이용하고, 또한 LAN에 기기로서 접속된, 비디오, 텔레비전, 공기조화기, 냉장고 등의 가전기기를 이용함으로써, 집에 있는 가전기기를 집의 외부로부터 자유롭게 조작할 수 있다.
또한, 본 실시형태에 의하면, 라우터(103)는 통상의 NAPT 동작만을 필요로 하고, 스태틱 NAT 또는 스태틱 NAPT의 설정은 필요하지 않다. 따라서, 사용자는 라우터에 대하여 사전에 복잡한 설정을 할 필요가 없다.
또한, 본 실시형태에 의하면, 라우터(103)에 스태틱 NAT를 설정하지 않아서, WAN측으로부터 기기(101)에 도달 가능한 패킷이, 기기(101)가 통지 UDP 패킷을 송신하는 기간 동안에 서버(104)로부터 송신되는 패킷에 한정된다. 따라서, 제3자로부터의 방해가 방지되고, 보안성이 강화된다.
또한, 본 실시형태에 의하면, 통지 UDP 패킷(109)이 LAN으로부터 인터넷에 주기적으로 송신된다. 결과적으로, 이 패킷이 라우터(103)에 대하여, 소위 킵얼라이브(keep alive) 패킷으로서 작용함에 따라서, 라우터(103)의 WAN측 접속의 PPP 또는 DHCP가 시한 만료로 인하여 ISP로부터 차단되는 것을 방지하여, 인터넷을 통하여 항상 통신 가능한 상태로 된다.
또한, 본 실시형태에 의하면, 서버(104)로부터의 최대 액세스 확인 주기 정보 통지(108)에 의해서 통지 UDP 패킷(109)의 송신 주기의 기간을 변경할 수 있고, 따라서, 서버에서의 통지 UDP 패킷(109)의 수신 부하와, 통신 불가능한 것을 검출할 때까지의 시간과의 절충(trade-off)을 자유롭게 조정하는 것이 가능하다.
삭제
또한, 본 실시형태에 의하면, 라우터(103)의 WAN측 IP 어드레스가 다이내믹하게 할당되어 있어도, 최신의 WAN측 IP 어드레스가 통지 UDP 패킷(109)에 의해서 주기적으로 서버(104)에 등록되므로, 단말(102)로부터 기기 ID를 지정하는 것만으로, 기기(101)를 용이하게 지정하여 통신을 개시할 수 있다.
또한, 본 실시형태에 있어서, 부하가 낮은 UDP 통신으로써 통신을 준비하고, 데이터 손실이 적고 신뢰성이 높은 TCP 통신으로써 단말(102)과 기기(101) 간에 통신을 실행하는 것이 바람직하다. 이에 따라서, 서버(104)의 부하가 낮아지고, 단말(102)과 기기(101) 간의 통신의 신뢰성이 향상된다. 통신 준비 단계에서의 통지 UDP 패킷(109)은, 라우터(103)의 NAPT 테이블의 시한 만료 이하의 간격으로 송출되어야 하고, 또한 송신 빈도가 높으므로, UDP 패킷을 이용함으로써, 부하 삭감 효과가 크고, 또한 주기적으로 송신되므로, 어느 정도의 패킷 손실이 있어도 다음 번의 송신에서 복구될 수 있으므로 영향이 적다. 따라서, UDP 패킷을 이용함으로써 특히 이점이 있다.
본 실시형태를 NAPT에 관하여 설명했지만, 라우터(103)가 NAT 방식으로 동작하는 경우에도, 기기(101)와 서버(104)의 동작에 어떠한 변경도 필요로 하지 않고, 도 1의 시퀀스가 정상적으로 동작될 수 있다. 또한, 본 실시형태에 있어서, 사용자가, NAT 기능을 구비한 라우터를 이용하지 않고, 기기(101)를 인터넷(105)에 직접 접속하는 경우에도, 기기(101)와 서버(104)의 동작에 어떠한 변경도 필요로 하지 않고, 도 1의 시퀀스가 가능하다. 또한, 본 실시형태에 있어서, 사용자가, 프라이빗 IP 어드레스를 사용하는 ISP에 가입하고, 또한, 사용자의 라우터와 ISP의 라우터를 포함하는 다단의 NAT 라우터를 통하여 인터넷에 접속되어 있는 경우에도, 그 각각의 단계의 라우터에서 통상의 NAT 또는 NAPT 동작이 실행되므로, 또한 기기(101)와 서버(104)의 동작에 어떠한 변경도 필요로 하지 않고, 도 1의 시퀀스가 정상적으로 동작될 수 있다.
그런데, 어드레스 등록은 통지 UDP 패킷에 필수적인 기능이 아니고, 기타 수단에 의해서 어드레스를 등록해도 본 발명의 효과를 얻을 수 있지만, 2 종류의 패킷, 즉, 주기적인 송신이 필요한, 글로벌 IP 어드레스를 등록하는 패킷과, NAT 테이블을 유지하는 패킷을 이용함으로써 효율이 매우 좋으므로, 특히 바람직한 구성이다.
세션 식별자는, TCP 접속이 TCP 접속 요구(112)에 대하여 고유하게 대응하는 범위에서 고유하면 좋고, 예로서 서버 내에서 고유하지 않더라도, 기기 ID와 조합된 경우에 고유하면 충분하다.
또한, 본 실시형태에서는, IP ver. 4의 어드레스를 예로서 설명했지만, IP ver. 6의 어드레스를 이용하는 경우에도, LAN으로부터 인터넷에의 패킷과 그 패킷에 대한 응답은 통과시키지만, 인터넷으로부터 LAN에의 패킷은 통과시키지 않는 라우터 및 게이트웨이(gateway)를 이용하는 한, 본 발명은 동일한 효과를 갖는다.
또한, 본 실시형태에서는, 단말(102)은 인터넷에 직접 접속되도록 도시되어 있다. 그러나, 단말(102)이 LAN에 접속되어 있어도, 단말(102)로부터 통신을 개시하는 한, 서버(104)에 대한 통신에 아무런 문제가 없고, 본 발명의 효과는 동일하다. 또한, 단말(102)이 기기(101)와 동일한 기능을 구비하면, 단말(102)과 기기(101) 모두가 LAN 내에 있어도, 서로 통신을 개시할 수 있고, 완전히 대칭적인 통신 시스템을 구성할 수 있다.
또한, 본 실시형태에서는, 기기(101)로부터의 접속 수신지는 서버(104)뿐이고, 서버(104)가 단말(102)과 기기(101) 간의 통신을 전송하지만, 접속 요구 UDP 패킷(111)으로써 단말(102)의 어드레스를 통지하면, 기기(101)가 단말(102)에 직접 TCP 접속 요구(112)를 송신할 수 있다. 이러한 구성으로써, 단말(102)과 기기(101)가 직접 통신을 실행할 수 있고, 또한 서버(104)의 전송 부하가 감소되며, 기타 효과도 있다.
또한, 본 실시형태에 있어서, 서버는 단말과 기기의 통신만을 전송하지만, 서버 그 자체가 TCP 접속을 이용하여 기기와 통신을 실행할 수도 있다. 이러한 구성으로써, 서버는 단말에 대하여 기기에의 통신 기능을 제공하고, 또한 기기의 설정 및 감시와, 소프트웨어의 갱신 등 기기에 대한 서비스를 제공한다.
또한, 본 실시형태에 있어서, 기기(101) 및 서버(104)를 컴퓨터로써 구성할 수 있다. 이 경우에, 기기(101)와 서버(104)에서 각각 도 1의 시퀀스를 실행하는 컴퓨터 프로그램을 작성할 수 있고, 또한 그것들을 기록매체에 저장하여 배포할 수 있다. 따라서, 범용 컴퓨터를 이용하여 집의 외부로부터의 통신을 실현할 수 있다.
(제2실시형태)
본 발명의 통신 시스템의 다른 실시형태를 설명한다.
본 실시형태의 네트워크 접속은 도 2에 나타낸 것과 동일하다. 어드레스 부여도 제1실시형태와 동일하고, 통신 시퀀스만이 상이하다. 본 실시형태에 있어서, 단말은 웹 브라우저를 구비한 PC 또는 휴대전화이고, 이것을 이용하여, LAN에 접속된 기기(101)와 HTTP에 의한 통신을 실행하여, 조작하거나 콘텐츠를 취득하려고 하는 것이다.
도 5를 참조하여, 본 실시형태의 통신 시퀀스를 설명한다.
우선, 기기(101)는, 서버(104)에 최대 액세스 확인 주기 정보 요구(407)를 송신한다. 서버(104)는, 요구에 대한 응답으로서, 최대 액세스 확인 주기 정보 통지(408)를 송신하여 최대 액세스 확인 주기의 값(예로서 5분)을 통지한다. 이러한 통신은 UDP 또는 TCP의 어느 하나에 의해서 실행될 수도 있고, 또한 LAN(lO6)측에 접속된 기기(101)로부터 개시되므로, NAPT 기능을 구비한 라우터(103)를 통하여 지장 없이 통신할 수 있다.
이어서, 기기(101)는 2 종류의 통지 UDP 패킷 A 및 B(410 및 409)를 각각 주기적으로 송신한다. 2 종류의 패킷 A와 B의 차이는, 통지 UDP 패킷 A가 최종 액세스 시각을 갱신하는 기능을 갖고 있는 반면에, 통지 UDP 패킷 B는 최종 액세스 시각을 갱신하는 기능을 갖고 있지 않는 것이다. 그 이외의 점에 대해서는 동일하다.
기기(101)로부터 통지 UDP 패킷 A(410)를 송신하는 주기는 이전에 취득한 최대 액세스 확인 주기의 값(예로서, 5분)의 간격보다 더 짧다. 반면에, 각각의 통지 UDP 패킷 A 또는 B를 송신하는 주기는 라우터(103)가 UDP 패킷의 NAPT 테이블을 시한 만료에 의해서 파기하는 시간보다도 짧게 설정한다.
제1실시형태에 있어서는 통지 UDP 패킷은 1 종류만 있고, 그 송신 주기는 상기 조건 중 더 짧은 주기에 따라서 설정되어야 한다. 따라서, 라우터(103)의 NAPT 테이블의 파기 시간이 짧은(예로서, 30초) 경우, 통지 UDP 패킷이 30초 이하의 주기의 높은 빈도로 송신되고, 최종 액세스 시각이, 송신할 때마다 갱신되며, 또한 라우터(103)의 WAN측의 어드레스 변경이 없는 경우에도 엔트리가 갱신되고, 서버 부하가 증대한다. 그러나, 본 실시형태에서는, 최종 액세스 시각의 갱신 주기를, 라우터(103)의 NAPT 테이블의 파기 시간에 관계없이 독립적으로 설정할 수 있어서, 부하를 감소시킬 수 있다.
통지 UDP 패킷 A 및 B는 기기(101)에 개별적으로 부여된 기기 식별자인 기기 ID를 포함한다. 통지 UDP 패킷 A 및 B는, 라우터(103)에 의해서 왕로의 NAPT 변환이 실행된 후 인터넷에 송출되어서, 서버(104)에서 수신된다. NAPT 변환은 제1실시형태와 동일하다. 또한, 통지 UDP 패킷에 의해서 라우터(103) 내의 NAPT 테이블이 시한 만료되지 않고 계속적으로 저장되는 것도 동일하고, 서버(104) 내의 엔트리에, 기기(101)에 패킷을 송신하기 위한 어드레스가 등록되고(단계 S421), 엔트리 내의 최신 액세스 시각이 갱신되는 것(단계 S422)도 제1실시형태와 또한 동일하다. 여기까지의 시퀀스의 실행에 의해서, 통신 준비가 완료된다.
통신 준비가 완료되어 있는 상황에서, 단말(102)로부터 기기(101)에 통신을 개시하는 경우, 단말(102)은 서버(104)에 대하여, "GET connect.cgi?ID=1234" 등, 기기(101)의 기기 ID를 파라미터로서 지정하여, HTTP 요구로서 기기 접속 요구(411)를 송신한다. 여기서, 기기 ID "1234"는 단말(102)이 미리 인식하고 있는 것으로 한다. 서버(104)는, 기기 접속 요구(411)를 수신하면, 단계 S423에서, 지정된 기기 ID를 키(key)로 하여, 서버 내에 등록된 기기 ID를 검색하여, 기기(101)가 등록한 대응 엔트리를 취득한다.
결과적으로, 서버(104)는 엔트리 내의 최종 액세스 시각(도 4 참조)을 참조하여, 그 최종 액세스 시각과 현재 시각과의 차이가 최대 액세스 확인 주기를 초과하는 경우는 기기 접속 요구(411)를 거부한다. 그 차이가 최대 액세스 확인 주기 이내인 경우는, 서버(104)의 제어는 단계 S424로 진행되어서 기기(101)에 접속 요구 UDP 패킷(412)을 송신한다. 상기 최종 액세스 시각을 체크함으로써, 제1실시형태와 동일하게, 오류로 인하여 다른 기기에 잘못된 접속 요구를 실행하는 것을 효과적으로 회피할 수 있다.
단계 S424에서, 서버(104)는 고유한 세션 식별자를 생성하여 서버(104) 내에 저장한다. 또한, 서버(104)는 기기(101)에 대응하는 엔트리로부터 SA, DA, SP, DP의 각 어드레스를 취득하여, 이것들을 이용해서 세션 식별자를 페이로드에 포함하는 접속 요구 UDP 패킷(412)을 송신한다. 여기서, 접속 요구 UDP 패킷(412)은 통지 UDP 패킷 A(410) 또는 통지 UDP 패킷 B(409)에 대한 응답으로서 구성되어 있으므로, 라우터(103)에 의해서, 귀로의 NAPT 변환이 실행되어서, 접속 요구 UDP 패킷(412)이 기기(101)에 전송된다.
기기(101)는, 접속 요구 UDP 패킷(412)을 수신하면, 서버(104)에 TCP 접속 요구(413)를 송신한다. TCP 접속 요구(413)에 관한 상세한 설명은 생략하지만, 이 것이, syn, ack/syn, ack 패킷에 의해서 접속을 설정하는 통상의 TCP 접속 설정 절차이다. TCP 접속 요구(413)는 LAN측으로부터 WAN측에 대하여 필요하므로, NAPT 기능을 구비한 라우터(103)를 통하여 TCP 접속을 지장 없이 설정할 수 있다.
이러한 방법으로, 서버(104)와 기기(101) 간에 TCP 접속이 설정된 후, 기기(101)는 이 TCP 접속을 통하여, 접속 요구 UDP 패킷(412)에 의해서 통지된 세션 식별자를, 세션 식별자 통지(414)로써 서버(104)에 반송한다. 서버(104)는, 세션 식별자를 수신하면, 단계 S425에서 세션 식별자를 대조하여, 이 세션 식별자가 기기 접속 요구(411)에 의해 생성된 것이고, 따라서 기기 접속 요구(411)에 대한 TCP 접속이 성공적으로 설정된 것을 검출한다.
이어서, 서버(104)는 HTTP 요구(411)에 대한 응답으로서 HTTP 응답(415)을 단말(102)에 송신한다. 이 HTTP 응답(415)은, 단말(102)에 표시되어야 하는 HTML 콘텐츠를 포함하고 있고, 또한, 이 HTML 콘텐츠에는 세션 식별자 "5678"이, <A HREF = "control.cgi?Session ID = 5678 & Target = deviceFunc. cgi & Param = abcd">링크</A>." 등, 링크나 버튼 등으로서 매입(埋入)되어 있다. 이러한 절차에 의해서, 기기(101)에 대응하는 페이지(화상)가 단말(102)에 표시된다.
이어서, 사용자가, 표시된 페이지에서 링크를 클릭하면, "GET control.cgi? Session ID = 5678 & Target = deviceFunc.cgi & Param = abcd" 등, 세션 식별자를 포함하는 HTTP 요구(416)가 생성되어서 서버(104)에 송신된다. 서버(104)는, HTTP 요구(416)를 수신하면, 지정된 control.cgi를 시동하여, 세션 식별자 "5678"을 대조한다(단계 S426). 대조한 결과, 세션 식별자 "5678"의 TCP 접속이 이미 설정되어 있는 것이 검출되면, 서버(104)의 control.cgi는, HTTP 요구(416)의 내용을, 예로서, "GETdeviceFunc.cgi? Param=abcd"로 변환하여, 이 TCP 접속을 통하여 HTTP 요구 전송(417)으로서 전송한다. 이렇게 하여, 단말(102)은, HTTP 요구를 기기(101)에 송신할 수 있다.
본 발명에서의 단말과 기기 간의 통신 전송에 있어서, 상기에서 설명한 바와 같은 변환 방식을 이용함으로써, 단말은 종래의 웹 브라우저를 전혀 변경하지 않고 동작할 수 있고, 또한 기기는 기기상의 "deviceFunc.cgi" 등의 필요한 cgi와 "param=abcd" 등의 필요한 파라미터를 지정하여 시동시키는 HTML 문서를 자유롭게 기술할 수 있는 등, 우수한 효과를 얻을 수 있다.
기기(101)는, HTTP 요구 전송(417)을 수신하면, 응답으로서 HTTP 응답(418)을 회신한다. 이하, 이 동작에 대하여 도 6을 참조하여 더욱 상세하게 설명한다.
도 6에 나타내는 바와 같이, 기기(101)는 전송 모듈(501)과 웹 서버 모듈(502)을 구비하고 있다. 전송 모듈(501)은 본 발명의 통신 프로토콜을 이용하여 서버(104)와 통신을 실행하기 위한 모듈이고, 웹 서버 모듈(502)은 통상의 웹 서버이다. 전송 모듈(501)은, 상기한 바와 같이, 접속 요구 UDP 패킷(412)을 수신하여, TCP 접속 요구(413)를 송신하고, 또한 HTTP 요구 전송(417)을 수신한다. 이 때, 전송 모듈(501)의 통신 방향에 주목하면, 모듈(501)은 TCP 접속을 요구하는(413) 한편, HTTP 요구(417)를 수신하므로, 클라이언트로부터 TCP 접속이 요구되고 또한 HTTP 요구를 수신하는 통상의 웹 서버와는 통신의 방향이 상이하다. 본 실시형태에서는, 전송 모듈(501)이 이 방향의 차이를 흡수한다. 즉, 모듈(501) 은, 소켓(socket) 등을 통하여, HTTP 요구(503)를 웹 서버 모듈(502)에 내부적으로 송신하고, HTTP 응답(504)을 모듈(502)로부터 내부적으로 수신한다. 따라서, 통상의 웹 서버를 이용하여, 본 발명의 HTTP 통신 절차를 실현할 수 있다.
도 5를 다시 참조하면, 결과적으로, 서버(104)는, HTTP 응답(418)을 HTTP 응답 전송(419)으로서 단말(102)에 회신한다. HTTP 응답 전송(419)에 포함되는 HTML 콘텐츠에는, 세션 식별자가 링크 또는 버튼으로서 매입되어서, 416 내지 419에서와 같은 동일한 절차를 반복함으로써, 단말(102)이 HTTP에 의해서 기기(101)에 계속적으로 액세스할 수 있게 된다. 기기(101)에서 상기 통신의 HTML 콘텐츠가 생성되고, 단말(102)에서 콘텐츠 표시와 조작이 실행되어서, 단말(102)로부터 기기(101)를 자유롭게 조작하거나, 또는 콘텐츠를 취득할 수 있다.
최종적으로, 통신이 완료되면, 서버(104) 또는 기기(101)는 TCP 접속을 차단한다(420). TCP 접속이 차단되면, 일련의 시퀀스가 종료된다.
이상 설명한 바와 같이, 본 실시형태에 의하면, 제1실시형태와 동일하게, 프라이빗 IP 어드레스를 갖는 LAN 내의 기기(101)에 대하여, 인터넷상의 단말(102)로부터 희망하는 타이밍에 자유롭게 통신을 개시할 수 있다. 따라서, 단말로서 웹 브라우저를 구비한 PC 또는 휴대전화로써, 가정 내의 기기를 자유롭게 조작하거나, 콘텐츠를 취득할 수 있다.
또한, 제1실시형태와 동일하게, 라우터(103)는 통상의 NAPT 동작만을 필요로 하고, 스태틱 NAT 또는 스태틱 NAPT의 설정은 필요하지 않으며, 사용자는 라우터에 대하여 사전에 복잡한 설정을 할 필요가 없다.
또한, 제1실시형태와 동일하게, 제3자로부터의 방해가 방지되고, 보안성이 강화된다.
또한, 제1실시형태와 동일하게, 라우터(103)의 WAN측 접속의 PPP 또는 DHCP가 시한 만료로 인하여 ISP로부터 차단되는 것을 효과적으로 방지하여, 인터넷을 통하여 항상 통신 가능한 상태로 된다.
또한, 제1실시형태와 동일하게, 서버(104)에서의 통지 UDP 패킷 A(410)의 수신 부하와, 통신 불가능한 것을 검출할 때까지의 시간을 절충(trade-off)에 의해서 자유롭게 조정할 수 있다.
또한, 최종 액세스 시각을 갱신하는 기능을 갖는 패킷과 이러한 기능이 없는 패킷의 2 종류의 통지 UDP 패킷을 준비함으로써, 상기의 시간 조정을, 라우터(103)의 NAPT 테이블의 파기 시간과 관계없이 독립적으로 실행할 수 있다.
또한, 제1실시형태와 동일하게, 단말(102)로부터 기기 ID를 지정하는 것만으로 기기(101)를 용이하게 지정하여 통신을 개시할 수 있다.
또한, 제1실시형태와 동일하게, UDP 패킷에 의해서 서버(104)의 부하가 감소되고, TCP 패킷에 의해서 단말(102)과 기기(101) 간의 통신의 신뢰성이 향상될 수 있다.
또한, 본 실시형태에 의하면, 단말(102)로서, 통상의 웹 브라우저를 구비한 단말을 이용하여, 기기(101)에 통상의 웹 서버를 장착함으로써 HTTP의 응답을 실현할 수 있으므로, 범용성이 높고, 사용자가 사용하기에 매우 용이한 통신 시스템을 낮은 비용으로 구성할 수 있다.
본 실시형태를 NAPT에 관하여 설명했지만, 라우터(103)가 NAT 기능으로써 동작하는 경우에도, 기기(101)와 서버(104)의 동작에 어떠한 변경도 필요로 하지 않고, 도 5의 통신 시퀀스를 정상적으로 실현할 수 있다. 또한, 본 실시형태에 있어서, 사용자가, NAT 라우터를 이용하지 않고, 기기(101)를 인터넷(105)에 직접 접속하는 경우에도, 기기(101)와 서버(104)의 동작에 어떠한 변경도 필요로 하지 않고, 도 5의 시퀀스를 실현할 수 있다. 또한, 본 실시형태에 있어서, 사용자가, 프라이빗 IP 어드레스를 사용하는 ISP에 가입하고, 또한, 사용자의 라우터와 ISP의 라우터를 포함하는 다단의 NAT 라우터를 통하여 인터넷에 접속되어 있는 경우, 그 각각의 단계의 라우터에서 통상의 NAT 또는 NAPT 동작이 실행되므로, 또한 기기(101)와 서버(104)의 동작에 어떠한 변경도 필요로 하지 않고, 도 5의 시퀀스를 정상적으로 실현할 수 있다.
그런데, 어드레스 등록은 통지 UDP 패킷에 필수적인 기능이 아니고, 어드레스를 기타 수단에 의해서 등록하면 본 발명의 효과를 얻을 수 있지만, 2 종류의 패킷, 즉, 주기적인 송신이 필요한, 글로벌 IP 어드레스를 등록하는 패킷과, NAT 테이블을 유지하는 패킷을 이용함으로써 효율이 우수하므로, 특히 바람직한 구성이다.
세션 식별자는, TCP 접속이 HTTP 요구(411)에 고유하게 대응하지 않는 한, 상세하게 지정되지 않으며, 예로서 서버 내에서 고유할 필요가 없고, 기기 ID와 조합한 경우에 고유하면 충분하다.
또한, IP 어드레스로서, IP ver. 6의 어드레스를 이용할 수도 있다. 이 경우에, LAN으로부터 인터넷에의 패킷과 이 패킷에 대한 응답은 통과시키지만, 인터넷으로부터 LAN에의 패킷은 통과시키지 않는 라우터 및 게이트웨이를 이용하는 한, 본 발명은 동일한 효과를 갖는다.
본 실시형태에서는, 단말(102)은 인터넷에 직접 접속되어 있지만, 단말(102)이 LAN에 접속되어 있어도, 단말(102)로부터 통신을 개시하는 한, 서버(104)에 대한 통신에 아무런 문제가 없고, 본 발명의 효과는 동일하다. 또한, 단말(102)이 기기(101)와 동일한 기능을 구비하면, 단말(102)과 기기(101) 모두가 LAN 내에 있어도, 서로 통신을 개시할 수 있고, 완전히 대칭적인 통신 시스템을 구성할 수 있다.
또한, 본 실시형태에서는, 기기(101)로부터의 접속 수신지는 서버(104)뿐이고, 서버(104)가 단말(102)과 기기(101) 간의 통신을 전송한다. 그러나, 접속 요구 UDP 패킷(412)으로써 단말(102)의 어드레스를 통지하면, 기기(101)가 단말(102)에 직접 TCP 접속 요구(413)를 송신할 수 있다. 이러한 구성으로써, 단말(102)과 기기(101)가 직접 통신을 실행할 수 있고, 또한 서버(104)의 전송 부하가 감소되며, 기타 효과도 있다.
또한, 본 실시형태에 있어서, 서버는 단말과 기기의 통신만을 전송하지만, 서버 그 자체가 TCP 접속을 이용하여 기기와 통신을 실행할 수도 있다. 이러한 구성으로써, 서버는 단말에 대하여 기기에의 통신 기능을 제공하고, 또한 기기의 설정 및 감시와, 소프트웨어의 갱신 등 기기에 대한 서비스를 제공한다.
또한, 본 실시형태에 있어서, 기기(101) 및 서버(104)를 컴퓨터로써 구성할 수 있다. 이 때, 기기(101)와 서버(104)에 대하여 각각 도 4에 나타낸 시퀀스를 실 행시키는 컴퓨터 프로그램을 작성할 수 있고, 또한 그것들을 기록매체에 저장하여 배포할 수 있다. 따라서, 범용 컴퓨터를 이용하여 집의 외부로부터의 통신을 실현할 수 있다.
(제3실시형태)
본 발명의 통신 시스템의 제3실시형태를 설명한다.
본 실시형태의 네트워크 접속은 도 2에 나타낸 것과 동일하다. 어드레스 부여도 상기의 실시형태와 동일하고, 통신 시퀀스만이 상이하다. 본 실시형태에 있어서, 단말은 웹 브라우저를 구비한 PC 또는 휴대전화이고, 이것을 이용하여, LAN에 접속된 기기(101)와 HTTP에 의한 통신을 실행하여, 조작하거나 콘텐츠를 취득하려고 하는 것이다.
도 7을 참조하여, 본 실시형태의 통신 시퀀스를 설명한다.
본 실시형태의 통신 시퀀스에 있어서, 통지 UDP 패킷에 의한 통신 준비까지의 절차는, 도 5에 나타낸 제2실시형태의 시퀀스와 동일하다. 도 7은 그 이후의 절차를 나타낸다.
단말(102)로부터 기기(101)에 통신을 개시하는 경우, 단말(102)은 서버(104)에, SSL에 의한 TCP 접속 요구(607)를 송신한다. 그 결과, 통상의 SSL 절차에 따라서, 서버 증명서 통지(608)가 서버(104)로부터 단말(102)에 송신되어서, 단계 S624에서 인증된다. 성공적으로 인증되면, 암호화 통신이 가능하게 된다. 이어서, 제2실시형태와 동일한 절차로, 기기 접속 요구(609)로부터 TCP 접속 요구(611)까지의 시퀀스가 실행된다.
제2실시형태와의 제1의 상이한 점은, 기기 접속 요구(609)가 암호화되어 있는 것이다. 따라서, 기기 접속 요구(609)에 포함되는 기기 ID를 은닉(隱匿)할 수 있다. 제2의 상이한 점은 단계 S626에서 난수(亂數)가 생성되어서 서버 내에 저장되고, 또한 접속 요구 UDP 패킷(610)에 의해서 기기에 통지되는 것이다.
결과적으로, 기기(101)가 TCP/SSL 접속 요구(611)를 송신하고, TCP 접속을 통하여 서버(104)에 접속한다. 따라서, 서버 증명서 통지(612)가 통상의 SSL 절차에 따라서 서버(104)로부터 기기(101)에 송신되어서, 인증된다(단계 S627). 성공적으로 인증되면, 암호화 통신이 가능하게 된다.
이와 같이, 서버(104)와 기기(101)와의 사이에 SSL에 의해서 암호화된 TCP 접속이 설정된 후, 절차 613 내지 614의 전송이 실행되고, 단말(102)에 페이지가 표시된다. 이어서, 사용자의 트리거(trigger)에 의해서, 세션 식별자를 사용한, 절차 615 내지 618의 HTTP 통신의 전송과, 절차 619 내지 622의 HTTP 통신의 전송이 실행된다. 이러한 HTTP 전송의 내용은 제2실시형태와 동일하다. 제2실시형태와 상이한 점만을 이하에 설명한다.
본 실시형태와 제2실시형태와의 제1의 상이한 점은, 통신이 암호화되어 있는 것이다. 따라서, 기기 ID, 기기의 고유 정보 및 기타의 가치가 있는 정보를 은닉할 수 있다.
본 실시형태와 제2실시형태와의 제2의 상이한 점은, 세션 식별자 통지(613)에 있어서, 세션 식별자 이외에, 기기 증명서와, 서버로부터 접속 요구 UDP 패킷(610)에 의해서 송신된 난수가 인수(引數; argument)로서 통지되는 점이다. 기기 증명서는 기기(101)의 정당성을 증명하는 것이다. 기기 증명서는 단계 S628에서 인증되고, 기기가 인증된 경우에만 이후의 단계가 실행된다. 본 발명의 방법을 이러한 절차의 기기 증명서의 인증과 조합하는 경우, 기기 증명서의 암호화 송신이 매우 유리하다.
삭제
또한, 단계 S628에서, 세션 식별자 통지(613)의 인수의 난수가, 단계 S626에서의 서버에 저장된 난수와 동일한가 아닌가를 검증하고, 동일한 경우에만, 이후의 단계가 실행된다. 따라서, 접속 요구 UDP 패킷(610)이 정당하게 송신된 것인가 아닌가를 확인할 수 있고, 크래커(cracker)가 접속 요구 UDP 패킷(610)을 위조하는 경우에도 오동작을 방지할 수 있다.
또한, 본 발명은, 통신에 있어서 단일 서버를 경유하도록 구성되어 있다. 따라서, 본 발명을 서버측에 저장된 증명서로써 암호를 설정하는 시스템과 조합한 경우, 기기 및 단말에 개별적으로 증명서를 배치하지 않고, 서버에 증명서를 배치하는 것만으로, 복수의 기기와 복수의 단말을 서로 접속하는 시스템에 있어서 서로를 인증할 수 있다. 그 결과, 서버 증명서의 수를 감소시킬 수 있고, 관리 노력을 절감할 수 있다. 또한, 기기(101)와 서버(104) 간의 TCP 통신의 방향이, TCP 통신을 기기(101)측으로부터 개시하도록 되어 있으므로, 서버(104)측에 단일 서버 증명서만이 필요하고, 이것이 SSL의 적용에 특히 유리하다.
그런데, HTTP 요구와 HTTP 응답의 모든 쌍에서의 통신 내용의 비밀 필요성에 따라서 암호화의 적용 또는 비적용을 변경할 수도 있어서, 암호화에 의한 부하를 최적화할 수 있다. 본 실시형태는 제2실시형태의 효과에 추가하여 이러한 효과를 가지고 있다.
본 발명을 특정 실시형태에 관련하여 설명하였지만, 당업자에게는 많은 기타의 변형, 정정 및 응용이 있을 수 있는 것은 명백하다. 따라서, 본 발명은 여기서 제시된 개시에 한정되지 않으며, 첨부된 청구범위에 의해서만 한정된다.
본 발명의 개시는, 2002년 9월 27일에 출원되고, 여기에 전체적으로 참조로서 특별히 포함된 일본국 특허 출원 제2002-283287호에 포함된 주제에 관련된 것이다.

Claims (27)

  1. 인터넷에 접속된 적어도 하나의 기기와, 인터넷에 접속 가능한 적어도 하나의 단말과의 사이에서 통신을 전송하는, 인터넷에 접속된 서버에 있어서, 상기 서버는
    상기 기기로부터, 비연결형(connectionless) IP 패킷이며 상기 기기에 관한 어드레스에 정보를 포함하고 있는 주기적 통지 패킷을 수신하고,
    상기 수신된 주기적 통지 패킷에 포함되어 있는 상기 정보를 근거로 상기 기기의 어드레스 정보를 저장 또는 갱신하고,
    상기 단말로부터의 상기 기기에 대한 전송 요구가 있는 경우, 상기 기기의 상기 저장된 어드레스 정보를 이용하여, 상기 통지 패킷에 대한 응답으로서 비연결형 IP 패킷인 접속 요구 패킷을 상기 기기에 송신하고,
    상기 접속 요구 패킷에 응답하여 상기 기기로부터 상기 서버에 송신된 TCP 접속 요구를 수락하고,
    TCP 접속 설정 후, 그 TCP 접속을 통하여 상기 단말과 상기 기기 간의 통신을 전송하는 것을 특징으로 하는 서버.
  2. 제1항에 있어서, 상기 서버는
    상기 단말로부터 기기 ID를 포함하는 HTTP 요구에 의해서 상기 기기에 대한 전송 요구를 수신하고,
    상기 단말과 상기 기기 간의 통신의 전송에 대해서는, 상기 기기로부터 확장된 TCP 접속을 통하여 상기 단말로부터의 HTTP 요구를 상기 서버가 전송하고, 또한 상기 기기로부터 상기 TCP 접속을 통하여 수신한 HTTP 응답을 단말에 전송하는 것을 특징으로 하는 서버.
  3. 제1항에 있어서, 상기 서버는
    적어도 하나의 단말로부터 복수의 전송 요구를 수신할 수 있고,
    상기 단말로부터 상기 기기에 복수의 전송 요구가 있는 경우에, 각각의 세션 식별자를 생성하여, 접속 요구 패킷에 의하여 기기에 통지하고,
    상기 접속 요구 패킷에 응답하여 상기 기기로부터 상기 서버에 송신된 TCP 접속 요구를 수락하여 TCP 접속을 설정하고, 설정된 TCP 접속을 통하여 상기 기기로부터 송신되는 세션 식별자를 수신하여, 수신한 세션 식별자를 TCP 접속에 대응시킴으로써, 복수의 TCP 접속을 상기 단말로부터의 복수의 접속 요구에 대하여 대응시키고,
    상기 단말이 세션 식별자를 지정하여 접속을 요구하고, 또한, 그 지정된 세션 식별자에 대응하는 TCP 접속이 이미 설정된 경우에만, 그 설정된 TCP 접속을 통하여 상기 단말로부터의 통신을 전송함으로써, 각각의 세션 식별자에 대하여 병렬로 통신 내용을 전송하는 것을 특징으로 하는 서버.
  4. 제1항에 있어서, 상기 서버는
    복수의 기기에 대하여, 각각의 기기의 최종 액세스 시각을 저장하는 저장부를 구비하고,
    상기 기기로부터 주기적 통지 패킷을 수신하면, 상기 최종 액세스 시각을 그 수신 시각으로 갱신하고,
    상기 단말로부터, 상기 기기에의 전송 요구가 있는 경우에, 상기 기기의 최종 액세스 시각과 현재 시각과의 차이가, 소정의 기간을 초과하면, 그 접속 요구를 거부하고, 또는 그 차이가 소정의 기간 이하이면, 상기 통지 패킷에 대한 응답으로서 접속 요구 패킷을 상기 기기에 송신하는 것을 특징으로 하는 서버.
  5. 제1항에 있어서, 상기 서버는
    복수의 기기에 대하여, 각각의 기기의 최종 액세스 시각을 저장하는 저장부를 구비하고,
    최대 액세스 확인 주기 정보를 상기 기기에 미리 송신하고,
    상기 기기로부터 주기적 통지 패킷을 수신하면, 최종 액세스 시각을 그 통지 패킷의 수신 시각으로 갱신하고,
    상기 단말로부터, 상기 기기에의 전송 요구가 있는 경우에, 상기 기기의 최종 액세스 시각과 현재 시각과의 차이가, 최대 액세스 확인 주기 정보가 나타내는 값을 초과하면, 상기 접속 요구를 거부하고, 그 차이가 최대 액세스 확인 주기 정보가 나타내는 값 이하이면, 상기 통지 패킷에 대한 응답으로서 접속 요구 패킷을 상기 기기에 송신하는 것을 특징으로 하는 서버.
  6. 제1항에 있어서, 상기 서버는
    서버 증명서를 저장하고 또한 통신을 암호화하고 복호화하는 암호 통신부를 구비하고,
    상기 단말과 상기 기기 간에 비밀 정보를 전송할 때, 상기 단말에 서버 증명서를 미리 송신하고,
    상기 기기에 의해서 설정된 TCP 접속을 통하여 상기 단말로부터 상기 기기에 비밀 정보를 전송할 때, 상기 단말로부터 암호화된 비밀 정보를 수신하여, 그 수신한 정보를 상기 암호 통신부로써 복호화하고, 복호화된 정보를 상기 암호 통신부로써 암호화하여 상기 기기에 송신하고,
    상기 기기에 의해서 설정된 TCP 접속을 통하여 상기 기기로부터 상기 단말에 비밀 정보를 전송할 때는, 상기 기기로부터 암호화된 비밀 정보를 수신하여, 그 수신한 정보를 상기 암호 통신부로써 복호화하고, 복호화된 정보를 상기 암호 통신부로써 암호화하여 상기 단말에 송신하는 것을 특징으로 하는 서버.
  7. 제1항에 있어서, 상기 서버는
    서버 증명서를 저장하고 또한 통신을 암호화하고 복호화하는 암호 통신부를 구비하고,
    상기 단말과 상기 기기 간에 비밀 정보를 전송할 때, 상기 단말과 상기 기기에 각각 서버 증명서를 미리 송신하고,
    상기 기기에 의해서 설정된 TCP 접속을 통하여 상기 단말로부터 상기 기기에 비밀 정보를 전송할 때, 상기 단말로부터 암호화된 비밀 정보를 수신하여, 그 수신한 정보를 상기 암호 통신부로써 복호화하고, 복호화된 정보를 상기 암호 통신부로써 암호화하여 그 암호화된 정보를 상기 기기에 송신하고,
    상기 기기에 의해서 설정된 TCP 접속을 통하여 상기 기기로부터 상기 단말에 비밀 정보를 전송할 때는, 상기 기기로부터 암호화된 비밀 정보를 수신하여, 그 수신한 정보를 상기 암호 통신부로써 복호화하고, 복호화된 정보를 상기 암호 통신부로써 암호화하여 상기 단말에 송신하는 것을 특징으로 하는 서버.
  8. 인터넷에 접속된 서버와 통신하는, 인터넷에 접속된 기기에 있어서, 상기 기기는
    상기 서버에 비연결형 IP 패킷인 통지 패킷을 주기적으로 송신하고,
    상기 서버로부터 비연결형 IP 패킷인 접속 요구 패킷을 수신하는 경우, 상기 서버에 TCP 접속 요구를 송신하고,
    TCP 접속 설정 후, 그 TCP 접속을 통하여 상기 서버와 통신하는 것을 특징으로 하는 기기.
  9. 제8항에 있어서, 상기 기기는
    상기 TCP 접속을 통하여 상기 서버로부터 HTTP 요구를 수신하고, 상기 서버에 HTTP 응답을 송신하여 상기 서버와의 통신을 실행하는 것을 특징으로 하는 기기.
  10. 제9항에 있어서, 상기 기기는 웹 서버 모듈과 전송 모듈을 구비하고,
    상기 웹 서버 모듈은, 상기 전송 모듈로부터 HTTP 요구를 수신하여 HTTP 응답을 회신하고,
    상기 전송 모듈은, 상기 서버로부터 상기 접속 요구 패킷을 수신하면, 상기 서버에 대하여 TCP 접속 요구를 송신하여 TCP 접속을 설정하고, 그 TCP 접속을 통하여 상기 서버로부터 HTTP 요구를 수신하여 상기 웹 서버에 전송하고, 상기 웹 서버로부터 HTTP 응답을 수신하여 상기 TCP 접속을 통하여 상기 서버에 전송하는 것을 특징으로 하는 기기.
  11. 제8항에 있어서, 상기 기기는
    상기 서버로부터 세션 식별자를 포함한 접속 요구 패킷을 수신한 경우, 상기 서버에 TCP 접속을 설정하여, 그 설정한 TCP 접속을 통하여 상기 세션 식별자를 서버에 송신하고, 상기 TCP 접속 설정 후에는, 상기 TCP 접속을 통하여 상기 서버와 통신하는 것을 특징으로 하는 기기.
  12. 제8항에 있어서, 상기 기기는
    상기 서버로부터 최대 액세스 확인 주기 정보를 미리 수신하여 그 정보를 상기 기기 내에 저장하고, 상기 최대 액세스 확인 주기 정보가 나타내는 주기보다도 짧은 주기로 통지 패킷을 주기적으로 송신하는 것을 특징으로 하는 기기.
  13. 제8항에 있어서, 상기 기기는
    통신을 암호화하고 복호화하는 암호 통신부를 구비하고, 암호 통신부로써 비밀 정보를 암호화하여, 상기 설정한 TCP 접속을 통하여 상기 서버와 비밀 정보의 송신 또는 수신을 실행하는 것을 특징으로 하는 기기.
  14. 제8항에 있어서, 상기 기기는
    서버 증명서를 검증하는 검증부와 통신을 암호화하고 복호화하는 암호 통신부를 구비하고,
    상기 서버로부터 서버 증명서를 수신하여 검증하고, 상기 증명서가 확실하면, 암호 통신부로써 비밀 정보를 암호화하여, 상기 설정한 TCP 접속을 통하여 상기 서버와 비밀 정보의 송신 또는 수신을 실행하는 것을 특징으로 하는 기기.
  15. 인터넷에 접속된 적어도 하나의 기기와 서버를 포함하고, 적어도 하나의 기기와 인터넷에 접속 가능한 적어도 하나의 단말 간의 통신을 상기 서버를 통하여 전송하는 통신 시스템에 있어서,
    상기 기기는, 비연결형 IP 패킷이며 상기 기기에 관한 어드레스에 정보를 포함하고 있는 주기적 통지 패킷을, 상기 서버에 주기적으로 전송하고,
    상기 서버는, 상기 기기로부터 수신된 주기적 통지 패킷에 포함되어 있는 상기 정보를 근거로 상기 기기의 어드레스 정보를 저장 또는 갱신하고,
    상기 서버는, 상기 단말로부터 상기 기기에 대한 전송 요구가 있는 경우, 상기 기기의 상기 저장된 어드레스 정보를 이용하여, 상기 통지 패킷에 대한 응답으로서 비연결형 IP 패킷인 접속 요구 패킷을 상기 기기에 송신하고,
    상기 기기는, 상기 서버로부터 접속 요구 패킷을 수신하는 경우, 상기 서버에 TCP 접속 요구를 송신하고,
    상기 서버는, 상기 접속 요구 패킷에 응답하여, 상기 기기로부터 상기 서버에 송신된 TCP 접속 요구를 수락함으로써, TCP 접속을 설정하고,
    상기 서버는, 상기 TCP 접속 설정 후, 그 TCP 접속을 통하여 상기 단말과 상기 기기 간의 통신을 전송하는 것을 특징으로 하는 통신 시스템.
  16. 제15항에 있어서,
    상기 단말은 상기 서버에 대하여 기기 ID를 포함하는 HTTP 요구를 송신함으로써 상기 기기에 대한 전송을 요구하고,
    상기 서버는, 상기 단말과 상기 기기 간의 통신을 전송할 때에, 상기 단말로부터의 HTTP 요구를, 상기 기기로부터 확장된 TCP 접속을 통하여 전송하고,
    상기 기기는 전송된 상기 HTTP 요구를 처리하여, 대응하는 HTTP 응답을 상기 TCP 접속을 통하여 상기 서버에 회신하고,
    상기 서버는 그 HTTP 응답을 단말에 전송하는 것을 특징으로 하는 통신 시스템.
  17. 제15항에 있어서,
    상기 서버는, 적어도 하나의 단말로부터 복수의 전송 요구를 수신할 수 있고,
    상기 단말로부터 상기 기기에 복수의 전송 요구가 있는 경우에, 상기 서버가 각각의 전송 요구에 대하여 고유한 각각의 세션 식별자를 생성하여, 그 세션 식별자를 상기 접속 요구 패킷에 의하여 상기 기기에 통지하고,
    상기 기기는, 상기 서버로부터 세션 식별자를 포함한 접속 요구 패킷을 수신하는 경우, 상기 서버에 TCP 접속을 설정하여, 그 설정한 TCP 접속을 통하여 상기 세션 식별자를 서버에 송신하고, 상기 TCP 접속 설정 후에는, 상기 TCP 접속을 통하여 상기 서버와 통신하고,
    상기 서버는, 상기 접속 요구 패킷에 응답하여 상기 기기로부터 상기 서버에 송신된 TCP 접속 요구를 수락하여 TCP 접속을 설정하고, 상기 TCP 접속을 통하여 상기 기기로부터 송신되는 세션 식별자를 수신하여, 상기 수신한 세션 식별자를 상기 TCP 접속에 대응시킴으로써, 복수의 TCP 접속을 상기 단말로부터의 복수의 접속 요구에 대하여 각각 대응시키고,
    상기 서버는, 상기 단말이 세션 식별자를 지정하여 접속을 요구하고, 또한, 그 지정된 세션 식별자에 대응하는 TCP 접속이 이미 설정된 경우에만, 그 설정된 TCP 접속을 통하여 상기 단말로부터의 통신을 전송함으로써, 각각의 세션 식별자에 대하여 병렬로 통신 내용을 전송하는 것을 특징으로 하는 통신 시스템.
  18. 제15항에 있어서,
    상기 서버는, 복수의 기기에 대하여, 각각의 기기의 최종 액세스 시각을 저장하는 데이터 저장부를 구비하고,
    상기 서버는, 최대 액세스 확인 주기 정보를 상기 기기에 미리 송신하고,
    상기 기기는, 그 최대 액세스 확인 주기 정보를 수신하여 내부에 저장하고, 상기 최대 액세스 확인 주기 정보가 나타내는 주기보다도 짧은 주기로 통지 패킷을 주기적으로 송신하고,
    상기 서버는, 상기 기기로부터 통지 패킷을 수신하면, 최종 액세스 시각을 통지 패킷의 수신 시각으로 갱신하고,
    상기 서버는, 상기 단말로부터 상기 기기에의 전송 요구가 있는 경우에, 상기 기기의 최종 액세스 시각과 현재 시각과의 차이가, 소정의 기간을 초과하면, 상기 접속 요구를 거부하고, 그 차이가 소정의 기간 이하이면, 상기 통지 패킷에 대한 응답으로서 접속 요구 패킷을 상기 기기에 송신하는 것을 특징으로 하는 통신 시스템.
  19. 제15항에 있어서,
    상기 서버는, 서버 증명서를 저장하고, 또한 통신을 암호화하고 복호화하는 암호 통신부를 구비하고,
    상기 단말은, 서버 증명서를 검증하는 검증부와, 통신을 암호화하고 복호화하는 암호 통신부를 구비하고,
    상기 기기는, 통신을 암호화하고 복호화하는 암호 통신부를 구비하고,
    상기 서버는, 상기 단말과 상기 기기 간에 비밀 정보를 전송할 때, 상기 단말에 서버 증명서를 미리 송신하고,
    상기 단말은, 상기 서버 증명서를 검증하여, 상기 증명서가 확실하면, 자체의 암호 통신부로써 비밀 정보를 암호화함으로써, 상기 서버와 비밀 정보의 송신 또는 수신을 실행하고,
    상기 기기는, 상기 설정된 TCP 접속을 통하여 자체의 암호 통신부로써 비밀 정보를 암호화함으로써, 상기 서버와 비밀 정보의 송신 또는 수신을 실행하고,
    상기 서버는, 상기 설정된 TCP 접속을 통하여 상기 단말로부터 상기 기기에 비밀 정보를 전송할 때, 상기 단말로부터 암호화된 비밀 정보를 수신하여, 그 수신한 정보를 상기 암호 통신부로써 복호화하고, 복호화된 정보를 상기 암호 통신부로써 암호화하여 그 암호화된 정보를 상기 기기에 송신하고,
    상기 서버는, 상기 기기에 의해서 설정된 TCP 접속을 통하여 상기 기기로부터 상기 단말에 비밀 정보를 전송할 때는, 상기 기기로부터 암호화된 비밀 정보를 수신하여, 그 수신한 정보를 상기 암호 통신부로써 복호화하고, 복호화된 정보를 상기 암호 통신부로써 암호화하여 그 암호화된 정보를 상기 단말에 송신하는 것을 특징으로 하는 통신 시스템.
  20. 제15항에 있어서,
    상기 서버는, 서버 증명서를 저장하고, 또한 통신을 암호화하고 복호화하는 암호 통신부를 구비하고,
    상기 단말은, 서버 증명서를 검증하는 검증부와, 통신을 암호화하고 복호화하는 암호 통신부를 구비하고,
    상기 기기는, 서버 증명서를 검증하는 검증부와, 통신을 암호화하고 복호화하는 암호 통신부를 구비하고,
    상기 서버는, 상기 단말과 상기 기기 간에 비밀 정보를 전송할 때, 상기 단말과 상기 기기에 각각 서버 증명서를 미리 송신하고,
    상기 단말은, 상기 서버 증명서를 검증하여, 상기 증명서가 확실하면, 암호 통신부로써 비밀 정보를 암호화함으로써, 상기 서버와 비밀 정보의 송신 및 수신을 실행하고,
    상기 기기는, 상기 서버 증명서를 검증하여, 상기 증명서가 확실하면, TCP 접속을 통하여 암호 통신부로써 비밀 정보를 암호화함으로써, 상기 서버와 비밀 정보의 송신 및 수신을 실행하고,
    상기 서버는, 상기 기기에 의해서 설정된 TCP 접속을 통하여 상기 단말로부터 상기 기기에 비밀 정보를 전송할 때, 상기 단말로부터 암호화된 비밀 정보를 수신하여, 그 수신한 정보를 상기 암호 통신부로써 복호화하고, 복호화된 정보를 상기 암호 통신부로써 암호화하여 그 암호화된 정보를 상기 기기에 송신하고,
    상기 서버는, 상기 기기에 의해서 설정된 TCP 접속을 통하여 상기 기기로부터 상기 단말에 비밀 정보를 전송할 때는, 상기 기기로부터 암호화된 비밀 정보를 수신하여, 그 수신한 정보를 상기 암호 통신부로써 복호화하고, 복호화된 정보를 상기 암호 통신부로써 암호화하여 그 암호화된 정보를 상기 단말에 송신하는 것을 특징으로 하는 통신 시스템.
  21. 인터넷에 접속된 적어도 하나의 기기와, 인터넷에 접속 가능한 적어도 하나의 단말과의 사이의 통신을 전송하는, 인터넷에 접속된 서버에 있어서, 상기 서버는
    복수의 기기에 대하여, 각각의 기기의 최종 액세스 시각을 저장하는 저장부를 구비하고,
    상기 기기로부터 제1 및 제2통지 패킷을 주기적으로 수신하고,
    상기 기기로부터 제1통지 패킷을 수신했을 때에, 최종 액세스 시각을 수신 시각으로 갱신하고, 상기 기기로부터 제2통지 패킷을 수신했을 때에는 최종 액세스 시각을 갱신하지 않고,
    상기 단말로부터, 상기 기기에의 전송 요구가 있는 경우에, 상기 기기의 최종 액세스 시각과 현재 시각과의 차이가 소정의 기간을 초과하면, 상기 접속 요구를 거부하고, 그 차이가 소정의 기간 이내이면, 상기 제1 및 제2통지 패킷에 대한 응답으로서 접속 요구 패킷을 상기 기기에 송신하고,
    상기 접속 요구 패킷에 응답하여 상기 기기로부터 상기 서버에 송신되는 TCP 접속 요구를 수락하고,
    이에 따라서 TCP 접속 설정 후에는, 그 TCP 접속을 통하여 상기 단말과 상기 기기 간의 통신을 전송하는 것을 특징으로 하는 서버.
  22. 인터넷에 접속된 서버와 통신하는, 인터넷에 접속된 기기에 있어서, 상기 기기는
    상기 서버에 제1 및 제2통지 패킷을 주기적으로 송신하고, 상기 제1통지 패킷의 송신 주기는 상기 제2통지 패킷의 송신 주기보다 길며,
    상기 서버로부터 접속 요구 패킷을 수신한 경우, 상기 서버에 TCP 접속 요구를 송신하고,
    이에 따라서 TCP 접속이 설정된 후, 그 TCP 접속을 통하여 상기 서버와 통신하는 것을 특징으로 하는 기기.
  23. 인터넷에 접속된 적어도 하나의 기기와 서버를 포함하고, 상기 적어도 하나의 기기와 인터넷에 접속 가능한 적어도 하나의 단말 간의 통신을 상기 서버를 통하여 전송하는 통신 시스템에 있어서,
    상기 서버는, 복수의 기기에 대하여, 각각의 기기의 최종 액세스 시각을 저장하는 저장부를 구비하고,
    상기 기기는, 상기 서버에 제1 및 제2통지 패킷을 주기적으로 송신하고, 상기 제1통지 패킷의 송신 주기는 상기 제2통지 패킷의 송신 주기보다 길며,
    상기 서버는, 기기로부터 제1 및 제2통지 패킷을 수신하고, 상기 기기로부터 제1통지 패킷을 수신했을 때에는 최종 액세스 시각을 수신 시각으로 갱신하고, 상기 기기로부터 제2통지 패킷을 수신했을 때에는 최종 액세스 시각을 갱신하지 않고,
    상기 서버는, 상기 단말로부터, 상기 기기에의 전송 요구가 있는 경우에, 상기 기기의 최종 액세스 시각과 현재 시각과의 차이가 소정의 기간을 초과하면, 상기 접속 요구를 거부하고, 그 차이가 소정의 기간 이내이면, 상기 제1 및 제2통지 패킷에 대한 응답으로서 접속 요구 패킷을 상기 기기에 송신하고,
    상기 기기는, 상기 서버로부터 접속 요구 패킷을 수신한 경우, 상기 서버에 TCP 접속 요구를 송신하고,
    상기 서버는, 상기 접속 요구 패킷에 응답하여 상기 기기로부터 상기 서버에 송신되는 TCP 접속 요구를 수락하고, 이에 따라서 TCP 접속을 설정하고,
    상기 서버는, TCP 접속 설정 후에, 그 TCP 접속을 통하여 상기 단말과 상기 기기 간의 통신을 전송하는 것을 특징으로 하는 통신 시스템.
  24. 삭제
  25. 삭제
  26. 제1항 내지 제7항, 제21항 중 어느 한 항에 기재된 서버로서 컴퓨터가 동작하도록 하는, 컴퓨터에 의해 실행 가능한 프로그램이 기록된 컴퓨터 판독 가능 기록매체.
  27. 제8항 내지 제14항, 제22항 중 어느 한 항에 기재된 기기로서 컴퓨터가 동작하도록 하는, 컴퓨터에 의해 실행 가능한 프로그램이 기록된 컴퓨터 판독 가능 기록매체.
KR20047011710A 2002-09-27 2003-09-10 인터넷에 접속하는 서버, 기기 및 통신 시스템 KR100817661B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2002-00283287 2002-09-27
JP2002283287A JP3445986B1 (ja) 2002-09-27 2002-09-27 インターネットに接続するサーバ、機器および通信システム

Publications (2)

Publication Number Publication Date
KR20050043794A KR20050043794A (ko) 2005-05-11
KR100817661B1 true KR100817661B1 (ko) 2008-03-27

Family

ID=28672746

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20047011710A KR100817661B1 (ko) 2002-09-27 2003-09-10 인터넷에 접속하는 서버, 기기 및 통신 시스템

Country Status (9)

Country Link
US (1) US7418511B2 (ko)
EP (1) EP1547344B1 (ko)
JP (1) JP3445986B1 (ko)
KR (1) KR100817661B1 (ko)
CN (1) CN100518173C (ko)
CA (1) CA2471496A1 (ko)
DE (1) DE60321582D1 (ko)
TW (1) TW200408246A (ko)
WO (1) WO2004030314A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101150299B1 (ko) 2010-11-26 2012-06-12 한국과학기술정보연구원 사용자와 네트워킹 행위의 동시 공증 기반 다중 방화벽 동적 통과 기법 및 이에 적합한 장치

Families Citing this family (78)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19904331C1 (de) * 1999-01-28 2000-08-03 Siemens Ag System und Verfahren zur Übertragung von Daten, insbesondere von Daten zum Bedienen und Beobachten eines Automatisierungssystems, über Internet mit asymmetrischer Internetverbindung
EP2028802B1 (en) * 2002-09-30 2013-01-23 Panasonic Corporation Information processing System, server and method for equipment identifier management
CA2500576A1 (en) 2002-09-30 2004-04-15 Matsushita Electric Industrial Co., Ltd. Apparatuses, method and computer software products for controlling a home terminal
EP1568379A1 (en) 2002-11-01 2005-08-31 Genomidea Inc Medicinal preparation having chemotherapeutic encapsulated therein
EP1592172B1 (en) 2003-02-06 2016-04-13 Panasonic Corporation Information transmission system, information transmission method, electric device communication device, information communication device, communication control program
US7647388B2 (en) 2003-02-19 2010-01-12 Victor Company Of Japan, Limited Control information transmission method, intermediary server, and controlled device
DE112004000055T5 (de) 2003-03-12 2005-12-15 Matsushita Electric Industrial Co., Ltd., Kadoma Fernsteuerungseinrichtung, Fernsteuerungsverfahren und ferngesteuertes Gerät
GB2430849B (en) * 2004-01-09 2009-03-25 Matsushita Electric Ind Co Ltd IP Device Management Server and Network System
JP4926381B2 (ja) * 2004-04-14 2012-05-09 パナソニック株式会社 管理サーバ及び通信確認方法
US8515424B2 (en) 2004-06-01 2013-08-20 Qualcomm Incorporated Connected-state radio session transfer in wireless communication systems
WO2005119989A1 (en) * 2004-06-01 2005-12-15 Qualcomm Incorporated Systems and methods for packet based handoff in wireless communication systems
JP4339184B2 (ja) * 2004-06-07 2009-10-07 パナソニック株式会社 サーバ装置、通信機器、通信システム、通信方法、プログラム及び記録媒体
JP4779328B2 (ja) * 2004-09-17 2011-09-28 株式会社メガチップス 画像配信システム
WO2006030341A1 (en) * 2004-09-17 2006-03-23 Koninklijke Philips Electronics N.V. Proximity check server
JP4377786B2 (ja) * 2004-09-22 2009-12-02 パナソニック株式会社 電化機器、サーバ装置、携帯端末、通信システム、通信方法、及びプログラム
JP4440056B2 (ja) * 2004-09-27 2010-03-24 パナソニック株式会社 情報処理装置、通信処理装置、情報処理システム、情報処理方法、及び通信処理方法
JP4473695B2 (ja) * 2004-10-01 2010-06-02 パナソニック株式会社 通信端末装置、電化機器及び通信方法
JP4654006B2 (ja) * 2004-11-16 2011-03-16 パナソニック株式会社 サーバ装置、携帯端末、通信システム及びプログラム
WO2006075616A1 (ja) * 2005-01-13 2006-07-20 Matsushita Electric Industrial Co., Ltd. 通信システム、端末機器および通信機器
JP3999785B2 (ja) * 2005-01-20 2007-10-31 株式会社フラクタリスト 通信方法
JP4557803B2 (ja) * 2005-05-27 2010-10-06 富士通株式会社 ネットワークシステム及び通信方法
US20060268890A1 (en) * 2005-05-31 2006-11-30 Audiocodes Ltd. Method circuit and system for remotely updating a network appliance
JP2007026257A (ja) * 2005-07-20 2007-02-01 Atsushi Tagata 出品情報提供装置およびプログラム
JP4548271B2 (ja) * 2005-08-16 2010-09-22 ブラザー工業株式会社 情報通信システム、情報通信方法、ノード装置、及びコンピュータプログラム
US8000280B2 (en) 2005-10-04 2011-08-16 Panasonic Corporation Network communication apparatus, network communication method, and address management apparatus
WO2007039942A1 (ja) 2005-10-06 2007-04-12 Mitsubishi Denki Kabushiki Kaisha 端末装置及びサーバ装置及び指令装置
JP2007208693A (ja) * 2006-02-02 2007-08-16 Toshiba Corp 通信装置、通信システム、通信方法および通信プログラム
EP1989827B3 (en) 2006-03-02 2015-11-11 Nokia Corporation Supporting an access to a destination network via a wireless access network
EP1847536A1 (en) * 2006-04-20 2007-10-24 Prodimed, S.A. Synthesis and uses of pyroglutamic acid derivatives
US7778184B2 (en) 2006-06-06 2010-08-17 Murata Kikai Kabushiki Kaisha Communication system and remote diagnosis system
EP1865656A1 (en) * 2006-06-08 2007-12-12 BRITISH TELECOMMUNICATIONS public limited company Provision of secure communications connection using third party authentication
JP2008085470A (ja) * 2006-09-26 2008-04-10 Fujitsu Ltd Ipアプリケーションサービス提供システム
JP5020584B2 (ja) * 2006-09-26 2012-09-05 パナソニック株式会社 通信コネクションの確立方法
JP2008085687A (ja) * 2006-09-28 2008-04-10 Nec Corp 遠隔制御システム、方法並びに遠隔制御装置及び制御パケット送信装置並びにそれらの制御方法及びプログラム
US7881318B2 (en) * 2007-02-28 2011-02-01 Microsoft Corporation Out-of-band keep-alive mechanism for clients associated with network address translation systems
US7984497B2 (en) * 2007-04-04 2011-07-19 Microsoft Corporation System and method for binding a subscription-based computing system to an internet service provider
JP2008259099A (ja) * 2007-04-09 2008-10-23 Atsumi Electric Co Ltd 警備システム
JP2014096813A (ja) * 2007-11-20 2014-05-22 Panasonic Corp サーバ装置、データを送受信する方法およびコンピュータ読み取り可能な記録媒体
JP5444639B2 (ja) 2007-11-20 2014-03-19 パナソニック株式会社 サーバ装置と分散サーバシステム
JP5025694B2 (ja) * 2008-07-28 2012-09-12 株式会社デジックス ネットワークカメラシステム
US8671201B2 (en) * 2008-09-29 2014-03-11 Telefonaktiebolaget L M Ericsson (Publ) Correlation of sessions in case of session transfer in IMS domain
KR20100134433A (ko) * 2009-06-15 2010-12-23 엘지전자 주식회사 기능 제어부를 갖는 이동 단말기
JP2011124770A (ja) * 2009-12-10 2011-06-23 Panasonic Corp Vpn装置、vpnネットワーキング方法、プログラム、及び記憶媒体
US8019878B1 (en) * 2010-03-05 2011-09-13 Brass Monkey, Inc. System and method for two way communication and controlling content in a web browser
CN102209011A (zh) * 2010-03-29 2011-10-05 中兴通讯股份有限公司 多穴终端建立连接的方法和系统
IT1399940B1 (it) 2010-05-05 2013-05-09 Idropan Dell Orto Depuratori Srl Metodo di funzionamento di una apparecchiatura per la purificazione di un fluido ed apparecchiatura per la purificazione di un fluido.
KR101696210B1 (ko) * 2010-05-11 2017-01-13 가부시키가이샤 체프로 양방향 통신 시스템 및 이에 사용하는 서버 장치
US8805922B2 (en) * 2010-05-14 2014-08-12 Stephen Ball System and method for negotiating a network connection
JP5073793B2 (ja) * 2010-08-09 2012-11-14 株式会社コナミデジタルエンタテインメント ゲーム端末、ゲーム端末の制御方法、ならびに、プログラム
US9052898B2 (en) 2011-03-11 2015-06-09 Qualcomm Incorporated Remote access and administration of device content, with device power optimization, using HTTP protocol
US8819233B2 (en) * 2011-03-11 2014-08-26 Qualcomm Incorporated System and method using a web proxy-server to access a device having an assigned network address
US8799470B2 (en) * 2011-03-11 2014-08-05 Qualcomm Incorporated System and method using a client-local proxy-server to access a device having an assigned network address
US8924556B2 (en) * 2011-03-11 2014-12-30 Qualcomm Incorporated System and method for accessing a device having an assigned network address
US8862693B2 (en) 2011-03-11 2014-10-14 Qualcomm Incorporated Remote access and administration of device content and configuration using HTTP protocol
US20120311038A1 (en) 2011-06-06 2012-12-06 Trinh Trung Tim Proximity Session Mobility Extension
US10225354B2 (en) * 2011-06-06 2019-03-05 Mitel Networks Corporation Proximity session mobility
JP5650676B2 (ja) * 2012-01-24 2015-01-07 日本電信電話株式会社 呼接続装置、呼接続方法及び呼接続システム
US11463403B2 (en) 2012-05-17 2022-10-04 Viant Technology Llc Internet connected household identification for online measurement and dynamic content delivery
CN103685387B (zh) * 2012-09-12 2017-05-03 中国移动通信集团公司 一种调度http请求的方法和浏览器装置
US9521059B2 (en) 2012-10-31 2016-12-13 Nec Corporation Delivery device, communication system, load balancing method, and load balancing program
GB2528607B (en) * 2013-05-22 2020-12-23 Mitsubishi Electric Corp Monitoring system, facility management device, monitoring method, and program
CN103475706B (zh) * 2013-09-09 2016-06-29 中国科学技术大学苏州研究院 基于syn-ack双服务器反弹模式的伪tcp隐蔽通信方法
JP5758461B2 (ja) * 2013-09-12 2015-08-05 株式会社デジオン 通信方法、外部情報処理装置、内部情報処理装置及びプログラム
US10028316B2 (en) * 2014-04-08 2018-07-17 Avago Technologies General Ip (Singapore) Pte. Ltd. Network discovery and selection
CN105100024B (zh) * 2014-05-21 2017-12-12 腾讯科技(深圳)有限公司 Udp数据包安全检测方法及装置
FR3031260B1 (fr) * 2014-12-24 2018-02-09 Overkiz Procede de transmission de donnees entre un serveur et une unite electronique de controle d’une installation domotique
US10165095B2 (en) 2015-06-22 2018-12-25 Rockwell Automation Technologies, Inc. Active report of event and data
WO2017024100A1 (en) 2015-08-04 2017-02-09 Convida Wireless, Llc Internet of things end-to-end service layer quality of service management
CN106571974B (zh) * 2016-10-09 2020-12-04 美的智慧家居科技有限公司 家用电器的配网方法、系统、家用电器和移动终端
WO2018225158A1 (ja) * 2017-06-06 2018-12-13 ヤマハ株式会社 通信装置、中継装置、情報処理システムおよび通信システム
JP6990839B2 (ja) * 2017-06-30 2022-01-12 京セラドキュメントソリューションズ株式会社 リモート通信システム
US20210367811A1 (en) * 2018-02-27 2021-11-25 Murata Machinery, Ltd. Gateway device, communication system, and automated warehouse system
CN110611706B (zh) * 2019-09-03 2020-11-03 浙江口碑网络技术有限公司 辅助智能设备进行网络通信的方法及装置
CN111049946B (zh) * 2019-12-24 2023-03-24 深信服科技股份有限公司 一种Portal认证方法、系统及电子设备和存储介质
JP7121352B2 (ja) * 2020-10-12 2022-08-18 京セラドキュメントソリューションズ株式会社 リモート通信システム
US11509635B1 (en) * 2020-12-10 2022-11-22 Amazon Technologies, Inc. Data incubator for secure data processing in service-provider networks
CN113691858A (zh) * 2021-08-31 2021-11-23 Vidaa美国公司 显示设备及界面显示方法
US11936703B2 (en) 2021-12-09 2024-03-19 Viant Technology Llc Out-of-home internet connected household identification

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980079682A (ko) * 1997-03-28 1998-11-25 포맨 제프리 엘 인터넷을 통한 경보안 통신 터널링 방법 및 그 장치
KR20020071414A (ko) * 2001-03-06 2002-09-12 (주)애니 유저넷 초고속 인터넷망을 이용한 인터넷폰 실시간 접속 유지방법

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5740160A (en) * 1995-03-06 1998-04-14 Nec Corporation Setting network identifier in wireless local area network
US6163532A (en) * 1996-03-08 2000-12-19 Ntt Mobile Communications Networks, Inc. Packet data transferring method for mobile radio data communication system
US5931917A (en) * 1996-09-26 1999-08-03 Verifone, Inc. System, method and article of manufacture for a gateway system architecture with system administration information accessible from a browser
JP3492865B2 (ja) * 1996-10-16 2004-02-03 株式会社東芝 移動計算機装置及びパケット暗号化認証方法
US5968119A (en) * 1996-12-09 1999-10-19 Wall Data Incorporated Method of accessing information of an SNA host computer from a client computer using a specific terminal emulation
US5941988A (en) * 1997-01-27 1999-08-24 International Business Machines Corporation Session and transport layer proxies via TCP glue
US6012090A (en) * 1997-03-14 2000-01-04 At&T Corp. Client-side parallel requests for network services using group name association
US6473406B1 (en) * 1997-07-31 2002-10-29 Cisco Technology, Inc. Method and apparatus for transparently proxying a connection
US6055236A (en) * 1998-03-05 2000-04-25 3Com Corporation Method and system for locating network services with distributed network address translation
US6557037B1 (en) * 1998-05-29 2003-04-29 Sun Microsystems System and method for easing communications between devices connected respectively to public networks such as the internet and to private networks by facilitating resolution of human-readable addresses
JP3581251B2 (ja) * 1998-06-16 2004-10-27 株式会社東芝 通信システム、データパケット転送方法、ルータ装置及びパケット中継装置
US6006259A (en) * 1998-11-20 1999-12-21 Network Alchemy, Inc. Method and apparatus for an internet protocol (IP) network clustering system
US6389462B1 (en) * 1998-12-16 2002-05-14 Lucent Technologies Inc. Method and apparatus for transparently directing requests for web objects to proxy caches
US6591306B1 (en) * 1999-04-01 2003-07-08 Nec Corporation IP network access for portable devices
US20010051902A1 (en) * 1999-06-28 2001-12-13 Messner Marc A. Method for performing secure internet transactions
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
JP2001292165A (ja) * 2000-04-06 2001-10-19 Fujitsu Ltd サービス設定システム、サービス設定方法及び中継装置
US6845236B2 (en) 2000-11-01 2005-01-18 Lg Electronics Inc. Method for concurrent multiple services in a mobile communication system
GB2383853A (en) * 2001-01-26 2003-07-09 Xmg Ltd A method system and apparatus for networking devices over an asynchronous network such as the internet
US7068655B2 (en) * 2001-06-14 2006-06-27 Nortel Networks Limited Network address and/or port translation
US20030018917A1 (en) * 2001-07-23 2003-01-23 Brown Matthew W. Method and apparatus for delivering digital media using packetized encryption data
US9497168B2 (en) * 2002-07-30 2016-11-15 Avaya Inc. Method and apparatus for supporting communications between a computing device within a network and an external computing device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980079682A (ko) * 1997-03-28 1998-11-25 포맨 제프리 엘 인터넷을 통한 경보안 통신 터널링 방법 및 그 장치
KR20020071414A (ko) * 2001-03-06 2002-09-12 (주)애니 유저넷 초고속 인터넷망을 이용한 인터넷폰 실시간 접속 유지방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101150299B1 (ko) 2010-11-26 2012-06-12 한국과학기술정보연구원 사용자와 네트워킹 행위의 동시 공증 기반 다중 방화벽 동적 통과 기법 및 이에 적합한 장치

Also Published As

Publication number Publication date
US20050015584A1 (en) 2005-01-20
CN1625881A (zh) 2005-06-08
EP1547344A1 (en) 2005-06-29
JP3445986B1 (ja) 2003-09-16
EP1547344B1 (en) 2008-06-11
CA2471496A1 (en) 2004-04-08
TW200408246A (en) 2004-05-16
CN100518173C (zh) 2009-07-22
WO2004030314A1 (en) 2004-04-08
KR20050043794A (ko) 2005-05-11
DE60321582D1 (de) 2008-07-24
JP2004120547A (ja) 2004-04-15
US7418511B2 (en) 2008-08-26

Similar Documents

Publication Publication Date Title
KR100817661B1 (ko) 인터넷에 접속하는 서버, 기기 및 통신 시스템
Calhoun et al. Control and provisioning of wireless access points (CAPWAP) protocol specification
JP4729602B2 (ja) サーバ装置、通信機器、通信システム、プログラム及び記録媒体
US7729331B2 (en) Home terminal apparatus and communication system
JP3343064B2 (ja) フレームを捕獲、カプセル化及び暗号化するための擬似ネットワークアダプタ
US8312532B2 (en) Connection supporting apparatus
US7680878B2 (en) Apparatus, method and computer software products for controlling a home terminal
EP1560396A2 (en) Method and apparatus for handling authentication on IPv6 network
US9900178B2 (en) Device arrangement and method for implementing a data transfer network used in remote control of properties
KR20070041438A (ko) 방화벽 보호 서버와 방화벽 보호 클라이언트 사이에 보안인터넷 연결을 자동으로 개시하고 동적으로 설정하는시스템 및 방법
Aboba et al. Securing block storage protocols over ip
CN101471767B (zh) 密钥分发方法、设备及系统
Henderson et al. Host mobility with the host identity protocol
Thaler Teredo extensions
JP4475514B2 (ja) IPv6/IPv4トンネリング方法
JP4073931B2 (ja) 端末、通信装置、通信確立方法および認証方法
Jerschow et al. CLL: A cryptographic link layer for local area networks
Altunbasak Layer 2 security inter-layering in networks
Calhoun et al. RFC 5415: Control And Provisioning of Wireless Access Points (CAPWAP) Protocol Specification
JP2005191646A (ja) 遮断装置、匿名公開鍵証明書発行装置、システム、および、プログラム
Bjarnason RFC 8994: An Autonomic Control Plane (ACP)

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

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140220

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150224

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160219

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170221

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20180220

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20190219

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20200219

Year of fee payment: 13