Active Queue Management Supporting TCP Flows Using Disturbance Observer and Smith Predictor

Active queue management (AQM) is a technique to avoid serious congestion of the transmission control protocol (TCP) flows at a router. AQM based on control theory, which utilizes congestion controllers such as proportional-derivative (PD) controller or proportional-integral-derivative (PID) controller, has been previously proposed. In addition, disturbance observer (DOB) has been utilized to compensate for modeling error of a TCP/AQM congestion control system. However, the DOB-based controllers cannot cope with a large time delay in TCP/AQM networks. Although one of the effective time delay compensators is Smith predictor (SP), the implementation of the DOB and SP in an integrated manner has not been accomplished, because of saturation due to the input limit of packet drop probability. In this paper, a novel TCP/AQM congestion control system with the DOB and SP considering the saturation function is proposed to compensate for the modeling error and time delay simultaneously. Simulation results show that the proposed controller provides better throughput and goodput than conventional controllers. One of the simulations assume that the propagation delay and bottleneck link capacity are set to 100 ms and 100 Mbps, respectively. Under this assumption, it is confirmed that the proposed controller achieves a goodput of 99.55 Mbps whereas the classical PID controller and PD controller with DOB achieve 99.23 Mbps and 99.24 Mbps, respectively.


I. INTRODUCTION
Transmission control protocol (TCP) is often utilized for communications through the Internet, including the communications between sensors and actuators, because of its high reliability. Because the total amount of TCP flows is increasing, their communication packets can cause serious congestion in the routers. When the router is congested, meaning that the buffer of the router is full of packets and it cannot receive any more packets, all the packets arriving thereafter will be dropped until a vacant space is available in the buffer. In communication via loss-based TCPs, the receiver host detects packet loss as a sign of network congestion and notifies the sender host of the congestion. Upon receiving this notification, the sender host scales down the sending window size to control the congestion, resulting The associate editor coordinating the review of this manuscript and approving it for publication was Hiram Ponce . in reduced communication speed. Owing to this mechanism, a large quantity of packets would be dropped if serious network congestion occurs, which leads to the situation where many TCP flows sharing the same network simultaneously reduce their window sizes, thus sharing the network with low throughput. This phenomenon is called global synchronization, and this greatly reduces the communication efficiency, sometimes halting the application services provided over the network [6], [7]. Because of this fact, many studies have been conducted on the efficient method for avoiding congestion at the routers [8].
The congestion control method called active queue management (AQM) has been proposed to deal with this problem [9], [10]. AQM drops packets in the bottleneck router before its buffer becomes full to avoid serious congestion of TCP flows. By dropping the packets before buffer overflow occurs, AQM avoids large queueing delay and global synchronization. One of the most famous AQM methods is random early detection (RED) [11]. RED randomly drops packets with a drop probability determined according to the average queue length. It can keep the queue length relatively stable, preventing global synchronization. Because of its simple calculation procedure, a variety of RED algorithms have been researched and analyzed [12]- [14].
RED has numerous parameters and its parameterization for obtaining satisfactory performance under different circumstances is very difficult [15]. These parameters need to be selected very carefully; otherwise, RED does not perform well, resulting in decreasing throughput and increasing packet loss rate [16]. Therefore, Hollot et al. [17] designed the AQM controller on the basis of the control theory. In particular, it is well known that AQM based on the proportionalintegral-derivative (PID) control scheme is effective [18], and its controllers were improved by various methods [19]- [22]. In addition, the proportional-integral (PI) controller [23] and proportional-derivative (PD) controller [24] were proposed for TCP/AQM networks to stabilize the queue length around its target value. Compared with a simple algorithm such as RED, AQM based on the control theory tends to have higher throughput [25]. Thus, studies on AQM based on control theory have been actively conducted in recent years [26].
Congestion control based on AQM is negatively impacted by the modeling error of the system and time delay caused by round-trip time (RTT) of the TCP flows. Recently proposed AQM based on control theory is no exception, and there are some studies focusing on compensating either the modeling error or time delay. However, simultaneous compensation of the modeling error and time delay has not been studied for TCP/AQM networks. The related studies on compensation methods for the time delay or modeling error in TCP/AQM networks are described below.
As previously mentioned, the receiver host notifies the corresponding sender host of congestion when it detects the packet loss, and the sender host scales the sending window size down based on it. This means that after sending a packet, the sender host cannot scale the sending window size down until it receives the notification with a specific delay of RTT. Thus, TCP/AQM networks include a time delay element such as RTT between the senders and receivers, which affects the performance of the control system [27]. Several methods have been proposed to compensate for the effect of this built-in delay of the TCP/AQM network, and the most famous method is implementing the Smith predictor (SP) [28], [29]. However, a TCP/AQM congestion control system using an SP cannot cope with fluctuations of the network parameters, such as the number of TCP connections. Because such fluctuations are likely to happen in the TCP/AQM network, this effect must be considered in the design of the AQM scheme.
The robust congestion controller design that uses a disturbance observer (DOB) is an effective way to cope with the parameter fluctuations [30]. DOB has been widely utilized in the field of motion control [31]. It can estimate parameter variations as disturbances, and the estimated disturbance is fed back for robust control. The modeling error can be included in the disturbance as well, making the modeling much easier. On the other hand, the TCP/AQM congestion control system using the DOB does not have a time delay compensator. The DOB-based controller can be effectively used when the time delay is small. Because of its effectiveness, the DOB has been used for congestion control in AQM with small time delay [32]- [36]. However, a significant time delay in the TCP/AQM network will cause a serious degradation in the performance and result in instability of the network. Therefore, the effects of time delay should be considered in the design of the AQM scheme.
This paper proposes a novel TCP/AQM congestion control scheme supporting TCP flows by implementing disturbance compensation and time delay compensation in an integrated manner, and avoids serious congestions under large RTT. The proposed control system consists of a PD controller, DOB with an artificial delay, and an SP. By utilizing the DOB with an artificial delay, the disturbance of the system can be suppressed even if the TCP/AQM network includes a time delay element. Implementation of the SP will negate the effect of the time delay element by using the plant model. A feature of the SP is that it needs a reasonably approximated plant model to function ideally. Because the disturbance, including the modeling error, can be suppressed by the DOB, the SP can obtain a well-approximated plant model by utilizing the same model employed by the DOB. Kato et al. [37] proposed a motion control system with the DOB and SP to compensate for modeling error and time delay. However, unlike the motion control system, the TCP/AQM network congestion control system is subject to input saturation of packet drop probability. The existence of saturation function makes a direct introduction of the DOB and SP impossible. In this study, we take this input saturation into account and designs a novel TCP/AQM network congestion control system with the DOB and SP, to compensate for the disturbance and time delay simultaneously.
The composition of this paper is as follows. The subsequent section describes the TCP/AQM network model. Section III describes the design of the conventional PID controller and PD controller with the DOB. Section IV shows the integrated implementation of the DOB and SP in the classical PD controller by considering the input saturation. Section V shows the effectiveness of the proposed controller based on the simulation results. Finally, our conclusions are presented in Section VI.

II. TCP/AQM NETWORK MODELS
In this section, a nonlinear TCP/AQM network model [38], a linear model [17], and a nominal model [30] are discussed. The nominal model was utilized for designing controllers in this paper.

A. NONLINEAR TCP/AQM NETWORK MODEL
AQM is a congestion control mechanism, which attempts to maintain stable queue length by actively dropping packets. The conceptual diagram of a TCP/AQM network is shown in Fig. 1. As shown in Fig. 1, the bottleneck link router buffers the arriving packets and sends them to the receiver side in first-in first-out (FIFO) manner. The packets that cannot be sent due to bottleneck link capacity limitation remain in the buffer. Thus, the queue length keeps growing if the number of arriving packets is greater than that of the sent packets. AQM drops the arriving packets randomly based on the calculated packet drop probability. By dropping the packets before buffer overflow occurs, AQM avoids global synchronization, which would have happened with DropTail. In addition, the information of packet drop would be notified to the corresponding sender host by the ACK packet sent from the receiver host, resulting in shrinking of the TCP window size and reduction in the number of packets arriving at the bottleneck link router. By these procedures, AQM attempts to maintain the queue length at a constant value.
Misra et al. [38] proposed a nonlinear TCP/AQM network model by formulating the TCP window size and queue length dynamics. The nonlinear TCP/AQM network model is shown in (1) and (2), The variables in (1) and (2) are defined as follows:  (1) and (2). In order to linearize (1) and (2), the number of TCP sessions N (t) and bottleneck link capacity C(t) were both assumed to be constant, i.e., N (t) ≡ N and C(t) ≡ C. In addition, the operating point whereẆ = 0 andq = 0 was defined as (W 0 , p 0 , q 0 , R 0 ). From these assumptions, the following equations can be derived: In order to continue the linearization, the dependence of the time delay argument t − R(t) on the queue length q(t) is ignored and it is assumed to be fixed at t − R 0 . On the other hand, the dependence of the RTT R(t) on the queue length q(t) in the dynamic parameters is retained. As a result, the simplified dynamics are obtained as follows: By using these assumptions and the simplified dynamics, the TCP/AQM network model for the controller design can be derived as shown in Fig. 2. The specific procedure of this derivation is described in [17]. The transfer function P(s) can be written as (8)

C. NOMINAL TCP/AQM NETWORK MODEL
Based on the linear model shown in Fig. 2, a nominal TCP/AQM network model was proposed in [30]. In this paper, this nominal TCP/AQM network model was utilized to simplify the design of the AQM controller.   Figure 3 shows the entire control system with a nominal TCP/AQM network model, where P n (s), C(s), δp ref , and d dp denote the nominal TCP/AQM network model, controller, reference packet drop probability, and disturbance in the packet drop probability dimension, respectively. The nominal TCP/AQM network plant model P n (s) is defined as (9) where N n and C n denote the nominal number of TCP sessions and the nominal bottleneck link capacity, respectively. The disturbance d dp includes the modeling errors due to linearization, nominalization, and coexistence of non-TCP flows such as user datagram protocol (UDP). The notation for input to the TCP/AQM network is changed from δp to δp ref along with the nominalization.
In addition, the inertia model in the TCP/AQM network dynamics M n is defined as (10) From (9) and (10), the following relationship between P n (s) and M n can be derived: Using this inertia model M n , the block diagram shown in Fig. 3 can be redesigned as shown in Fig. 4, where G c denotes a feedback controller such as PD [24] or PID [18], and δq ref denotes the reference queue acceleration. The reference packet drop probability δp ref is calculated as shown in (12).
The feedback controller G c (s) calculates δq ref from δq; the design of the controller is described in the following section.

III. CONTROLLER DESIGN
In this section, the designs of the PID controller and PD controller with DOB are described. The controllers and DOB are designed based on the nominal TCP/AQM network model shown in Fig. 4. In addition, the operation point of the packet drop probability p 0 ≈ 0 is assumed in this study, which implies that δp = p.

A. PID CONTROLLER
As shown in Fig. 4, the feedback controller G c (s) calculates the reference queue acceleration δq ref from δq. When the PID controller is utilized, δq ref is calculated as (13) where K p , K d , and K i denote the proportional gain, derivative gain, and integral gain, respectively. Thus, using (12) and (13), the reference packet drop probability δp ref calculated by the PID controller can be derived as (14).

B. PD CONTROLLER WITH DOB
When the PD controller is utilized, δq ref is calculated as (15) Thus, using (12) and (15), δp ref calculated by the PD controller can be derived as (16) In order to suppress the effect of the disturbance d dp , we have implemented the DOB [31] as a disturbance compensator. Because the TCP/AQM network has an input delay in its system, the DOB must consider the time delay element [39]. By compensating the disturbance, the DOB attempts to make the actual TCP/AQM network behave identical to the nominal model. Figure 5 shows the TCP/AQM network with the DOB, where δq, δp cmp , and δp sat denote the queue velocity, the reference packet drop probability including the compensation signal from the DOB, and the reference packet drop probability after the saturation function, respectively. In addition, d dp , R n , and g dob denote the compensation signal output from the DOB, the nominal time delay, and the cut-off frequency of the DOB, respectively. By assuming that R n = R 0 , the DOB estimates the value of d dp through the low pass filter, as (17).
The DOB suppresses d dp by modifying the reference packet drop probability as follows: Because the actual input to the TCP/AQM network is the probability, its value must be between 0 and 1. The saturation function will alter the value of δp cmp based on this rule, as expressed as (19) By assuming that the error due to saturation does not occur, i.e., δp sat = δp cmp , the relationship at the point where the disturbance d dp joins the control signal can be obtained as (20) M n sδq = e −sR 0 δp sat +d dp − d dp where the high-pass filter H = s s+g dob and the low-pass filter L = g dob s+g dob . Using (20), the equivalent block diagram of Fig. 5 can be obtained as shown in Fig. 6. Ideally, if g dob → ∞ and R 0 → 0, the disturbance is suppressed completely, i.e., the TCP/AQM network model perfectly converges on the nominal inertia model of the TCP/AQM network M n . The block diagram of an ideal TCP/AQM network with its disturbance suppressed perfectly is shown in Fig. 7. The robustness of the system with DOB against disturbance has been discussed in previous studies [30], [32].

IV. PROPOSED CONTROL SYSTEM
In this section, the implementation of the SP is described and the entire control system, including the PD controller,  DOB, and SP, is presented. Along with the block diagram of the proposed control system, additional procedure needed for the integrated implementation of the DOB and SP is described. After describing the implementation procedure of the proposed method, the stability analysis using Nyquist diagrams is presented.

A. SP
In the feedback control, the control command of the following sampling time is determined according to a deviation of the current command and the response. When a time delay element exists in the feedback loop, the response will be delayed for the same period, inducing a degradation of the control performance. The SP excludes the time delay element outside of the feedback loop by using the control plant model and time delay model [41].
The block diagram of a control system of the ideal TCP/AQM network with SP implemented is shown in Fig. 8, where R(s) and Y (s) denote the input and output of the system in the Laplacian domain. In addition, δp sat and δq sp denote the input and output signal of the SP. The signal δp sat is also the input signal to the ideal TCP/AQM network. As shown in Fig. 8, the SP utilizes the TCP/AQM model and the delay model for its transfer function. By assuming that the error due to saturation does not occur, i.e., δp sat = δp ref , the transfer function of the entire system can be expressed as follows: If the plant model is identical to the actual control plant and the nominal delay R n equals the actual delay R 0 , the equivalent block diagram of Fig. 8 can be obtained as shown in Fig. 9. The transfer function of (21) can be also transformed into (22) Y (s) As Fig. 9 indicates, the time delay element can be excluded from the feedback loop. This means that the characteristic VOLUME 8, 2020 equation of the control system does not include the time delay element, which will enable the design of a controller without considering the effect of the time delay.

B. INTEGRATED IMPLEMENTATION OF DOB AND SP
When implementing the DOB and SP in an integrated manner in the TCP/AQM network congestion control system, its nonlinear characteristics prevents the proper functioning of the simple independent implementation of the two compensators. Because the input to the TCP/AQM network is the packet drop probability, the saturation function must occur right before the TCP/AQM network. Because of this design restriction, the compensation signal from the DOB must be added before the input signal passes through the saturation function, as shown in Fig. 5. In the previous section, the saturation function was ignored and it was assumed that δp sat = δp cmp whereas, in reality, there is adequate chance that δp cmp becomes lower than 0 or higher than 1 according to (19). The effect of the error occurring at the saturation function can be expressed as (23) where d sat denotes the saturation error. By using (23) as an equivalent method of expressing the saturation function, the block diagram shown in Fig. 5 can be redrawn as Fig. 10, and its equivalent block diagram is shown in Fig. 11. The signal alteration caused by the saturation function in Fig. 11 can be expressed as (24) When the SP is implemented in the TCP/AQM congestion control system with the DOB shown in Fig. 10, the SP requires the saturated input signal without compensation by the DOB, δp sat , as shown in Fig. 8. However, the required  input δp sat is not explicitly shown in Fig. 10, since the compensation signal from the DOBd dp is added to δp ref before the saturation occurs. Therefore, our proposed method calculates the required input signal δp sat based on the actual input signal δp sat andd dp and inputs the estimated δp sat into the SP.
Using (18), (23), and (24), δp sat can be rewritten as (25) Considering this relationship, the proposed TCP/AQM network congestion control system which consists of the PD controller, DOB, and SP was designed. Figure 12 shows the block diagram of the proposed TCP/AQM network congestion control system, where G PD (s) denotes the transfer function of PD controller as shown in (15), and δp sp denotes the input signal to the SP, which is expressed as follows: The input to the SP in the proposed method is equal to the required input signal δp sat . Figures 13 and 14 show the Nyquist diagrams of the loop transfer functions when R n values were set to 20 ms and 100 ms, respectively. The proposed PD controller with DOB and SP is denoted as PD + DOB + SP. The conventional PID controller and PD controller with DOB are denoted as PID and PD + DOB, respectively. It was assumed that R 0 = R n and d sat = 0. In addition, d dp was set to 0 in PID and fully suppressed by DOB in PD + DOB and the proposed PD + DOB + SP. The control gains were set to the same values as those in the simulations. The proportional,  integral, and derivative gains of PID were set to 900, 700, and 55, respectively. The proportional and derivative gains of PD + DOB and PD + DOB + SP were set to 900 and 60, respectively. In Fig. 13, all the three methods were stable under this condition of R n = 20 ms. The proposed PD + DOB + SP method resulted in larger gain and phase margins than any other methods. In Fig. 14, PID and PD + DOB were unstable under this condition of R n = 100 ms, while the proposed PD + DOB + SP was stable. The results indicated that the proposed PD + DOB + SP effectively compensated for the effect of the time delay element and stabilized the system even under the time delay, which was also evident from the closedloop transfer function expressed by (22).

V. SIMULATION
In this section, the performance of the proposed TCP/AQM congestion control system using PD controller with DOB and SP is evaluated based on the simulation results. The results are compared with those of the conventional methods, namely the control systems using RED, controlled delay (CoDel) [42], proportional integral controller enhanced (PIE) [43], PID controller, and PD controller with DOB. For simplicity, the proposed method is denoted as PD + DOB + SP, and the five aforementioned conventional methods are denoted as RED, CoDel, PIE, PID, and PD + DOB, respectively.

A. SIMULATION SETUP
Simulations were performed using the network simulator ns-2. The dumbbell shaped network topology shown in Fig. 15 was utilized in the simulations. In Fig. 15, C i s and R i s denote the link capacity and link latency between the sender side bottleneck link router node and the ith (i = 1, 2, · · · , N ) sender node. Similarly, C i r and R i r denote the link capacity and link latency between the receiver side bottleneck link router node and the ith (i = 1, 2, · · · , N ) receiver node. The bottleneck link latency is denoted as R b ; thus, the propagation delay of the ith TCP session T i p can be calculated as shown in (27) Hereon, if the propagation delays of all TCP sessions are equal, the propagation delay is denoted as T p . The network parameters used in the simulations are shown in Table 1, and these are used unless mentioned otherwise. Thus, the propagation delay is set to 100 ms, unless another value is specifically mentioned. In RED [11], the queue weight, minimum threshold, maximum threshold, and maximum packet drop probability were set to 0.002, 50 packets, 150 packets, and 0.02, respectively. In CoDel [44], the interval and target were set to 116 ms and 14.4 ms, respectively. In PIE [45], the update interval, reference latency, and maximum burst allowance were set to 8 ms, 16 ms, and 16 ms, respectively. The parameters for CoDel and PIE were heuristically adjusted so as to have the highest throughput while maintaining the average queue length close to the target queue length of 100 packets. The parameters used in the PD controller, PID controller, and DOB are shown in Table 2. These control parameters were set by referring to [40]. All simulations were performed without using explicit congestion notification (ECN). Figure 16 shows the queue length fluctuations of RED, CoDel, PIE, PID, PD + DOB, and PD + DOB + SP for the whole simulation duration of 300 s. The queue length was obtained every 0.05 s. Figure 17 shows the first 25 s of queue length fluctuations, along with the queue length smoothed using exponential moving average (EMA). The smoothing factor for EMA was set to 0.01. The smoothed VOLUME 8, 2020  queue length was utilized for evaluating the responsiveness of each method.

B. QUEUE LENGTH FLUCTUATION
To evaluate the network performance of each method, the average throughput and goodput were obtained. The average throughput is defined as the time average of total TCP throughput on the bottleneck link. The average goodput is defined as the time average of total throughput excluding retransmission of packets, taking the amount of packet loss into consideraton. This excludes the retransmitted packets from the number of total packets received, denoting how much packet drop occurred.
To evaluate the control performance of each method, the average queue length, standard deviation (SD) of the queue length, maximum queue length, and the total number of empty buffer samples were utilized. The average queue length was measured to evaluate not only the control performance but also average queueing delay. The SD of the queue length was calculated to consider the queue length oscillation and jitter caused by the oscillation. The maximum queue length can be used to consider the occurrence of buffer overflow and maximum queueing delay. The total number of empty buffer samples is defined as the number of measured samples when the queue length is equal to 0, which indicates the duration when the buffer of the bottleneck router is empty. The buffer overflow and empty buffer should be avoided to efficiently utilize the bottleneck link capacity.
To evaluate the responsiveness of each method, the rise time and response delay time of the smoothed queue length were utilized. Both the rise time and response delay time were derived by using EMA of queue length, as shown in Fig. 17. The rise time is defined as the time taken for rising of the smoothed queue length from 10% to 90% of the average queue length. The response delay time is defined as the time taken for rising of the smoothed queue length from the initial value to 50% of the average queue length.
The average throughput, average goodput, average queue length, SD of queue length, maximum queue length, the total number of empty buffer samples, rise time of the smoothed queue length, and response delay time of the smoothed queue length for each method are listed in Table 3. The average throughput, average queue length, SD of queue length, maximum queue length, and the total number of empty buffer samples were measured except for the first 10 s of the simulation duration, to eliminate the surges induced by the TCP algorithm. The ideal behavior of the AQM congestion control system is to maintain the queue length stable at the target queue length without any fluctuation and fully utilize the bottleneck link capacity.
As listed in Table 3, the proposed PD + DOB + SP showed the highest average throughput and goodput among the six methods, followed by PD + DOB and PID. The relationship between the throughput and goodput, which indicated the amount of packet loss, showed a similar tendency for each method. It was confirmed that the proposed PD + DOB + SP provided the best network performance.
PID had the average queue length closest to 100 packets, while the proposed PD + DOB + SP also kept the average queue length within the range of 100 to 101 packets. This means that PID and PD + DOB + SP provided better control performance with respect to target tracking. However, PID provided a larger SD of the queue length than the proposed PD + DOB + SP, which induced a larger jitter in the queue. In contrast, PD + DOB had the smallest SD of the queue length, followed by the proposed PD + DOB + SP. This means that PD + DOB and PD + DOB + SP provided a smaller jitter. However, PD + DOB provided the worst control performance with respect to target tracking. In addition, only CoDel generated buffer overflow among all the methods. The proposed PD + DOB + SP showed the smallest number of samples with the buffer being empty among all the six methods. It was confirmed that the proposed PD + DOB + SP provided the best control performance with no occurrence of buffer overflow and the least occurrence of empty buffer.
The proposed PD + DOB + SP showed the shortest rise time, followed by PID and PD + DOB. The PID showed the shortest response delay time, followed by the proposed PD + DOB + SP. It was confirmed that PID and the proposed PD + DOB + SP provided better responsiveness than the other four methods.
Therefore, the proposed PD + DOB + SP was proven to be the best from the perspectives of not only network performance but also control performance with respect to target tracking and responsiveness. In the following sections, we mainly present the evaluation of link utilization, which is defined as the ratio of throughput to bottleneck link capacity, since the link utilization is the best parameter representing the network performance of AQM. PID, PD + DOB, and PD + DOB + SP are compared since RED, CoDel, and PIE showed worse results than PID, PD + DOB, and PD + DOB + SP with respect to network and control performances. Figure 18 shows the link utilization ratio of the three methods when the bottleneck link capacity C and the nominal bottleneck link capacity model C n were changed simultaneously from 20 to 140 Mbps. The maximum value of C was set considering the throughput upper bound of the TCP flow. A single TCP session can only send up to 20 packets at once owing to the limitation of the maximum window size shown in Table 1. Because the sender host starts sending the next packet after the ACK is returned from the receiver  hosts, it takes an entire RTT to start sending the second set of 20 packets after the first. In other words, the maximum throughput of a single TCP session in packets/s unit can be derived by dividing this maximum window size by the RTT. The theoretical maximum throughput of the system can be obtained by converting the unit to Mbps and multiplying by the number of TCP sessions. The theoretical maximum throughput of the system can be calculated from the maximum window size wnd max , packet size, number of TCP sessions N , and actual RTT R, as shown in (28) wnd

C. CHANGING THE BOTTLENECK LINK CAPACITY
By using the parameters shown in Table 1 and (28), the possible maximum total throughput can be approximated to 166 Mbps. This value decreases even when the queue exists, due to the queueing delay. Thus, the upper bound value of C was set to 140 to ensure that the system would not surpass the abovementioned throughput limit. Figure 19 shows the link utilization ratio when C was changed while C n was maintained at the nominal value of 100 Mbps. This means that the model comprising the controller, DOB, and SP differs in value from the actual network. Hereon, we call this ''changing the parameter with model mismatch.'' The link utilization generally drops as C rises because the inertia of the system increases. This relationship can be confirmed by referring to (10) and (11). However, at a certain point, this relationship reverses and link utilization starts to increase, as implied by the results of PID and PD + DOB shown in Figs. 18 and 19. This is because C becomes sufficiently large for the congestion to reduce. On the other hand, the proposed PD + DOB + SP maintains nearly maximum link utilization ratio at any given value of C, demonstrating its time-delay compensation capability, even with mismatching model value of C n . Figure 20 shows the link utilization ratio when the number of TCP sessions N and the nominal number of TCP sessions N n were changed simultaneously from 80 to 200. Figure 21 shows the link utilization ratio when N was changed while N n was maintained at the nominal value of 100. The lower bound of the value of N was set to 80 owing to its maximum throughput. By using (28), the maximum throughput when N = 60 was calculated to be 99.84 Mbps, which is smaller than C. Thus, N was set to values higher than 60 to ensure that the queue would be generated.

D. CHANGING THE NUMBER OF TCP SESSIONS
The link utilization generally drops as N drops because of the enlarging inertia of the system. This relationship can be confirmed by referring to (10) and (11). However, at a certain point, this relationship reverses and the link utilization increases, as implied by the results of PID and PD + DOB shown in Figs. 20 and 21. This is because congestion is less likely to occur when N is sufficiently small. On the  other hand, the proposed PD + DOB + SP maintains nearly maximum link utilization ratio at any given value of N , demonstrating its time-delay compensation capability, even with mismatching model value of N n . Figure 22 shows the link utilization ratio when the propagation delay T p and nominal RTT delay model R n were changed simultaneously from 20 to 140 ms. The alteration of T p was achieved by changing the value of R i s (i = 1, 2, · · · , N ). Figure 23 shows the link utilization ratio when T p was changed while R n was maintained at the nominal value of 100 ms. The upper bound of the value of T p was set to 140 ms owing to its maximum throughput limit. When T p = 160, the maximum throughput was calculated to be approximately 104 Mbps by using (28). At this point, the maximum throughput limit is greater than C although this is because the effect of queueing delay is ignored. If there are 100 packets of queue when C = 100 Mbps, the queueing delay would be approximately 8 ms. This will lengthen the total RTT, increasing the denominator of (28) and lowering the maximum throughput to 99.04 Mbps. Thus, T p was set to values lower than 160 ms to ensure that adequate queue would be generated to discuss the queue control performance.  As Figs. 22 and 23 show, the proposed PD + DOB + SP maintains the highest link utilization ratio among the three methods under any given value of T p . PD + DOB tends to generally deliver better performance than PID by compensating the time delay element with the DOB, but its compensation effect appears less effective than that of PD + DOB + SP. Figure 24 shows the link utilization ratio of all TCP sessions when UDP flows coexist. We assumed that the UDP flows represent the applications and services, such as video and voice, unresponsive to congestion control. The UDP flows can be considered as disturbance for the system. The UDP flows were implemented in the same manner as the TCP sessions shown in Fig. 15  sending the UDP flow does not even wait for the ACK signal to return from the receiver host. Thus, the coexistence of the UDP flows creates a different situation when compared with the network without UDP flows. From Fig. 24, PID and PD + DOB appear to be affected by the different characteristics of the UDP flows, with the total throughput of the TCP flows being extremely low. On the other hand, the proposed PD + DOB + SP succeeded in maintaining a relatively higher throughput than the other two methods. From this result, it can be said that the proposed PD + DOB + SP can maintain higher throughput even when UDP flows coexist.

VI. CONCLUSION
In this paper, we proposed the AQM congestion control system, which uses a PD controller, DOB, and SP in an integrated manner. The effectiveness of the proposed method was validated by performing simulations using ns-2. The simulations were performed under multiple setups by changing the parameters that mainly affect the behavior of the TCP/AQM network. The simulation results showed that the proposed PD + DOB + SP method generally achieved the highest throughput when compared with the conventional methods. The simulation results with model mismatch also showed that the proposed method maintained its high throughput, demonstrating simultaneous compensation of time delay and model mismatch. In addition, the proposed method maintained a relatively higher throughput of TCP flows than the two conventional methods, PID and PD + DOB, when UDP flows coexisted in the same network. It was confirmed that the proposed PD + DOB + SP has improved performance when compared with the conventional methods. Our future works include the implementation of ECN to improve link utilization and simulations using more complicated scenarios such as those employing multiple bottleneck routers.
Introducing machine learning approaches into AQM is one of the promising solutions to optimize control parameters. If the controller gains, cut-off frequencies, and nominal parameters in the proposed method are adaptively optimized according to network conditions, its performance may be further improved. The real-time optimization of control parameters in the proposed AQM controller is an issue to be addressed.