Adaptive Quality-of-Service Allocation Scheme for Improving Video Quality over a Wireless Network

The need to ensure the quality of video streaming transmitted over wireless networks is growing every day. Video streaming is typically used for applications that are sensitive to poor quality of service (QoS) due to insufficient bandwidth, packet loss, or delay. These challenges hurt video streaming quality since they affect throughput and packet delivery of the transmitted video. To achieve better video streaming quality, throughput must be high, with minimal packet delay and loss ratios. A current study, however, found that the adoption of the adaptive multiple TCP connections (AM-TCP), as a transport layer protocol, improves the quality of video streaming by increasing throughput and lowering packet delay and loss on high QoS wireless networks. The main objective of this study is to develop a Quality of Service (QoS) method for enhancing video streaming quality over wireless networks. For that, this paper proposes a bandwidth aggregation adaptive multiple TCP-connection (BAM-TCP) scheme to enhance the video streaming quality. BAM-TCP combines AM-TCP with a bandwidth aggregation (BAG) method to aggregate bandwidth from numerous connections. Simulation experiments demonstrate that the BAM-TCP method enhances throughput while minimizing packet loss ratio and end-to-end delay.


Introduction
TCP-based video streaming has continued to grow in popularity over the last few years [1]. These streaming services are no longer limited to users with wired link cables but are increasingly aimed at mobile network users as well [2]. The transmission control protocol (TCP) was designed to offer a highly reliable, end-to-end byte stream over an unreliable network [3,4]. It "cares" about the quality of the data stream and prioritizes an ordered, reliable delivery of packets [5].
Recently, most wireless network users are persistently demanding a high-quality video streaming application. However, video streaming is affected by the network metrics such as bandwidth, delay, and packet loss [14][15][16]. To achieve a better video streaming quality, the throughput must be a high-level value, low latency, and low packet loss ratio. The high throughput is to improve the quality of video by delivering a significant number of video packets to the destination. Also, the video streaming quality is depending on the waiting time for video playback on the user side, which requires delivering the video packets in a minimum limit time without long delay time. The packet loss affected negatively video quality when losing some packets represents an image from the video which producing a discontinuous video playback.
The rest of this paper is organized as follows. Section 2 presents a comprehensive literature review. In Section 3, we present the proposed BAM-TCP. In Section 4, we present simulation and experiment Settings. Section 5 presents the research results and discussion, and Section 6 presents the conclusion and future work.

Background and Related Work
Video streaming is a series of pictures transmitted over the network in compressed (encoding) form and viewed by the client after decompressed (decoding) process [17]. Fig. 1 demonstrates the encoding video as series of pictures delivered over the wireless network to the mobile devices and playback the video after the decoding process. Video streaming applications include the video conference, visual phone, and any multimedia application which requires timeliness, orderliness, and wide bandwidth [18,19]. The chain procedures of encoding and decoding try to minimize the bandwidth consumption for video transmission and minimize the storage size.
The video streaming distribution to the mobile devices is fairly constrained, because of the client's large number and the wireless network's restricted bandwidth [10,20]. The delivery of video streaming to mobile devices in wireless networks is enabling to distribute in the same arrangements as on the super networks that are characterized by a high QoS measurement. Mobile video contents must manipulate to reduce the data size and the quality requirements to appropriate the transmission network. The primary video transmission techniques to mobile devices are non-real-time video streaming and real-time video streaming [21,22].
The researchers in transport layer protocols developed a huge number of methods to enhance video streaming. However, user datagram protocol (UDP) instead of TCP is initially the favored transport protocol for such video streaming transmission. As TCP utilizes packet retransmission and congestion control, which causing extra delay and rate fluctuations, it was not viewed as proper for video streaming applications. A few methodologies were proposed to beat these issues [21,22]. TCP-based multimedia streaming approaches utilize the mixing of customer side buffering and productive QoS adaptation of the streaming data. Customer side buffering obtains some present bandwidth to prefetching video packets to ensure against future rate reduction. Consequently, with sufficient customer side buffering, ephemeral rate varieties presented by TCP, and the delay introduced by packet retransmissions, both can be taken care of.
Typically, the proceeding development of wireless network access and the advancement of network infrastructure have given more extended bandwidth and shorter delays. However, an accepted quality video streaming is currently even with TCP. Numerous video streaming services now utilize TCP as it has many benefits over UDP, for example, firewall traversal, bandwidth fairness, and inherent reliability [5]. Numerous authorities demonstrated the upsides of the utilization of TCP for video streaming. Besides, prior measurement studies have demonstrated that a critical part of commercial streaming traffic utilizes TCP [23].
Generally, the transport layer utilizes a single path for end-to-end communication between the TCP transmitter and TCP receiver. However, the single path transport protocols can't stay aware of the greater bandwidth as well as reliability and fault tolerance demand of multimedia applications. To give end-toend reliability, a TCP agent retransmits the lost packets responding to an acknowledgment packet from a TCP sink [24]. The round-trip time (RTT) will grow because of the retransmission of lost packets. This has prompted a corruption of total throughput and video streaming quality. Additionally, the throughput fluctuation of TCP is ascribed to the diminishment of the sending rate endless amount of a loss occasion. To ease this throughput fluctuation, TCP can be altered to decrease the sending rate by a little element not exactly an endless amount of a loss. However, these methodologies will connect to different disservices, these progressions influence all TCP connections and must be performed by recompiling the operating system (OS) Kernel of the TCP sender, modifying the diminishing multiplicative factor may prompt the instability of TCP, and it is not obvious how these elements can be modified to dynamically control the sending rate.
Many studies have been proposed to explore the multiple TCP connection schemes. These schemes can accomplish higher throughput and exact rate control to dynamically send video streaming packets over multiple TCP connections. Multi connections richly tackle the insufficiencies of single connection protocols by utilizing reverse multiplexing of resources to send packets over an arrangement of connections instead of a single connection. This striping of video streaming packets over multiple connections gives better reliability, fault tolerance, and expanded throughput. Therefore, multimedia applications can benefit from resource pooling and differing qualities given by multiple connections with accomplishing sought QoS.
During the last decade, many researchers try to propose works to enhance video streaming in the manner of multiple connections TCP, however, their works are produced numerous schemes of Multiple TCP connections as a transport layer protocol. To employ the inherited multiple TCP connections advantages, for example, the congestion control to increase the throughput, and exact rate control to distribute video streaming packets over multiple connections to defend the network collapse.
Jung et al. [25] proposed an operative video streaming scheme with AM-TCP connections to ensure the QoS of video streaming by implementing service quality fairness among the broadcasted video streaming to different clients at the same time. This scheme utilizes bandwidth and playout buffer (PoB) efficiently to support quality-fairness, and it different from the conventional schemes based on TCP transport. To achieve the compatibility between the adaptive uses multiple TCP connections and network resources, the proposed scheme used a window-based linear regression model for calculating the PoB status for the nearly next time. The proposed scheme can achieve service quality fairness successfully by guaranteeing the quality of each video streaming session without the quality loss of other service sessions. This scheme improves the video streaming in P2P video transmission. This proposed scheme is suitable to the environment with limited first-mile bandwidths like ADSL, mobile WiMax, and WCDMA. Besides the most important feature which determines the client who needs data at any point in time, this scheme focuses on improving throughput and fairness. The weakness of this scheme careless of the video streaming characteristics as video RD leading to a notable degradation of video streaming quality for clients in wireless networks.
Kim et al. [26] proposed an adaptive packet transmission scheme (APTS) to efficiently distribute TCP flows for mobile users over different wireless paths. APTS utilizes two methods to improve the performance of multiple path scheduling. First, APTS determines the available bandwidth of each path using TCP-friendly rate control for wireless networks (TFRCWN). This provides new round trip time (RTT) estimation and loss recognition methods to correctly determine the available bandwidth of each path. Second, APTS orders TCP packets over multiple paths together according to the prediction of the receiving sequence. APTS can increase the total throughput and hence maximize the quality of video streaming by significantly reducing the occurrence of out-of-order packets and combine the bandwidth among multiple wireless networks. The dependency on the physical wireless paths of this scheme may lead to weakness in the result of the performance because connectivity problems occurred.
Transmission control protocol for the real-time online multimedia environment (TCP-ROME) [27] is a parallel TCP, it is proposed for real-time multimedia that transmit the stream over multi-connections from multi servers to a single user, TCP-ROME divided the stream into individual segments and distributed it over multiple connections, and assemble them at the receiver if any segment is lost TCP-ROME retransmit the segment in another connection, TCP-ROME non-awareness about video RD and wireless channel and demanding high bandwidth.
Multi-TCP [24] is another multiple connections that use it to transmit the same application at a time and for that case, it works in a short-term lake of bandwidth situations, multi-TCP enable the application to control the sending packets rate during the congestion times, multi-TCP implemented at the application layer, multi-TCP is distinguished from the traditional TCP by the ability of the application to control the throughput in many scenarios, multi-TCP non-awareness about video RD and wireless channel demanding high bandwidth.
The Dynamic MPath-streaming (DMP-streaming) [28] is a multipath TCP, it distributes the packets over the multiple path non-statically to assimilation the bandwidth fluctuations, DMP-streaming use a fixed number of connections for streaming session regardless of the video RD and network status, and it cannot handle the long-term decrease bandwidth caused by the fair-share characteristics of TCP, and it is nonawareness about the wireless channel.
The AM-TCP scheme [7] is proposed to guarantee video quality for mobile devices in wireless networks. AM-TCP adaptively controls the number of TCP connections according to the video RD characteristics of each stream and network status. The proposed scheme can minimize the total distortion of all participating video streams and maximize the service quality by guaranteeing the quality of each video streaming session. AM-TCP shares the bandwidth among competing video streams by adapting the rate of each video stream according to its video RD characteristics and network statuses such as the network buffer condition and carrier-to-interference-noise ratio (CINR). AM-TCP scheme did not extend for complicated network situations that involve low bandwidth available links, elevated packet loss, and wireless network long delay.
The aggregating process that utilizes the offered multiple connections bandwidth to achieve a highspeed data transmission logical link, is known as a bandwidth aggregation (BAG) method, the application that requires a high bandwidth so as video streaming can benefit from this kind of links [29]. One of the BAG advantages the throughput guarantees for applications transmitted over the heterogeneous wireless network by providing a high bandwidth logical link [30]. The packet delivery improvement is also an advantage of BAG [31], by duplicating the data packets and transmitted over the multiple connections to the same destination, and by error-free, the problem of arriving two copies of the same packet will be solved by discarding one of the repeated packets. The error correction with frame combining schemes [31] utilizing to remove the errors caused by both arrived packet copies has errors. The reliability can be achieved by providing a spare connection when some connection failures occur [32].
The packet scheduling is an implied advantage of bandwidth aggregation, hence, the scheduling algorithm is concerned with one of the BAG components [29]. Besides the prime function of BAG, which is bandwidth aggregation, there is another function in deciding the priority of packets delivering and scheduling for transmission over multiple connections to guarantee to arrive at the destination within their decoding deadlines.

Bandwidth Aggregation Multiple TCP Connection (BAM-TCP)
BAM-TCP is a transport layer scheme proposed to enhance the video streaming quality by increasing the throughput while minimizing packet loss. However, the proposed BAM-TCP scheme is enhanced production of the AM-TCP scheme [7] with modification of the connection count algorithm by determining the number of the connection that covered by the calculated bandwidth for each user, and proper connection number to the transmission bitrate over packet size. And modifies the adaptive bandwidth allocation to appropriate the mechanism of BAG to aggregate the offered bandwidth of the multiple connections by checking the connection bandwidth if covered the transmission bitrate of the connection to minimize the throughput fluctuations effect. Referring to Fig. 2, the enhanced scheme BAM-TCP inherited most of the characteristics of AM-TCP that achieving higher throughput and decreasing packet loss. Moreover, BAM-TCP able to enhance the transmission over the critical saturation environment such as the wireless network with a lack of bandwidth, because of its properties in adaptive scheduling packets with aggregated bandwidth.
BAM-TCP calculations of optimal video streaming bitrate between two limits, the first, keep maximizing the transmission bitrate until video distortion equal to a minimum value. The second, minimizing the transmission bitrate to reduce network error. A high level of network error leads to a decrease in the transmission bit rate, and the low level of network error supports a high video transmission bitrate. The optimal transmission bitrate depends on the video RD more than the network error level, which is leading to if there are multi-video streams with the same network error level, the allocated transmission bitrate for each stream will be different if the video RD be different. We can find the value of the optimal rate of the video stream is calculated in Eq. (1).
where or Ã i is the optimal rate of video stream i, drd i or i ð Þ the video RD function for each video stream i, Er i is the network error level of each user i, and or i the rate of video stream i.
BAM-TCP scheme adopts the parametric model for characterizing the video RD tradeoff [33]. The parameters d 0 i , r 0 i , and Θ i are fitted from the empirical video RD points of a pre-encoded video stream i. d 0 i is the distortion for each encoded video stream. It is measured as the mean squared error (MSE) between original and reconstructed pixel values. The MSE distortion typically decreases nonlinearly with increasing rate, r 0 i . h i is the video RD factor. These can be fitted to a parametric video RD model as in Eq. (2). These parameters are affected by factors including the coding scheme, the encoder configuration, and the video scene complexity. They are also updated periodically to track the changes of contents in the video stream, typically once for every group of pictures (GoP) [34]. Fig. 3 shows the calculation of the optimal rate for each user, the network error level calculation algorithm computes the E i . The network error level calculation algorithm uses the number of outstanding packets in the network buffer and CINR. When the level of the current network status for each user i, N Ã i , is lower than the minimum level of network status, N min , the error level is E min . If the level of the current network status is higher than the maximum level of the network status, N max , the error level is the maximum error level, E max . On the other hand, when N min < N Ã i < N max , the error level is proportionally increased as presented in Eq. (3). For simulations, this scheme obtained two threshold factors of the error levels where E min ¼ 1, and E max ¼ 10.
To calculate the current network status level, the BAM-TCP scheme at first estimates the number of outstanding packets in the network buffer as in Eq. (4). O i denotes the estimated number of outstanding packets that are currently queued in the network buffer and are calculated in a way that is like existing delay-based TCP and hybrid TCP variants. RTT i;avg is the average RTT of the current updating period, RTT i;min is the minimal observed RTT.
In Eq. (4), RTT i;avg À RTT i;min represents the estimated queuing delay. Since a TCP session sends W packets during an RTT, W i;avg =RTT i;avg could be considered as the current TCP session's transmission rate. W i;avg is the average window size. AM-TCP then calculates the weighted value of wireless channel status,W i , according to the CINR. The weighted value will be chosen according to Eq. (5).
where the current CINR, CINR i , is higher than the maximum CINR, CINR i , the weighted value is 0. On the other hand, if the current CINR is lower than the minimum CINR, CINR min , the weighted value is 1. Otherwise, the weighted value is calculated by CINR levels.
BAM-TCP calculates the network status, N i , based on the number of outstanding packets in the network buffer and weighted value based on CINR for each user as in Eq. (6). To obtain a more stable network status value, the smoothed current network status, N Ã i , is calculated by using the exponentially weighted moving average (EWMA) method as in Eq. (7). The weight k determines the reflection ratio of the current measured network status [7]. For k ¼ 8, this gives weights of x 1 ; x 2 ; x 3 ; x 4 ¼ 1; Figure 3: The optimal rate calculation [7] IASC, 2022, vol.32, no.2 Algorithm 1 shows the proposed BAM-TCP scheme calculation of the available bandwidth for each user and the proper number of TCP connections. To calculate the available bandwidth for the individual user, we use the TCP-friendly rate control (TFRC) [35]. Additionally, to calculate the proper number of TCP connections that satisfy the needs of each user by determining the number of connections that covered by the calculated bandwidth for each user and will be proper to the bitrate over packet size as in algorithm 1, while R TFRC is the calculated throughput, bitrate i is the bitrate of connection i , whereas the pocket size represented by the variable pocketsize, b is the number of acknowledged packets, p is the packet loss rate, tRTT is the round-trip time, tRTO is the retransmission timeout [35], and the conCount referring to the TCP connections number. Algorithm 1 is to prevent the allocating of TCP connections number more than the available bandwidth. Algorithm 1 start with for loop statement which repeats the calculating of the available bandwidth R TFRC , and comparing it with ðRate=packetsizeÞ. If the R TFRC greater than or equal to ðRate=packetsizeÞ, then the number of loops represents the proper number of connections that satisfy the need for each user.
The algorithm of the adaptive scheduling is operating in each application individually. Referring to Eq. (8), the algorithm adjusts the data value size of packet sequence number (PSN), which represented by D PSN for the next packet over the connection of AM-TCP D PSN depending on the adequate bandwidth of the connection. While Eq. (8) uses to calculate the D PSN resulting from the flour integer (the largest integer less than or equal), which is means there is an extra bandwidth did not utilize for data transmission over all the connections. Once the AM-TCP receives the acknowledgment from the AM-TCP sink, the data transmission starts over the connection in bandwidth capacity greater than D PSN , in all the connections. However, the main AM-TCP scheme disadvantage is the high bandwidth connection demanding to transmit the video streaming over the wireless network.
Referring to Eq. (9) and to achieve the in-order receiving sequence data packets by AM-TCP sink, the total of the next data packets that will send over connection j is will be L PSN which is a variable that represents the accumulative value of PSN packets sent all over the multiple TCP connections. Whereas PSN for each connection is determined by TFRC as in algorithm 1.
IASC, 2022, vol.32, no.2 BAM-TCP takes the benefit of modifying the adaptive scheduling algorithm to prepare the new scheme for the BAG method, especially, knowing that the mechanism of BAG must work with packet scheduling [36]. BAM-TCP to implement BAG over TCP connections and after allocating the bandwidth for every connection, it will check the bandwidth if covered the bitrate of the connection or not. This checking is to minimize the throughput fluctuations affection in the wireless network that causing by the inappropriate bandwidth for bitrate [36] and to ensure the number of the outstanding packet in each connection is fitting to the bandwidth in each connection.
Algorithm 2 shows the adaptive scheduling packet and bandwidth allocation algorithm of BAM-TCP. The algorithm containing two parts, the first part is concerned with the comparison between PSN and the allocating bandwidth of the connection, and this part of the algorithm contained a comparison between the allocation bandwidth of connection and PSN, the first comparison result, when the PSN is greater than the allocation bandwidth of the connection, whatever, there is no mismatch with the packet scheduling algorithm to order this PSN, since the big size PSN will be transmitted over more than one connection depending on the packet sequence, most of the PSN size which monitored on test cases it is greater than the allocation connection bandwidth as (1: 1.2). The second condition, when the PSN less than or equal to the allocated connection bandwidth, at this point the BAG will be ordered to set the allocated connection bandwidth equal to the size of PSN and call for update function that located in the second part of the algorithm 2 to update the bandwidth of the connections to the individual user.
Algorithm 2: Adaptive scheduling algorithm and bandwidth allocation of BAM-TCP BAM-TCP represent a non-consumptive paradigm scheme in bandwidth manner, by adding BAG to the modified adaptive bandwidth allocation and packets scheduling algorithm to achieve the bandwidth utilizing offered by multiple connections to main objectives which to produce a higher throughput, decreasing the packet loss, and provide BAM-TCP the ability to transmit video streaming in critical circumstances wireless network, such as bandwidth lack. Fig. 4 demonstrates the simulation topology of a video streaming service. The bandwidth capacity of all links is 100 mbps each. All the links with a delay of 20 ms excepting the link between the router (R) and base station (BS) are 50 ms. The R and BS have a drop tail queue with 50 packets size which is refuse the incoming packets in the overflow case and that causing a packet loss. The video server transmits video streaming to user 1 and user 2 over the wireless network. The background traffic consists of two traffics. The FTP is transmitted over TCP packets with a 40 mbps bitrate. The second traffic is exponential traffic over UDP packets with also 40 mbps bitrate. The transmission bitrate for both traffic is 1 mbps, and 0.5 ms for burst and idle time for both traffics. Tab. 1 contains the simulation parameters included the wireless network parameters. In our simulation topology, we utilize the simulation parameters used by the researcher in Kim et al. [7], to achieve efficient evaluation. As a routing protocol, we utilize an ad hoc on-demand distance vector (AODV), because it offers quick convergence when the position of the mobile node changes. And in the small area, the throughput of the AODV protocol is the highest and it increases with the time of video transmission [37]. The inherited characteristic of BAM-TCP by calculating the status of the network utilizing the weighted value in CINR for every individual video client, BAM-TCP can apply to multiple kinds of the wireless network.

Simulation Environment
Referring to Tab. 2, the simulation uses a video sequence CITY with encoded standard H.264/AVC. The resolution of the video sequence is CIF (352 × 288) pixel per frame. The frame rate of the CITY video sequence is 30 frames per second segmented on video packet size 1500 bytes.
The video parameters mentioned in Tab. 2 are compatible with the case of video mobile devices. The simulation evaluates two video levels which are 16 and 19 depending on the transmission bitrate.

Packet Loss Ratio (PLR)
PLR characterizes the number of dropped packets during transmission. This parameter is critical for those applications that perform guaranteed data delivery. It is also important for video streaming applications since packet drops reduce the quality of transmitted video data. PLR is calculated based on Eq. (10).

Throughput
Throughput specifies the number of megabytes that an application can send over a given time unit without losses. It is one of the most important parameters as most applications include it in the set of their QoS requirements. It is important to note that the throughput represents the cornerstone for video

Result and Discussion
In this section, we will compare the performance of the proposed BAM-TCP scheme with the AM-TCP scheme. The simulations evaluated the throughput, PLR and E2E delay with different transmission bitrate (353.3 and 921.4 kbps) and with different numbers video streaming transmitted to more than one user.  Fig. 5a, the proposed BAM-TCP outperforms the other method. It is obvious that when the video transmits with a high bitrate has been considered, the throughput achieves a high value. The average value and maximum value of BAM-TCP throughput are 1.258 and 1.358 mbps respectively, whereas they are 0.995 and 0.849 mbps in AM-TCP. This is interpreted by the enhancement of bandwidth aggregation on the multiple connections by the algorithm of the adaptive scheduling packet and bandwidth allocation when the algorithm compares the data size and the allocating bandwidth of the connection. If the size of data is greater than the allocation bandwidth of the connection, there is no mismatch with the packet scheduling algorithm to order this data, since the big data size will be transmitted over more than one connection depending on the packet sequence. If the data size less than or equal to the allocated connection bandwidth, at this point the BAG will be ordered to set the allocated connection bandwidth equal to the size of data that want to transmit and call for update function which responsible for updating the bandwidth of the allocated connection for all connection transmitted to an individual user, resulting in an adequate bandwidth for data transmission. Additionally, the appropriate number of connections should be allotted to each user based on the bandwidth calculated for each user. Also, checking bitrate to accommodate connection bandwidth allows for no throughput fluctuations.
The proposed BAM-TCP proved merit even in the low bitrate value which is determined by the network error level. When transmitted a video streaming in 353.3 (kbps) bitrate, referring to Fig. 5b, the proposed BAM-TCP scheme has achieved an average throughput value of 0.559 mbps, and a maximum value of throughput of 0.639 mbps. Whereas AM-TCP achieved an average throughput of 0.363 mbps and the maximum value of throughput is 0.530 mbps. Noticing that the throughput of the proposed BAM-TCP scheme depending on the transmission bitrate, which is determined by the traffic of the network, nevertheless, is still achieved higher throughput compared with the proposed AM-TCP scheme. BAM-TCP offers a significant throughput in a wireless network that is burdened by a high network error level, but it sacrifices bandwidth for bitrate. By definition, the higher bitrate will almost always lead to more PLR in a wireless network; however, the BAM-TCP scheme has worked to alleviate this video streaming obstruction by the success of adaptive packets scheduling and also providing enough bandwidth by ensuring the number of outstanding packets in each connection is adequate to the allocated bandwidth for that connection.  Fig. 7a, the PLR in the BAM-TCP scheme versus simulation time with a bitrate of the high network error level, which is 353.3 kbps, adding to the background traffic, our proposed BAM-TCP has achieved an average PLR value equal to 0.01045%, whereas the proposed AM-TCP has achieved average PLR value equal to 0.011025%. When a large video frame arrives, packets are dropped due to the transmission interface queue overflow. It implies that network error levels may alleviate fouled and reduce packet loss. As shown in Fig. 7b the PLR in the BAM-TCP scheme transmitted a video streaming for two users via a wireless network with a low network error level which leads to increasing the bitrate to a value equal to 921.4 kbps, our proposed BAM-TCP scheme has achieved an average PLR value equal to 0.012924%, whereas AM-TCP has achieved average PLR value equal to 0.014056%. The error level in the network is increasing because of the higher bitrate. However, this raise in PLR is still under the acceptable quality ratio. The two methods have similar results in PLR terms because they use the same method for modifying the bitrate mechanisms. Bitrate calculations depend on two operations: maximizing the bitrate to minimize video distortion, and additionally, providing an adequate bandwidth connection to prevent throughput fluctuations and PLR increasing. In the second operation, we reduce the bitrate to lower network errors and raise the quality.  Fig. 8a, the PLR in the BAM-TCP scheme vs. simulation time with the bitrate of the high network error level which is 353.3 kbps. Our proposed BAM-TCP has achieved an average PLR value equal to 0.013015%, whereas the proposed AM-TCP has achieved an average PLR value equal to 0.014337%. According to Fig. 8b, the BAM-TCP scheme transmits video streaming for three users with a wireless network that results in a low network error level, resulting in increased bitrate to 921.4 kbps, where our proposed BAM-TCP scheme has a PLR value of 0.018077%, while AM-TCP has a PLR value of 0.023976%. It is obvious that when the video streaming transmission is high bitrate will negatively affect the video packets delivering. This setback reduces the video streaming quality by lost a packet represent an important part of the video streaming. However, video streaming in bitrate 921.4 kbps reduces an amount of PLR more than 353.3 kbps bitrate, but this PLR is still within the ratio of quality video.
As shown in Fig. 9a, the average E2E delay in the BAM-TCP scheme with the simulation time when a video server transmitted a video streaming for two users, in a low level of network error which utilizing a bitrate 921.4 kbps. Our proposed BAM-TCP scheme has achieved an average E2E delay value equal to 0.24 ms, whereas AM-TCP has achieved an average E2E delay value equal to 0.36 ms. It can be implied from the fact that the BAM-TCP scheme is considered the factor that contributes to higher transmission bitrate and efficient packets delivering over multiple connections combining with BAG to aggregate the offered bandwidth in multiple connections that it is better than the AM-TCP structure. The higher bitrate will reduce the time that packets are delivered, and the destination will receive them as quickly as possible, with a parallelized bandwidth dedicated to the offered bitrate. As shown in Fig. 9b the average E2E Delay in the BAM-TCP scheme with the three-video streaming users with a high level of network error which utilizing bitrate equal to 353.3 kbps. Our proposed BAM-TCP has achieved an average E2E delay value equal to 0.419 ms, whereas AM-TCP has achieved an average E2E Delay value equal to 0.500 ms. Noticing the E2E Delay is increase with more video streams competing for wireless channel and transmission interface queue in our simulation topology. Moreover, it has a higher average E2E packet delay since the transmitter works at a much lower bitrate.  In this research, we developed a BAM-TCP scheme to improve video streaming quality over wireless networks. The proposed BAM-TCP scheme combines the AM-TCP scheme with the BAG method that aggregates the bandwidth from numerous multiple connections. We evaluated the performance of the BAM-TCP scheme on the allocation of a proper connection number that is assigned using modified maxmin fairness, calculating the optimal transmission bitrate according to the network error level, and controlling the network error level through packet delivery over multiple connections using an adaptive scheduling algorithm. Simulation results show that the BAM-TCP scheme makes the throughput reach a value higher than the former scheme with lower PLR and fewer E2E delays. Furthermore, when different evaluation measures were compared, the BAM-TCP scheme outperformed the AM-TCP scheme significantly.
This work could be improved further if there were multiple routers in charge of video packet routing for multiple base stations, allowing packets to choose the cheapest path. This will expand the narrow gateway for more improvement. Another future work is to enhance the video streaming quality that is transmitted via a heterogeneous network which suffers from the lack of resources such as bandwidth and latency by using multiple connections with aggregation bandwidth to utilize the aggregated bandwidth to increase the total throughput. Furthermore, we will do more simulation experiments using different settings for the network topology.