WO2012107983A1 - 中継サーバ及び中継通信システム - Google Patents

中継サーバ及び中継通信システム Download PDF

Info

Publication number
WO2012107983A1
WO2012107983A1 PCT/JP2011/006862 JP2011006862W WO2012107983A1 WO 2012107983 A1 WO2012107983 A1 WO 2012107983A1 JP 2011006862 W JP2011006862 W JP 2011006862W WO 2012107983 A1 WO2012107983 A1 WO 2012107983A1
Authority
WO
WIPO (PCT)
Prior art keywords
routing
relay server
sub
relay
information
Prior art date
Application number
PCT/JP2011/006862
Other languages
English (en)
French (fr)
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 村田機械株式会社
Priority to US13/984,117 priority Critical patent/US9197557B2/en
Priority to CN201180055209.2A priority patent/CN103222240B/zh
Publication of WO2012107983A1 publication Critical patent/WO2012107983A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • H04L12/4625Single bridge functionality, e.g. connection of two networks over a single bridge
    • 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/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0038System on Chip

Definitions

  • the present invention mainly relates to a relay server that enables communication between terminals connected to different LANs (Local Area Networks).
  • LANs Local Area Networks
  • VPN virtual private network
  • the relay server stores not only the identification information and IP address of the terminal in the LAN to which it is connected, but also the identification information and IP address of the terminal connected to the other LAN.
  • a configuration for performing communication based on stored contents is known. In this configuration, when a large number of terminals are connected to each LAN, the amount of information stored in the relay server is enormous. Further, in this configuration, when the terminal connected to each LAN is frequently changed, it is necessary to exchange information between the relay servers every time the change is made. Therefore, the processing becomes complicated and the amount of information exchanged between the relay servers becomes enormous.
  • the present invention has been made in view of the above circumstances, and its main object is to construct a VPN that does not increase the amount of information to be stored and the amount of information to be transmitted / received even when the network is complicated. Is to provide a simple relay server.
  • the relay server includes a relay group information storage unit, a relay server information storage unit, a VPN group information storage unit, a sub VPN group information storage unit, an address filter information storage unit, a sub address filter information storage unit, A communication control unit.
  • the relay group information storage unit stores information on relay groups including other relay servers that can be mutually connected to itself (relay server).
  • the relay server information storage unit stores relay server information including start information of the relay server belonging to the relay group and start information and registration information of a client terminal belonging to the relay server belonging to the relay group. .
  • the VPN group information storage unit includes a routing relay server that is the relay server set as a routing point among the relay servers that constitute the relay communication system based on the relay group information and the relay server information.
  • the VPN relay group that communicates with the virtual private network via a routing session established between the routing relay servers, the identification information of the routing relay servers constituting the VPN group and the routing relay servers connected to each other The routing session information shown is stored.
  • the subVPN group information storage unit Sub VPN group information including sub routing point information indicating the device is stored.
  • the address filter information storage unit uses information indicating the address of a routing target device that can be designated as a packet transfer destination by a routing relay server or sub-routing device as address filter information for the routing relay server or sub-routing device.
  • the address filter information about the routing relay server and the address filter information about the sub-routing device of the routing relay server are stored in association with the identification information of the routing relay server.
  • the sub-address filter information storage unit stores address filter information about the sub-routing device of itself (relay server) in association with identification information of the sub-routing device.
  • the communication control unit controls to establish a routing session between itself (relay server) and the routing relay server, to establish a sub-routing session between itself and its own sub-routing device, and the routing And packet transfer control for transferring packets received through the session or the sub-routing session.
  • the packet transfer control receives a packet via the routing session, and the transmission destination of the received packet is associated with itself in the storage content of the address filter information storage unit, the sub-address filter information
  • the packet is transferred to the sub-routing device; otherwise, the packet is transferred to the destination Control.
  • the relay server can construct a VPN with the routing relay server selected from the other relay servers constituting the relay communication system, and share files only with the necessary relay server. it can.
  • the above configuration can simplify the VPN group information as compared with the VPN configured such that the client terminal functions as a routing point in addition to the relay server.
  • the address filter information storage unit stores the address filter information for the sub-routing device in association with the identification information of the routing relay server, without associating it with the identification information of the sub-routing device. Therefore, even in a network having a configuration with a large number of sub-routing points, it is possible to suppress the storage contents of the address filter information storage unit from becoming complicated. As described above, the amount of information stored in the relay server can be reduced. Furthermore, when synchronizing such information with other routing relay servers, the amount of information exchanged between the routing relay servers can be suppressed.
  • the relay server preferably has the following configuration. That is, when receiving an instruction to start a virtual private network from the client terminal belonging to itself and an instruction to set the client terminal as a sub-routing point, the communication control unit A control for adding the client terminal that has instructed to start the service to the sub-VPN group information, a control for transmitting the address filter information about the client terminal to the other routing relay server, and the client and the client Control to establish the sub-routing session with the terminal.
  • the sub-routing point can be changed while maintaining the virtual private network.
  • this relay communication system includes a plurality of relay servers and client terminals.
  • the client terminals can be connected to each other via the relay server.
  • the relay server includes a relay group information storage unit, a relay server information storage unit, a VPN group information storage unit, a sub VPN group information storage unit, an address filter information storage unit, a sub address filter information storage unit, and a communication control.
  • the relay group information storage unit stores information on relay groups including other relay servers that are mutually connectable with the relay server.
  • the relay server information storage unit stores relay server information including start information of the relay server belonging to the relay group, start information and registration information of the client terminal.
  • the VPN group information storage unit is configured to include a routing relay server that is the relay server set as a routing point among the relay servers, and a virtual private network via a routing session established between the routing relay servers.
  • the identification information of the routing relay server constituting the VPN group and the routing session information indicating the routing relay servers connected to each other are stored.
  • the subVPN group information storage unit The sub VPN group information including the sub routing point information shown is stored.
  • the address filter information storage unit uses information indicating the address of a routing target device that can be designated as a packet transfer destination by a routing relay server or sub-routing device as address filter information for the routing relay server or sub-routing device.
  • the address filter information about the routing relay server and the address filter information about the sub-routing device of the routing relay server are stored in association with the identification information of the routing relay server.
  • the sub-address filter information storage unit stores address filter information about the sub-routing device of the relay server in association with identification information of the sub-routing device.
  • the communication control unit includes control for establishing a routing session with the other routing relay server, control for establishing a sub-routing session between the relay server and a sub-routing device, and the routing session or the sub And packet transfer control for transferring packets received via the routing session.
  • the packet transfer control receives a packet via the routing session, and the transmission destination of the received packet is associated with the relay server in the storage content of the address filter information storage unit, the subaddress
  • the packet is transferred to the sub-routing device. Otherwise, the packet is sent to the transmission destination. This is a control for transferring a packet.
  • a VPN can be constructed using the routing relay server selected from the relay server, so that files can be shared only with the necessary relay server.
  • the above configuration can simplify the VPN group information as compared with the VPN configured such that the client terminal functions as a routing point in addition to the relay server.
  • the address filter information storage unit stores the address filter information for the client terminals included in the sub VPN group in association with the identification information of the routing relay server, not in association with the identification information of the client terminal. . Therefore, even in a network having a configuration with a large number of sub-routing points, it is possible to suppress the storage contents of the address filter information storage unit from becoming complicated. As described above, the amount of information stored in each relay server can be reduced. Furthermore, when synchronizing such information with other routing relay servers, it is possible to construct a relay communication system capable of suppressing the amount of information exchanged between the routing relay servers.
  • the flowchart which shows the process for starting VPN based on VPN group information The flowchart which shows the process for starting VPN based on VPN group information.
  • FIG. 1 is an explanatory diagram showing the overall configuration of a relay communication system 100 according to an embodiment of the present invention.
  • the relay communication system 100 includes a plurality of LANs 10, 20, 30 and the like connected to a wide area network (WAN).
  • WAN wide area network
  • Each of the LANs 10, 20, and 30 is a relatively small network constructed in a limited place, and each is located in a physically separated place.
  • the Internet is used as the WAN 80.
  • a relay server 1 a client terminal 11, and a communication device 12 are connected to the LAN 10.
  • a relay server 2 a client terminal 21, a communication device 22, and a communication device 23 are connected to the LAN 20.
  • a file server 31 is connected to the LAN 30.
  • another LAN 36 is connected to the LAN 30 via a router 35.
  • a client terminal 37, a file server 38, and a client terminal 39 are connected to the LAN 36.
  • another LAN 41 is connected to the LAN 30 via a router 40.
  • a client terminal 42 and a file server 43 are connected to the LAN 41.
  • each of the relay servers 1, 2, and 3 is connected not only to the LANs 10, 20, and 30 but also to the WAN 80, not only can it communicate with client terminals connected to the same LAN, but also to other LANs. It is possible to communicate with the arranged relay server. Therefore, a private IP address is assigned to the relay servers 1, 2, and 3 in addition to the global IP address.
  • the client terminals 11, 21, 37, 39, and 42 are constituted by personal computers, for example, and can communicate with each other via the relay servers 1, 2, 3, and the like.
  • the communication devices 12, 22, and 23 are configured by, for example, a personal computer, and can transmit packets to a terminal connected to the LAN via a LAN or the like to which the communication device 12, 22, or 23 is connected.
  • the file servers 31, 38, and 43 are configured by, for example, a network connection storage, and can transmit packets to a terminal connected to the LAN via a LAN or the like to which the file server 31, 38, or 43 is connected.
  • FIG. 2 is a functional block diagram of the relay server 3.
  • the relay server 3 includes a storage unit 50, a control unit 60, and an interface unit 70.
  • the interface unit 70 can communicate with terminals connected to the LAN 30 and the LAN 36 using a private IP address. In addition, the interface unit 70 can perform communication via the WAN 80 using a global IP address.
  • the control unit 60 is a CPU having control and calculation functions, for example, and can execute various processes by a program read from the storage unit 50.
  • the control unit 60 can control various communications according to protocols such as TCP / IP, UDP, and SIP.
  • the control unit 60 includes an interface driver 61, a LAN side IP packet processing unit 62, a communication control unit 63, and a WAN side IP packet processing unit 64.
  • the interface driver 61 is driver software that controls the interface unit 70.
  • the LAN side IP packet processing unit 62 performs appropriate processing on the packet received from the LAN 30 and outputs the packet to the communication control unit 63.
  • the WAN-side IP packet processing unit 64 performs appropriate processing on the packet received from the WAN 80 and outputs the packet to the communication control unit 63.
  • the communication control unit 63 determines the transmission destination of the received packet based on the information indicated by the packet and the information stored in the storage unit 50, and transmits the packet to the determined transmission destination. Moreover, the communication control part 63 can update the memory content of the memory
  • the storage unit 50 is composed of, for example, a hard disk or a nonvolatile RAM, and can store various data.
  • the storage unit 50 includes a relay group information storage unit 51, a relay server information storage unit 52, a client terminal information storage unit 53, a VPN group information storage unit 54, a sub VPN group information storage unit 55, and an address filter information storage. Unit 56 and a sub-address filter information storage unit 57.
  • FIG. 3 is a diagram showing the contents of the relay group information.
  • FIG. 4 is a diagram showing the contents of the relay server information.
  • FIG. 5 is a diagram showing the contents of the client terminal information.
  • FIG. 6 is a diagram showing the contents of VPN group information.
  • FIG. 7 is a diagram showing the contents of the sub VPN group information.
  • FIG. 8 is a diagram for explaining address filter information.
  • FIG. 9 is a diagram showing the contents stored in the address filter information storage unit 56.
  • FIG. 10 is a diagram showing the contents stored in the sub-address filter information storage unit 57.
  • the relay group information storage unit 51 stores relay group information indicating a relay group and a relay server that constitutes the relay group.
  • group tag As shown in FIG. 3, in the relay group information, a group tag and a site tag of a child element whose parent element is the group tag are described.
  • group information 511 related to the relay group is described.
  • group information 511 relay group identification information (“id”), last update time (“lastmod”), and relay group name (“name”) are described.
  • site tag group configuration information 512 related to the relay server that configures the relay group is described.
  • identification information (“id”) of the relay server is described.
  • additional relay groups can be created. In this case, unique identification information different from other relay groups is given to the new relay group. As a result, settings such as data exchange only within a specific relay group are possible.
  • this relay group information is shared among the relay servers 1, 2, and 3 constituting the relay group.
  • the fact is transmitted to the other relay server and the relay group information is updated. In this way, relay group information is dynamically shared.
  • the relay server information storage unit 52 stores relay server information indicating an outline of a relay server that performs relay communication and a client terminal that belongs to the relay server.
  • a site tag described for each relay server and a node tag of a child element having the site tag as a parent element are described.
  • server information 521 regarding the relay server 1 is described.
  • server information 521 relay server identification information (“id”), a relay server name (“name”), and activation information (“stat”) are described.
  • stat When the content of stat is “active”, it indicates that the relay server is logged in to the relay communication system 100, and when stat is blank, it indicates that the log-off is being performed.
  • affiliation information 522 indicating a client terminal belonging to the relay server is described.
  • the belonging information 522 includes the name of the relay group to which it belongs (“group”), the identification information of the client terminal (“id”), the name of the client terminal (“name”), and the identification information of the login destination relay server. ("Site”). When the client terminal is not logged in to the relay server (relay communication system 100), “site” is blank.
  • the communication by the relay group is performed as follows based on the relay group information and the relay server information. For example, when a packet is transmitted from the client terminal 11 to the client terminal 21, first, the client terminal 11 transmits the packet to the relay server 1, which is a relay server to which the client terminal 11 is connected.
  • the relay server capable of exchanging packets can be grasped based on the above relay group information, and the identification information of the client terminal belonging to the relay server and the connection possibility can be determined based on the above relay server information. I can grasp it.
  • the relay server 1 transmits a packet to the relay server 2 that is a relay server to which the client terminal 21 is connected. Then, the relay server 2 transmits a packet to the client terminal 21. In this way, relay communication can be performed between the client terminals 11 and 21.
  • This relay server information is also shared among the relay servers 1, 2, and 3 constituting the relay group, like the relay group information.
  • the relay server information is dynamically shared.
  • the client terminal information storage unit 53 stores client terminal information that is detailed information about the client terminal.
  • the relay servers 1, 2, and 3 store only client terminal information related to client terminals belonging to the relay server. For example, since the client terminal 11 belongs to the relay server 1 as shown in FIG. 1, only the client terminal information of the client terminal 11 is stored in the client terminal information storage unit 53 provided in the relay server 1. Yes.
  • the client terminal information stored in the client terminal information storage unit 53 of the relay server 1 is shown in FIG. Similarly, the client terminal information stored in the relay server 2 is shown in FIG. 5B, and the client terminal information stored in the relay server 3 is shown in FIG. 5C.
  • the node tag includes a private IP address (“addr”) of the client terminal, a name of the relay group to which the client terminal belongs (“group”), identification information (“id”), a name (“name”), a relay A password for logging in to the server (“pass”) and port information (“port”) are described.
  • the VPN group information storage unit 54 stores VPN group information, which is information related to a VPN group configured by a relay server (hereinafter referred to as a routing relay server) selected from the relay servers constituting the relay group.
  • a VPN group is a group configured in a relay group, and a virtual network (VPN) can be constructed by establishing a routing session between routing relay servers.
  • VPN virtual network
  • VPN-GROUP 1 a VPN group composed of the relay server 1 and the relay server 3
  • VPN-GROUP 2 a VPN group composed of the relay server 2 and the relay server 3
  • FIG. 6 (a) The VPN group information for VPN-GROUP 1
  • FIG. 6 (b) The VPN group information for VPN-GROUP 2 is shown in FIG. 6 (b).
  • VPN group basic information 541 includes a relay group name (“group”) to which the VPN group belongs, a VPN group identification information (“id”), a last update time (“lastmod”), and a VPN group name. (“Name").
  • the routing point information 542 describes identification information of a routing relay server that performs routing when communication is performed within the VPN group.
  • the routing session information 543 describes routing relay servers connected to each other in each VPN group. In the routing session information 543, the routing relay server performs communication control first (“sp (start point)”) in the routing session establishment process for starting VPN in the VPN group, and the side receiving the communication control. “Ep (end point)”. In the following description, the routing relay server that first performs communication control for establishing a routing session may be referred to as a “start point”, and the routing relay server that receives the communication control as a “end point”. is there.
  • This VPN group information is shared among the relay servers that make up the VPN group. Specifically, VPN group information about VPN-GROUP 1 is shared between the relay server 1 and the relay server 3, and VPN group information about VPN-GROUP 2 is shared between the relay server 2 and the relay server 3.
  • VPN group information is shared between the relay server 1 and the relay server 3
  • VPN group information about VPN-GROUP 2 is shared between the relay server 2 and the relay server 3.
  • the sub-VPN group information storage unit 55 is composed of one or a plurality of client terminals (hereinafter referred to as sub-routing devices) set as sub-routing points among client terminals belonging to itself (relay server 3). Information relating to the VPN group (sub VPN group information) is stored.
  • the sub-routing device can behave like a routing point by establishing a routing session with the relay server 3 after establishing a routing session between the routing relay servers.
  • client terminals set as sub-routing points may be different for each VPN group, or may be the same.
  • a routing session formed between the routing relay server and the sub-routing device may be particularly referred to as a “sub-routing session”.
  • the sub VPN group information storage unit 55 stores sub routing point information and sub routing session information for each VPN group.
  • FIG. 7A shows sub-routing point information corresponding to VPN-GROUP2.
  • the sub-routing point information describes a list of identification information of the sub-routing device.
  • FIG. 7B shows sub-routing session information corresponding to VPN-GROUP2.
  • the sub-routing session information includes identification information of the device (starting side) that performs communication control first in the sub-routing session established between the routing relay server and the sub-routing device. And the identification information of the device on the communication control side (end point side) are stored in association with each other.
  • the above sub-VPN group information is shared between the routing relay server and the sub-routing device.
  • this sub VPN group information is not shared between routing relay servers. That is, the routing relay server stores only its own sub VPN group information in the sub VPN group information storage unit 55, and does not store sub VPN group information of other relay servers (routing relay servers).
  • the address filter information is information indicating an address of a routing target device that can be designated as a packet transfer destination by a device to a device (routing relay server or sub-routing device) that transfers the packet.
  • information indicating the address of the routing target device to which the routing relay server (or sub-routing device) can transfer a packet is referred to as address filter information about the routing relay server (or sub-routing device).
  • FIG. 8 shows a routing relay server or the like and the address filter information about the routing relay server or the like in association with each other. As shown in FIG. 8, for example, the relay server 1 can transfer a packet to the communication device 12.
  • the address filter information storage unit 56 stores the address filter information about the routing relay server and the address filter information about the sub-routing device in association with the identification information of the routing relay server. Yes. That is, in the address filter information storage unit 56, even the address filter information for the client terminal 37 is stored in a form associated with the identification information of the relay server 3 (not the client terminal 37). Note that the address filter information storage unit 56 stores not only the IP address of the routing target device but also the name of the routing target device. As the name of the routing target device, for example, an arbitrary name can be set in consideration of the type of device (processing device, communication device, file server, etc.) and the location where the device is arranged. Can be managed in an easy-to-understand manner. Each relay server as a routing point can display this address filter information on an external display device or the like.
  • the sub-address filter information storage unit 57 stores the address filter information about the sub-routing device (client terminal 37) in association with the identification information of the sub-routing device (client terminal 37). . Accordingly, the sub-address filter information storage unit 57 and the address filter information storage unit 56 differ in devices (identification information) associated with the address filter information in the stored contents. Further, the sub-address filter information storage unit 57 stores only the address filter information for the sub-routing device of the own device (relay server 3), and does not store the address filter information for the sub-routing devices of other routing relay servers. Therefore, the stored contents of the sub-address filter information storage unit 57 are not shared between the routing relay servers, and the stored contents are unique to each relay server.
  • the routing relay server when starting the VPN, notifies the other routing relay server of the address filter information about itself and the address filter information about the sub-routing device.
  • the routing relay server that has received this notification is configured to update the storage content of the address filter information storage unit 56 based on the notification content (however, the storage content of the sub-address filter information storage unit 57 is not updated). .
  • the relay server 3 is configured as described above. As described above, the contents stored in the sub-VPN group information storage unit 55 and the sub-address filter information storage unit 57 are only contents related to the relay server 3 and are synchronized with other relay servers. Absent. Therefore, it is possible to prevent the stored contents from being enlarged in each relay server. Further, although a detailed description of the configuration of the relay servers 1 and 2 is omitted, the storage server 50 and the control unit 60 configured substantially the same as the relay server 3 are provided.
  • FIG. 11 is a flowchart showing processing for creating a VPN group.
  • FIG. 12 is a sequence diagram showing communication processing for creating a VPN group and starting VPN.
  • a user who uses the relay communication system 100 can display the VPN group setting screen on the display of the client terminal 39 by logging in to the relay server 3 from the client terminal 39 or the like.
  • a case where a VPN group is constructed by logging in to the relay server 3 via the client terminal 39 will be described.
  • On the setting screen displayed on the client terminal 39 a plurality of relay groups to which the relay server 3 belongs are displayed.
  • the user selects a relay group in which a VPN group is to be constructed from the plurality of relay groups (S101).
  • the client terminal 39 displays a list of identification information of relay servers that belong to the selected relay group and can function as routing points (S102). Then, the user selects identification information of a relay server that functions as a routing point in the VPN group to be constructed (S103). In this description, it is assumed that the identification information of the relay server 2 is selected by the user in addition to the identification information of the relay server 3 that is logged in.
  • routing session information is created based on the selected routing point (S104). Further, the identification information of the routing point is created based on the identification information of the selected relay server or the like (S104).
  • the VPN group information shown in FIG. 6B is created, and the VPN group information storage unit 54 stores the VPN group information ( S105).
  • the created VPN group information is transmitted to another routing relay server (relay server 2) (S106, sequence number 1, createVpnGroup in FIG. 12), and it is notified that the VPN group has been created.
  • relay server 2 S106, sequence number 1, createVpnGroup in FIG. 12
  • the user creates a sub VPN group corresponding to the created VPN group. Specifically, the user first displays a list of client terminals belonging to the logged-in relay server 3 on the client terminal 39. Then, a client terminal that functions as a sub-routing point is selected from the displayed client terminals. The relay server 3 creates sub-routing point information and sub-routing session information based on the selected information, and stores it in the sub-VPN group information storage unit 55. Then, the relay server 3 transmits, to the selected client terminal, the fact that it has been selected as a sub-routing point, together with VPN group identification information (sequence number 2, createVpnSubGroup). Here, it is assumed that the client terminal 37 is selected as a sub-routing point of the relay server 3 in VPN-GROUP2. Thereby, the construction process of the sub VPN group is completed.
  • VPN group identification information sequence number 2, createVpnSubGroup
  • FIGS. 13 and 14 are flowcharts showing a process for starting a VPN based on VPN group information.
  • the user logs in to the relay server 3 from the client terminal 39, for example, and causes the client terminal 39 to display a list of created VPN groups. Then, the user selects an appropriate VPN group from the VPN group (S201), and causes the relay server 3 to perform processing for starting the VPN. In this description, it is assumed that the user has selected VPN-GROUP2.
  • the terminal used for login As a sub-routing point in the relay server 3 at the login destination.
  • the client terminal 39 when the user selects to set the terminal used for login (here, the client terminal 39) as the sub-routing point, the client terminal 39 in the storage contents of the sub VPN group information storage unit 55 provided in the relay server 3 And the like are added to the sub-routing point information and the sub-routing session information.
  • the relay server 3 reads address filter information about itself (S202).
  • the address filter information for the relay server 3 is the IP address of the file server 31.
  • the relay server 3 reads the routing points belonging to the selected VPN group (S203). Thereby, the identification information of the relay server 2 is read based on the contents of the VPN group information shown in FIG.
  • the relay server 3 Based on the relay server information, the relay server 3 first determines whether the relay server 2 is logged in (“stat” is active or blank) (S204). According to the relay server information shown in FIG. 4, since the relay server 2 is logging in to the relay communication system 100, the relay server 3 transmits a VPN group start command to the relay server 2 (sequence number in FIG. 12). 3, startVpn). At this time, the identification information (VpnGroupID) of the selected VPN group and the address filter information (addr03) for the relay server 3 are simultaneously transmitted to the relay server 2.
  • the relay server 2 can specify the VPN group that performs the start process, and can acquire the latest address filter information about the relay server 3.
  • the relay server 2 notifies the relay server 3 that the signal has been received, and transmits address filter information (addr02) about itself to the relay server 3.
  • the relay server 3 receives the response from the relay server 2 (S206), and stores the received address filter information in the address filter information storage unit 56 (S207). Then, the relay server 3 registers the relay server 2 as a routing point that is ready to start VPN (S208).
  • each routing relay server exchanges (acquires) address filter information with other routing relay servers, so that the VPN can be constructed using the latest address filter information. Therefore, even if the address filter information for some routing relay servers is changed before the VPN is started, the VPN can be started with the change reflected in all the routing relay servers. The occurrence of contradiction can be prevented and the reliability can be improved.
  • the relay server 3 determines whether there is another routing point (S209). As shown in FIG. 6B, the routing points in the VPN-GROUP 2 are only the relay server 3 and the relay server 2, and other routing points are not described. Therefore, the relay server 3 extracts the routing session information 543 from the stored contents of the VPN group information storage unit 54 (S210).
  • the relay server 3 refers to the extracted routing session information and determines whether or not a routing session starting from itself is described (S211).
  • the routing session information 543 in FIG. 6B describes that the relay server 3 is the starting point in the routing session to be established between the relay server 3 and the relay server 2.
  • the relay server 3 determines whether or not the relay server 2 is a routing point that is ready to start VPN (S212). Since the completion of preparation for the relay server 2 is registered through S208 described above, communication control for establishing a routing session from the relay server 3 to the relay server 2 is performed (S213, sequence number 4 in FIG. 12). , CreateVpnSsn).
  • the relay server 3 determines whether or not there is another description of the routing session that is the starting point of the connection (S214). As shown in FIG. 6B, except for the routing session with the relay server 2, the routing session that is the connection start point is not described in the routing session information. Therefore, a series of processing is completed.
  • Each routing relay server does not perform the initial communication control for establishing a routing session unless the routing session information indicates that it is the starting point.
  • a routing session between them can be established with simple control.
  • the routing relay server is notified that the change has occurred, and appropriate information is updated. Then, by performing communication using VPN based on the updated information, the VPN group can be changed without stopping the VPN.
  • 15 and 16 are flowcharts showing processing for starting a VPN based on sub VPN group information.
  • the processing shown in FIGS. 15 and 16 is performed in parallel with the processing shown in FIGS. 13 and 14 at an appropriate timing. Note that the processes shown in FIGS. 15 and 16 are often the same as the processes shown in FIGS. 13 and 14, and thus the description may be simplified or omitted.
  • the relay server 3 first reads out the sub-routing point associated with the VPN group selected in S201 with reference to the sub-routing point information (S301).
  • the client terminal 37 is read out.
  • the client terminal 37 can behave like a routing point for transferring a packet, like the routing relay servers (the relay server 2 and the relay server 3).
  • the client terminal 37 has an appropriate storage unit capable of storing address filter information, routing session information, and the like, and a control configured similarly to the control unit 60 of FIG. And an interface unit configured similarly to the interface unit 70 of FIG.
  • the relay server 3 determines whether the read client terminal 37 is logged in (whether the relay server identification information is described in “site” or is blank) based on the relay server information. (S302). According to the relay server information shown in FIG. 4, since the client terminal 37 is logged in, the relay server 3 transmits a VPN group start command to the client terminal 37 (S303, sequence number 5 in FIG. 12, startVpn). ). At this time, the identification information of the selected VPN group and the address filter information (addr02 and addr03) stored in the relay server 3 are also transmitted simultaneously. As a result, the client terminal 37 can obtain the latest address filter for the relay server 2 and the relay server 3.
  • the client terminal 37 notifies the relay server 3 that the signal has been received, and transmits the address filter information (addr 37) stored in the storage unit of the client terminal 37 to the relay server 3.
  • This address filter information is address filter information for the client terminal 37, and is appropriately set so that the packet can be transferred to the file server 38 when the client terminal 37 operates as a sub-routing point. is there. Therefore, the client terminal 37 stores the IP address of the file server 38 (this corresponds to address filter information) in a form associated with the identification information of the client terminal 37.
  • the relay server 3 receives the response from the client terminal 37 (S304), and stores the address filter information for the client terminal 37 in the address filter information storage unit 56 and the sub-address filter information storage unit 57 (S305).
  • the address filter information of the client terminal 37 IP address of the file server 38
  • the sub-address filter information storage unit 57 it is stored in association with the identification information of the client terminal 37 as shown in FIG.
  • the relay server 3 transmits the address filter information for the client terminal 37 to another routing relay server (relay server 2) (sequence number 6, send (addr 37) in FIG. 12).
  • the relay server 2 stores the received address filter information for the client terminal 37 in the form of being added to the address filter information storage unit 56 in association with the identification information of the relay server 3 (however, the sub address filter information storage unit 57 The stored contents are not updated.)
  • the relay server 3 registers the client terminal 37 as a sub-routing point that is ready to start VPN (S306).
  • the relay server 3 determines whether there are other sub-routing points (S307). As shown in FIG. 7A, the sub-routing point in VPN-GROUP 2 is only the client terminal 37, and the others are not described. Therefore, the relay server 3 extracts the sub-routing session information from the storage contents of the sub VPN group information storage unit 55 (S308). If the user selects to set the client terminal 39 as a sub-routing point at the start of VPN, the relay server 3 performs the processing of S302 to S306 for the client terminal 39 as well.
  • the relay server 3 refers to the extracted sub-routing session information and determines whether or not a sub-routing session starting from itself is described (S309).
  • the relay server 3 is the starting point in the sub-routing session to be established between the relay server 3 and the client terminal 37.
  • the relay server 3 determines whether or not the client terminal 37 is a sub-routing point that is ready to start VPN (S310). Since the completion of preparation is registered for the client terminal 37 by the above S306, communication control for establishing a sub-routing session from the relay server 3 to the client terminal 37 is performed (S311, sequence number in FIG. 12). 7, createVpnSsn).
  • the relay server 3 determines whether or not another sub-routing session that is the connection start point is described (S312).
  • the sub-routing session information in FIG. 7B the sub-routing session that is the connection start point is not described except for the already established sub-routing session with the client terminal 37. Therefore, a series of processing is completed.
  • processing for starting a VPN can be performed based on the sub VPN group information. If the user selects to include the client terminal 39 in the sub VPN group at the start of VPN, the relay server 3 performs a sub-routing session establishment process with the client terminal 39 and the like.
  • VPN VPN-GROUP 2
  • the relay server 3 adds the identification information of the client terminal 42 to the sub-routing point information and the sub-routing session information, and updates the storage content of the sub-VPN group information storage unit 55.
  • the relay server 3 receives the address filter information for the client terminal 42 from the client terminal 42 and stores the received address filter information in the address filter information storage unit 56 and the sub-address filter information storage unit 57.
  • the address filter information about the client terminal 42 is appropriately set in advance so that the packet can be transferred to the file server 43 when the client terminal 42 operates as a sub-routing point. Therefore, the address filter information transmitted from the client terminal 42 to the relay server 3 is the IP address of the file server 43 and is stored in the address filter information storage unit 56 and the sub address filter information storage unit 57. Then, a sub-routing session is established between the relay server 3 and the client terminal 42.
  • the relay server 3 notifies the address filter information about the client terminal 42 to another routing relay server (relay server 2).
  • the relay server 2 stores the address filter information for the client terminal 42 (that is, the IP address of the file server 43) in the address filter information storage unit 56 in association with the identification information of the relay server 3. (However, the contents stored in the sub-address filter information storage unit 57 are not updated).
  • the change of the sub-routing point is completed, and thereafter, VPN communication can be performed in the same manner as before the change.
  • the storage contents of the address filter information storage unit 56 in the other relay servers 2 and the VPN group information storage unit 54 need not be updated.
  • the change in the stored contents of the address filter information storage unit 56 is only the change in the communication partner of the VPN that occurs as a result of the change of the sub-routing point (addition of the IP address of the file server 43 in the above example). It is good. That is, even when a sub-routing point is changed in a certain routing relay server, the influence of the change on the stored contents of other routing relay servers can be considerably reduced.
  • the configuration of the present embodiment is particularly suitable when the sub-routing point changes frequently.
  • the sub-routing point is added (temporarily) by using the opportunity to start the VPN.
  • Agile operation is extremely easy. Note that the change of the sub-routing point is not limited to the case where the client terminal is added as described above, and it is a matter of course that the existing sub-routing point can be deleted.
  • FIG. 17 is a sequence diagram illustrating a communication process for routing a packet.
  • the relay server 2 functioning as a routing point receives three types of packets from the first packet to the third packet will be described.
  • the relay server 2 After receiving the first packet, the relay server 2 compares the IP address of the transmission destination with the contents stored in the address filter information storage unit 56 (see FIG. 9). And the routing point which can transmit a packet with respect to the transmission destination described in the 1st packet is detected.
  • the IP address of the transmission destination of the first packet is included in the address filter information associated with the identification information of the relay server 3.
  • the relay server 2 transmits the first packet to the relay server 3 via the routing session established with the relay server 3.
  • the relay server 3 that has received the first packet compares the IP address of the transmission destination with the stored contents of the address filter information storage unit 56 (see FIG. 9). Then, it detects that itself is described as a routing point capable of transmitting the packet to the transmission destination described in the first packet. Next, the relay server 3 compares the IP address of the transmission destination with the contents stored in the sub-address filter information storage unit 57 (see FIG. 10). And it detects that the subrouting point which can transmit a packet with respect to the transmission destination described in the 1st packet is not set. As a result, the relay server 3 transmits the first packet to the file server 31 that is the transmission destination.
  • the relay server 2 receives the second packet whose destination IP address is (192.168.34.138) (sequence number 9, packet 02) will be described.
  • the relay server 3 is designated as a routing point capable of transmitting a packet to the transmission destination described in the second packet, similarly to the first packet. Has been. Therefore, the relay server 2 transmits the second packet to the relay server 3 via the routing session established with the relay server 3.
  • the relay server 3 that has received the second packet compares the IP address of the transmission destination with the stored contents of the address filter information storage unit 56 (see FIG. 9). Then, it detects that itself is described as a routing point capable of transmitting the packet to the transmission destination described in the second packet. Next, the relay server 3 compares the IP address of the transmission destination with the contents stored in the sub-address filter information storage unit 57 (see FIG. 10). Then, it is detected that the client terminal 37 is described as a sub-routing point capable of transmitting the packet to the transmission destination described in the second packet. As a result, the relay server 3 transmits the second packet to the client terminal 37 via the sub-routing session established with the client terminal 37.
  • the client terminal 37 that has received the second packet performs an operation similar to that of the relay server 3. That is, the client terminal 37 refers to the address filter information about itself stored in the storage unit included in the client terminal 37. Then, the client terminal 37 detects that the address filter information describes itself as a routing point capable of transmitting the packet to the transmission destination described in the second packet. As a result, the client terminal 37 transmits the second packet to the file server 38 that is the transmission destination.
  • the relay server 2 receives the third packet whose destination IP address is (192.168.5.51) (sequence number 10, packet 03) will be described.
  • the client terminal 11 detects that no routing point capable of transmitting a packet to the destination is described. In this case, the client terminal 11 does not transmit the received third packet anywhere.
  • the routing target data is flowed in the routing session of the application layer. Therefore, the routing described above is different from normal IP routing.
  • the address filter information storage unit 56 can display the name of the other party that can be designated as the packet transmission destination. Therefore, the user can easily recognize to which device the packet can be transmitted using the VPN.
  • FIG. 18 is a sequence diagram showing a communication process for ending a VPN group.
  • the user can start the process of terminating the VPN by logging in to the relay server 3 via the client terminal 37 and performing a predetermined operation.
  • the relay server 3 has started processing for terminating the VPN via the client terminal 37.
  • the relay server 3 When the relay server 3 receives the instruction to end the VPN, the relay server 3 transmits the fact to the relay server 2 together with the VPN group identification information (sequence number 11, stopVpn). Note that the relay server 2 can know which VPN group the VPN is terminated by, based on the VPN group identification information received from the relay server 3.
  • the relay server 3 receives the relay server 2 signal indicating that the VPN has been terminated, and then transmits a routing session termination command to the relay server 2 (sequence number 12, closeVpnSsn).
  • the relay server 3 also transmits a signal to end the VPN to the client terminal 37 (sequence number 13, stopVpn). Then, after receiving a response from the client terminal 37, a routing session end command is transmitted (sequence number 14, closeVpnSsn).
  • the relay server 3 includes the relay group information storage unit 51, the relay server information storage unit 52, the VPN group information storage unit 54, the sub VPN group information storage unit 55, and the address.
  • a filter information storage unit 56, a sub-address filter information storage unit 57, and a communication control unit 63 are provided.
  • the relay group information storage unit 51 stores information on relay groups including other relay servers 1 and 2 that can be connected to each other (the relay server 3).
  • the relay server information storage unit 52 activates the relay servers 1, 2, 3 belonging to the relay group and the client terminals 11, 21, 37, 39 connected to the relay servers 1, 2, 3 belonging to the relay group.
  • Relay server information including information and registration information is stored.
  • the VPN group information storage unit 54 relates to a VPN group that communicates with a VPN via a routing session established between the routing relay servers, identification information of the routing relay servers that constitute the VPN group, and routing relay servers that are connected to each other
  • the routing session information indicating is stored.
  • the sub VPN group information storage unit 55 stores sub VPN group information including sub routing point information indicating the sub routing device of the relay server 3.
  • the address filter information storage unit 56 stores the address filter information about the routing relay server and the address filter information about the sub-routing device of the routing relay server in association with the identification information of the routing relay server.
  • the sub address filter information storage unit 57 stores the address filter information for the client terminal 37 that is the sub-routing device of the relay server 3 in association with the identification information of the client terminal 37.
  • the communication control unit 63 includes control for establishing a routing session between the relay server 3 and another routing relay server, control for establishing a sub-routing session between the relay server 3 and the client terminal 37, a routing session or And packet transfer control for transferring packets received via the sub-routing session.
  • the packet transfer control transfers the packet to the sub-routing device when the transmission destination of the packet is associated with the sub-routing device of the relay server 3 in the stored contents of the sub-address filter information storage unit 57. Is control for transferring a packet to the destination.
  • the relay server 3 can construct a VPN with other routing relay servers and share files only with necessary devices. Further, the above configuration can simplify the VPN group information as compared with the VPN configured such that the client terminal functions as a routing point in addition to the relay server.
  • the address filter information storage unit 56 stores the address filter information for the sub-routing device in association with the identification information of the routing relay server, without associating it with the identification information of the sub-routing device. Therefore, even in a network having a configuration with a large number of sub-routing points, it is possible to suppress the storage contents of the address filter information storage unit from becoming complicated. As described above, the amount of information stored in the relay server can be reduced. Furthermore, when synchronizing such information with other routing relay servers, the amount of information exchanged between the routing relay servers can be suppressed.
  • the relay server 3 receives the instruction from the client terminal 39 to start the VPN and the instruction to set the client terminal 39 as a sub-routing point of the relay server 3.
  • the control unit 63 adds control for adding the client terminal 39 to the sub-VPN group information (specifically, sub-routing point information and sub-routing session information), and transmits address filter information about the client terminal 39 to another routing relay server. Control and control for establishing a routing session between itself (relay server 3) and the client terminal 39 are performed.
  • the sub-routing point can be changed while maintaining the virtual private network.
  • the format for storing the above relay group information, relay server information, client terminal information, VPN group information, address filter information, etc. is not limited to the XML format, and each information can be stored in an appropriate format.
  • an external server used for communication between each relay server may be installed on the Internet, and a communication may be performed by exhibiting a function as a SIP (Session Initiation Protocol) server. .
  • SIP Session Initiation Protocol

Landscapes

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

Abstract

 中継サーバは、自身と他のルーティング中継サーバとの間にルーティングセッションを確立する制御と、自身とサブルーティング機器との間にサブルーティングセッションを確立する制御と、ルーティングセッション又はサブルーティングセッションを介して受信したパケットを転送するパケット転送制御と、を行う。パケット転送制御は、サブアドレスフィルタ情報記憶部の記憶内容においてパケットの送信先が中継サーバのサブルーティング機器と対応付けられている場合には、当該サブルーティング機器にパケットを転送し、そうでない場合には、当該送信先にパケットを転送する制御である。

Description

中継サーバ及び中継通信システム
 本発明は、主として、異なるLAN(Local Area Network)に接続されている端末間の通信を可能とする中継サーバに関する。
 従来から、仮想プライベートネットワーク(Virtual Private Network,VPN)と呼ばれる通信技術が知られている(例えば、特許文献1を参照)。このVPNは、例えば、地域ごとに設けられた複数の支社(拠点)のLANに接続された端末同士でインターネットを介して通信する用途に用いられている。前記VPNを利用すれば、遠隔地にある他のLANを、あたかも直接接続されているネットワークであるかのように使用することができる。
特開2002-217938号公報
 ところで、この種のシステムにおいて、中継サーバが、自身が接続するLAN内の端末の識別情報及びIPアドレス等だけでなく、他のLANに接続される端末の識別情報及びIPアドレスを記憶し、この記憶内容に基づいて通信を行う構成が知られている。この構成においては、各LANに多数の端末が接続されている場合に、中継サーバが記憶する情報量が膨大になる。また、この構成においては、各LANに接続される端末が頻繁に変更される場合に、変更の度に中継サーバ同士で情報のやり取りが必要となる。そのため、処理が繁雑になるとともに、中継サーバ間でやり取りされる情報量が膨大なものとなる。
 本発明は以上の事情に鑑みてされたものであり、その主要な目的は、ネットワークが複雑化した場合においても、記憶する情報量及び送受信する情報量が肥大化することのないVPNを構築可能な中継サーバを提供することにある。
課題を解決するための手段及び効果
 本発明の解決しようとする課題は以上の如くであり、次にこの課題を解決するための手段とその効果を説明する。
 本発明の第1の観点によれば、以下の構成の中継サーバが提供される。即ち、この中継サーバは、中継グループ情報記憶部と、中継サーバ情報記憶部と、VPNグループ情報記憶部と、サブVPNグループ情報記憶部と、アドレスフィルタ情報記憶部と、サブアドレスフィルタ情報記憶部と、通信制御部と、を備える。前記中継グループ情報記憶部は、自身(中継サーバ)との間で相互に接続可能な他の中継サーバを含む中継グループの情報を記憶する。前記中継サーバ情報記憶部は、前記中継グループに属する前記中継サーバの起動情報と、前記中継グループに属する前記中継サーバに所属するクライアント端末の起動情報及び登録情報と、を含む中継サーバ情報を記憶する。前記VPNグループ情報記憶部は、前記中継グループの情報及び前記中継サーバ情報に基づいて中継通信システムを構成する前記中継サーバのうちルーティングポイントとして設定された前記中継サーバであるルーティング中継サーバを含んで構成され、当該ルーティング中継サーバ間に確立されるルーティングセッションを介して仮想プライベートネットワークにより通信を行うVPNグループに関し、当該VPNグループを構成する前記ルーティング中継サーバの識別情報及び互いに接続される前記ルーティング中継サーバを示すルーティングセッション情報を記憶する。前記サブVPNグループ情報記憶部は、ある中継サーバに所属するクライアント端末のうちサブルーティングポイントとして設定された前記クライアント端末を当該中継サーバのサブルーティング機器としたときに、自身(中継サーバ)のサブルーティング機器を示すサブルーティングポイント情報を含むサブVPNグループ情報を記憶する。前記アドレスフィルタ情報記憶部は、あるルーティング中継サーバ又はサブルーティング機器がパケットの転送先として指定可能なルーティング対象装置のアドレスを示す情報を当該ルーティング中継サーバ又はサブルーティング機器についてのアドレスフィルタ情報としたときに、前記ルーティング中継サーバについてのアドレスフィルタ情報と、当該ルーティング中継サーバのサブルーティング機器についてのアドレスフィルタ情報と、を当該ルーティング中継サーバの識別情報と対応付けて記憶する。前記サブアドレスフィルタ情報記憶部は、自身(中継サーバ)のサブルーティング機器についてのアドレスフィルタ情報を、当該サブルーティング機器の識別情報と対応付けて記憶する。前記通信制御部は、自身(中継サーバ)と前記ルーティング中継サーバとの間にルーティングセッションを確立する制御と、自身と自身のサブルーティング機器との間にサブルーティングセッションを確立する制御と、前記ルーティングセッション又は前記サブルーティングセッションを介して受信したパケットを転送するパケット転送制御と、を行う。前記パケット転送制御は、前記ルーティングセッションを介してパケットを受信したときに、受信したパケットの送信先が前記アドレスフィルタ情報記憶部の記憶内容において自身と対応付けられているときは、前記サブアドレスフィルタ情報記憶部の記憶内容においてパケットの送信先が自身のサブルーティング機器と対応付けられている場合には、当該サブルーティング機器にパケットを転送し、そうでない場合には、当該送信先にパケットを転送する制御である。
 これにより、中継サーバは、中継通信システムを構成する他の中継サーバの中から選択されたルーティング中継サーバとVPNを構築して、必要な中継サーバとの間でのみファイルの共有等を行うことができる。また、上記の構成は、中継サーバに加えてクライアント端末がルーティングポイントとして機能する構成のVPNと比較して、VPNグループ情報を単純にすることができる。また、アドレスフィルタ情報記憶部では、サブルーティング機器についてのアドレスフィルタ情報を、当該サブルーティング機器の識別情報に対応付けずに、ルーティング中継サーバの識別情報に対応付けて記憶している。従って、サブルーティングポイントの数が多い構成のネットワークであっても、アドレスフィルタ情報記憶部の記憶内容が複雑化することを抑制できる。以上により、中継サーバが記憶する情報量を少なくすることができる。更に、これらの情報を他のルーティング中継サーバと同期する場合に、ルーティング中継サーバ同士でやり取りされる情報量を抑えることができる。
 前記の中継サーバにおいては、以下の構成とすることが好ましい。即ち、自身に所属する前記クライアント端末から、仮想プライベートネットワークを開始する旨の指示とともに、当該クライアント端末をサブルーティングポイントとして設定する旨の指示を受けたときに、前記通信制御部は、仮想プライベートネットワークを開始する旨の指示を行った前記クライアント端末を前記サブVPNグループ情報に追加する制御と、当該クライアント端末についての前記アドレスフィルタ情報を他の前記ルーティング中継サーバに送信する制御と、自身と当該クライアント端末との間に前記サブルーティングセッションを確立する制御と、を行う。
 これにより、VPNを開始する旨の指示を行ったクライアント端末をサブルーティングポイントとして機能させる設定することが容易となる。
 前記の中継サーバにおいては、仮想プライベートネットワークを維持したまま、前記サブルーティングポイントを変更可能であることが好ましい。
 これにより、状況の変化に柔軟に対応可能なVPNを構築できる。
 本発明の第2の観点によれば、以下の構成の中継通信システムが提供される。即ち、この中継通信システムは、複数の中継サーバと、クライアント端末と、を備える。前記クライアント端末は、前記中継サーバを介して互いに接続可能である。前記中継サーバは、中継グループ情報記憶部と、中継サーバ情報記憶部と、VPNグループ情報記憶部と、サブVPNグループ情報記憶部と、アドレスフィルタ情報記憶部と、サブアドレスフィルタ情報記憶部と、通信制御部と、を備える。前記中継グループ情報記憶部は、当該中継サーバとの間で相互に接続可能な他の中継サーバを含む中継グループの情報を記憶する。前記中継サーバ情報記憶部は、前記中継グループに属する前記中継サーバの起動情報と、前記クライアント端末の起動情報及び登録情報と、を含む中継サーバ情報を記憶する。前記VPNグループ情報記憶部は、前記中継サーバのうちルーティングポイントとして設定された前記中継サーバであるルーティング中継サーバを含んで構成され、当該ルーティング中継サーバ間に確立されるルーティングセッションを介して仮想プライベートネットワークにより通信を行うVPNグループに関し、当該VPNグループを構成する前記ルーティング中継サーバの識別情報及び互いに接続される前記ルーティング中継サーバを示すルーティングセッション情報を記憶する。前記サブVPNグループ情報記憶部は、当該中継サーバに所属するクライアント端末のうちサブルーティングポイントとして設定された前記クライアント端末を当該中継サーバのサブルーティング機器としたときに、当該中継サーバのサブルーティング機器を示すサブルーティングポイント情報を含むサブVPNグループ情報を記憶する。前記アドレスフィルタ情報記憶部は、あるルーティング中継サーバ又はサブルーティング機器がパケットの転送先として指定可能なルーティング対象装置のアドレスを示す情報を当該ルーティング中継サーバ又はサブルーティング機器についてのアドレスフィルタ情報としたときに、前記ルーティング中継サーバについてのアドレスフィルタ情報と、当該ルーティング中継サーバのサブルーティング機器についてのアドレスフィルタ情報と、を当該ルーティング中継サーバの識別情報と対応付けて記憶する。前記サブアドレスフィルタ情報記憶部は、当該中継サーバのサブルーティング機器についてのアドレスフィルタ情報を、当該サブルーティング機器の識別情報と対応付けて記憶する。前記通信制御部は、他の前記ルーティング中継サーバとの間でルーティングセッションを確立する制御と、前記中継サーバとサブルーティング機器との間にサブルーティングセッションを確立する制御と、前記ルーティングセッション又は前記サブルーティングセッションを介して受信したパケットを転送するパケット転送制御と、を行う。前記パケット転送制御は、前記ルーティングセッションを介してパケットを受信したときに、受信したパケットの送信先が前記アドレスフィルタ情報記憶部の記憶内容において当該中継サーバと対応付けられているときは、前記サブアドレスフィルタ情報記憶部の記憶内容においてパケットの送信先が当該中継サーバのサブルーティング機器と対応付けられている場合には、当該サブルーティング機器にパケットを転送し、そうでない場合には、当該送信先にパケットを転送する制御である。
 これにより、中継サーバから選択されたルーティング中継サーバを用いてVPNを構築できるため、必要な中継サーバとの間でのみファイルの共有等を行うことが可能となる。また、上記の構成は、中継サーバに加えてクライアント端末がルーティングポイントとして機能する構成のVPNと比較して、VPNグループ情報を単純にすることができる。また、アドレスフィルタ情報記憶部では、サブVPNグループに含まれるクライアント端末についてのアドレスフィルタ情報を、当該クライアント端末の識別情報に対応付けずに、ルーティング中継サーバの識別情報に対応付けて記憶している。従って、サブルーティングポイントの数が多い構成のネットワークであっても、アドレスフィルタ情報記憶部の記憶内容が複雑化することを抑制できる。以上により、各中継サーバが記憶する情報量を少なくすることができる。更に、これらの情報を他のルーティング中継サーバと同期する場合に、ルーティング中継サーバ同士でやり取りされる情報量を抑えることが可能な中継通信システムを構築できる。
本発明の一実施形態に係る中継通信システムの全体構成を示す説明図。 中継サーバの機能ブロック図。 中継グループ情報の内容を示す図。 中継サーバ情報の内容を示す図。 クライアント端末情報の内容を示す図。 VPNグループ情報の内容を示す図。 サブVPNグループ情報の内容を示す図。 アドレスフィルタ情報について説明する図。 アドレスフィルタ情報記憶部の記憶内容を示す図。 サブアドレスフィルタ情報記憶部の記憶内容を示す図。 VPNグループを作成する処理を示すフローチャート。 VPNグループを作成してVPNを開始する通信処理を示すシーケンス図。 VPNグループ情報に基づいてVPNを開始するための処理を示すフローチャート。 VPNグループ情報に基づいてVPNを開始するための処理を示すフローチャート。 サブVPNグループ情報に基づいてVPNを開始するための処理を示すフローチャート。 サブVPNグループ情報に基づいてVPNを開始するための処理を示すフローチャート。 パケットのルーティングを行う通信処理を示すシーケンス図。 VPNを終了する通信処理を示すシーケンス図。
 次に、図面を参照して本発明の実施の形態を説明する。初めに、図1を参照して、本実施形態の中継通信システム100の概要について説明する。図1は、本発明の一実施形態に係る中継通信システム100の全体構成を示す説明図である。
 図1に示すように、この中継通信システム100は、Wide Area Network(WAN、広域通信網)80に接続された複数のLAN10,20,30等で構成されている。それぞれのLAN10,20,30は、限定された場所で構築される比較的小規模なネットワークであり、それぞれが物理的に離れた場所に配置されている。なお、本実施形態ではWAN80としてインターネットが使用されている。
 以下、それぞれのLANを具体的に説明する。図1に示すように、LAN10には、中継サーバ1と、クライアント端末11と、通信装置12と、が接続されている。LAN20には、中継サーバ2と、クライアント端末21と、通信装置22と、通信装置23と、が接続されている。LAN30には、ファイルサーバ31が接続されている。また、LAN30には、ルータ35を介して別のLAN36が接続されている。このLAN36には、クライアント端末37と、ファイルサーバ38と、クライアント端末39と、が接続されている。更に、前記LAN30には、ルータ40を介して更に別のLAN41が接続されている。このLAN41には、クライアント端末42と、ファイルサーバ43と、が接続されている。
 それぞれの中継サーバ1,2,3は、LAN10,20,30だけでなくWAN80にも接続されているため、同一のLANに接続されたクライアント端末と通信可能であるだけでなく、他のLANに配置された中継サーバと通信可能となっている。そのため、中継サーバ1,2,3には、グローバルIPアドレスに加えてプライベートIPアドレスが付与されている。
 クライアント端末11,21,37,39,42は、例えばパーソナルコンピュータで構成されており、中継サーバ1,2,3等を介して相互に通信を行うことができる。通信装置12,22,23は、例えばパーソナルコンピュータで構成されており、自身が接続されるLAN等を介して、当該LANに接続される端末にパケットを送信可能である。ファイルサーバ31,38,43は、例えばネットワーク接続ストレージで構成されており、自身が接続されるLAN等を介して、当該LANに接続される端末にパケットを送信可能である。
 次に、中継サーバ1,2,3について説明する。なお、これらの3つの中継サーバは、一部の記憶内容を除いて略同一の構成であるため、代表して中継サーバ3について説明する。初めに、図2を参照して、中継サーバ3が備える構成について説明する。図2は、中継サーバ3の機能ブロック図である。
 図2に示すように、中継サーバ3は、記憶部50と、制御部60と、インタフェース部70と、を備えている。
 インタフェース部70は、プライベートIPアドレスを利用して、LAN30及びLAN36に接続される端末に対して通信を行うことができる。また、インタフェース部70は、グローバルIPアドレスを利用して、WAN80を経由した通信を行うことができる。
 制御部60は、例えば制御及び演算の機能を有するCPUであり、記憶部50から読み出したプログラムにより各種の処理を実行可能である。この制御部60は、TCP/IP、UDP、SIP等のプロトコルに従った様々な通信を制御することができる。図2に示すように、制御部60は、インタフェースドライバ61と、LAN側IPパケット処理部62と、通信制御部63と、WAN側IPパケット処理部64と、を備えている。
 インタフェースドライバ61は、インタフェース部70を制御するドライバソフトウェアである。LAN側IPパケット処理部62は、LAN30から受信したパケットに適宜の処理を行って通信制御部63に出力する。WAN側IPパケット処理部64は、WAN80から受信したパケットに適宜の処理を行って通信制御部63に出力する。
 通信制御部63は、受信したパケットについて、当該パケットが示す情報と記憶部50に記憶された情報とに基づいて送信先を決定し、決定した送信先へ当該パケットを送信する。また、通信制御部63は、他の端末から受信した情報に基づいて、記憶部50の記憶内容を更新させることができる。
 記憶部50は、例えばハードディスク又は不揮発性RAMで構成されており、各種データを保存可能である。記憶部50は、中継グループ情報記憶部51と、中継サーバ情報記憶部52と、クライアント端末情報記憶部53と、VPNグループ情報記憶部54と、サブVPNグループ情報記憶部55と、アドレスフィルタ情報記憶部56と、サブアドレスフィルタ情報記憶部57と、を備えている。以下、図3から図10までを参照して、記憶部50の記憶内容について説明する。図3は、中継グループ情報の内容を示す図である。図4は、中継サーバ情報の内容を示す図である。図5は、クライアント端末情報の内容を示す図である。図6は、VPNグループ情報の内容を示す図である。図7は、サブVPNグループ情報の内容を示す図である。図8は、アドレスフィルタ情報について説明する図である。図9は、アドレスフィルタ情報記憶部56の記憶内容を示す図である。図10は、サブアドレスフィルタ情報記憶部57の記憶内容を示す図である。
 中継グループ情報記憶部51は、中継グループと、当該中継グループを構成する中継サーバと、を示した中継グループ情報を記憶している。
 図3に示すように、中継グループ情報においては、groupタグと、このgroupタグを親要素とする子要素のsiteタグと、が記述されている。groupタグには中継グループに関するグループ情報511が記述されている。このグループ情報511としては、中継グループの識別情報(「id」)と、最終更新時刻(「lastmod」)と、中継グループの名称(「name」)と、が記述されている。siteタグには、中継グループを構成する中継サーバに関するグループ構成情報512が記述されている。このグループ構成情報512には、当該中継サーバの識別情報(「id」)が記述されている。また、中継グループは追加作成が可能であり、その場合、新しい中継グループには、他の中継グループと異なる一意の識別情報が付与される。これにより、特定の中継グループ内だけでデータのやり取りを行う等の設定が可能になっている。
 なお、この中継グループ情報は、当該中継グループを構成する中継サーバ1,2,3の間で共有されている。そして、ある中継サーバにおいて中継グループを変更する処理が行われた場合は、他の中継サーバに対してその旨が送信されて中継グループ情報が更新される。このようにして、中継グループ情報が動的に共有される。
 中継サーバ情報記憶部52は、中継通信を行う中継サーバ及び当該中継サーバに所属するクライアント端末の概要を示す中継サーバ情報を記憶している。
 図4に示す中継サーバ情報においては、中継サーバごとに記述されるsiteタグと、前記siteタグを親要素とする子要素のnodeタグと、が記述されている。siteタグには中継サーバ1に関するサーバ情報521が記述されている。このサーバ情報521としては、中継サーバの識別情報(「id」)と、中継サーバの名称(「name」)と、起動情報(「stat」)と、が記述されている。なお、statの内容が「active」の場合は中継サーバが中継通信システム100にログインしていることを示し、statが空欄であるときはログオフ中であることを示す。siteタグの子要素であるnodeタグには、中継サーバに所属するクライアント端末を示す所属情報522が記述されている。所属情報522としては、所属する中継グループの名称(「group」)と、クライアント端末の識別情報(「id」)と、クライアント端末の名称(「name」)と、ログイン先の中継サーバの識別情報(「site」)と、が記述されている。なお、クライアント端末が中継サーバ(中継通信システム100)にログインしていないときは、「site」は空欄となる。
 なお、中継グループによる通信は、上記の中継グループ情報及び中継サーバ情報に基づいて、以下のようにして行われる。例えばクライアント端末11からクライアント端末21にパケットを送信する場合、初めに、クライアント端末11は、自身が接続している中継サーバである中継サーバ1にパケットを送信する。なお、パケットのやり取りが可能な中継サーバは上記の中継グループ情報に基づいて把握することができ、中継サーバに所属しているクライアント端末の識別情報及び接続の可否は上記の中継サーバ情報に基づいて把握することができる。中継サーバ1は、これらの情報に基づいて、クライアント端末21が接続している中継サーバである中継サーバ2にパケットを送信する。そして、この中継サーバ2がクライアント端末21にパケットを送信する。このようにして、クライアント端末11,21同士で中継通信を行うことができる。
 この中継サーバ情報も中継グループ情報と同様に、当該中継グループを構成する中継サーバ1,2,3の間で共有されている。そして、ある中継サーバにおいて中継サーバ情報を変更する処理が行われた場合は、他の中継サーバに対してその旨が送信されて中継サーバ情報が更新される。このようにして、中継サーバ情報が動的に共有される。
 クライアント端末情報記憶部53は、クライアント端末に関する詳細な情報であるクライアント端末情報を記憶している。なお、中継サーバ1,2,3は、自身に所属するクライアント端末に関するクライアント端末情報のみを記憶している。例えば、中継サーバ1には、図1に示すようにクライアント端末11が所属しているため、中継サーバ1が備えるクライアント端末情報記憶部53には、クライアント端末11のクライアント端末情報のみが記憶されている。
 中継サーバ1のクライアント端末情報記憶部53が記憶するクライアント端末情報は、図5(a)に示されている。同様に、中継サーバ2が記憶するクライアント端末情報が図5(b)に、中継サーバ3が記憶するクライアント端末情報が図5(c)に、それぞれ示されている。
 図5に示すクライアント端末情報においては、nodeタグが記述されている。このnodeタグには、クライアント端末のプライベートIPアドレス(「addr」)と、所属する中継グループの名称(「group」)と、識別情報(「id」)と、名称(「name」)と、中継サーバにログインするためのパスワード(「pass」)と、ポート情報(「port」)と、が記述されている。
 VPNグループ情報記憶部54は、中継グループを構成する中継サーバから選択された中継サーバ(以下、ルーティング中継サーバと称する)で構成されたVPNグループに関する情報であるVPNグループ情報を記憶している。VPNグループは、中継グループ内で構成されるグループであり、ルーティング中継サーバ間にルーティングセッションを確立させることにより、仮想ネットワーク(VPN)を構築することができる。
 なお、1つの中継グループにおいて、複数のVPNグループを作成することが可能となっている。本実施形態では、中継サーバ1と中継サーバ3とで構成されるVPNグループ(VPN-GROUP1)と、中継サーバ2と中継サーバ3とで構成されるVPNグループ(VPN-GROUP2)と、が作成されたものとする。VPN-GROUP1についてのVPNグループ情報は図6(a)に示されており、VPN-GROUP2についてのVPNグループ情報は図6(b)に示されている。
 これらのVPNグループ情報においては、vnetタグが記述されている。このvnetタグには、VPNグループ基本情報541と、ルーティングポイント情報542と、ルーティングセッション情報543と、が記述されている。VPNグループ基本情報541には、VPNグループが所属する中継グループの名称(「group」)と、VPNグループの識別情報(「id」)と、最終更新時刻(「lastmod」)と、VPNグループの名称(「name」)と、が記述されている。ルーティングポイント情報542には、VPNグループ内で通信を行うときにルーティングを行うルーティング中継サーバの識別情報が記述されている。ルーティングセッション情報543には、各VPNグループにおいて互いに接続されるルーティング中継サーバが記述されている。ルーティングセッション情報543において、ルーティング中継サーバは、VPNグループでVPNを開始するためのルーティングセッション確立処理において、通信制御を最初に行う側(「sp(start point)」)と、その通信制御を受ける側「ep(end point)」と、に分けて定められている。なお、以下の説明では、ルーティングセッション確立のための通信制御を最初に行う側のルーティング中継サーバを「始点」と、その通信制御を受ける側のルーティング中継サーバを「終点」と、それぞれ称することがある。
 このVPNグループ情報は、当該VPNグループを構成する中継サーバの間で共有されている。具体的には、VPN-GROUP1についてのVPNグループ情報が中継サーバ1と中継サーバ3とで共有され、VPN-GROUP2についてのVPNグループ情報が中継サーバ2と中継サーバ3とで共有されている。そして、ある中継サーバにおいてVPNグループ情報を変更する処理が行われた場合は、VPNグループを構成する他の中継サーバに対してその旨が送信されてVPNグループ情報が更新される。このようにして、VPNグループ情報が動的に共有される。なお、このVPNグループを作成する処理については後述する。
 サブVPNグループ情報記憶部55は、自身(中継サーバ3)に所属するクライアント端末の中からサブルーティングポイントとして設定された1又は複数のクライアント端末(以下、サブルーティング機器と称する)で構成されるサブVPNグループに関する情報(サブVPNグループ情報)を記憶している。サブルーティング機器は、ルーティング中継サーバ同士のルーティングセッションが確立した後に、中継サーバ3との間でルーティングセッションを確立させることにより、ルーティングポイントのように振舞うことができる。なお、サブルーティングポイントとして設定されるクライアント端末は、VPNグループ毎に異ならせても良いし、同一にしても良い。また、以下の説明では、ルーティング中継サーバとサブルーティング機器との間で形成されるルーティングセッションを、特に「サブルーティングセッション」と呼ぶことがある。
 サブVPNグループ情報記憶部55は、具体的には、サブルーティングポイント情報と、サブルーティングセッション情報と、を前記VPNグループ毎に記憶している。図7(a)には、VPN-GROUP2に対応するサブルーティングポイント情報が示されている。図7(a)に示すように、サブルーティングポイント情報には、サブルーティング機器の識別情報の一覧が記述されている。また、図7(b)には、VPN-GROUP2に対応するサブルーティングセッション情報が示されている。図7(b)に示すように、サブルーティングセッション情報には、ルーティング中継サーバとサブルーティング機器とで確立されるサブルーティングセッションにおいて、通信制御を最初に行う側(始点側)の機器の識別情報と、その通信制御を受ける側(終点側)の機器の識別情報と、を対応付けて記憶している。
 上記のサブVPNグループ情報は、ルーティング中継サーバとサブルーティング機器との間で共有される。一方で、このサブVPNグループ情報は、ルーティング中継サーバ同士では共有されない。即ち、ルーティング中継サーバは、自身のサブVPNグループ情報のみをサブVPNグループ情報記憶部55に記憶し、他の中継サーバ(ルーティング中継サーバ)のサブVPNグループ情報は記憶しない。
 次に、アドレスフィルタ情報と、アドレスフィルタ情報記憶部56及びサブアドレスフィルタ情報記憶部57の記憶内容について説明する。アドレスフィルタ情報とは、ある機器が、パケットの転送を行う機器(ルーティング中継サーバ又はサブルーティング機器)に対して、パケットの転送先として指定可能なルーティング対象装置のアドレスを示す情報である。以下の説明では、ルーティング中継サーバ(又はサブルーティング機器)がパケットを転送可能なルーティング対象装置のアドレスを示す情報を、ルーティング中継サーバ(又はサブルーティング機器)についてのアドレスフィルタ情報と称する。
 図8には、ルーティング中継サーバ等と、当該ルーティング中継サーバ等についてのアドレスフィルタ情報と、を対応させて示している。この図8に示すように、例えば中継サーバ1は、通信装置12にパケットを転送可能である。
 アドレスフィルタ情報記憶部56は、図9に示すように、ルーティング中継サーバについてのアドレスフィルタ情報と、サブルーティング機器についてのアドレスフィルタ情報と、を当該ルーティング中継サーバの識別情報に対応付けて記憶している。即ち、アドレスフィルタ情報記憶部56では、クライアント端末37についてのアドレスフィルタ情報であっても、(当該クライアント端末37ではなく)中継サーバ3の識別情報に対応付けた形で記憶される。なお、アドレスフィルタ情報記憶部56は、ルーティング対象装置のIPアドレスだけでなく、当該ルーティング対象装置の名称についても記憶している。ルーティング対象装置の名称としては、例えば、機器の種類(処理装置、通信装置、ファイルサーバ等)及び配置される場所等を考慮する等して任意の名称を設定することができるので、パケット転送先のルーティング対象装置を分かり易く管理することができる。なお、それぞれのルーティングポイントとしての中継サーバは、このアドレスフィルタ情報を外部の表示装置等に表示させることが可能となっている。
 サブアドレスフィルタ情報記憶部57は、図10に示すように、サブルーティング機器(クライアント端末37)についてのアドレスフィルタ情報を、当該サブルーティング機器(クライアント端末37)の識別情報に対応付けて記憶している。従って、サブアドレスフィルタ情報記憶部57と前記アドレスフィルタ情報記憶部56とでは、その記憶内容においてアドレスフィルタ情報が対応付けられる機器(識別情報)が異なっている。また、サブアドレスフィルタ情報記憶部57は、自機(中継サーバ3)のサブルーティング機器についてのアドレスフィルタ情報のみを記憶し、他のルーティング中継サーバのサブルーティング機器についてのアドレスフィルタ情報は記憶しない。そのため、サブアドレスフィルタ情報記憶部57の記憶内容はルーティング中継サーバ間で共有されることはなく、その記憶内容はそれぞれの中継サーバで独自のものとなる。
 また、ルーティング中継サーバは、VPNを開始するときに、自身についてのアドレスフィルタ情報と、サブルーティング機器についてのアドレスフィルタ情報と、を他のルーティング中継サーバに通知する。この通知を受けたルーティング中継サーバは、通知内容に基づいて、アドレスフィルタ情報記憶部56の記憶内容を更新するように構成されている(ただし、サブアドレスフィルタ情報記憶部57の記憶内容は更新しない)。
 中継サーバ3は、以上のように構成される。なお、上記したように、サブVPNグループ情報記憶部55及びサブアドレスフィルタ情報記憶部57の記憶内容は、当該中継サーバ3に関する内容のみが記憶され、他の中継サーバとの間で同期されることはない。従って、各中継サーバにおいて記憶内容が肥大化することを防止できる。また、中継サーバ1,2の構成については詳細な説明を省略するが、中継サーバ3と実質的に同様に構成された記憶部50及び制御部60を備えている。
 次に、VPNグループを構築して、構築したVPNグループでパケットのルーティングを行うときの処理について説明する。
 初めにVPNグループを構築するときの流れについて図11及び図12を参照して説明する。図11は、VPNグループを作成する処理を示すフローチャートである。図12は、VPNグループを作成してVPNを開始する通信処理を示すシーケンス図である。
 中継通信システム100を利用するユーザは、クライアント端末39等から中継サーバ3にログインすることによって、VPNグループの設定画面を当該クライアント端末39のディスプレイに表示させることができる。ここでは、クライアント端末39を介して中継サーバ3にログインしてVPNグループを構築する場合について説明する。クライアント端末39に表示させた設定画面には、中継サーバ3が属する複数の中継グループが表示される。ユーザは、この複数の中継グループから、VPNグループを構築したい中継グループを選択する(S101)。
 中継グループが選択されると、クライアント端末39には、選択した中継グループに属し、かつルーティングポイントとして機能可能な中継サーバの識別情報の一覧が表示される(S102)。そして、ユーザは、構築するVPNグループにおいてルーティングポイントとして機能させる中継サーバの識別情報を選択する(S103)。今回の説明では、ログイン中の中継サーバ3の識別情報に加え、中継サーバ2の識別情報がユーザに選択されたものとする。
 そして、この選択されたルーティングポイントに基づいて、ルーティングセッション情報が作成される(S104)。また、選択された中継サーバ等の識別情報に基づいて、ルーティングポイントの識別情報が作成される(S104)。これらの作成された情報にVPNグループの識別情報等を付加することにより、図6(b)で示したVPNグループ情報が作成され、VPNグループ情報記憶部54は、このVPNグループ情報を記憶する(S105)。
 そして、作成されたVPNグループ情報は、他のルーティング中継サーバ(中継サーバ2)に送信され(S106、図12のシーケンス番号1、createVpnGroup)、VPNグループが作成されたことが通知される。
 次に、ユーザは、作成したVPNグループに対応するサブVPNグループを作成する。具体的には、ユーザは、初めに、ログイン中の中継サーバ3に所属するクライアント端末の一覧をクライアント端末39に表示させる。そして、表示されたクライアント端末の中から、サブルーティングポイントとして機能させるクライアント端末を選択する。中継サーバ3は、この選択された情報に基づいてサブルーティングポイント情報及びサブルーティングセッション情報を作成して、サブVPNグループ情報記憶部55に記憶する。そして、中継サーバ3は、選択されたクライアント端末に対して、サブルーティングポイントとして選択された旨を、VPNグループの識別情報とともに送信する(シーケンス番号2、createVpnSubGroup)。ここでは、VPN-GROUP2における中継サーバ3のサブルーティングポイントとしてクライアント端末37が選択されたものとする。これにより、サブVPNグループの構築処理が完了する。
 次に、構築したVPNグループ情報に基づいて、VPNを開始するために行う処理について、図13及び図14を参照して説明する。図13及び図14は、VPNグループ情報に基づいてVPNを開始するための処理を示すフローチャートである。
 ユーザは、例えばクライアント端末39から中継サーバ3にログインして、作成済みのVPNグループの一覧をクライアント端末39に表示させる。そして、ユーザは、このVPNグループから適当なVPNグループを選択することにより(S201)、VPNを開始するための処理を中継サーバ3に行わせる。今回の説明では、ユーザがVPN-GROUP2を選択したものとする。
 なお、VPNグループの選択時等においては、ログインに用いた端末を、ログイン先の中継サーバ3におけるサブルーティングポイントとして設定するか否かの選択を行うことができる。ここで、ログインに用いた端末(ここではクライアント端末39)をサブルーティングポイントとして設定する選択をユーザが行った場合、中継サーバ3が備えるサブVPNグループ情報記憶部55の記憶内容において、クライアント端末39の識別情報等がサブルーティングポイント情報及びサブルーティングセッション情報に追記される。
 次に、中継サーバ3は、自身についてのアドレスフィルタ情報を読み出す(S202)。中継サーバ3についてのアドレスフィルタ情報は、ファイルサーバ31のIPアドレスとなっている。次に、中継サーバ3は、選択したVPNグループに属するルーティングポイントの読出しを行う(S203)。これにより、図6(b)に示すVPNグループ情報の内容に基づいて、中継サーバ2の識別情報が読み出される。
 中継サーバ3は、中継サーバ情報に基づいて、初めに、中継サーバ2がログイン中か否か(「stat」がactiveか空欄か)を判断する(S204)。図4に示す中継サーバ情報によれば中継サーバ2は中継通信システム100にログイン中であるため、中継サーバ3は、中継サーバ2に向けてVPNグループの開始コマンドを送信する(図12のシーケンス番号3、startVpn)。このとき、選択されたVPNグループの識別情報(VpnGroupID)と、中継サーバ3についてのアドレスフィルタ情報(addr03)と、が同時に中継サーバ2に向けて送信される。
 これにより、中継サーバ2は、開始の処理を行うVPNグループを特定できるとともに、中継サーバ3についての最新のアドレスフィルタ情報を取得することができる。また、中継サーバ2は、信号を受信した旨を中継サーバ3に通知するとともに、自身についてのアドレスフィルタ情報(addr02)を中継サーバ3に送信する。そして、中継サーバ3は、中継サーバ2からの応答を受けて(S206)、受信したアドレスフィルタ情報をアドレスフィルタ情報記憶部56に記憶する(S207)。そして、中継サーバ3は、中継サーバ2を、VPNを開始する準備が完了したルーティングポイントとして登録する(S208)。
 このように、VPNを開始する際に、それぞれのルーティング中継サーバが他のルーティング中継サーバとアドレスフィルタ情報を交換(取得)するため、最新のアドレスフィルタ情報を用いてVPNを構築することができる。従って、VPN開始前の段階で一部のルーティング中継サーバについてのアドレスフィルタ情報が変更された場合でも、その変更を全てのルーティング中継サーバに反映させた状態でVPNを開始できるので、パケットのルーティングにおける矛盾の発生を防止でき、信頼性を向上させることができる。
 次に、中継サーバ3は、他にルーティングポイントが有るか否かの判断を行う(S209)。図6(b)に示すように、VPN-GROUP2におけるルーティングポイントは中継サーバ3と中継サーバ2のみであり、他のルーティングポイントは記述されていない。従って、中継サーバ3は、VPNグループ情報記憶部54の記憶内容からルーティングセッション情報543を抽出する(S210)。
 次に、中継サーバ3は、抽出したルーティングセッション情報を参照して、自身が始点となるルーティングセッションが記述されているか否かを判断する(S211)。図6(b)のルーティングセッション情報543においては、中継サーバ3及び中継サーバ2との間で確立されるべきルーティングセッションにおいて、中継サーバ3が始点となることが記述されている。
 そこで、中継サーバ3は、中継サーバ2が、VPNを開始する準備が完了したルーティングポイントであるか否かを判断する(S212)。上記のS208により、中継サーバ2については準備完了が登録されているため、中継サーバ3から中継サーバ2に対してルーティングセッションを確立するための通信制御が行われる(S213、図12のシーケンス番号4、createVpnSsn)。
 次に、中継サーバ3は、自身が接続の始点となるルーティングセッションが他に記述されているか否かを判断する(S214)。図6(b)に示すように、中継サーバ2とのルーティングセッションを除いては、自身が接続の始点となるルーティングセッションはルーティングセッション情報に記述されていない。従って、一連の処理が完了する。
 以上のようにして、VPNを開始するための処理を行うことができる。なお、それぞれのルーティング中継サーバは、自身が始点である旨がルーティングセッション情報に記述されていない限りはルーティングセッション確立のための最初の通信制御を行わないので、通信制御の衝突を防止し、機器間のルーティングセッションを簡素な制御で確立することができる。
 なお、VPNの起動中にVPNグループが変更された場合は、変更があった旨が各ルーティング中継サーバに通知され、適宜の情報が更新される。そして、更新後の情報に基づいてVPNによる通信を行うことにより、VPNを停止することなくVPNグループの変更を行うことができる。
 次に、図15及び図16を参照して、サブVPNグループ情報に基づいて、VPNを開始するために行う処理について説明する。図15及び図16は、サブVPNグループ情報に基づいてVPNを開始するための処理を示すフローチャートである。この図15及び図16に示す処理は、図13及び図14に示す処理と適切なタイミングで並行して行われる。なお、図15及び図16に示す処理は、図13及び図14に示す処理と同等の処理を行うことが多いため、説明を簡略化又は省略することがある。
 中継サーバ3は、初めに、サブルーティングポイント情報を参照して、S201において選択されたVPNグループに対応付けられたサブルーティングポイントを読み出す(S301)。図7(a)に示すように、VPN-GROUP2においては、中継サーバ3のサブルーティングポイントとして設定されたクライアント端末としてクライアント端末37が記述されているため、当該クライアント端末37が読み出される。このクライアント端末37は上述のとおり、ルーティング中継サーバ(中継サーバ2及び中継サーバ3)と同様に、パケットを転送するルーティングポイントのように振舞うことができる。この機能を実現するために、詳細は図示しないが、クライアント端末37は、アドレスフィルタ情報やルーティングセッション情報等を記憶可能な適宜の記憶部と、図2の制御部60と同様に構成された制御部と、同じく図2のインタフェース部70と同様に構成されたインタフェース部と、を備えている。
 S301の処理の後、中継サーバ3は、読み出されたクライアント端末37がログイン中か否か(「site」に中継サーバの識別情報が記述されているか、それとも空欄か)を中継サーバ情報に基づいて判断する(S302)。図4に示す中継サーバ情報によればクライアント端末37はログイン中であるため、中継サーバ3は、クライアント端末37に向けてVPNグループの開始コマンドを送信する(S303、図12のシーケンス番号5、startVpn)。このとき、選択されたVPNグループの識別情報と、上記で中継サーバ3が記憶しているアドレスフィルタ情報(addr02及びaddr03)も同時に送信される。これにより、クライアント端末37は、中継サーバ2及び中継サーバ3についての最新のアドレスフィルタを取得することができる。
 また、クライアント端末37は、信号を受信した旨を中継サーバ3に通知するとともに、当該クライアント端末37が記憶部に記憶しているアドレスフィルタ情報(addr37)を中継サーバ3に送信する。なお、このアドレスフィルタ情報は当該クライアント端末37についてのアドレスフィルタ情報であって、クライアント端末37がサブルーティングポイントとして動作するときはファイルサーバ38にパケットを転送可能であるように適宜設定されるものである。従って、クライアント端末37においては、当該クライアント端末37の識別情報と対応付けた形で、ファイルサーバ38のIPアドレス(これがアドレスフィルタ情報に相当する)が記憶されている。
 中継サーバ3は、クライアント端末37からの応答を受けて(S304)、クライアント端末37についてのアドレスフィルタ情報をアドレスフィルタ情報記憶部56及びサブアドレスフィルタ情報記憶部57に記憶する(S305)。なお、上述したように、クライアント端末37のアドレスフィルタ情報(ファイルサーバ38のIPアドレス)は、アドレスフィルタ情報記憶部56においては図9のように中継サーバ3の識別情報と対応付けて記憶され、サブアドレスフィルタ情報記憶部57においては図10のようにクライアント端末37の識別情報と対応付けて記憶される。そして、中継サーバ3は、このクライアント端末37についてのアドレスフィルタ情報を他のルーティング中継サーバ(中継サーバ2)に送信する(図12のシーケンス番号6、send(addr37))。中継サーバ2は、受信したクライアント端末37についてのアドレスフィルタ情報を、中継サーバ3の識別情報と対応付けてアドレスフィルタ情報記憶部56に追記する形で記憶する(ただし、サブアドレスフィルタ情報記憶部57の記憶内容は更新しない)。
 そして、中継サーバ3は、クライアント端末37を、VPNを開始する準備が完了したサブルーティングポイントとして登録する(S306)。
 次に、中継サーバ3は、他にサブルーティングポイントが有るか否かの判断を行う(S307)。図7(a)に示すように、VPN-GROUP2におけるサブルーティングポイントはクライアント端末37のみであり、他は記述されていない。従って、中継サーバ3は、サブVPNグループ情報記憶部55の記憶内容からサブルーティングセッション情報を抽出する(S308)。なお、仮に、VPNの開始時においてクライアント端末39をサブルーティングポイントとして設定する選択をユーザが行った場合は、中継サーバ3は、当該クライアント端末39についてもS302~S306の処理を行うことになる。
 次に、中継サーバ3は、抽出したサブルーティングセッション情報を参照して、自身が始点となるサブルーティングセッションが記述されているか否かを判断する(S309)。図7(b)のサブルーティングセッション情報においては、中継サーバ3及びクライアント端末37との間で確立されるべきサブルーティングセッションにおいて、中継サーバ3が始点となることが記述されている。
 そこで、中継サーバ3は、クライアント端末37が、VPNを開始する準備が完了したサブルーティングポイントであるか否かを判断する(S310)。上記のS306により、クライアント端末37については準備完了が登録されているため、中継サーバ3からクライアント端末37に対してサブルーティングセッションを確立するための通信制御が行われる(S311、図12のシーケンス番号7、createVpnSsn)。
 次に、中継サーバ3は、自身が接続の始点となるサブルーティングセッションが他に記述されているか否かを判断する(S312)。図7(b)のサブルーティングセッション情報では、既に確立しているクライアント端末37とのサブルーティングセッションを除き、自身が接続の始点となるサブルーティングセッションが記述されていない。従って、一連の処理を終了する。
 以上のようにして、サブVPNグループ情報に基づいてVPNを開始するための処理を行うことができる。なお、仮に、VPNの開始時においてクライアント端末39をサブVPNグループに含める選択をユーザが行った場合は、中継サーバ3は、クライアント端末39との間でサブルーティングセッション確立処理等を行う。
 次に、VPNの起動中にサブルーティングポイントが変更された場合について説明する。例えば、図4に示す中継サーバ情報には記載されていないが、図1のクライアント端末42が中継サーバ3に所属する旨が中継サーバ情報に予め記述されている状況において、VPN(VPN-GROUP2)の起動中に当該クライアント端末42が当該VPNのサブルーティングポイントとして追加された場合を考える。この場合、中継サーバ3は、クライアント端末42の識別情報をサブルーティングポイント情報及びサブルーティングセッション情報に追加し、サブVPNグループ情報記憶部55の記憶内容を更新する。そして中継サーバ3は、クライアント端末42についてのアドレスフィルタ情報を当該クライアント端末42から受信して、受信したアドレスフィルタ情報をアドレスフィルタ情報記憶部56及びサブアドレスフィルタ情報記憶部57に記憶する。
 ここで、クライアント端末42についてのアドレスフィルタ情報は、当該クライアント端末42がサブルーティングポイントとして動作するときはファイルサーバ43にパケットを転送可能であるように、予め適宜設定されている。従って、クライアント端末42から中継サーバ3に送信されるアドレスフィルタ情報はファイルサーバ43のIPアドレスであり、これがアドレスフィルタ情報記憶部56及びサブアドレスフィルタ情報記憶部57に記憶される。そして、中継サーバ3とクライアント端末42との間にサブルーティングセッションが確立される。
 次に、中継サーバ3は、クライアント端末42についてのアドレスフィルタ情報を他のルーティング中継サーバ(中継サーバ2)に通知する。この通知を受けた中継サーバ2は、クライアント端末42についてのアドレスフィルタ情報(即ち、ファイルサーバ43のIPアドレス)を中継サーバ3の識別情報に対応付けた形でアドレスフィルタ情報記憶部56に記憶する(ただし、サブアドレスフィルタ情報記憶部57の記憶内容は更新しない)。以上でサブルーティングポイントの変更が完了し、以降は変更前と同様にVPN通信を行うことができる。
 このように、中継サーバ3に所属するサブルーティングポイントが変更された場合でも、他の中継サーバ2ではアドレスフィルタ情報記憶部56の記憶内容だけを更新すれば良く、VPNグループ情報記憶部54、サブVPNグループ情報記憶部55、及びサブアドレスフィルタ情報記憶部57の記憶内容は何れも更新する必要がない。また、アドレスフィルタ情報記憶部56の記憶内容の変更も、当該サブルーティングポイントの変更の結果として生じるVPNの通信相手の変化分(上記の例に照らせば、ファイルサーバ43のIPアドレスの追加)だけで良いのである。即ち、あるルーティング中継サーバにおいてサブルーティングポイントが変更される場合でも、それが他のルーティング中継サーバの記憶内容に及ぼす影響を相当に小さくすることができる。従って、本実施形態の構成はサブルーティングポイントが頻繁に変化する場合に特に好適であり、例えば上述のように、VPNを開始する機会を利用してサブルーティングポイントを(一時的に)追加するような機動的な運用も極めて容易である。なお、サブルーティングポイントの変更は上記のようにクライアント端末を追加する場合に限定されず、逆に既存のサブルーティングポイントを削除することも可能であることは勿論である。
 次に、確立したルーティングセッションを用いてパケットのルーティングを行う処理について主に図17を参照して説明する。図17は、パケットのルーティングを行う通信処理を示すシーケンス図である。以下では、ルーティングポイントとして機能する中継サーバ2が、第1パケットから第3パケットの3種類のパケットを受信したときについて説明する。
 初めに、送信先のIPアドレスが(192.168.33.131)となっている第1パケットを受信したとき(シーケンス番号8、packet01)について説明する。中継サーバ2は、この第1パケットを受信した後に、送信先のIPアドレスと、アドレスフィルタ情報記憶部56の記憶内容(図9を参照)と、を比較する。そして、第1パケットに記された送信先に対してパケットを送信可能なルーティングポイントを検出する。
 図17に示すように、第1パケットの送信先のIPアドレスは、中継サーバ3の識別情報に対応付けられたアドレスフィルタ情報に含まれる。この結果、中継サーバ2は、中継サーバ3との間に確立されたルーティングセッションを介して第1パケットを当該中継サーバ3に送信する。
 この第1パケットを受信した中継サーバ3は、送信先のIPアドレスと、アドレスフィルタ情報記憶部56の記憶内容(図9を参照)とを比較する。そして、第1パケットに記された送信先に対してパケットを送信可能なルーティングポイントとして自身が記述されていることを検出する。次に、中継サーバ3は、送信先のIPアドレスと、サブアドレスフィルタ情報記憶部57の記憶内容(図10を参照)とを比較する。そして、第1パケットに記された送信先に対してパケットを送信可能なサブルーティングポイントが設定されていないことを検出する。この結果、中継サーバ3は、第1パケットを送信先であるファイルサーバ31に対して送信する。
 次に、送信先のIPアドレスが(192.168.34.138)である第2パケットを中継サーバ2が受信したとき(シーケンス番号9、packet02)について説明する。アドレスフィルタ情報記憶部56の記憶内容(図9を参照)においては、第1パケットと同様に、第2パケットに記された送信先に対してパケットを送信可能なルーティングポイントとして中継サーバ3が指定されている。従って、中継サーバ2は、中継サーバ3との間に確立されたルーティングセッションを介して第2パケットを当該中継サーバ3に送信する。
 この第2パケットを受信した中継サーバ3は、送信先のIPアドレスと、アドレスフィルタ情報記憶部56の記憶内容(図9を参照)とを比較する。そして、第2パケットに記された送信先に対してパケットを送信可能なルーティングポイントとして自身が記述されていることを検出する。次に、中継サーバ3は、送信先のIPアドレスと、サブアドレスフィルタ情報記憶部57の記憶内容(図10を参照)とを比較する。そして、第2パケットに記された送信先に対してパケットを送信可能なサブルーティングポイントとしてクライアント端末37が記述されていることを検出する。この結果、中継サーバ3は、クライアント端末37との間に確立されたサブルーティングセッションを介して、第2パケットを当該クライアント端末37に対して送信する。
 この第2パケットを受信したクライアント端末37は、中継サーバ3と類似した動作を行う。即ち、クライアント端末37は、当該クライアント端末37が備える記憶部で記憶されている、自身についてのアドレスフィルタ情報を参照する。そしてクライアント端末37は、当該アドレスフィルタ情報に、第2パケットに記された送信先に対してパケットを送信可能なルーティングポイントとして自身が記述されていることを検出する。この結果、クライアント端末37は、第2パケットを送信先であるファイルサーバ38に対して送信する。
 次に、送信先のIPアドレスが(192.168.5.51)である第3パケットを中継サーバ2が受信したとき(シーケンス番号10、packet03)について説明する。クライアント端末11は、送信先のIPアドレスとアドレスフィルタ情報とを比較した結果、送信先に対してパケットを送信可能なルーティングポイントが記述されていないことを検出する。この場合、クライアント端末11は、受信した第3パケットをどこにも送信しない。
 このように、本実施形態では、アプリケーション層のルーティングセッションで、ルーティング対象のデータを流すように構成されている。従って、以上で説明したルーティングは、通常のIPルーティングとは異なっている。
 このようにアプリケーション層でルーティングを行うことにより、WANを意識することなく、遠隔地のLAN同士がプライベートIPアドレスを利用して相互に通信することができる。また、上述のように、アドレスフィルタ情報記憶部56は、パケットの送信先として指定可能な相手の名称を表示可能となっている。そのため、ユーザは、VPNを用いてどの機器にパケットを送信可能であるかを容易に認識することができる。
 次に、VPNを終了する処理について図18を参照して説明する。図18は、VPNグループを終了する通信処理を示すシーケンス図である。ユーザは、クライアント端末37を介して中継サーバ3にログインして所定の操作を行うことによって、VPNを終了する処理を開始することができる。今回の説明では、クライアント端末37を介して中継サーバ3が、VPNを終了する処理を開始したものとする。
 中継サーバ3は、VPNを終了する指示を受け付けると、VPNグループの識別情報とともにその旨を、中継サーバ2に対して送信する(シーケンス番号11、stopVpn)。なお、中継サーバ2は、中継サーバ3から受信したVPNグループの識別情報によって、どのVPNグループを対象としたVPNが終了されるかを知ることができる。
 中継サーバ3は、VPNの終了を受け付けた旨の信号を中継サーバ2受信した後に、当該中継サーバ2に対して、ルーティングセッションの終了コマンドを送信する(シーケンス番号12、closeVpnSsn)。
 次に、中継サーバ3は、クライアント端末37に対しても、VPNを終了する旨の信号を送信する(シーケンス番号13、stopVpn)。そして、クライアント端末37からの応答の受信後に、ルーティングセッションの終了コマンドを送信する(シーケンス番号14、closeVpnSsn)。
 以上に示したように、本実施形態の中継サーバ3は、中継グループ情報記憶部51と、中継サーバ情報記憶部52と、VPNグループ情報記憶部54と、サブVPNグループ情報記憶部55と、アドレスフィルタ情報記憶部56と、サブアドレスフィルタ情報記憶部57と、通信制御部63と、を備える。中継グループ情報記憶部51は、自身(中継サーバ3)との間で相互に接続可能な他の中継サーバ1,2を含む中継グループの情報を記憶する。中継サーバ情報記憶部52は、中継グループに属する中継サーバ1,2,3の起動情報と、中継グループに属する中継サーバ1,2,3に接続されるクライアント端末11,21,37,39の起動情報及び登録情報と、を含む中継サーバ情報を記憶する。VPNグループ情報記憶部54は、ルーティング中継サーバ間に確立されるルーティングセッションを介してVPNにより通信を行うVPNグループに関し、当該VPNグループを構成するルーティング中継サーバの識別情報及び互いに接続されるルーティング中継サーバを示すルーティングセッション情報を記憶する。サブVPNグループ情報記憶部55は、中継サーバ3のサブルーティング機器を示すサブルーティングポイント情報を含むサブVPNグループ情報を記憶する。アドレスフィルタ情報記憶部56は、ルーティング中継サーバについてのアドレスフィルタ情報と、当該ルーティング中継サーバのサブルーティング機器についてのアドレスフィルタ情報と、を当該ルーティング中継サーバの識別情報と対応付けて記憶する。サブアドレスフィルタ情報記憶部57は、中継サーバ3のサブルーティング機器であるクライアント端末37についてのアドレスフィルタ情報を、クライアント端末37の識別情報と対応付けて記憶する。通信制御部63は、中継サーバ3と他のルーティング中継サーバとの間にルーティングセッションを確立する制御と、中継サーバ3とクライアント端末37との間にサブルーティングセッションを確立する制御と、ルーティングセッション又はサブルーティングセッションを介して受信したパケットを転送するパケット転送制御と、を行う。パケット転送制御は、サブアドレスフィルタ情報記憶部57の記憶内容においてパケットの送信先が中継サーバ3のサブルーティング機器と対応付けられている場合には、当該サブルーティング機器にパケットを転送し、そうでない場合には、当該送信先にパケットを転送する制御である。
 これにより、中継サーバ3は、他のルーティング中継サーバとVPNを構築して、必要な機器との間でのみファイルの共有等を行うことができる。また、上記の構成は、中継サーバに加えてクライアント端末がルーティングポイントとして機能する構成のVPNと比較して、VPNグループ情報を単純にすることができる。また、アドレスフィルタ情報記憶部56では、サブルーティング機器についてのアドレスフィルタ情報を、当該サブルーティング機器の識別情報に対応付けずに、ルーティング中継サーバの識別情報に対応付けて記憶している。従って、サブルーティングポイントの数が多い構成のネットワークであっても、アドレスフィルタ情報記憶部の記憶内容が複雑化することを抑制できる。以上により、中継サーバが記憶する情報量を少なくすることができる。更に、これらの情報を他のルーティング中継サーバと同期する場合に、ルーティング中継サーバ同士でやり取りされる情報量を抑えることができる。
 また、本実施形態の中継サーバ3は、クライアント端末39から、VPNを開始する旨の指示とともに、当該クライアント端末39を中継サーバ3のサブルーティングポイントとして設定する旨の指示を受けたときに、通信制御部63は、クライアント端末39をサブVPNグループ情報(詳細にはサブルーティングポイント情報及びサブルーティングセッション情報)に追加する制御と、クライアント端末39についてのアドレスフィルタ情報を他のルーティング中継サーバに送信する制御と、自身(中継サーバ3)と当該クライアント端末39との間にルーティングセッションを確立する制御と、を行う。
 これにより、VPNを開始する旨の指示を行ったクライアント端末39をサブルーティングポイントとして設定することが容易となる。
 また、本実施形態の中継サーバ3においては、仮想プライベートネットワークを維持したまま、サブルーティングポイントを変更することができる。
 これにより、状況の変化に柔軟に対応可能なVPNを構築できる。
 以上に本発明の好適な実施の形態を説明したが、上記の構成は例えば以下のように変更することができる。
 上記の中継グループ情報、中継サーバ情報、クライアント端末情報、VPNグループ情報、アドレスフィルタ情報等を格納する形式はXML形式に限定されず、適宜の形式で各情報を格納することができる。
 上記実施形態の構成に代えて、各中継サーバ間での通信に用いられる外部サーバをインターネット上に設置し、SIP(Session Initiaion Protocol)サーバとしての機能を発揮させて通信を行う構成にしても良い。
 1,2,3 中継サーバ
 11,21,37,39,42 クライアント端末
 10,20,30,36,41 LAN
 50 記憶部
 60 制御部
 63 通信制御部
 100 中継通信システム

Claims (4)

  1.  自身との間で相互に接続可能な他の中継サーバを含む中継グループの情報を記憶する中継グループ情報記憶部と、
     前記中継グループに属する前記中継サーバの起動情報と、前記中継グループに属する前記中継サーバに所属するクライアント端末の起動情報及び登録情報と、を含む中継サーバ情報を記憶する中継サーバ情報記憶部と、
     前記中継グループの情報及び前記中継サーバ情報に基づいて中継通信システムを構成する前記中継サーバのうちルーティングポイントとして設定された前記中継サーバであるルーティング中継サーバを含んで構成され、当該ルーティング中継サーバ間に確立されるルーティングセッションを介して仮想プライベートネットワークにより通信を行うVPNグループに関し、当該VPNグループを構成する前記ルーティング中継サーバの識別情報及び互いに接続される前記ルーティング中継サーバを示すルーティングセッション情報を記憶するVPNグループ情報記憶部と、
     ある中継サーバに所属するクライアント端末のうちサブルーティングポイントとして設定された前記クライアント端末を当該中継サーバのサブルーティング機器としたときに、自身のサブルーティング機器を示すサブルーティングポイント情報を含むサブVPNグループ情報を記憶するサブVPNグループ情報記憶部と、
     あるルーティング中継サーバ又はサブルーティング機器がパケットの転送先として指定可能なルーティング対象装置のアドレスを示す情報を当該ルーティング中継サーバ又はサブルーティング機器についてのアドレスフィルタ情報としたときに、前記ルーティング中継サーバについてのアドレスフィルタ情報と、当該ルーティング中継サーバのサブルーティング機器についてのアドレスフィルタ情報と、を当該ルーティング中継サーバの識別情報と対応付けて記憶するアドレスフィルタ情報記憶部と、
     自身のサブルーティング機器についてのアドレスフィルタ情報を、当該サブルーティング機器の識別情報と対応付けて記憶するサブアドレスフィルタ情報記憶部と、
     自身と前記ルーティング中継サーバとの間にルーティングセッションを確立する制御と、自身と自身のサブルーティング機器との間にサブルーティングセッションを確立する制御と、前記ルーティングセッション又は前記サブルーティングセッションを介して受信したパケットを転送するパケット転送制御と、を行う通信制御部と、
    を備え、
     前記パケット転送制御は、
     前記ルーティングセッションを介してパケットを受信したときに、受信したパケットの送信先が前記アドレスフィルタ情報記憶部の記憶内容において自身と対応付けられているときは、
     前記サブアドレスフィルタ情報記憶部の記憶内容においてパケットの送信先が自身のサブルーティング機器と対応付けられている場合には、当該サブルーティング機器にパケットを転送し、そうでない場合には、当該送信先にパケットを転送する制御であることを特徴とする中継サーバ。
  2.  請求項1に記載の中継サーバであって、
     自身に所属する前記クライアント端末から、仮想プライベートネットワークを開始する旨の指示とともに、当該クライアント端末をサブルーティングポイントとして設定する旨の指示を受けたときに、
     前記通信制御部は、仮想プライベートネットワークを開始する旨の指示を行った前記クライアント端末を前記サブVPNグループ情報に追加する制御と、当該クライアント端末についての前記アドレスフィルタ情報を他の前記ルーティング中継サーバに送信する制御と、自身と当該クライアント端末との間に前記サブルーティングセッションを確立する制御と、を行うことを特徴とする中継サーバ。
  3.  請求項1に記載の中継サーバであって、
     仮想プライベートネットワークを維持したまま、前記サブルーティングポイントを変更可能であることを特徴とする中継サーバ。
  4.  複数の中継サーバと、
     前記中継サーバを介して互いに接続可能なクライアント端末と、
    を備え、
     前記中継サーバは、
     当該中継サーバとの間で相互に接続可能な他の中継サーバを含む中継グループの情報を記憶する中継グループ情報記憶部と、
     前記中継グループに属する前記中継サーバの起動情報と、前記クライアント端末の起動情報及び登録情報と、を含む中継サーバ情報を記憶する中継サーバ情報記憶部と、
     前記中継サーバのうちルーティングポイントとして設定された前記中継サーバであるルーティング中継サーバを含んで構成され、当該ルーティング中継サーバ間に確立されるルーティングセッションを介して仮想プライベートネットワークにより通信を行うVPNグループに関し、当該VPNグループを構成する前記ルーティング中継サーバの識別情報及び互いに接続される前記ルーティング中継サーバを示すルーティングセッション情報を記憶するVPNグループ情報記憶部と、
     当該中継サーバに所属するクライアント端末のうちサブルーティングポイントとして設定された前記クライアント端末を当該中継サーバのサブルーティング機器としたときに、当該中継サーバのサブルーティング機器を示すサブルーティングポイント情報を含むサブVPNグループ情報を記憶するサブVPNグループ情報記憶部と、
     あるルーティング中継サーバ又はサブルーティング機器がパケットの転送先として指定可能なルーティング対象装置のアドレスを示す情報を当該ルーティング中継サーバ又はサブルーティング機器についてのアドレスフィルタ情報としたときに、前記ルーティング中継サーバについてのアドレスフィルタ情報と、当該ルーティング中継サーバのサブルーティング機器についてのアドレスフィルタ情報と、を当該ルーティング中継サーバの識別情報と対応付けて記憶するアドレスフィルタ情報記憶部と、
     当該中継サーバのサブルーティング機器についてのアドレスフィルタ情報を、当該サブルーティング機器の識別情報と対応付けて記憶するサブアドレスフィルタ情報記憶部と、
     他の前記ルーティング中継サーバとの間でルーティングセッションを確立する制御と、前記中継サーバとサブルーティング機器との間にサブルーティングセッションを確立する制御と、前記ルーティングセッション又は前記サブルーティングセッションを介して受信したパケットを転送するパケット転送制御と、を行う通信制御部と、
    を備え、
     前記パケット転送制御は、
     前記ルーティングセッションを介してパケットを受信したときに、受信したパケットの送信先が前記アドレスフィルタ情報記憶部の記憶内容において当該中継サーバと対応付けられているときは、
     前記サブアドレスフィルタ情報記憶部の記憶内容においてパケットの送信先が当該中継サーバのサブルーティング機器と対応付けられている場合には、当該サブルーティング機器にパケットを転送し、そうでない場合には、当該送信先にパケットを転送する制御であることを特徴とする中継通信システム。
PCT/JP2011/006862 2011-02-08 2011-12-08 中継サーバ及び中継通信システム WO2012107983A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US13/984,117 US9197557B2 (en) 2011-02-08 2011-12-08 Relay server and relay communication system
CN201180055209.2A CN103222240B (zh) 2011-02-08 2011-12-08 中继服务器及中继通信系统

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011-025262 2011-02-08
JP2011025262A JP5621639B2 (ja) 2011-02-08 2011-02-08 中継サーバ及び中継通信システム

Publications (1)

Publication Number Publication Date
WO2012107983A1 true WO2012107983A1 (ja) 2012-08-16

Family

ID=46638226

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/006862 WO2012107983A1 (ja) 2011-02-08 2011-12-08 中継サーバ及び中継通信システム

Country Status (5)

Country Link
US (1) US9197557B2 (ja)
JP (1) JP5621639B2 (ja)
CN (1) CN103222240B (ja)
TW (1) TWI542169B (ja)
WO (1) WO2012107983A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10187441B2 (en) * 2011-10-03 2019-01-22 CSC Holdings, LLC Media relay
US9054892B2 (en) * 2012-02-21 2015-06-09 Ecolink Intelligent Technology, Inc. Method and apparatus for registering remote network devices with a control device
US9438564B1 (en) 2012-09-18 2016-09-06 Google Inc. Managing pooled VPN proxy servers by a central server
US9819766B1 (en) 2014-07-30 2017-11-14 Google Llc System and method for improving infrastructure to infrastructure communications

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008154101A (ja) * 2006-12-19 2008-07-03 Murata Mach Ltd 中継サーバ

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4099930B2 (ja) * 2000-06-02 2008-06-11 株式会社日立製作所 ルータ装置及びvpn識別情報の設定方法
JP4183379B2 (ja) * 2000-11-27 2008-11-19 富士通株式会社 ネットワーク及びエッジルータ
JP4231985B2 (ja) 2001-01-16 2009-03-04 村田機械株式会社 中継サーバおよび通信システム
US7099912B2 (en) * 2001-04-24 2006-08-29 Hitachi, Ltd. Integrated service management system
US7441262B2 (en) * 2002-07-11 2008-10-21 Seaway Networks Inc. Integrated VPN/firewall system
US20040255028A1 (en) * 2003-05-30 2004-12-16 Lucent Technologies Inc. Functional decomposition of a router to support virtual private network (VPN) services
US7640319B1 (en) * 2003-09-30 2009-12-29 Nortel Networks Limited Gateway shared by multiple virtual private networks
EP1696613A1 (en) * 2004-01-30 2006-08-30 Matsushita Electric Industries Co., Ltd. Information processing device, server, communication system, address decision method, address modification method, and program
US7675914B2 (en) * 2004-07-15 2010-03-09 Panasonic Corporation Relay information setting method and device
KR100918440B1 (ko) * 2004-11-12 2009-09-24 삼성전자주식회사 가상 사설망에서 게이트웨이의 ip 주소를 이용한 이동 단말의 통신 방법 및 장치
JP4401942B2 (ja) * 2004-12-08 2010-01-20 株式会社日立コミュニケーションテクノロジー パケット転送装置および通信ネットワーク
KR100693059B1 (ko) * 2005-01-24 2007-03-12 삼성전자주식회사 Mpls 기반의 vpn 제공 장치 및 방법
JP4628467B2 (ja) * 2006-03-20 2011-02-09 富士通株式会社 中継装置、通信方法及びコンピュータプログラム
US8296839B2 (en) * 2006-06-06 2012-10-23 The Mitre Corporation VPN discovery server
JP4425298B2 (ja) * 2007-08-01 2010-03-03 富士通株式会社 パケットルーティング制御方法、パケットルーティング制御プログラム、端末装置、およびvpnサーバ
JP4692600B2 (ja) * 2008-09-25 2011-06-01 富士ゼロックス株式会社 情報処理装置、通信システム、及びプログラム
US9407529B2 (en) * 2010-11-18 2016-08-02 Murata Machinery, Ltd. Relay server and relay communication system
JP5569697B2 (ja) * 2011-03-09 2014-08-13 村田機械株式会社 中継サーバ及び中継通信システム
JP5682782B2 (ja) * 2011-07-11 2015-03-11 村田機械株式会社 中継サーバ及び中継通信システム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008154101A (ja) * 2006-12-19 2008-07-03 Murata Mach Ltd 中継サーバ

Also Published As

Publication number Publication date
JP2012165269A (ja) 2012-08-30
CN103222240A (zh) 2013-07-24
CN103222240B (zh) 2015-11-25
TW201234808A (en) 2012-08-16
US9197557B2 (en) 2015-11-24
JP5621639B2 (ja) 2014-11-12
US20130315249A1 (en) 2013-11-28
TWI542169B (zh) 2016-07-11

Similar Documents

Publication Publication Date Title
JP5569697B2 (ja) 中継サーバ及び中継通信システム
JP5682782B2 (ja) 中継サーバ及び中継通信システム
KR101472426B1 (ko) 중계 서버 및 중계 통신 시스템
JP5621639B2 (ja) 中継サーバ及び中継通信システム
US8554935B2 (en) Relay server and relay communication system
JP5668954B2 (ja) 中継サーバ及び中継通信システム
US8737413B2 (en) Relay server and relay communication system
JP5874356B2 (ja) 中継サーバ及び中継通信システム
JP2012170008A (ja) 中継サーバ及び中継通信システム
JP5633694B2 (ja) 中継サーバ及び中継通信システム
JP5773205B2 (ja) 中継サーバ及び中継通信システム
JP5633693B2 (ja) 中継サーバ及び中継通信システム
JP5633692B2 (ja) 中継サーバ及び中継通信システム
JP5862231B2 (ja) 中継サーバ
JP2013141058A (ja) 中継サーバ及び中継通信システム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11858453

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 13984117

Country of ref document: US

122 Ep: pct application non-entry in european phase

Ref document number: 11858453

Country of ref document: EP

Kind code of ref document: A1