Standard SCTP scheme is effective for reliable data transfer in wired networks, but it suffers serious performance degradation in the heterogeneous networks due to misjudging the wireless and congestion losses. A good loss differentiation and congestion control scheme is required in the new generation IP networks. In this section, we briefly introduce recent solutions to address these problems in SCTP. Since TCP has the same problems as SCTP and end-to-end semantics of the proposed scheme is our main concern, wireless enhancement on TCP end-to-end approaches will also be introduced. Besides, we will specify why current SCTP modifications cannot work well in the hybrid wired-wireless topologies.
2.1. Wireless Enhancement on SCTP
There are several researches which aim at the issue of SCTP performance over heterogeneous networks. Current SCTP solutions over the wireless issue can be categorized into two categories: (1) intermediate node supported approach and (2) end-to-end approach. The main idea of intermediate node supported approach relies on the intermediate nodes, such as base station or router, using several mechanisms to help sender to differentiate loss events. Collaborative SCTP [
15] and ECN-D SCTP [
16] belong to this category. However, end-to-end approach only uses the information of sender and receiver transmission data to judge the loss event. WiSE [
17] is a part of this category.
Collaborative SCTP, a new scheme with the collaboration of multiple entities and cross layer interactions, is designed to deal with variable bit error rate of wireless network, especially in high BER wireless channel. In contrast to other schemes, this approach exploits SCTP features, message-oriented and multistreaming, to cope with loss differentiation problem. Analysis indicates that the smaller the frame size, the greater the probability of successful transmission in the high BER wireless networks. Based on the characteristic of SCTP packet, SCTP sender can transmit chunks into small packets by disassembling large packets, to alleviate wireless losses in high BER wireless networks. The drawback of the disassembly function is to produce more overhead by IP and SCTP headers. In addition, other hosts, such as the base station and the receiver that receives fragmentation data should have the reassembly function to recover the original packets. The disassembly function also can help in differentiating wireless loss from congestion loss. Sender logs the bundle chunks and uses the records to distinguish loss events. If all chunks in an original packet have been lost, we would have viewed it as a congestion loss. Otherwise, the sender considers that wireless loss occurred and retransmits the lost packet without dropping the congestion window. After observing the simulation results, when BER is very low, the overhead of disassembly function may damage performance due to the transmission of more headers and control frames. SCTP hosts should try to estimate the current BER and decide when to activate these functions. Unfortunately, the implementation of this scheme is complicated because of cooperation of multiple layers and multiple entities. In addition, base stations may get burdened under the heavy traffic load since the execution of the disassembly function would exhaust the CPU resource and cause the poor performance.
ECN-D SCTP proposed a fine-tuned explicit congestion notification (ECN) mechanism [
18] for SCTP in the wireless environment. Based on the ECN scheme over SCTP, it can differentiate loss events accurately to improve throughput performance. ECN is implemented in internal routers between sender and receiver. The router cooperates with active queue management (AQM) schemes, such as RED. If queue size in router exceeds the threshold, router is required to mark incoming packets to inform the congestion events instead of dropping the packets directly. When receiver gets the ECN signal, receiver will send ECN-echo marked acknowledgement to sender. After sender receives the acknowledgement which be marked with ECN-echo chunk, they can differentiate wireless losses from congestion losses by Congestion Coherence scheme. According to the scheme, there are two scenarios in which wireless losses occur: (1) only wireless losses occurred for current window, (2) wireless losses and congestion losses occurred simultaneously. In the former scenario, we can easily find out that wireless losses occurred because no ECN message is received. SCTP source should not reduce the congestion window size when no network congestion happens. In the latter, ECN-D SCTP proposed that it reacts to congestion only once for a window of data. In other words, SCTP sender does not identify the reason of lost packets; all packet losses will be viewed as noncongestion losses after reducing congestion window once.
Wireless SCTP Extension (WiSE) tries to exploit the multihoming feature of SCTP by selecting one of the available paths which has better condition for data transmission. WiSE uses available bandwidth estimation techniques to infer loss events which are due to congestion or radio channel errors. Furthermore, the proposed scheme continues to probe available bandwidth on the current transmission path and other alternative paths. If the primary path is under heavy load, such as severe congestion (Timeout), and alternative paths are slightly loaded, WiSE will switch the transmission to another better alternative path. Thus, the key point of this scheme is the accuracy of bandwidth estimation schemes. TCP Westwood [
19,
20] is adopted for estimating the available bandwidth on primary path. WiSE has a good path selection scheme for SCTP multihoming, but the bandwidth estimation scheme of TCP Westwood still overestimates the available bandwidth. The incorrect estimation may result in poor performance in the wireless network. Besides, over asymmetric links, such as 3G wireless networks, cannot adapt this scheme because of its bandwidth estimation scheme based on monitoring ACK reception rate.
2.2. Wireless Enhancement on TCP End-to-End Approaches
Congestion control of SCTP is a slight modification which is based on TCP congestion control. Therefore, we should refer to TCP enhancements over wireless networks. Intermediate node supported approaches violate the end-to-end semantics and need to modify intermediate nodes in support of detecting the network condition. In the hybrid wired-wireless networks, intermediate node supported approaches may lack of flexibility to extend network topology. Hence, we regard TCP end-to-end approaches as our main reference.
TCP Vegas [
21,
22] aims to improve the end-to-end congestion avoidance mechanism of TCP. The main objective is to estimate the expected bandwidth for the connection in order to control the transmission rate that can avoid network congestion. This scheme defines
BaseRTT value which represents the minimal round trip time during the transmission to calculate the expected transmission rate of this link. After receiving an acknowledgement, sender continues to update
ActualRTT value which means the current round trip time to calculate the real transmission rate. The difference between
BaseRTT and
ActualRTT should be ranged between the thresholds which Vegas defined. If the difference is higher than upper bound threshold, congestion may occur since sending rate is too high. Thus, sender decreases one congestion window size. If the difference is smaller than lower bound, sender should increase one congestion window size so as to utilize the available bandwidth. Or else, sender should keep the sending rate. As we know, TCP Vegas suffers fairness problems when the connections start transmitting at different times. The
BaseRTT is not the same in this circumstance. Besides, TCP Vegas is not suitable for wireless network since it cannot distinct loss events.
TCP Veno [
23] is a loss differentiation scheme for the wireless environment and it is derived from TCP Vegas. This method provides another threshold to differentiate between wireless and congestion losses. Although the performance is improved in wireless environment, the loss differentiation scheme cannot work well when the random loss rate is high. And it still does not solve the problem of
BaseRTT.
TCP Jersey [
24] is another enhancement which improves network performance in wireless network. This scheme consists of two key components: one is congestion warning (CW) and the other is available bandwidth estimation (ABE). CW designs a simple packet marking scheme which modifies current ECN scheme to differentiate loss events. The main difference is that CW proposes that router should mark all packets while the average queue length exceeds the threshold. The nonprobabilistic scheme leaves sender to use proper congestion control strategy in different circumstance. Besides, it considers that original ECN information is not timely enough to react to variable network environment due to its parameter settings. The larger queue weight can be used to track the correct queue length and smooth the instantaneous queue length. ABE uses a rather simple estimator to estimate the available bandwidth by monitoring the returning ACK rate at the sender side. Sender calculates the optimum congestion window size for adjusting its rate when congestion occurred.
TCP Jersey makes good use of CW and ABE schemes to propose a rate-based congestion window control mechanism. With the help of these two schemes, if duplicated ACKs are received without CW mark, congestion window size should be kept the same size and sender retransmits the loss packets immediately. On the other hand, if duplicated ACKs are received with CW mark, sender will enter the rate control procedure to adjust its slow start threshold and congestion window size to the latest optimum congestion window size. This scheme sets its congestion window to a more sensitive value when different types of loss events occurred. But it still needs the router support, and this estimator cannot perform well when the traffic load gets heavy over reverse links or asymmetric links.
The main idea of JTCP [
25] is to apply the jitter ratio to differentiate wireless losses from congestion losses and revise the Reno's congestion control scheme to adapt to wireless environments. Jitter ratio [
26] is derived from the interarrival jitter, which is defined in Real-time Transport Protocol (RTP) [
27]. Interarrival jitter is the variance of packet spacing at the receiver side and packet spacing at the sender side. In other words, it presents current path's status by the packet-by-packet delay. The interarrival jitter (
) is defined as follows:
Note that
and
mean the index of continuous packets which sender sent.
represents the receiving time of packet
at receiver, and
represents the sending time of packet
at sender. When
is larger than zero, we can find that some cross-traffic is inserted into packet
and
. So it causes the packet
to be queued at the intermediate node for a while. The valuable information can be exploited to observe the congestion state of current transmission path approximately. Based on the above concept, jitter ratio (jr) is defined to estimate the ratio of queued packets. Relying on the interarrival jitter is sufficient to indicate the congestion event directly. JTCP provides an enhancement, jitter ratio, which can provide the estimation for the current status of bottleneck queue. The scheme tries to model the status of queue to prove jitter ratio is enough to provide effective information for detecting congestion events. Supposed that
(sec) is the packet-by-packet delay of the packets arrival at the router, and
(sec) is the delay of the packets departure from the router, and
is the service rate of router
According to the equation, the ratio of queued packets can be defined as follows:
When traffic load becomes heavy, the queued packets are increasing in the bottleneck queue. If queued packets arrive at the maximum limit of the buffer, incoming packets at the router will be dropped right away. Thus, the ratio of dropped packets will approximated as the ratio of queued packets. Jitter ratio could be taken to predict the loss ratio. In the following, jitter ratio is formulated as follows:
Due to the characteristic of predicting ratio of queued packets, jitter ratio plays an important role in JTCP for loss differentiation scheme. JTCP combines the jitter ratio with its congestion control and do proper actions for different loss events. Because of TCP, reaction time from sending a packet to receiving an ACK is about one RTT; average jitter ratio of JTCP will be sampled once per RTT. When sender's congestion window size is
, the average jitter can be defined as
Then the average jitter ratio is defined as follows:
When TDACKs or timeout occurred, JTCP compares the average jitter ratio with the threshold, which is defined as the inverse of congestion window size. If average jitter ratio is greater than this threshold, JTCP regards the loss event as congestion loss and reduces its congestion window size to one half. Otherwise, the loss event will be viewed as wireless loss. Sender will not reduce the congestion window and will do fast retransmission immediately.
In [
25], the jitter-based congestion approach has demonstrated performance advantage and interprotocol fairness over existing wireless TCP solutions, such as TCP Westwood and Newreno. Different from TCP Jersey, the jitter-based solution does not require routers to support ECN and there might be enough time to obtain ECN as the buffer at a congested router is overflowing. In this paper, we will apply the jitter-based congestion control mechanism to our wireless SCTP scheme. There are still some problems which need to be solved for jitter-based loss differentiation scheme in some circumstances. We will address this problem and increase the accuracy of loss differentiation scheme. Besides, we will adopt available bandwidth estimation scheme for more sensitive congestion control in order to achieve better throughput.