KR101696210B1 - 양방향 통신 시스템 및 이에 사용하는 서버 장치 - Google Patents

양방향 통신 시스템 및 이에 사용하는 서버 장치 Download PDF

Info

Publication number
KR101696210B1
KR101696210B1 KR1020127026714A KR20127026714A KR101696210B1 KR 101696210 B1 KR101696210 B1 KR 101696210B1 KR 1020127026714 A KR1020127026714 A KR 1020127026714A KR 20127026714 A KR20127026714 A KR 20127026714A KR 101696210 B1 KR101696210 B1 KR 101696210B1
Authority
KR
South Korea
Prior art keywords
address
client
unit
access
server
Prior art date
Application number
KR1020127026714A
Other languages
English (en)
Other versions
KR20130076797A (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 KR20130076797A publication Critical patent/KR20130076797A/ko
Application granted granted Critical
Publication of KR101696210B1 publication Critical patent/KR101696210B1/ko

Links

Images

Classifications

    • 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/2514Translation of Internet protocol [IP] addresses between local and global IP addresses
    • 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/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
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/30Types of network names

Abstract

클라이언트(10)로부터 라우터(router)(40, 50)를 통하여 서버(20)에 액세스를 행했을 때, 서버(20)에 있어서, 액세스 시에 사용된 IP 어드레스를 승계하면서 임의의 시스템 ID를 부여함으로써 새로운 접속 어드레스를 생성한다. 그리고, 그 시스템 ID를 클라이언트(10)에게 통지하고, 또한 클라이언트(10)와 통신하기 위한 통신 프로세스를 생성한다. 그 후의 클라이언트(10)와 서버(20)와의 통신은, 통신 프로세스가 새로운 접속 어드레스에 기초하여 행한다. 서버(20)의 통신 프로세스와 클라이언트(10)와의 통신을 위해 새롭게 생성되는 접속 어드레스는, 최초의 액세스 시에 사용된 IP 어드레스와 같은 것을 포함하고 있으므로, 라우터(40, 50)의 NAT 기능을 문제없이 사용할 수 있다.

Description

양방향 통신 시스템 및 이에 사용하는 서버 장치{BIDIRECTIONAL COMMUNICATION SYSTEM AND SERVER APPARATUS USED THEREIN}
본 발명은, 양방향 통신 시스템 및 이에 사용하는 서버 장치에 관한 것이며, 특히, 클라이언트가 인터넷 상의 라우터(router)를 통하여 서버에 접속 가능하게 구성되며, 서버가 클라이언트로부터의 요구에 따른 서비스를 제공하도록 이루어진 양방향 통신 시스템에 관한 것이다.
인터넷에 있어서 일반적으로 사용되는 HTTP(Hyper Text Transfer Protocol)는, HTML(Hyper Text Markup Language)이나 XML(Extensible Markup Language)에 의해 기술된 컨텐츠를 클라이언트(웹 브라우저)와 서버와의 사이에서 송수신하는 데 사용되는 통신 프로토콜이다. HTTP는, 하이퍼 텍스트 형식의 데이터를 송수신하는 것을 주목적으로 하고 있어, 화상이나 음성 등의 바이너리 데이터의 교환을 간단하게는 행할 수 없다. 현재는, AJAX나 Silverlight 등의 특수 기술을 이용함으로써, 바이너리 데이터의 송수신을 부분적으로 할 수 있는 정도이다.
또한, HTTP는, 이른바 리퀘스트―리스폰스형의 단방향 통신 프로토콜이다. 즉, HTTP에서는, 클라이언트가 서버에 리퀘스트를 송신하고, 서버가 그 리스폰스로서 리퀘스트에 따른 데이터를 회신한다. 리스폰스를 되돌린 시점에서 기본적으로 서버는 초기 상태로 되돌아온다. 즉, 서버는 클라이언트 상태를 보존하고 있지 않아, 서버로부터의 능동적인 액션으로 클라이언트에게 데이터를 송신할 수는 없다.
그런데, 최근에는 SaaS(Software as a Service)라는 기술이 인터넷 상에서 확산되고 있다. SaaS란, 필요한 기능을 필요한 분만큼 서비스로서 이용할 수 있도록 한 소프트웨어(주로, 어플리케이션 소프트웨어)이다. 일반적으로는 클라이언트가 인터넷을 경유하여 서버에 액세스하여 필요한 기능을 이용할 수 있도록 한 구성으로, 사용자가 요구하는 서비스를 온디맨드(on demand)로 이용할 수 있다.
이 SaaS도, 기본적으로는 HTTP에 따라 동작한다. 그러므로, 서비스의 내용에 따라서는 서버로부터의 액션으로 클라이언트에게 데이터를 송신하는 것이 요구되지만, 통상은 이것을 행할 수 없다. 또한, 서버의 서비스(어플리케이션 소프트웨어)로부터 클라이언트로의 콜백(callback)이 시큐리티 상에서 행할 수 없는 구조로 되어 있다. 그러므로, 서버 상태를 라우터나 방화벽(fire wall)을 투과하여 클라이언트에게 송신할 수도 없다.
이에 대하여, 마이크로소프트사로부터 제공되고 있는 .NET Remoting이라는 프레임 워크는, 서버로부터 클라이언트에게 콜백하는 기능을 가지고 있다. 따라서, .NET Remoting을 이용하면, HTTP에 의한 양방향 통신이 가능하며, 클라이언트로부터의 액션에 따라 데이터를 송수신하는 것에 더하여, 서버로부터의 액션에 따라 데이터를 송수신할 수도 있다. 또한, .NET Remoting은 바이너리 형식으로의 데이터 통신 기능도 가지고 있으므로, HTTP와 .NET Remoting과의 조합에 의해, 바이너리 형식으로의 데이터 통신을 간단하게 실현할 수도 있다.
그러나, .NET Remoting에는, SaaS와 같이 복수 사용자가 요구하는 서비스를 각각 제공하도록 하는 경우, 라우터의 NAT(Network Address Translation)를 초과할 수 없는 문제점이 있다. NAT란, 거점 내의 LAN에서만 통용되는 로컬 어드레스와 인터넷 상의 글로벌 어드레스를 1 대 1의 관계로 상호 변환하는 기술이다. 거점 내의 단말기로부터 인터넷 상의 서버에 액세스하여 SaaS의 서비스를 이용할 때는, NAT에 의한 어드레스 변환(NAT 초과)을 행하는 것이 필요해진다. 그런데, SaaS 환경에서 .NET Remoting을 사용하면, 이 NAT를 초과할 수 없는 문제가 있었다.
즉, 도 4에 나타낸 바와 같이, 클라이언트(100)로부터 인터넷(300)을 통하여 서버(200)에 액세스하여, 클라이언트(100)가 서버(200)에 대하여 원하는 서비스(201)의 이용을 리퀘스트하는 경우, 클라이언트(100)와 인터넷(300)과의 사이에 설치된 라우터(400)에 있어서, NAT 기능에 의해 로컬 어드레스로부터 글로벌 어드레스로의 변환이 행해진다. 또한, 인터넷(300)과 서버(200)와의 사이에 설치된 라우터(500)에 있어서, NAT 기능에 의해 글로벌 어드레스로부터 로컬 어드레스로의 변환이 행해진다. 그러나, 서비스(201)의 결과를 서버(200)로부터 클라이언트(100)에 회신할 때, 라우터(500)에 있어서 로컬 어드레스로부터 글로벌 어드레스로의 역변환을 행할 수 없게 된다. 그것은 이하의 이유에 의한다.
SaaS의 경우, 서버(200)는, 복수의 클라이언트(100)로부터의 리퀘스트에 따라 같은 서비스(201)를 제공할 필요가 있다. 그래서, 복수의 클라이언트(100)로부터의 접속 대기를 가능하게 하기 위해, 서비스(201)의 어플리케이션 소프트웨어는, 한 번 접속된 클라이언트(100)에 대응하는 통신 프로세스(202)를 생성한다. 이 때, 생성하는 통신 프로세스(202)에는, 새로운 IP 어드레스가 설정된다. 즉, 서버(200)에 액세스하여 오는 클라이언트(100)마다 통신 프로세스(202)를 생성하고, 상기 통신 프로세스(202)에 각 클라이언트(100)와의 통신을 담당하게 함으로써, 복수의 클라이언트(100)로부터의 리퀘스트에 따라 서비스(201)를 제공 가능하도록 하고 있다.
이로써, 통신 프로세스(202)가 사용하는 로컬 어드레스는, 클라이언트(100)로부터 접속되었을 때의 로컬 어드레스[라우터(500)에 의해 글로벌 어드레스로부터 변환된 것]와는 상이한 IP 어드레스로 된다. 그러므로, 통신 프로세스(202)로부터 클라이언트(100)에 대하여 리스폰스를 되돌리려 해도, 라우터(500)의 NAT 기능에서는 통신 프로세스(202)의 로컬 어드레스를 인터넷(300) 상의 글로벌 어드레스로 변환할 수 없다. 그 결과, 클라이언트(100)로의 회신을 행할 수 없게 된다.
그리고, HTTP 대신에, SOAP나 메타 프레임 등의 전용 프로토콜을 사용하면, .NET Remoting을 사용할 필요가 없기 때문에, NAT 초과의 문제는 해소할 수 있다. 그러나, 전용 프로토콜이지만 범용성이 없어, 바이너리 데이터의 통신도 행할 수 없다. 또한, HTTP에 비해 처리 속도가 늦은 문제도 있다.
또한, NAT 초과를 해결하기 위한 다른 수단으로서, 라우터의 NAT 기능에 의해 변환되는 IP 어드레스를 특정하고, 또한 라우터의 NAT 기능에 의해 변환되는 포트 번호를 예측하고, NAT 초과를 위한 교환 정보로서 중계 서버에 등록하도록 한 기술도 제안되어 있다(예를 들면, 특허 문헌 1 참조).
일본공개특허 제2005―151142호 공보
그러나, 상기 특허 문헌 1에 기재된 기술은, 특정 단말기와 통신하기 위해 IP 어드레스에 포트 번호를 조합시켜 식별하는 것이다. 이 포트 번호는 중계 서버에 등록 되어 있고, 단말기 간의 통신 시에는 NAT 기능에 의한 어드레스 변환과 동시에 포트 번호도 변환되어 항상 변동한다. 그러므로, SaaS와 같이 다수의 클라이언트와 통신하기 위해서는, 다수의 포트 번호를 필요로 한다. 그런데, 통상, 포트 번호는 다른 용도에도 사용되고 있어 NAT 초과를 위해 사용할 수 있는 포트 번호의 수에는 한계가 있다. 그 결과, 동시에 서비스를 제공할 수 있는 클라이언트 수가 적게 되는 문제가 있었다.
본 발명은, 이와 같은 문제점을 해결하기 위해 이루어진 것이며, 인터넷 상에서 범용적으로 사용할 수 있는 HTTP에 의해, 하이퍼 텍스트 형식에 더하여 바이너리 형식의 데이터 통신을 이용하여, NAT 초과의 문제도 없이 다수의 클라이언트에 대하여 SaaS형의 서비스를 제공 가능하도록 하는 것을 목적으로 한다.
상기한 문제점을 해결하기 위해, 본 발명에서는, 클라이언트로부터 라우터를 통하여 서버에 액세스를 행했을 때, 서버에 있어서, 라우터에 의해 글로벌 어드레스로부터 로컬 어드레스로 변환되어 도달한 IP 어드레스에 대하여 임의의 식별 정보를 부여함으로써 새로운 접속 어드레스를 생성하고, 그 식별 정보를 클라이언트에게 통지한다. 또한, 클라이언트와 통신을 행하기 위한 통신 프로세스를 생성하여, 이후의 클라이언트와의 통신은 상기 통신 프로세스가 새로운 접속 어드레스에 기초하여 행하도록 하고 있다.
상기한 바와 같이 구성한 본 발명에 의하면, 클라이언트로부터 서버에 대하여 액세스를 행했을 때, 그 후의 통신을 위해 통신 프로세스가 생성되고, 상기 통신 프로세스로 사용해야 할 새로운 접속 어드레스가 설정된다. 이 때, 설정되는 새로운 접속 어드레스는, 클라이언트로부터 서버로의 액세스 시에 사용된 IP 어드레스가 그대로 승계되어 임의의 식별 정보가 부여되는 형태로 설정된다.
그러므로, IP 어드레스 그 자체에 변경은 없기 때문에, 글로벌 어드레스와 로컬 어드레스를 1 대 1의 관계로 대응시킨 라우터의 NAT 기능을 문제없이 사용할 수 있다. 또한, 사용 가능한 수에 제한이 있는 포트 번호가 아니고, 임의의 식별 정보를 부여하는 형태로 새로운 접속 어드레스가 설정되므로, NAT를 초과하여 동시에 서비스를 제공할 수 있는 클라이언트의 수를 많게 할 수도 있다.
또한, NAT 초과를 위해 전용 프로토콜을 사용할 필요도 없어, HTTP의 프로토콜을 사용하면서 본 발명에 의한 NAT 초과의 구성을 적용할 수 있다. 이 HTTP에 .NET Remoting을 조합함으로써, 바이너리 형식으로의 데이터 통신을 간단하게 실현할 수도 있다.
이상과 같이, 본 발명에 의하면, 인터넷 상에서 범용적으로 사용할 수 있는 HTTP에 의해, 하이퍼 텍스트 형식에 더하여 바이너리 형식의 데이터 통신을 이용하므로, NAT 초과의 문제도 없이 다수의 클라이언트에 대하여 SaaS형의 서비스를 제공할 수 있다.
도 1은 본 실시예에 의한 양방향 통신 시스템의 구성예를 나타낸 블록도이다.
도 2는 인터넷과 서버 사이에서의 접속 어드레스의 변환예를 나타낸 도면이다.
도 3은 본 실시예에 의한 서버의 동작예를 나타낸 플로우차트이다.
도 4는 종래의 통신 시스템의 구성예를 나타낸 블록도이다.
이하, 본 발명의 일 실시예를 도면을 참조하여 설명한다. 도 1은, 본 실시예에 의한 양방향 통신 시스템의 구성예를 나타낸 블록도이다. 본 실시예의 양방향 통신 시스템은, 클라이언트(10)가 인터넷(30) 상의 라우터(40, 50)를 통하여 서버(20)에 접속 가능하게 구성되며, 서버(20) 상의 어플리케이션 소프트웨어에 의해 클라이언트(10)로부터의 요구에 따른 서비스를 제공하도록 되어 있다.
클라이언트(10)로부터 인터넷(30)을 통하여 서버(20)에 액세스하여, 클라이언트(10)가 서버(20)에 대하여 원하는 서비스의 이용을 요구하는 경우, 클라이언트(10)와 인터넷(30)과의 사이에 설치된 라우터(40)에 있어서, NAT 기능에 의해 로컬 어드레스로부터 글로벌 어드레스로의 변환이 행해진다. 또한, 인터넷(30)과 서버(20)와의 사이에 설치된 라우터(50)에 있어서, NAT 기능에 의해 글로벌 어드레스로부터 로컬 어드레스로의 변환이 행해진다.
서버(20)는, 이상과 같은 액세스를 통해서 클라이언트(10)로부터 요구된 서비스를 제공하기 위해, 상기 서비스에 대응하는 어플리케이션 소프트웨어(도시하지 않음)를 실행한다. 그리고, 그 실행 결과를 클라이언트(10)에게 회신한다.
이 때, 서버(20)의 어플리케이션 소프트웨어는, SaaS형으로 복수의 클라이언트(10)에 대하여 서비스를 제공할 수 있도록 하기 위해, 한 번 접속된 클라이언트(10)에 대응하는 통신 프로세스를 생성하고, 그 이후의 클라이언트(10)와의 통신을 상기 통신 프로세스에 위탁한다. 이 때, 생성하는 통신 프로세스에는, 새로운 접속 어드레스가 설정된다. 본 실시예는, 이 접속 어드레스의 설정 방법에 특징이 있다. 이에 관하여 이하에 상세하게 설명한다.
본 실시예의 클라이언트(10)는, 그 기능 구성으로서, 제1 통신 처리부(11) 및 제2 통신 처리부(12)를 구비하고 있다. 여기서는 설명의 편의 상, 제1 통신 처리부(11) 및 제2 통신 처리부(12)를 나누어 도시하고 있지만, 이들은 공통의 통신 IF(DLL: Dynamic Link Library)로 구성되어 있다.
또한, 본 실시예의 서버(20)는, 그 기능 구성으로서, 액세스 접수부(21), 어드레스 생성부(22), 식별 정보 통지부(23), 및 통신 프로세스 생성부(24)를 구비하고 있다. 이 중, 액
세스 접수부(21), 어드레스 생성부(22) 및 식별 정보 통지부(23)의 각 기능 구성은, 클라이언트(10)에 대하여 서비스를 제공하기 위한 어플리케이션 소프트웨어에 의해 실현된다.
클라이언트(10)의 제1 통신 처리부(11)는, 서버(20)의 액세스 접수부(21)에 대하여 액세스를 행한다. 이 액세스는, 원하는 서비스의 제공을 서버(20)에 요구하기 위해 클라이언트(10)가 최초에 행하는 액세스이다. 본 실시예에서는, 이 액세스 시에 사용하는 접속 어드레스로서, IP 어드레스에 대하여 시스템 ID(본 발명의 식별 정보에 상당함) 및 포트 번호를 부가한 것을 사용한다. 시스템 ID는, 본 실시예의 양방향 통신 시스템에 고유의 부호이며, 미리 결정되어 있다(예를 들면, 「WAO」). 포트 번호는, 미리 결정된 고정된 번호이다(예를 들면, 「9000」).
서버(20)의 액세스 접수부(21), 제1 통신 처리부(11)로부터 서비스 요구를 위해 인터넷(30) 및 라우터(40, 50)를 통하여 행해지는 액세스를 받아들인다.
어드레스 생성부(22)는, 액세스 접수부(21)에 의해 액세스가 접수되었을 때, 라우터(50)에 의해 글로벌 어드레스로부터 로컬 어드레스로 변환되어 도달한 IP 어드레스(접속 어드레스의 일부)에 대하여 임의의 시스템 ID를 부여함으로써, 새로운 접속 어드레스를 생성한다.
구체적으로는, 어드레스 생성부(22)는, 라우터(50)에 의해 글로벌 어드레스로부터 로컬 어드레스로 변환되어 도달한 IP 어드레스 및 포트 번호를 그대로 승계하면서, 상기 IP 어드레스에 부여되어 있는 소정의 시스템 ID(「WAO」)를 임의의 시스템 ID로 치환함으로써, 새로운 접속 어드레스를 생성한다. 어드레스 생성부(22)는, 액세스 접수부(21)가 클라이언트(10)로부터의 액세스를 받을 때마다 새로운 시스템 ID를 발행하여 접속 어드레스를 생성한다.
식별 정보 통지부(23)는, 어드레스 생성부(22)에 의해 생성된 새로운 접속 어드레스를 사용하고, 인터넷(30) 및 라우터(40, 50)를 통하여 클라이언트(10)의 제2 통신 처리부(12)에 대하여, 어드레스 생성부(22)에 의해 새롭게 부여된 시스템 ID를 통지한다.
이 통신 시에, 라우터(40, 50)에 있어서 IP 어드레스의 NAT 변환이 행해지지만, 어드레스 생성부(22)가 생성한 새로운 접속 어드레스는 IP 어드레스 그 자체에 변경이 없기 때문에, 글로벌 어드레스와 로컬 어드레스를 1 대 1의 관계로 대응시킨 라우터의 NAT 기능을 문제없이 사용할 수 있다. 즉, 서비스의 요구를 행하여 온 클라이언트(10)의 IP 어드레스를 문제없이 특정하여, 시스템 ID의 통지를 행할 수 있다.
통신 프로세스 생성부(24)는, 어드레스 생성부(22)에 의해 생성된 새로운 접속 어드레스에 기초하여 클라이언트(10)와 통신하기 위한 통신 프로세스를 생성한다. 통신 프로세스 생성부(24)는 클라이언트(10)로부터의 요구에 따라 복수의 통신 프로세스를 생성하는 것이 가능하며, 생성한 통신 프로세스는 통신 프로세스 생성부(24)가 관리한다. 통신 프로세스 생성부(24)가 통신 프로세스를 생성한 시점에서, 통신 프로세스는 클라이언트(10)로부터의 액세스 대기로 된다. 그리고, 그 이후는 이 통신 프로세스가, 새로운 접속 어드레스를 사용하여 클라이언트(10)와의 사이에서 양방향의 통신을 행한다.
클라이언트(10)의 제2 통신 처리부(12)는, 통신 프로세스 생성부(24)에 의해 생성된 통신 프로세스와의 사이에서 통신을 행함으로써, 서버(20)로부터 원하는 서비스의 제공을 받는다. 이 때, 제2 통신 처리부(12)는, 식별 정보 통지부(23)에 의해 통지된 시스템 ID를 IP 어드레스에 부여함으로써 생성한 새로운 어드레스를 접속 어드레스로서 사용한다. 구체적으로는, 제2 통신 처리부(12)는, 제1 통신 처리부(11)가 최초에 사용한 소정의 시스템 ID(「WAO」)를 서버(20)로부터 통지된 임의의 시스템 ID로 치환하여 새로운 접속 어드레스를 생성하여, 서버(20)에 액세스한다.
도 2는 인터넷(30)과 서버(20)와의 사이에서의 접속 어드레스의 변환예를 나타낸 도면이다. 도 2에서는 도시하지 않은 클라이언트(10)의 제1 통신 처리부(11)가 서버(20)의 액세스 접수부(21)에 대하여 최초에 액세스를 행할 때는, 도 2에 나타낸 바와 같이, IP 어드레스에 대하여 고정된 시스템 ID(「WAO」)와 고정된 포트 번호(「9000」)를 부가하여 이루어지는 접속 어드레스가 사용된다. 여기서는, 인터넷(30) 상의 접속 어드레스(글로벌 어드레스)가 「http://211.11.110.15/WAO: 9000」인 것으로 한다(이 중에서 「 211.11.110.15」의 부분이 IP 어드레스).
이 글로벌 어드레스는, 라우터(50)에 있어서, NAT 기능에 의해 로컬 어드레스로 변환된다. 이 NAT 변환은, IP 어드레스의 부분을 글로벌 어드레스로부터 로컬 어드레스로 변환함으로써 행해진다. 여기서는, 글로벌 어드레스로부터 NAT 변환된 로컬 어드레스가 「http://192.168.1.1/WAO: 9000」인 것으로 한다.
이 로컬 어드레스에 기초하여 액세스 접수부(21)가 액세스를 받으면, 어드레스 생성부(22)는, 그 로컬 어드레스에 포함되는 IP 어드레스 및 포트 번호를 그대로 승계하면서, 상기 IP 어드레스에 부여되어 있는 시스템 ID(「WAO」)를 임의의 시스템 ID(예를 들면, 「WAO1」)로 치환함으로써, 새로운 접속 어드레스 「http://192.168.1.1/WAO1: 9000」을 생성한다.
식별 정보 통지부(23)는, 어드레스 생성부(22)에 의해 생성된 새로운 접속 어드레스를 사용하고, 라우터(50)를 통하여 클라이언트(10)에 대하여, 새롭게 부여된 시스템 ID(「WAO1」)를 통지한다. 이 통신 시에, 라우터(50)에 있어서 IP 어드레스의 부분이 로컬 어드레스로부터 글로벌 어드레스로 NAT 변환된다. 이로써, 글로벌 어드레스는 「http://211.11.110.15/WAO1: 9000」으로 된다.
이 통지를 한 후에는, 클라이언트(10)의 제2 통신 처리부(12)와, 서버(20)의 통신 프로세스 생성부(24)에 의해 생성된 통신 프로세스와의 사이에서, 새로운 접속 어드레스를 사용하여 양방향의 통신이 행해진다. 이 때, 라우터(50)에 있어서는, 글로벌 어드레스 「http://211.11.110.15/WAO1: 9000」과, 로컬 어드레스 「http://192.168.1.1/WAO1: 9000」과의 NAT 변환이 양방향으로 행해진다.
그리고, 같은 클라이언트(10)로부터 서버(20)에 대하여 새롭게 다른 서비스를 요구하기 위한 액세스를 행한 것으로 한다. 이 때, 제1 통신 처리부(11)로부터 액세스 접수부(21)에 대하여 행해지는 액세스에서 사용되는 접속 어드레스는 조금 전과 같다. 즉, 인터넷(30) 상의 글로벌 어드레스는 「http://211.11.110.15/WAO: 9000」이며, 이것이 라우터(50)에 있어서 NAT 변환된 로컬 어드레스는 「http://192.168.1.1/WAO: 9000」이다.
액세스 접수부(21)가 액세스를 받으면, 어드레스 생성부(22)는, 그 액세스에 사용된 로컬 어드레스에 포함되는 시스템 ID(「WAO」)를, 조금 전과는 상이한 임의의 시스템 ID(예를 들면, 「WAO2」)로 치환함으로써, 새로운 접속 어드레스 「http://192.168.1.1/WAO2: 9000」을 생성한다. 식별 정보 통지부(23)는, 이와 같이 하여 생성된 새로운 접속 어드레스를 사용하고, 새롭게 부여된 시스템 ID(「WAO2」)를 클라이언트(10)에게 통지한다. 또한, 통신 프로세스 생성부(24)는, 조금 전과는 상이한 다른 통신 프로세스를 생성한다.
새로운 시스템 ID가 클라이언트(10)에게 통지된 후에는, 클라이언트(10)의 제2 통신 처리부(12)와, 서버(20)의 통신 프로세스 생성부(24)에 의해 생성된 다른 통신 프로세스와의 사이에서, 새로운 접속 어드레스를 사용하여 양방향의 통신이 행해진다. 이 때, 라우터(50)에 있어서는, 글로벌 어드레스 「http://211.11.110.15/WAO2: 9000」과, 로컬 어드레스 「http://192.168.1.1/WAO2: 9000」의 NAT 변환이 양방향으로 행해진다.
또한, 도시하지 않은 다른 클라이언트(10)로부터 서버(20)에 대하여 액세스를 한 경우도 마찬가지이다. 즉, 제1 통신 처리부(11)로부터 액세스 접수부(21)에 대하여 행해지는 액세스에 있어서 사용되는 시스템 ID와 포트 번호, IP 어드레스는 같은 것이다. 예를 들면, 인터넷(30) 상의 글로벌 어드레스가 「http://211.11.110.15/WAO: 9000」이며, 이것이 라우터(50)에 있어서 NAT 변환된 로컬 어드레스가 「http://192.168.1.1/WAO: 9000」이다.
액세스 접수부(21)가 액세스를 받으면, 어드레스 생성부(22)는, 그 액세스에 사용된 로컬 어드레스에 포함되는 시스템 ID(「WAO」)를, 조금 전과는 또다른 시스템 ID(예를 들면, 「WAO3」)로 치환함으로써, 새로운 접속 어드레스 「http://192.168.1.1/WAO3: 9000」을 생성한다. 식별 정보 통지부(23)는, 이와 같이 하여 생성된 새로운 접속 어드레스를 사용하고, 새롭게 부여된 시스템 ID(「WAO3」)를 다른 클라이언트(10)에게 통지한다. 또한, 통신 프로세스 생성부(24)는, 조금 전과는 상이한 다른 통신 프로세스를 생성한다.
새로운 시스템 ID가 다른 클라이언트(10)에게 통지된 후에는, 상기 다른 클라이언트(10)에서의 제2 통신 처리부(12)와, 서버(20)의 통신 프로세스 생성부(24)에 의해 생성된 다른 통신 프로세스와의 사이에서, 새로운 접속 어드레스를 사용하여 양방향의 통신이 행해진다. 이 때, 라우터(50)에 있어서는, 글로벌 어드레스 「http://211.11.110.15/WAO3: 9000」과, 로컬 어드레스 「http://192.168.1.1/WAO3: 9000」의 NAT 변환이 양방향으로 행해진다.
도 3은 상기한 바와 같이 구성한 본 실시예에 의한 서버(20)의 동작예를 나타낸 플로우차트이다. 도 3의 플로우차트에 나타낸 처리는, 서버(20)의 전원이 온으로 되어 있을 때는 항상, 반복 실행되고 있다. 도 3에 있어서, 액세스 접수부(21)는, 클라이언트(10)의 제1 통신 처리부(11)로부터 액세스를 받아들였는지의 여부를 판정한다(스텝 S1). 액세스 접수부(21)가 제1 통신 처리부(11)로부터의 액세스를 받고 있지 않는 경우, 처리는 스텝 S5로 진행된다.
한편, 액세스 접수부(21)가 제1 통신 처리부(11)로부터의 액세스를 받아들인 경우, 어드레스 생성부(22)는, 그 액세스 시에 사용된 접속 어드레스에 포함되어 있는 IP 어드레스 및 포트 번호를 그대로 승계하면서, 상기 IP 어드레스에 부여되어 있는 고정된 시스템 ID를 임의의 시스템 ID로 치환함으로써, 새로운 접속 어드레스를 생성한다(스텝 S2).
식별 정보 통지부(23)는, 어드레스 생성부(22)에 의해 생성된 새로운 접속 어드레스를 사용하여, 어드레스 생성부(22)에 의해 새롭게 부여된 시스템 ID를 클라이언트(10)의 제2 통신 처리부(12)에 통지한다(스텝 S3). 또한, 통신 프로세스 생성부(24)는, 클라이언트(10)와 그 후의 통신을 행하기 위한 통신 프로세스를 생성한다(스텝 S4).
그리고, 통신 프로세스 생성부(24)에 의해 생성된 통신 프로세스는, 클라이언트(10)의 제2 통신 처리부(12)로부터의 액세스를 받아들였는지의 여부를 판정한다(스텝 S5). 통신 프로세스가 제2 통신 처리부(12)로부터의 액세스를 받고 있지 않는 경우에는, 도 3에 나타낸 처리를 종료한다. 한편, 제2 통신 처리부(12)로부터의 액세스를 받아들인 경우, 통신 프로세스는, 클라이언트(10)로부터 요구된 서비스(어플리케이션 소프트웨어의 처리 결과)를 클라이언트(10)에게 회신한다(스텝 S6).
그리고, 서버(20)의 통신 프로세스로부터 클라이언트(10)의 제2 통신 처리부(12)에 데이터를 송신한 후 바로, 제2 통신 처리부(12)로부터 통신 프로세스에 액세스를 행한다. 그리고, 통신 프로세스가 그 액세스를 수취하여 대기 상태로 되어, 어플리케이션 소프트웨어에 의해 서비스의 처리가 완료된 시점에서 그 처리 결과를 클라이언트(10)에게 송신하도록 해도 된다. 이와 같이 하면, 서버(20)로부터의 능동적인 액션으로 클라이언트(10)에 데이터를 송신할 수 있다.
이상 상세하게 설명한 바와 같이, 본 실시예에서는, 클라이언트(10)로부터 라우터(40, 50)를 통하여 서버(20)에 액세스를 행했을 때, 서버(20)에 있어서, 라우터(50)에 의해 글로벌 어드레스로부터 로컬 어드레스로 변환되어 도달한 IP 어드레스에 대하여 임의의 시스템 ID를 부여함으로써 새로운 접속 어드레스를 생성하고, 그 시스템 ID를 클라이언트(10)에게 통지한다. 또한, 클라이언트(10)와 통신을 행하기 위한 통신 프로세스를 생성하여, 이후의 클라이언트(10)와의 통신은 상기 통신 프로세스가 새로운 접속 어드레스에 기초하여 행하도록 하고 있다.
이와 같이 구성한 본 실시예에 의하면, 클라이언트(10)로부터 서버(20)에 대하여 액세스를 행했을 때, 그 후의 통신을 위해 통신 프로세스가 생성되고, 상기 통신 프로세스로 사용해야 할 새로운 접속 어드레스가 설정된다. 이 때, 설정되는 새로운 접속 어드레스는, 클라이언트(10)로부터 서버(20)로의 액세스 시에 사용된 IP 어드레스가 그대로 승계되어, 임의의 시스템 ID가 부여되는 형태로 설정된다.
그러므로, IP 어드레스 그 자체에 변경은 없기 때문에, 글로벌 어드레스와 로컬 어드레스를 1 대 1의 관계로 대응시킨 라우터(40, 50)의 NAT 기능을 문제없이 사용할 수 있다. 또한, 사용 가능한 수에 제한이 있는 포트 번호가 아니고, 임의의 시스템 ID를 부여하는 형태로 새로운 접속 어드레스가 설정되므로, NAT를 초과하여 동시에 서비스 제공할 수 있는 클라이언트(10)의 수를 많이 할 수도 있다. 즉, 1개의 포트 번호로 복수의 클라이언트(10)로부터의 통신을 받을 수 있다.
또한, NAT 초과를 위해 전용 프로토콜을 사용할 필요도 없고, HTTP의 프로토콜을 사용하면서 본 발명에 의한 NAT 초과의 구성을 적용할 수 있다. 이 HTTP에 .NET Remoting을 조합함으로써, 바이너리 형식으로의 데이터 통신을 간단하게 실현할 수도 있다.
그리고, 상기 실시예에서는, IP 어드레스에 대하여 시스템 ID와 포트 번호를 부가하여 이루어지는 접속 어드레스를 사용하는 예에 대하여 설명하였으나, 본 발명은 이에 한정되지 않는다. 예를 들면, IP 어드레스에 대하여 시스템 ID만을 부가하여 이루어지는 접속 어드레스를 사용하도록 해도 된다.
또한, 상기 실시예에서는, 제1 통신 처리부(11)가 액세스 접수부(21)에 액세스할 때 사용하는 접속 어드레스에도 시스템 ID와 포트 번호를 사용하는 예에 대하여 설명하였으나, 본 발명은 이에 한정되지 않는다. 예를 들면, 제1 통신 처리부(11)가 액세스 접수부(21)에 액세스할 때 사용하는 접속 어드레스에는 시스템 ID와 포트 번호를 사용하지 않고, IP 어드레스만으로도 된다.
또한, 상기 실시예에서는, 제1 통신 처리부(11)가 액세스 접수부(21)에 액세스할 때 사용하는 접속 어드레스에 있어서 IP 어드레스에 부여하는 식별 정보로서, 양방향 통신 시스템에 고유의 시스템 ID를 사용하는 예에 대하여 설명하였으나, 본 발명은 이에 한정되지 않는다. 즉, 고정된 식별 정보이면, 시스템 ID 이외의 정보를 사용해도 된다.
[산업 상의 이용 가능성]
본 발명은, 클라이언트가 인터넷 상의 라우터를 통하여 서버에 접속 가능하게 구성되며, 서버 상의 어플리케이션 소프트웨어에 의해 클라이언트로부터의 요구에 따른 서비스를 제공하도록 이루어진 SaaS형의 양방향 통신 시스템에 이용 가능하다.

Claims (3)

  1. 클라이언트가 인터넷 상의 라우터(router)를 통하여 서버에 접속 가능하게 구성되며, 상기 서버가 어플리케이션 소프트웨어에 의해 상기 클라이언트로부터의 요구에 따른 서비스를 제공하도록 이루어진 양방향 통신 시스템으로서,
    상기 서버는, 상기 클라이언트로부터 서비스 요구를 위해 상기 라우터를 통하여 행해지는 액세스를 받아들이는 액세스 접수부;
    상기 액세스 접수부에 의해 상기 액세스가 접수되었을 때, 상기 라우터에 의해 글로벌 어드레스로부터 로컬 어드레스로 변환되어 도달한 IP 어드레스에 부여되어 있는 소정의 식별 정보를 그것과는 다른 식별 정보로 치환함으로써 새로운 접속 어드레스를 생성하는 어드레스 생성부;
    상기 어드레스 생성부에 의해 생성된 상기 새로운 접속 어드레스를 사용하고, 상기 라우터를 통하여 상기 클라이언트에게 상기 식별 정보를 통지하는 식별 정보 통지부;
    상기 어드레스 생성부에 의해 생성된 상기 새로운 접속 어드레스에 기초하여 상기 클라이언트와 통신하기 위한 통신 프로세스를 생성하는 통신 프로세스 생성부
    를 포함하고,
    상기 클라이언트는, 상기 서버의 상기 액세스 접수부에 대하여 상기 액세스를 행하는 제1 통신 처리부와,
    상기 식별 정보 통지부에 의해 통지된 상기 식별 정보를 IP 어드레스에 부여함으로써 생성한 상기 새로운 접속 어드레스를 사용하고, 상기 통신 프로세스 생성부에 의해 생성된 통신 프로세스와의 사이에서 통신을 행함으로써 상기 서비스의 제공을 받는 제2 통신 처리부를 구비한, 양방향 통신 시스템.
  2. 제1항에 있어서,
    상기 클라이언트의 상기 제1 통신 처리부는, IP 어드레스에 대하여 소정의 식별 정보를 부가하여 이루어지는 접속 어드레스를 사용하여 상기 액세스 접수부에 대하여 상기 액세스를 행하고,
    상기 서버의 상기 어드레스 생성부는, 상기 라우터에 의해 글로벌 어드레스로부터 로컬 어드레스로 변환되어 도달한 상기 IP 어드레스에 부여되어 있는 상기 소정의 식별 정보를 임의의 식별 정보로 치환함으로써 상기 새로운 접속 어드레스를 생성하는, 양방향 통신 시스템.
  3. 인터넷 상의 라우터를 통하여 클라이언트와 접속 가능하게 구성되며, 어플리케이션 소프트웨어에 의해 상기 클라이언트로부터의 요구에 따른 서비스를 제공하도록 이루어진 서버 장치로서,
    상기 클라이언트로부터 서비스 요구를 위해 상기 라우터를 통하여 행해지는 액세스를 받아들이는 액세스 접수부;
    상기 액세스 접수부에 의해 상기 액세스가 접수되었을 때, 상기 라우터에 의해 글로벌 어드레스로부터 로컬 어드레스로 변환되어 도달한 IP 어드레스에 부여되어 있는 소정의 식별 정보를 그것과는 다른 식별 정보로 치환함으로써 새로운 접속 어드레스를 생성하는 어드레스 생성부;
    상기 어드레스 생성부에 의해 생성된 상기 새로운 접속 어드레스를 사용하고, 상기 라우터를 통하여 상기 클라이언트에 상기 식별 정보를 통지하는 식별 정보 통지부;
    상기 어드레스 생성부에 의해 생성된 상기 새로운 접속 어드레스에 기초하여 상기 클라이언트와 통신하기 위한 통신 프로세스를 생성하는 통신 프로세스 생성부
    를 포함하고,
    상기 통신 프로세스 생성부에 의해 생성된 상기 통신 프로세스는, 상기 새로운 접속 어드레스를 사용하여 상기 클라이언트와 통신하도록 이루어진, 서버 장치.
KR1020127026714A 2010-05-11 2010-05-11 양방향 통신 시스템 및 이에 사용하는 서버 장치 KR101696210B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/057928 WO2011141993A1 (ja) 2010-05-11 2010-05-11 双方向通信システムおよびこれに用いるサーバ装置

Publications (2)

Publication Number Publication Date
KR20130076797A KR20130076797A (ko) 2013-07-08
KR101696210B1 true KR101696210B1 (ko) 2017-01-13

Family

ID=44914062

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127026714A KR101696210B1 (ko) 2010-05-11 2010-05-11 양방향 통신 시스템 및 이에 사용하는 서버 장치

Country Status (10)

Country Link
US (1) US9838223B2 (ko)
EP (1) EP2571207B1 (ko)
JP (1) JP5326045B2 (ko)
KR (1) KR101696210B1 (ko)
CN (1) CN102918811B (ko)
DK (1) DK2571207T3 (ko)
ES (1) ES2666345T3 (ko)
NO (1) NO2571207T3 (ko)
PL (1) PL2571207T3 (ko)
WO (1) WO2011141993A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6527660B2 (ja) * 2013-07-29 2019-06-05 小松電機産業株式会社 情報監視システム
CN105376225B (zh) * 2015-11-02 2019-07-26 亚信科技(南京)有限公司 一种软件服务化的方法及装置
US10911407B1 (en) 2020-08-04 2021-02-02 Palo Alto Networks, Inc. Localization at scale for a cloud-based security service

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040139228A1 (en) * 2003-01-15 2004-07-15 Yutaka Takeda Peer-to-peer (P2P) connection despite network address translators (NATs) at both ends
US20070147419A1 (en) * 2004-04-20 2007-06-28 Takahiro Tsujimoto Communication network system and communication apparatus

Family Cites Families (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10247946A (ja) * 1997-03-03 1998-09-14 Nippon Telegr & Teleph Corp <Ntt> ネットワーク接続方式および方法ならびにネームサーバ
US7908481B1 (en) * 1999-12-17 2011-03-15 Avaya Inc. Routing data to one or more entities in a network
US6947992B1 (en) * 2000-05-01 2005-09-20 International Business Machines Corporation Maintaining HTTP session affinity in a cluster environment
US6661799B1 (en) * 2000-09-13 2003-12-09 Alcatel Usa Sourcing, L.P. Method and apparatus for facilitating peer-to-peer application communication
US7003574B1 (en) * 2000-11-01 2006-02-21 Microsoft Corporation Session load balancing and use of VIP as source address for inter-cluster traffic through the use of a session identifier
US20020083342A1 (en) * 2000-12-21 2002-06-27 Webb Brian T. Systems, methods and computer program products for accessing devices on private networks via clients on a public network
JP3548157B2 (ja) * 2001-12-26 2004-07-28 アライドテレシス株式会社 中継機器、アドレス変換制御方法、及びプログラム
TW574805B (en) * 2002-07-25 2004-02-01 Leadtek Research Inc Network address translation system and method thereof
CN101505275A (zh) * 2002-09-20 2009-08-12 松下电器产业株式会社 连接多个数据通信网络的中间网络元件
JP3445986B1 (ja) * 2002-09-27 2003-09-16 松下電器産業株式会社 インターネットに接続するサーバ、機器および通信システム
US7305481B2 (en) * 2003-01-07 2007-12-04 Hexago Inc. Connecting IPv6 devices through IPv4 network and network address translator (NAT) using tunnel setup protocol
US7366188B2 (en) * 2003-01-21 2008-04-29 Samsung Electronics Co., Ltd. Gateway for supporting communications between network devices of different private networks
US7363378B2 (en) 2003-07-01 2008-04-22 Microsoft Corporation Transport system for instant messaging
JP4029790B2 (ja) * 2003-07-09 2008-01-09 ブラザー工業株式会社 パケット通信制御装置及びパケット通信制御方法
JP4297747B2 (ja) * 2003-08-06 2009-07-15 株式会社日立製作所 ストレージ装置
JP4269226B2 (ja) * 2003-11-14 2009-05-27 ソニー株式会社 情報通信システムおよび方法、情報処理装置および方法、プログラム並びに記録媒体
CN1943209A (zh) * 2004-04-20 2007-04-04 松下电器产业株式会社 通信网络系统和通信装置
JP2006050125A (ja) * 2004-08-03 2006-02-16 Matsushita Electric Ind Co Ltd 情報処理システム、情報処理装置、サーバ装置、及び情報処理方法
US7706401B2 (en) * 2004-08-13 2010-04-27 Verizon Business Global Llc Method and system for providing interdomain traversal in support of packetized voice transmissions
US7466810B1 (en) * 2004-12-20 2008-12-16 Neltura Technology, Inc. Distributed system for sharing of communication service resources between devices and users
JP2006180295A (ja) * 2004-12-22 2006-07-06 Matsushita Electric Ind Co Ltd アドレス変換装置およびアドレス変換方法
JP4514623B2 (ja) * 2005-02-25 2010-07-28 パナソニック株式会社 情報処理システム、情報処理装置、サーバ装置、及び情報処理方法
JP4597706B2 (ja) * 2005-02-25 2010-12-15 パナソニック株式会社 情報処理システム、情報処理装置、サーバ装置、及び情報処理方法
US20070022289A1 (en) * 2005-07-20 2007-01-25 Mci, Inc. Method and system for providing secure credential storage to support interdomain traversal
JP2007124486A (ja) * 2005-10-31 2007-05-17 Toshiba Corp 通信制御方法
JP2007124487A (ja) * 2005-10-31 2007-05-17 Toshiba Corp 通信制御方法
KR100803273B1 (ko) * 2005-12-27 2008-02-13 삼성전자주식회사 패킷 터널링하는 isatap 라우터 및 그 방법
CN101047548A (zh) * 2006-03-31 2007-10-03 株式会社日立制作所 多个nat的私有网络内的通信
JP4763560B2 (ja) * 2006-09-14 2011-08-31 富士通株式会社 接続支援装置
US7840701B2 (en) * 2007-02-21 2010-11-23 Array Networks, Inc. Dynamic system and method for virtual private network (VPN) packet level routing using dual-NAT method
US20080306798A1 (en) * 2007-06-05 2008-12-11 Juergen Anke Deployment planning of components in heterogeneous environments
JP2009165041A (ja) * 2008-01-09 2009-07-23 Sony Corp ネットワーク機器、アドレス変更通知方法及びアドレス変更通知プログラム
US20090249222A1 (en) * 2008-03-25 2009-10-01 Square Products Corporation System and method for simultaneous media presentation
US8165090B2 (en) * 2008-05-15 2012-04-24 Nix John A Efficient handover of media communications in heterogeneous IP networks
US8165091B2 (en) * 2008-06-27 2012-04-24 Nix John A Efficient handover of media communications in heterogeneous IP networks using LAN profiles and network handover rules
EP2364543B1 (en) * 2008-12-08 2017-02-15 Telefonaktiebolaget LM Ericsson (publ) Broadband network access
JP5222201B2 (ja) * 2009-03-27 2013-06-26 株式会社野村総合研究所 Webコンテンツ表示監視システム
US8165122B2 (en) * 2009-05-26 2012-04-24 Alcatel Lucent System and method for converting unicast client requests into multicast client requests
JP5333599B2 (ja) * 2009-10-30 2013-11-06 富士通株式会社 アドレス変換装置、アドレス変換方法、およびアドレス変換プログラム
US8874785B2 (en) * 2010-02-15 2014-10-28 Damaka, Inc. System and method for signaling and data tunneling in a peer-to-peer environment
US8260840B1 (en) * 2010-06-28 2012-09-04 Amazon Technologies, Inc. Dynamic scaling of a cluster of computing nodes used for distributed execution of a program
US8869275B2 (en) * 2012-11-28 2014-10-21 Verisign, Inc. Systems and methods to detect and respond to distributed denial of service (DDoS) attacks
JP6008801B2 (ja) * 2013-07-08 2016-10-19 株式会社日立製作所 伝送システム、送信方法、及び伝送装置
US9325621B1 (en) * 2013-11-27 2016-04-26 Sprint Communications Company L.P. Wireless device offload

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040139228A1 (en) * 2003-01-15 2004-07-15 Yutaka Takeda Peer-to-peer (P2P) connection despite network address translators (NATs) at both ends
US20070147419A1 (en) * 2004-04-20 2007-06-28 Takahiro Tsujimoto Communication network system and communication apparatus

Also Published As

Publication number Publication date
CN102918811B (zh) 2016-03-23
PL2571207T3 (pl) 2018-07-31
ES2666345T3 (es) 2018-05-04
CN102918811A (zh) 2013-02-06
NO2571207T3 (ko) 2018-08-04
KR20130076797A (ko) 2013-07-08
US20130060847A1 (en) 2013-03-07
JPWO2011141993A1 (ja) 2013-07-22
WO2011141993A1 (ja) 2011-11-17
EP2571207A1 (en) 2013-03-20
JP5326045B2 (ja) 2013-10-30
EP2571207A4 (en) 2015-04-15
EP2571207B1 (en) 2018-03-07
DK2571207T3 (en) 2018-04-23
US9838223B2 (en) 2017-12-05

Similar Documents

Publication Publication Date Title
CN107018147B (zh) 一种物联网通信方法及系统、网关模块
US20130275492A1 (en) Enabling Web Clients to Provide Web Services
KR102407334B1 (ko) 게이트웨이 장치 및 그 동작 방법
US20070150611A1 (en) DNS based client-server system and its use in electronic devices
EP1401169A1 (en) Method and system using a Meta service selector for deploying services over a plurality of networks
KR101696210B1 (ko) 양방향 통신 시스템 및 이에 사용하는 서버 장치
CN106341453A (zh) 一种基于html5的高速虚拟桌面代理构建方法与系统
CN112104640A (zh) 网关的数据处理方法、装置、设备及可读存储介质
US10284606B2 (en) Setting up communication between a web application and a terminal
US20070130312A1 (en) Web service provision apparatus and method and web service request apparatus and method
KR100758791B1 (ko) 홈네트워크 장치 제어를 위한 프록시 장치 및 그 방법
CN102497364A (zh) 用于桥接IGRS设备和UPnP设备的桥接器及方法
CN101465783B (zh) 异构家庭网络设备之间的连接方法、装置及连接网桥
KR20090042542A (ko) 더미 메시지를 이용하여 웹 서비스의 품질 데이터를추출하는 방법
CN105162618A (zh) 一种基于Smart PnP协议的设备互连方法及系统
EP4099164A1 (en) Architecture to employ machine-learning model
EP3328027A1 (en) Device and method for transmitting data
CN115348319B (zh) 一种基于spice协议云桌面管理链接方法、系统及设备
JP2002358280A (ja) クライアントサーバシステム
US20060085501A1 (en) Mediation system for browsing Internet applications and non-Internet applications
CN115914377A (zh) 跨系统的通信方法、装置、电子设备及存储介质
JP5555120B2 (ja) コンテンツ提供方法、コンテンツ取得方法、コンテンツ提供システム及び端末装置
JP2018029226A (ja) 通信システム、および、通信方法
JP2004015482A (ja) テレビ通信システム
JP2005031905A (ja) メソッド呼出装置

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

Year of fee payment: 14