A Distributed Congestion Control Strategy Using Harmonic Search Algorithm in Internet of Vehicles

Aiming at the diversiﬁed requirements of network application QoS (Quality of Service) in the terminal equipment of Internet of Vehicles, this paper proposes a distributed congestion control strategy based on harmony search algorithm and the Throughput Evaluation Priority Adjustment Model (TEPAM) to ensure real-time transmission of high-priority data messages related to security applications. Firstly, the channel usage rate is periodically detected and the congestion is judged; then, in order to minimize delay and delay jitter as the goal, harmony search algorithm is utilized to perform global search to obtain a better solution for the transmission range and transmission rate. Secondly, packet priority and the TEPAM are applied to indicate the sending right of each packet. The data message priority and throughput percentage factor are used to express the transmission weight of each data message. Besides, the real-time evaluation of path state in MPTCP is carried out by the batch estimation theory model, which realizes the on-demand dynamic adjustment of the network congestion time window. Finally, SUMO, MOVE, and NS2 tools are used to create a VANET-like environment to evaluate the performance of the proposed congestion control strategy. Experimental results show that the proposed method is superior to other three methods in the four indicators of average delay time, average transmission rate, number of retransmissions, and packet loss rate compared with other advanced methods.


Introduction
e rise of intelligent transportation industry provides a safe and efficient traffic management system for traffic managers, drivers, and passengers. e vehicle interconnection network realizes the communication between vehicle-tovehicle, vehicle-to-road, and vehicle-to-service centres by wireless communication technology, which realizes the organic combination of the human-vehicle-road environment and improves traffic safety efficiency. VANET (Vehicular Ad Hoc Networks) is a mobile ad hoc network composed of wireless communication between vehicles and between vehicles and base stations. Vehicles need to exchange information at any time in VANET. e communication between vehicles is usually divided into two types of safety information: Heartbeat Safety Message (HSM) and emergency alarm safety message. HSM is a message sent periodically to exchange information such as location, speed, and driving direction of vehicles. When there is a dense vehicle scene, periodic HSM very easily causes channel congestion and affects driving safety. Besides, a large transmission range can enable safety information to reach longer distances in VANET, but it also increases transmission interference and channel competition. A high transmission rate can update information in time, but it can also cause channel saturation and increase the collision rate of information. erefore, there is a need for a solution that can dynamically and reasonably adjust the transmission range and transmission rate to meet the delay and packet loss rate constraints. Due to the strong mobility of nodes and rapid topology changes in VANET, it is an NP-difficult problem to reasonably optimize the transmission range and transmission rate [1,2]. Reference [3] reviewed the congestion control methods of VANET. We identified the relevant parameters and performance indicators that can be used to evaluate these methods and analysed each method based on multiple factors, such as traffic type and active or passive and the mechanism to control congestion. Reference [4] proposed a control scheme based on Uniparted Objective Tabu Search (UOTS). It found the optimal value of transmission range and transmission rate by Tabu search according to the minimized delay function. However, this scheme did not consider the impact of the packet loss rate and number of retransmissions when calculating system delay. us, it cannot guarantee the solution quality, and convergence speed is slow.
is paper proposes a distributed congestion control strategy based on Harmony Search (HS) algorithm. While ensuring to meet the requirements of most network applications, it effectively improves the real-time performance of high-priority applications. e main innovations are as follows: (1) In many existing methods, it is difficult to ensure the quality of the solution and convergence speed without considering the problem of calculation delay and other issues that affect the packet loss rate and retransmission number. e proposed method uses HS to optimize the transmission distance and transmission rate and reduce the delay and delay jitter. It can achieve good performance in terms of delay, packet loss rate, and throughput. (2) Many existing methods are difficult to guarantee high-priority and real-time performance of sending data packets. e proposed method uses data message priority and TEPAM. e data message priority and the throughput percentage factor are used to express the weight of each data message; the batch estimation theory model is used to evaluate the path status in MPTCP in real time. It realizes the ondemand dynamic adjustment of the network congestion time window, effectively improving the throughput of high-priority applications on the network.
is paper is organized as follows: in Section 1, the research background and innovation of the proposed method are introduced. In Section 2, the related research in this field and the current research status are introduced. Section 2 describes the steps of the proposed method in detail; in Section 3, SUMO, MOVE, and NS2 tools are used to create a VANET-like environment to evaluate the performance of the proposed congestion control strategy. Section 4 summarizes the proposed methods and points out the future research direction.

Related Research
In recent years, with the frequent occurrence of traffic accidents, Intelligent Transportation Industry (ITS) based on VANET has emerged as the times require, providing a safe and efficient transportation system for drivers, passengers, and other traffic managers. Due to the rapid change of network topology of VANET, when vehicles are too dense, congestion will occur, which will cause packet loss and increase the transmission delay, so that it cannot provide traffic information in time and threaten traffic safety. However, due to the shared wireless channel of VANET, it is challenging.
At present, the most proposed congestion control methods are mainly divided into the following categories: (1) reserving bandwidth for high-priority information by limiting the bandwidth occupation of the beacon frame; (2) dynamic Competition Window (CW) is used to adjust the transmission rate of packets; and (3) adjusting the transmission range by adjusting transmission power of the data packet. In [5], a distributed transmission rate control method DRCV was proposed to detect the local channel load periodically and estimate load in the next stage and to meet the requirements of channel load by dynamically adjusting the transmission packet rate. In [6], a distributed power adjustment algorithm D-FPAV was proposed to dynamically allocate transmission power for all vehicles to ensure that the network load is lower than the maximum beacon frame load.
However, the extra overhead of D-FPAV algorithm increases the channel load, and convergence speed of the algorithm is slow. In [7], a distributed congestion control algorithm based on Non-Cooperative Game eory (NCGT) was proposed. e algorithm divided the vehicle into two groups, which represent the vehicle to participate in games, so that the channel load in the next stage does not exceed the total target load.
is method improved the delivery rate and channel utilization to a certain extent.
Reference [8] proposed a control strategy based on a single-target Tabu Search algorithm in IoV (Internet of Vehicles). According to the minimized delay function, Tabu Search algorithm was applied to find the optimal value of transmission range and transmission rate. However, the influence of the packet loss rate and retransmission number was not considered when calculating the delay, so the quality of the solution cannot be guaranteed and the convergence speed was slow. Reference [9] introduced an MPTCP specifically used for multimedia applications in IoV. Reference [10] used MPTCP protocol to improve the efficiency of file transfer in IoV. Nevertheless, the traditional congestion control algorithm in Transport Control Protocol (TCP) is not appropriate for direct application in MPTCP protocol due to the multipath nature of MPTCP. Reference [11] proposed a distributed power adjustment algorithm to dynamically allocate transmission power for all vehicles and ensured that the network load was larger than the maximum beacon frame load. However, the additional cost of this algorithm increased the channel load, and the algorithm converges slowly. An average Packet Loss Rate (PLR) analysis model for VANET was proposed in reference [12]. An explicit expression for the upper bound of average PLR was obtained by using Taylor series expansion, Holder's inequality, and the relay probability relaxation, which can facilitate the selection of parameters at physical and MAC layers for a better PLR. Unfortunately, this method cannot ensure the real-time transmission of high-priority data packets. erefore, the abovementioned methods can be further improved.

Proposed Method
Generally, vehicular communication is divided into two types of safety messages: HSM and emergency alarm safety message. Among them, HSM is a kind of periodic message, which is utilized to exchange information such as position, speed, and driving direction of vehicles. When a scene with dense vehicles appears, periodic HSM is very likely to cause channel congestion and affect traffic safety, as shown in Figure 1.
As shown in Figure 1, when using TCP to transmit data, there are usually three stages.
(1) Start stage (0-knee): when the load on the network is small, with the increase in load the throughput on the network will increase approximately linearly. (2) Accumulation stage: the load on the network continues to increase. After reaching the upper limit of network capacity, the growth rate of throughput will gradually slow down. (3) Overload stage (cliff-∞): the load is continuously increased, so that the network is seriously congested, resulting in packet loss. At this time, the response time of the network increases significantly, the network tends to be paralyzed, and the throughput drops sharply.

Global Search Using Harmony Search.
Congestion control includes two parts: congestion detection and congestion control. e congestion detection section detects congestion by periodically measuring channel utilization [13][14][15][16]. After congestion detection, the proposed congestion control algorithm is executed. Each node independently performs the proposed scheme and independently acquires the optimal value for its own transmission range and number. e flow chart of the dynamic distributed congestion control scheme is illustrated in Figure 2.
e main purpose of the VANET congestion control scheme is to reduce the number of the delays, jitter, packet loss, and retransmission. In the process of delay calculation, the packet loss rate and retransmission quantity are involved, which are representative. erefore, this paper focuses on delay and delay jitter. en, the harmonic Tabu search algorithm is used to optimize the transmission range and transmission rate of vehicle nodes according to the objective function. In VANET, packet transmission delay consists of processing delay (D proc ), queuing delay (D queue ), and transmission delay (D trans ). Processing delay is the time to execute various algorithms, queuing delay is the waiting time of packets in the queue to be transmitted, and transmission delay is the time required for propagation. e packet transmission delay is expressed as where d is the distance between the sender and the receiver and TX is the transmission range. d/TX is the number of relay nodes between the sender and the receiver. Since the processing delay (ns level) is very small compared with other delays (ms level), it can be ignored. e queuing delay is calculated as follows: where ρ is the packet delivery rate, and its value is equal to λ/μ, where λ and μ are the number of successfully delivered packets and sent packets, respectively, and Q L is the maximum queue length. e calculation formula of transmission delay is D trans � T B + T F , in which T B is the backoff delay and T F is the frozen backoff delay. e fall back delay (T B ) is calculated as follows: where η is the length of the fall back delay slot, and its value is 20 us in VANET; W max is the size of the largest competition window, with a value of 1024 time slots; W min is the minimum competitive window size, with a value of 32 time slots; and m is the maximum number of fall back stages, with a value of W max � 2 m W min . According to IEEE 802.11, the value of m is 5; N RT is the expected number of successful deliveries, which is calculated as follows: where s is the number of fall back stages, and its value is 7 according to IEEE 802.11 standard; P c is the collision probability, and its calculation is

Scientific Programming
where N c refers to the number of competitors within the transmission range. When the channel is congested, the freeze back time T F will appear. e calculation is as follows: where P T is the time period of packet transmission including SIFs, DIFS, Data, and ACK; t is the number of competitors in the transmission range; and f(t)is the number of packet retransmissions in case of collision.
where τ is the transmission probability, which is calculated as τ � (2(1 − p 0 ))/(w 0 − 1), where w 0 is the current backoff window size, and its value is 8V, V is the number of vehicles within the transmission range (V is the fixed value during propagation); and p 0 is the packet loss rate of MAC layer packets in each vehicle. HS is a new heuristic search algorithm. In the performance of music, a wonderful harmony state can be achieved by repeatedly turning the notes of instruments in the band. HS algorithm is used primarily for fast search in Harmony Memory (HM). erefore, HS algorithm can be utilized to optimize the transmission range and rate and minimize delay and delay jitter [17][18][19][20]. e main parameters of the HS algorithm are Harmony Memory Size (HMS), Harmony Memory Considering Probability (HMCR), and tuning probability (PAR), in which the HMS is a key parameter in HS. e larger the HMS is, the stronger the ability to locate a global optimal solution will be. However, excessive HMS, which is usually 5, will affect the speed of convergence to the optimal solution. HMCR has a great influence on the generation of the original solution, and a large value is conducive to the local search of the algorithm, which is 0.9. e tuning rate par, which controls local searches, allows the search to escape from local optimality with a value of generally 0.3.
Basic steps of HS are as follows: (1) HS parameters are initialized to set HMS, HMCR, and PAR parameters. (2) HM bank is initialized, and the initial matrix HM is composed of randomly generated HMS initial solutions.
HM � (3) New solutions are generated by HM search, random selection, local disturbance, and other operations. e generation rules are as follows:  where ran (1)  , then local perturbation of the new solution is required according to the probability par, and the rules are as follows: If ran(1) ≤ PAR, then the decision variable is selected among its neighbours; otherwise, the original variable remains the same. e variable obtained after limited disturbance is , (m � 1, 2). (4) HM is updated, the innovative solution is evaluated according to the fitness function, and it is replaced if it is better than the optimal solution in current HM.

MPTCP Link Condition Analysis.
e abovementioned procedure is iterated, and HS is ended when a predetermined number of iterations or termination conditions are reached.
Link throughput varies with link load, and link conditions of MPTCP are predicted by analysing the proportion of throughput growth. Based on the proposed TCP link throughput model, throughput x r (t) at time t can be obtained by the following formula: Here, R r (t) represents the delayed response time at time t on the path r, Round-Trip Time (RTT), and p r (t) represents the grouping loss rate at time t on the path r ∈ M u , M u is the set of all available paths for any application u. According to formula (11), the derivative of x r (t) can be obtained: According to the analysis of formula (12), the throughput on path r at any time has the following x r (t) attribute: (1) If the delay response time R r (t) and packet loss rate p r (t) on path r at time t both increase, then x r (t) will decrease (2) If the delay response time R r (t) and packet loss rate p r (t)on path r at time t both decrease, then x r (t) will increase us, the set C r is determined to represent the changing trend of throughput for the MPTCP link.
C r � t|t ∈ arg 2p r (t)ΔR r (t) + R r (t)Δp r (t) > 0 , (13) where C r is derived from equation (12), which is the set of path r with gradually decreasing throughput at time t. ΔR r (t) and Δp r (t)are for the convenience of calculation. R r (t) − R r (t − 1) and p r (t) − (t − 1) can be used to simplify the representation of p r .

3.3.
roughput Evaluation Priority Adjustment Model. e proposed method uses a batch estimation algorithm for throughput prediction, which is robust in one-dimensional nonlinear systems. e working process of the algorithm consists of two steps: the first step is adaptive, and the coefficient is calculated by batch estimation algorithm with measuring and calculating the data at time t and time t − 1. e second step is prediction. e data from the first step are used to estimate the possible value at the moment t + 1 by the algorithm. e estimated value obtained by batch estimation algorithm represents the predicted throughput, which can predict the throughput of data stream in the future. t + 1 hour throughput forecast X(t + 1) for t + 1 can be obtained from the following formula: where the X(t + 1) estimate for t + 1 hour x, said on the estimate of alpha t time, estimates of the alpha available type (12) is obtained: Here, Because of the recursive nature of algorithm, no additional information is mandatory, and the real-time prediction can be made using only the measured and estimated throughput values at time t and time t − 1. e prediction method is simple to compute, and the robustness of algorithm can ensure the accuracy of predicted value as much as possible.
e dynamic priority of datagram is utilized to represent the real-time demand of the current datagram. It is described as follows: where p is the priority of application. Depending on the general task scheduling of the operating system, the lower the p value is, the higher the priority will be. R is the Scientific Programming transmission path selected by application, R r is the delay response time of the receiver when it was transmitted last time, R max is the maximum delay response tolerance time constant, after which the message is considered lost, the total data transmission amount of the current task of application is data, and α is the proportional control factor. According to the definition of the IEEE TCP protocol, the maximum data amount of a single data message is 1500 bytes. erefore, α � 1500 is chosen as the proportional control factor in this paper. at is, if the transmission data of an application is lower than the maximum data transmitted by a single data message, the transmission data of the application is relatively small. e throughput ratio factor is utilized to represent the weight of network resources required by an application. e expression is as follows: If the dynamic priority of an application is TP, the priority value range of the system is M to N. It can be seen from the definition that when the dynamic priority of transmission application is low, i.e., TP ≥ MID, its throughput ratio factor β ∈ [− 1, 0] has no effect on guaranteeing the throughput occupation ratio of lowpriority application. When the dynamic priority of transmission application is high, namely, TP < MID, its throughput ratio factor β ∈ [0, 1], and the minimum throughput occupation ratio of high-priority applications in the current link can be properly guaranteed.
By means of throughput prediction, the congestion condition of the path can be obtained more accurately, which further improves the system transmission efficiency. However, the calculation amount is very small compared with the contemporary computer performance, so its impact on the transmission performance can be almost ignored.
On the other hand, the proposed method mainly considers the transmission requirements of high-priority tasks, so it will enhance the transmission time of low-priority tasks while reducing the transmission time of high-priority tasks. At the same time, due to the limitation of algorithm packet loss policy, when the transmission processes in the system are all extremely high-priority processes, or all extremely low-priority processes, the system transmission efficiency will be greatly affected, but this problem can be avoided by applying settings.

Experimental Parameter Settings.
In the experiment, the network simulator NS2 was used to build the traffic system model, and the vehicle-mounted network mobile model generator was used to connect the traffic simulation tool SUMO with the network simulation tool NS2. erefore, with SUMO, MOVE, and NS2 tools, a VANET-like environment can be created to evaluate the performance of proposed congestion control strategy. e experiment is considered as an urban traffic scenario (4 lanes, 2 in each direction), in which communications between vehicles and the base station follows the eyes 802.11p protocols [21,22].
In addition, data transmission in the MAC layer has carrier monitoring multiple access mechanisms, and the propagation model of wireless signal uses the Nakagami attenuation model. e simulation time is configured on 200 s, where the transmission range and transmission rate are l0∼1000 m and 3-27 Mbps, respectively. e transmission range values are 10, 50, 100, 125, 150, 210, 300, 350, 350,  450, 550, 650, 750, 850, 850, 930, 970, and 1000 m. e standard values set for transmission rates are 3, 4.5, 6, 9, 12, 18, 24, and 27 Mbps. So, there are 136 combinations of the transmission range and the transmission rate. Parameters of urban traffic scenes are shown in Table 1.

Comparison and Analysis of Results.
In order to evaluate the performance of the proposed congestion control strategy, the proposed method was compared with the algorithms in [8,9,12], and the following four indicators were set: (1) e average delay time of data packet transmission from the sender to receiver (2) Mediocre throughput of the average rate at which information is successfully transmitted in a transmission channel (3) Packet loss rates of the ratio of the number of lost packets to the number of transmitted packets (4) e number of retransmitted packets (each experiment was performed 20 times and the average value was estimated)

Results Varied with the Number of Vehicles.
e average delays varied with the number of vehicles are shown in Figure 3. e throughput varied with the number of vehicles is shown in Figure 4. e packet loss rate varied with the number of vehicles is shown in Figure 5. e retransmission quantity varied with the number of vehicles is shown in Figure 6.
As can be seen from Figure 3, with the increase of the number of vehicles, the possibility of channel congestion becomes larger, resulting in increased delay. Surprisingly, the proposed method gets the smallest delay. When the number of vehicles is 200, the proposed method reduces the delay by about 76.8%, 73.6%, and 33.6%, respectively, compared with [8], [9], and [12].
As can be seen from Figure 4, an increase in the number of vehicles results in an increase in the number of communication packets, which increases throughput. When the number of vehicles is 200, the average throughput in [8], [9], and [12] is 17.55, 22.23, and 12.38 Mbps, respectively. Since the reduction of channel collisions and the improvement of channel utilization can be effectively improved by the proposed method, the highest network throughput is achieved.
As shown in Figure 5, the packet loss rate increases with the number of vehicles. Because the more the vehicles are there, the greater the communication pressure and interference of the channel will be. However, the proposed method has the lowest packet loss rate. Compared with algorithms in [8], [9], and [12], when the number of vehicles is 200, the proposed method has reduced the packet loss rate by 37.8%, 28.8%, and 12.9%, respectively. When packets are lost, they need to be retransmitted, so a lower packet loss rate can decrease the number of retransmitted packets with transmission delay and then increase the throughput. e packet loss rate of algorithms in [8] and [12] fluctuates greatly in the transmission process. e algorithm in [9] has a high packet loss rate due to excessive link congestion. e adjustment effect of congestion avoidance algorithm on the congestion window value is more intuitively shown.  The proposed method Ref. [12] Ref. [8] Ref. [9]   Ref. [12] Ref. [8] Ref. [9]  The proposed method Ref. [12] Ref. [8] Ref. [9]  The proposed method Ref. [12] Ref. [8] Ref. [9]  As shown in Figure 6, the data packet retransmission numbers can be reduced by using the proposed method. When the number of vehicles is 200, compared with methods proposed in [8], [9], and [12], it can be reduced by 46.2%, 36.8%, and 22.8%, respectively.

Results Varied with the Simulation Time.
e average delay and throughput varied with the simulation time are shown in Figures 7 and 8, respectively, and the simulation time was set as 50, 100, 150, 200, and 250 s, respectively.
As is shown in Figure 7, at the beginning of the simulation, the higher collision in transmission leads to higher delay, but it will decrease rapidly with the operation of various congestion control algorithms. From the 50 s to the 250 s, the average delay in [8], [9], and [12] and the proposed method is decreased by 36.8%, 42.6%, 58.8%, and 62.8%, respectively. Among them, the proposed method owns the lowest average delay.
As shown in Figure 8, at the beginning of the simulation, the throughput of various algorithms is similar, and with the execution of the optimization process, the throughput increases obviously until reaching saturation. e throughput of the proposed method is the highest because the proposed method automatically adjusts the transmission range and transmission rate of vehicle nodes and effectively improves the throughput.

Conclusions
Based on the existing congestion control algorithm MPTCP, this paper proposes a distributed congestion control strategy based on HS and TEPAM according to the data transmission requirements that will appear in the future IoV system. e proposed congestion control algorithm can solve the realtime data transmission problem with high-priority requirements and further improve the data transmission efficiency of MPTCP. Simulation results show that the proposed algorithm significantly improves the data transmission speed of high-priority applications compared with other congestion control algorithms. Furthermore, it improves the overall data transmission efficiency, which helps improve traffic safety.
Although the congestion control algorithm proposed in this paper has been relatively perfect, it cannot meet the priority transmission requirements of security applications in the Internet of Vehicles and other systems. e future research direction is to determine the priority based on the importance of information and further rationally adjust the transmission method to ensure the priority and safe transmission of important information. In addition, we will consider appropriately to adjust the packet loss strategy of algorithm according to the priority of current transmission task in system, as well as adjust the throughput prediction model to better adapt to various network environments.

Abbreviations
MPTCP: Multipath transport control protocol TCP: Transport control protocol DRCV: Distributed transmission rate control method HSM: Heartbeat safety message HM: Harmony memory HS: Harmony search HMS: Harmony memory size HMCR: Harmony memory considering probability PAR: Tuning probability TEPAM: roughput evaluation priority adjustment model.

Conflicts of Interest
e authors declare that there are no conflicts of interest regarding the publication of this paper.