Network control system and program
The network control system addresses initial synchronization loads in real-time communication by managing data transfer between real-time and non-real-time networks, optimizing data distribution to new clients and avoiding capacity limitations through congestion management and compression techniques.
Patent Information
- Application Number
- JP2023107578
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-06-29
- Publication Date
- 2025-01-17
AI Technical Summary
Real-time network communication systems face initial synchronization loads and network capacity limitations during mode switching, leading to delays, disconnections, and inefficient use of transfer capacity due to the distribution of unnecessary information to all clients, especially in multi-person connections.
A network control system that utilizes a communication control device to manage data communication between real-time and non-real-time networks, transferring initial synchronization information via the non-real-time network, employing congestion detection, storage, compression, and the Nagle algorithm to optimize data transfer and avoid initial synchronization loads.
Effectively avoids initial synchronization loads and optimizes network transfer capacity by reducing unnecessary data distribution, ensuring high responsiveness and efficient use of network resources without waste.
Smart Images

Figure 2025006655000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a network control system and a program. [Background technology]
[0002] 2. Description of the Related Art In recent years, with remarkable progress in network communications, network communications are expected to be applicable to a wide variety of uses and purposes in many fields. In the following description, "network communication" refers to all communication technologies for exchanging data via the Internet.
[0003] In network communications, there is a technique called multicast that enables batch data transmission. By using this multicast, it becomes possible to simultaneously transmit data to a large number of clients at the same time with the cost of a single transmission process. However, although multicast is currently available in local area networks, communication via the Internet requires the use of a multicast-enabled Internet Service Provider (ISP), and also requires multicast-enabled router equipment, so although a standard exists, it is difficult to select and use it as a general technology. Therefore, currently, a network cache technology called Content Delivery Network (CDN) is being used as an alternative network technology.
[0004] Network communications include unicast communications for one-to-one communication, multicast communications for one-to-many communication, and broadcast communications. However, as mentioned above, it is not realistic to use multicast communication via the Internet, and broadcast communication is also a technology intended for communication within the same local area network without using the Internet.
[0005] In a network service that provides information processing via the Internet, a system is configured with a client, which is a communication device on the user side of the network service, and a server, which is the provider side of the network service. In addition, to distinguish it from real-time network communication described later, it will be referred to as "general network communication" (non-real-time network communication) hereinafter. An example of "general network communication" (non-real-time network communication) is HTTP (Hypertext Transfer Protocol) communication. The HTTP communication referred to here refers to HTTP / 1.0, HTTP / 1.1, HTTP / 2, HTTP / 3, and their data exchange procedures, related protocols, and derived protocols.
[0006] In general network communications, data compression to reduce the size of communication data and data accumulation to reduce the number of communications by accumulating a certain amount of data before sending it are often used to reduce the frequency of communication and improve efficiency. By using such technologies, the efficiency of the communication data size per communication can be improved, and communication costs can be reduced. Specifically, communication efficiency algorithms such as the Nagle algorithm are mainly used.
[0007] Moreover, the above-mentioned data compression and data storage are both carried out in the "communication blank" portion where no communication is performed, which is generated by reducing the frequency of communication. However, on the other hand, as communication frequency increases, the margins decrease, and if these efficiency-improving processes are carried out during the time that should be spent actually processing data communication, this can actually result in delays. For this reason, in general network communications, it is recommended to keep communication frequency as low as possible. In addition, general network communications are characterized by being better suited to one-to-one individual communication than one-to-many bulk distribution.
[0008] Stream network communication refers to communication protocols such as Real Time Streaming Protocol (RTSP) and Real Time Messaging Protocol (RTMP) that are used for video and audio distribution. It delivers continuous data in large volumes and at high frequency to many users at once. In order to be able to withstand simultaneous distribution for large-scale viewing, variations in delay between viewers are tolerated. For example, when a certain event is broadcast live, it is almost impossible for the event to be broadcast to all viewers at exactly the same time. Since it is designed to tolerate delays, it has the distinctive feature of being easily used to improve communication efficiency through data compression and data storage technologies such as network caches like CDN.
[0009] Real-time network communication refers to network communication that exchanges large amounts of data with participants at a very high frequency. It is often used in systems that allow two people to talk to each other through video conferencing systems, or in systems that allow for sharing space in VR or games, enabling highly responsive communication between people. Real-time network communications require highly responsive communications, and therefore have the characteristic that delays are not tolerated (see, for example, Patent Document 1). For example, TCP, UDP, TLS, DTLS, QUIC and their data exchange procedure procedures, related protocols, derived protocols, etc. are used. In order to increase responsiveness, there is a tendency to use lower layer protocols that require less modification.
[0010] In general network communications, it is possible to make heavy use of data compression and data storage to improve efficiency by reducing the frequency of communication. The Nagle algorithm is a transmission technique that improves data transmission efficiency by packing all data into the data area that can be loaded into a packet and transmitting the packet. In today's "general network communications," it is common to use a compression technique based on the Nagle algorithm and a storage technique in combination, as shown in FIG. In other words, when considering the transmission costs incurred for sending one packet, packing as much data as possible into the packet and sending it will reduce the transmission cost per amount of data sent, and as a result, the net total amount of data that can be sent will increase. On the other hand, due to the characteristics of the Nagle algorithm shown in Figure 11, the use of the Nagle algorithm sacrifices responsiveness and tolerates delays, but in exchange improves the reliability of reachability per communication and the efficiency of communication data size. In contrast, real-time network communications are characterized by extremely high communication frequency and very little communication space. For this reason, techniques such as bulk transmission by accumulating data or compression techniques are difficult to use because they actually cause delays, and so the Nagle algorithm is often disabled in real-time network communications.
[0011] When sending the same data to multiple people, using batch transmission is less likely to cause delays. FIG. 12 is a diagram showing an overview of bulk network distribution in a real-time network. As shown in the diagram, within a real-time network service, for example, when client terminal A transmits data (1), the data transmitted from client terminal A is distributed (2) to all client terminals A to N. In other words, data can be delivered to many clients more quickly because it is delivered to all clients at once without any computational processing such as identifying the destination. Therefore, this can be said to be an efficient method in cases where the client's position and status need to be synchronized with other clients in real time. In addition, by using this mechanism, all clients can constantly exchange information about each other's latest status and stay synchronized.
[0012] FIG. 13 is a diagram showing an overview of individual network distribution in a real-time network. As shown in the figure, when a client sends data (1) within a real-time network service, the data is distributed to a specific client (2). In other words, data that is to be sent only to a specific client uses individual network communication rather than bulk network communication. The purpose of individual network distribution is different from the state synchronization of bulk network communication, and is often used for processing linked to the actions of specific clients. For sending clients, complex destination designs for not just one but two or three clients should be avoided as much as possible, as this leads to a decrease in overall sending efficiency. Even in cases like the one above, the entire series of operations is often implemented using "bulk network communication."
[0013] In individual network distribution, a method of sending different data to each user requires calculations to be performed to determine the destination at the time of transmission, which can easily cause delays, especially in real-time network communications, and therefore is not widely used. To explain this in detail with reference to FIG. 14, in real-time network communication, there is an upper limit to the number of events that can be issued for communication processing per unit time. Both individual network communications and batch network communications consume these valuable event counts. Therefore, if "individual network communication" is used frequently, it will lead to a reduction in the amount of data that can be sent through "bulk network communication." In addition, complex destination design also creates delays due to calculation processing, which leads to a decrease in overall transmission efficiency. Due to these circumstances, the excessive use of individual network communications is being refrained from, and collective network communications are being used whenever possible.
[0014] For this reason, as a rule, data often takes the form of a broadcast distribution, where data is sent to all participants in real-time network communication. For example, a similar concept is used for network devices such as switching hubs, which, as a rule, transmit all communications in bulk in order to speed up network communications. Specifically, in the case of a switching hub, the machine that receives data from the switching hub is designed to discard data that is not intended for it. Therefore, bulk transmission is one of the mechanisms that ensures responsiveness in real-time network communications.
[0015] In stream network communication, all that is required is that video and audio distribution can be performed normally, so there should be no problems with continuous data reception, and as mentioned above, delays in the start of transmission itself are not a problem. For this reason, stream network communication has the advantage that it is easier to improve efficiency by compressing data or storing data and sending it all at once. On the other hand, in real-time network communications, if there is a delay in the data reception start time for each user, it becomes difficult to carry out normal communication when a communication requiring immediate response occurs. For this reason, in real-time network communications, delays in continuous data reception are not permitted, and delays in the data transmission start time itself are also not permitted.
[0016] While real-time network communication is a technology with high expectations, there are many cases where companies use technologies that are obviously not responsive, and use them in exaggerated advertising as "real-time network communication" for the convenience of their sales strategies. In addition, the exact interpretation of the term varies widely depending on the organization or individual, making it difficult to use the term in patent documents, where accuracy is required. Therefore, for the sake of convenience, "real-time network communication" in the following will refer to network communication that meets the following criteria. Network communications that have "disabled" the Nagle algorithm or equivalent technology As long as this requirement is met, regardless of the protocol or method, it will be referred to as "real-time network communication" from here on.
[0017] For convenience of explanation, in contrast to "real-time network communication," "non-real-time network communication" hereinafter will be used to refer to network communication that satisfies the following: Network communications that "enable" the Nagle algorithm or equivalent technology As long as this condition is met, regardless of the protocol or method, hereafter this will be referred to as "non-real-time network communication." [Prior art documents] [Patent documents]
[0018] [Patent Document 1] JP 2005-169138 A Summary of the Invention [Problem to be solved by the invention]
[0019] In real-time network communications, regardless of the system, participants first go through a procedure similar to mode switching in order to enable highly responsive communication with each other. This depends on the product, but mode switching is often done using the following expressions: - Entering and exiting a dedicated virtual room that performs real-time network communication. · Subscribe and unsubscribe from dedicated channels for real-time network communications. After switching modes, participants who are in the same room or who subscribe to the same channel will be able to carry out highly responsive and real-time network communication with each other. Furthermore, as long as a similar procedure is followed to perform real-time network communication, the expression is not limited to this. Hereinafter, the above process will be referred to as "mode switching."
[0020] In real-time network communication, when a new client switches modes to perform real-time network communication, it obtains the latest information from clients already participating in the real-time network communication. This initial synchronization process is hereinafter referred to as "initial synchronization." Generally, initial synchronization is performed as follows. Initial synchronization may be performed using bulk network distribution of the real-time network. In this case, unnecessary information that already exists for other clients is distributed, consuming communication bandwidth that could have been used for communication and reducing the distribution performance of the entire real-time network. Initial synchronization may be performed using individual network distribution of the real-time network. In this case, the number of events that can be issued by the real-time network is consumed, thereby degrading the distribution performance of the entire real-time network. In order to prevent a decline in the delivery performance of the real-time network, initial synchronization may not be performed and the minimum necessary information may be obtained only when it becomes necessary. This may result in visual discomfort, such as other clients suddenly appearing on the display.
[0021] In multi-party real-time network communication, real-time network communication is carried out in a multi-party simultaneous connection state with 100 to 10,000 participants or more. In addition, normal real-time network communication is often assumed to involve around 5 to 20 people. As a result, the technical hurdles that existed beforehand make it even more difficult to introduce high-speed real-time network communications.
[0022] Here, in multi-user real-time network communication, there is a load called an initial synchronization network load. The initial synchronization network load refers to a temporary high load state that occurs when a new client joins a real-time network service to which a large number of client terminals are already connected, during the process of collecting information on all participants in that room or channel, as shown in Figure 15. Hereinafter, the above load will be referred to as the "initial synchronization load."
[0023] The new client terminal X does not know the latest state of the real-time network service. Therefore, in order to grasp the latest status, the new client terminal X requests (1) all client terminals to obtain the latest information. The request for obtaining the latest information is distributed to all client terminals (2) using the bulk network communication of the real-time network service.
[0024] As shown in FIG. 16, in response to a request for obtaining the latest information received from new client terminal X, all participating client terminals respond with their respective latest information (1). The latest information is then distributed to all clients via collective network communication (2). In other words, in the initial synchronization, although the data size is likely to be large, the initial synchronization information of all clients is distributed to all client terminals. On the other hand, only the new client terminal X needs the initial synchronization data, and the other client terminals already have the synchronization information, so unnecessary information will be transmitted.
[0025] When an initial synchronization load occurs, the chances of hitting the network capacity limit increase, particularly in the case of multi-user real-time network communication. When the network capacity limit is reached, the overflowing data may be treated as missing data or a retry process may be performed to try to retrieve it again. However, if this communication cannot be performed, the following issues will occur frequently: -Delays in overall real-time network communication due to communication failures -Frequent disconnections due to communication failures
[0026] A particularly problematic aspect of this initial synchronization network load is that, even though the estimated data size leaves a considerable margin for the actual number of people who can be connected, the initial synchronization network load often causes problems such as the inability to connect new real-time network communication participants and forced disconnections of existing real-time network communication participants, even when the number of participants is far short of the upper limit.
[0027] Therefore, the present invention has been made in consideration of the above-mentioned problems, and has an object to provide a network control system and program that avoids the initial synchronization load and efficiently utilizes a given network transfer capacity limit. [Means for solving the problem]
[0028] Form 1: One or more embodiments of the present invention propose a network control system comprising a plurality of client terminals, a real-time network connecting the plurality of client terminals, a non-real-time network connecting the plurality of client terminals, and a communication control device controlling data communication between the real-time network and the non-real-time network, wherein in an initial synchronization step at the time of mode switching when a new client terminal connects to the real-time network, when the communication control device receives information of a new client as an initial synchronization request from the new client terminal, the communication control device transmits the latest information of the plurality of clients connected to the real-time network to the new client terminal via the non-real-time network.
[0029] Mode 2: One or more embodiments of the present invention propose a network control system, characterized in that the communication control device includes a detection unit that detects a congestion state of the real-time network when it receives information of a new client as an initial synchronization request from the new client terminal in an initial synchronization step at the time of mode switching when a new client terminal connects to the real-time network, and a judgment unit that judges whether the congestion state is equal to or greater than a reference congestion level, and when the judgment unit judges that the congestion state is equal to or greater than the reference congestion level, the communication control device transmits latest information of a plurality of clients connected to the real-time network to the new client terminal via the non-real-time network.
[0030] Mode 3: One or more embodiments of the present invention propose a network control system characterized in that the communication control device is provided with a memory unit that stores the latest information of the multiple clients connected to the real-time network.
[0031] Mode 4: One or more embodiments of the present invention propose a network control system characterized in that the communication control device includes a compression unit that compresses the latest information of the multiple clients connected to the real-time network stored in the memory unit.
[0032] Mode 5: One or more embodiments of the present invention propose a network control system characterized in that, when the communication control device receives information about a new client as an initial synchronization request from the new client terminal, the communication control device uses a Nagle algorithm to transmit the latest information about multiple clients connected to the real-time network to the new client terminal via the non-real-time network.
[0033] Form 6: One or more embodiments of the present invention propose a program for causing a computer to execute a network control method in a network control system including a plurality of client terminals, a real-time network connecting the plurality of client terminals, a non-real-time network connecting the plurality of client terminals, and a communication control device for controlling data communication between the real-time network and the non-real-time network, wherein the communication control device proposes a client information receiving step for receiving information of a new client as an initial synchronization request from the new client terminal in an initial synchronization step at the time of mode switching when a new client terminal connects to the real-time network, and an information transmitting step for transmitting the latest information of a plurality of clients connected to the real-time network to the new client terminal via the non-real-time network.
[0034] Form 7: One or more embodiments of the present invention propose a program comprising: a congestion state detection step of detecting a congestion state of the real-time network; and a judgment step of judging whether the congestion state is equal to or greater than a reference congestion level, and if the congestion state is judged to be equal to or greater than a reference congestion level in the judgment step, the communication control device transmits, in the information transmission step, the latest information of a plurality of clients connected to the real-time network to the new client terminal via the non-real-time network.
[0035] Mode 8: One or more embodiments of the present invention propose a program characterized in that the communication control device includes an information storage step of storing the latest information of the multiple clients connected to the real-time network before the information transmission step.
[0036] Mode 9: One or more embodiments of the present invention propose a program characterized in that the communication control device includes an information compression step for compressing the latest information of the multiple clients connected to the real-time network that is stored.
[0037] Form 10: One or more embodiments of the present invention propose a program characterized in that, in the information transmitting step, the communication control device uses a Nagle algorithm to transmit to the new client terminal the latest information of a plurality of clients connected to the real-time network via the non-real-time network, and the new client terminal uses a Nagle algorithm to transmit information of the new client to the communication control device as an initial synchronization request. Effect of the Invention
[0038] According to one or more embodiments of the present invention, it is possible to avoid the initial synchronization load and to efficiently utilize the given network transfer capacity limit. [Brief description of the drawings]
[0039] [Figure 1] 1 is a diagram showing a configuration of a network control system according to a first embodiment of the present invention. [Diagram 2] 1 is a diagram illustrating a configuration of a communication control device according to a first embodiment of the present invention. [Diagram 3] FIG. 2 is a diagram showing a processing flow of the network control system according to the first embodiment of the present invention. [Figure 4] FIG. 11 is a diagram showing a configuration of a network control system according to a second embodiment of the present invention. [Diagram 5] FIG. 11 is a diagram illustrating a configuration of a communication control device according to a second embodiment of the present invention. [Figure 6] FIG. 11 is a diagram showing a processing flow of a network control system according to a second embodiment of the present invention. [Figure 7] FIG. 11 is a diagram showing a configuration of a network control system according to a third embodiment of the present invention. [Figure 8] FIG. 11 is a diagram illustrating a configuration of a communication control device according to a third embodiment of the present invention. [Figure 9] FIG. 11 is a diagram showing a processing flow of a network control system according to a third embodiment of the present invention. [Figure 10] FIG. 1 is a diagram for explaining the advantages of the Nagle algorithm. [Figure 11] FIG. 1 illustrates the relationship between the Nagle algorithm and real-time networks. [Figure 12] FIG. 1 is a diagram showing an overview of batch network distribution in a real-time network. [Figure 13] FIG. 1 is a diagram showing an overview of individual network distribution in a real-time network. [Figure 14] FIG. 1 is a diagram for explaining the reason why individual network delivery cannot be used extensively in a real-time network. [Figure 15] FIG. 1 is a diagram showing an initial synchronization load that occurs in real-time network communication. [Figure 16] FIG. 1 is a diagram showing an initial synchronization load that occurs in real-time network communication. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0040] The network control system according to this embodiment will be described with reference to FIGS.
[0041] <First embodiment> A network control system 1 according to the present embodiment will be described with reference to FIGS. 1 to 3. FIG.
[0042] <About Network Control System 1> The network control system 1 according to this embodiment includes a communication control device 100, client terminals 200A to 200N, a new client terminal 200X, a real-time network 300, and a non-real-time network 400, as shown in FIG.
[0043] The communication control device 100 is disposed, for example, on a cloud and controls communication between the client terminals 200A-200N and the new client terminal 200X, or between the client terminals 200A-200N and the new client terminal 200X, via a real-time network 300 or a non-real-time network 400. For example, in an initial synchronization step at the time of mode switching when a new client terminal 200X connects to the real-time network 300, when the communication control device 100 receives information about the new client as an initial synchronization request from the new client terminal 200X, the communication control device 100 causes the new client terminal 200X to transmit the latest information about multiple clients connected to the real-time network 300 via the non-real-time network 400. The configuration of the communication control device 100 will be described in detail later. In the following description, the communication control device 100 may be a server, or some of the client terminals 200A to 200N may take on this role. In this embodiment and the following embodiments, the communication control device 100 will be described by taking as an example the case where it controls communications in the non-real-time network 400 and the real-time network 300 as described above. However, in this embodiment and the following embodiments, the communication control device 100 may perform the same functions as described above by performing inter-memory communication in the non-real-time network 400 and the real-time network 300 that are connected to each other.
[0044] The client terminals 200A to 200N are terminals owned by clients who are already connected to the real-time network 300, and are personal computers, tablets, smartphones, VR, AR or MR devices, or the like.
[0045] The new client terminal 200X is a terminal owned by a client that newly connects to the real-time network 300 to which the client terminals 200A to 200N are already connected, and is a personal computer, a tablet, a smartphone, a VR, AR or MR device, or the like. The new client terminal 200X, for example, transmits its own information to the communication control device 100 as an initial synchronization request, and receives the latest information of multiple clients connected to the real-time network 300 from the communication control device 100 via the non-real-time network 400.
[0046] The real-time network 300 is a network in which clients exchange large amounts of data with high frequency. The real-time network 300 is connected to a non-real-time network 400 (described later) via the communication control device 100. Hereinafter, the real-time network 300 refers to a network that does not tolerate delays, can achieve high responsiveness, and has the Nagle algorithm or an equivalent technology "disabled."
[0047] To clearly distinguish the non-real-time network 400 from the real-time network 300, the non-real-time network 400 is referred to as a network that is "enabled" with the Nagle algorithm or an equivalent technique. The non-real-time network 400 is connected to the real-time network 300 via the communication control device 100 .
[0048] <Configuration of communication control device 100> As shown in FIG. 2, the communication control device 100 includes a receiving unit 110, a transmitting unit 120, a storage unit 130, a compressing unit 140, and a control unit 150.
[0049] The receiving unit 110 receives information about the new client from the new client terminal 200X, for example, as an initial synchronization request. The receiving unit 110 receives, for example, the latest information of a plurality of clients from the client terminals 200A to 200N connected to the real-time network 300 via the real-time network 300. The information on new clients received by the receiving unit 110 and the latest information on multiple clients from the client terminals 200A to 200N connected to the real-time network 300 are output to the control unit 150 described later, and the latest information on multiple clients from the client terminals 200A to 200N connected to the real-time network 300 is stored in the memory unit 130 described later by the control unit 150.
[0050] The transmitting unit 120 transmits the latest information of a plurality of clients connected to the real-time network 300 to the new client terminal 200X via the non-real-time network 400 based on, for example, a control signal from the control unit 150 described later.
[0051] The storage unit 130 is, for example, a rewritable volatile memory such as a static random access memory (SRAM) or a dynamic random access memory (DRAM). In the storage unit 130, for example, storage areas corresponding to the multiple client terminals 200A to 200N and storage areas for storing information on new clients are defined, and the latest information on multiple clients from the client terminals 200A to 200N connected to the real-time network 300 received by the receiving unit 110 is overwritten and updated with the latest information for each client every time it is received. Alternatively, the data received for each client is accumulated in a form of being added and updated every time it is received.
[0052] The compression unit 140 compresses the latest information of the multiple clients stored in the storage unit 130 into one data group. The data group compressed by the compression unit 140 is output to the control unit 150 described later, and the latest information of multiple clients connected to the real-time network 300 is transmitted from the transmission unit 120 to the new client terminal 200X via the non-real-time network 400.
[0053] The control unit 150 controls the overall operation of the network control system 1 in accordance with a control program stored in a ROM (Read Only Memory) or the like. Specifically, the control unit 150 executes reception control of the receiving unit 110, transmission control of the transmitting unit 120, writing and reading data to the storage unit 130, compression control of the compressing unit 140, and the like. In addition, when the receiving unit 110 receives information about a new client as an initial synchronization request from a new client terminal, the control unit 150 controls the transmitting unit 120 to use the Nagle algorithm to transmit the latest information about multiple clients connected to the real-time network 300 to the new client terminal 200X via the non-real-time network 400.
[0054] <Processing of communication control device 100> The processing of the network control system 1 according to this embodiment will be described with reference to FIG.
[0055] The receiving unit 110 receives information about the new client from the new client terminal 200X as an initial synchronization request (step S110). The information on the new client received by the receiving unit 110 (new client information) is output to the control unit 150.
[0056] The receiving unit 110 receives the latest information of a plurality of clients from the client terminals 200A to 200N connected to the real-time network 300 (step S120). The receiving unit 110 outputs to the control unit 150 the latest information (latest information) of the multiple clients from the client terminals 200A to 200N connected to the real-time network that it receives.
[0057] The control unit 150 performs a process of writing the latest information of the multiple clients from the client terminals 200A-200N connected to the real-time network input from the receiving unit 110 to memory areas corresponding to the multiple client terminals 200A-200N provided in the memory unit 130, thereby updating the information in the memory areas corresponding to the multiple client terminals 200A-200N (step S130).
[0058] When the control unit 150 receives information about a new client from the receiving unit 110, the control unit 150 reads out the latest information about the multiple clients in the memory areas corresponding to the multiple client terminals 200A to 200N provided in the memory unit 130, outputs the information to the compression unit 140, and also outputs a control signal to compress the information. The compression unit 140 compresses the input group of latest information and outputs it to the control unit 150 (step S140).
[0059] The control unit 150 outputs the compressed group of latest information input from the compression unit 140 to the transmission unit 120, and also transmits a control signal via the non-real-time network 400 to instruct the transmission unit 120 to transmit the latest information of multiple clients connected to the real-time network 300 to the new client terminal 200X (step S160). At this time, the control unit 150 may cause the transmission unit 120 to transmit information using the Nagle algorithm.
[0060] <Actions and Effects> As described above, the network control system 1 of this embodiment includes a plurality of client terminals 200A-200N, a real-time network 300 connecting the plurality of client terminals 200A-200N, a non-real-time network 400 connecting the plurality of client terminals 200A-200N, and a communication control device 100 that controls data communication between the real-time network 300 and the non-real-time network 400. When the communication control device 100 receives information of a new client as an initial synchronization request from the new client terminal 200X in an initial synchronization step at the time of mode switching when the new client terminal 200X connects to the real-time network 300, the communication control device 100 transmits the latest information of the plurality of clients connected to the real-time network 300 to the new client terminal 200X via the non-real-time network 400. In other words, in the initial synchronization step at the time of mode switching when the new client terminal 200X connects to the real-time network 300, the communication control device 100 causes the new client terminal 200X to transmit the latest information of multiple clients connected to the real-time network 300 via the non-real-time network 400. Therefore, the initial synchronization load can be effectively avoided, and the predetermined network transfer capacity limit can be utilized without waste.
[0061] The communication control device 100 of the network control system 1 according to this embodiment includes a memory unit 130 that stores the latest information of multiple clients connected to the real-time network 300, and a compression unit 140 that compresses the latest information of multiple clients connected to the real-time network 300 stored in the memory unit 130. In other words, the memory unit 130 stores the latest information of multiple clients connected to the real-time network 300, and the compression unit 140 compresses the latest information of multiple clients connected to the real-time network 300 stored in the memory unit 130. Then, the transmitting unit 120 transmits the compressed latest information of the multiple clients connected to the real-time network 300 via the non-real-time network 400 to the new client terminal 200X. Therefore, the initial synchronization load can be effectively avoided, and the predetermined network transfer capacity limit can be utilized without waste.
[0062] When the communication control device 100 of the network control system 1 of this embodiment receives information about a new client as an initial synchronization request from the new client terminal, the communication control device 100 uses the Nagle algorithm to transmit the latest information about multiple clients connected to the real-time network to the new client terminal 200X via the non-real-time network 400. Therefore, the initial synchronization load can be effectively avoided, and the predetermined network transfer capacity limit can be utilized without waste.
[0063] <Second embodiment> A network control system 1A according to this embodiment will be described with reference to FIGS.
[0064] <About Network Control System 1A> A network control system 1A according to this embodiment includes a communication control device 100A, client terminals 200A to 200N, a new client terminal 200X, a real-time network 300, and a non-real-time network 400, as shown in FIG. In addition, since the components having the same reference numerals as those in the first embodiment have the same functions, detailed description thereof will be omitted.
[0065] For example, in an initial synchronization step at the time of mode switching when a new client terminal 200X connects to the real-time network 300, when the communication control device 100A receives information about the new client as an initial synchronization request from the new client terminal 200X, the communication control device 100A causes the new client terminal 200X to transmit the latest information about multiple clients connected to the real-time network 300 via the non-real-time network 400. The configuration of the communication control device 100A will be described in detail later.
[0066] <Configuration of communication control device 100A> As shown in FIG. 5, the communication control device 100A includes a receiving unit 110, a transmitting unit 120, a storage unit 130, a compressing unit 140, and a control unit 150A. In addition, since the components having the same reference numerals as those in the first embodiment have the same functions, detailed description thereof will be omitted.
[0067] The control unit 150A controls the overall operation of the network control system 1A in accordance with a control program stored in a ROM (Read Only Memory) or the like. In this embodiment, when the control unit 150A receives information about a new client as an initial synchronization request from the new client terminal 200X during an initial synchronization step at the time of mode switching when the new client terminal 200X connects to the real-time network 300, the control unit 150A causes the new client terminal 200X to transmit the latest information about multiple clients connected to the real-time network via the non-real-time network 400. In addition, when the receiving unit 110 receives information about a new client as an initial synchronization request from a new client terminal, the control unit 150A controls the transmitting unit 120 to use the Nagle algorithm to transmit the latest information about multiple clients connected to the real-time network to the new client terminal 200X via the non-real-time network 400.
[0068] <Processing of the communication control device 100A> The processing of the network control system 1A according to this embodiment will be described with reference to FIG.
[0069] The receiving unit 110 receives information about the new client from the new client terminal 200X as an initial synchronization request (step S110). The information on the new client received by the receiving unit 110 (new client information) is output to the control unit 150.
[0070] The receiving unit 110 receives the latest information of a plurality of clients from the client terminals 200A to 200N connected to the real-time network 300 (step S120). The receiving unit 110 outputs to the control unit 150 the latest information (latest information) of the multiple clients from the client terminals 200A to 200N connected to the real-time network that it receives.
[0071] The control unit 150A performs a process of writing the latest information of the multiple clients from the client terminals 200A-200N connected to the real-time network input from the receiving unit 110 to memory areas corresponding to the multiple client terminals 200A-200N provided in the memory unit 130, thereby updating the information in the memory areas corresponding to the multiple client terminals 200A-200N (step S130).
[0072] When the control unit 150A receives information about a new client from the receiving unit 110, it reads out the latest information about the multiple clients in the memory areas corresponding to the multiple client terminals 200A to 200N provided in the memory unit 130, outputs the information to the compression unit 140, and also outputs a control signal to compress the information. The compression unit 140 compresses the input group of latest information and outputs it to the control unit 150 (step S140).
[0073] The control unit 150A outputs the compressed group of latest information input from the compression unit 140 to the transmission unit 120, and also transmits a control signal via the non-real-time network 400 to instruct the transmission unit 120 to transmit the latest information of multiple clients connected to the real-time network 300 to the new client terminal 200X (step S210).
[0074] <Actions and Effects> As described above, the network control system 1A of this embodiment includes a plurality of client terminals 200A-200N, a real-time network 300 connecting the plurality of client terminals 200A-200N, a non-real-time network 400 connecting the plurality of client terminals 200A-200N, and a communication control device 100A that controls data communication between the real-time network 300 and the non-real-time network 400. When the communication control device 100A receives information of a new client as an initial synchronization request from the new client terminal 200X in an initial synchronization step at the time of mode switching when the new client terminal 200X connects to the real-time network 300, the communication control device 100A transmits the latest information of the plurality of clients connected to the real-time network 300 to the new client terminal 200X via the non-real-time network 400. In other words, in the initial synchronization step at the time of mode switching when the new client terminal 200X connects to the real-time network 300, the communication control device 100A causes the new client terminal 200X to transmit the latest information of multiple clients connected to the real-time network 300 via the non-real-time network 400. Therefore, the initial synchronization load can be effectively avoided, and the predetermined network transfer capacity limit can be utilized without waste.
[0075] When the communication control device 100A of the network control system 1A in this embodiment receives information about a new client as an initial synchronization request from the new client terminal, the communication control device 100A uses the Nagle algorithm to transmit the latest information about multiple clients connected to the real-time network to the new client terminal 200X via the non-real-time network 400. Therefore, the initial synchronization load can be effectively avoided, and the predetermined network transfer capacity limit can be utilized without waste.
[0076] <Third embodiment> A network control system 1B according to this embodiment will be described with reference to FIGS.
[0077] <About Network Control System 1B> A network control system 1B according to this embodiment includes a communication control device 100B, client terminals 200A to 200N, a new client terminal 200X, a real-time network 300, and a non-real-time network 400, as shown in FIG. In addition, since the components having the same reference numerals as those in the first and second embodiments have the same functions, detailed description thereof will be omitted.
[0078] For example, in an initial synchronization step at the time of mode switching when a new client terminal 200X connects to the real-time network 300, when the communication control device 100B receives information of a new client from the new client terminal 200X as an initial synchronization request, if it determines that the congestion state in the real-time network 300 is equal to or greater than a reference congestion level, it causes the new client terminal 200X to transmit the latest information of multiple clients connected to the real-time network 300 via the non-real-time network 400. The configuration of the communication control device 100B will be described in detail later.
[0079] <Configuration of communication control device 100B> As shown in FIG. 8, the communication control device 100B includes a receiving unit 110, a transmitting unit 120, a storage unit 130, a compressing unit 140, a control unit 150B, a detecting unit 160, and a determining unit 170. In addition, since the components having the same reference numerals as those in the first and second embodiments have the same functions, detailed description thereof will be omitted.
[0080] The detection unit 160 detects a congestion state of the real-time network 300 when receiving information of a new client as an initial synchronization request from the new client terminal 200X in an initial synchronization step at the time of mode switching when the new client terminal 200X connects to the real-time network 300. The detection result in the detection unit 160 is output to the determination unit 170, which will be described later.
[0081] The determining unit 170 determines whether the congestion state of the real-time network 300 detected by the detecting unit 160 is equal to or greater than a reference congestion level. The reference congestion level may be determined arbitrarily. The result of the determination in the determination unit 170 is output to the control unit 150B, which will be described later.
[0082] The control unit 150B controls the operation of the entire network control system 1B in accordance with a control program stored in a ROM (Read Only Memory) or the like. In this embodiment, for example, in an initial synchronization step at the time of mode switching when a new client terminal 200X connects to the real-time network 300, when the receiving unit 110 receives information of a new client from the new client terminal 200X as an initial synchronization request, the detecting unit 160 detects a congestion state in the real-time network 300, and when the determining unit 170 determines that the congestion state in the real-time network 300 is equal to or higher than a reference congestion level, the control unit 150B causes the transmitting unit 120 to transmit the latest information of multiple clients connected to the real-time network 300 to the new client terminal 200X via the non-real-time network 400. In addition, for example, when the receiving unit 110 receives information about a new client as an initial synchronization request from the new client terminal 200X, the control unit 150B may control the transmitting unit 120 to use the Nagle algorithm to transmit the latest information about multiple clients connected to the real-time network to the new client terminal 200X via the non-real-time network 400.
[0083] <Processing of the communication control device 100B> The processing of the network control system 1B according to this embodiment will be described with reference to FIG.
[0084] The receiving unit 110 receives information about the new client from the new client terminal 200X as an initial synchronization request (step S110). The information on the new client received by the receiving unit 110 (new client information) is output to the control unit 150B.
[0085] The receiving unit 110 receives the latest information of a plurality of clients from the client terminals 200A to 200N connected to the real-time network 300 (step S120). The latest information (latest information) of the multiple clients from the client terminals 200A to 200N connected to the real-time network received by the receiving unit 110 is output to the control unit 150B.
[0086] The control unit 150B performs a process of writing the latest information of the multiple clients from the client terminals 200A-200N connected to the real-time network input from the receiving unit 110 to memory areas corresponding to the multiple client terminals 200A-200N provided in the memory unit 130, thereby updating the information in the memory areas corresponding to the multiple client terminals 200A-200N (step S130).
[0087] When the control unit 150B receives information about a new client from the receiving unit 110, it reads out the latest information about the multiple clients in the memory areas corresponding to the multiple client terminals 200A to 200N provided in the memory unit 130, outputs the information to the compression unit 140, and also outputs a control signal to compress the information. Compression unit 140 compresses the input group of latest information and outputs it to control unit 150B (step S140).
[0088] In an initial synchronization step at the time of mode switching in which a new client terminal 200X connects to the real-time network 300, the detection unit 160 detects a congestion state of the real-time network 300 when receiving information of the new client as an initial synchronization request from the new client terminal 200X (step S310).
[0089] The determining unit 170 determines whether the congestion state of the real-time network 300 detected by the detecting unit 160 is equal to or greater than a reference congestion level (step S320).
[0090] When the determination unit 170 determines that the congestion state in the real-time network 300 is equal to or higher than the standard congestion level, the control unit 150B outputs the compressed group of latest information input from the compression unit 140 to the transmission unit 120, and transmits a control signal to instruct the transmission unit 120 to transmit the latest information of multiple clients connected to the real-time network 300 to the new client terminal 200 via the non-real-time network 400 (step S160). At this time, the control unit 150A may cause the transmission unit 120 to transmit information using the Nagle algorithm.
[0091] <Actions and Effects> As described above, the network control system 1A according to this embodiment includes a plurality of client terminals 200A-200N, a real-time network 300 connecting the plurality of client terminals 200A-200N, a non-real-time network 400 connecting the plurality of client terminals 200A-200N, and a communication control device 100B controlling data communication between the real-time network 300 and the non-real-time network 400. In an initial synchronization step at the time of mode switching when a new client terminal 200X is connected to the real-time network 300, when the receiving unit 110 receives information of the new client as an initial synchronization request from the new client terminal 200X, the detecting unit 160 determines the congestion state in the real-time network 300. When the determining unit 170 determines that the congestion state in the real-time network 300 is equal to or higher than a reference congestion level, the transmitting unit 120 transmits the latest information of the plurality of clients connected to the real-time network 300 to the new client terminal 200X via the non-real-time network 400. Therefore, the initial synchronization load can be effectively avoided, and the predetermined network transfer capacity limit can be utilized without waste.
[0092] When the communication control device 100B of the network control system 1A in this embodiment receives information about a new client as an initial synchronization request from the new client terminal, the communication control device 100B uses the Nagle algorithm to transmit the latest information about multiple clients connected to the real-time network to the new client terminal 200X via the non-real-time network 400. Therefore, the initial synchronization load can be effectively avoided, and the predetermined network transfer capacity limit can be utilized without waste.
[0093] <Modification> The network control systems 1, 1A, and 1B in the first to third embodiments are so-called stand-alone systems. As an advanced version of this, a plurality of the above systems may be interconnected via the communication control devices 100, 100A, and 100B to form a so-called cluster system. By using a cluster-type system, it is possible to expect an increase in the number of accessible sites and improved performance.
[0094] The network control systems 1, 1A, 1B of the present invention can be realized by recording the processing of the communication control devices 100, 100A, 100B on a recording medium readable by a computer system, and having the communication control devices 100, 100A, 100B read and execute the programs recorded on this recording medium. The computer system here includes hardware such as an OS and peripheral devices.
[0095] Furthermore, "computer system" also includes the homepage providing environment (or display environment) if a WWW (World Wide Web) system is used. The above program may be transmitted from a computer system in which the program is stored in a storage device or the like to another computer system via a transmission medium, or by transmission waves in the transmission medium. Here, the "transmission medium" that transmits the program refers to a medium that has the function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line.
[0096] The program may be for implementing some of the functions described above, or may be a so-called differential file (differential program) that can implement the functions described above in combination with a program already recorded in the computer system.
[0097] Although an embodiment of the present invention has been described in detail above with reference to the drawings, the specific configuration is not limited to this embodiment, and designs that do not deviate from the gist of the present invention are also included. [Explanation of symbols]
[0098] 1; Network control system 1A; Network control system 1B; Network control system 100: Communication control device 100A; Communication control device 100B: Communication control device 110; Receiving section 120: Transmitter 130;Memory part 140: Compression section 150; Control section 150A; Control section 150B; Control section 200A~N: Client terminal 200X; New client terminal 300; Real-time network 400;Non-real-time network
Claims
1. A plurality of client terminals; a real-time network connecting the plurality of client terminals; a non-real-time network connecting the plurality of client terminals; a communication control device for controlling data communication in the real-time network and the non-real-time network; Equipped with The network control system is characterized in that, in an initial synchronization step at the time of mode switching when a new client terminal connects to the real-time network, when the communication control device receives information about the new client as an initial synchronization request from the new client terminal, the communication control device transmits the latest information of a plurality of clients connected to the real-time network to the new client terminal via the non-real-time network.
2. The communication control device includes: a detection unit that detects a congestion state of the real-time network when receiving information of a new client as an initial synchronization request from the new client terminal in an initial synchronization step at the time of mode switching in which a new client terminal is connected to the real-time network; a determination unit that determines whether the congestion state is equal to or greater than a reference congestion level; Equipped with The network control system according to claim 1, characterized in that when the judgment unit judges that the congestion state is equal to or greater than a standard congestion level, the communication control device transmits the latest information of the multiple clients connected to the real-time network to the new client terminal via the non-real-time network.
3. 3. The network control system according to claim 1, wherein the communication control device includes a storage unit for storing the latest information of the plurality of clients connected to the real-time network.
4. 4. The network control system according to claim 3, wherein the communication control device includes a compression unit that compresses the latest information of the clients connected to the real-time network that is stored in the storage unit.
5. The network control system according to claim 4, characterized in that when the communication control device receives information about a new client as an initial synchronization request from the new client terminal, the communication control device uses a Nagle algorithm to transmit the latest information about the multiple clients connected to the real-time network to the new client terminal via the non-real-time network.
6. A program for causing a computer to execute a network control method in a network control system including a plurality of client terminals, a real-time network connecting the plurality of client terminals, a non-real-time network connecting the plurality of client terminals, and a communication control device for controlling data communication between the real-time network and the non-real-time network, the communication control device, in an initial synchronization step at the time of mode switching in which a new client terminal is connected to the real-time network, a client information receiving step of receiving information of the new client from the new client terminal as an initial synchronization request; an information transmission step of the communication control device transmitting, via the non-real-time network, to the new client terminal, latest information of the plurality of clients connected to the real-time network; A program for causing a computer to execute the following.
7. the communication control device includes a congestion state detection step of detecting a congestion state of the real-time network; a determination step of determining whether the congestion state is equal to or greater than a reference congestion level; Equipped with The program according to claim 6, characterized in that, when the congestion state is determined to be equal to or greater than a standard congestion level in the judgment step, the communication control device transmits, in the information transmission step, the latest information of the multiple clients connected to the real-time network via the non-real-time network to the new client terminal.
8. 8. The program according to claim 6, wherein the communication control device further comprises an information storage step of storing, before the information transmission step, the latest information of the plurality of clients connected to the real-time network.
9. 9. The program according to claim 8, further comprising an information compression step in which the communication control device compresses the stored latest information of the plurality of clients connected to the real-time network.
10. The program according to claim 9, characterized in that in the information transmission process, the communication control device uses a Nagle algorithm to transmit the latest information of multiple clients connected to the real-time network to the new client terminal via the non-real-time network.
Citation Information
Patent Citations
Game machine, communication game system, and recorded medium
JP2005169138A