Abstract

Due to the unbalance distribution of network resources and network traffic, congestion is an inherent property of the Internet. The consensus congestion controller based on the multiagent system theory is designed for the multirouter topology, which improves the performance of the whole networks. Based on the analysis of the causes of congestion, the topology of multirouter networks is modeled based on the graph theory and the network congestion control problem is described as a consensus problem in multiagent systems. Simulation results by MATLAB and Ns2 indicate that the proposed algorithm maintains a high throughput and a low packet drip ratio and improves the quality of the service in the complex network environment.

1. Introduction

Network as the infrastructure is used to share and exchange information, whose performance affects the efficiency of the entire information system. The introduction of some new technologies, such as “big data” [1] and “cloud computing” [2], greatly increases the network load and network complexity. The rapid increase of the Internet users, the network traffic, and the network scale may cause the deterioration of network performance. And the more serious problem is the network congestion [3].

When the load supplied by the users is greater than the capacity of the network resources, the network congestion will be caused [4]. Congestion will lead to a decline in the performance of the network, such as the growth of RTT and packet drop ratio, the decrease in throughput, and link utilization, which may even make the system congestion collapse. The “best effort” service mode [5] of Internet makes the congestion inevitable, which will not eliminate the congestion by increasing the network processing ability and the network bandwidth. So we must take more active control strategy to avoid and recover from the congestion.

In the traditional congestion control algorithm, the network topology is considered as a single router and a single bottleneck link [6, 7]; namely, the network topology is modeled as “source-router-sink.” Because the actual network structure is multirouter network topology, it brings two questions: (1) whether the congestion control algorithm based on single bottleneck link will achieve the same control performance in the actual network and (2) whether the congestion control algorithm in each router will influence each other and then affect the stability of the congestion control. Based on this, this paper will study the congestion problem in multirouter network topology.

Each node in the network can complete the data transmission, receiving, and routing independently, which is similar to a collection of multiple agents [8] with autonomy, distribution, and coordination. Therefore, we will establish a multirouter network congestion control model based on the multiagent system theory. When the input data rate of the node is greater than the output data rate, the packet will be accumulated in the buffer, which will cause congestion [9]. Furthermore, the input speed for one node is actually the output rate of another node; in other words, if all the nodes maintain the same data transmitter rate, congestion can be avoided. Based on this, we design a congestion control algorithm based on the multiagent consensus theory in order to maintain the same data transmitter rate for all nodes.

Motivated by the content mentioned above, since the congestion problem in multirouter has been rarely researched, it is important to research the congestion control algorithm based on the multirouter network topology which is similar to the real network. Moreover, congestion in essence is a kind of persistent overload of the network [10]; therefore, the congestion can be effectively prevented and solved by guaranteeing the consensus between the input speed and the output speed. In this paper, a multiagent model is used to model the multirouter network topology, and the network congestion control problem is reduced to the consensus problem of the data transmission rate. From the perspective of improving the quality of network service, the high order active queue management algorithm based on multiagent is designed to improve the network throughput and fairness and reduce transmission delay by considering the data transmission rate and queue length. The rest of the paper is structured as follows. Section 2 presents the previous works on congestion control in multirouter networks. Section 3 presents the network topology based on the graph theory and the node model by fluid theory. In Section 4, the theoretical results for consensus congestion control algorithm is provided. Section 5 contains a performance evaluation of the proposed algorithm and a comparison with TCP protocol. The conclusion of this paper is presented in Section 6.

Congestion control algorithm can be divided into two categories [11], including source algorithm and link algorithm. Source algorithm, such as the TCP algorithm [12], adjusts the speed of data transmission in the host and network edge equipment. Link algorithm, such as AQM algorithm [13], executes in the network device. It can detect the occurrence of congestion and notify the congestion ACKs to the source. However, most of the current congestion control algorithms are based on the single router and single bottleneck link, including fluid-flow model [14], dual model [15], and mixed model [16]. The research of congestion problem in multirouter mainly focuses on the following two aspects.

(1) For one thing, effects of the multirouter topology on network congestion and performance index: the effect on the transmission flow is researched in literature [17] by designing the traffic awareness routing strategy under the multirouter topology; Zheng et al. [18] established a congestion diffusion model and discussed the disturbance of the data flow under the complex network topology; by studying the direction and asymmetry of the data stream, the definition the heterogeneous index based on the data transmission direction was defined in [19] to improve the tolerance of network congestion. Such papers focused on the dynamic performance of the network topology. They provided a theoretical basis for the network congestion control research but did not give an effective congestion control algorithm.

(2) For another, the routing protocol designed in multirouter network environment: congestion was represented by the phase transition of traffic flow [20], which meant the free flow state became a congestion state. At present, routing protocol can be divided into global algorithm and local algorithm. The global routing algorithm [21] based on the minimum transmission cost is presented by accessing the topology information of the whole network. Nevertheless, it is very difficult for the network node. At the same time, it will pay a high price to maintain the global information of the changing network topology. Neighbor load routing algorithm [22], which is considered as a typical local routing algorithm, transmits the data to the neighbor node based on the local minimum cost or a certain probability. The network congestion is equivalent to the series failure [23] of the complex networks; based on this, J. Wang and L. Wang   [19] designed a distributed multirouter algorithm to reduce the congestion. The routing algorithm reduces the packet transmission delay as far as possible to improve the throughput of the network, so as to improve the overall performance of the network. But routing algorithm is not an end-to-end congestion control strategy, which cannot detect, avoid, or recover the congestion in advance. The ant algorithm [24] is used to explore a new path to recover the traffic congestion. However, it is hard to predict the congestion by the current network state.

The introduction of control theory can improve the performance of the congestion control system, but the congestion control algorithm based on control theory is less on multirouter topology. Hu and Xiao [25] modeled the multirouter congestion control problem as a multi-input multioutput control problem and proved the correlation of the ideal data transmission rate between the source and the nodes around the source. However, the author only deduces the existence conditions of the theoretical controller with some assumptions. In addition, Zhang and Xu [26] designed a congestion control algorithm based on the ring network topology, while the actual network topology is more complex. “Congestion control algorithm” based on the multiagent theory is commonly used to solve the road congestion [27] and smart grid congestion [28, 29]. The multirouter congestion controllers were designed in [3032]. Those results only gave the simplified dynamic characteristic of the nodes and do not consider the data transmission process in the actual network.

Based on this, we aim to establish multirouter network topology model, which provides the research basis for the congestion control. At the same time, considering the network parameters and dynamic process, the congestion control algorithm in multirouting environment is designed to improve the network performance and quality of service.

3. Congestion Model of the Multirouter

Network is considered as the set of the nodes and links. Based on the graph theory, the congestion model of the multirouter is defined as follows:where is the set of vertices () of the graph , is the set of edges of the graph , and is the weighted adjacency matrix. Each node in Internet, including source, router, and sink, is considered as a node of the graph theory. When there is a data transmission between and , the edge is connected between two nodes; otherwise, . The weight can be used to denote the importance of the different nodes in the physical network, such as the resource subnet and the communication subnet. In this paper, we assume all nodes have the same weight, which means (); then the simplified network topology is shown in (1).

Due to the transmit and response mechanism of TCP data transmission, there is when , which means the graph is undirected. All the related nodes from the source to the sink are connected when the data is transmitted. The connectivity of the graph composed of the data transmission nodes is guaranteed. Then an undirected connected graph is used to denote the network topology.

The topology of Internet is time-varying, but the topology is considered unchanged in this paper. It is reasonable for us to make such an assumption. As the network condition is not very bad, the topology of the event-driven network should remain unchanged during a data packet transmitting from one node to another. In other words, during one RTT time in the network, the topology of such a transmission task will remain unchanged.

The dynamic performance of the node based on the fluid theory [14] is defined as the following differential equations:where is the TCP window size, is the queue length, is the round-trip time (RTT), is the packet drop probability, is the bandwidth, and is the connection number. In order to facilitate calculation, we consider , and . Considering the propagation delay , then we can get

Substitute formula (3) into (2); there are

Suppose , , and it is easy to obtain the dynamic equation of the network node as follows:

Based on (1) and (5), the congestion model for the multirouter is obtained. In the discussion above, we assume that the network connection number , the bandwidth , and the packet drop ratio are constants. Though the connection and the disconnection of the source are random, the number of connections tends to a fixed value in statistics during a certain period. For the node bandwidth, in fact it is around the fixed value , which may have some fluctuations due to the electromagnetic interference. The packet drop ratio is usually considered as a function of the network parameter in traditional congestion control, which adjusts the data transmission rate by packet loss. The essence of the congestion control is to maintain a dynamic stable process of the whole network; it means that the packet loss rate is maintained at a desired value of .

4. Congestion Control Based on Consensus

It has been indicated in [33] that when the input load exceeds the available capacity in some node, the packet will accumulate in the node buffer, which will induce the congestion. In other words, if all the nodes maintain the same data transmitter rate, congestion can be avoided. The variables in the node dynamic equations (5) are not related to the TCP data transmission rate, but the TCP window size expresses the amount of the sent data during one RTT. So we can use the TCP window size to represent the data transmission rate within RTT interval, rather than within a unit time. Based on the analysis, we can reduce the congestion control problem to the consensus problem of the multiagent system.

Consider the multiagent system consisting of identical agents with the th one modeled by the following nonlinear dynamic system, which is obtained by (5):where

Design the state feedback consensus controller as follows:

Next, we will give sufficient conditions of the controller parameter matrix and solve the consensus problem of multiagent system (6). First, we introduce several lemmas that are involved in the proof process.

Lemma 1 (see [34]). Let be the Laplacian matrix associated with an undirected graph . Then has one zero eigenvalue at least and all of the nonzero eigenvalues are positive. Furthermore, matrix has exactly one zero eigenvalue if and only if the undirected graph is connected, and the eigenvector associated with zero is 1.

Lemma 2 (see [35]). Define a symmetric matrix as follows:Then there exists an orthogonal matrix such thatwhere , are the nonzero eigenvalues of the Laplacian matrix .

Lemma 3 (see [36]). Let , , and be real matrices of appropriate dimensions such that . Then, for scalar and vectors , we have

Theorem 4. Assume that the communication network between the agents is a connected undirected graph, and the nonzero eigenvalues of the Laplacian matrix satisfy . For system (6), consensus can be achieved if there exist a symmetric positive definite matrix , a matrix , and a coefficient satisfyingMeanwhile, the parameter matrix of the consensus controller (8) is designed as .

Proof. It is assumed that , so there exists such that , . It means that the linear matrix inequality (12) still holds when . Now we defineMultiply on the both sides of the LMI (12); we haveBased on the Schur complement theory, it is easy to getSowhere the diagonal matrix is defined in Lemma 2.
Substituting controller (8) into system (6) results in the following system:Then, differential equation (17) can be written aswhere , , and matrix is defined in Lemma 1.
A controlled output function is defined in [37], which is used to measure the disagreement of to the average state of all agents, . Note that if for all , then the consensus of the multiagent system is achieved. Definethen where the matrix is defined in Lemma 2. Combining (18) and (20) yields the following equation:Consider the Lyapunov function , and then we haveBased on Lemma 3, it is easy to getNote that the nonlinear functions and satisfy the Lipschitz condition; can also be obtained by the same way. Assume that for all ; the following inequality is satisfied: . Then we haveBased on (22)–(24), we can getwhere . Note that the orthogonal matrix satisfies , such thatThen we can getBased on Lemma 2, we can deduce that and . Then inequality (27) can be rewritten as follow:Note thatConsider inequality (16) such that , which means , when . Based on the discussion above, it is proved that multiagent system (6) is consensus under controller (8).

5. Simulation

In order to verify the effectiveness of the consensus congestion control algorithm, the topology of the multiagent system is shown in Figure 1. The network parameters are set as follows: the connection number of the nodes , the bandwidth Mb/s, and the packet drop ratio of the link . Then we can get

Let and the initial states satisfy

By solving the linear matrix inequality (12), we have

Based on Theorem 4, the controller matrix is determined as

Because the state characterizes the data transmission rate which is needed to be consensus in congestion control, the state curve of is shown in Figure 2 by MATLAB/Simulink. Simulation results indicate that each state of all the agents reaches consensus based on the consensus congestion controller (8).

Now we will study the control performance of the proposed consensus algorithm in Internet. The Internet actually is far greater than the size of 8 nodes that we set. But the actual network can be simplified as a combination of several autonomous systems based on the concepts of LAN, border gateway, and so on, which is similar to the network topology that we set in Figure 1. Considering the network topology in Figure 1, node 4 is the bottleneck node of the whole network, so we mainly study the performance index of node 4 by Ns2 simulation software. Nodes 1, 6, and 8 are defined as the sources. In order to reproduce the congestion phenomenon better, we assume that there are 10 TCP sources in each source node. Figure 3 shows the queue length in node 4 based on RED [13], the minimum consensus algorithm [31], and the nonlinear consensus congestion control algorithm designed in this paper. RED is designed based on the expert experience and the minimum consensus algorithm only considers the first-order dynamic performance of the node, but our multirouter model is modeled by both TCP window and the queue length. The simulation results show that the proposed algorithm has good control performance, maintains the small queue length jitter, and reduces the network delay and delay jitter.

Because of the unpredictability and the uncertainty of Internet, we will verify the stability and robustness of the algorithm under the variable network conditions. Three cases are considered, respectively, as follows: (1) the network bandwidth is changed to 12 Mb/s; (2) two new data sources, node 9 and node 10, are joined in the network; (3) node 1 starts sending data at 30 s and node 6 stops sending data at 70 s. Figure 4 shows the queue length of node 4 in these three cases. The experimental results show that the proposed algorithm can maintain a better control performance, reduce the probability of congestion, and improve the performance of the networks.

Then we change the packet loss rate (PLR) of the link based on the Gilbert model [38]. The PLR provided in Table 1 satisfies , where means the probability from “good” state (0% PLR) to “bad” state (100% PLR) and is the probability from “bad” state to “good” one. From Figures 5(a) and 5(b), we can see that the proposed algorithm can control the size of the queue in the buffer to an expected length when the packet loss rate is low. But the higher packet loss rate may cause a vibration of the queue length as shown in Figures 5(c) and 5(d). However, packet loss rate is maintained at a smaller value in the actual network, so our algorithm has the robustness for the parameter change in the network and can improve the quality of network services effectively.

Ns2 simulation results indicate that the consensus congestion control algorithm maintains the queue length fluctuation and has faster convergence speed; namely, the transmission delay is relatively small. It means the proposed algorithm can reduce the effect of delay jitter for the video streaming and improve the quality of network service. On the other hand, the noise and randomness of the network are considered in the design process of the consensus congestion control algorithm, which is in line with the actual characteristics of the network. It is obvious that our algorithm can meet the needs of mobile terminal access and adapt to the random change of the network environment.

6. Conclusion

Congestion will increase the packet drop rate, reduce the transmission reliability and the throughput, and also waste the energy resources. Based on the idea of the multiagent system, the congestion problem is reduced to a consensus problem. We prove that the nonlinear consensus congestion control algorithm can make the transmission rate consensus based on the Lyapunov function method. And the simulation results show that our algorithm is able to maintain the stability of the system in dynamic network environment. However, the proposed algorithm in this paper is more dependent on the bandwidth allocation protocol. A reasonable bandwidth allocation protocol will be our further research work, which may improve the effectiveness of our algorithm.

Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this article.

Acknowledgments

This work is supported in part by the National Natural Science Foundation of China (61304047, 61203048, and 61201212), in part by program for “Blue Project” of colleges and universities in Jiangsu Province, in part by program for “Overseas Study Plan” of colleges and universities in Jiangsu Province, and in part by the Funds of Natural Science Special Program of Nantong Vocational University (1407001).