KR101446974B1 - 중계 통신 시스템 및 중계 서버 - Google Patents

중계 통신 시스템 및 중계 서버 Download PDF

Info

Publication number
KR101446974B1
KR101446974B1 KR1020137015746A KR20137015746A KR101446974B1 KR 101446974 B1 KR101446974 B1 KR 101446974B1 KR 1020137015746 A KR1020137015746 A KR 1020137015746A KR 20137015746 A KR20137015746 A KR 20137015746A KR 101446974 B1 KR101446974 B1 KR 101446974B1
Authority
KR
South Korea
Prior art keywords
relay server
information
vlan
client terminal
relay
Prior art date
Application number
KR1020137015746A
Other languages
English (en)
Other versions
KR20130096302A (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 KR20130096302A publication Critical patent/KR20130096302A/ko
Application granted granted Critical
Publication of KR101446974B1 publication Critical patent/KR101446974B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • 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
    • 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
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

서로 통신 가능한 복수의 중계 서버를 갖는 중계 통신 시스템을 구축하는 점에서 가상 네트워크를 동적으로 작성한다. 중계 통신 시스템에 있어서 VLAN 그룹을 구성하는 VLAN 클라이언트 단말 사이에서 VLAN 그룹 정보를 공유시킨다. VLAN 그룹 정보에 의거하여 VLAN 클라이언트 단말 중 기동 가능한 VLAN 디바이스간에 있어서 VLAN 세션을 확립하고, 또한 VLAN 그룹을 기동할 때에 작성한 가상 어드레스 정보를 VLAN 디바이스 사이에서 공유하는 처리를 행한다. VLAN 디바이스는 부여된 가상 어드레스를 VLAN 디바이스의 VLAN 인터페이스에 설정하고, 가상 어드레스 및 VLAN 세션을 이용해서 다른 VLAN 디바이스와 통신을 행한다.

Description

중계 통신 시스템 및 중계 서버{RELAY COMMUNICATION SYSTEM AND RELAY SERVERS}
본 발명은 서로 통신 가능한 복수의 중계 서버와, 복수의 클라이언트 단말과, 클라이언트 단말을 중계 서버에 접속하는 LAN을 갖는 중계 통신 시스템에 관한 것이고, 또한 중계 통신 시스템에 사용되는 중계 서버에 관한 것이다.
원격의 LAN에 접속되는 클라이언트 단말이 WAN을 초월해서 통신하는 경우가 있다. VPN(Virtual Private Network)은 원격의 LAN이 직접적으로 접속되어 있는 것과 같은 네트워크를 구축할 수 있다. 그러나, VPN은 확장성 및 유연성이 있는 네트워크를 구축하는 것이 곤란하다.
특허문헌 1이 개시하는 중계 통신 시스템은 VPN과 마찬가지로 원격의 LAN이 직접적으로 접속되어 있는 것과 같은 네트워크를 구축할 수 있다. 또한, 중계 통신 시스템은 VPN과 달리 확장성 및 유연성이 있는 네트워크를 구축하는 것이 용이하다.
일본 특허 공개 2008-129991호 공보
특허문헌 1이 개시하는 중계 통신 시스템에 있어서, LAN 및 클라이언트 단말의 증감 상태 및 접속 상태가 변화되는 경우가 있다. 그러나, 특허문헌 1에서는 클라이언트 단말 및 중계 서버가 통신처를 지정하는 것에 있어서 장치의 증감 상태 및 접속 상태를 리얼타임으로 확인하는 구체적인 수단은 개시되어 있지 않다. 또한, 클라이언트 단말 및 중계 서버 사이에 있어서의 가상 네트워크를 동적으로 구축하기 위한 구체적인 수단은 개시되어 있지 않다.
본 발명의 목적은 서로 통신 가능한 복수의 중계 서버를 갖는 중계 통신 시스템을 구축하는 점에서 가상 네트워크를 동적으로 작성하는 것이다.
이하에, 과제를 해결하기 위한 수단으로서 복수의 형태를 설명한다. 이들 형태는 필요에 따라서 임의로 조합시킬 수 있다.
본 발명의 하나의 견지에 의한 중계 통신 시스템은 제 1 네트워크와, 제 2 네트워크와, 제 1 네트워크에 접속되는 제 1 중계 서버와, 제 2 네트워크에 접속되고 제 3 네트워크를 통해서 제 1 중계 서버와 통신 가능한 제 2 중계 서버와, 제 1 중계 서버와 제 1 네트워크를 통해서 접속되는 클라이언트 단말과, 제 2 중계 서버와 제 2 네트워크를 통해서 접속되는 클라이언트 단말을 구비한다.
제 1 중계 서버, 제 2 중계 서버, 제 1 중계 서버에 접속되는 클라이언트 단말 및 제 2 중계 서버에 접속되는 클라이언트 단말은 중계 그룹 정보 격납부와, 중계 서버 정보 격납부와, 정보 공유부와, VLAN 그룹 정보 제어부를 갖는다. 중계 그룹 정보 격납부에는 제 1 중계 서버, 제 2 중계 서버, 제 1 중계 서버에 접속되는 클라이언트 단말 및 제 2 중계 서버에 접속되는 클라이언트 단말이 중계 그룹을 구성하는 것을 나타내는 중계 그룹 정보가 격납된다. 중계 서버 정보 격납부에는 제 1 중계 서버의 기동 정보와, 제 2 중계 서버의 기동 정보와, 제 1 중계 서버에 접속되는 클라이언트 단말의 기동·등록 정보와, 제 2 중계 서버에 접속되는 클라이언트 단말의 기동·등록 정보를 포함하는 중계 서버 정보가 격납된다. 정보 공유부는 중계 그룹 정보 및 중계 서버 정보를 제 1 중계 서버, 제 2 중계 서버, 제 1 중계 서버에 접속되는 클라이언트 단말 및 제 2 중계 서버에 접속되는 클라이언트 단말 사이에서 공유시킨다. VLAN 그룹 정보 제어부는 제 1 중계 서버에 접속된 클라이언트 단말 및 제 2 중계 서버에 접속된 클라이언트 단말 중 둘 이상의 클라이언트 단말인 중계 그룹에 있어서 VLAN 그룹을 구성하는 VLAN 클라이언트 단말 사이에서 VLAN 그룹 정보를 공유시킨다. VLAN 그룹 정보는 VLAN 클라이언트 단말이 접속된 제 1 중계 서버의 식별 정보 및 제 2 중계 서버의 식별 정보를 포함하는 허브 정보와, 제 1 중계 서버 및 제 2 중계 서버 사이에서 확립되는 세션의 접속측과 피접속측을 나타내는 세션 정보와, VLAN 클라이언트 단말을 식별하는 식별 정보를 포함한다.
제 1 중계 서버 및 제 2 중계 서버는 기동 커맨드 제어부와, VLAN 세션 제어부를 더 갖는다. 기동 커맨드 제어부는 VLAN 그룹의 기동 지시를 수신했을 경우에 기동 가능한 VLAN 클라이언트 단말로서의 VLAN 디바이스의 어드레스 정보를 포함하는 응답 신호를 송신한다. VLAN 세션 제어부는 세션 정보에 의거하여 제 1 중계 서버와 제 2 중계 서버 사이에 VLAN 세션으로서의 허브 세션을 확립하고, 제 1 중계 서버 또는 제 2 중계 서버와 제 1 중계 서버 또는 제 2 중계 서버에 접속된 VLAN 디바이스 사이에 VLAN 세션으로서의 디바이스 세션을 확립한다.
제 1 중계 서버에 접속되는 클라이언트 단말 및 제 2 중계 서버에 접속되는 클라이언트 단말은 응답 신호에 의거하여 VLAN 디바이스 각각에 대하여 부여되는 가상 어드레스를 포함하는 가상 어드레스 정보를 작성하고, 가상 어드레스 정보를 VLAN 디바이스에 송신하는 가상 어드레스 제어부를 더 갖는다.
여기에서, 제 1 중계 서버에 접속되는 클라이언트 단말 및 제 2 중계 서버에 접속되는 클라이언트 단말은 VLAN 디바이스일 경우에 부여된 가상 어드레스를 클라이언트 단말의 VLAN 인터페이스에 설정하고, 가상 어드레스 정보 및 VLAN 세션을 이용해서 다른 VLAN 디바이스와 통신한다.
여기에서는 VLAN 그룹 사이에서 VLAN 그룹 정보를 공유하고, VLAN 디바이스 사이에 VLAN 세션을 확립하고, VLAN 그룹을 기동할 때에 작성한 가상 어드레스 정보를 VLAN 디바이스 사이에서 공유하는 처리가 행해진다. 또한, VLAN 디바이스는 부여된 가상 어드레스를 클라이언트 단말의 VLAN 인터페이스에 설정한다. 그 결과, 가상 어드레스 정보 및 VLAN 세션을 이용해서 클라이언트 단말끼리가 VLAN 디바이스로서 서로 통신 가능해진다.
제 1 중계 서버 및 제 2 중계 서버는 VLAN 디바이스 사이의 통신을 제어하는 중계 서버 통신 제어부를 더 갖고 있어도 좋다. 중계 서버 통신 제어부는 통신 패킷을 수신했을 경우, 수신한 통신 패킷을 해석해서 통신 패킷에 가상 어드레스가 포함되어 있으면, 가상 어드레스를 참조하여 가상 어드레스가 부여된 VLAN 디바이스와 접속된 제 1 중계 서버 또는 제 2 중계 서버에 허브 세션을 통해서 통신 패킷을 송신한다. 또는 중계 서버 통신 제어부는 가상 어드레스를 참조하여 디바이스 세션을 통해서 가상 어드레스가 부여된 VLAN 디바이스에 대하여 통신 패킷을 송신한다.
제 1 중계 서버, 제 2 중계 서버, 제 1 중계 서버에 접속되는 클라이언트 단말 및 제 2 중계 서버에 접속되는 클라이언트 단말은 VLAN 클라이언트 단말의 접속의 변화에 따라서 VLAN 그룹 정보를 갱신하는 VLAN 그룹 정보 갱신부를 더 갖고 있어도 좋다.
중계 통신 시스템은 제 3 네트워크를 통해서 제 1 중계 서버 및 제 2 중계 서버와 통신 가능하며 중계 그룹을 구성하는 제 3 중계 서버를 더 구비하고 있어도 좋다. 중계 그룹 정보 및 중계 서버 정보에는 제 3 중계 서버의 정보가 더 포함되어 있어도 좋다. 여기에서, VLAN 그룹 정보 갱신부는 VLAN 그룹의 기동 지시를 수신했을 경우에 VLAN 클라이언트 단말이 허브 정보에 나타내어진 제 1 중계 서버 및 제 2 중계 서버와는 다른 제 3 중계 서버에 접속되어 있으면, VLAN 그룹의 허브 정보에 제 3 중계 서버의 식별 정보를 추가하고, 제 3 중계 서버를 포함하는 세션 정보를 작성해서 VLAN 그룹 정보를 갱신해도 좋다.
가상 어드레스는 VLAN 디바이스에 부여되는 가상 IP 어드레스 및 가상 MAC 어드레스를 포함하고 있어도 좋다.
본 발명의 다른 하나의 견지에 의한 중계 서버는 제 1 네트워크에 접속되는 제 1 중계 서버와 통신 가능하고, 제 2 네트워크에 접속되는 제 2 중계 서버로서 기능하는 중계 서버이다. 중계 서버는 중계 그룹 정보 격납부와, 중계 서버 정보 격납부와, 정보 공유부와, VLAN 그룹 정보 제어부와, 기동 커맨드 제어부와, 가상 어드레스 제어부와, VLAN 세션 제어부와, 중계 서버 통신 제어부를 구비한다. 중계 그룹 정보 격납부에는 제 1 중계 서버, 제 2 중계 서버, 제 1 중계 서버에 접속되는 클라이언트 단말 및 제 2 중계 서버에 접속되는 클라이언트 단말이 중계 그룹을 구성하는 것을 나타내는 중계 그룹 정보가 격납된다. 중계 서버 정보 격납부에는 제 1 중계 서버의 기동 정보와, 제 2 중계 서버의 기동 정보와, 제 1 중계 서버에 접속되는 클라이언트 단말의 기동·등록 정보와, 제 2 중계 서버에 접속되는 클라이언트 단말의 기동·등록 정보를 포함하는 중계 서버 정보가 격납된다. 정보 공유부는 중계 그룹 정보 및 중계 서버 정보를 제 1 중계 서버, 제 2 중계 서버, 제 1 중계 서버에 접속되는 클라이언트 단말, 및 제 2 중계 서버에 접속되는 클라이언트 단말 사이에서 공유시킨다. VLAN 그룹 정보 제어부는 제 1 중계 서버에 접속된 클라이언트 단말 및 제 2 중계 서버에 접속된 클라이언트 단말 중 둘 이상의 클라이언트 단말인 중계 그룹에 있어서 VLAN 그룹을 구성하는 VLAN 클라이언트 단말 사이에서 VLAN 그룹 정보를 공유시킨다. VLAN 그룹 정보는 VLAN 클라이언트 단말이 접속된 제 1 중계 서버의 식별 정보 및 제 2 중계 서버의 식별 정보를 포함하는 허브 정보와, 제 1 중계 서버와 제 2 중계 서버 사이에서 확립되는 세션의 접속측과 피접속측을 나타내는 세션 정보와, VLAN 클라이언트 단말을 식별하는 식별 정보를 포함한다. 기동 커맨드 제어부는 VLAN 그룹의 기동 지시를 수신했을 경우에 기동 가능한 VLAN 클라이언트 단말로서의 VLAN 디바이스의 어드레스 정보를 포함하는 응답 신호를 송신한다. 가상 어드레스 제어부는 응답 신호에 의거하여 작성된 VLAN 디바이스 각각에 대하여 부여되는 가상 어드레스를 포함하는 가상 어드레스 정보를 수신하면, VLAN 디바이스에 가상 어드레스 정보를 송신한다. VLAN 세션 제어부는 세션 정보에 의거하여 제 1 중계 서버와의 사이에 VLAN 세션으로서의 허브 세션을 확립하고, 제 2 중계 서버와 제 2 중계 서버에 접속된 VLAN 디바이스 사이에 VLAN 세션으로서의 디바이스 세션을 확립한다. 중계 서버 통신 제어부는 가상 어드레스 및 VLAN 세션을 이용한 VLAN 디바이스 사이의 통신을 제어한다.
중계 서버 통신 제어부는 통신 패킷을 수신했을 경우, 수신한 통신 패킷을 해석해서 통신 패킷이 가상 어드레스 정보를 포함하고 있으면, 가상 어드레스를 참조하여 가상 어드레스가 부여된 VLAN 디바이스와 접속된 중계 서버에 통신 패킷을 허브 세션을 통해서 송신해도 좋다. 또는 중계 서버 통신 제어부는 통신 패킷을 수신했을 경우, 수신한 통신 패킷을 해석해서 통신 패킷이 가상 어드레스 정보를 포함하고 있으면, 가상 어드레스를 참조하여 디바이스 세션을 통해서 가상 어드레스가 부여된 VLAN 디바이스에 대하여 통신 패킷을 송신해도 좋다.
중계 서버는 VLAN 클라이언트 단말의 접속의 변화에 따라서 VLAN 그룹 정보를 갱신하는 VLAN 그룹 정보 갱신부를 더 구비하고 있어도 좋다.
VLAN 그룹 정보 갱신부는 VLAN 그룹의 기동 지시를 수신했을 경우에 VLAN 클라이언트 단말이 허브 정보에 나타내어진 제 1 중계 서버 및 제 2 중계 서버와는 달리 중계 그룹을 구성하는 제 3 중계 서버에 접속되어 있으면, VLAN 그룹의 허브 정보에 제 3 중계 서버의 식별 정보를 추가하고, 제 3 중계 서버를 포함하는 세션 정보를 작성해서 VLAN 그룹 정보를 갱신해도 좋다.
가상 어드레스는 VLAN 디바이스에 부여되는 가상 IP 어드레스 및 가상 MAC 어드레스를 포함하고 있어도 좋다.
(발명의 효과)
본 발명에 의한 중계 통신 시스템에서는 서로 통신 가능한 복수의 중계 서버를 갖는 중계 통신 시스템을 구축하는 점에서 가상 네트워크를 동적으로 작성할 수 있고, 가상 어드레스 및 VLAN 세션을 사용해서 클라이언트 단말끼리가 VLAN 디바이스로서 서로 통신 가능해진다.
도 1은 중계 통신 시스템의 전체 구성을 나타내는 모식도이다.
도 2는 제 1 중계 서버의 구성을 나타내는 블록도이다.
도 3은 제 1 클라이언트 단말의 구성을 나타내는 블록도이다.
도 4는 중계 그룹 정보의 개략 구성을 나타내는 도면이다.
도 5는 중계 그룹 정보의 상세 구성을 나타내는 도면이다.
도 6은 중계 서버 정보의 개략 구성을 나타내는 도면이다.
도 7은 중계 서버 정보의 상세 구성을 나타내는 도면이다.
도 8은 제 1 중계 서버에 격납된 클라이언트 단말 정보의 개략 구성을 나타내는 도면이다.
도 9는 제 2 중계 서버에 격납된 클라이언트 단말 정보의 개략 구성을 나타내는 도면이다.
도 10은 제 3 중계 서버에 격납된 클라이언트 단말 정보의 개략 구성을 나타내는 도면이다.
도 11은 VLAN 그룹 정보의 상세 구성을 나타내는 도면이다.
도 12는 가상 어드레스 정보의 상세 구성을 나타내는 도면이다.
도 13은 중계 그룹의 구축에 관계되는 처리의 흐름을 나타내는 도면이다.
도 14는 교환 전의 중계 서버 정보의 상세 구성을 나타내는 도면이다.
도 15는 교환 전의 중계 서버 정보의 상세 구성을 나타내는 도면이다.
도 16은 교환 전의 중계 서버 정보의 상세 구성을 나타내는 도면이다.
도 17은 중계 그룹 정보 및 중계 서버 정보의 공유에 관계되는 처리의 흐름을 나타내는 도면이다.
도 18은 VLAN 그룹 정보의 작성 처리를 나타내는 플로우차트이다.
도 19는 VLAN 그룹 정보의 공유에 관계되는 처리의 흐름을 나타내는 도면이다.
도 20은 클라이언트 단말에 의한 VLAN 세션의 확립 처리를 나타내는 플로우차트이다.
도 21은 VLAN 디바이스의 IP 어드레스와 MAC 어드레스에 관한 제 1 추출 정보의 일례를 나타내는 도면이다.
도 22는 제 1 추출 정보에 제 1 클라이언트 단말의 IP 어드레스 및 MAC 어드레스를 추가한 제 2 추출 정보의 일례를 나타내는 도면이다.
도 23은 초기화 커맨드를 수신한 중계 서버에 있어서의 VLAN 세션의 확립 처리를 나타내는 플로우차트이다.
도 24는 VLAN 세션의 확립에 관계되는 처리의 흐름의 일례를 나타내는 도면이다.
1. 본 실시형태의 개요
본 실시형태에 있어서의 중계 통신 시스템에서는 허브와 마찬가지의 기능을 실현하는 복수의 중계 서버를 통해서 클라이언트 단말끼리가 WAN을 초월해서 서로 통신 가능해진다.
2. 중계 통신 시스템의 전체 구성
이하, 도면을 참조하면서 본 발명의 실시형태에 대하여 설명한다. 도 1은 중계 통신 시스템의 전체 구성을 나타낸다. 중계 통신 시스템은 제 1 LAN(1)과, 제 2 LAN(2)과, 제 3 LAN(3)과, WAN(4)으로 구성된다. 제 1 LAN(1), 제 2 LAN(2) 및 제 3 LAN(3)은 원격으로 구축되는 소규모의 네트워크이다. WAN(4)은 인터넷 등의 대규모의 네트워크이다.
이 실시형태에서는 후에 상세하게 설명하지만, 제 1 LAN(1)의 제 1 중계 서버(A)와, 제 2 LAN(2)의 제 2 중계 서버(B)와, 제 3 LAN(3)의 제 3 중계 서버(C)가 중계 그룹으로서의 제 1 중계 그룹을 구성하고 있다.
제 1 LAN(1)은 제 4 LAN(6)과 제 5 LAN(7)을 갖고 있고, 제 4 LAN(6)과 제 5 LAN(7)은 제 1 범용 라우터(8)에 의해 서로 접속되어 있다. 제 4 LAN(6)에서는 제 1 중계 서버(A)와 제 1 클라이언트 단말(A1)이 서로 접속되어 있다. 제 5 LAN(7)에서는 제 2 클라이언트 단말(A2)과 제 2 통신 기기(9)가 서로 접속되어 있다.
제 2 LAN(2)은 제 6 LAN(11)과, 제 7 LAN(12)과, 제 8 LAN(13)을 갖고 있다. 제 6 LAN(11)과 제 7 LAN(12)은 제 2 범용 라우터(14)에 의해 접속되어 있고, 제 6 LAN(11)과 제 8 LAN(13)은 제 3 범용 라우터(15)에 의해 접속되어 있다. 제 6 LAN(11)에는 제 2 중계 서버(B)가 소속되어 있다. 제 7 LAN(12)에는 제 3 클라이언트 단말(B1)이 접속되어 있다. 제 8 LAN(13)에는 제 4 클라이언트 단말(B2)이 접속되어 있다.
제 3 LAN(3)에서는 제 3 중계 서버(C)와 제 5 클라이언트 단말(C1)이 서로 접속되어 있다.
제 1 클라이언트 단말(A1), 제 2 클라이언트 단말(A2), 제 3 클라이언트 단말(B1), 제 4 클라이언트 단말(B2) 및 제 5 클라이언트 단말(C1)은, 예를 들면 퍼스널 컴퓨터이다. 또한, 제 2 통신 기기(9)도 예를 들면 퍼스널 컴퓨터이다.
제 1 중계 서버(A), 제 2 중계 서버(B) 및 제 3 중계 서버(C)는 제 1 클라이언트 단말(A1), 제 2 클라이언트 단말(A2), 제 3 클라이언트 단말(B1), 제 4 클라이언트 단말(B2) 및 제 5 클라이언트 단말(C1)의 상호간의 통신을 중계한다. 또한, 제 1 중계 서버(A), 제 2 중계 서버(B), 제 3 중계 서버(C)의 상호간의 통신 프로토콜은 특별하게 한정되지 않는다.
3. 중계 서버의 구성 요소
중계 서버는 LAN뿐만 아니라 WAN에도 접속되어 있고, 동일한 LAN에 접속되어 있는 각 클라이언트 단말과 통신 가능함과 아울러 다른 LAN에 배치된 중계 서버와 통신 가능하게 되어 있다. 그 때문에, 각 중계 서버에는 프라이빗 IP 어드레스에 추가하여 글로벌 IP 어드레스가 부여되어 있다.
도 2는 제 1 중계 서버(A)의 구성 요소를 나타낸다.
제 1 중계 서버(A)는 LAN 인터페이스(121A), WAN 인터페이스(121B), 제어부(122), 데이터베이스 격납부(123), 표시부(124) 및 조작 입력부(125)를 갖는다.
LAN 인터페이스(121A)는 프라이빗 IP 어드레스를 이용해서 제 1 LAN(1) 내의 단말에 대하여 통신을 실행한다. WAN 인터페이스(121B)는 글로벌 IP 어드레스를 이용해서 WAN(4)에 대하여 통신을 실행한다.
제어부(122)는, 예를 들면 제어 및 연산의 기능을 갖는 CPU이며, 로드된 프로그램에 의해 각종 처리를 실행 가능하다. 본 실시형태의 제어부(122)는 정보 공유부(131), VLAN 그룹 정보 제어부(132), 기동 커맨드 제어부(133), 가상 어드레스 제어부(134), VLAN 세션 제어부(135), VLAN 그룹 정보 갱신부(136) 및 중계 서버 통신 제어부(137)를 갖는다.
정보 공유부(131)는 후술하는 중계 그룹 정보, 중계 서버 정보 및 클라이언트 단말 정보의 작성 및 갱신을 행한다. 또한, 정보 공유부(131)는 작성 및 갱신된 중계 그룹 정보를 중계 그룹 내의 중계 서버 및 중계 서버에 접속된 클라이언트 단말과 공유하고, 중계 그룹 정보 격납부(141)(후술)에 격납한다. 또한, 정보 공유부(131)는 작성 및 갱신된 중계 서버 정보를 중계 그룹 내의 중계 서버 및 중계 서버에 접속된 클라이언트 단말과 공유하고, 중계 서버 정보 격납부(142)(후술)에 격납한다. 또한, 정보 공유부(131)는 작성 및 갱신된 클라이언트 단말 정보를 중계 그룹 내의 중계 서버 및 클라이언트 단말과 공유하고, 클라이언트 단말 정보 격납부(143)(후술)에 격납한다.
VLAN 그룹 정보 제어부(132)는 후술하는 VLAN 그룹 정보를 중계 그룹 내에 있어서의 VLAN 클라이언트 단말 및 VLAN 클라이언트 단말이 접속된 중계 서버와의 사이에서 공유하고, VLAN 그룹 정보 격납부(144)(후술)에 격납한다. VLAN 클라이언트 단말이란 중계 그룹 내에 있어서 VLAN 그룹을 구성하는 클라이언트 단말이다.
기동 커맨드 제어부(133)는 유저로부터 VLAN 그룹의 기동 지시를 접수한 클라이언트 단말로부터 VLAN 그룹의 기동 정보를 수신했을 경우, VLAN 그룹 정보로부터 제 1 중계 서버(A)에 접속되어 있는 VLAN 클라이언트 단말을 추출한다. 기동 정보에는 VLAN 그룹의 기동 커맨드, 기동 시각 및 VLAN 그룹 정보가 포함된다. 또한, 기동 커맨드 제어부(133)는 추출한 VLAN 클라이언트 단말이 기동 가능한지의 여부를 판단한다. 기동 가능한 VLAN 클라이언트 단말이란 현재 로그인 중이며, 또한 다른 VLAN 그룹에 현재 참가하고 있지 않은 클라이언트 단말을 말한다. 구체적으로, 기동 커맨드 제어부(133)는 중계 서버 정보 격납부(142)에 격납된 중계 서버 정보를 참조하여 추출한 VLAN 클라이언트 단말이 로그인 중인지의 여부를 판단한다. 또한, 기동 커맨드 제어부(133)는 후술하는 기동 커맨드를 송신하고, 추출한 VLAN 클라이언트 단말이 기동 가능한지의 여부를 판단하지만, 상세한 것은 후술한다. 이하, 기동 커맨드 제어부(133)에 의해 기동 가능하다고 판단된 VLAN 클라이언트 단말을 VLAN 디바이스라고 한다.
VLAN 디바이스가 있다고 판단했을 경우, 기동 커맨드 제어부(133)는 VLAN 디바이스의 IP 어드레스 및 MAC 어드레스를 포함한 응답 신호를 VLAN 그룹의 기동 정보의 송신원인 클라이언트 단말에 송신한다. VLAN 그룹 정보의 상세한 것은 후술한다.
가상 어드레스 제어부(134)는 가상 어드레스 정보 및 초기화 커맨드를 수취하면 제 1 중계 서버(A)에 접속된 VLAN 디바이스에 가상 어드레스 정보 및 초기화 커맨드를 송신한다. 또한, 가상 어드레스 제어부(134)는 가상 어드레스 정보를 가상 어드레스 정보 격납부(145)(후술)에 격납한다. 가상 어드레스 정보의 상세한 것은 후술한다. 초기화 커맨드란 VLAN 인터페이스(221B)의 초기화에 관한 커맨드이다.
VLAN 세션 제어부(135)는 VLAN 그룹 정보를 참조하여 VLAN 디바이스가 접속된 다른 중계 서버와의 사이에 VLAN 세션으로서의 허브 세션을 확립한다. 또한, VLAN 세션 제어부(135)는 VLAN 그룹 정보를 참조하여 제 1 중계 서버(A)에 접속된 VLAN 디바이스와의 사이에 VLAN 세션으로서의 디바이스 세션을 확립한다. 허브 세션이란 VLAN 디바이스가 접속된 중계 서버 사이에 있어서의 세션이다. 디바이스 세션이란 VLAN 디바이스와 VLAN 디바이스가 접속된 중계 서버와의 사이에 있어서의 세션이다.
VLAN 그룹 정보 갱신부(136)는 VLAN 그룹 정보에 변경이 있었을 경우에, 갱신된 VLAN 그룹 정보를 VLAN 클라이언트 단말 및 VLAN 클라이언트 단말이 접속되어 있는 중계 서버와의 사이에서 공유시킨다.
중계 서버 통신 제어부(137)는 LAN 인터페이스(121A) 및 WAN 인터페이스(121B)를 통해서 행하는 여러 가지 통신을 제어하는 처리부이며, TCP/IP, UDP 또는 SIP 등의 프로토콜에 따른 여러 가지 통신 처리를 제어한다. 또한, 중계 서버 통신 제어부(137)는 가상 어드레스 정보 및 VLAN 세션을 이용한 VLAN 디바이스 사이의 통신을 제어한다. 구체적으로는, 중계 서버 통신 제어부(137)는 제 1 중계 서버(A)에 접속되어 있는 클라이언트 단말로부터 LAN 인터페이스(121A)를 통해서 수신한 통신 패킷을 해석한다. 그리고, 통신 패킷에 가상 어드레스가 포함되어 있으면 가상 어드레스를 참조하여 허브 세션을 통해서 다른 중계 서버에 통신 패킷을 송신한다. 또한, 중계 서버 통신 제어부(137)는 다른 중계 서버로부터 WAN 인터페이스(121B)를 통해서 통신 패킷을 수신했을 경우, 수신한 통신 패킷을 해석한다. 그리고, 통신 패킷에 가상 어드레스가 포함되어 있으면, 중계 서버 통신 제어부(137)는 가상 어드레스가 할당되어 있는 제 1 중계 서버(A) 배하(配下)의 클라이언트 단말의 VLAN 인터페이스(후술)에 대하여 디바이스 세션을 통해서 통신 패킷을 송신한다. 한편, 가상 어드레스가 포함되어 있지 않으면, 중계 서버 통신 제어부(137)는 제 1 중계 서버(A) 배하의 클라이언트 단말의 LAN 인터페이스(후술)에 대하여 통신 패킷을 송신한다.
데이터베이스 격납부(123)는, 예를 들면 하드디스크 또는 불휘발 RAM이며, 각종 데이터를 보존 가능하다. 데이터베이스 격납부(123)는 중계 그룹 정보 격납부(141), 중계 서버 정보 격납부(142), 클라이언트 단말 정보 격납부(143), VLAN 그룹 정보 격납부(144) 및 가상 어드레스 정보 격납부(145)를 갖는다. 중계 그룹 정보 격납부(141), 중계 서버 정보 격납부(142), 클라이언트 단말 정보 격납부(143), VLAN 그룹 정보 격납부(144) 및 가상 어드레스 정보 격납부(145)에 격납되는 정보의 상세한 것은 후술한다.
또한, 제 2 중계 서버(B) 및 제 3 중계 서버(C)의 구성 요소는 제 1 중계 서버(A)와 마찬가지이므로 설명을 생략한다.
4. 클라이언트 단말의 구성 요소
클라이언트 단말은 유저가 직접 조작할 수 있는 단말이다. 클라이언트 단말은, 예를 들면 유저에 의해 매일의 업무에 이용되는 퍼스널 컴퓨터이다. 각 클라이언트 단말에는 동일한 LAN 내에서 유니크하게 관리된 프라이빗 IP 어드레스가 부여된다.
도 3은 제 1 클라이언트 단말(A1)의 구성 요소를 나타낸다. 제 1 클라이언트 단말(A1)은 LAN 인터페이스(221A), VLAN 인터페이스(221B), 제어부(222), 데이터베이스 격납부(223), 표시부(224) 및 조작 입력부(225)를 갖고 있다.
LAN 인터페이스(221A)는 프라이빗 IP 어드레스를 이용해서 제 1 LAN(1) 내의 제 1 중계 서버(A) 및 다른 단말에 대하여 통신을 실행할 수 있다.
VLAN 인터페이스(221B)는 후술하는 가상 IP 어드레스 및 디바이스 세션을 이용해서 제 1 중계 서버(A)를 통해서 제 1 중계 그룹 내의 다른 단말에 대하여 통신을 실행할 수 있다.
제어부(222)는, 예를 들면 제어 및 연산의 기능을 갖는 CPU이며, 로드된 프로그램에 의해 각종 처리를 실행 가능하다. 본 실시형태의 제어부(222)는 정보 공유부(231), VLAN 그룹 정보 제어부(232), 기동 커맨드 제어부(233), 가상 어드레스 제어부(234), VLAN 그룹 정보 갱신부(235), IP 패킷 처리부(236), VLAN 세션 제어부(237) 및 클라이언트 통신 제어부(238)를 갖는다.
정보 공유부(231)는 중계 그룹 정보를 중계 그룹 내의 중계 서버 및 중계 서버에 접속된 클라이언트 단말과 공유하고, 중계 그룹 정보 격납부(241)(후술)에 격납한다. 또한, 정보 공유부(231)는 중계 서버 정보를 중계 그룹 내의 중계 서버 및 중계 서버에 접속된 클라이언트 단말과 공유하고, 중계 서버 정보 격납부(242)(후술)에 격납한다. 또한, 정보 공유부(131)는 클라이언트 단말 정보를 중계 그룹 내의 중계 서버 및 클라이언트 단말과 공유하고, 클라이언트 단말 정보 격납부(243)(후술)에 격납한다.
VLAN 그룹 정보 제어부(232)는 중계 그룹 내의 VLAN 클라이언트 단말과 VLAN 클라이언트 단말이 접속된 중계 서버 사이에서 VLAN 그룹 정보를 공유하고, VLAN 그룹 정보 격납부(244)(후술)에 격납한다. 또한, VLAN 그룹 정보 제어부(232)는 VLAN 그룹 정보를 작성하는 VLAN 그룹 정보 작성부(232a)를 갖고, 작성한 VLAN 그룹 정보를 VLAN 클라이언트 단말에 송신한다.
기동 커맨드 제어부(233)는 VLAN 그룹의 기동 처리를 행한다. 구체적으로는, 기동 커맨드 제어부(233)는 기동하는 VLAN 그룹의 선택을 유저로부터 접수하면, VLAN 클라이언트 단말에 접속된 중계 서버 중 기동하고 있는 중계 서버에 대하여 기동 커맨드를 송신한다. 기동 커맨드는 VLAN 그룹의 기동을 통지하는 커맨드로서, 기동 시각 및 VLAN 그룹의 VLAN 그룹 정보와 함께 송신된다. 여기에서, 기동 커맨드 제어부(233)는 중계 서버 정보 격납부(242)에 격납된 중계 서버 정보를 참조하여 추출한 중계 서버가 기동 가능한지의 여부를 판단한다.
또한, 기동 커맨드 제어부(233)는 기동 커맨드에 대응한 응답 신호를 중계 서버로부터 수신하면, 응답 신호로부터 VLAN 디바이스의 IP 어드레스와 MAC 어드레스를 추출한다.
가상 어드레스 제어부(234)는 VLAN 디바이스의 IP 어드레스 및 MAC 어드레스를 포함한 응답 신호를 수신했을 경우에 가상 어드레스 정보를 작성하는 가상 어드레스 작성부(234a)를 갖고, 작성한 가상 어드레스 정보를 제 1 클라이언트 단말(A1)이 접속된 중계 서버에 송신한다. 또한, 가상 어드레스 제어부(234)는 가상 어드레스 정보 및 초기화 커맨드를 수신했을 경우, 수신한 가상 어드레스 정보를 가상 어드레스 정보 격납부(245)에 격납한다.
VLAN 그룹 정보 갱신부(235)는 VLAN 그룹 정보에 변경이 있었을 경우에, 갱신된 VLAN 그룹 정보를 VLAN 클라이언트 단말 및 VLAN 클라이언트 단말이 접속되어 있는 중계 서버와의 사이에서 공유한다.
IP 패킷 처리부(236)는 LAN 인터페이스(221A)로부터 수신한 통신 패킷을 클라이언트 통신 제어부(238)에 출력한다. 또한, IP 패킷 처리부(236)는 VLAN 인터페이스(221B)를 통해서 가상 어드레스를 포함하는 통신 패킷을 수신했을 경우, VLAN 세션 제어부(237)에 출력한다.
VLAN 세션 제어부(237)는 가상 어드레스를 포함하는 통신 패킷을 처리하고, 디바이스 세션을 VLAN 세션으로서 기능시킨다. VLAN 세션 제어부(237)는 VLAN 세션을 이용해서 가상 어드레스를 포함하는 통신 패킷을 송신할 경우에는 통신 패킷을 VLAN 인터페이스(221B)를 통해서 송신한다.
클라이언트 통신 제어부(238)는 VLAN 세션 이외의 통신 패킷을 처리하고, LAN 인터페이스(221A)를 통해서 행하는 TCP/IP, UDP 또는 SIP 등의 프로토콜에 따른 여러 가지 통신을 제어한다.
데이터베이스 격납부(223)는, 예를 들면 하드디스크 또는 불휘발 RAM이며, 각종 데이터를 보존 가능하다. 데이터베이스 격납부(223)는 중계 그룹 정보 격납부(241), 중계 서버 정보 격납부(242), 클라이언트 단말 정보 격납부(243), VLAN 그룹 정보 격납부(244) 및 가상 어드레스 정보 격납부(245)를 갖는다. 중계 그룹 정보 격납부(241)와, 중계 서버 정보 격납부(242)와, 클라이언트 단말 정보 격납부(243)와, VLAN 그룹 정보 격납부(244)와, 가상 어드레스 정보 격납부(245)에 격납되는 정보의 상세한 것은 후술한다.
또한, 제 2 클라이언트 단말(A2), 제 3 클라이언트 단말(B1), 제 4 클라이언트 단말(B2) 및 제 5 클라이언트 단말(C1)은 제 1 클라이언트 단말(A1)과 마찬가지이므로 설명을 생략한다.
5. 중계 그룹 정보
도 4는 중계 그룹 정보(20)의 개략 구성을 나타낸다. 중계 그룹 정보(20)는 중계 통신 시스템에 있어서의 각 중계 그룹의 개요를 나타내는 정보이며, 중계 서버의 중계 그룹 정보 격납부(141) 및 클라이언트 단말의 중계 그룹 정보 격납부(241)에 격납된다. 도 4는 제 1 중계 그룹이 제 1 중계 서버(A)와, 제 2 중계 서버(B)와, 제 3 중계 서버(C)로 구성되어 있는 것을 나타낸다.
도 5는 중계 그룹 정보(20)의 상세 구성을 나타낸다. 중계 그룹 정보(20)는 상위 정보(201), 하위 정보(202)로 구성된다.
상위 정보(201)는 제 1 중계 그룹 자체에 대한 정보이다. 「group id」는 중계 그룹의 식별 정보를 나타낸다. 「lastmod」는 중계 그룹 정보의 최신 갱신 시각을 나타낸다. 「name」은 중계 그룹의 명칭을 나타낸다.
하위 정보(202)는 제 1 중계 서버(A), 제 2 중계 서버(B), 제 3 중계 서버(C)에 대한 정보이다. 「site id」는 각 중계 서버의 식별 정보를 나타낸다.
중계 그룹 정보(20)는 제 1 중계 서버(A)와, 제 2 중계 서버(B)와, 제 3 중계 서버(C) 사이에서 공유되고, 각 중계 서버의 중계 그룹 정보 격납부(141)에 격납된다. 또한, 중계 그룹 정보(20)는 중계 서버와 클라이언트 단말 사이에서도 공유되고, 각 클라이언트 단말의 중계 그룹 정보 격납부(241)에 격납된다.
6. 중계 서버 정보
도 6은 중계 서버 정보(30)의 개략 구성을 나타낸다. 중계 서버 정보(30)는 중계 통신 시스템을 구성하는 중계 서버 및 클라이언트 단말의 개요를 나타내는 정보이며, 중계 서버의 중계 서버 정보 격납부(142) 및 클라이언트 단말의 중계 서버 정보 격납부(242)에 격납된다.
도 6에 나타내는 바와 같이, 제 1 중계 서버(A)에는 제 1 클라이언트 단말(A1) 및 제 2 클라이언트 단말(A2)이 접속되어 있다. 제 2 중계 서버(B)에는 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2)이 접속되어 있다. 제 3 중계 서버(C)에는 제 5 클라이언트 단말(C1)이 접속되어 있다.
도 7은 중계 서버 정보(30)의 상세 구성을 나타낸다. 중계 서버 정보(30)는 상위 정보(301-1, 301-2, 301-3) 및 하위 정보(302-1, 302-2, 302-3)로 구성된다.
상위 정보(301-1, 301-2, 301-3)는 중계 서버에 대한 정보이다. 「site id」는 중계 서버의 식별 정보를 나타낸다. 「name」은 중계 서버의 명칭을 나타낸다. 「stat」은 중계 서버가 기동하고 있는지의 여부에 대한 정보를 나타낸다.
하위 정보(302-1, 302-2, 302-3)는 클라이언트 단말에 대한 정보이다. 「div」는 클라이언트 단말의 부서명을 나타낸다. 「group」은 클라이언트 단말이 소속되는 중계 그룹의 식별 정보를 나타낸다. 「id」는 클라이언트 단말의 식별 정보를 나타낸다. 「name」는 클라이언트 단말의 명칭을 나타낸다. 「site」는 클라이언트 단말이 로그온하고 있을 경우에 로그온처의 중계 서버의 식별 정보를 나타낸다.
중계 서버 정보(30)는 제 1 중계 서버(A), 제 2 중계 서버(B), 제 3 중계 서버(C) 사이에서 공유되고, 각 중계 서버의 중계 서버 정보 격납부(142)에 있어서 격납된다. 또한, 중계 서버 정보(30)는 중계 서버 및 클라이언트 단말 사이에서 공유되고, 각 클라이언트 단말의 중계 서버 정보 격납부(242)에 격납된다.
중계 서버가 기동하고 있을 때에는 상위 정보(301-1, 301-2, 301-3)의 「stat」가 「active」로 되어 있다. 중계 서버가 기동하고 있지 않을 때에는 「stat」가 공란으로 되어 있다. 이에 따라, 중계 서버가 기동하고 있는지의 여부에 대한 정보가 중계 통신 시스템 전체로서 공유된다.
클라이언트 단말이 중계 서버에 로그온하고 있을 때에는 하위 정보(302-1, 302-2, 302-3)의 「site」에 클라이언트 단말의 로그온처의 중계 서버의 식별 정보가 기재되어 있다. 클라이언트 단말이 중계 서버에 로그온하고 있지 않을 때에는 「site」는 공란으로 되어 있다. 이에 따라, 클라이언트 단말이 중계 서버에 로그온하고 있는지의 여부에 대한 정보가 중계 통신 시스템 전체로서 공유된다.
7. 클라이언트 단말 정보
도 8, 도 9 및 도 10은 클라이언트 단말 정보의 구체예로서, 클라이언트 단말 정보(40, 50, 60)를 각각 나타낸다. 클라이언트 단말 정보는 중계 통신 시스템을 구성하는 클라이언트 단말의 상세를 나타내는 정보로서, 중계 서버의 클라이언트 단말 정보 격납부(143) 및 클라이언트 단말의 클라이언트 단말 정보 격납부(243)에 격납된다.
「addr」는 클라이언트 단말의 어드레스 정보이며, 구체적으로는 클라이언트 단말의 IP 어드레스를 나타낸다. 「div」는 클라이언트 단말의 부서명을 나타낸다. 「expr」는 클라이언트 단말의 유효 기한 정보이며, 구체적으로는 클라이언트 단말의 레지스트 유효 기한을 나타낸다. 「group」은 클라이언트 단말이 소속되는 중계 그룹의 식별 정보를 나타낸다. 「id」는 클라이언트 단말의 식별 정보를 나타낸다. 「name」은 클라이언트 단말의 명칭을 나타낸다. 「pass」는 클라이언트 단말의 패스워드를 나타낸다. 「port」는 클라이언트 단말 포트 정보이며, 구체적으로는 클라이언트 단말의 포트 번호를 나타낸다.
클라이언트 단말 정보(40, 50, 60)는 중계 그룹 내의 중계 서버와 클라이언트 단말 사이에서 공유되고, 각 중계 서버의 클라이언트 단말 정보 격납부(143) 및 각 클라이언트 단말의 클라이언트 단말 정보 격납부(243)에 격납된다.
8. VLAN 그룹 정보
VLAN 그룹 정보란 VLAN 그룹을 구성하는 VLAN 클라이언트 단말의 정보와, VLAN 클라이언트 단말이 접속된 중계 서버의 정보와, 중계 서버간의 세션 정보가 포함된 정보이다.
도 11은 VLAN 그룹 정보(70)의 상세 구성을 나타낸다. VLAN 그룹 정보(70)는 그룹 정보(71), VLAN 클라이언트 단말 정보(72) 및 세션 정보(73)를 포함한다.
그룹 정보(71)는 VLAN 그룹에 관한 정보이다. 그룹 정보(71)에 있어서, 「group」은 VLAN 그룹이 구성되는 중계 그룹의 식별 정보이다. 「id」는 VLAN 그룹의 식별 정보를 나타낸다. 「lastmod」는 VLAN 그룹 정보의 최신 갱신 시각을 나타낸다. 「name」은 VLAN 그룹의 명칭을 나타낸다.
VLAN 클라이언트 단말 정보(72)는 VLAN 그룹을 구성하는 VLAN 클라이언트 단말에 관한 정보이다. 「dev id」란 VLAN 클라이언트 단말의 식별 정보를 나타낸다. 이 예에서는 제 1 클라이언트 단말(A1), 제 3 클라이언트 단말(B1), 제 4 클라이언트 단말(B2) 및 제 5 클라이언트 단말(C1)이 VLAN 클라이언트 단말이다.
세션 정보(73)에는 허브 정보 및 경로 정보가 포함된다. 허브 정보란 VLAN 클라이언트 단말이 접속된 중계 서버의 식별 정보이다. 경로 정보란 중계 서버 사이의 통신 경로를 정의한 정보로서, 「sp」 및 「ep」가 포함된다. 「sp」란 접속 경로의 스타트 포인트이며, 「sp」에 나타내어지는 중계 서버는 접속 경로의 접속측이 된다. 「ep」란 접속 경로의 엔드 포인트이며, 「ep」에 나타내어지는 중계 서버는 접속 경로의 피접속측이 된다.
이 예에서는 허브 정보로서 제 1 중계 서버(A), 제 2 중계 서버(B) 및 제 3 중계 서버의 식별 정보가 포함된다. 또한, 경로 정보로서 스타트 포인트가 제 1 중계 서버(A)이며, 엔드 포인트가 제 2 중계 서버(B)인 세션이 정의되어 있다. 또한, 스타트 포인트가 제 1 중계 서버(A)이며 엔드 포인트가 제 3 중계 서버(C)인 세션과, 스타트 포인트가 제 2 중계 서버(B)이며 엔드 포인트가 제 3 중계 서버(C)인 세션이 정의되어 있다. 이렇게, 세션 정보(73)에 있어서 중계 서버 사이의 통신 경로의 스타트 포인트와 엔드 포인트를 정의함으로써 중계 서버간의 통신 경로가 중복되는 것이 방지되고 있다.
VLAN 그룹 정보(70)는 VLAN 클라이언트 단말 및 VLAN 클라이언트 단말이 접속된 중계 서버 사이에서 공유되고, 각 VLAN 클라이언트 단말의 VLAN 그룹 정보 격납부(244) 및 각 중계 서버의 VLAN 그룹 정보 격납부(144)에 격납된다. 한편, VLAN 그룹 정보(70)는 VLAN 클라이언트 단말 사이에서만 공유되어도 좋다.
이하의 본 실시형태에서는 VLAN 그룹 정보(70)가 VLAN 클라이언트 단말 사이에서 공유되고, 각 VLAN 클라이언트 단말의 VLAN 그룹 정보 격납부(244)에 격납되는 예를 든다. VLAN 그룹 정보(70)의 작성 및 공유에 관한 처리는 후에 상세하게 설명한다.
9. 가상 어드레스 정보
가상 어드레스 정보는 VLAN 그룹의 클라이언트 단말로서 기동 가능한 VLAN 디바이스의 식별 정보, 가상 IP 어드레스 및 가상 MAC 어드레스로 구성된 정보이다. 가상 어드레스 정보는 VLAN 디바이스의 가상 어드레스 정보 격납부(245)에 격납된다. 또한, 가상 어드레스 정보는 중계 서버의 가상 어드레스 정보 격납부(145)에 격납되어도 좋다.
도 12는 가상 어드레스 정보(80)의 상세 구성을 나타낸다. 가상 어드레스 정보(80)에는 VLAN 디바이스의 식별 정보, 가상 IP 어드레스 및 가상 MAC 어드레스가 대응된다. 가상 IP 어드레스 및 가상 MAC 어드레스는 VLAN 디바이스가 실제로 사용하고 있는 IP 어드레스 및 MAC 어드레스와 중복되지 않도록 부여된다. 또한, 가상 IP 어드레스 및 가상 MAC 어드레스는 VLAN 그룹 내에서 각각 서로 중복되지 않도록 부여된다.
이 예에 있어서의 가상 어드레스 정보(80)에서는 VLAN 디바이스로서의 제 1 클라이언트 단말(A1), 제 3 클라이언트 단말(B1), 제 4 클라이언트 단말(B2) 및 제 5 클라이언트 단말(C1)에 관한 식별 정보, 가상 IP 어드레스 및 가상 MAC 어드레스가 대응되고 있다.
후술하는 바와 같이, VLAN 디바이스 사이에서 가상 어드레스 정보(80)가 공유됨으로써 다른 LAN에 소속되는 클라이언트 단말끼리가 VLAN 디바이스로서 통신 가능해진다. 가상 어드레스 정보(80)의 작성 및 공유에 관한 처리는 후에 상세하게 설명한다.
10. 초기 설정
도 13의 시퀀스도를 이용하여 제 1 중계 그룹의 초기 설정에 대해서 설명한다. 구체적으로는, 도 13은 중계 그룹 정보, 중계 서버 정보 및 클라이언트 단말 정보의 작성에 관련되는 처리의 흐름을 나타낸다.
10. 1. 어카운트의 작성
제 1 중계 서버(A)의 관리자는 제 1 클라이언트 단말(A1) 및 제 2 클라이언트 단말(A2)의 유저에 대하여 어카운트를 작성한다[스텝S1, 스텝S2: Create_Account()]. 제 2 중계 서버(B)의 관리자는 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2)의 유저에 대하여 어카운트를 작성한다[스텝S3, 스텝S4: Create_Account()]. 제 3 중계 서버(C)의 관리자는 제 5 클라이언트 단말(C1)의 유저에 대하여 어카운트를 작성한다[스텝S5: Create_Account()].
이상의 처리에 있어서, 제 1 중계 서버(A)는 중계 서버 정보를 작성해서 보존한다. 제 2 중계 서버(B)는 중계 서버 정보를 작성해서 보존한다. 제 3 중계 서버(C)는 중계 서버 정보를 작성해서 보존한다. 또한, 제 1 중계 서버(A)는 클라이언트 단말 정보를 작성해서 격납하고, 제 2 중계 서버(B)는 클라이언트 단말 정보를 작성해서 격납하고, 제 3 중계 서버(C)는 클라이언트 단말 정보를 작성해서 격납한다.
도 14, 도 15 및 도 16은 중계 서버 정보(31-1), 중계 서버 정보(31-2) 및 중계 서버 정보(31-3)를 각각 나타낸다. 중계 서버 정보(31-1)는 제 1 중계 서버(A)가 작성해서 보존하는 정보이다. 중계 서버 정보(31-2)는 제 2 중계 서버(B)가 작성해서 보존하는 정보이다. 중계 서버 정보(31-3)는 제 3 중계 서버(C)가 작성해서 보존하는 정보이다.
도 14는 중계 서버 정보(31-1)를 나타낸다. 상위 정보(311-1)는 제 1 중계 서버(A)에 대한 정보이다. 「site id」로서 「serverA@trial.net」이 설정되어 있다. 「name」으로서 「ServerA」가 설정되어 있다. 「stat」으로서 「active」가 설정되어 있다.
하위 정보(312-1)는 제 1 클라이언트 단말(A1) 및 제 2 클라이언트 단말(A2)에 대한 정보이다.
제 1 클라이언트 단말(A1)에 대한 정보는 이하와 같다. 「div」로서 「dev」가 설정되어 있다. 「group」으로서 「1279671471393.clientA1.rd.002@trial.net」이 설정되어 있다. 「id」로서 「clientA1.rd.002@ServerA.trial.net」이 설정되어 있다. 「name」으로서 「clientA1」이 설정되어 있다. 또한, 도 14에 있어서 「site」는 「serverA.trial.net」이 설정되어 있고, 제 1 클라이언트 단말(A1)의 유저는 제 1 중계 서버(A)에 로그온하고 있는 것으로 되어 있지만, 실제로는 도 13의 스텝S1∼S5의 단계에서는 「site」는 공란으로 되어 있다.
제 2 클라이언트 단말(A2)에 대한 정보는 이하와 같다. 「div」로서 「dev」가 설정되어 있다. 「group」으로서 「1279671471393.clientA1.rd.002@trial.net」이 설정되어 있다. 「id」로서 「clientA2.rd.002@serverA.trial.net」이 설정되어 있다. 「name」으로서 「clientA2」가 설정되어 있다. 또한, 「site」의 표기는 제 1 클라이언트 단말(A1)의 경우와 마찬가지이다.
중계 서버 정보(31-2) 및 중계 서버 정보(31-3)의 내용은 중계 서버 정보(31-1)의 내용과 마찬가지이므로 설명을 생략한다.
10. 2 중계 그룹 정보의 작성
중계 그룹 정보, 중계 서버 정보, 클라이언트 단말 정보의 작성에 관련되는 처리의 흐름을 다시 도 13을 참조해서 설명한다. 도 13에 있어서, 제 1 중계 서버(A)는 제 2 중계 서버(B)에 대하여 중계 통신 시스템의 그룹 구축을 요구한다[스텝S6: Set_Group()]. 제 1 중계 서버(A) 및 제 2 중계 서버(B)는 중계 그룹 정보를 작성해서 격납한다. 이어서, 제 1 중계 서버(A)는 제 2 중계 서버(B)에 대하여 중계 서버 정보의 교환을 요구한다[스텝S7: Exchange(db)]. 이에 따라, 제 1 중계 서버(A)는 제 2 중계 서버에 대하여 중계 서버 정보를 송신하고, 제 2 중계 서버(B)는 제 1 중계 서버(A)에 대하여 중계 서버 정보를 송신한다. 제 1 중계 서버(A) 및 제 2 중계 서버(B)는 중계 서버 정보를 합성해서 새로운 중계 서버 정보로 하여 그것을 보존한다. 또한, 도시하고 있지 않지만, 이 스텝S6 및 스텝S7과 마찬가지의 처리는 제 1 중계 서버(A)와 제 3 중계 서버(C) 사이에서도 실행되고, 또한 제 2 중계 서버(B)와 제 3 중계 서버(C) 사이에서도 실행된다. 그 결과, 제 1 중계 서버(A), 제 2 중계 서버(B) 및 제 3 중계 서버(C) 사이에서 공통의 중계 서버 정보가 보유된다.
10. 3 로그온 동작시에 있어서의 중계 서버 정보의 갱신
제 2 클라이언트 단말(A2)의 유저는 제 2 클라이언트 단말(A2)의 식별 정보와 패스워드를 입력해서 제 1 중계 서버(A)에 로그온한다(스텝S8: Register). 제 1 중계 서버(A)는 클라이언트 단말 정보를 참조하여 제 2 클라이언트 단말(A2)의 유저 인증을 행한다. 제 1 중계 서버(A)는 클라이언트 단말 정보를 갱신한다.
계속해서, 제 2 클라이언트 단말(A2)은 제 1 중계 서버(A)에 대하여 중계 그룹 정보 및 중계 서버 정보의 제공을 요구한다[스텝S9: Get()]. 제 1 중계 서버(A)는 제 2 클라이언트 단말(A2)에 대하여 중계 그룹 정보 및 중계 서버 정보를 송신한다. 제 2 클라이언트 단말(A2)은 중계 그룹 정보 및 중계 서버 정보를 격납한다.
제 1 중계 서버(A)는 중계 서버 정보를 참조하여 제 2 중계 서버(B)에 관한 「site」가 「active」로 되어 있는 것을 확인하면, 중계 서버 정보가 갱신된 것을 제 2 중계 서버(B)에 통지해야 한다고 판단한다. 그리고, 제 1 중계 서버(A)는 제 2 중계 서버(B)에 대하여 중계 서버 정보가 갱신된 것을 통지한다[스텝S10: Notify()]. 제 2 중계 서버(B)는 중계 서버 정보를 갱신하고, 그것을 격납한다. 또한, 제 1 중계 서버(A)는 중계 서버 정보가 갱신된 것을 제 3 중계 서버(C)에도 통지한다[스텝S11: Notify()].
제 1 클라이언트 단말(A1), 제 3 클라이언트 단말(B1), 제 4 클라이언트 단말(B2) 및 제 5 클라이언트 단말(C1)의 유저가 각 중계 서버에 로그온하면, 마찬가지로 해서 중계 서버에 있어서의 중계 서버 정보가 갱신된다. 또한, 마찬가지로 해서 각 클라이언트 단말의 유저가 로그오프했을 경우에도 중계 서버에 있어서의 중계 서버 정보가 갱신된다.
또한, 중계 서버 정보의 갱신은 로그온 중의 각 클라이언트 단말에도 통지된다.
11. 각 정보의 공유
11. 1 중계 그룹 정보의 공유
중계 그룹의 정보가 변경되었을 경우의 공유 처리에 대하여 도 17을 참조해서 설명한다. 도 17은 중계 그룹 정보 및 중계 서버 정보의 공유에 관계되는 처리의 흐름을 나타내는 도면이다.
도 17에 있어서, 제 1 중계 그룹에 변경이 발생하면, 예를 들면 제 1 중계 서버(A)는 제 2 중계 서버(B)에 대하여 변경된 중계 그룹 정보를 송신한다[스텝S21: Set_Group(중계 그룹 정보)]. 그러면, 제 2 중계 서버(B)는 제 3 클라이언트 단말(B1)과 제 4 클라이언트 단말(B2)에 중계 그룹 정보를 송신한다[스텝S21. 1 및 스텝S21. 2: Set_Group(중계 그룹 정보)]. 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2)로부터 각각 OK가 회신되면 제 2 중계 서버(B)는 제 1 중계 서버(A)에 OK를 회신한다.
또한, 제 1 중계 서버(A)는 변경된 중계 그룹 정보를 제 2 클라이언트 단말(A2)에 송신한다[스텝S22: Set_Group(중계 그룹 정보)]. 제 2 클라이언트 단말(A2)은 제 1 중계 서버(A)에 OK를 회신한다. 제 1 중계 서버(A)는 변경된 중계 그룹 정보를 제 1 클라이언트 단말(A1)에 송신한다[스텝S23: Set_Group(중계 그룹 정보)]. 제 1 클라이언트 단말(A1)은 제 1 중계 서버(A)에 OK를 회신한다.
제 1 중계 서버(A)는 제 3 중계 서버(C)에 대하여 변경된 중계 그룹 정보를 송신한다[스텝S21.3: Set_Group(중계 그룹 정보)]. 그러면, 제 3 중계 서버(C)는 제 5 클라이언트 단말(C1)에 중계 그룹 정보를 송신한다[스텝S21. 3. 1: Set_Group(중계 그룹 정보)]. 제 5 클라이언트 단말(C1)로부터 OK가 회신되어 오면 제 3 중계 서버(C)는 제 1 중계 서버(A)에 OK를 회신한다.
이상의 처리에 의해, 모든 중계 서버 및 클라이언트 단말이 중계 그룹 정보를 공유한다.
11. 2 중계 서버 정보의 공유
중계 서버 정보의 공유에 대하여 다시 도 17을 참조해서 설명한다. 이 예에서는 공유를 위한 처리는 이벤트 통지의 프레임워크를 사용한다. 이벤트 통지에 있어서, 구독자는 리소스의 상태 통지를 요구하는 에이전트이며, 통지자는 리소스의 상태를 통지하는 에이전트이다. 구독 기간 중에 리소스의 상태에 변화가 있었을 때에는 통지자로부터 구독자에게 변화가 통지된다.
제 1 중계 서버(A)는 제 2 중계 서버(B)에 대하여 중계 서버 정보의 구독을 신청한다[스텝S24: Subscribe()]. 제 2 중계 서버(B)는 중계 서버 정보가 나타내는 상태에 변경이 있었을 경우에는 제 2 중계 서버(B)가 유지하고 있는 중계 서버 정보를 갱신한다. 그리고, 제 2 중계 서버(B)는 갱신한 중계 서버 정보를 제 1 중계 서버(A)에 송신한다. 제 1 중계 서버(A)는 제 2 중계 서버(B)로부터 송신되어 온 중계 서버 정보를 이용해서 중계 서버 정보를 갱신한다. 제 1 중계 서버(A)는 중계 서버 정보가 갱신된 것을 제 1 클라이언트 단말(A1)에 통지하고[스텝S25: Notify(중계 서버 정보)], 또한 제 2 클라이언트 단말(A2)에 통지한다[스텝S26: Notify(중계 서버 정보)].
이어서, 제 1 중계 서버(A)는 제 3 중계 서버(C)에 대하여 중계 서버 정보의 구독을 신청한다[스텝S27: Subscribe()]. 제 3 중계 서버(C)는 중계 서버 정보가 나타내는 상태에 변경이 있었을 경우에 제 3 중계 서버(C)가 유지하고 있는 중계 서버 정보를 갱신한다. 그리고, 제 3 중계 서버(C)는 갱신한 중계 서버 정보를 제 1 중계 서버(A)에 송신한다. 제 1 중계 서버(A)는 제 3 중계 서버(C)로부터 송신되어 온 중계 서버 정보를 이용해서 중계 서버 정보를 갱신한다. 제 1 중계 서버(A)는 중계 서버 정보가 갱신된 것을 제 1 클라이언트 단말(A1)에 통지하고[스텝S28: Notify(중계 서버 정보)], 또한 제 2 클라이언트 단말(A2)에 통지한다[스텝S29: Notify(중계 서버 정보)].
제 2 중계 서버(B)는 제 1 중계 서버(A)에 대하여 중계 서버 정보의 구독을 신청한다[스텝S30: Subscribe()]. 제 1 중계 서버(A)는 중계 서버 정보가 나타내는 상태에 변경이 있었을 경우에 제 1 중계 서버(A)가 유지하고 있는 중계 서버 정보를 갱신한다. 그리고, 제 1 중계 서버(A)는 갱신한 중계 서버 정보를 제 2 중계 서버(B)에 송신한다. 제 2 중계 서버(B)는 제 1 중계 서버(A)로부터 송신되어 온 중계 서버 정보를 이용해서 중계 서버 정보를 갱신한다. 제 2 중계 서버(B)는 중계 서버 정보가 갱신된 것을 제 3 클라이언트 단말(B1)에 통지하고[스텝S31: Notify(중계 서버 정보)], 또한 제 4 클라이언트 단말(B2)에 통지한다[스텝S32: Notify(중계 서버 정보)].
제 2 중계 서버(B)는 제 3 중계 서버(C)에 대하여 중계 서버 정보의 구독을 신청한다[스텝S33: Subscribe()]. 제 3 중계 서버(C)는 중계 서버 정보가 나타내는 상태에 변경이 있었을 경우에 제 3 중계 서버(C)가 유지하고 있는 중계 서버 정보를 갱신한다. 그리고, 제 3 중계 서버(C)는 갱신한 중계 서버 정보를 제 2 중계 서버(B)에 송신한다. 제 2 중계 서버(B)는 제 3 중계 서버(C)로부터 송신되어 온 중계 서버 정보를 이용해서 중계 서버 정보를 갱신한다. 제 2 중계 서버(B)는 중계 서버 정보가 갱신된 것을 제 3 클라이언트 단말(B1)에 통지하고[스텝S34: Notify(중계 서버 정보)], 또한 제 4 클라이언트 단말(B2)에 통지한다[스텝S35: Notify(중계 서버 정보)].
제 3 중계 서버(C)는 제 2 중계 서버(B)에 대하여 중계 서버 정보의 구독을 신청한다[스텝S36: Subscribe()]. 제 2 중계 서버(B)는 중계 서버 정보가 나타내는 상태에 변경이 있었을 경우에 제 2 중계 서버(B)가 유지하고 있는 중계 서버 정보를 갱신한다. 그리고, 제 2 중계 서버(B)는 갱신한 중계 서버 정보를 제 3 중계 서버(C)에 송신한다. 제 3 중계 서버(C)는 제 2 중계 서버(B)로부터 송신되어 온 중계 서버 정보를 이용해서 중계 서버 정보를 갱신한다. 제 3 중계 서버(C)는 중계 서버 정보가 갱신된 것을 제 5 클라이언트 단말(C1)에 통지한다[스텝S37: Notify(중계 서버 정보)].
제 3 중계 서버(C)는 제 1 중계 서버(A)에 대하여 중계 서버 정보의 구독을 신청한다[스텝S38: Subscribe()]. 제 1 중계 서버(A)는 중계 서버 정보가 나타내는 상태에 변경이 있었을 경우에 제 1 중계 서버(A)가 유지하고 있는 중계 서버 정보를 갱신한다. 그리고, 제 1 중계 서버(A)는 갱신한 중계 서버 정보를 제 3 중계 서버(C)에 송신한다. 제 3 중계 서버(C)는 제 1 중계 서버(A)로부터 송신되어 온 중계 서버 정보를 이용해서 중계 서버 정보를 갱신한다. 제 3 중계 서버(C)는 중계 서버 정보가 갱신된 것을 제 5 클라이언트 단말(C1)에 통지한다[스텝S39: Notify(중계 서버 정보)].
이상의 처리에 의해, 제 1 중계 서버(A), 제 2 중계 서버(B) 및 제 3 중계 서버(C)는 중계 서버 정보가 갱신되었을 경우에도 즉시 갱신된 중계 서버 정보를 공유한다. 따라서, 제 1 중계 서버(A), 제 2 중계 서버(B) 및 제 3 중계 서버(C)는 다른 중계 서버의 기동 상태, 중계 서버에 접속되어 있는 클라이언트 단말의 종류 및 로그온 상태를 항상 알 수 있다.
11. 3 정보 공유의 정리
중계 통신 시스템에 있어서 LAN 및 클라이언트 단말의 증감 상태 및 접속 상태가 변화되었을 경우에는, 하나의 중계 서버는 상태 변화를 인식했을 때에는 그 내용에 따라서 중계 그룹 정보, 중계 서버 정보, 클라이언트 단말 정보를 즉시 갱신한다.
그리고, 하나의 중계 서버는 중계 그룹 정보 및 중계 서버 정보에 기재되어 있는 다른 중계 서버에 중계 그룹 정보 및 중계 서버 정보가 갱신된 것을 즉시 통지한다. 또한, 하나의 중계 서버는 클라이언트 단말 정보에 기재되어 있는 클라이언트 단말에 중계 그룹 정보 및 중계 서버 정보가 갱신된 것을 즉시 통지한다.
그러나, 하나의 중계 서버는 다른 중계 서버가 중계 그룹 정보 및 중계 서버 정보에 기재되어 있다고 해도 다른 중계 서버가 미접속 상태에 있다고 판단했을 때에는 다른 중계 서버에 즉시 통지하는 경우는 없다. 또한, 하나의 중계 서버는 클라이언트 단말이 클라이언트 단말 정보에 기재되어 있다고 해도 클라이언트 단말이 미접속 상태에 있다고 판단했을 때에는 클라이언트 단말에 즉시 통지하는 경우는 없다.
이에 따라, LAN 및 클라이언트 단말의 증감 상태 및 접속 상태에 대한 정보는 중계 통신 시스템 전체로서 리얼타임으로 공유된다.
12. 중계 통신 시스템에 있어서의 데이터의 송수신
상기한 바와 같이, 중계 통신 시스템에 있어서 LAN 및 클라이언트 단말의 증감 상태 및 접속 상태에 대한 정보가 공유된 후에, 클라이언트 단말을 사용하는 유저가 다른 클라이언트 단말을 지정해서 통신할 때에는 이하와 같이 데이터가 송수신된다.
구체적으로, 클라이언트 단말은 지정처의 클라이언트 정보의 클라이언트 단말 정보와 송신하고 싶은 데이터를 포함하는 통신 패킷을 클라이언트 단말이 접속된 중계 서버에 송신한다. 통신 패킷을 수신한 중계 서버는 중계 서버 정보를 참조하여 지정된 클라이언트 단말이 중계 그룹 내의 어느 중계 서버에 배하에 있는지를 확인한다. 또한, 중계 서버는 지정된 클라이언트 단말을 배하에 두는 중계 서버가 기동 상태인지의 여부, 및 지정된 클라이언트 단말이 로그온 상태인지의 여부를 확인한다. 구체적으로는, 중계 서버 정보의 상위 정보 「stat」가 「active」로 설정되어 있는 것을 확인함으로써 중계 서버가 기동 상태에 있는지의 여부를 판단할 수 있다. 또한, 중계 서버 정보의 하위 정보 「site」에 클라이언트 단말의 로그온처의 중계 서버의 식별 정보가 기재되어 있는지의 여부를 확인함으로써 클라이언트 단말이 로그온 상태에 있는지의 여부를 판단한다.
중계 서버의 기동 상태 및 클라이언트 단말의 로그온 상태를 확인할 수 있으면, 지정된 클라이언트 단말을 배하에 두는 중계 서버에 대하여 수신한 통신 패킷이 송신된다. 또한, 통신 패킷을 수신한 중계 서버는 중계 서버의 배하에 있는 지정된 클라이언트 단말에 대하여 통신 패킷을 송신한다.
13. VLAN 그룹 정보의 작성 및 공유
이어서, VLAN 그룹 정보의 작성 및 공유에 대하여 도 18을 참조해서 설명한다. 도 18은 VLAN 그룹 정보의 작성 처리를 나타내는 플로우차트이다. 이하에서는 제 1 중계 그룹 내에서 LAN 및 클라이언트 단말의 증감 상태 및 접속 상태에 대한 정보가 공유된 상태에서(도 17 참조) 제 1 클라이언트 단말(A1)이 VLAN 그룹 정보를 작성하는 예를 든다. 또한, 이 예에서는 제 1 중계 그룹에 있어서의 제 1 클라이언트 단말(A1), 제 3 클라이언트 단말(B1), 제 4 클라이언트 단말(B2) 및 제 5 클라이언트 단말(C1)이 VLAN 클라이언트 단말로서 선택된다.
13. 1 VLAN 그룹 정보의 작성
우선, 제 1 클라이언트 단말(A1)의 VLAN 그룹 정보 제어부(232)의 VLAN 그룹 정보 작성부(232a)는 유저로부터 중계 그룹의 선택을 접수한다(스텝S101). 예를 들면, 유저는 중계 그룹 정보 격납부(241)에 격납된 중계 그룹 정보를 참조하여 제 1 클라이언트 단말(A1)이 구비하는 표시부(224) 및 조작 입력부(225)를 통해서 중계 그룹을 선택한다. 이 예에서는 제 1 중계 그룹이 중계 그룹으로서 선택된다.
VLAN 그룹 정보 작성부(232a)는 제 1 중계 그룹의 선택을 접수하면, 중계 서버 정보 격납부(242)에 격납된 중계 서버 정보를 참조하여 제 1 중계 그룹의 식별 정보를 추출한다. 또한, 여기에서 중계 서버 정보 대신에 중계 그룹 정보가 참조되어도 좋다.
제 1 중계 그룹의 선택을 접수하면, VLAN 그룹 정보 작성부(232a)는 중계 서버 정보를 참조하여 제 1 중계 그룹을 구성하는 클라이언트 단말의 일람을 표시부(224)에 표시한다(스텝S102). 그 후 VLAN 그룹 정보 작성부(232a)는 조작 입력부(225)를 통해서 유저로부터 VLAN 클라이언트 단말의 선택을 접수한다(스텝S103). 이때, VLAN 그룹 정보 작성부(232a)는 중계 서버 정보를 참조하여 선택을 접수한 VLAN 클라이언트 단말의 식별 정보를 추출한다.
VLAN 그룹 정보 작성부(232a)는 VLAN 클라이언트 단말의 선택을 접수한 후, 세션 정보를 작성한다(스텝S104). 구체적으로는, VLAN 그룹 정보 작성부(232a)는 허브 세션을 확립하기 위한 중계 서버 사이의 경로 구성을 결정하고, 세션 정보를 작성한다.
예를 들면, VLAN 그룹 정보 작성부(232a)는 제 1 중계 서버(A)와 제 2 중계 서버(B)의 세션에 관해서 제 1 중계 서버(A)를 접속측, 제 2 중계 서버(B)를 피접속측으로 결정한다. 그리고, VLAN 그룹 정보 작성부(232a)는 「sp」에 제 1 중계 서버(A)의 식별 번호를 입력하고, 「ep」에 제 1 중계 서버(B)의 식별 번호를 입력한다. 또한, VLAN 그룹 정보 작성부(232a)에 의해 작성된 세션 정보는 조작 입력부(225) 등을 통해서 유저에 의해 수정되어도 좋다.
세션 정보를 작성한 후, VLAN 그룹 정보 작성부(232a)는 VLAN 그룹을 식별하는 식별 정보를 작성한다(스텝S105). 그 후에 VLAN 그룹 정보 작성부(232a)는 작성한 VLAN 그룹의 식별 정보와, VLAN 클라이언트 단말의 식별 정보와, 세션 정보를 포함하는 VLAN 그룹 정보를 VLAN 그룹 정보 격납부(244)에 격납한다(스텝S106).
이 처리에 의해 작성된 VLAN 그룹 정보의 일례가 도 11에서 나타내는 VLAN 그룹 정보(70)이다. 상술한 바와 같이, VLAN 그룹 정보(70)에는 그룹 정보(71)와, VLAN 클라이언트 단말 정보(72)와, 세션 정보(73)가 포함된다. 구체적으로, 그룹 정보(71)는 제 1 중계 그룹의 식별 정보로서 「1279671471393.clientA1.rd.002@trial.net」을 갖는다. 또한, VLAN 그룹 식별 정보로서 「1279672104671.clientA1.rd.002@trial.net」, 및 VLAN 그룹의 명칭으로서 「vlangroup1」을 갖는다. 이하, VLAN 그룹 정보(70)가 나타내는 VLAN 그룹을 제 1 VLAN 그룹이라고 한다.
또한, VLAN 클라이언트 단말 정보(72)에는 유저에 의해 선택된 제 1 클라이언트 단말(A1), 제 3 클라이언트 단말(B1), 제 4 클라이언트 단말(B2) 및 제 5 클라이언트 단말(C1) 각각의 식별 정보가 나타내어진다.
또한, 세션 정보(73)는 「sp」가 제 1 중계 서버(A)이며 「ep」가 제 2 중계 서버(B)인 세션 정보를 갖는다. 또한, 세션 정보(73)는 「sp」가 제 1 중계 서버(A)이며 「ep」가 제 3 중계 서버(C)인 세션 정보, 및 「sp」가 제 2 중계 서버(B)이며 「ep」가 제 3 중계 서버(C)인 세션 정보를 갖는다.
상기한 바와 같이 작성된 VLAN 그룹 정보(70)는 그 후 VLAN 클라이언트 단말에 송신된다(스텝S107).
13. 2 VLAN 그룹 정보의 공유
이어서, 도 19의 시퀀스도를 참조하여 VLAN 클라이언트 단말간에서 VLAN 그룹 정보(70)가 공유되는 처리를 설명한다. 도 19는 VLAN 그룹 정보의 공유에 관계되는 처리의 흐름을 나타내는 도면이다. VLAN 그룹 정보(70)의 공유에 관계되는 처리는 각 중계 서버의 VLAN 그룹 정보 제어부(132) 및 각 클라이언트 단말의 VLAN 그룹 정보 제어부(232)에 의해 제어된다.
VLAN 그룹 정보(70)를 작성한 제 1 클라이언트 단말(A1)은 VLAN 클라이언트 단말인 제 3 클라이언트 단말(B1)에 대하여 VLAN 그룹 정보(70)를 송신한다. 구체적으로는, 제 1 클라이언트 단말(A1)은 우선 제 1 중계 서버(A)에 대하여 VLAN 그룹 정보(70)를 송신한다[스텝S41: createVlanGroup(vlanGroup)]. 제 1 중계 서버(A)는 수신한 VLAN 그룹 정보(70)를 제 2 중계 서버(B)에 대하여 송신한다[스텝S41. 1: createVlanGroup(vlanGroup)]. 제 2 중계 서버(B)는 제 3 클라이언트 단말(B1)에 대하여 VLAN 그룹 정보(70)를 송신한다[스텝S41. 1. 1: createVlanGroup(vlanGroup)]. VLAN 그룹 정보(70)를 수신하면, 제 3 클라이언트 단말(B1)은 수신한 VLAN 그룹 정보(70)를 VLAN 그룹 정보 격납부(244)에 격납하고, 제 2 중계 서버(B)에 OK를 회신한다. 또한, 제 2 중계 서버(B)는 제 1 중계 서버(A)에 OK를 회신하고, 제 1 중계 서버(A)는 제 1 클라이언트 단말(A1)에 OK를 회신한다.
이어서, 제 1 클라이언트 단말(A1)은 VLAN 클라이언트 단말인 제 4 클라이언트 단말(B2)에 대하여 VLAN 그룹 정보(70)를 송신한다. 구체적으로는, 제 1 클라이언트 단말(A1)은 제 1 중계 서버(A)에 대하여 VLAN 그룹 정보(70)를 송신한다[스텝S42: createVlanGroup(vlanGroup)]. 제 1 중계 서버(A)는 수신한 VLAN 그룹 정보(70)를 제 2 중계 서버(B)에 대하여 송신한다[스텝S42. 1: createVlanGroup(vlanGroup)]. 제 2 중계 서버(B)는 수신한 VLAN 그룹 정보(70)를 제 4 클라이언트 단말(B2)에 대하여 송신한다[스텝S42. 1. 1: createVlanGroup(vlanGroup)]. VLAN 그룹 정보(70)를 수신하면, 제 4 클라이언트 단말(B2)은 수신한 VLAN 그룹 정보(70)를 VLAN 그룹 정보 격납부(244)에 격납하고, 제 2 중계 서버(B)에 OK를 회신한다. 또한, 제 2 중계 서버(B)는 제 1 중계 서버(A)에 OK를 회신하고, 제 1 중계 서버(A)는 제 1 클라이언트 단말(A1)에 OK를 회신한다.
또한, 제 1 클라이언트 단말(A1)은 제 5 클라이언트 단말(C1)에 대하여 VLAN 그룹 정보(70)를 송신한다. 구체적으로는, 제 1 클라이언트 단말(A1)은 제 1 중계 서버(A)에 대하여 VLAN 그룹 정보(70)를 송신한다[스텝S43: createVlanGroup(vlanGroup)]. 제 1 중계 서버(A)는 수신한 VLAN 그룹 정보(70)를 제 3 중계 서버(C)에 대하여 송신한다[스텝S43. 1: createVlanGroup(vlanGroup)]. 제 3 중계 서버(C)는 수신한 VLAN 그룹 정보를 제 5 클라이언트 단말(C1)에 대하여 송신한다[스텝S43. 1. 1: createVlanGroup(vlanGroup)]. VLAN 그룹 정보(70)를 수신한 제 5 클라이언트 단말(C1)은 수신한 VLAN 그룹 정보(70)를 VLAN 그룹 정보 격납부(244)에 격납하고, 제 3 중계 서버(C)에 OK를 회신한다. 또한, 제 3 중계 서버(C)는 제 1 중계 서버(A)에 OK를 회신하고, 제 1 중계 서버(A)는 제 1 클라이언트 단말(A1)에 OK를 회신한다.
이상의 처리에 의해, VLAN 그룹의 구성하는 클라이언트 단말로서 선택된 모든 VLAN 클라이언트 단말이 VLAN 그룹 정보(70)를 공유한다. 이렇게 하여, VLAN 그룹 내의 클라이언트 단말끼리에서 행해지는 VLAN 세션의 준비가 실현된 것이 된다.
또한, 상기 처리에 있어서 VLAN 그룹 정보(70)는 VLAN 클라이언트 단말간뿐만 아니라, VLAN 클라이언트 단말이 접속된 중계 서버간에 있어서도 공유되어도 좋다. 이 경우, 각 중계 서버는 VLAN 그룹 정보(70)를 수신했을 때에 VLAN 그룹 정보(70)를 VLAN 그룹 정보 격납부(144)에 격납하면 좋다.
14. 클라이언트 단말에 있어서의 VLAN 세션의 확립 처리 및 VLAN 통신 개시의 처리
본 실시형태의 중계 통신 시스템에서는 상기 처리에 의해 작성해서 공유된 VLAN 그룹 정보(70)에 의거하여 VLAN 세션이 확립되고, 허브의 기능을 실현하는 복수의 중계 서버를 통해서 클라이언트 단말끼리가 VLAN 디바이스로서 서로 통신 가능해진다. 이하, VLAN 그룹 정보의 기동 지시를 접수한 클라이언트 단말에 있어서의 VLAN 세션 확립 처리 및 VLAN 통신 개시의 처리에 대하여 도 20을 참조해서 설명한다. 도 20은 클라이언트 단말에 의한 VLAN 세션의 확립 처리를 나타내는 플로우차트를 나타낸다.
VLAN 세션 확립의 처리는 VLAN 그룹을 구성하는 어느 하나의 VLAN 클라이언트 단말 또는 VLAN 클라이언트 단말이 접속된 중계 서버가 유저로부터 VLAN 그룹의 기동 지시를 접수함으로써 개시된다. 이 예에서는 제 1 클라이언트 단말(A1)이 VLAN 그룹 정보(70)에 나타내어지는 제 1 VLAN 그룹에 대한 기동 지시를 유저로부터 접수한다. 또한, 이 예에서는 제 1 클라이언트 단말(A1), 제 3 클라이언트 단말(B1), 제 4 클라이언트 단말(B2) 및 제 5 클라이언트 단말(C1)이 VLAN 디바이스이다.
14. 1 기동 커맨드의 송신 및 응답 신호 수신
우선, 제 1 클라이언트 단말(A1)의 기동 커맨드 제어부(233)는 기동하는 VLAN 그룹의 선택을 접수한다(스텝S111). 구체적으로, 기동 커맨드 제어부(233)는 표시부(224)에 VLAN 그룹 정보 격납부(244)에 격납되어 있는 VLAN 그룹 정보의 일람을 표시하고, 조작 입력부(225)를 통해서 기동해야 할 VLAN 그룹의 선택을 접수한다. 이 예에서는 VLAN 그룹 정보(70)에 나타내어지는 제 1 VLAN 그룹이 선택된다.
제 1 VLAN 그룹의 선택을 접수하면, 기동 커맨드 제어부(233)는 VLAN 그룹 정보(70)로부터 중계 서버의 정보를 판독한다(스텝S112). 구체적으로는, 기동 커맨드 제어부(233)는 VLAN 그룹 정보(70)의 세션 정보(73)로부터 허브의 역할을 담당하는 중계 서버의 식별 정보를 판독한다. 이때, 기동 커맨드 제어부(233)는 필터링 처리를 통해서 중계 서버의 식별 정보가 중복되지 않도록 판독한다. 이 예에서는 기동 커맨드 제어부(233)는 제 1 중계 서버(A), 제 2 중계 서버(B) 및 제 3 중계 서버(C)의 식별 정보를 판독한다.
이어서, 기동 커맨드 제어부(233)는 스텝S113∼스텝S116의 처리를 행한다. 구체적으로는, 기동 커맨드 제어부(223)는 중계 서버 정보 격납부(242)에 격납되어 있는 중계 서버 정보를 참조하여 판독한 중계 서버 중, 제 1 클라이언트 단말(A1) 이외의 VLAN 클라이언트 단말이 접속되어 있는 중계 서버가 기동하고 있는지의 여부를 판단한다(스텝S113). 그리고, 기동 커맨드 제어부(233)는 기동하고 있는 중계 서버에 대하여 스텝S114∼스텝S116의 처리를 행한다. 이 예에서는 제 1 클라이언트 단말(A1) 이외의 VLAN 클라이언트 단말이 접속된 제 2 중계 서버(B) 및 제 3 중계 서버(C)에 대하여 스텝S114∼스텝S116의 처리가 행해진다.
우선, 기동 커맨드 제어부(233)는 중계 서버 정보 격납부(242)에 격납되어 있는 중계 서버 정보를 참조하여 제 2 중계 서버(B)가 기동하고 있는지의 여부를 판단한다. 구체적으로, 기동 커맨드 제어부(233)는 중계 서버 정보의 상위 정보 「stat」가 「active」로 설정되어 있는 것을 확인함으로써 제 2 중계 서버(B)가 기동 가능한지의 여부를 판단한다. 제 2 중계 서버(B)가 기동하고 있을 경우에는 기동 커맨드 제어부(233)는 기동 커맨드, 기동 시각 및 VLAN 그룹 정보(70)를 포함하는 기동 정보를 제 2 중계 서버(B)에 송신한다(스텝S114). 기동 커맨드란 VLAN 그룹의 기동을 통지하는 커맨드이다. 또한, 이때 기동 정보를 수신한 제 2 중계 서버(B)는 VLAN 그룹 정보(70)를 VLAN 그룹 정보 격납부(144)에 격납한다. 한편, VLAN 그룹 정보의 공유 처리에 있어서 VLAN 클라이언트 단말간뿐만 아니라 제 2 중계 서버(B) 및 제 3 중계 서버(C)에 있어서도 VLAN 그룹 정보(70)가 공유되고 있을 경우에는 VLAN 그룹 정보(70)의 송신은 생략되고, 제 1 VLAN 그룹의 식별 정보만이 송신되어도 좋다.
이어서, 기동 커맨드 제어부(233)는 제 2 중계 서버(B)로부터의 응답 신호를 수신한다. 여기에서, 제 2 중계 서버(B)로부터의 응답 신호에는 제 2 중계 서버(B)에 접속된 VLAN 클라이언트 단말 중 VLAN 디바이스의 식별 정보와 IP 어드레스와 MAC 어드레스가 포함되어 있다. 제 2 중계 서버(B)에 의한 응답 신호의 작성 처리는 후술한다.
기동 커맨드 제어부(233)는 제 2 중계 서버(B)로부터의 응답 신호를 수신하면(스텝S115에서 Yes), 수신한 응답 신호로부터 VLAN 디바이스의 식별 정보, IP 어드레스 및 MAC 어드레스를 추출한다(스텝S116).
그 후에 기동 커맨드 제어부(233)는 중계 서버 정보를 다시 참조하여 스텝S113∼스텝S116의 처리가 행해져야 할 다른 중계 서버가 있는지의 여부를 판단한다(스텝S117). 그 밖에 중계 서버가 있는 경우에는(스텝S117에서 Yes), 기동 커맨드 제어부(233)는 다른 중계 서버 각각에 대하여 스텝S113∼스텝S116의 처리를 행한다.
이하, 스텝S115에 있어서 제 2 중계 서버(B) 및 제 3 중계 서버(C)로부터 응답 신호를 수신한 예를 들어서 설명을 계속한다.
도 21은 VLAN 디바이스의 IP 어드레스와 MAC 어드레스에 관한 제 1 추출 정보의 일례를 나타낸다. 제 1 추출 정보(90)에는 스텝S116에 있어서 응답 신호로부터 추출한 VLAN 디바이스의 식별 정보, IP 어드레스 및 MAC 어드레스가 포함된다. 도 21에 나타내는 제 1 추출 정보(90-1)는 제 2 중계 서버(B)로부터 수신한 응답 신호로부터 추출한 추출 정보이며, 제 1 추출 정보(90-2)는 제 3 중계 서버(C)로부터 수신한 응답 신호로부터 추출한 추출 신호이다. 제 1 추출 정보(90-1)에는 제 2 중계 서버(B)에 접속된 VLAN 디바이스인 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2) 각각의 식별 정보, IP 어드레스 및 MAC 어드레스가 포함된다. 제 1 추출 정보(90-2)에는 제 3 중계 서버(C)에 접속된 VLAN 디바이스인 제 5 클라이언트 단말(C1)의 식별 정보, IP 어드레스 및 MAC 어드레스가 포함된다.
또한, 중계 서버가 기동하고 있지 않다고 판단했을 경우(스텝S113에서 No) 및 중계 서버로부터 응답 신호를 수신하지 않았을 경우(스텝S115에서 No)에는 스텝S117로 진행된다.
14. 2 가상 어드레스 정보의 작성 및 송신
다른 중계 서버가 없다고 판단했을 경우(스텝S117에서 No)에는 이어서 가상 어드레스 제어부(234)의 가상 어드레스 작성부(234a)에 의해 가상 어드레스 정보가 작성된다(스텝S118). 가상 어드레스 정보에는 각 VLAN 디바이스에 할당되는 가상 IP 어드레스 및 가상 MAC 어드레스가 포함된다.
가상 어드레스의 작성 처리에 대하여 도 12 및 도 21과 도 22를 참조해서 설명한다. 도 22는 도 21의 제 1 추출 정보에 제 1 클라이언트 단말(A1)의 IP 어드레스 및 MAC 어드레스를 추가한 제 2 추출 정보의 일례를 나타낸다.
가상 어드레스 작성부(234a)는, 우선 제 1 추출 정보(90)에 제 1 클라이언트 단말(A1)의 식별 정보, IP 어드레스 및 MAC 어드레스를 추가한다. 그리고, 가상 어드레스 작성부(234a)는 제 1 클라이언트 단말(A1) 및 스텝S116에서 추출한 VLAN 디바이스의 정보를 모두 합한 제 2 추출 정보(91)를 작성한다. 도 22에 나타내는 바와 같이, 제 2 추출 정보(91)에서는 제 1 클라이언트 단말(A1), 제 3 클라이언트 단말(B1), 제 4 클라이언트 단말(B2) 및 제 5 클라이언트 단말(C1) 각각의 식별 정보, IP 어드레스 및 MAC 어드레스가 하나의 테이블에 정리되어 있다.
이어서, 가상 어드레스 작성부(234a)는 제 2 추출 정보(91)에 나타내어지는 IP 어드레스 및 MAC 어드레스에 의거하여 가상 어드레스 정보를 작성한다. 구체적으로는, 가상 어드레스 작성부(234a)는 제 2 추출 정보(91)에 나타내어지는 IP 어드레스와 중복되지 않는 IP 어드레스를 가상 IP 어드레스로 해서 각 VLAN 디바이스에 할당한다. 또한, 가상 어드레스 작성부(234a)는 제 2 추출 정보(91)에 나타내어지는 MAC 어드레스와 중복되지 않는 MAC 어드레스를 가상 MAC 어드레스로 해서 각 VLAN 디바이스에 할당한다. 또한, 가상 어드레스 작성부(234a)는 각 VLAN 디바이스 사이에서 가상 IP 어드레스 및 가상 MAC 어드레스가 중복되지 않도록 VLAN 디바이스에 가상 IP 어드레스 및 가상 MAC 어드레스를 할당한다. 이 예에서는 가상 IP 어드레스 및 가상 MAC 어드레스의 말미에 각각 다른 숫자를 할당함으로써 VLAN 디바이스간의 가상 어드레스의 중복을 막는다.
상기 처리에 의해 작성된 가상 어드레스 정보가 도 12에 나타내는 가상 어드레스 정보(80)이다. 이 예에서는 식별 정보 「clientA1.rd.002@trial.net」에 의해 식별되는 제 1 클라이언트 단말(A1)에 대하여 가상 IP 어드레스 「117.112.0.1」 및 가상 MAC 어드레스 「00.11.22:f0.00.01」이 할당된다. 또한, 식별 정보 「clientB1.rd.002@trial.net」에 의해 식별되는 제 3 클라이언트 단말(B1)에 대하여 가상 IP 어드레스 「117.112.0.2」 및 가상 MAC 어드레스 「00.11.22:f0.00.02」가 할당된다. 식별 정보 「clientB2.rd.002@trial.net」에 의해 식별되는 제 4 클라이언트 단말(B2)에 대하여 가상 IP 어드레스 「117.112.0.3」 및 가상 MAC 어드레스 「00.11.22:f0.00.03」가 할당된다. 식별 정보 「clientC1.rd.002@trial.net」에 의해 식별되는 제 5 클라이언트 단말(C1)에 대하여 가상 IP 어드레스 「117.112.0.4」 및 가상 MAC 어드레스 「00.11.22:f0.00.04」가 할당된다.
14. 3 VLAN 세션의 확립
이어서, 가상 어드레스 제어부(234)는 작성한 가상 어드레스 정보(80)를 초기화 커맨드와 함께 허브의 역할을 담당하는 중계 서버에 송신한다(스텝S119). 초기화 커맨드란 VLAN 인터페이스의 초기화에 관한 커맨드로서, 제 1 VLAN 그룹의 식별 정보인 「1279672104671.clientA1.rd.002@trial.net」이 포함된다. 이 예에서는 가상 어드레스 제어부(234)는 제 1 중계 서버(A), 제 2 중계 서버(B) 및 제 3 중계 서버(C)에 대하여 작성한 가상 어드레스 정보(80)와 초기화 커맨드를 송신한다.
이때, 가상 어드레스 정보(80)와 초기화 커맨드를 수신한 제 1 중계 서버(A), 제 2 중계 서버(B) 및 제 3 중계 서버(C)는 VLAN 그룹 정보(70)의 세션 정보(73)를 참조하여 중계 서버간의 허브 세션을 확립한다. 중계 서버간의 허브 세션의 확립에 대해서는 후에 상세하게 설명한다.
그 후에 VLAN 세션 제어부(237)는 제 1 클라이언트 단말(A1)이 접속되어 있는 제 1 중계 서버(A)와의 사이에 디바이스 세션의 확립 처리를 행한다(스텝S120). 상세하게는, 제 1 중계 서버(A)로부터의 디바이스 세션의 확립 요구에 대하여 OK를 회신함으로써 디바이스 세션을 VLAN 세션으로서 기능시킨다. 또한, 이때 제 2 중계 서버(B)와 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2) 사이에 있어서도 디바이스 세션이 확립된다. 또한, 제 3 중계 서버(C)와 제 5 클라이언트 단말(C1) 사이에 있어서도 디바이스 세션이 확립된다.
14. 4 VLAN 통신의 개시
이상에서 설명한 바와 같이, VLAN 그룹 내에 있어서 허브 세션 및 디바이스 세션을 포함하는 VLAN 세션이 확립되면 VLAN 세션 제어부(237)는 제 1 클라이언트 단말(A1)의 VLAN 인터페이스(221B)를 초기화하고, VLAN 인터페이스(221B)에 가상 어드레스를 설정한다. 구체적으로는, VLAN 세션 제어부(237)는 제 1 클라이언트 단말(A1)의 VLAN 인터페이스(221B)에 가상 어드레스 정보(80)의 가상 IP 어드레스 및 가상 MAC 어드레스를 설정한다(스텝S121). 이때, 제 3 클라이언트 단말(B1), 제 4 클라이언트 단말(B2) 및 제 5 클라이언트 단말(C1)도 제 1 클라이언트 단말(A1)의 VLAN 인터페이스에 가상 어드레스 정보(80)의 가상 IP 어드레스 및 가상 MAC 어드레스를 설정한다(스텝S121).
이상의 처리에 의해, 각 VLAN 디바이스에 있어서 가상 어드레스가 설정되면 가상 어드레스와 VLAN 세션을 사용해서 클라이언트 단말끼리가 VLAN 디바이스로서 서로 통신 가능해진다(스텝S122).
15. 중계 서버에 있어서의 VLAN 세션의 확립 및 VLAN 통신 개시의 처리
이어서, VLAN 그룹의 기동 지시를 접수한 클라이언트 단말로부터 기동 정보를 수신한 중계 서버에 있어서의 VLAN 세션 확립 및 VLAN 통신 개시의 처리에 대하여 설명한다. 이 예에서는 제 1 클라이언트 단말(A1)로부터 기동 커맨드, 기동 시각 및 VLAN 그룹 정보(70)를 포함하는 기동 정보를 수신한 제 2 중계 서버(B)의 처리를 설명한다(도 20의 스텝S114 참조). 또한, 제 1 클라이언트 단말(A1)로부터 기동 정보를 접수하는 제 3 중계 서버(C)의 처리에 대해서는 제 2 중계 서버(B)와 마찬가지의 처리이기 때문에 그 설명을 생략한다.
15. 1 응답 신호의 송신
제 2 중계 서버(B)의 기동 커맨드 제어부(133)는 제 1 클라이언트 단말(A1)로부터 기동 커맨드, 기동 시각 및 VLAN 그룹 정보(70)를 수신했을 경우, VLAN 그룹 정보(70)로부터 VLAN 그룹의 식별 정보를 추출한다. 이 예에서는 기동 커맨드 제어부(133)는 VLAN 그룹 정보(70)로부터 「1279672104671.clientA1.rd.002@trial.net」을 추출한다. 그리고, 기동 커맨드 제어부(133)는 이 식별 정보를 갖는 제 1 VLAN 그룹이 기동되고 있지 않은 것을 확인한 다음, VLAN 그룹 정보(70)로부터 제 2 중계 서버(B)에 접속되어 있는 VLAN 클라이언트 단말을 추출한다. 이 예에서는 기동 커맨드 제어부(133)는 VLAN 클라이언트 단말로서 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2)을 추출한다.
이어서, 기동 커맨드 제어부(133)는 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2)이 VLAN 디바이스인지의 여부를 판단한다. VLAN 디바이스란 현재 로그인 중이며 또한 다른 VLAN 그룹에 현재 참가하고 있지 않은 클라이언트 단말을 말한다. 구체적으로, 기동 커맨드 제어부(133)는 중계 서버 정보 격납부(142)에 격납된 중계 서버 정보를 참조하여 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2)이 로그인 중인지의 여부를 판단한다. 또한, 기동 커맨드 제어부(133)는 로그인 중인 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2)에 기동 커맨드를 송신한다. 그리고, 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2)로부터 기동 커맨드에 대한 OK 신호를 수신하면, 기동 커맨드 제어부(133)는 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2)이 VLAN 디바이스라고 판단한다.
그 후에 기동 커맨드 제어부(133)는 응답 신호를 제 1 클라이언트 단말(A1)에 송신한다. 응답 신호에는 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2) 각각의 식별 정보, IP 어드레스 및 MAC 어드레스가 포함된다. 여기에서, 기동 커맨드 제어부(133)는 로그인 중인 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2)과는 LAN을 통해서 IP 통신을 하고 있다. 따라서, 기동 커맨드 제어부(133)는 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2) 각각의 IP 어드레스 및 MAC 어드레스를 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2)에 조회하는 것을 요하지 않는다. 또한, 응답 신호를 수신한 제 1 클라이언트 단말(A1)은 수신한 응답 신호에 의거하여 가상 어드레스 정보(80)를 작성한다(도 20의 스텝S115 및 스텝S116 참조).
15. 2 VLAN 세션의 확립
이어서, 초기화 커맨드와(도 20의 스텝S119 참조) 제 1 클라이언트 단말(A1)이 작성한 가상 어드레스 정보(80)를 제 2 중계 서버(B)가 수신했을 경우의 처리를 도 23을 참조해서 설명한다. 도 23은 초기화 커맨드를 수신한 중계 서버에 있어서의 VLAN 세션의 확립 처리를 나타내는 플로우차트이다. 또한, 제 1 클라이언트 단말(A1)로부터 가상 어드레스 정보(80)와 초기화 커맨드를 수신했을 경우의 제 3 중계 서버(C)의 동작은 제 2 중계 서버(B)의 처리와 마찬가지이므로 설명을 생략한다.
제 2 중계 서버(B)의 VLAN 세션 제어부(135)는 제 1 클라이언트 단말(A1)로부터 가상 어드레스 정보(80)와 초기화 커맨드를 수신하면(스텝S131에서 Yes), 초기화 커맨드로부터 VLAN 그룹의 식별 정보를 추출한다(스텝S132). 이 예에서는 VLAN 세션 제어부(135)는 「1279672104671.clientA1.rd.002@trial.net」을 추출한다.
이어서, VLAN 세션 제어부(135)는 추출한 식별 정보로부터 식별되는 제 1 VLAN 그룹이 기동 처리 중인지의 여부를 판단한다(스텝S133). 여기에서, 제 1 VLAN 그룹이 기동 처리 중이 아닌 경우에는 제 1 클라이언트 단말(A1)에 대하여 에러 응답을 회신하고(스텝S135), 처리를 종료한다.
한편, 제 1 VLAN 그룹이 기동 처리 중인 경우에는 VLAN 세션 제어부(135)는 가상 어드레스 정보(80)로부터 VLAN 디바이스를 추출한다(스텝S134). 이 예에서는 VLAN 세션 제어부(135)는 VLAN 디바이스인 제 1 클라이언트 단말(A1), 제 3 클라이언트 단말(B1), 제 4 클라이언트 단말(B2) 및 제 5 클라이언트 단말(C1)을 추출한다. 이어서, VLAN 세션 제어부(135)는 VLAN 그룹 정보 격납부(144)에 격납되어 있는 VLAN 그룹 정보(70)를 참조하여 추출한 VLAN 디바이스 중에서 더욱 배하의, 즉 제 2 중계 서버(B)에 접속된 VLAN 디바이스를 추출한다(스텝S136). 이 예에서는 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2)이 추출된다. 그 후에 VLAN 세션 제어부(135)는 배하의 VLAN 디바이스에 대하여 수신한 초기화 커맨드 및 가상 어드레스 정보(80)를 송신한다(스텝S137). 또한, 제 2 중계 서버(B) 이외의 중계 서버에 접속된 VLAN 디바이스에 대해서는 VLAN 세션 제어부(135)는 VLAN 그룹 정보(70)를 참조하여 중계 서버를 통해서 초기화 커맨드 및 가상 어드레스 정보(80)를 송신한다.
이어서, VLAN 세션 제어부(135)는 VLAN 그룹 정보(70)로부터 세션 정보(73)를 추출한다(스텝S138). 세션 정보(73)를 추출한 후, VLAN 세션 제어부(135)는 세션 정보(73)를 참조하여 「sp」로서 제 2 중계 서버가 설정되어 있고 또한 미확립인 허브 세션을 확립한다(스텝S139). 이 예에서는 VLAN 세션 제어부(135)는 「ep」로서 설정되어 있는 제 3 중계 서버(C)와의 사이에 허브 세션을 확립한다. 또한, 이때 제 1 중계 서버(A)에 있어서도 「sp」로서 제 2 중계 서버가 설정되어 있고 또한 미확립인 허브 세션을 확립하는 처리가 행해진다.
제 3 중계 서버(C)로부터 허브 세션의 확립에 대한 OK의 응답 신호를 수신하면(스텝S140), VLAN 세션 제어부(135)는 VLAN 그룹 정보(70)를 참조하여 제 2 중계 서버와 접속된 VLAN 디바이스와의 사이에 디바이스 세션을 확립한다(스텝S141). 이 예에서는 VLAN 세션 제어부(135)는 VLAN 그룹 정보(70)의 VLAN 클라이언트 단말 정보(72)를 참조하여 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2)과의 사이에 디바이스 세션을 확립한다.
그 후에 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2)로부터 OK의 응답 신호를 수신하면, 가상 어드레스 및 VLAN 세션을 사용해서 클라이언트 단말끼리가 VLAN 디바이스로서 서로 통신 가능해진다(스텝S142).
16. VLAN 세션의 일례
도 24의 시퀀스도를 참조하여 VLAN 세션을 확립할 때의 데이터의 흐름을 설명한다. 도 24는 VLAN 세션의 확립에 관계되는 처리의 흐름의 일례를 나타내는 도면이다.
이하, 제 1 VLAN 그룹에 있어서의 VLAN 세션의 확립 처리를 설명한다. 이 예에서는 제 1 클라이언트 단말(A1)이 유저로부터 도 11에 나타내는 VLAN 그룹 정보(70)로 나타내어지는 제 1 VLAN 그룹의 기동 지시를 접수하고, 도 12에 나타내는 가상 어드레스 정보(80)를 작성한다. 또한, VLAN 디바이스는 제 1 클라이언트 단말(A1), 제 3 클라이언트 단말(B1), 제 4 클라이언트 단말(B2) 및 제 5 클라이언트 단말(C1)이다.
또한, 이 동안 제 1 중계 그룹 내에 있어서의 기동 중인 각 중계 서버는 통상의 IP 어드레스 및 MAC 어드레스를 이용하여 WAN 인터페이스를 통해서 제 1 중계 그룹 내의 다른 기동 중인 중계 서버와 통신하고 있다. 그리고, 각 중계 서버 사이에서 제 1 중계 그룹 내에 있어서의 접속 상태의 변화를 공유하고 있다. 또한, 제 1 중계 그룹 내에 있어서의 기동 중인 각 클라이언트 단말은 LAN 인터페이스를 통해서 접속된 중계 서버와 통신하고 있다. 그리고, 클라이언트 단말과 중계 서버 사이에서 중계 통신 시스템에 있어서의 접속 상태의 변화가 공유되고 있다.
최초에, 제 1 클라이언트 단말(A1)은 제 1 중계 서버(A)를 통해서 VLAN 그룹 내에서 허브의 역할을 담당하며 기동 상태인 제 2 중계 서버(B)에 대하여 기동 정보를 송신한다[스텝S51: StartVlan(vlanGroupID), 스텝S51. 1: StartVlan(vlanGroupID)]. 제 2 중계 서버(B)는 VLAN 그룹 정보(70)를 참조하여 제 2 중계 서버(B)에 접속되어 있는 VLAN 클라이언트 단말인 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2)을 추출한다. 그리고, 제 2 중계 서버(B)는 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2)이 VLAN 디바이스인지의 여부를 판단한 다음, 기동 정보를 송신한다. 구체적으로는, 제 2 중계 서버(B)는 VLAN 디바이스인 제 3 클라이언트 단말(B1)에 대하여 기동 정보를 송신한다[스텝S51. 1. 1. A: StartVlan(vlanGroupID)]. 또한, 제 2 중계 서버(B)는 VLAN 디바이스인 제 4 클라이언트 단말(B2)에 대하여 기동 정보를 송신한다[스텝S51. 1. 1. B: StartVlan(vlanGroupID)].
제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2)로부터 OK를 수신한 후, 제 2 중계 서버(B)는 응답 신호{OK[clientB1(ip, mac), clientB2(ip, mac)]}를 제 1 중계 서버(A)를 통해서 제 1 클라이언트 단말(A1)에 송신한다. 응답 신호에는 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2) 각각의 식별 정보, IP 어드레스 및 MAC 어드레스가 포함되어 있다.
또한, 제 1 클라이언트 단말(A1)은 제 1 중계 서버(A)를 통해서 VLAN 그룹 내에서 허브의 역할을 담당하며 기동 상태인 제 3 중계 서버(C)에 대하여 기동 정보를 송신한다[스텝S52: StartVlan(vlanGroupID), 스텝S52. 1: StartVlan(vlanGroupID)]. 제 3 중계 서버(C)는 VLAN 그룹 정보를 참조하여 제 3 중계 서버(C)에 접속되어 있는 VLAN 클라이언트 단말인 제 5 클라이언트 단말(C1)을 추출한다. 그리고, 제 3 중계 서버(C)는 제 5 클라이언트 단말(C1)이 VLAN 디바이스인지의 여부를 판단한 다음, 제 5 클라이언트 단말(C1)에 대하여 기동 정보를 송신한다[스텝S52. 1. 1: StartVlan(vlanGroupID)].
제 5 클라이언트 단말(C1)로부터 OK를 수신한 제 3 중계 서버(C)는 응답 신호{OK[clientC1(ip, mac)]}를 제 1 중계 서버(A)를 통해서 제 1 클라이언트 단말(A1)에 송신한다. 응답 신호에는 제 5 클라이언트 단말(C1)의 식별 정보, IP 어드레스 및 MAC 어드레스가 포함되어 있다.
이어서, 제 1 클라이언트 단말(A1)은 응답 신호로부터의 추출 처리 및 가상 어드레스 정보(80)의 작성 처리를 행하고(도 20의 스텝S116, S118 참조), 허브를 구성하는 중계 서버에 대하여 초기화 커맨드 및 작성한 가상 어드레스 정보(80)를 송신한다. 우선, 제 1 클라이언트 단말(A1)은 제 1 중계 서버(A)를 통해서 제 2 중계 서버(B)에 대하여 초기화 커맨드 및 가상 어드레스 정보(80)를 송신한다[스텝S53: configVlan(vlanGroupID, addrList), 스텝S53. 1: configVlan(vlanGroupID, addrList)]. 이어서, 제 2 중계 서버(B)는 추출한 제 3 클라이언트 단말(B1)(도 23의 스텝S131∼스텝S134 및 스텝S136 참조)에 대하여 초기화 커맨드 및 가상 어드레스 정보(80)를 송신한다[스텝S53. 1. 1. A: configVlan(vlanGroupID, addrList)]. 또한, 제 2 중계 서버(B)는 마찬가지로 제 4 클라이언트 단말(B2)에 대하여 초기화 커맨드 및 가상 어드레스 정보를 송신한다[스텝S53. 1. 1. B: configVlan(vlanGroupID, addrList)]. 제 3 클라이언트 단말(B1) 및 제 4 클라이언트 단말(B2)로부터 OK를 수신한 후, 제 2 중계 서버(B)는 제 1 중계 서버(A)에 OK를 회신한다. OK를 수신한 제 1 중계 서버(A)는 제 1 클라이언트 단말(A1)에 OK를 회신한다.
또한, 제 1 클라이언트 단말(A1)은 제 1 중계 서버(A)를 통해서 제 3 중계 서버(C)에 대하여 초기화 커맨드 및 가상 어드레스 정보(80)를 송신한다[스텝S54: configVlan(vlanGroupID, addrList), 스텝S54. 1: configVlan(vlanGroupID, addrList)]. 이어서, 제 3 중계 서버(C)는 추출한 제 5 클라이언트 단말(C1)(도 23의 스텝S131∼스텝S134 및 스텝S136 참조)에 대하여 초기화 커맨드 및 가상 어드레스 정보(80)를 전송한다[스텝S54. 1. 1: configVlan(vlanGroupID, addrList)]. 제 5 클라이언트 단말(C1)로부터 OK를 수신한 후, 제 3 중계 서버(C)는 제 1 중계 서버(A)에 OK를 회신한다. OK를 수신한 제 1 중계 서버(A)는 제 1 클라이언트 단말(A1)에 OK를 회신한다. 이상의 처리에 의해, 제 1 VLAN 그룹 내의 모든 VLAN 디바이스에 가상 어드레스 정보(80)가 송신된다.
그 후에 허브의 역할을 담당하는 중계 서버는 VLAN 그룹 정보(70)의 세션 정보(73)를 참조하여 「sp」로서 중계 서버가 설정되어 있고 또한 미확립인 허브 세션을 확립한다. 이 예에서는 모든 허브 세션도 미확립이다. 그래서, 우선 「sp」로서 지정되어 있는 제 1 중계 서버(A)가 「ep」로서 지정되어 있는 제 2 중계 서버(B)에 대하여 허브 세션의 확립을 요구한다[스텝S55: createHubSsn(vlanGroupID)]. 제 2 중계 서버(B)로부터 OK가 회신되면 제 1 중계 서버(A)와 제 2 중계 서버(B) 사이에 허브 세션이 확립된다. 또한, 「sp」로서 지정되어 있는 제 1 중계 서버(A)는 「ep」로서 지정되어 있는 제 3 중계 서버(C)에 대하여 허브 세션의 확립을 요구한다[스텝S56: createHubSsn(vlanGroupID)]. 제 3 중계 서버(C)로부터 OK가 회신되면 제 1 중계 서버(A)와 제 3 중계 서버(C) 사이에 허브 세션이 확립된다.
또한, 「sp」로서 지정되어 있는 제 2 중계 서버(B)는 「ep」로서 지정되어 있는 제 3 중계 서버(C)에 대하여 허브 세션의 확립을 요구한다[스텝S57: createHubSsn(vlanGroupID)]. 제 3 중계 서버(C)로부터 OK가 회신되면 제 2 중계 서버(B)와 제 3 중계 서버(C) 사이에 허브 세션이 확립된다.
허브 세션이 확립되면, 허브의 역할을 담당하는 중계 서버는 중계 서버에 접속되어 있는 VLAN 디바이스와의 사이에 디바이스 세션을 확립한다. 우선, 제 1 중계 서버(A)는 제 1 클라이언트 단말(A1)에 대하여 디바이스 세션의 확립을 요구한다[스텝S58: createDeviceSsn(vlanGroupID)]. 제 1 클라이언트 단말(A1)로부터 OK가 회신되면 제 1 중계 서버(A)와 제 1 클라이언트 단말(A1) 사이에 디바이스 세션이 확립된다.
또한, 제 2 중계 서버(B)는 제 3 클라이언트 단말(B1)에 대하여 디바이스 세션의 확립을 요구한다[스텝S59: createDeviceSsn(vlanGroupID)]. 제 3 클라이언트 단말(B1)로부터 OK가 회신되면 제 2 중계 서버(B)와 제 3 클라이언트 단말(B1) 사이에 디바이스 세션이 확립된다. 제 2 중계 서버(B)는 제 4 클라이언트 단말(B2)에 대하여 디바이스 세션의 확립을 요구한다[스텝S60: createDeviceSsn(vlanGroupID)]. 제 4 클라이언트 단말(B2)로부터 OK가 회신되면 제 2 중계 서버(B)와 제 4 클라이언트 단말(B2) 사이에 디바이스 세션이 확립된다.
또한, 제 3 중계 서버(C)는 제 5 클라이언트 단말(C1)에 대하여 디바이스 세션의 확립을 요구한다[스텝S61: createDeviceSsn(vlanGroupID)]. 제 5 클라이언트 단말(C1)로부터 OK가 회신되면 제 3 중계 서버(C)와 제 5 클라이언트 단말(C1) 사이에 디바이스 세션이 확립된다.
상기한 바와 같이, VLAN 그룹 내에서 허브 세션 및 디바이스 세션을 포함하는 VLAN 세션이 확립되면, 각 VLAN 디바이스는 LAN 디바이스의 VLAN 인터페이스를 초기화하고, VLAN 인터페이스에 가상 어드레스를 설정한다. 각 VLAN 디바이스에 있어서 가상 어드레스가 설정되면 가상 어드레스와 VLAN 세션을 사용해서 VLAN 디바이스끼리가 VLAN 디바이스로서 서로 통신 가능해진다.
예를 들면, 가상 IP 어드레스가 「117.112.0.1」이며 가상 MAC 어드레스가 「00.11.22:f0:00:01」인 제 1 클라이언트 단말(A1)은 VLAN 세션을 통해서 가상 IP 어드레스가 「117.112.0.3」이며 가상 MAC 어드레스가 「00.11.22:f0:00:03」인 제 3 클라이언트 단말(B1)에 데이터 전송을 행할 수 있다. 구체적으로는, 제 1 클라이언트 단말(A1)은 디바이스 세션을 통해서 제 1 중계 서버(A)에 통신 패킷을 송신한다[스텝S62: sendData(packet01)]. 통신 패킷에는 송신처인 제 3 클라이언트 단말(B1)의 가상 어드레스와 송신하고 싶은 데이터가 포함된다. 이어서, 제 1 중계 서버(A)는 허브 세션을 통해서 제 2 중계 서버(B)에 통신 패킷을 송신한다[스텝S62. 1: sendData(packet01)]. 그 후에 제 2 중계 서버(B)는 디바이스 세션을 통해서 제 3 클라이언트 단말(B1)에 통신 패킷을 송신한다[스텝S62. 1. 1: sendData(packet01)].
본 실시형태의 중계 시스템에서는 상기한 바와 같이 VLAN 그룹 사이에서 VLAN 그룹 정보를 공유한다. 또한, VLAN 그룹을 기동시키면 VLAN 디바이스 사이에 VLAN 세션을 확립하고, VLAN 그룹을 기동할 때에 작성한 가상 어드레스 정보를 VLAN 디바이스 사이에서 공유하는 처리를 행한다. 또한, VLAN 디바이스의 VLAN 인터페이스에 가상 어드레스를 설정하는 처리가 행해지고, VLAN 인터페이스 및 VLAN 세션을 통해서 VLAN 디바이스 사이에서 데이터가 송수신된다. 이렇게, 본 실시형태의 중계 시스템에서는 WAN(4)을 통해서 가상 어드레스 및 VLAN 세션을 사용하여 클라이언트 단말끼리가 VLAN 디바이스로서 서로 통신 가능해진다.
17. 다른 실시형태
이상, 본 발명의 일실시형태에 대하여 설명했지만 본 발명은 상기 실시형태에 한정되는 것은 아니고, 발명의 요지를 일탈하지 않는 범위에서 여러 가지 변경이 가능하다. 특히, 본 명세서에 적힌 복수의 실시형태 및 변형예는 필요에 따라서 임의로 조합시키는 것이 가능하다.
17. 1 중계 서버 정보에 등록된 클라이언트 단말은 같은 중계 그룹을 구성하는 중계 서버이면, 접속된 중계 서버와는 다른 기타 중계 서버를 통해서 리모트 로그인할 수 있다. 따라서, VLAN 그룹 정보의 작성시와 VLAN 그룹의 기동시에서는 VLAN 클라이언트 단말이 다른 중계 서버를 통해서 로그인하고 있는 경우가 있다. 이렇게 클라이언트 단말이 다른 중계 서버를 통해서 로그인하고 있는 상태는 중계 서버 정보의 공유에 의해 동일 중계 그룹 내에서 기동하고 있는 중계 서버 및 클라이언트 단말간에 있어서 공유되고 있다.
상기와 같은 경우, 기동하는 VLAN 그룹의 선택을 접수한 클라이언트 단말의 VLAN 그룹 정보 갱신부(235)는, 세션 정보를 리모트 로그인을 접수한 중계 서버를 포함시킨 세션 정보로 갱신한다. 그리고, VLAN 그룹 정보 갱신부(235)는 갱신한 VLAN 그룹 정보를 VLAN 클라이언트 단말 및 VLAN 클라이언트 단말이 접속된 중계 서버 사이에서 공유시킨다.
예를 들면, 제 1 중계 그룹이 제 1 중계 서버(A), 제 2 중계 서버(B) 및 제 3 중계 서버(C)에 추가해서, 또한 VLAN 클라이언트 단말이 접속되어 있지 않은 제 4 중계 서버로 구성되어 있다고 가정한다. 이러한 제 1 중계 그룹에 있어서, 제 1 클라이언트 단말(A1)이 제 1 중계 서버(A)가 아니라 제 4 중계 서버를 통해서 제 1 중계 그룹에 리모트 로그인했을 경우, 공유되고 있는 세션 정보에는 제 4 중계 서버의 식별 정보는 포함되어 있지 않다.
그래서, 상기와 같은 상태에서 VLAN 그룹의 기동 지시를 접수했을 때에는 VLAN 그룹 정보 갱신부(235)는 세션 정보의 허브 정보에 제 4 중계 서버의 식별 정보를 추가한다. 또한, VLAN 그룹 정보 갱신부(235)는 제 4 중계 서버와 VLAN 디바이스가 접속된 다른 중계 서버 사이의 경로 정보를 작성하고, VLAN 그룹 정보의 세션 정보를 갱신한다. 그리고, 갱신한 VLAN 그룹 정보를 VLAN 디바이스 및 VLAN 디바이스가 접속된 중계 서버에 대하여 송신한다.
(산업상의 이용 가능성)
본 발명은 서로 통신 가능한 복수의 중계 서버와, 복수의 클라이언트 단말과, 클라이언트 단말을 중계 서버에 접속하는 LAN을 갖는 중계 통신 시스템, 및 그것에 사용되는 중계 서버에 널리 적용할 수 있다.
1 : 제 1 LAN 2 : 제 2 LAN
3 : 제 3 LAN 4 : WAN
30 : 중계 서버 정보 40 : 클라이언트 단말 정보
50 : 클라이언트 단말 정보 60 : 클라이언트 단말 정보
70 : VLAN 그룹 정보 80 : 가상 어드레스 정보
A : 제 1 중계 서버 B : 제 2 중계 서버
C : 제 3 중계 서버 A1 : 제 1 클라이언트 단말
A2 : 제 2 클라이언트 단말 B1 : 제 3 클라이언트 단말
B2 : 제 4 클라이언트 단말 C1 : 제 5 클라이언트 단말

Claims (10)

  1. 제 1 네트워크와,
    제 2 네트워크와,
    상기 제 1 네트워크에 접속되는 제 1 중계 서버와,
    상기 제 2 네트워크에 접속되고, 제 3 네트워크를 통해서 상기 제 1 중계 서버와 통신 가능한 제 2 중계 서버와,
    상기 제 1 중계 서버와 상기 제 1 네트워크를 통해서 접속되는 클라이언트 단말과,
    상기 제 2 중계 서버와 상기 제 2 네트워크를 통해서 접속되는 클라이언트 단말을 구비하고,
    상기 제 1 중계 서버, 상기 제 2 중계 서버, 상기 제 1 중계 서버에 접속되는 클라이언트 단말 및 상기 제 2 중계 서버에 접속되는 클라이언트 단말은,
    상기 제 1 중계 서버, 상기 제 2 중계 서버, 상기 제 1 중계 서버에 접속되는 클라이언트 단말 및 상기 제 2 중계 서버에 접속되는 클라이언트 단말이 중계 그룹을 구성하는 것을 나타내는 중계 그룹 정보를 격납하는 중계 그룹 정보 격납부와,
    상기 제 1 중계 서버의 기동 정보와, 상기 제 2 중계 서버의 기동 정보와, 상기 제 1 중계 서버에 접속되는 클라이언트 단말의 기동·등록 정보와, 상기 제 2 중계 서버에 접속되는 클라이언트 단말의 기동·등록 정보를 포함하는 중계 서버 정보를 격납하는 중계 서버 정보 격납부와,
    상기 중계 그룹 정보 및 상기 중계 서버 정보를 상기 제 1 중계 서버, 상기 제 2 중계 서버, 상기 제 1 중계 서버에 접속되는 클라이언트 단말 및 상기 제 2 중계 서버에 접속되는 클라이언트 단말 사이에서 공유시키는 정보 공유부와,
    상기 제 1 중계 서버에 접속된 클라이언트 단말 및 상기 제 2 중계 서버에 접속된 클라이언트 단말 중 둘 이상의 클라이언트 단말은 상기 중계 그룹에 있어서 VLAN 그룹을 구성하는 VLAN 클라이언트 단말이고, 상기 VLAN 클라이언트 단말이 접속된 상기 제 1 중계 서버의 식별 정보 및 상기 제 2 중계 서버의 식별 정보를 포함하는 허브 정보와, 상기 제 1 중계 서버 및 상기 제 2 중계 서버 사이에서 확립되는 세션의 접속측과 피접속측을 나타내는 세션 정보와, 상기 VLAN 클라이언트 단말을 식별하는 식별 정보를 포함하는 VLAN 그룹 정보를 상기 VLAN 클라이언트 단말 사이에서 공유시키는 VLAN 그룹 정보 제어부를 갖고,
    상기 제 1 중계 서버 및 상기 제 2 중계 서버는,
    상기 VLAN 그룹의 기동 지시를 수신했을 경우에 기동 가능한 상기 VLAN 클라이언트 단말로서의 VLAN 디바이스의 어드레스 정보를 포함하는 응답 신호를 송신하는 기동 커맨드 제어부와,
    상기 세션 정보에 의거하여 상기 제 1 중계 서버와 상기 제 2 중계 서버 사이에 VLAN 세션으로서의 허브 세션을 확립하고, 상기 제 1 중계 서버 또는 상기 제 2 중계 서버와 상기 제 1 중계 서버 또는 상기 제 2 중계 서버에 접속된 상기 VLAN 디바이스 사이에 VLAN 세션으로서의 디바이스 세션을 확립하는 VLAN 세션 제어부를 더 갖고,
    상기 제 1 중계 서버에 접속되는 클라이언트 단말 및 상기 제 2 중계 서버에 접속되는 클라이언트 단말은,
    상기 응답 신호에 의거하여 상기 VLAN 디바이스 각각에 대하여 부여되는 가상 어드레스를 포함하는 가상 어드레스 정보를 작성하고, 상기 가상 어드레스 정보를 상기 VLAN 디바이스에 송신하는 가상 어드레스 제어부를 더 갖고,
    상기 VLAN 디바이스일 경우에 부여된 상기 가상 어드레스를 상기 클라이언트 단말의 VLAN 인터페이스에 설정하고, 상기 가상 어드레스 정보 및 상기 VLAN 세션을 이용해서 다른 상기 VLAN 디바이스와 통신하는 것을 특징으로 하는 중계 통신 시스템.
  2. 제 1 항에 있어서,
    상기 제 1 중계 서버 및 상기 제 2 중계 서버는 상기 VLAN 디바이스간의 통신을 제어하는 중계 서버 통신 제어부를 더 갖고,
    상기 중계 서버 통신 제어부는 통신 패킷을 수신했을 경우 수신한 상기 통신 패킷을 해석하고, 상기 통신 패킷에 상기 가상 어드레스가 포함되어 있으면 상기 가상 어드레스를 참조하여 상기 가상 어드레스가 부여된 상기 VLAN 디바이스와 접속된 제 1 중계 서버 또는 상기 제 2 중계 서버에 상기 허브 세션을 통해서 상기 통신 패킷을 송신하거나, 또는 상기 가상 어드레스를 참조하여 상기 디바이스 세션을 통해서 상기 가상 어드레스가 부여된 상기 VLAN 디바이스에 대하여 상기 통신 패킷을 송신하는 것을 특징으로 하는 중계 통신 시스템.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 제 1 중계 서버, 상기 제 2 중계 서버, 상기 제 1 중계 서버에 접속되는 클라이언트 단말 및 상기 제 2 중계 서버에 접속되는 클라이언트 단말은 상기 VLAN 클라이언트 단말의 접속의 변화에 따라서 상기 VLAN 그룹 정보를 갱신하는 VLAN 그룹 정보 갱신부를 더 갖는 것을 특징으로 하는 중계 통신 시스템.
  4. 제 3 항에 있어서,
    제 3 네트워크를 통해서 상기 제 1 중계 서버 및 상기 제 2 중계 서버와 통신 가능하며 상기 중계 그룹을 구성하는 제 3 중계 서버를 더 구비하고,
    상기 중계 그룹 정보 및 상기 중계 서버 정보에는 상기 제 3 중계 서버의 정보가 더 포함되고,
    상기 VLAN 그룹 정보 갱신부는 상기 VLAN 그룹의 기동 지시를 수신했을 경우에 상기 VLAN 클라이언트 단말이 상기 허브 정보에 나타내어진 상기 제 1 중계 서버 및 상기 제 2 중계 서버와는 다른 상기 제 3 중계 서버에 접속되어 있으면, 상기 VLAN 그룹의 상기 허브 정보에 상기 제 3 중계 서버의 식별 정보를 추가하고, 상기 제 3 중계 서버를 포함하는 세션 정보를 작성해서 상기 VLAN 그룹 정보를 갱신하는 것을 특징으로 하는 중계 통신 시스템.
  5. 제 1 항 또는 제 2 항에 있어서,
    상기 가상 어드레스는 상기 VLAN 디바이스에 부여되는 가상 IP 어드레스 및 가상 MAC 어드레스를 포함하는 것을 특징으로 하는 중계 통신 시스템.
  6. 제 1 네트워크에 접속되는 제 1 중계 서버와 통신 가능하고, 제 2 네트워크에 접속되는 제 2 중계 서버로서 기능하는 중계 서버로서:
    상기 제 1 중계 서버, 상기 제 2 중계 서버, 상기 제 1 중계 서버에 접속되는 클라이언트 단말 및 상기 제 2 중계 서버에 접속되는 클라이언트 단말이 중계 그룹을 구성하는 것을 나타내는 중계 그룹 정보를 격납하는 중계 그룹 정보 격납부와,
    상기 제 1 중계 서버의 기동 정보와, 상기 제 2 중계 서버의 기동 정보와, 상기 제 1 중계 서버에 접속되는 클라이언트 단말의 기동·등록 정보와, 상기 제 2 중계 서버에 접속되는 클라이언트 단말의 기동·등록 정보를 포함하는 중계 서버 정보를 격납하는 중계 서버 정보 격납부와,
    상기 중계 그룹 정보 및 상기 중계 서버 정보를 상기 제 1 중계 서버, 상기 제 2 중계 서버, 상기 제 1 중계 서버에 접속되는 클라이언트 단말 및 상기 제 2 중계 서버에 접속되는 클라이언트 단말 사이에서 공유시키는 정보 공유부와,
    상기 제 1 중계 서버에 접속된 클라이언트 단말 및 상기 제 2 중계 서버에 접속된 클라이언트 단말 중 둘 이상의 클라이언트 단말은 상기 중계 그룹에 있어서 VLAN 그룹을 구성하는 VLAN 클라이언트 단말이고, 상기 VLAN 클라이언트 단말이 접속된 상기 제 1 중계 서버의 식별 정보 및 상기 제 2 중계 서버의 식별 정보를 포함하는 허브 정보와, 상기 제 1 중계 서버와 상기 제 2 중계 서버 사이에서 확립되는 세션의 접속측과 피접속측을 나타내는 세션 정보와, 상기 VLAN 클라이언트 단말을 식별하는 식별 정보를 포함하는 VLAN 그룹 정보를 상기 VLAN 클라이언트 단말 사이에서 공유시키는 VLAN 그룹 정보 제어부와,
    상기 VLAN 그룹의 기동 지시를 수신했을 경우에 기동 가능한 상기 VLAN 클라이언트 단말로서의 VLAN 디바이스의 어드레스 정보를 포함하는 응답 신호를 송신하는 기동 커맨드 제어부와,
    상기 응답 신호에 의거하여 작성된 상기 VLAN 디바이스 각각에 대하여 부여된 가상 어드레스를 포함하는 가상 어드레스 정보를 수신하면, 상기 VLAN 디바이스에 상기 가상 어드레스 정보를 송신하는 가상 어드레스 제어부와,
    상기 세션 정보에 의거하여 상기 제 1 중계 서버와의 사이에 VLAN 세션으로서의 허브 세션을 확립하고, 상기 제 2 중계 서버와 상기 제 2 중계 서버에 접속된 상기 VLAN 디바이스 사이에 VLAN 세션으로서의 디바이스 세션을 확립하는 VLAN 세션 제어부와,
    상기 가상 어드레스 정보 및 상기 VLAN 세션을 이용한 상기 VLAN 디바이스간의 통신을 제어하는 중계 서버 통신 제어부를 구비하는 것을 특징으로 하는 중계 서버.
  7. 제 6 항에 있어서,
    상기 중계 서버 통신 제어부는 통신 패킷을 수신했을 경우 수신한 상기 통신 패킷을 해석하고, 상기 통신 패킷에 상기 가상 어드레스가 포함되어 있으면 상기 가상 어드레스를 참조하여 상기 가상 어드레스가 부여된 상기 VLAN 디바이스와 접속된 상기 제 1 중계 서버에 상기 통신 패킷을 상기 허브 세션을 통해서 송신하거나, 또는 상기 가상 어드레스를 참조하여 상기 디바이스 세션을 통해서 상기 가상 어드레스가 부여된 상기 VLAN 디바이스에 대하여 상기 통신 패킷을 송신하는 것을 특징으로 하는 중계 서버.
  8. 제 6 항 또는 제 7 항에 있어서,
    상기 VLAN 클라이언트 단말의 접속의 변화에 따라서 상기 VLAN 그룹 정보를 갱신하는 VLAN 그룹 정보 갱신부를 더 구비하는 것을 특징으로 하는 중계 서버.
  9. 제 8 항에 있어서,
    상기 VLAN 그룹 정보 갱신부는 상기 VLAN 그룹의 기동 지시를 수신했을 경우에 상기 VLAN 클라이언트 단말이 상기 허브 정보에 나타어내진 상기 제 1 중계 서버 및 상기 제 2 중계 서버와는 달리 상기 중계 그룹을 구성하는 제 3 중계 서버에 접속되어 있으면, 상기 VLAN 그룹의 상기 허브 정보에 상기 제 3 중계 서버의 식별 정보를 추가하고, 상기 제 3 중계 서버를 포함하는 세션 정보를 작성해서 상기 VLAN 그룹 정보를 갱신하는 것인 중계 서버.
  10. 제 6 항 또는 제 7 항에 있어서,
    상기 가상 어드레스는 상기 VLAN 디바이스에 부여되는 가상 IP 어드레스 및 가상 MAC 어드레스를 포함하는 것인 중계 서버.
KR1020137015746A 2010-12-16 2011-10-17 중계 통신 시스템 및 중계 서버 KR101446974B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JPJP-P-2010-280035 2010-12-16
JP2010280035A JP5636940B2 (ja) 2010-12-16 2010-12-16 中継通信システムおよび中継サーバ
PCT/JP2011/073873 WO2012081303A1 (ja) 2010-12-16 2011-10-17 中継通信システムおよび中継サーバ

Publications (2)

Publication Number Publication Date
KR20130096302A KR20130096302A (ko) 2013-08-29
KR101446974B1 true KR101446974B1 (ko) 2014-10-06

Family

ID=46244418

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137015746A KR101446974B1 (ko) 2010-12-16 2011-10-17 중계 통신 시스템 및 중계 서버

Country Status (8)

Country Link
US (1) US9380130B2 (ko)
EP (1) EP2654253B1 (ko)
JP (1) JP5636940B2 (ko)
KR (1) KR101446974B1 (ko)
CN (1) CN103262477B (ko)
SG (1) SG191017A1 (ko)
TW (1) TWI568218B (ko)
WO (1) WO2012081303A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5636940B2 (ja) * 2010-12-16 2014-12-10 村田機械株式会社 中継通信システムおよび中継サーバ
JP5773205B2 (ja) * 2011-11-30 2015-09-02 村田機械株式会社 中継サーバ及び中継通信システム
EP3404998B1 (en) * 2016-03-25 2023-05-24 Cloudminds Robotics Co., Ltd. Communication method and apparatus, electronic device, and program product

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008129991A (ja) 2006-11-24 2008-06-05 Murata Mach Ltd 中継サーバおよび中継通信システム
JP2010068051A (ja) 2008-09-08 2010-03-25 Murata Machinery Ltd 中継サーバ、中継通信システム
JP2010268312A (ja) 2009-05-15 2010-11-25 Murata Machinery Ltd 中継通信システム

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001186321A (ja) * 1999-12-24 2001-07-06 Murata Mach Ltd ファクシミリ装置
US20040114194A1 (en) * 2002-12-11 2004-06-17 Murata Kikai Kabushiki Kaisha Facsimile machine
JP3990272B2 (ja) * 2002-12-20 2007-10-10 富士通株式会社 メーリングリスト管理システムおよび電子メール送受信装置
JP2004234292A (ja) * 2003-01-30 2004-08-19 Murata Mach Ltd 通信装置
US20040246531A1 (en) * 2003-06-03 2004-12-09 Murata Kikai Kabushiki Kaisha Server device having electronic bulletin board function
JP2005210548A (ja) * 2004-01-26 2005-08-04 Murata Mach Ltd ネットワークファクシミリ装置
JP2005217938A (ja) * 2004-01-30 2005-08-11 Murata Mach Ltd ネットワークファクシミリ装置
US20060112271A1 (en) * 2004-11-22 2006-05-25 Murata Kikai Kabushiki Kaisha Cipher mail server device
JP2006222476A (ja) * 2005-02-08 2006-08-24 Murata Mach Ltd 電子メール端末装置
JP4038221B2 (ja) * 2005-12-08 2008-01-23 フリービット株式会社 中継装置及びクライアント機器とサーバとの接続方法
JP4492575B2 (ja) * 2006-03-29 2010-06-30 村田機械株式会社 中継装置および通信システム
EP1942634B1 (en) 2006-11-24 2012-08-29 Murata Machinery, Ltd. Relay server, relay communication system, and communication device
CN100566300C (zh) * 2007-07-06 2009-12-02 中国科学院沈阳计算技术研究所有限公司 一种控制媒体传输路径的网状中继方法及ip通信系统
JP4734374B2 (ja) * 2008-06-04 2011-07-27 アラクサラネットワークス株式会社 ネットワーク中継装置、および、ネットワーク中継装置方法
TWI455547B (zh) * 2008-09-01 2014-10-01 Murata Machinery Ltd Relay server and relay communication system
EP2323320B1 (en) * 2008-09-05 2013-04-17 Murata Machinery, Ltd. Relay server, relay communication system and communication apparatus
CN102422601B (zh) * 2009-05-15 2014-07-09 村田机械株式会社 中继通信系统及第一中继服务器
JP5636941B2 (ja) * 2010-12-16 2014-12-10 村田機械株式会社 中継通信システムおよび中継サーバ
JP5636940B2 (ja) * 2010-12-16 2014-12-10 村田機械株式会社 中継通信システムおよび中継サーバ

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008129991A (ja) 2006-11-24 2008-06-05 Murata Mach Ltd 中継サーバおよび中継通信システム
JP2010068051A (ja) 2008-09-08 2010-03-25 Murata Machinery Ltd 中継サーバ、中継通信システム
JP2010268312A (ja) 2009-05-15 2010-11-25 Murata Machinery Ltd 中継通信システム

Also Published As

Publication number Publication date
EP2654253B1 (en) 2016-03-16
US9380130B2 (en) 2016-06-28
EP2654253A1 (en) 2013-10-23
SG191017A1 (en) 2013-07-31
TWI568218B (zh) 2017-01-21
CN103262477A (zh) 2013-08-21
JP2012129830A (ja) 2012-07-05
TW201228298A (en) 2012-07-01
CN103262477B (zh) 2015-12-02
JP5636940B2 (ja) 2014-12-10
US20130275501A1 (en) 2013-10-17
EP2654253A4 (en) 2015-04-22
WO2012081303A1 (ja) 2012-06-21
KR20130096302A (ko) 2013-08-29

Similar Documents

Publication Publication Date Title
US9319484B2 (en) Relay communication system and relay servers
KR101257724B1 (ko) 제 1 중계 서버 및 제 2 중계 서버
US8554935B2 (en) Relay server and relay communication system
US9521012B2 (en) Relay server and relay communication system
KR101446974B1 (ko) 중계 통신 시스템 및 중계 서버
KR101406852B1 (ko) 중계 통신 시스템 및 중계 서버
JP5786620B2 (ja) 中継サーバ
JP5862231B2 (ja) 中継サーバ
JP5347894B2 (ja) 中継サーバおよび中継通信システム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190916

Year of fee payment: 6