WO2015001671A1 - Communication control device, method for controlling communication control device, and information processing device - Google Patents

Communication control device, method for controlling communication control device, and information processing device Download PDF

Info

Publication number
WO2015001671A1
WO2015001671A1 PCT/JP2013/068539 JP2013068539W WO2015001671A1 WO 2015001671 A1 WO2015001671 A1 WO 2015001671A1 JP 2013068539 W JP2013068539 W JP 2013068539W WO 2015001671 A1 WO2015001671 A1 WO 2015001671A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
session
communication
information processing
session information
Prior art date
Application number
PCT/JP2013/068539
Other languages
French (fr)
Japanese (ja)
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 PCT/JP2013/068539 priority Critical patent/WO2015001671A1/en
Publication of WO2015001671A1 publication Critical patent/WO2015001671A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/102Gateways
    • H04L65/1033Signalling gateways
    • H04L65/104Signalling gateways in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/142Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms

Definitions

  • the present invention relates to a communication control device, a control method for the communication control device, and an information processing system.
  • AMI Advanced Metering Infrastructure
  • tens of millions of smart meters installed in a wide area such as houses and buildings are connected to a center server installed in a data center, and data is regularly transmitted. It is assumed to send and receive.
  • large-scale and wide-area control systems utilize the open network such as the Internet as the network infrastructure that connects the field and the center from the viewpoint of infrastructure installation costs. Is being considered.
  • a gateway apparatus is often installed between the field communication terminal and the center server of the data center, and the system configuration is often such that the center server cannot be accessed directly from the field.
  • the gateway device establishes an authentication session with each communication terminal in the field.
  • the number of communication terminals is enormous, the number of session information to be retained is enormous.
  • the amount of session information per case is also increasing as the system becomes more sophisticated. Therefore, it is required to shorten the processing time for searching for a specific session from a large amount of session information during communication while suppressing the cost of memory for storing session information.
  • Patent Document 1 proposes a cache device that further shortens the access time for request data from a client computer and reduces network traffic.
  • the cache device is provided in a gateway computer that is interposed between a client computer that requests data and a server computer that distributes stored data, and according to a data request from the client computer, a previous data request time and a current data request time. And a period management table for registering a period for comparison data and determining a data request prediction period.
  • pre-fetch processing is performed in which the stored data is pre-fetched from the server computer in advance, and the acquired accumulated data is requested to be written to the memory cache.
  • the data processing system includes an information system in which humans are involved in data processing in the system, and data requests from each client to the server often occur irregularly, and a large number of humans such as the AMI described above. And a control system in which a server is periodically accessed from a communication terminal equipped with a measurement control device or the like that does not intervene.
  • the cache device of Patent Document 1 is mainly configured to be applied to an information system in which a data request from a client computer is made irregularly, in other words, the data request is poor in periodicity. Therefore, when the apparatus of Patent Document 1 is applied to a control system, a large amount of resources tend to be consumed for data request generation cycle prediction for a large number of communication terminals. The problem is that the response is difficult to secure.
  • the first information processing device is connected to a plurality of first information processing devices and at least one second information processing device so as to be able to communicate with the first information processing device.
  • a communication control device that mediates data communication with the second information processing device, wherein data communication is executed from a transmission source in each of the first information processing devices to the second information processing device.
  • a communication cycle data storage unit storing communication cycle data as time interval information for each first information processing device, and a last time point when data communication from the first information processing device was executed.
  • the last access time point information which is information to be shown, the last access time point information relating to a certain first information processing device, and the communication cycle data obtained from the communication cycle data storage unit regarding the first information processing device.
  • the next access time point information which is information indicating the next time point at which the first information processing device executes data communication, is set as specific information relating to data communication between a specific transmission source and the second information processing device.
  • a session information storage unit stored as an associated session a session information cache configured with a storage device faster than a storage device constituting the session information storage unit, and stored in the session information storage unit Based on the next access time point information regarding each of the first information processing devices, it is continuously determined whether the data communication execution time point from the first information processing device has become a predetermined time threshold value or less from the present time point. When it is determined that the predetermined time threshold is not exceeded, session information related to the first information processing apparatus is stored as the session information.
  • the session information corresponding to the transmission source is obtained by referring to the session information storage unit And a transfer processing unit that transfers data received based on the session information to a transmission destination.
  • Another aspect of the present invention is a control method for the communication control device.
  • Still another aspect of the present invention is an information processing system including a plurality of the first information processing apparatuses, the second information processing apparatus, and the communication control apparatus.
  • a communication control device when a large number of communication terminals perform periodic communication with a communication network such as a data center, a real-time response to access from each communication terminal is secured while suppressing the amount of resources used such as memory capacity.
  • a communication control device a control method therefor, and an information processing system that enable this to be performed.
  • FIG. 1 is a diagram showing an example of the overall system configuration of an information processing system 1 including a gateway apparatus 102 that is a communication control apparatus according to an embodiment of the present invention.
  • FIG. 2 is a diagram illustrating an example of the overall system configuration of the information processing system 1 including the gateway apparatus 102 which is a communication control apparatus according to an embodiment of the present invention and a relay apparatus.
  • FIG. 3 is a diagram illustrating a functional configuration example of the gateway device 102.
  • FIG. 4 is a diagram illustrating a hardware configuration example of the gateway device 102.
  • FIG. 5 is a diagram showing a table configuration example of the session information cache 308.
  • FIG. 6 is a diagram illustrating a table configuration example of the session information table 309. FIG.
  • FIG. 7 is a diagram showing a table configuration example of the communication cycle management table 310.
  • FIG. 8 is a diagram illustrating an example of a processing sequence when a new session is established in the information processing system 1.
  • FIG. 9 is a diagram showing an example of a processing sequence at the time of existing session communication that is executed when the corresponding session information is registered in the cache in the information processing system 1.
  • FIG. 10 is a diagram showing an example of a processing sequence at the time of existing session communication executed when the corresponding session information is not registered in the cache in the information processing system 1.
  • FIG. 11 is a diagram showing an example of a processing sequence at the end of an existing session in the information processing system 1.
  • FIG. 12 is a functional configuration example of the gateway device 102 according to another embodiment of the present invention.
  • FIG. 13 is a diagram showing an example of a processing sequence at the time of existing session communication in the information processing system 1 including the gateway device 102 according to another embodiment of the present invention.
  • first embodiment a first embodiment for carrying out the present invention
  • FIG. 1 shows a center server 101 (second information processing apparatus) in which each of a plurality of communication terminals 103-1 to 103-n (first information processing apparatus) in the field is an information processing apparatus in a data center. It is a structural example of the information processing system 1 comprised so that data may be transmitted / received mutually.
  • the center server 101 is a server computer on which an application for communication operates, and is a general computer having a communication function.
  • the communication terminals 103-1 to 103-n are computers on which applications that perform communication operate, such as a server computer having a communication function, a personal computer (PC), and a control controller. As shown in FIG.
  • each of the communication terminals 103-1 to 103-n is connected to the gateway apparatus 102 via the wide area network 105.
  • the gateway device 102 (communication control device) is connected to the center server 101 via the center network 104.
  • the communication terminals 103-1 to 103-n are referred to as a single configuration, function, etc., they are simply expressed as “communication terminal 103”.
  • a configuration in which a plurality of center servers 101 are connected to the center network 104 is also possible.
  • the gateway device 102 has a function of managing a communication state (session) with each of the communication terminals 103-1 to 103-n. Details of the function of the gateway device 102 will be described later.
  • the term “session” refers to a series of data packet communications transmitted / received between the gateway apparatus 102 and a transmission source such as application software operating on each of the communication terminals 103-1 to 103-n. Means.
  • the center network 104 is a communication network for exchanging data in the data center, and is usually configured as a high-speed and high-security network.
  • the wide area network 105 is a communication network for exchanging data between the data center and the field, more specifically, between the gateway device 102 of the data center and each of the communication terminals 103-1 to 103-n in the field. It consists of a low security network.
  • the center network 104 and the wide area network 105 may be logically separated by a VLAN (Virtual Local Area Network), a network segment, or the like, or may be physically separated by a communication medium level such as light or radio wave. .
  • VLAN Virtual Local Area Network
  • each communication network and the management network in the data center will be described as an IP (Internet Protocol) network, but the present invention is not limited to this.
  • the signal used for communication in the communication network may be, for example, any one of electricity, light, radio waves, sound, or a combination thereof.
  • FIG. 2 illustrates a modification of the information processing system 1 of FIG.
  • FIG. 2 shows a system configuration example in which relay devices 201-1 to 201-n are provided between the field communication terminal 103 and the data center gateway device 102 in the configuration of FIG.
  • the relay devices 201-1 to 201-n have a function of transferring communication between the communication terminals 103 connected to the field networks 202-1 and 202-2 and the gateway device 102.
  • a packet is transferred like a switch or a router, or in the relay devices 201-1 to 201-n, communication with each communication terminal 103 is once terminated.
  • the relay devices 201-1 to 201-n are one of the communication terminals 103-1 to 103-n in FIG.
  • the field networks 202-1 and 202-2 are intranets configured by, for example, regional units or organizational units.
  • the gateway device 102 includes communication interfaces 301-1 and 301-2 configured as a network interface card (NIC), a packet transmission / reception processing unit 302, a transfer processing unit 303, a session information management unit 304, a session information monitoring unit 305, A first storage area 306, a second storage area 307, a session information cache 308, a session information table 309, and a communication cycle management table 310 are provided.
  • NIC network interface card
  • NIC network interface card
  • packet transmission / reception processing unit 302 a transfer processing unit 303
  • a session information management unit 304 a session information monitoring unit 305
  • a first storage area 306, a second storage area 307, a session information cache 308, a session information table 309, and a communication cycle management table 310 are provided.
  • Communication interfaces 301-1 and 301-2 are interfaces between the wide area network 105 and the gateway device 102, the center network 104 and the gateway device 102, respectively, and packet transmission / reception processing units that receive communication packets received from the center network 104 and the wide area network 105.
  • the communication packet delivered to 302 or from the packet transmission / reception processing unit 302 is transmitted to the center network 104 or the wide area network 105.
  • the packet transmission / reception processing unit 302 reconstructs transfer data from the received packets received from the communication interfaces 301-1 and 301-2 or creates a transmission packet from the transfer data and passes it to the communication interfaces 301-1 and 301-2. .
  • the packet transmission / reception processing unit 302 acquires session identification information necessary for establishing a session and a session ID necessary for the transfer process from the received packet. Passed to part 303. Further, when creating a transmission packet, the packet transmission / reception processing unit 302 acquires a session ID necessary for creating the transmission packet from the transfer processing unit 303. A detailed sequence of these transfer processes will be described later.
  • the transfer processing unit 303 acquires session information from the session information management unit 304 based on the session ID passed from the packet transmission / reception processing unit 302, and performs transfer processing using the acquired session information. A detailed sequence of these transfer processes will be described later.
  • the session information management unit 304 performs new registration, deletion, reading, and updating of session information managed by the gateway device 102. Details of these processes will be described later.
  • the session information monitoring unit 305 constantly monitors the session information table 309, and the session information whose difference between the next access date and time and the current time for a specific session is equal to or less than a threshold set in advance by the administrator is stored in the session information monitoring unit 305. A process of copying to the information cache 308 is executed. At this time, if there is no free space in the session information cache 308, the session information monitoring unit 305 displays the session information with the longest scheduled access date and time among the session information stored in the session information cache 308 in the session information table. Copy to 309 and delete from the session information cache 308. Details of these processes will be described later.
  • the above functional blocks that realize the functions of the gateway apparatus 102 that is the communication control apparatus are one configuration example, and functional blocks having different functions can be implemented together as appropriate.
  • the session information monitoring unit 305 can be integrated with the session information management unit 304
  • the packet transmission / reception processing unit 302 can be integrated with the transfer processing unit 303.
  • the first storage area 306 is a storage area that can be read and written at high speed while the amount of information that can be stored therein is small, and is provided by, for example, a DRAM (Dynamic Random Access Memory).
  • the first storage area 306 is generally used as a cache for temporarily storing input / output data because the price per unit information amount (bit unit price) is generally higher than the second storage area 307 described later. .
  • the second storage area 307 is a storage area that can store a large amount of information and has a relatively slow read / write speed, and is provided by, for example, an HDD (Hard Disk Drive).
  • HDD Hard Disk Drive
  • the session information cache 308 is a table that temporarily caches session information, and is stored in the first storage area 306.
  • the session information management unit 304 refers to this table and acquires session information necessary for transfer processing. Details of the table structure will be described later.
  • the session information table 309 (session information storage unit) is a table for managing session information, and is stored in the second storage area 307. This table is the master information of the session information, and a part of the information (entries) stored in this table is stored in the session information cache 308.
  • the session information monitoring unit 305 monitors this table and copies the session information whose next access date / time approaches the current date / time to the session information cache 308. Details of the table structure will be described later.
  • the communication cycle management table 310 (communication cycle data storage unit) is a table for managing the cycle information of each communication session, and is stored in the second storage area 307.
  • the session information management unit 304 creates new session information, by referring to this table, the session information management unit 304 acquires the period information of the session and calculates the next access date and time. Details of the table structure will be described later.
  • FIG. 4 shows a hardware configuration example of the gateway apparatus 102 of this embodiment. In the following description, FIG. 3 is also referred to as appropriate.
  • the gateway device 102 includes a processor 401 including a CPU (Central Processing Unit) that performs various data processing, a memory 402, a peripheral I / F 403, an auxiliary storage device 404, communication I / Fs 405-1 and 405-2, and a bus. 406 is provided.
  • the processor 401, the memory 402, the peripheral I / F 403, the auxiliary storage device 404, and the communication I / Fs 405-1 and 405-2 are connected via the bus 406 and can communicate with each other.
  • the processor 401 executes a program for realizing the function of the gateway apparatus 102 described with reference to FIG.
  • the memory 402 is a storage device that is used as a working memory and a temporary buffer for input / output data or as the first storage area 307 when the processor 401 executes a program, and is configured by a DRAM, for example.
  • the peripheral I / F 403 is an interface for connecting to various peripheral devices such as an input / output device such as a mouse, a keyboard, and a monitor, and an external storage such as a USB (Universal Serial Bus) memory.
  • peripheral devices such as an input / output device such as a mouse, a keyboard, and a monitor, and an external storage such as a USB (Universal Serial Bus) memory.
  • an input / output device such as a mouse, a keyboard, and a monitor
  • an external storage such as a USB (Universal Serial Bus) memory.
  • the auxiliary storage device 404 includes a magnetic disk device, a flash ROM (Read Only Memory), and the like, and includes an operating system (OS), various drivers, various application programs, and various information used in the programs (for example, the system 1 of this journal system 1). Information set by the administrator or maintenance person) is stored.
  • the second storage area 307 of this embodiment is provided by the auxiliary storage device 404.
  • the communication I / Fs 405-1 and 405-2 are configured such that the gateway device 102 communicates with the communication terminals 103-1 to 103-n, the relay devices 201-1 to 201-n, and the center server 101 via the center network 104 and the wide area network 105. Provides an interface for communication.
  • the communication I / Fs 405-1 and 405-2 can be configured by, for example, a NIC (Network Interface Card). In FIG. 4, two sets of communication I / Fs 405-1 to 405-2 are illustrated, but one set or three or more sets may be provided.
  • the session information cache 308 temporarily stores information for the gateway device 102 to manage a communication session between the communication terminal 103 and the center server 101 so that the information can be used in real time.
  • the session information cache 308 includes a session ID 501, last access date / time 502 (last access time point information), next access date / time 503 (next access time point information), communication cycle 504, management information 1 (505), and management information 2 (506). Each item is stored.
  • the column of the session ID 501 is an area that stores a session ID that is an ID for uniquely identifying a plurality of sessions held in the gateway device 102.
  • the session ID 501 is assigned by the gateway device 102 when a new session is created by the gateway device 102.
  • the session ID 501 may continue to be assigned to the transfer data while the session continues, or the gateway device 102 assumes that the session corresponds one-to-one with the TCP / IP connection.
  • Socket descriptor information for performing transmission / reception may be allocated and used.
  • the TCP / IP connection and the session need to correspond one-to-one, but it is not necessary to assign a session ID to the transfer data.
  • the former is assumed, but the latter does not affect the essence of the present invention.
  • the column of the last access date and time 502 is an area that stores the date and time when the session information was last accessed in order to transfer the packet of the session. This area is an area that is updated only when accessed for transfer. For example, the area is not updated when accessed for moving session information from the session information table 309 to the session information cache.
  • the item of last access date and time 502 can be expanded so as to record a plurality of past access dates and times as an access history related to a specific session ID 501.
  • FIG. 5 shows an example in which the item of last access date and time 502 is expanded as past access time information so as to include the past 11 access dates and times.
  • the item of the extended last access date and time 502 is used when executing a communication cycle automatic update process to be described later.
  • the next access date and time 503 column is an area for storing the date and time when the gateway device 102 is scheduled to transfer the packet of the session next.
  • the session information management unit 304 calculates from the last access date and time 502 and the communication cycle 504, and updates this area.
  • the column of the communication cycle 504 is an area for storing the communication cycle of the session.
  • the session information management unit 304 acquires and registers from the communication cycle management table 310 when a new session is established.
  • the columns of management information 1 (505) and management information 2 (506) are areas for storing information to be held as session information, and the contents of items can be freely set according to the type of session created by the gateway apparatus 102. Can be designed to In the example of FIG. 5, it is assumed that an authentication session for controlling access from the communication terminal 103 to the center server 101 is created, and the management information 1 (505) stores a user ID for identifying the authentication source. In the management information 2 (506), the session expiration date is stored. Note that although two types of management information are shown in FIG. 5, they may be expanded as necessary.
  • a line 507 includes a session having a session ID 501 of “10000001” with the last access date / time 2013/1/1 and 8: 00: 00: 00 and the next access scheduled date / time 2013 / This indicates that 1/1, 8:30, communication cycle is 30 minutes, authentication source is user1, and session expiration date is 2013/1/2, 8: 00: 00: 00.
  • the session information recorded in the session information cache 308 is generated only after communication between the communication terminal 103 and the center server 101 is actually performed. Accordingly, no information is stored in the session information cache 308 before operating as the gateway device 102, and when a communication occurs between the communication terminal 103 and the center server 101 and a new session is started.
  • the session information management unit 304 adds an entry. At this time, if the number of entries in the table has reached the upper limit, the session information management unit 304 moves the most recent entry with the next access date and time 503 from the current time to the session information table 309 among the table entries.
  • the session information monitoring unit 305 monitors the session information table 309, and adds session information that is approaching the next access date and is not registered in the table entry to the table entry.
  • the session information monitoring unit 305 moves the entry with the next access date and time 503 of this table entry from the current time to the session information table 309, and the free entry area The session information is registered.
  • the session information management unit 304 deletes the entry of the target session from this table.
  • the gateway apparatus 102 can acquire necessary session information from the session information cache 308 in real time.
  • the session information table 309 stores session information used by the gateway device 102 to manage a session between each communication terminal 103 and the center server 101.
  • the session information table 309 stores items of session ID 601, last access date and time 602, next access date and time 603, communication cycle 604, management information 1 (605), and management information 2 (606). Since the information in each column is exactly the same as that in the session information cache 308, description thereof is omitted. Similar to the session information cache 308, this table 309 stores no information before the gateway apparatus 102 starts operation.
  • the session information management unit 304 registers the entry whose future access date and time is the most future from the current time in this table.
  • the session information management unit 304 deletes the entry of the target session from this table. Note that the item of the last access date and time 602 of the session information table 309 is similarly expanded when the item of the last access date and time 502 of the session information cache 308 is expanded.
  • FIG. 7 shows an example of the communication cycle management table 310 stored in the second storage area 307 in the gateway device 102 of this embodiment.
  • the communication cycle management table 310 stores items of session type identification information 701 and communication cycle 702, and this table is used by the session information management unit 304 to register the communication cycle 604 in the session information when a new session is established.
  • the column of the session type identification information 701 is an area for storing information for identifying the type of session managed by the gateway apparatus 102.
  • the identification information 701 may be assigned in units that can specify the communication cycle 702 during system design.
  • the identification information 701 can be assigned in units of TCP / IP connections, in units of communication applications, in units of communication terminals, or in units of groups of devices having the same communication cycle.
  • a user ID assigned to a communication application is stored assuming identification in communication application units.
  • a combination of an IP address and a TCP port, an apparatus ID, and a group ID may be used.
  • the column of the communication cycle 702 is an area for storing a cycle in which communication of the session specified by the session type identification information 701 is performed.
  • a row 703 indicates that the communication cycle of the session whose identification information 701 is specified by user1 is 30 minutes.
  • FIG. 8 schematically illustrates the flow of information among the communication terminal 103, the packet transmission / reception processing unit 302, the transfer processing unit 303, the session information management unit 304, the session information monitoring unit 305, and the center server 101 of the gateway device 102. It shows. Note that the symbol S in FIG. 8 means “step”.
  • the communication terminal 103 transmits a packet to the gateway device 102 (S801).
  • the packet transmission / reception processing unit 302 of the gateway apparatus 102 performs reception processing of the packet received via the communication interface 301-1, and reconstructs the packetized transfer data (S802).
  • the packet transmission / reception processing unit 302 checks the session ID or the session type identification information from the transfer data (S803).
  • the packet transmission / reception processor 302 since the packet transmission / reception processor 302 is a new session, it acquires the session type identification information.
  • the session type identification information is recorded in the transmission packet in the communication terminal 103 that is the transmission source. Then, the packet transmission / reception processing unit 302 passes the acquired session type identification information and transfer data to the transfer processing unit 303 (S804).
  • the transfer processing unit 303 passes the session type identification information received from the packet transmission / reception processing unit 302 to the session information management unit 304 (S805).
  • the session information management unit 304 refers to the communication cycle management table 310 and acquires the communication cycle 702 corresponding to the session type identification information 701 (S806). Next, the session information management unit 304 creates new session information and registers it in the session information cache 308 (S807). Then, the session information management unit 304 passes the session ID to the transfer processing unit 303 (S808).
  • the transfer processing unit 303 performs transfer processing such as address resolution of the transfer destination (S809), and passes the session ID and transfer data to the packet transmission / reception processing unit 302 (S810).
  • the packet transmission / reception processing unit 302 generates a transmission packet from the transfer data including the session ID (S811), and transmits the generated packet to the center server 101 as the transfer destination via the communication interface 301-2 (S812).
  • information related to a new session of a certain communication terminal 103 is stored in the session information cache 308 and the session information table 309, and the gateway device 102 responds in real time when communication from the next communication terminal 103 occurs. be able to.
  • the session information monitoring unit 305 checks the next access date and time 603 of the session information table 309 and identifies an entry whose difference from the current date and time is equal to or less than a preset threshold value. (S901).
  • the session information monitoring unit 305 checks whether or not the session information specified in S901 is registered in the session information cache 308, and registers it if not registered (S902).
  • the entry in the session information cache 308 has reached the upper limit value, the entry with the most recent access date and time 503 among the entries in the session information cache 308 is moved to the session information table 309 and is free in the session information cache 308. Create a region.
  • the above-described processing of S901 and S902 by the session information monitoring unit 305 is repeatedly executed at an appropriate timing in the background.
  • the communication terminal 103 transmits a packet to the gateway device 102 (S903).
  • the packet transmission / reception processing unit 302 of the gateway apparatus 102 performs reception processing of the packet received via the communication interface 301-1, and reconstructs the packetized transfer data (S904).
  • the packet transmission / reception processing unit 302 checks the session ID or the session type identification information from the transfer data (S905).
  • a session ID is acquired.
  • the acquired session ID and transfer data are transferred to the transfer processing unit 303 (S906).
  • the transfer processing unit 303 passes the received session ID to the session information management unit 304 (S907).
  • the session information management unit 304 refers to the session information cache 308 and searches for an entry that matches the session ID received by the session ID 501 (S908).
  • the session information monitoring unit 305 acquires the session information from the session information cache 308 because the session information is registered in the session information cache 308 by the session information monitoring unit 305. be able to.
  • the session information management unit 304 updates the last access date and time 502 and the next access date and time 503 in the session information cache 308 (S909), and passes the session information to the transfer processing unit 303 (S910).
  • the transfer processing unit 303 performs transfer processing based on the session information (S911). In the case of managing the authentication session of this example, for example, an expiration date check included in the session information and an authentication source ID check are performed. Then, the transfer processing unit 303 passes the session ID and transfer data to the packet transmission / reception processing unit 302 (S912). The subsequent processing is the same as S811 and S812 in the processing example of FIG.
  • the gateway device 102 can quickly perform the packet transfer processing from the communication terminal 103 using the session information.
  • the processing from S1001 to S1006 is the same as the processing from S903 to S908 in FIG.
  • the session information management unit if the session information of the session is not registered in the session information cache 308 304 refers to the session information table 309, acquires the session information of the session, and registers it in the session information cache 308 (S1007).
  • the entry in the session information cache 308 has reached the upper limit value, the entry with the most recent access date / time among the entries in the session information cache 308 is moved to the session information table 309, and free space is stored in the session information cache 308.
  • the session information management unit 304 updates the last access date and time 502 and the next access date and time 503 (S1008), and passes the session information to the transfer processing unit 303 (S1009).
  • the subsequent processing is the same as S911 to S914 in FIG.
  • the gateway device 102 can execute a normal data transfer process, and at the next scheduled time When a packet is received in the communication cycle, a quick process can be performed using the session information stored in the session information cache 308.
  • the communication terminal 103 transmits a session end packet to the gateway device 102 (S1101).
  • the packet transmission / reception processing unit 302 of the gateway device 102 performs reception processing of the session end packet received via the communication interface 301-1, and reconstructs the packetized session end request (S1102). Next, the packet transmission / reception processing unit 302 acquires the session ID to be terminated from the termination request (S905). Then, the acquired session ID and transfer data are transferred to the transfer processing unit 303 (S906).
  • the transfer processing unit 303 passes the session ID to the session information management unit 304 (S907).
  • the session information management unit 304 refers to the session information cache 308 and searches for an entry that matches the session ID received by the session ID 501 (S1106). When it is determined that there is a matching entry, the session information management unit 304 deletes the entry of the session information cache 308 and the entry of the session of the session information table 309 (S1107). When it is determined that there is no matching entry in the session information cache 308, the session information management unit 304 deletes only the entry for the session in the session information table 309 (S1107). Then, the session information management unit 304 returns the session information deletion processing result to the transfer processing unit 303 (S1108).
  • the transfer processing unit 303 performs transfer processing (S1109), and passes the session ID and the session end request to the packet transmission / reception processing unit 302 (S1110).
  • the packet transmission / reception processing unit 302 generates a transmission packet from the session ID 501 and the session end request (S1111), and transmits the session end packet to the center server 101 (S1112). According to the above processing sequence, when a session end packet is received from the communication terminal 103, the session information related to the session stored in the session information cache 308 and the session information table 309 of the gateway device 102 is deleted.
  • the memory capacity of the gateway device 102 and the storage capacity of the auxiliary storage device 404 can be used efficiently.
  • the communication cycle between the communication terminal 103 and the center server 101 is set in advance and is fixed once set, but the communication cycle is set in advance.
  • the communication cycle is set in advance.
  • a functional configuration of the gateway apparatus 102 in the second embodiment will be described with reference to FIG. Since the communication terminal 103-1, the wide area network 105, the center network 104, and the center server 101 are the same as those in the first embodiment, description thereof is omitted. Also, each functional block in the gateway apparatus 102 denoted by reference numerals 301-1 to 310 is the same as the element identified by the same reference numeral in the first embodiment, and thus the description thereof is omitted.
  • a period update unit 311 is provided to cope with a change in the communication period.
  • the period update unit 311 has a function of recalculating the communication period of the session based on the actual packet arrival date and time passed from the session information management unit 304.
  • a method for calculating the communication cycle for example, a moving average of access logs for the past 10 times is conceivable, but is not limited thereto.
  • the access log necessary for the calculation is retained in the gateway apparatus 102 by expanding the items of the last access date and time 502 and 602 in the session information cache 308 and the session information table 309. can do.
  • the session information monitoring unit 305 checks the next access date and time 603 in the session information table 309 and determines an entry whose difference from the current date and time is equal to or less than a preset threshold value. Specify (S1301). Next, the session information monitoring unit 305 checks whether the specified session information is registered in the session information cache 308, and if not registered, registers it (S1302). At this time, if the entry in the session information cache 308 has reached the upper limit value, the entry with the most recent access date / time among the entries in the session information cache 308 is moved to the session information table 309, and free space is stored in the session information cache 308. Create The processing of S1301 and S1302 by the session information monitoring unit 305 is repeatedly executed at an appropriate timing in the background.
  • the communication terminal 103 transmits a packet to the gateway device 102 (S1303).
  • the packet transmission / reception processing unit 302 of the gateway apparatus 102 performs reception processing of the packet received via the communication interface 301-1, and reconstructs the packetized transfer data (S1304).
  • the packet transmission / reception processing unit 302 acquires a session ID from the transfer data (S1305).
  • the acquired session ID and transfer data are transferred to the transfer processing unit 303 (S1306).
  • the transfer processing unit 303 passes the session ID to the session information management unit 304 (S1307).
  • the session information management unit 304 refers to the session information cache 308 and searches for an entry in which the session ID 501 matches the received session ID (S1308). Then, the session information management unit 304 passes the acquired session information to the period update unit 311 (S1309). As described above, this session information stores a certain number of past access dates and times necessary for periodic recalculation.
  • the period update unit 311 recalculates the communication period from the past access date and current communication period included in the session information (S1310). Then, the communication cycle after the recalculation is returned to the session information management unit 304 (S1311).
  • the session information management unit 304 updates the past access date and time 502, the communication cycle 504, and the next access date and time 503 in the session information cache 308 (S1312), and passes the session information to the transfer processing unit 303 (S1313).
  • the subsequent processing is the same as S911 to S914 in FIG. 9 relating to the first embodiment.
  • the gateway device 102 is implemented. It is possible to dynamically change the communication cycle while operating.
  • the gateway device 102 when a large number of communication terminals perform periodic communication with a communication network such as a data center, respectively, while suppressing the amount of resources used such as memory capacity, It becomes possible to ensure a real-time response to access from each communication terminal.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

[Problem] To make it possible to ensure real-time responses to accesses from a large number of communication terminals, each of which communicates periodically with a communication network such as a data center, while keeping down the amount of memory capacity and/or other resources used. [Solution] A gateway device (102) that is connected to a plurality of communication terminals and a center server so as to be able to communicate therewith and that mediates data communication holds communication-period data from communication-terminal senders in a communication-period management table (310) and stores session information needed for sessions with said senders in a session-information table (309) in correspondence with the communication-period data. A session-information monitoring unit (305) determines, for each session, whether the date and time of the next access associated therewith is closer than a prescribed time threshold, and session information for which it is determined that the date and time of the next access is closer than said time threshold is copied, by a session-information management unit (304), from the session-information table (309) to a faster session-information cache (308).

Description

通信制御装置、通信制御装置の制御方法、及び情報処理システムCOMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL DEVICE CONTROL METHOD, AND INFORMATION PROCESSING SYSTEM
 本発明は通信制御装置、通信制御装置の制御方法、及び情報処理システムに関する。 The present invention relates to a communication control device, a control method for the communication control device, and an information processing system.
 近年の情報通信技術の進展により、フィールドに分散した多数の通信端末から構成される大規模かつ広域な制御システムが多くなってきている。例えば電力自動検針システム(AMI:Advanced Metering Infrastructure)では、住宅・ビルなど広範囲に設置された数千万台規模のスマートメータが、データセンタに設置されたセンタサーバと接続され、定期的にデータを送受信することが想定される。 Recent advances in information and communication technology have led to an increase in large-scale and wide-area control systems composed of a large number of communication terminals distributed in the field. For example, in an automatic power meter reading system (AMI: Advanced Metering Infrastructure), tens of millions of smart meters installed in a wide area such as houses and buildings are connected to a center server installed in a data center, and data is regularly transmitted. It is assumed to send and receive.
 一方、クローズドな専用ネットワークだけで構築されていた従来制御システムと異なり、大規模かつ広域な制御システムでは、インフラ設置コストの観点から、フィールドとセンタを接続するネットワークインフラとしてインターネットなどのオープンネットワークの活用が検討されている。この場合、主にセキュリティの観点から、フィールドの通信端末とデータセンタのセンタサーバとの間に、ゲートウェイ装置を設置し、フィールドから直接センタサーバにアクセスできないシステム構成とすることが多い。このシステム構成では、ゲートウェイ装置がフィールドの各通信端末と認証セッションを確立するが、通信端末の数が膨大であるため、保持すべきセッション情報の数も膨大となる。また1件当たりのセッション情報のデータ量も、システムが高度化するにしたがって増加しつつある。そのため、セッション情報を格納するメモリのコストを抑えつつ、通信時に大量のセッション情報から特定のセッションを検索するための処理時間を短くすることが求められる。 On the other hand, unlike conventional control systems that were built with only closed dedicated networks, large-scale and wide-area control systems utilize the open network such as the Internet as the network infrastructure that connects the field and the center from the viewpoint of infrastructure installation costs. Is being considered. In this case, mainly from the viewpoint of security, a gateway apparatus is often installed between the field communication terminal and the center server of the data center, and the system configuration is often such that the center server cannot be accessed directly from the field. In this system configuration, the gateway device establishes an authentication session with each communication terminal in the field. However, since the number of communication terminals is enormous, the number of session information to be retained is enormous. The amount of session information per case is also increasing as the system becomes more sophisticated. Therefore, it is required to shorten the processing time for searching for a specific session from a large amount of session information during communication while suppressing the cost of memory for storing session information.
 このような要請に対し、例えば特許文献1では、クライアント計算機からの要求データに対するアクセス時間をさらに短縮し、ネットワークトラフィックの低減を図るキャッシュ装置が提案されている。このキャッシュ装置は、データを要求するクライアント計算機と蓄積データを配信するサーバ計算機の間に介在するゲートウェイ計算機内に設けられ、クライアント計算機からのデータ要求に合わせて、前回データ要求時刻と今回データ要求時刻を比較し、比較データに対する周期を登録し、データ要求予測周期を決定するための周期管理テーブルを有している。周期管理テーブルにより決定された周期に合わせて、事前にサーバ計算機から、蓄積データの先取りを行ない、取得した蓄積データをメモリキャッシュへ書き込み要求する先取り処理が実行される。 In response to such a request, for example, Patent Document 1 proposes a cache device that further shortens the access time for request data from a client computer and reduces network traffic. The cache device is provided in a gateway computer that is interposed between a client computer that requests data and a server computer that distributes stored data, and according to a data request from the client computer, a previous data request time and a current data request time. And a period management table for registering a period for comparison data and determining a data request prediction period. In accordance with the cycle determined by the cycle management table, pre-fetch processing is performed in which the stored data is pre-fetched from the server computer in advance, and the acquired accumulated data is requested to be written to the memory cache.
特開2001-318902号公報JP 2001-318902 A
 データ処理システムには、システムでのデータ処理に人間が介在し、各クライアントからサーバへのデータ要求が不定期に発生することが多い情報系システムと、前記したAMIのように、多数の、人間が介在しない計測制御機器等を備える通信端末から定期的にサーバへのアクセスが行われる制御系システムとが含まれる。特許文献1のキャッシュ装置は、クライアント計算機からのデータ要求が不定期に行われる、言い換えればデータ要求に周期性が乏しい情報系システムに適用することを主眼として構成されている。そのため、特許文献1の装置を制御系システムに適用すると、多数の通信端末についてのデータ要求発生周期予測に大量のリソースが消費されがちであること、周期予測の精度によっては、データ要求に対するリアルタイムな応答が担保しがたいこと、といった問題が考えられる。 The data processing system includes an information system in which humans are involved in data processing in the system, and data requests from each client to the server often occur irregularly, and a large number of humans such as the AMI described above. And a control system in which a server is periodically accessed from a communication terminal equipped with a measurement control device or the like that does not intervene. The cache device of Patent Document 1 is mainly configured to be applied to an information system in which a data request from a client computer is made irregularly, in other words, the data request is poor in periodicity. Therefore, when the apparatus of Patent Document 1 is applied to a control system, a large amount of resources tend to be consumed for data request generation cycle prediction for a large number of communication terminals. The problem is that the response is difficult to secure.
 前記課題を解決するための、本発明の一態様は、複数の第1の情報処理装置と少なくとも1の第2の情報処理装置とに通信可能に接続されて、前記第1の情報処理装置と前記第2の情報処理装置との間でのデータ通信を仲介する通信制御装置であって、各前記第1の情報処理装置にある送信元から前記第2の情報処理装置にデータ通信が実行される時間間隔情報である通信周期データを、前記第1の情報処理装置ごとに格納している通信周期データ記憶部と、前記第1の情報処理装置からのデータ通信が実行された最後の時点を示す情報である最終アクセス時点情報と、ある第1の情報処理装置に関する当該最終アクセス時点情報と、当該第1の情報処理装置に関して前記通信周期データ記憶部から取得した前記通信周期データとから算出した、当該第1の情報処理装置が次にデータ通信を実行する時点を示す情報である次回アクセス時点情報とを、特定の送信元と前記第2の情報処理装置とのデータ通信に関する固有情報と対応付けたセッションとして格納しているセッション情報記憶部と、前記セッション情報記憶部を構成する記憶デバイスよりも高速な記憶デバイスで構成されているセッション情報キャッシュと、前記セッション情報記憶部に格納されている前記各第1の情報処理装置に関する前記次回アクセス時点情報に基づいて、当該第1の情報処理装置からのデータ通信実行時点が現時点から所定の時間しきい値以下となったか継続的に判定し、所定の時間しきい値以下となったと判定した場合、当該第1の情報処理装置に関するセッション情報を前記セッション情報記憶部から前記セッション情報キャッシュにコピーするセッション情報管理部と、前記第1の情報処理装置からデータを受信したときに、前記セッション情報記憶部を参照して送信元に対応する前記セッション情報を取得し、当該セッション情報に基づいて受信したデータを送信先へ転送する転送処理部とを備えている通信制御装置である。また、本発明の他の態様は、前記通信制御装置の制御方法である。また、本発明のさらに他の態様は、複数の前記第1の情報処理装置と、前記第2の情報処理装置と、前記通信制御装置とを備えている情報処理システムである。 According to one embodiment of the present invention for solving the above-described problem, the first information processing device is connected to a plurality of first information processing devices and at least one second information processing device so as to be able to communicate with the first information processing device. A communication control device that mediates data communication with the second information processing device, wherein data communication is executed from a transmission source in each of the first information processing devices to the second information processing device. A communication cycle data storage unit storing communication cycle data as time interval information for each first information processing device, and a last time point when data communication from the first information processing device was executed. Calculated from the last access time point information, which is information to be shown, the last access time point information relating to a certain first information processing device, and the communication cycle data obtained from the communication cycle data storage unit regarding the first information processing device. Further, the next access time point information, which is information indicating the next time point at which the first information processing device executes data communication, is set as specific information relating to data communication between a specific transmission source and the second information processing device. A session information storage unit stored as an associated session, a session information cache configured with a storage device faster than a storage device constituting the session information storage unit, and stored in the session information storage unit Based on the next access time point information regarding each of the first information processing devices, it is continuously determined whether the data communication execution time point from the first information processing device has become a predetermined time threshold value or less from the present time point. When it is determined that the predetermined time threshold is not exceeded, session information related to the first information processing apparatus is stored as the session information. When receiving data from the session information management unit to be copied from the storage unit to the session information cache and the first information processing device, the session information corresponding to the transmission source is obtained by referring to the session information storage unit And a transfer processing unit that transfers data received based on the session information to a transmission destination. Another aspect of the present invention is a control method for the communication control device. Still another aspect of the present invention is an information processing system including a plurality of the first information processing apparatuses, the second information processing apparatus, and the communication control apparatus.
 本発明によれば、多数の通信端末がデータセンタ等の通信ネットワークとそれぞれ周期通信を行う場合において、メモリ容量等の使用するリソース量を抑えつつ、各通信端末からのアクセスに対するリアルタイムの応答を確保することを可能とする通信制御装置とその制御方法、及び情報処理システムが提供される。 According to the present invention, when a large number of communication terminals perform periodic communication with a communication network such as a data center, a real-time response to access from each communication terminal is secured while suppressing the amount of resources used such as memory capacity. Provided are a communication control device, a control method therefor, and an information processing system that enable this to be performed.
図1は本発明の一実施形態による通信制御装置であるゲートウェイ装置102を備える情報処理システム1の全体システム構成例を示す図である。FIG. 1 is a diagram showing an example of the overall system configuration of an information processing system 1 including a gateway apparatus 102 that is a communication control apparatus according to an embodiment of the present invention. 図2は本発明の一実施形態による通信制御装置であるゲートウェイ装置102と中継装置とを備える情報処理システム1の全体システム構成例を示す図である。FIG. 2 is a diagram illustrating an example of the overall system configuration of the information processing system 1 including the gateway apparatus 102 which is a communication control apparatus according to an embodiment of the present invention and a relay apparatus. 図3はゲートウェイ装置102の機能構成例を示す図である。FIG. 3 is a diagram illustrating a functional configuration example of the gateway device 102. 図4はゲートウェイ装置102のハードウェア構成例を示す図である。FIG. 4 is a diagram illustrating a hardware configuration example of the gateway device 102. 図5はセッション情報キャッシュ308のテーブル構成例を示す図である。FIG. 5 is a diagram showing a table configuration example of the session information cache 308. 図6はセッション情報テーブル309のテーブル構成例を示す図である。FIG. 6 is a diagram illustrating a table configuration example of the session information table 309. 図7は通信周期管理テーブル310のテーブル構成例を示す図である。FIG. 7 is a diagram showing a table configuration example of the communication cycle management table 310. 図8は情報処理システム1における新規セッション確立時の処理シーケンス例を示す図である。FIG. 8 is a diagram illustrating an example of a processing sequence when a new session is established in the information processing system 1. 図9は情報処理システム1において、該当するセッション情報がキャッシュ登録されている場合に実行される既存セッション通信時の処理シーケンス例を示す図である。FIG. 9 is a diagram showing an example of a processing sequence at the time of existing session communication that is executed when the corresponding session information is registered in the cache in the information processing system 1. 図10は情報処理システム1において、該当するセッション情報がキャッシュ登録されていない場合に実行される既存セッション通信時の処理シーケンス例を示す図である。FIG. 10 is a diagram showing an example of a processing sequence at the time of existing session communication executed when the corresponding session information is not registered in the cache in the information processing system 1. 図11は情報処理システム1における既存セッション終了時の処理シーケンス例を示す図である。FIG. 11 is a diagram showing an example of a processing sequence at the end of an existing session in the information processing system 1. 図12は本発明の他の実施形態によるゲートウェイ装置102の機能構成例である。FIG. 12 is a functional configuration example of the gateway device 102 according to another embodiment of the present invention. 図13は本発明の他の実施形態によるゲートウェイ装置102を備える情報処理システム1における既存セッション通信時の処理シーケンス例を示す図である。FIG. 13 is a diagram showing an example of a processing sequence at the time of existing session communication in the information processing system 1 including the gateway device 102 according to another embodiment of the present invention.
 次に、本発明を実施するための第1の実施形態(以降、「第1実施形態」と称する。)について、適宜図面を参照しながら詳細に説明する。 Next, a first embodiment for carrying out the present invention (hereinafter referred to as “first embodiment”) will be described in detail with reference to the drawings as appropriate.
(第1実施形態における全体システム構成)
 まず、第1実施形態によるゲートウェイ装置を適用した情報処理システム1の構成例について、図1及び図2を用いて説明する。
(Overall system configuration in the first embodiment)
First, a configuration example of the information processing system 1 to which the gateway device according to the first embodiment is applied will be described with reference to FIGS. 1 and 2.
 図1は、フィールドにある複数の通信端末103-1~103-n(第1の情報処理装置)のそれぞれが、データセンタにある情報処理装置であるセンタサーバ101(第2の情報処理装置)と相互にデータを送受信するように構成されている情報処理システム1の構成例である。センタサーバ101は、通信を行うアプリケーションが動作するサーバコンピュータであり、通信機能を有する一般的なコンピュータである。通信端末103-1~103-nは、通信を行うアプリケーションが動作するコンピュータであり、例えば通信機能を有するサーバコンピュータ、パーソナルコンピュータ(PC)、制御コントローラなどである。図1に示すように、各通信端末103-1~103-nは、広域ネットワーク105を介してゲートウェイ装置102と接続されている。ゲートウェイ装置102(通信制御装置)は、センタネットワーク104を介してセンタサーバ101と接続されている。なお、以下で通信端末103-1~103-nについて単体の構成、機能等に言及する場合は、単に「通信端末103」と表記する。また、センタネットワーク104には、複数のセンタサーバ101が接続される構成も可能である。 FIG. 1 shows a center server 101 (second information processing apparatus) in which each of a plurality of communication terminals 103-1 to 103-n (first information processing apparatus) in the field is an information processing apparatus in a data center. It is a structural example of the information processing system 1 comprised so that data may be transmitted / received mutually. The center server 101 is a server computer on which an application for communication operates, and is a general computer having a communication function. The communication terminals 103-1 to 103-n are computers on which applications that perform communication operate, such as a server computer having a communication function, a personal computer (PC), and a control controller. As shown in FIG. 1, each of the communication terminals 103-1 to 103-n is connected to the gateway apparatus 102 via the wide area network 105. The gateway device 102 (communication control device) is connected to the center server 101 via the center network 104. In the following description, when the communication terminals 103-1 to 103-n are referred to as a single configuration, function, etc., they are simply expressed as “communication terminal 103”. In addition, a configuration in which a plurality of center servers 101 are connected to the center network 104 is also possible.
 ゲートウェイ装置102は、各通信端末103-1~103-nとの通信状態(セッション)を管理する機能を有している。ゲートウェイ装置102の機能詳細については後段にて説明する。なお、本明細書で、「セッション」の用語は、ゲートウェイ装置102と、各通信端末103-1~103-nで動作するアプリケーションソフトウェア等の送信元との間で送受信される一連のデータパケット通信を意味している。 The gateway device 102 has a function of managing a communication state (session) with each of the communication terminals 103-1 to 103-n. Details of the function of the gateway device 102 will be described later. In this specification, the term “session” refers to a series of data packet communications transmitted / received between the gateway apparatus 102 and a transmission source such as application software operating on each of the communication terminals 103-1 to 103-n. Means.
 センタネットワーク104は、データセンタ内でデータをやり取りするための通信ネットワークであり、通常は高速かつ高セキュリティなネットワークとして構成される。広域ネットワーク105は、データセンタとフィールド間、具体的にはデータセンタのゲートウェイ装置102とフィールドの各通信端末103-1~103-n間でデータをやり取りするための通信ネットワークであり、通常は低速かつ低セキュリティのネットワークで構成される。センタネットワーク104及び広域ネットワーク105は、VLAN(Virtual Local Area Network)、ネットワークセグメントなどで論理的に区切られていてもよいし、光、電波などの通信媒体レベルで物理的に区切られていてもよい。本明細書では、各通信ネットワーク及びデータセンタ内の管理用ネットワークはIP(Internet Protocol)網として説明するが、これに限られることはない。通信ネットワークにおいて通信に用いる信号は、例えば、電気、光、電波、音等のいずれかまたはそれらの組み合わせであっても構わない。 The center network 104 is a communication network for exchanging data in the data center, and is usually configured as a high-speed and high-security network. The wide area network 105 is a communication network for exchanging data between the data center and the field, more specifically, between the gateway device 102 of the data center and each of the communication terminals 103-1 to 103-n in the field. It consists of a low security network. The center network 104 and the wide area network 105 may be logically separated by a VLAN (Virtual Local Area Network), a network segment, or the like, or may be physically separated by a communication medium level such as light or radio wave. . In this specification, each communication network and the management network in the data center will be described as an IP (Internet Protocol) network, but the present invention is not limited to this. The signal used for communication in the communication network may be, for example, any one of electricity, light, radio waves, sound, or a combination thereof.
 図2に、図1の情報処理システム1の変形例を例示している。図2は、図1の構成におけるフィールドの通信端末103とデータセンタのゲートウェイ装置102との間に、中継装置201-1~201-nが設けられている場合のシステム構成例である。中継装置201-1~201-nは、フィールドネットワーク202-1、202-2に接続されている各通信端末103とゲートウェイ装置102との間の通信を仲介して転送する機能を有しており、スイッチ、ルータのようにパケットを転送する場合もあれば、当該中継装置201-1~201-nにて一旦各通信端末103との通信を終端させる場合もある。後者の場合、ゲートウェイ装置102から見ると、中継装置201-1~201-nは図1の通信端末103-1~103-nの1つとなる。フィールドネットワーク202-1、202-2は、例えば地域単位、組織単位等で構成されているイントラネットである。 FIG. 2 illustrates a modification of the information processing system 1 of FIG. FIG. 2 shows a system configuration example in which relay devices 201-1 to 201-n are provided between the field communication terminal 103 and the data center gateway device 102 in the configuration of FIG. The relay devices 201-1 to 201-n have a function of transferring communication between the communication terminals 103 connected to the field networks 202-1 and 202-2 and the gateway device 102. In some cases, a packet is transferred like a switch or a router, or in the relay devices 201-1 to 201-n, communication with each communication terminal 103 is once terminated. In the latter case, when viewed from the gateway device 102, the relay devices 201-1 to 201-n are one of the communication terminals 103-1 to 103-n in FIG. The field networks 202-1 and 202-2 are intranets configured by, for example, regional units or organizational units.
 以下、図1のシステム構成を前提に説明を行うが、これは、図2もしくは図1と図2を組み合わせたシステム構成にもあてはまる。 Hereinafter, the description will be given on the premise of the system configuration of FIG. 1, but this also applies to the system configuration of FIG. 2 or a combination of FIG. 1 and FIG.
(第1実施形態におけるゲートウェイ装置の機能構成)
 次に、本実施形態の通信制御装置であるゲートウェイ装置102の機能構成について図3を用いて説明する。図3に例示するゲートウェイ装置102の機能は、図4に関して後述するハードウェアに基づいて実現されている。ゲートウェイ装置102は、ネットワークインタフェースカード(NIC)等として構成されている通信インタフェース301-1、301-2、パケット送受信処理部302、転送処理部303、セッション情報管理部304、セッション情報監視部305、第1記憶領域306、第2記憶領域307、セッション情報キャッシュ308、セッション情報テーブル309、及び通信周期管理テーブル310を備えている。
(Functional configuration of gateway device in the first embodiment)
Next, the functional configuration of the gateway apparatus 102 that is the communication control apparatus of this embodiment will be described with reference to FIG. The functions of the gateway device 102 illustrated in FIG. 3 are realized based on hardware described later with reference to FIG. The gateway device 102 includes communication interfaces 301-1 and 301-2 configured as a network interface card (NIC), a packet transmission / reception processing unit 302, a transfer processing unit 303, a session information management unit 304, a session information monitoring unit 305, A first storage area 306, a second storage area 307, a session information cache 308, a session information table 309, and a communication cycle management table 310 are provided.
 通信インタフェース301-1、301-2は、それぞれ広域ネットワーク105とゲートウェイ装置102、センタネットワーク104とゲートウェイ装置102とのインタフェースであり、センタネットワーク104、広域ネットワーク105から受信した通信パケットをパケット送受信処理部302に渡し、あるいはパケット送受信処理部302から渡された通信パケットを、センタネットワーク104や広域ネットワーク105に送信する。 Communication interfaces 301-1 and 301-2 are interfaces between the wide area network 105 and the gateway device 102, the center network 104 and the gateway device 102, respectively, and packet transmission / reception processing units that receive communication packets received from the center network 104 and the wide area network 105. The communication packet delivered to 302 or from the packet transmission / reception processing unit 302 is transmitted to the center network 104 or the wide area network 105.
 パケット送受信処理部302は、通信インタフェース301-1、301-2から受信した受信パケットから転送データを再構築し、あるいは転送データから送信パケットを作成して通信インタフェース301-1、301-2に渡す。また、パケット送受信処理部302は、通信端末103からの受信パケットから転送データを再構築する際、セッション確立に必要なセッション識別情報、転送処理に必要なセッションIDを受信パケットから取得し、転送処理部303に渡す。また、パケット送受信処理部302は、送信パケットを作成する際、転送処理部303から送信パケット作成に必要なセッションIDを取得する。これら転送処理の詳細シーケンスについては後段にて説明する。 The packet transmission / reception processing unit 302 reconstructs transfer data from the received packets received from the communication interfaces 301-1 and 301-2 or creates a transmission packet from the transfer data and passes it to the communication interfaces 301-1 and 301-2. . In addition, when reconstructing transfer data from a received packet from the communication terminal 103, the packet transmission / reception processing unit 302 acquires session identification information necessary for establishing a session and a session ID necessary for the transfer process from the received packet. Passed to part 303. Further, when creating a transmission packet, the packet transmission / reception processing unit 302 acquires a session ID necessary for creating the transmission packet from the transfer processing unit 303. A detailed sequence of these transfer processes will be described later.
 転送処理部303は、パケット送受信処理部302から渡されるセッションIDを元に、セッション情報管理部304からセッション情報を取得し、取得したセッション情報を用いて転送処理を行う。これら転送処理の詳細シーケンスについては後段にて説明する。 The transfer processing unit 303 acquires session information from the session information management unit 304 based on the session ID passed from the packet transmission / reception processing unit 302, and performs transfer processing using the acquired session information. A detailed sequence of these transfer processes will be described later.
 セッション情報管理部304は、当該ゲートウェイ装置102が管理するセッション情報の新規登録、削除、読み出し、及び更新を行う。これら処理の詳細については後段にて説明する。 The session information management unit 304 performs new registration, deletion, reading, and updating of session information managed by the gateway device 102. Details of these processes will be described later.
 セッション情報監視部305は、セッション情報テーブル309を常に監視しており、特定のセッションに関する次回アクセス日時と現在時刻との差が、事前に管理者によって設定された閾値以下になったセッション情報をセッション情報キャッシュ308にコピーする処理を実行する。この時、セッション情報キャッシュ308の領域に空き領域がない場合、セッション情報監視部305は、セッション情報キャッシュ308に格納されているセッション情報のうち、次回アクセス予定日時が最も遠いセッション情報をセッション情報テーブル309にコピーして、セッション情報キャッシュ308から削除する。これら処理の詳細については後段にて説明する。なお、通信制御装置であるゲートウェイ装置102の機能を実現する以上の機能ブロックは一つの構成例であり、異なる機能を有する機能ブロックを適宜にまとめて実装することもできる。例えば、セッション情報管理部304にセッション情報監視部305を、転送処理部303にパケット送受信処理部302を統合することができる。 The session information monitoring unit 305 constantly monitors the session information table 309, and the session information whose difference between the next access date and time and the current time for a specific session is equal to or less than a threshold set in advance by the administrator is stored in the session information monitoring unit 305. A process of copying to the information cache 308 is executed. At this time, if there is no free space in the session information cache 308, the session information monitoring unit 305 displays the session information with the longest scheduled access date and time among the session information stored in the session information cache 308 in the session information table. Copy to 309 and delete from the session information cache 308. Details of these processes will be described later. Note that the above functional blocks that realize the functions of the gateway apparatus 102 that is the communication control apparatus are one configuration example, and functional blocks having different functions can be implemented together as appropriate. For example, the session information monitoring unit 305 can be integrated with the session information management unit 304, and the packet transmission / reception processing unit 302 can be integrated with the transfer processing unit 303.
 第1記憶領域306は、その内部に格納可能な情報量は少ない一方で、高速に読み書き可能な記憶領域であり、例えばDRAM(Dynamic Random Access Memory)などによって提供される。第1記憶領域306は、一般的に単位情報量あたりの価格(ビット単価)が後述の第2記憶領域307に比べて高いため、入出力データを一時的に格納するためのキャッシュ用途として用いられる。 The first storage area 306 is a storage area that can be read and written at high speed while the amount of information that can be stored therein is small, and is provided by, for example, a DRAM (Dynamic Random Access Memory). The first storage area 306 is generally used as a cache for temporarily storing input / output data because the price per unit information amount (bit unit price) is generally higher than the second storage area 307 described later. .
 第2記憶領域307は、大量の情報を格納できる一方で、読み書き速度が比較的遅い記憶領域であり、例えばHDD(Hard Disk Drive)などによって提供される。 The second storage area 307 is a storage area that can store a large amount of information and has a relatively slow read / write speed, and is provided by, for example, an HDD (Hard Disk Drive).
 セッション情報キャッシュ308は、セッション情報を一時的にキャッシュしておくテーブルであり、第1記憶領域306内に格納されている。セッション情報管理部304は、本テーブルを参照して転送処理に必要なセッション情報を取得する。テーブル構成の詳細は後段にて説明する。 The session information cache 308 is a table that temporarily caches session information, and is stored in the first storage area 306. The session information management unit 304 refers to this table and acquires session information necessary for transfer processing. Details of the table structure will be described later.
 セッション情報テーブル309(セッション情報記憶部)は、セッション情報を管理するためのテーブルであり、第2記憶領域307内に格納されている。本テーブルがセッション情報のマスタ情報であり、本テーブルに格納されている情報(エントリ)のうちの一部のコピーがセッション情報キャッシュ308に格納されている。セッション情報監視部305は、本テーブルを監視し、次回アクセス日時が現在日時に近づいたセッション情報をセッション情報キャッシュ308にコピーする。テーブル構成の詳細は後段にて説明する。 The session information table 309 (session information storage unit) is a table for managing session information, and is stored in the second storage area 307. This table is the master information of the session information, and a part of the information (entries) stored in this table is stored in the session information cache 308. The session information monitoring unit 305 monitors this table and copies the session information whose next access date / time approaches the current date / time to the session information cache 308. Details of the table structure will be described later.
 通信周期管理テーブル310(通信周期データ記憶部)は、各通信セッションの周期情報を管理するテーブルであり、第2記憶領域307内に格納されている。セッション情報管理部304が新規セッション情報を作成する際に、本テーブルを参照することにより、そのセッションの周期情報を取得し、次回アクセス日時を算出する。テーブル構成の詳細は後段にて説明する。 The communication cycle management table 310 (communication cycle data storage unit) is a table for managing the cycle information of each communication session, and is stored in the second storage area 307. When the session information management unit 304 creates new session information, by referring to this table, the session information management unit 304 acquires the period information of the session and calculates the next access date and time. Details of the table structure will be described later.
(第1実施形態におけるゲートウェイ装置102のハードウェア構成)
 次に、ゲートウェイ装置102のハードウェア構成について、図4を用いて説明する。図4は本実施例のゲートウェイ装置102のハードウェア構成例を示している。以下の説明では、適宜、図3も参照する。
(Hardware configuration of gateway apparatus 102 in the first embodiment)
Next, the hardware configuration of the gateway apparatus 102 will be described with reference to FIG. FIG. 4 shows a hardware configuration example of the gateway apparatus 102 of this embodiment. In the following description, FIG. 3 is also referred to as appropriate.
 ゲートウェイ装置102は、各種データ処理を行うCPU(Central Processing Unit)等で構成されるプロセッサ401、メモリ402、周辺I/F403、補助記憶装置404、通信I/F405-1、405-2、及びバス406を備えている。そして、プロセッサ401、メモリ402、周辺I/F403、補助記憶装置404、及び通信I/F405-1、405-2は、バス406を介して接続され、相互に通信可能となっている。 The gateway device 102 includes a processor 401 including a CPU (Central Processing Unit) that performs various data processing, a memory 402, a peripheral I / F 403, an auxiliary storage device 404, communication I / Fs 405-1 and 405-2, and a bus. 406 is provided. The processor 401, the memory 402, the peripheral I / F 403, the auxiliary storage device 404, and the communication I / Fs 405-1 and 405-2 are connected via the bus 406 and can communicate with each other.
 プロセッサ401は、図3に関して説明したゲートウェイ装置102の機能を実現するためのプログラムを実行する。 The processor 401 executes a program for realizing the function of the gateway apparatus 102 described with reference to FIG.
 メモリ402は、プロセッサ401がプログラムを実行する際に、ワーキングメモリ及び入出力データの一時バッファとして、あるいは第1記憶領域307として用いられる記憶デバイスであり、例えばDRAMで構成される。 The memory 402 is a storage device that is used as a working memory and a temporary buffer for input / output data or as the first storage area 307 when the processor 401 executes a program, and is configured by a DRAM, for example.
 周辺I/F403は、マウス、キーボード、モニタ等の入出力装置や、USB(Universal Serial Bus)メモリ等の外部ストレージ等の各種周辺機器と接続するためのインタフェースである。 The peripheral I / F 403 is an interface for connecting to various peripheral devices such as an input / output device such as a mouse, a keyboard, and a monitor, and an external storage such as a USB (Universal Serial Bus) memory.
 補助記憶装置404は、磁気ディスク装置、フラッシュROM(Read Only Memory)等から構成され、オペレーティングシステム(OS)、各種ドライバ、各種アプリケーションプログラムや、プログラムで使用される各種情報(例えば、本誌システム1の管理者または保守者によって設定される情報等)を格納している。本実施形態の第2記憶領域307は、補助記憶装置404により提供される。 The auxiliary storage device 404 includes a magnetic disk device, a flash ROM (Read Only Memory), and the like, and includes an operating system (OS), various drivers, various application programs, and various information used in the programs (for example, the system 1 of this journal system 1). Information set by the administrator or maintenance person) is stored. The second storage area 307 of this embodiment is provided by the auxiliary storage device 404.
 通信I/F405-1、405-2は、ゲートウェイ装置102がセンタネットワーク104や広域ネットワーク105を介して通信端末103-1~103-n、中継装置201-1~201-n、センタサーバ101と通信を行う際のインタフェースを提供する。通信I/F405-1、405-2は、例えば、NIC(Network Interface Card)によって構成することができる。なお、図4では、2組の通信I/F405-1~405-2を例示しているが1組あるいは3組以上設けても構わない。 The communication I / Fs 405-1 and 405-2 are configured such that the gateway device 102 communicates with the communication terminals 103-1 to 103-n, the relay devices 201-1 to 201-n, and the center server 101 via the center network 104 and the wide area network 105. Provides an interface for communication. The communication I / Fs 405-1 and 405-2 can be configured by, for example, a NIC (Network Interface Card). In FIG. 4, two sets of communication I / Fs 405-1 to 405-2 are illustrated, but one set or three or more sets may be provided.
(第1実施形態におけるセッション情報キャッシュ)
 次に、セッション情報キャッシュ308に格納される情報について、図5を用いて説明する。前記したように、セッション情報キャッシュ308は、ゲートウェイ装置102が通信端末103とセンタサーバ101との間の通信セッションを管理するための情報をリアルタイムで利用可能とするために一時的に格納している。セッション情報キャッシュ308は、セッションID501、最終アクセス日時502(最終アクセス時点情報)、次回アクセス日時503(次回アクセス時点情報)、通信周期504、管理情報1(505)、及び管理情報2(506)の各項目を格納している。
(Session information cache in the first embodiment)
Next, information stored in the session information cache 308 will be described with reference to FIG. As described above, the session information cache 308 temporarily stores information for the gateway device 102 to manage a communication session between the communication terminal 103 and the center server 101 so that the information can be used in real time. . The session information cache 308 includes a session ID 501, last access date / time 502 (last access time point information), next access date / time 503 (next access time point information), communication cycle 504, management information 1 (505), and management information 2 (506). Each item is stored.
 セッションID501の列は、ゲートウェイ装置102内で保持している複数のセッションを一意に識別するためのIDであるセッションIDを格納している領域である。セッションID501は、ゲートウェイ装置102でセッションが新規作成される際にゲートウェイ装置102によって採番される。なお、セッションID501は、セッションが継続している間、転送データに付与され続けてもよいし、または、セッションがTCP/IPコネクションと1対1に対応していることを前提として、ゲートウェイ装置102内の送受信を行うソケットディスクリプタ情報を割り当てて用いてもよい。前者の場合、必ずしもTCP/IPコネクションとセッションとが1対1に対応する必要がないが、必ずセッションIDをデータに付与する必要がある。後者の場合、TCP/IPコネクションとセッションが1対1に対応する必要があるが、転送データにセッションIDを付与する必要がない。以降の説明では前者を想定するが、後者でも本発明の本質には影響はない。 The column of the session ID 501 is an area that stores a session ID that is an ID for uniquely identifying a plurality of sessions held in the gateway device 102. The session ID 501 is assigned by the gateway device 102 when a new session is created by the gateway device 102. Note that the session ID 501 may continue to be assigned to the transfer data while the session continues, or the gateway device 102 assumes that the session corresponds one-to-one with the TCP / IP connection. Socket descriptor information for performing transmission / reception may be allocated and used. In the former case, there is not necessarily a one-to-one correspondence between a TCP / IP connection and a session, but a session ID must always be assigned to data. In the latter case, the TCP / IP connection and the session need to correspond one-to-one, but it is not necessary to assign a session ID to the transfer data. In the following description, the former is assumed, but the latter does not affect the essence of the present invention.
 最終アクセス日時502の列は、当該セッションのパケットを転送するために、最後にセッション情報にアクセスした日時を格納している領域である。本領域は、あくまで転送するためにアクセスした場合にのみ更新される領域であり、例えばセッション情報テーブル309からセッション情報キャッシュにセッション情報を移動させるためにアクセスされた場合は更新されない。なお、図5に示すように、最終アクセス日時502の項目は、過去の複数のアクセス日時を特定のセッションID501に関するアクセス履歴として記録するように拡張することができる。図5では、最終アクセス日時502の項目を、過去11回のアクセス日時を含むように、過去アクセス時点情報として拡張した例を示している。このような拡張した最終アクセス日時502の項目は、後述する通信周期の自動更新処理を実行する際に利用される。 The column of the last access date and time 502 is an area that stores the date and time when the session information was last accessed in order to transfer the packet of the session. This area is an area that is updated only when accessed for transfer. For example, the area is not updated when accessed for moving session information from the session information table 309 to the session information cache. As shown in FIG. 5, the item of last access date and time 502 can be expanded so as to record a plurality of past access dates and times as an access history related to a specific session ID 501. FIG. 5 shows an example in which the item of last access date and time 502 is expanded as past access time information so as to include the past 11 access dates and times. The item of the extended last access date and time 502 is used when executing a communication cycle automatic update process to be described later.
 次回アクセス日時503の列は、ゲートウェイ装置102が当該セッションのパケットを次に転送する予定の日時を格納する領域である。セッション情報管理部304が最終アクセス日時502と通信周期504とから算出し、本領域を更新する。 The next access date and time 503 column is an area for storing the date and time when the gateway device 102 is scheduled to transfer the packet of the session next. The session information management unit 304 calculates from the last access date and time 502 and the communication cycle 504, and updates this area.
 通信周期504の列は、当該セッションの通信周期を格納する領域であり、新規セッション確立時に、セッション情報管理部304が通信周期管理テーブル310から取得して登録する。 The column of the communication cycle 504 is an area for storing the communication cycle of the session. The session information management unit 304 acquires and registers from the communication cycle management table 310 when a new session is established.
 管理情報1(505)、管理情報2(506)の列は、セッション情報として保持しておくべき情報を格納する領域であり、ゲートウェイ装置102が作成するセッションの種類に応じて項目の内容を自由に設計することができる。図5の例では、通信端末103からセンタサーバ101へのアクセスを制御するための認証セッションを作成する場合を想定し、管理情報1(505)には、認証元を識別するユーザIDを格納し、管理情報2(506)にはセッション有効期限を格納している。なお、図5では2種類の管理情報を記載しているが、必要に応じて拡張してもよい。 The columns of management information 1 (505) and management information 2 (506) are areas for storing information to be held as session information, and the contents of items can be freely set according to the type of session created by the gateway apparatus 102. Can be designed to In the example of FIG. 5, it is assumed that an authentication session for controlling access from the communication terminal 103 to the center server 101 is created, and the management information 1 (505) stores a user ID for identifying the authentication source. In the management information 2 (506), the session expiration date is stored. Note that although two types of management information are shown in FIG. 5, they may be expanded as necessary.
 図5のセッション情報キャッシュ308において、例えば、行507は、セッションID501が「10000001」であるセッションの最終アクセス日時が2013/1/1、8:00:00であり、次回アクセス予定日時が2013/1/1,8:30:00、通信周期が30分、認証元がuser1であり、セッションの有効期限が2013/1/2,8:00:00であることを表している。 In the session information cache 308 of FIG. 5, for example, a line 507 includes a session having a session ID 501 of “10000001” with the last access date / time 2013/1/1 and 8: 00: 00: 00 and the next access scheduled date / time 2013 / This indicates that 1/1, 8:30, communication cycle is 30 minutes, authentication source is user1, and session expiration date is 2013/1/2, 8: 00: 00: 00.
 セッション情報キャッシュ308に記録されるセッション情報は、実際に通信端末103とセンタサーバ101との間での通信が行われてはじめて生成される。したがって、セッション情報キャッシュ308には、ゲートウェイ装置102として稼働する以前は何も情報が格納されておらず、通信端末103とセンタサーバ101との間で通信が発生して新規セッションが開始されるとセッション情報管理部304によってエントリが追加される。このとき、テーブルのエントリ数が上限に達していた場合、セッション情報管理部304が本テーブルエントリのうち、次回アクセス日時503が現在時刻から最も未来のエントリをセッション情報テーブル309に移動する。また、セッション情報監視部305がセッション情報テーブル309を監視し、次回アクセス日時が近づいており、かつ本テーブルエントリに登録されていないセッション情報を本テーブルエントリに追加する。その際、本テーブルエントリ数が上限に達していた場合、セッション情報監視部305は本テーブルエントリの次回アクセス日時503が現在時刻から最も未来のエントリをセッション情報テーブル309に移動し、空いたエントリ領域に前記セッション情報を登録する。また、セッションが終了するとセッション情報管理部304が本テーブルから対象セッションのエントリを削除する。以上の構成を有するセッション情報キャッシュ308により、通信端末103からアクセスがあった場合、ゲートウェイ装置102はセッション情報キャッシュ308からリアルタイムに必要なセッション情報を取得することができる。 The session information recorded in the session information cache 308 is generated only after communication between the communication terminal 103 and the center server 101 is actually performed. Accordingly, no information is stored in the session information cache 308 before operating as the gateway device 102, and when a communication occurs between the communication terminal 103 and the center server 101 and a new session is started. The session information management unit 304 adds an entry. At this time, if the number of entries in the table has reached the upper limit, the session information management unit 304 moves the most recent entry with the next access date and time 503 from the current time to the session information table 309 among the table entries. In addition, the session information monitoring unit 305 monitors the session information table 309, and adds session information that is approaching the next access date and is not registered in the table entry to the table entry. At this time, if the number of entries in this table has reached the upper limit, the session information monitoring unit 305 moves the entry with the next access date and time 503 of this table entry from the current time to the session information table 309, and the free entry area The session information is registered. When the session ends, the session information management unit 304 deletes the entry of the target session from this table. When there is an access from the communication terminal 103 using the session information cache 308 having the above configuration, the gateway apparatus 102 can acquire necessary session information from the session information cache 308 in real time.
(第1実施形態におけるセッション情報テーブル)
 次に、セッション情報テーブル309に格納される情報について、図6を用いて説明する。セッション情報テーブル309には、ゲートウェイ装置102が各通信端末103とセンタサーバ101との間でのセッションを管理するために利用するセッション情報が格納される。セッション情報テーブル309は、セッションID601、最終アクセス日時602、次回アクセス日時603、通信周期604、管理情報1(605)、及び管理情報2(606)の各項目を格納している。各列の情報は、セッション情報キャッシュ308と全く同様であるため、説明は省略する。本テーブル309は、セッション情報キャッシュ308と同様に、ゲートウェイ装置102の稼働開始以前は何も情報が格納されておらず、セッション情報キャッシュ308のエントリが上限に達すると、セッション情報キャッシュ308のエントリの中で次回アクセス予定日時が現在時刻から最も未来のエントリがセッション情報管理部304によって本テーブルに登録される。また、セッションが終了するとセッション情報管理部304が本テーブルから対象セッションのエントリを削除する。なお、セッション情報テーブル309の最終アクセス日時602の項目は、セッション情報キャッシュ308の最終アクセス日時502の項目が拡張されている場合には、同様に拡張される。
(Session information table in the first embodiment)
Next, information stored in the session information table 309 will be described with reference to FIG. The session information table 309 stores session information used by the gateway device 102 to manage a session between each communication terminal 103 and the center server 101. The session information table 309 stores items of session ID 601, last access date and time 602, next access date and time 603, communication cycle 604, management information 1 (605), and management information 2 (606). Since the information in each column is exactly the same as that in the session information cache 308, description thereof is omitted. Similar to the session information cache 308, this table 309 stores no information before the gateway apparatus 102 starts operation. When the entry in the session information cache 308 reaches the upper limit, Among them, the session information management unit 304 registers the entry whose future access date and time is the most future from the current time in this table. When the session ends, the session information management unit 304 deletes the entry of the target session from this table. Note that the item of the last access date and time 602 of the session information table 309 is similarly expanded when the item of the last access date and time 502 of the session information cache 308 is expanded.
(第1実施形態における通信周期管理テーブル)
 次に、通信周期管理テーブル310に格納される情報について、図7を用いて説明する。図7に、本実施例のゲートウェイ装置102において、第2記憶領域307に格納される通信周期管理テーブル310の例を示している。通信周期管理テーブル310は、セッション種別識別情報701、及び通信周期702の各項目を格納しており、新規セッション確立時に、セッション情報管理部304が通信周期604をセッション情報に登録するために本テーブルを参照する。
(Communication cycle management table in the first embodiment)
Next, information stored in the communication cycle management table 310 will be described with reference to FIG. FIG. 7 shows an example of the communication cycle management table 310 stored in the second storage area 307 in the gateway device 102 of this embodiment. The communication cycle management table 310 stores items of session type identification information 701 and communication cycle 702, and this table is used by the session information management unit 304 to register the communication cycle 604 in the session information when a new session is established. Refer to
 セッション種別識別情報701の列は、ゲートウェイ装置102が管理するセッションの種類を識別するための情報を格納する領域である。本識別情報701は、システム設計時に通信周期702が特定できる単位で割り当てればよい。例えば、本識別情報701は、TCP/IPコネクション単位で、通信アプリケーション単位で、通信端末単位で、あるいは通信周期が同一である装置のグループ単位で割り当てることができる。図7の例では通信アプリケーション単位での識別を想定し、通信アプリケーションに割り当てられたユーザIDを格納しているが、IPアドレスとTCPポートの組や、装置のID、グループIDでも構わない。 The column of the session type identification information 701 is an area for storing information for identifying the type of session managed by the gateway apparatus 102. The identification information 701 may be assigned in units that can specify the communication cycle 702 during system design. For example, the identification information 701 can be assigned in units of TCP / IP connections, in units of communication applications, in units of communication terminals, or in units of groups of devices having the same communication cycle. In the example of FIG. 7, a user ID assigned to a communication application is stored assuming identification in communication application units. However, a combination of an IP address and a TCP port, an apparatus ID, and a group ID may be used.
 通信周期702の列は、セッション種別識別情報701で特定されるセッションの通信が行われる周期を格納する領域である。図7の例では、例えば行703は、識別情報701がuser1で特定されるセッションの通信周期が30分であることを表している。 The column of the communication cycle 702 is an area for storing a cycle in which communication of the session specified by the session type identification information 701 is performed. In the example of FIG. 7, for example, a row 703 indicates that the communication cycle of the session whose identification information 701 is specified by user1 is 30 minutes.
(第1実施形態における新規セッション確立時の処理シーケンス)
 次に、図8を用いて、通信端末103が新規セッションを確立し、ゲートウェイ装置102経由でセンタサーバ101にデータを送信する場合の一連の処理シーケンスの例について説明する。図8には、通信端末103、ゲートウェイ装置102のパケット送受信処理部302、転送処理部303、セッション情報管理部304、及びセッション情報監視部305、並びにセンタサーバ101間での情報の流れを模式的に示している。なお、図8中の符号Sは、「ステップ」を意味している。
(Processing sequence when establishing a new session in the first embodiment)
Next, an example of a series of processing sequences when the communication terminal 103 establishes a new session and transmits data to the center server 101 via the gateway device 102 will be described with reference to FIG. FIG. 8 schematically illustrates the flow of information among the communication terminal 103, the packet transmission / reception processing unit 302, the transfer processing unit 303, the session information management unit 304, the session information monitoring unit 305, and the center server 101 of the gateway device 102. It shows. Note that the symbol S in FIG. 8 means “step”.
 まず、通信端末103がゲートウェイ装置102に対してパケットを送信する(S801)。 First, the communication terminal 103 transmits a packet to the gateway device 102 (S801).
 ゲートウェイ装置102のパケット送受信処理部302は、通信インタフェース301-1経由で受信したパケットの受信処理を行い、パケット化されていた転送データの再構築を行う(S802)。次に、パケット送受信処理部302は、転送データからセッションIDもしくはセッション種別識別情報をチェックする(S803)。ここでは、パケット送受信処理部302は、新規セッションであるためセッション種別識別情報を取得する。セッション種別識別情報は、送信元である通信端末103において、送信パケットに記録されている。そして、パケット送受信処理部302は、取得したセッション種別識別情報及び転送データを転送処理部303に渡す(S804)。 The packet transmission / reception processing unit 302 of the gateway apparatus 102 performs reception processing of the packet received via the communication interface 301-1, and reconstructs the packetized transfer data (S802). Next, the packet transmission / reception processing unit 302 checks the session ID or the session type identification information from the transfer data (S803). Here, since the packet transmission / reception processor 302 is a new session, it acquires the session type identification information. The session type identification information is recorded in the transmission packet in the communication terminal 103 that is the transmission source. Then, the packet transmission / reception processing unit 302 passes the acquired session type identification information and transfer data to the transfer processing unit 303 (S804).
 転送処理部303は、セッション情報管理部304に、パケット送受信処理部302から受け取ったセッション種別識別情報を渡す(S805)。 The transfer processing unit 303 passes the session type identification information received from the packet transmission / reception processing unit 302 to the session information management unit 304 (S805).
 セッション情報管理部304は、通信周期管理テーブル310を参照し、セッション種別識別情報701に対応する通信周期702を取得する(S806)。次にセッション情報管理部304は新規セッション情報を作成し、セッション情報キャッシュ308に登録する(S807)。そしてセッション情報管理部304は、セッションIDを転送処理部303に渡す(S808)。 The session information management unit 304 refers to the communication cycle management table 310 and acquires the communication cycle 702 corresponding to the session type identification information 701 (S806). Next, the session information management unit 304 creates new session information and registers it in the session information cache 308 (S807). Then, the session information management unit 304 passes the session ID to the transfer processing unit 303 (S808).
 転送処理部303は、転送先のアドレス解決などの転送処理を行い(S809)、セッションID及び転送データをパケット送受信処理部302に渡す(S810)。 The transfer processing unit 303 performs transfer processing such as address resolution of the transfer destination (S809), and passes the session ID and transfer data to the packet transmission / reception processing unit 302 (S810).
 パケット送受信処理部302は、セッションIDを含めた転送データから送信パケットを生成し(S811)、通信インタフェース301-2を介して転送先であるセンタサーバ101に生成したパケットを送信する(S812)。 The packet transmission / reception processing unit 302 generates a transmission packet from the transfer data including the session ID (S811), and transmits the generated packet to the center server 101 as the transfer destination via the communication interface 301-2 (S812).
 以上の処理シーケンスによれば、ある通信端末103の新規セッションに関する情報がセッション情報キャッシュ308、セッション情報テーブル309に格納され、ゲートウェイ装置102は、次回の通信端末103からの通信発生時にリアルタイムで応答することができる。 According to the above processing sequence, information related to a new session of a certain communication terminal 103 is stored in the session information cache 308 and the session information table 309, and the gateway device 102 responds in real time when communication from the next communication terminal 103 occurs. be able to.
(第1実施形態における既存セッション通信時の処理シーケンス)
 次に、図9、図10を用いて、通信端末103が既に確立済みのセッションを用いて、ゲートウェイ装置102経由でセンタサーバ101にデータを送信する場合の一連の処理シーケンスの例について説明する。
(Processing sequence at the time of existing session communication in the first embodiment)
Next, an example of a series of processing sequences when data is transmitted to the center server 101 via the gateway apparatus 102 using a session that has already been established by the communication terminal 103 will be described with reference to FIGS. 9 and 10.
 まず図9を用いて、パケットが通信端末103からゲートウェイ装置102に予定通り到着して、セッション情報キャッシュ308からセッション情報を読み出すことができる場合の処理シーケンス例について説明する。 First, an example of a processing sequence when a packet arrives at the gateway apparatus 102 from the communication terminal 103 as scheduled and the session information can be read from the session information cache 308 will be described with reference to FIG.
 まず、図9の処理シーケンスの前提として、セッション情報監視部305が、セッション情報テーブル309の次回アクセス日時603をチェックし、現在日時との差分が事前に設定された閾値以下になったエントリを特定する(S901)。次に、セッション情報監視部305が、S901にて特定したセッション情報がセッション情報キャッシュ308に登録されているかチェックし、登録されていない場合は登録する(S902)。その際、セッション情報キャッシュ308のエントリが上限値に達していたら、セッション情報キャッシュ308のエントリのうち、次回アクセス日時503が最も未来のエントリをセッション情報テーブル309に移動させ、セッション情報キャッシュ308に空き領域を作成する。以上のセッション情報監視部305によるS901、S902の処理は、バックグラウンドで適宜のタイミングで反復して実行される。 First, as a premise of the processing sequence of FIG. 9, the session information monitoring unit 305 checks the next access date and time 603 of the session information table 309 and identifies an entry whose difference from the current date and time is equal to or less than a preset threshold value. (S901). Next, the session information monitoring unit 305 checks whether or not the session information specified in S901 is registered in the session information cache 308, and registers it if not registered (S902). At this time, if the entry in the session information cache 308 has reached the upper limit value, the entry with the most recent access date and time 503 among the entries in the session information cache 308 is moved to the session information table 309 and is free in the session information cache 308. Create a region. The above-described processing of S901 and S902 by the session information monitoring unit 305 is repeatedly executed at an appropriate timing in the background.
 この状態で、通信端末103がゲートウェイ装置102に対してパケットを送信する(S903)。 In this state, the communication terminal 103 transmits a packet to the gateway device 102 (S903).
 ゲートウェイ装置102のパケット送受信処理部302は、通信インタフェース301-1経由で受信したパケットの受信処理を行い、パケット化されていた転送データの再構築を行う(S904)。次に、パケット送受信処理部302は、転送データからセッションIDもしくはセッション種別識別情報をチェックする(S905)。ここでは既存セッションであるためセッションIDを取得する。そして、取得したセッションID及び転送データを転送処理部303に渡す(S906)。 The packet transmission / reception processing unit 302 of the gateway apparatus 102 performs reception processing of the packet received via the communication interface 301-1, and reconstructs the packetized transfer data (S904). Next, the packet transmission / reception processing unit 302 checks the session ID or the session type identification information from the transfer data (S905). Here, since it is an existing session, a session ID is acquired. Then, the acquired session ID and transfer data are transferred to the transfer processing unit 303 (S906).
 転送処理部303は、セッション情報管理部304に、受信したセッションIDを渡す(S907)。 The transfer processing unit 303 passes the received session ID to the session information management unit 304 (S907).
 セッション情報管理部304は、セッション情報キャッシュ308を参照し、セッションID501が受信したセッションIDと一致するエントリを検索する(S908)。ここで、当該セッションのパケットが予定通り到着した場合、セッション情報監視部305によってセッション情報キャッシュ308にセッション情報が登録されているため、セッション情報管理部304はセッション情報キャッシュ308からセッション情報を取得することができる。そしてセッション情報管理部304は、セッション情報キャッシュ308の最終アクセス日時502及び次回アクセス日時503を更新し(S909)、セッション情報を転送処理部303に渡す(S910)。 The session information management unit 304 refers to the session information cache 308 and searches for an entry that matches the session ID received by the session ID 501 (S908). Here, when the packet of the session arrives as scheduled, the session information monitoring unit 305 acquires the session information from the session information cache 308 because the session information is registered in the session information cache 308 by the session information monitoring unit 305. be able to. Then, the session information management unit 304 updates the last access date and time 502 and the next access date and time 503 in the session information cache 308 (S909), and passes the session information to the transfer processing unit 303 (S910).
 転送処理部303は、セッション情報を元に転送処理を行う(S911)。本例の認証セッションを管理しているケースでは、例えばセッション情報に含まれる有効期限のチェックや認証元IDのチェックなどを行う。そして、転送処理部303は、セッションID及び転送データをパケット送受信処理部302に渡す(S912)。以降の処理は、図8の処理例におけるS811、S812と同じである。 The transfer processing unit 303 performs transfer processing based on the session information (S911). In the case of managing the authentication session of this example, for example, an expiration date check included in the session information and an authentication source ID check are performed. Then, the transfer processing unit 303 passes the session ID and transfer data to the packet transmission / reception processing unit 302 (S912). The subsequent processing is the same as S811 and S812 in the processing example of FIG.
 以上説明した処理シーケンスにより、通信端末103からのセッション開始のパケット受信時には、当該セッションに関するセッション情報が高速アクセス可能な第1記憶領域306に格納されているセッション情報キャッシュ308に記録されているので、ゲートウェイ装置102はそのセッション情報を用いて通信端末103からのパケット転送処理を迅速に行うことができる。 With the processing sequence described above, when a session start packet is received from the communication terminal 103, the session information related to the session is recorded in the session information cache 308 stored in the first storage area 306 accessible at high speed. The gateway device 102 can quickly perform the packet transfer processing from the communication terminal 103 using the session information.
 次に図10を用いて、パケットが通信端末103からゲートウェイ装置102に予定通り到着せず、セッション情報キャッシュ308に該当するセッション情報が登録されていない場合の処理シーケンス例について説明する。 Next, an example of a processing sequence when a packet does not arrive from the communication terminal 103 to the gateway apparatus 102 as scheduled and the corresponding session information is not registered in the session information cache 308 will be described with reference to FIG.
 図10を参照すると、S1001~S1006までの処理は、図9のS903~S908での処理と同じである。ここで、パケットが各セッションについてあらかじめ設定されている通信周期からは予定外の日時にゲートウェイ装置102に到着したため、当該セッションのセッション情報がセッション情報キャッシュ308に登録されていない場合、セッション情報管理部304は、セッション情報テーブル309を参照して当該セッションのセッション情報を取得し、セッション情報キャッシュ308に登録する(S1007)。その際、セッション情報キャッシュ308のエントリが上限値に達していたら、セッション情報キャッシュ308のエントリのうち、次回アクセス日時が最も未来のエントリをセッション情報テーブル309に移動させ、セッション情報キャッシュ308に空き領域を作成する。そしてセッション情報管理部304は、最終アクセス日時502及び次回アクセス日時503を更新し(S1008)、セッション情報を転送処理部303に渡す(S1009)。以降の処理は、図9のS911~S914と同じである。 Referring to FIG. 10, the processing from S1001 to S1006 is the same as the processing from S903 to S908 in FIG. Here, when the packet arrives at the gateway apparatus 102 at an unscheduled date and time from the communication cycle set in advance for each session, the session information management unit if the session information of the session is not registered in the session information cache 308 304 refers to the session information table 309, acquires the session information of the session, and registers it in the session information cache 308 (S1007). At this time, if the entry in the session information cache 308 has reached the upper limit value, the entry with the most recent access date / time among the entries in the session information cache 308 is moved to the session information table 309, and free space is stored in the session information cache 308. Create Then, the session information management unit 304 updates the last access date and time 502 and the next access date and time 503 (S1008), and passes the session information to the transfer processing unit 303 (S1009). The subsequent processing is the same as S911 to S914 in FIG.
 以上の処理シーケンスによれば、通信端末103から所定の通信周期を外れた時機にパケットを受信した場合でも、ゲートウェイ装置102は通常のデータ転送処理を実行することができるとともに、次回以降の定時の通信周期でのパケット受信時にはセッション情報キャッシュ308に格納したセッション情報によって迅速な処理を行うことができる。 According to the above processing sequence, even when a packet is received from the communication terminal 103 at a time outside a predetermined communication cycle, the gateway device 102 can execute a normal data transfer process, and at the next scheduled time When a packet is received in the communication cycle, a quick process can be performed using the session information stored in the session information cache 308.
(第1実施形態における既存セッション終了時の処理シーケンス)
 次に、図11を用いて、通信端末103が既に確立済みのセッションを終了する場合の一連の処理シーケンスの例について説明する。
(Processing sequence at the end of the existing session in the first embodiment)
Next, an example of a series of processing sequences when the communication terminal 103 ends an already established session will be described with reference to FIG.
 まず、通信端末103が、ゲートウェイ装置102に対しセッション終了パケットを送信する(S1101)。 First, the communication terminal 103 transmits a session end packet to the gateway device 102 (S1101).
 ゲートウェイ装置102のパケット送受信処理部302は、通信インタフェース301-1経由で受信したセッション終了パケットの受信処理を行い、パケット化されていたセッション終了要求の再構築を行う(S1102)。次に、パケット送受信処理部302は、終了要求から終了対象のセッションIDを取得する(S905)。そして、取得したセッションID及び転送データを転送処理部303に渡す(S906)。 The packet transmission / reception processing unit 302 of the gateway device 102 performs reception processing of the session end packet received via the communication interface 301-1, and reconstructs the packetized session end request (S1102). Next, the packet transmission / reception processing unit 302 acquires the session ID to be terminated from the termination request (S905). Then, the acquired session ID and transfer data are transferred to the transfer processing unit 303 (S906).
 転送処理部303は、セッション情報管理部304にセッションIDを渡す(S907)。セッション情報管理部304は、セッション情報キャッシュ308を参照し、セッションID501が受信したセッションIDと一致するエントリを検索する(S1106)。一致するエントリがあると判定した場合、セッション情報管理部304は、セッション情報キャッシュ308の当該エントリ及びセッション情報テーブル309の当該セッションのエントリを削除する(S1107)。セッション情報キャッシュ308に一致するエントリがないと判定した場合、セッション情報管理部304は、セッション情報テーブル309の当該セッションのエントリのみを削除する(S1107)。そして、セッション情報管理部304は、セッション情報の削除処理結果を転送処理部303に返す(S1108)。 The transfer processing unit 303 passes the session ID to the session information management unit 304 (S907). The session information management unit 304 refers to the session information cache 308 and searches for an entry that matches the session ID received by the session ID 501 (S1106). When it is determined that there is a matching entry, the session information management unit 304 deletes the entry of the session information cache 308 and the entry of the session of the session information table 309 (S1107). When it is determined that there is no matching entry in the session information cache 308, the session information management unit 304 deletes only the entry for the session in the session information table 309 (S1107). Then, the session information management unit 304 returns the session information deletion processing result to the transfer processing unit 303 (S1108).
 転送処理部303は、転送処理を行い(S1109)、セッションID及びセッション終了要求をパケット送受信処理部302に渡す(S1110)。 The transfer processing unit 303 performs transfer processing (S1109), and passes the session ID and the session end request to the packet transmission / reception processing unit 302 (S1110).
 パケット送受信処理部302は、セッションID501及びセッション終了要求から送信パケットを生成し(S1111)、センタサーバ101にセッション終了パケットを送信する(S1112)。以上の処理シーケンスによれば、通信端末103からセッション終了パケットを受信した場合には、ゲートウェイ装置102のセッション情報キャッシュ308及びセッション情報テーブル309に格納されていた当該セッションに関するセッション情報が削除されるため、ゲートウェイ装置102のメモリ402、及び補助記憶装置404の記憶容量を効率的に利用することができる。 The packet transmission / reception processing unit 302 generates a transmission packet from the session ID 501 and the session end request (S1111), and transmits the session end packet to the center server 101 (S1112). According to the above processing sequence, when a session end packet is received from the communication terminal 103, the session information related to the session stored in the session information cache 308 and the session information table 309 of the gateway device 102 is deleted. The memory capacity of the gateway device 102 and the storage capacity of the auxiliary storage device 404 can be used efficiently.
 次に、本発明を実施するための第2の実施形態(以降、「第2実施形態」と称する。)について、適宜図面を参照しながら詳細に説明する。第1実施形態では、通信端末103とセンタサーバ101間での通信周期は事前に設定されるものであり、一度設定されると固定化されるものであったが、事前に通信周期を設定することが困難である場合や、事前に設定できるが、現場のネットワーク環境等によって実際の運用時には設定値と誤差が生じてしまう場合などに対応できないことが考えられる。そこで、第2実施形態では、ゲートウェイ装置102を実運用しながら通信周期を動的に変更するゲートウェイ装置102の機能について説明する。 Next, a second embodiment (hereinafter referred to as “second embodiment”) for carrying out the present invention will be described in detail with reference to the drawings as appropriate. In the first embodiment, the communication cycle between the communication terminal 103 and the center server 101 is set in advance and is fixed once set, but the communication cycle is set in advance. However, it may be impossible to cope with a case where a setting value and an error occur during actual operation due to a network environment at the site. Therefore, in the second embodiment, a function of the gateway device 102 that dynamically changes the communication cycle while actually operating the gateway device 102 will be described.
(第2実施形態におけるゲートウェイ装置102の機能構成)
 第2実施形態におけるゲートウェイ装置102の機能構成について図12を用いて説明する。通信端末103-1、広域ネットワーク105、センタネットワーク104、及びセンタサーバ101については第1実施形態と同じであるため説明は省略する。また、符号301-1~310で示すゲートウェイ装置102内の各機能ブロックについても、第1実施形態の同一符号で特定される要素と同一であるため説明は省略する。第2実施形態では、通信周期の変化に対応するために、周期更新部311が設けられている。周期更新部311は、セッション情報管理部304から渡された実際のパケット到着日時を元に、当該セッションの通信周期の再計算を行う機能を有する。通信周期の計算方法としては、例えば過去10回分のアクセスログの移動平均などが考えられるが、それに限るものではない。計算に必要なアクセスログについては、図5、図6に関して説明したように、セッション情報キャッシュ308、セッション情報テーブル309の最終アクセス日時502、602の項目を拡張することで、ゲートウェイ装置102内に保持することができる。
(Functional configuration of gateway apparatus 102 in the second embodiment)
A functional configuration of the gateway apparatus 102 in the second embodiment will be described with reference to FIG. Since the communication terminal 103-1, the wide area network 105, the center network 104, and the center server 101 are the same as those in the first embodiment, description thereof is omitted. Also, each functional block in the gateway apparatus 102 denoted by reference numerals 301-1 to 310 is the same as the element identified by the same reference numeral in the first embodiment, and thus the description thereof is omitted. In the second embodiment, a period update unit 311 is provided to cope with a change in the communication period. The period update unit 311 has a function of recalculating the communication period of the session based on the actual packet arrival date and time passed from the session information management unit 304. As a method for calculating the communication cycle, for example, a moving average of access logs for the past 10 times is conceivable, but is not limited thereto. As described with reference to FIGS. 5 and 6, the access log necessary for the calculation is retained in the gateway apparatus 102 by expanding the items of the last access date and time 502 and 602 in the session information cache 308 and the session information table 309. can do.
(第2実施形態における既存セッション通信時の処理シーケンス)
 次に、図13を用いて、第2実施形態において通信端末103が既に確立済みのセッションを用いて、ゲートウェイ装置102経由でセンタサーバ101にデータを送信する場合の一連の処理シーケンス例について説明する。この処理シーケンス例は、第1実施形態における図9の処理シーケンス例に対応する。
(Processing sequence at the time of existing session communication in the second embodiment)
Next, a series of processing sequence examples in the case where data is transmitted to the center server 101 via the gateway apparatus 102 using a session already established by the communication terminal 103 in the second embodiment will be described with reference to FIG. . This processing sequence example corresponds to the processing sequence example of FIG. 9 in the first embodiment.
 図9の処理シーケンス例の場合と同様に、セッション情報監視部305が、セッション情報テーブル309の次回アクセス日時603をチェックし、現在日時との差分が事前に設定された閾値以下になったエントリを特定する(S1301)。次に、セッション情報監視部305が、特定したセッション情報がセッション情報キャッシュ308に登録されているかチェックし、登録されていない場合は登録する(S1302)。その際、セッション情報キャッシュ308のエントリが上限値に達していたら、セッション情報キャッシュ308のエントリのうち、次回アクセス日時が最も未来のエントリをセッション情報テーブル309に移動させ、セッション情報キャッシュ308に空き領域を作成する。セッション情報監視部305によるS1301、S1302の処理は、バックグラウンドで適宜のタイミングで反復して実行される。 As in the case of the processing sequence example of FIG. 9, the session information monitoring unit 305 checks the next access date and time 603 in the session information table 309 and determines an entry whose difference from the current date and time is equal to or less than a preset threshold value. Specify (S1301). Next, the session information monitoring unit 305 checks whether the specified session information is registered in the session information cache 308, and if not registered, registers it (S1302). At this time, if the entry in the session information cache 308 has reached the upper limit value, the entry with the most recent access date / time among the entries in the session information cache 308 is moved to the session information table 309, and free space is stored in the session information cache 308. Create The processing of S1301 and S1302 by the session information monitoring unit 305 is repeatedly executed at an appropriate timing in the background.
 この状態で、通信端末103がゲートウェイ装置102に対してパケットを送信する(S1303)。 In this state, the communication terminal 103 transmits a packet to the gateway device 102 (S1303).
 ゲートウェイ装置102のパケット送受信処理部302は、通信インタフェース301-1経由で受信したパケットの受信処理を行い、パケット化されていた転送データの再構築を行う(S1304)。次に、パケット送受信処理部302は、転送データからセッションIDを取得する(S1305)。そして、取得したセッションID及び転送データを転送処理部303に渡す(S1306)。 The packet transmission / reception processing unit 302 of the gateway apparatus 102 performs reception processing of the packet received via the communication interface 301-1, and reconstructs the packetized transfer data (S1304). Next, the packet transmission / reception processing unit 302 acquires a session ID from the transfer data (S1305). Then, the acquired session ID and transfer data are transferred to the transfer processing unit 303 (S1306).
 転送処理部303は、セッション情報管理部304にセッションIDを渡す(S1307)。 The transfer processing unit 303 passes the session ID to the session information management unit 304 (S1307).
 セッション情報管理部304は、セッション情報キャッシュ308を参照し、セッションID501が受信したセッションIDと一致するエントリを検索する(S1308)。そして、セッション情報管理部304は、取得したセッション情報を周期更新部311に渡す(S1309)。前述したように、本セッション情報には周期再計算に必要となる一定数分の過去のアクセス日時が格納されている。 The session information management unit 304 refers to the session information cache 308 and searches for an entry in which the session ID 501 matches the received session ID (S1308). Then, the session information management unit 304 passes the acquired session information to the period update unit 311 (S1309). As described above, this session information stores a certain number of past access dates and times necessary for periodic recalculation.
 周期更新部311は、セッション情報に含まれている過去のアクセス日時及び現在の通信周期から、通信周期を再計算する(S1310)。そして、再計算後の通信周期をセッション情報管理部304に返す(S1311)。 The period update unit 311 recalculates the communication period from the past access date and current communication period included in the session information (S1310). Then, the communication cycle after the recalculation is returned to the session information management unit 304 (S1311).
 セッション情報管理部304は、セッション情報キャッシュ308の過去のアクセス日時502、通信周期504、及び次回アクセス日時503を更新し(S1312)、セッション情報を転送処理部303に渡す(S1313)。以降の処理は、第1実施形態に関する図9のS911~S914と同じである。 The session information management unit 304 updates the past access date and time 502, the communication cycle 504, and the next access date and time 503 in the session information cache 308 (S1312), and passes the session information to the transfer processing unit 303 (S1313). The subsequent processing is the same as S911 to S914 in FIG. 9 relating to the first embodiment.
 以上説明した処理シーケンス例によれば、事前に通信周期を設定することが困難である場合、実際の運用時には設定値と誤差が生じてしまう場合などの状況であっても、ゲートウェイ装置102を実運用しながら通信周期を動的に変更する事が可能となる。 According to the processing sequence example described above, even when it is difficult to set a communication cycle in advance, or even when a setting value and an error occur during actual operation, the gateway device 102 is implemented. It is possible to dynamically change the communication cycle while operating.
 なお、第2実施形態の応用として、システム本番稼働までに現地でテスト運用を一定期間行うことで、事前に通信周期を設定することなしに、現地に適した通信周期を自動的に決定することが可能となる。 In addition, as an application of the second embodiment, by performing a test operation locally for a certain period of time before system operation, it is possible to automatically determine a communication cycle suitable for the local site without setting a communication cycle in advance. Is possible.
 以上説明したように、本実施形態に係るゲートウェイ装置102によれば、多数の通信端末がデータセンタ等の通信ネットワークとそれぞれ周期通信を行う場合において、メモリ容量等の使用するリソース量を抑えつつ、各通信端末からのアクセスに対するリアルタイムの応答を確保することが可能となる。 As described above, according to the gateway device 102 according to the present embodiment, when a large number of communication terminals perform periodic communication with a communication network such as a data center, respectively, while suppressing the amount of resources used such as memory capacity, It becomes possible to ensure a real-time response to access from each communication terminal.
1   情報処理システム      101 センタサーバ
102 ゲートウェイ装置      103 通信端末
104 センタネットワーク     105 広域ネットワーク
201 中継装置          202 フィールドネットワーク
301 通信インタフェース     302 パケット送受信処理部
303 転送処理部         304 セッション情報管理部
305 セッション情報監視部    306 第1記憶領域
307 第2記憶領域        308 セッション情報キャッシュ
309 セッション情報テーブル   310 通信周期管理テーブル
311 周期更新部         401 プロセッサ
402 メモリ           403 周辺インタフェース
404 補助記憶装置        405 通信インタフェース
406 バス
DESCRIPTION OF SYMBOLS 1 Information processing system 101 Center server 102 Gateway apparatus 103 Communication terminal 104 Center network 105 Wide area network 201 Relay apparatus 202 Field network 301 Communication interface 302 Packet transmission / reception processing part 303 Transfer processing part 304 Session information management part 305 Session information monitoring part 306 1st Storage area 307 Second storage area 308 Session information cache 309 Session information table 310 Communication cycle management table 311 Period update unit 401 Processor 402 Memory 403 Peripheral interface 404 Auxiliary storage device 405 Communication interface 406 Bus

Claims (9)

  1.  複数の第1の情報処理装置と少なくとも1の第2の情報処理装置とに通信可能に接続されて、前記第1の情報処理装置と前記第2の情報処理装置との間でのデータ通信を仲介する通信制御装置であって、
     各前記第1の情報処理装置にある送信元から前記第2の情報処理装置にデータ通信が実行される時間間隔情報である通信周期データを、前記第1の情報処理装置ごとに格納している通信周期データ記憶部と、
     前記第1の情報処理装置からのデータ通信が実行された最後の時点を示す情報である最終アクセス時点情報と、ある第1の情報処理装置に関する当該最終アクセス時点情報と、当該第1の情報処理装置に関して前記通信周期データ記憶部から取得した前記通信周期データとから算出した、当該第1の情報処理装置が次にデータ通信を実行する時点を示す情報である次回アクセス時点情報とを、特定の送信元と前記第2の情報処理装置とのデータ通信に関する固有情報と対応付けたセッションとして格納しているセッション情報記憶部と、
     前記セッション情報記憶部を構成する記憶デバイスよりも高速な記憶デバイスで構成されているセッション情報キャッシュと、
     前記セッション情報記憶部に格納されている前記各第1の情報処理装置に関する前記次回アクセス時点情報に基づいて、当該第1の情報処理装置からのデータ通信実行時点が現時点から所定の時間しきい値以下となったか継続的に判定し、所定の時間しきい値以下となったと判定した場合、当該第1の情報処理装置に関するセッション情報を前記セッション情報記憶部から前記セッション情報キャッシュにコピーするセッション情報管理部と、
     前記第1の情報処理装置からデータを受信したときに、前記セッション情報記憶部を参照して送信元に対応する前記セッション情報を取得し、当該セッション情報に基づいて受信したデータを送信先へ転送する転送処理部と、
    を備えている通信制御装置。
    A plurality of first information processing devices and at least one second information processing device are communicably connected, and data communication is performed between the first information processing device and the second information processing device. A communication control device that mediates,
    Communication period data, which is time interval information for performing data communication from the transmission source in each of the first information processing apparatuses to the second information processing apparatus, is stored for each of the first information processing apparatuses. A communication cycle data storage unit;
    Last access time information that is information indicating the last time when data communication from the first information processing apparatus was executed, the last access time information regarding a certain first information processing apparatus, and the first information processing Next access time point information, which is information indicating a time point at which the first information processing device next executes data communication, calculated from the communication cycle data acquired from the communication cycle data storage unit with respect to the device, A session information storage unit storing a session associated with specific information related to data communication between the transmission source and the second information processing apparatus;
    A session information cache configured with a storage device faster than a storage device constituting the session information storage unit;
    Based on the next access time point information relating to each of the first information processing devices stored in the session information storage unit, the data communication execution time point from the first information processing device is a predetermined time threshold from the present time point. Session information for continuously determining whether or not the value has become below or below a predetermined time threshold value, and copying session information on the first information processing apparatus from the session information storage unit to the session information cache The management department,
    When data is received from the first information processing apparatus, the session information storage unit is referred to obtain the session information corresponding to the transmission source, and the received data is transferred to the transmission destination based on the session information A transfer processing unit,
    A communication control device.
  2.  請求項1に記載の通信制御装置であって、
     前記セッション情報管理部は、データを受信した前記第1の情報処理装置に対応するセッション情報が前記セッション情報キャッシュに格納されていないと判定した場合、前記セッション情報記憶部から当該セッション情報を取得して前記セッション情報キャッシュに格納し、当該セッション情報を前記転送処理部に引き渡す、
    通信制御装置。
    The communication control device according to claim 1,
    When the session information management unit determines that the session information corresponding to the first information processing apparatus that has received the data is not stored in the session information cache, the session information management unit acquires the session information from the session information storage unit. Stored in the session information cache and handing over the session information to the transfer processing unit,
    Communication control device.
  3.  請求項1に記載の通信制御装置であって、
     前記セッション情報記憶部および前記セッション情報キャッシュには、各前記第1の情報処理装置に対応して当該第1の情報処理装置から過去にデータ通信を受信した時点を示す複数の過去アクセス時点情報が格納され、前記セッション情報管理部は、所定の時間間隔をもって、前記過去アクセス時点情報から前記通信周期データを算出して前記通信周期データ記憶部に格納する、
    通信制御装置。
    The communication control device according to claim 1,
    In the session information storage unit and the session information cache, a plurality of past access time point information indicating a time point when data communication has been received in the past from the first information processing device corresponding to each of the first information processing devices. And the session information management unit calculates the communication cycle data from the past access time point information and stores the communication cycle data in the communication cycle data storage unit at a predetermined time interval.
    Communication control device.
  4.  請求項1に記載の通信制御装置であって、
     前記セッション情報管理部は、前記第1の情報処理装置からデータを受信したときに前記セッション情報記憶部を参照し、前記送信元に対応するセッション情報が格納されていないと判定した場合、前記通信周期データ記憶部から前記送信元に対応する通信周期データを取得し、前記送信元に対応する前記次回アクセス時点情報を算出して、前記セッション情報記憶部に前記送信元と対応付けて格納する、
    通信制御装置。
    The communication control device according to claim 1,
    When the session information management unit refers to the session information storage unit when receiving data from the first information processing apparatus and determines that session information corresponding to the transmission source is not stored, the communication information Obtaining communication cycle data corresponding to the transmission source from the cycle data storage unit, calculating the next access time point information corresponding to the transmission source, and storing the session information storage unit in association with the transmission source;
    Communication control device.
  5.  複数の第1の情報処理装置と少なくとも1の第2の情報処理装置とに通信可能に接続されて、前記第1の情報処理装置と前記第2の情報処理装置との間でのデータ通信を仲介する通信制御装置の制御方法であって、前記通信制御装置は、
     各前記第1の情報処理装置にある送信元から前記第2の情報処理装置にデータ通信が実行される時間間隔情報である通信周期データを、前記第1の情報処理装置ごとに格納する通信周期データ記憶部と、
     前記第1の情報処理装置からのデータ通信が実行された最後の時点を示す情報である最終アクセス時点情報と、ある第1の情報処理装置に関する当該最終アクセス時点情報と、当該第1の情報処理装置に関して前記通信周期データ記憶部から取得した前記通信周期データとから算出した、当該第1の情報処理装置が次にデータ通信を実行する時点を示す情報である次回アクセス時点情報とを、特定の送信元と前記第2の情報処理装置とのデータ通信に関する固有情報と対応付けたセッションとして格納するセッション情報記憶部と、
     前記セッション情報を格納する記憶デバイスよりも高速な記憶デバイスで構成されているセッション情報キャッシュと、を備え、
     前記セッション情報記憶部に格納されている前記各第1の情報処理装置に関する前記次回アクセス時点情報に基づいて、当該第1の情報処理装置からのデータ通信実行時点が現時点から所定の時間しきい値以下となったか継続的に判定し、所定の時間しきい値以下となったと判定した場合、当該第1の情報処理装置に関するセッション情報を前記セッション情報記憶部から前記セッション情報キャッシュにコピーし、
     前記第1の情報処理装置からデータを受信したときに、前記セッション情報記憶部を参照して送信元に対応する前記セッション情報を取得し、当該セッション情報に基づいて受信したデータを送信先へ転送する、
    通信制御装置の制御方法。
    A plurality of first information processing devices and at least one second information processing device are communicably connected, and data communication is performed between the first information processing device and the second information processing device. An intermediary communication control device control method comprising:
    A communication cycle in which communication cycle data, which is time interval information for performing data communication from the transmission source in each of the first information processing devices to the second information processing device, is stored for each first information processing device. A data storage unit;
    Last access time information that is information indicating the last time when data communication from the first information processing apparatus was executed, the last access time information regarding a certain first information processing apparatus, and the first information processing Next access time point information, which is information indicating a time point at which the first information processing device next executes data communication, calculated from the communication cycle data acquired from the communication cycle data storage unit with respect to the device, A session information storage unit that stores a session associated with specific information related to data communication between the transmission source and the second information processing apparatus;
    A session information cache configured with a storage device that is faster than a storage device that stores the session information,
    Based on the next access time point information relating to each of the first information processing devices stored in the session information storage unit, the data communication execution time point from the first information processing device is a predetermined time threshold from the present time point. If it is determined whether it has become the following or not, and it is determined that it has become the predetermined time threshold value or less, the session information related to the first information processing apparatus is copied from the session information storage unit to the session information cache,
    When data is received from the first information processing apparatus, the session information storage unit is referred to obtain the session information corresponding to the transmission source, and the received data is transferred to the transmission destination based on the session information To
    Control method of communication control device.
  6.  請求項5に記載の通信制御装置の制御方法であって、
     前記通信制御装置は、データを受信した前記第1の情報処理装置に対応するセッション情報が前記セッション情報キャッシュに格納されていないと判定した場合、前記セッション情報記憶部から当該セッション情報を取得して前記セッション情報キャッシュに格納し、当該セッション情報を前記転送処理部に引き渡す、
    通信制御装置の制御方法。
    A communication control device control method according to claim 5,
    If the communication control device determines that session information corresponding to the first information processing device that has received the data is not stored in the session information cache, the communication control device acquires the session information from the session information storage unit. Store in the session information cache, and deliver the session information to the transfer processing unit,
    Control method of communication control device.
  7.  請求項5に記載の通信制御装置の制御方法であって、
     前記セッション情報記憶部および前記セッション情報キャッシュには、各前記第1の情報処理装置に対応して当該第1の情報処理装置から過去にデータ通信を受信した時点を示す複数の過去アクセス時点情報が格納され、前記通信制御装置は、所定の時間間隔をもって、前記過去アクセス時点情報から前記通信周期データを算出して前記通信周期データ記憶部に格納する、
    通信制御装置。
    A communication control device control method according to claim 5,
    In the session information storage unit and the session information cache, a plurality of past access time point information indicating a time point when data communication has been received in the past from the first information processing device corresponding to each of the first information processing devices. The communication control device calculates the communication cycle data from the past access time point information and stores the communication cycle data in the communication cycle data storage unit at a predetermined time interval.
    Communication control device.
  8.  請求項5に記載の通信制御装置の制御方法であって、
     前記通信制御装置は、前記第1の情報処理装置からデータを受信したときに前記セッション情報記憶部を参照し、前記送信元に対応するセッション情報が格納されていないと判定した場合、前記通信周期データ記憶部から前記送信元に対応する通信周期データを取得し、前記送信元に対応する前記次回アクセス時点情報を算出して、前記セッション情報記憶部に前記送信元と対応付けて格納する、
    通信制御装置の制御方法。
    A communication control device control method according to claim 5,
    When the communication control device refers to the session information storage unit when receiving data from the first information processing device and determines that session information corresponding to the transmission source is not stored, the communication cycle Obtaining communication cycle data corresponding to the transmission source from a data storage unit, calculating the next access time point information corresponding to the transmission source, and storing the session information storage unit in association with the transmission source;
    Control method of communication control device.
  9.  複数の第1の情報処理装置と、
     前記第1の情報処理装置とデータ通信を行う少なくとも1の第2の情報処理装置と、
     複数の前記第1の情報処理装置と、前記第2の情報処理装置とに通信可能に接続されて、前記第1の情報処理装置と前記第2の情報処理装置との間でのデータ通信を仲介する通信制御装置であって、
     各前記第1の情報処理装置にある送信元から前記第2の情報処理装置にデータ通信が実行される時間間隔情報である通信周期データを、前記第1の情報処理装置ごとに格納している通信周期データ記憶部と、
     前記第1の情報処理装置からのデータ通信が実行された最後の時点を示す情報である最終アクセス時点情報と、ある第1の情報処理装置に関する当該最終アクセス時点情報と、当該第1の情報処理装置に関して前記通信周期データ記憶部から取得した前記通信周期データとから算出した、当該第1の情報処理装置が次にデータ通信を実行する時点を示す情報である次回アクセス時点情報とを、特定の送信元と前記第2の情報処理装置とのデータ通信に関する固有情報と対応付けたセッションとして格納しているセッション情報記憶部と、
     前記セッション情報記憶部を構成する記憶デバイスよりも高速な記憶デバイスで構成されているセッション情報キャッシュと、
     前記セッション情報記憶部に格納されている前記各第1の情報処理装置に関する前記次回アクセス時点情報に基づいて、当該第1の情報処理装置からのデータ通信実行時点が現時点から所定の時間しきい値以下となったか継続的に判定し、所定の時間しきい値以下となったと判定した場合、当該第1の情報処理装置に関するセッション情報を前記セッション情報記憶部から前記セッション情報キャッシュにコピーするセッション情報管理部と、
     前記第1の情報処理装置からデータを受信したときに、前記セッション情報記憶部を参照して送信元に対応する前記セッション情報を取得し、当該セッション情報に基づいて受信したデータを送信先へ転送する転送処理部と、
    を備えている通信制御装置と、
    を有する情報処理システム。
    A plurality of first information processing devices;
    At least one second information processing device performing data communication with the first information processing device;
    Data communication between the first information processing apparatus and the second information processing apparatus is connected to the plurality of first information processing apparatuses and the second information processing apparatus in a communicable manner. A communication control device that mediates,
    Communication period data, which is time interval information for performing data communication from the transmission source in each of the first information processing apparatuses to the second information processing apparatus, is stored for each of the first information processing apparatuses. A communication cycle data storage unit;
    Last access time information that is information indicating the last time when data communication from the first information processing apparatus was executed, the last access time information regarding a certain first information processing apparatus, and the first information processing Next access time point information, which is information indicating a time point at which the first information processing device next executes data communication, calculated from the communication cycle data acquired from the communication cycle data storage unit with respect to the device, A session information storage unit storing a session associated with specific information related to data communication between the transmission source and the second information processing apparatus;
    A session information cache configured with a storage device faster than a storage device constituting the session information storage unit;
    Based on the next access time point information relating to each of the first information processing devices stored in the session information storage unit, the data communication execution time point from the first information processing device is a predetermined time threshold from the present time point. Session information for continuously determining whether or not the value has become below or below a predetermined time threshold value, and copying session information on the first information processing apparatus from the session information storage unit to the session information cache The management department,
    When data is received from the first information processing apparatus, the session information storage unit is referred to obtain the session information corresponding to the transmission source, and the received data is transferred to the transmission destination based on the session information A transfer processing unit,
    A communication control device comprising:
    An information processing system.
PCT/JP2013/068539 2013-07-05 2013-07-05 Communication control device, method for controlling communication control device, and information processing device WO2015001671A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/068539 WO2015001671A1 (en) 2013-07-05 2013-07-05 Communication control device, method for controlling communication control device, and information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/068539 WO2015001671A1 (en) 2013-07-05 2013-07-05 Communication control device, method for controlling communication control device, and information processing device

Publications (1)

Publication Number Publication Date
WO2015001671A1 true WO2015001671A1 (en) 2015-01-08

Family

ID=52143287

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/068539 WO2015001671A1 (en) 2013-07-05 2013-07-05 Communication control device, method for controlling communication control device, and information processing device

Country Status (1)

Country Link
WO (1) WO2015001671A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019153189A (en) * 2018-03-05 2019-09-12 株式会社日立製作所 Server for caching session information set, and cache control method of session information set
CN111324632A (en) * 2018-12-17 2020-06-23 Sap欧洲公司 Transparent database session recovery with client-side caching
JP2021039585A (en) * 2019-09-04 2021-03-11 株式会社日立製作所 Method for controlling connection with client or server

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001177553A (en) * 1999-12-16 2001-06-29 Nec Corp Data communication method, client, server and recording medium with communication program recorded thereon
JP2004235904A (en) * 2003-01-29 2004-08-19 Nec Commun Syst Ltd Apparatus, system, method, and program for managing session information

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001177553A (en) * 1999-12-16 2001-06-29 Nec Corp Data communication method, client, server and recording medium with communication program recorded thereon
JP2004235904A (en) * 2003-01-29 2004-08-19 Nec Commun Syst Ltd Apparatus, system, method, and program for managing session information

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019153189A (en) * 2018-03-05 2019-09-12 株式会社日立製作所 Server for caching session information set, and cache control method of session information set
CN111324632A (en) * 2018-12-17 2020-06-23 Sap欧洲公司 Transparent database session recovery with client-side caching
JP2020098598A (en) * 2018-12-17 2020-06-25 エスアーペー エスエー Transparent database session recovery with client-side caching
JP7104016B2 (en) 2018-12-17 2022-07-20 エスアーペー エスエー Transparent database session recovery with client-side cache
CN111324632B (en) * 2018-12-17 2023-10-20 Sap欧洲公司 Transparent database session restoration with client-side caching
JP2021039585A (en) * 2019-09-04 2021-03-11 株式会社日立製作所 Method for controlling connection with client or server
US11611546B2 (en) 2019-09-04 2023-03-21 Hitachi, Ltd. Method for controlling connection with client or server
JP7300347B2 (en) 2019-09-04 2023-06-29 株式会社日立製作所 How to control connections with clients or servers

Similar Documents

Publication Publication Date Title
JP4740897B2 (en) Virtual network configuration method and network system
US10146702B2 (en) Memcached systems having local caches
CN105531675B (en) Computer storage medium, distributed system and its control method and node
CN106933775B (en) Data processing system and method for data processing
US8321862B2 (en) System for migrating a virtual machine and resource usage data to a chosen target host based on a migration policy
US10936454B2 (en) Disaster recovery for virtualized systems
CN111078607B (en) Network access programming framework deployment method and system for RDMA (remote direct memory access) and nonvolatile memory
US10382258B2 (en) Viral system discovery and installation for distributed networks
CN102035862A (en) Configuration node fault transfer method and system in SVC cluster
US9092366B2 (en) Splitting direct memory access windows
JP6293086B2 (en) Deduplication of receiver-side data in data systems
CN106855834B (en) Data backup method, device and system
CN109690518A (en) The system and method for the edge cloud storage and caching system that operate on a local area network are provided
US11095608B2 (en) Cross protocol association for internet addresses for metadata association systems and methods
US20150106468A1 (en) Storage system and data access method
WO2017095820A1 (en) Methods and devices for acquiring data using virtual machine and host machine
CN109992566A (en) A kind of file access method, device, equipment and readable storage medium storing program for executing
JP2019016042A (en) Data acquisition program, device, and method
WO2015001671A1 (en) Communication control device, method for controlling communication control device, and information processing device
US20150058593A1 (en) Merging direct memory access windows
CN113746641B (en) ODX protocol processing method based on distributed storage
WO2013153694A1 (en) Communication device, method, and system for relaying communication between client and server
US10523741B2 (en) System and method for avoiding proxy connection latency
WO2012171363A1 (en) Method and equipment for data operation in distributed cache system
WO2018214792A1 (en) Method and device for traffic control of user equipment

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13888565

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP