Conference system and method for setting group communication network
The conference system addresses future load imbalances by predicting server loads and strategically allocating new rooms, ensuring stable and balanced server usage.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- NT T INC
- Filing Date
- 2025-01-15
- Publication Date
- 2026-07-23
AI Technical Summary
Existing conference systems fail to account for future server load fluctuations, leading to imbalances and potential service disruptions due to uneven distribution of load across servers.
A conference system with a prediction unit that forecasts future load based on current network features, a calculation unit that determines future server load, and a selection unit that allocates new rooms to minimize future load imbalance across servers.
The system effectively distributes load across servers, preventing individual servers from exceeding their capacity and reducing future load imbalances, thereby maintaining stable online conference services.
Smart Images

Figure JP2025000980_23072026_PF_FP_ABST
Abstract
Description
Conference System and Method for Configuring Group Communication Network
[0001] The present disclosure relates to a conference system and a method for configuring a group communication network.
[0002] An online conference system (hereinafter abbreviated as "conference system") for conducting online conferences with multiple participants has been put into practical use. When using the conference system, a client registers conference information such as start time, required time, security, etc. with the conference system through a predetermined web form or the like. The conference system assigns a room ID (such as a URL) to the client for setting up a group communication network (hereinafter referred to as a "room") in which multiple users perform group communication. The client distributes the above room ID to the users participating in the conference, and the users can enter the conference.
[0003] The conference system includes a signaling server for performing session control of users and a media server for media distribution between users. The conference system arranges multiple of these servers and avoids load concentration on a specific server by dispersing the load of each server. As methods for dispersing the load of servers, the methods disclosed in Patent Documents 1 and 2 are known.
[0004] Patent Document 1 discloses a technique for determining a server to be the setting destination of a room so that the bias of various resources such as CPU and memory installed in the server is minimized, and dispersing the load of the server.
[0005] Patent Document 2 discloses that during the implementation of group communication, the load of the network server is dispersed by switching multiple MCUs (Multi Point Units) by changing the placement location of the multi-point connection function according to the increase or decrease of users participating in the group or the increase or decrease of the network load.
[0006] Japanese Patent No. 6511006 Japanese Patent No. 6892206
[0007] However, while Patent Document 1, mentioned above, considers the load on each server at the time of setting up a new room, it does not consider future server load fluctuations. Similarly, Patent Document 2 switches MPUs in response to real-time load fluctuations, but it does not consider future server load fluctuations. As a result, there was a problem in that it was not possible to eliminate server load imbalances caused by future load fluctuations.
[0008] This disclosure is made in view of the above circumstances, and its purpose is to provide a method for configuring a conference system and a group communication network that can suppress future load imbalances on each server.
[0009] A conference system according to one aspect of the present disclosure comprises a plurality of servers and a conference management device that sets up a group communication network on each of the servers and performs online conferences by a plurality of users, wherein each of the servers comprises a prediction unit that predicts future feature quantities based on the feature quantities of the currently set group communication network and a calculation unit that calculates the future load of the server based on the future feature quantities, and the conference management device comprises a selection unit that, when a request for registration of a new group communication network is input, selects a server to which the new group communication network will be set up based on the future load of each server, so as to reduce the load imbalance on each server in the future.
[0010] A method for setting up a group communication network according to one aspect of the present disclosure is a method for setting up a group communication network on multiple servers provided in a conference system, wherein a prediction unit installed on the server predicts future feature quantities based on the feature quantities of the currently set group communication network, a calculation unit installed on the server calculates the future load on the server based on the future feature quantities, and when a request for registration of a new group communication network is input, a selection unit selects a server to which the new group communication network will be set up, based on the future load on each server, in such a way as to reduce the load imbalance on each server in the future.
[0011] This disclosure will make it possible to suppress load imbalances across each server in the future.
[0012] Figure 1 is a sequence diagram showing the procedure for setting up rooms on each server installed in the conference system according to the embodiment. Figure 2 is a schematic explanatory diagram showing the process by which the conference management device sets up rooms on each server when a room registration request is output from a client. Figure 3 is a block diagram showing the configuration of the conference system according to the embodiment. Figure 4 is an explanatory diagram showing the data structure of the data list {Si}. Figure 5 is a graph showing the relationship between the connection frequency in a room and the maximum number of simultaneous connections by users. Figure 6 is an explanatory diagram showing the data structure of the "Trf_pred list". Figure 7 is a flowchart showing the procedure for setting up a new room in the conference system according to the embodiment. Figure 8 is an explanatory diagram showing the change in load on each server 2-1 and 2-2 when setting up rooms by predicting the future load on the two servers 2-1 and 2-2. Figure 9 is an explanatory diagram showing the change in load on each server 2-1 and 2-2 when setting up rooms without predicting the future load on the two servers 2-1 and 2-2. Figure 10 is a block diagram showing the hardware configuration of this embodiment.
[0013] The embodiments will be described below with reference to the drawings. First, the procedure for setting up rooms (group communication networks) on each server using the online conferencing system (hereinafter abbreviated as "conferencing system") will be explained. A "room" is an example of a group communication network in which multiple users UE participate in conducting an online conference on the web.
[0014] Figure 1 is a sequence diagram showing the procedure for setting up rooms on multiple servers 2 (signaling server 2A, media server 2B) using the conference system 100. The client CL shown in Figure 1 outputs a room registration request to the conference management device 1 (s1). The conference management device 1 issues a room ID (s2). The conference management device 1 registers the room ID with the server 2 (s3). The signaling server 2A controls the session of each user UE. The media server 2B distributes media between each user UE.
[0015] The conference management device 1 notifies the client CL of the room ID (s4), and the client CL distributes the room ID to each user UE (s5). Each user UE uses the room ID distributed by the client CL to enter the room configured on server 2 (s6). As a result, media communication is established, and online meetings between each user UE become possible.
[0016] Figure 2 is a schematic diagram illustrating the process by which the conference management device 1 sets up rooms on each server 2 (2A, 2B) when a room registration request is output from a client CL. As shown in Figure 2, when the conference management device 1 receives a room registration request output from a client CL, it sets up rooms on multiple signaling servers 2A (2A1, 2A2) and multiple media servers 2B (2B1 to 2B4). In the example shown in Figure 2, four rooms "A" to "D" are set up. At this time, rooms "A" to "D" are set up in such a way that the load on each server 2 is equalized and the load imbalance on each server 2 is reduced. "Load" refers to, for example, the CPU usage rate installed on each server 2. Therefore, the load on server 2 increases as the number of users participating in the rooms set up on server 2 and the amount of media distributed increase.
[0017] As shown in Figure 2, the conference management device 1 sets rooms "A" and "B" on the signaling server 2A1, for example. The conference management device 1 sets rooms "C" and "D" on the signaling server 2A2, for example. The conference management device 1 sets room "A" on the media server 2B1, room "B" on the media server 2B2, room "C" on the media server 2B3, and room "D" on the media server 2B4, for example.
[0018] In this embodiment, when a room registration request is output from a client CL, the conferencing system sets up a room on each of the multiple servers 2 (signaling server 2A, media server 2B) in order to reduce the load imbalance among them in the future. As a result, it avoids the load on a particular server 2 becoming too high and exceeding its load tolerance.
[0019] In other words, instead of determining which server 2 to set up a room on by considering the load on each server 2 at the time the room is set up (current time), the system predicts the future load on each server 2 and, based on this predicted load, determines which server 2 to set up the room on in a way that reduces the load imbalance on each server 2 in the future.
[0020] This prevents imbalances in the load on each server 2 in the future, even when the server load fluctuates dynamically depending on the status of users participating in the room, and avoids the load on a particular server 2 exceeding its load tolerance. Furthermore, it prevents disruptions to the provision of services in online meetings caused by the load concentrating on a particular server 2 and exceeding the server's performance limits.
[0021] The following describes the specific configuration of the conference system 100 according to the embodiment. Figure 3 is a block diagram showing the configuration of the conference system 100 according to the embodiment. As shown in Figure 3, the conference system 100 includes a conference management device 1 and a plurality of servers 2 (2-1, 2-2, 2-3, ...). Hereinafter, when referring to any server among the plurality of servers 2 (2-1, 2-2, 2-3, ...), a suffix such as "server 2-1" will be added, and when not referring to a specific server or when referring to them collectively, they will be referred to as "server 2" without a suffix. Note that server 2 includes the signaling server 2A and media server 2B mentioned above.
[0022] The conference management device 1 processes the creation of new rooms on each server 2 based on room registration requests output from the client CL. The conference management device 1 is equipped with a selection unit 11, which controls the allocation of rooms to each server 2 so that the load (e.g., CPU usage) on each server 2 is uniform when multiple room registration requests are output from the client CL. In other words, the conference management device 1 functions as a load balancer to reduce the load imbalance among multiple servers 2.
[0023] The selection unit 11 sends a room acceptance request to each server 2 indicating whether or not it is possible to accept a room. Based on the future load (details will be described later) of each server 2 that is capable of accepting a room, the selection unit 11 selects the server 2 to which the room will be set.
[0024] Server 2 comprises a room accommodation unit 21, a management unit 22, and an estimation unit 23. The estimation unit 23 comprises a learning unit 230, a prediction unit 231, and a calculation unit 232.
[0025] The room accommodation unit 21 is equipped with a memory area for setting up rooms. When the room accommodation unit 21 is selected as a new room setting destination by the selection unit 11, it sets up a new room. The room accommodation unit 21 conducts online meetings with multiple users by distributing media among multiple users connected to the rooms it accommodates. Media distribution includes voice communication and image communication.
[0026] The management unit 22 records the characteristic quantities of the rooms set in the room accommodation unit 21, and the characteristic quantities of the users connected to the rooms. When a room acceptance request is output from the selection unit 11, the management unit 22 calculates the characteristic quantities of each room set in the room accommodation unit 21 at that time (current time). The characteristic quantities include the elapsed time for each room and the frequency of user connections to each room. "Elapsed time" refers to the time that has elapsed since the creation of a new room until the present. "Connection frequency" refers to the number of times a user has entered a room per unit of time since the new room was set up until the present. In other words, "connection frequency" refers to the number of users who have entered a room since the new room was set up until the present divided by the elapsed time.
[0027] The management unit 22 calculates the elapsed time from the time a new room was set up in the room accommodation unit 21 (hereinafter referred to as the "room setting time") to the present time. The management unit 22 calculates a value obtained by dividing the cumulative number of users entering each room by the elapsed time, and uses this as the connection frequency. That is, the connection frequency is calculated using the following formula (1).
[0028] (Connection frequency) = (Total number of room entries) / (Elapsed time) ... (1) Therefore, the connection frequency indicates the number of times a user entered a room within a certain period of time (for example, within 1 [sec]).
[0029] The management unit 22 creates a data list {Si} of the room ID, elapsed time, and connection frequency for each room set in the room accommodation unit 21. The data list {Si} includes data such as room ID "0001", elapsed time 120 [sec], and connection frequency [ue / sec], as shown in Figure 4, for example.
[0030] The learning unit 230 collects and analyzes statistical data through a learning phase and provides the necessary calculation logic to the prediction unit 231. In the learning phase, the learning unit 230 generates statistical data based on user entry and exit data for each room that existed within a specified period, with the maximum number of simultaneous connections for each room, the connection frequency within the period, and the duration of existence set as one set. "Maximum number of simultaneous connections" refers to the maximum number of users who connected simultaneously to a room from the time a new room was set up in the room accommodation unit 21 until it was deleted. "Duration of existence" refers to the time from when a room was created until it was deleted. "Connection frequency within the period" refers to the number of users who entered the room during the duration of existence divided by the duration of existence. In other words, the learning unit 230 analyzes the features of past rooms (group communication networks) through a predetermined learning phase, and based on the results of this analysis, the prediction unit 231 generates calculation logic to predict future features.
[0031] As mentioned above, statistical data can be generated from information on rooms in operation, or it can be generated from data collected in advance. When statistical data is generated from information on rooms in operation, the estimation unit 23 returns the current load to the selection unit 11 according to conventional technology until the calculation logic of the prediction unit 231 is determined in the initial learning phase. In addition, the learning phase may be repeated periodically to update the calculation logic of the prediction unit 231.
[0032] As a result, a graph like the one shown in Figure 5 is obtained. For rooms whose duration exceeds the threshold T1, it is known that there is a correlation between the frequency of connections within the period and the maximum number of simultaneous connections when users enter and exit the room. Therefore, a model can be derived to predict the maximum number of simultaneous connections in the future based on the frequency of connections within the period obtained from statistical data.
[0033] Based on the graph in Figure 5, for rooms whose duration exceeds the threshold T1, the connection frequency and the maximum number of simultaneous connections are in a nearly proportional relationship and can be approximated by the following equation (2).
[0034] (Maximum number of simultaneous connections) = K1 * (Connection frequency during the period) ... (2) However, K1 is a proportionality constant and can be calculated using the least squares method or the like. For rooms where the elapsed time exceeds the above threshold T1, the connection frequency is stable.
[0035] The prediction unit 231, with respect to the data list {Si} received from the management unit 22, can calculate a predicted value for the maximum number of simultaneous connections in the future for rooms where "the elapsed time of the room > T1" by substituting the room's connection frequency, i.e., the connection frequency calculated by equation (1) above, into the "connection frequency within the period" in equation (2).
[0036] In the graph shown in Figure 5, the variance R 2 = 0.8043 and proportionality constant K1 = 42.85 are obtained. The prediction unit 231 generates a "Trf_pred list" which describes the predicted connection frequency and maximum number of simultaneous connections for each room ID. The "Trf_pred list" is a list that associates the room ID, the predicted maximum number of simultaneous connections, and the connection frequency, as shown in Figure 6, for example. The prediction unit 231 outputs the above-mentioned "Trf_pred list" and proportionality constant K1 to the calculation unit 232.
[0037] The calculation unit 232 calculates the future load of each room based on the "Trf_pred list" and the proportionality constant K1. The calculation unit 232 can also calculate the load of each room using other methods besides the "Trf_pred list" and the proportionality constant K1, such as the average hold time and average connection frequency. The room load can be selected considering the server's processing characteristics, and in this embodiment, the CPU usage rate when operating each room is used as the load. In addition to CPU usage, TAT (Turn Around Time) and packet loss rate can also be used.
[0038] For rooms configured in the room accommodation unit 21, the load generated by users entering and leaving the rooms increases in proportion to the number of simultaneous user connections in that room. Therefore, the load L0 per unit time for each room can be calculated using the following equation (3), based on the number of simultaneous user connections to the room and the connection frequency of users entering and leaving.
[0039] L0 = K2 * (number of simultaneous connections) * (connection frequency) ... (3) where K2 is a proportionality constant.
[0040] The proportionality constant K2 in equation (3) can be determined by measuring the performance of the target server. Specifically, the number of simultaneous connections and connection frequency can be set for the target server, test traffic can be applied to measure the load (e.g., CPU usage), and the proportionality constant K2 can be calculated using regression analysis.
[0041] The calculation unit 232 calculates the future maximum load L0 (predicted value) per unit time for each room using equation (3) above, based on the predicted connection frequency and maximum number of simultaneous connections for each room stored in the "Trf_pred list," and calculates an evaluation value "Lord_pref" by summing the calculation results for all rooms. In other words, the calculation unit 232 calculates the future maximum load per unit time for server 2 based on the future maximum number of simultaneous connections and connection frequency for each room.
[0042] The calculation unit 232 outputs "Load_pref" to the selection unit 11 of the conference management device 1. Therefore, the selection unit 11 can obtain "Load_pref" output from the calculation unit 232 of each server 2.
[0043] Next, the operation of the conference system 100 according to the present embodiment configured as described above will be described with reference to the flowchart shown in FIG. 7. First, in step S11 shown in FIG. 7, the conference management device 1 receives a new room registration request from the client CL.
[0044] In step S12, the selection unit 11 of the conference management device 1 outputs a room acceptance request to each server 2.
[0045] In step S13, the management unit 22 and the estimation unit 23 of each server 2 calculate the load prediction value of each server 2 based on the future load prediction value of each room set in the room accommodation unit 21.
[0046] In step S14, the estimation unit 23 creates the above-mentioned "Lord_pref" based on the load prediction value of each server 2 and outputs it to the selection unit 11.
[0047] In step S15, the selection unit 11 of the conference management device 1 performs a new room setting based on each "Lord_pref" transmitted from the calculation unit 232 of each server 2 so that the load bias of each server 2 in the future is reduced.
[0048] In order to reduce the load bias of each server 2, it is advisable to extract the server 2 with the minimum future load and set a new room in this server 2. Also, not limited to the server 2 with the minimum future load, for example, extract the servers 2 with the 1st to 3rd smallest future loads, and set a new room in any of these servers 2 to reduce the load bias of each server 2. This will be specifically described below with reference to FIGS. 8 and 9.
[0049] Figure 8 is an explanatory diagram showing the changes in the load on each server 2-1 and 2-2 when predicting future loads on the two servers 2-1 and 2-2 and setting up rooms accordingly. For example, as shown in Figure 8(A), at the present time, two rooms "A" and "B" are set in the room accommodation unit 21 of server 2-1, and two rooms "C" and "D" are set in the room accommodation unit 21 of server 2-2. At the present time, the combined load of rooms "A" and "B" is p1, and the combined load of rooms "C" and "D" is p3, and p3 > p1.
[0050] Furthermore, based on the load predictions for each server 2-1 and 2-2 by the calculation unit 232, the predicted total load of rooms "A" and "B" at a predetermined time in the future (for example, time T10 after time t1 has elapsed) is p2, and the predicted total load of rooms "C" and "D" is p4, and p2 > p4. In this case, at the present time when a registration request for a new room "X" is input, the selection unit 11 assigns room X to server 2-2. Therefore, by setting room "X" to server 2-2 at the present time, the load of server 2-2 increases from load p3 to load p3 + pX, as shown in Figure 8(B).
[0051] Subsequently, at time T10, after time t1 has elapsed, as shown in Figure 8(C), the combined load of rooms "A" and "B" becomes p2, and the combined system load of rooms "C", "D", and "X" becomes p4 + pX'. (However, load pX' is the load of room "X" after time t1 has elapsed.) Therefore, the loads of both servers 2-1 and 2-2 do not exceed the load tolerance value Th1, and load imbalance can be suppressed.
[0052] Figure 9 is an explanatory diagram showing the changes in the load of each server 2-1 and 2-2 when setting up a room without predicting the future load of each server 2-1 and 2-2. Without performing load prediction by the estimation unit 23, as shown in Figure 9(A), based on the load of each server 2-1 and 2-2 when setting up room "X", since p1 < p3, when room "X" is set up on server 2-1, as shown in Figure 9(B), at the time of setting up, the load of server 2-1 is p1 + pX and the load of server 2-2 is p3, and at the current time, the load imbalance between each server 2-1 and 2-2 is small.
[0053] However, at time T10, after time t1 has elapsed, as shown in Figure 9(C), the load on server 2-1 becomes p2 + pX', exceeding the load tolerance value Th1. Furthermore, the load imbalance between servers 2-1 and 2-2 also increases. In other words, by using the predicted load value predicted by the estimation unit 23 to determine which server 2 to assign room "X" to at the current time, the load on each server 2-1 and 2-2 can be equalized and the load imbalance can be suppressed at the future time T10, after time t1 has elapsed. Therefore, it is possible to prevent a specific server 2 from exceeding the load tolerance value Th1.
[0054] In step S16, the selection unit 11 sets up a room on the server 2 selected in the processing of step S15.
[0055] In this way, by selecting the server 2 to set up a room in response to a new room registration request, it is possible to prevent any particular server 2 from exceeding the load tolerance Th1 among multiple servers 2, thereby reducing the load imbalance on each server 2 in the future.
[0056] As described above, the conference system 100 according to this embodiment comprises a plurality of servers 2 and a conference management device 1 that sets up rooms (group communication networks) on each server 2 and executes online conferences by multiple users. Each server 2 is equipped with a prediction unit 231 that predicts future feature quantities based on the feature quantities of the currently set rooms, and a calculation unit 232 that calculates the future load of the server 2 based on the future feature quantities. The conference management device 1 is equipped with a selection unit 11 that, when a request for registration of a new room is input, selects a server 2 to which the new room will be set up based on the future load of each server 2, so as to reduce the imbalance in the load of each server 2 in the future.
[0057] In this embodiment, the maximum number of simultaneous connections in each room is calculated based on the connection frequency (feature) in each room, and further, the load on each server 2 in the future (e.g., CPU usage) is calculated based on the connection frequency and the maximum number of simultaneous connections. Based on these calculation results, the selection unit 11 selects the server 2 to be used as the setting destination for newly registered rooms so as to reduce the future load imbalance on each server 2.
[0058] Therefore, when setting up multiple rooms (group communication networks) on multiple servers 2, it is possible to distribute the load on each server 2, i.e., the signaling server and media server, in the future and avoid concentrating the load on a specific server 2.
[0059] In other words, the load (e.g., CPU usage) of a room assigned to each server 2 depends on the number of users participating in the meeting. Therefore, the load of each room fluctuates depending on the user connection status after the room has been set up. Furthermore, once a new room is set up on any server, it is not easy to change this room to another server with available load capacity. In this embodiment, new rooms are registered by predicting the future load of each server 2, so the load on each server in the future can be distributed, and it is possible to prevent the load from being concentrated on a particular server 2.
[0060] In this embodiment, the prediction unit 231 uses the number of simultaneous user connections to a room (group communication network) and the connection frequency as features to predict. Therefore, it becomes possible to predict the load on each server 2 in the future with high accuracy.
[0061] In this embodiment, CPU usage is used as the server load. This makes it possible to predict the future load of each server 2 with high accuracy.
[0062] The conference management device 1 and each server 2 installed in the conference system 100 of this embodiment described above can each be a general-purpose computer system, as shown in Figure 10, which includes, for example, a CPU (Central Processing Unit, processor) 901, memory 902, storage 903 (HDD: Hard Disk Drive, SSD: Solid State Drive), communication device 904, input device 905, and output device 906. The memory 902 and storage 903 are storage devices. In this computer system, the functions of the conference management device 1 and each server 2 are realized by the CPU 901 executing a predetermined program loaded onto the memory 902.
[0063] The conference management device 1 and each server 2 may be implemented on a single computer, or on multiple computers. Furthermore, the conference management device 1 and each server 2 may be virtual machines implemented on a computer.
[0064] The programs for the conference management device 1 and each server 2 can be stored on computer-readable recording media such as HDDs, SSDs, USB (Universal Serial Bus) memory, CDs (Compact Discs), and DVDs (Digital Versatile Discs), or distributed via a network. Computer-readable recording media are, for example, non-transitory recording media.
[0065] This disclosure is not limited to the embodiments described above, and numerous modifications are possible within the scope of its essence.
[0066] 1. Meeting Management Device 2. Server (2-1, 2-2, ...) 11. Selection Unit 21. Room Accommodation Unit 22. Management Unit 23. Estimation Unit 100. Meeting System 230. Learning Unit 231. Prediction Unit 232. Calculation Unit CL. Client
Claims
1. A conference system comprising: multiple servers; a conference management device that sets up a group communication network on each of the servers to conduct online conferences with multiple users; each of the servers comprising: a prediction unit that predicts future feature quantities based on the feature quantities of the currently set group communication network; and a calculation unit that calculates the future load on the server based on the future feature quantities; and the conference management device comprising a selection unit that, when a request for registration of a new group communication network is input, selects a server to which the new group communication network will be set up, based on the future load on each server, in order to reduce the load imbalance on each server in the future.
2. The conference system according to claim 1, further comprising: a learning unit that analyzes the features of past group communication networks through a predetermined learning phase, and generates a computational logic that predicts future features in the prediction unit based on the results of this analysis.
3. The conference system according to claim 1 or 2, wherein the feature quantities include the number of simultaneous user connections to the group communication network and the connection frequency.
4. A method for setting up a group communication network on multiple servers provided in a conference system, wherein a prediction unit installed on the server predicts future feature quantities based on the feature quantities of the currently set group communication network, a calculation unit installed on the server calculates the future load on the server based on the future feature quantities, and when a request for registration of a new group communication network is input, a selection unit selects a server to which the new group communication network will be set up, based on the future load on each server, so as to reduce the load imbalance on each server in the future.