SCTP (Stream control transmission protocol) is a new transport layer protocol that was published as RFC2960 by IETF (the Internet Engineering Task Force) in October 2000 and amended in RFC4960 in September 2007. SCTP provides reliable ordered and unordered transport services. The congestion control and flow control mechanisms for SCTP are very similar to those for TCP (transmission control protocol). SCTP can apply more than one IP address when establishing associations. SCTP multihoming can support multiple paths in association. These features provide SCTP with some network-level fault tolerance through network address redundancy. SCTP multihoming has tremendous transmission potential. However, SCTP path management is very simple in RFC4960 and therefore cannot effectively distinguish path conditions; it also has no path switch strategy appropriate for wireless networking. These factors all degrade SCTP performance. This study proposes a new path management (quality-aware SCTP) for wireless networks; this includes a new path failure detection method and ICE (idle path congestion window size estimation) mechanism. An experiment using NS2 was performed, showing that quality-aware SCTP can effectively improve the network performance. Quality-aware SCTP is simple and provides a more effective performance than SCTP alone.
SCTP is a new transport layer protocol that was published as RFC2960/RFC4960  by the IETF  in October 2000/September 2007. The design was inspired by the PSTN (public switched telephone network). SCTP was originally designed to provide transport services for SS7 signaling messages over IP networks.
SCTP, TCP, and UDP are transport layer protocols in IP (network layer) architecture. SCTP is a connection-oriented transport protocol similar to TCP. The congestion control and flow control mechanisms of SCTP are very similar to those of TCP, including slow start, congestion avoidance, and fast retransmission. Other significant features of SCTP include multihoming, multistream, SACK (selective acknowledgement), and reliable ordered/unordered transmission service.
SCTP supports the multihoming communication scheme. An SCTP association has a broader concept than a TCP connection. SCTP can apply more than one IP address to establish associations, while TCP simply connects two endpoints using addresses and port numbers. The SCTP multihoming feature supports a path transfer to alternative paths without disconnecting, thus providing some network-level fault tolerance.
An SCTP node needs to perform a setup procedure to establish a communication relationship by exchanging state information. This relationship, called an SCTP association, uses a four-way handshake and an extra cookie mechanism for security (to prevent SYN flooding attacks).
Many modern portable devices have multiple network interfaces to communicate with different devices. For instance, many portable computers can use more than one NIC (wireless network interface card) to connect with different wireless/heterogeneous networks.
A portable device transmits data using only one of the interfaces at a time even when it has multiple interfaces. Therefore, selecting a path from associations for transmitting data is a very important issue. SCTP multihoming increases the flexibility of paths and thus improves the transmission efficiency.
An association between two multihoming endpoints creates many paths between them. The path that transmits data is called the primary path; the others are secondary paths and are for alternative paths and fault tolerance. If an error occurs for the primary path and there is a data transmission failure, then the SCTP automatically changes the data transmission path to one of the secondary paths.
A secondary path is simply an alternative path in multihoming, and also named as idle path in the following because of no actual data transmission on it. However, the approach of checking whether the primary path condition is active or inactive influences the timing of the switch to the secondary path.
This study described how to identify the primary path condition and also analyzed the defects of SCTP in path management for wireless networks to propose a new solution termed quality-aware SCTP, which is simple and improves the efficiency of the path selection mechanism. A two-state Markov chain was applied as the loss model to simulate the channel error in a wireless network . Experiments were performed using NS2 , to demonstrate that the proposed solution performs better than the original mechanism at minimizing the degradation of transmission.
The remainder of this study is organized as follows. Section 2 describes related work, and Section 3 introduces SCTP path management; Section 4 then describes the proposed quality-aware SCTP path management. Experimental and simulation results are presented in Section 5. Conclusions are drawn in Section 6.
2. Related Work
In transport mobility management, a CN (corresponding node) and an MN (mobile node) may communicate with each other via SCTP. An MN has more than one interface card to connect to different wireless networks. Since the MN has many available network interfaces, the link between the CN and MN has many independent transmission paths (multihoming). The CN can select one of the IP addresses in the MN as the transmission destination to allow different paths for data transmission. Once the CN connects with the MN, one pair of IP addresses is used to establish a link as the primary path for data transmission, while all other possible pairs of IP addresses constitute alternative paths. Thus, the SCTP path measurement mechanism is very important in a wireless network and strongly affects the transmission efficiency.
The condition of a wireless network changes rapidly. Therefore, users have bad surfing experiences if they do not reselect appropriate networks (i.e., communication paths) at the appropriate time. For example, although IEEE 802.11 has a layer-2 expiration, which increases the transmission success rate, it still has a much higher PLR (packet loss rate) in a wireless network than current ethernet standards for a wired network; this is due to unexpected handoffs and signal instability. Weak signal strength, handoff, and noise result in packet loss in a wireless network.
Multihoming can improve network transmission performance . When the primary path fails, SCTP either retransmits data across a secondary path or replaces the primary path. Both approaches decrease the transmission performance.
SCTP has a congestion control mechanism like TCP, and it has a multihoming feature that TCP lacks. Therefore, two factors influence SCTP transmission efficiency: the size of the congestion window size of each transmission path and the active status of each path. Most studies focus on optimizing the congestion window size. Some have proposed various path management strategies [6, 7].
Packet loss in wired networks is mainly the result of network congestion. SCTP congestion control must adjust the congestion window size. Conversely, packet loss in a wireless network is mainly from channel noise or temporary disconnections (e.g., handoffs). If the SCTP congestion control adjusts the congestion window size in wireless network due to other factors instead of network congestion, then performance falls. Huang and Tsai  focused on handover issues while adopting multipath transmission in wireless mobile networks. This paper addressed and resolved three concerns related to path handover: spurious retransmissions, retransmissions of data lost, and reordering problem.
On the other hand, WiSE  applies bottleneck bandwidth estimation techniques to infer whether losses are a result of congestion or radio channel errors. If the packet loss is due to channel errors, WiSE does not adjust the congestion window size. W-A SCTP  determines the reason for packet loss from the packet's label. When the network becomes congested, W-A SCTP labels followup packets with ECN (explicit congestion notification). The reason for packet loss is identified from whether packets have this label.
However, the advantages in the use of multiple wireless interfaces and multihoming will waste without an efficient management of available paths. AISLE  proposes an autonomic mechanism that enables nodes to select the optimum radio interface. The authors evaluated the bottleneck bandwidth to choose the primary path for transmitting data in general conditions that maximize the throughput of multiinterface stations. Nevertheless, AISLE's selection does not reflect transmission error or packet loss. With packet loss in a wireless network, the throughput does not only depend on the bottleneck bandwidth. Thus, our study takes transmission error and packet loss into consideration.
In addition, other factors also affect SCTP transmission efficiency. In SACK , SCTP multihoming leads to stalling due to errors in some cases. Consequently, the error decisions by SACK disturb packet transmission. Stalling dampens transmission efficiency due to unnecessary waiting. Two main conditions lead to stalling: alternative paths that underestimate the RTO (retransmission timeout) value, and the SCTP sender not knowing that the path is active when a network error causes only SACK packet losses.
Besides a reliable transmission service, SCTP provides a partial reliable transmission service that is similar to UDP (user datagram protocol). This partial reliable transmission service is called the Part Reliability extension of the stream control transmission protocol . PR-SCTP  applies partial reliable transmission to transmit SIP messages.
There have been some studies on SCTP focused on improving the applied performance. From the application perspective, using HTTP (hypertext transfer protocol) over the SCTP multistream service reduces the lengthy mean response time that results from TCP's head-of-line blocking problem. Lee et al.  used an analytical model to compare the mean response time of both HTTP over TCP and HTTP over SCTP in wireless networks. Caro et al.  used the multiple fast retransmit algorithm as a retransmission strategy to reduce the number of timeouts to improve the performance. Kim et al.  proposed an efficient file transfer system using the SCTP multiple file transfer and modified SCTP congestion control mechanism to solve the problems such as server overloading due to multiple connection and the HOL (Head-Of-Line) blocking that exists in TCP-based file transfer. These studies mainly focused on using SCTP instead of TCP to improve application performance but were not concerned about the SCTP operation mechanism details that our study addresses.
The original SCTP path management judges a path failure only depending on consecutive transmission timeouts. This simple criterion, however, does not consider packet errors and hence possibly misjudge the path condition in a wireless environment. Furthermore, the SCTP prefers only the primary path, which is default but may not have better transmission efficiency comparing with other paths in the use of multiple wireless interfaces and multihoming. Therefore, we proposed QA-SCTP (quality-aware SCTP) to enhance the SCTP operation mechanism to improve performance.
3. SCTP Path Management
As stated in the introduction, SCTP multihoming can apply different destination IP addresses to establish independent associations simultaneously. To achieve this, SCTP defines a path management mechanism to ensure that transmission is performed successfully. However, the original mechanism still has some drawbacks for wireless networks that we describe later.
SCTP Original Path Failure Detection Mechanism
The SCTP management mechanism is based on the path failure mechanism. In Figure 1, when two endpoints establish associations, SCTP sets an error counter for each path and triggers these counters with packet timeouts. Conversely, the transmitter transmits data or heartbeat packets to the receiver. The packet timeout is measured, and the counter is incremented by 1 if the transmitter does not receive the response.
Figure 1. SCTP path failure detection mechanism.
Standard SCTP does not support concurrent multi-path transmission per association. SCTP packet transmission is performed through a single path only (primary path), while the other paths are alternative paths. SCTP marks each newly created path as "active" and applies the error count to monitor the path condition. If the error count reaches the inactive threshold, then SCTP changes the state to "inactive." SCTP does not use any path marked as "inactive" for data transmission. The primary path error count algorithm is given as follows.
(i)When SCTP is initiated, the error count value is zero and the path condition is "active." The counter value is incremented by 1 each time a packet transmission for a path times out. The path condition for "inactive" activates when the counter value exceeds the value of Path_Max_Retrans.
(ii)If the transmitter receives the SACK sent by the receiver, then the transmission is successful and the error count returns to zero. The path is then changed from "inactive" to "active."
Idle Path error count algorithm is given as follows.
(i)The counter is incremented by 1 after the heartbeat packet is transmitted in an idle path if the transmitter does not receive a response in time and the path is not "inactive." If error_counter_value >Path_Max_Retrans, then the path status is changed to "inactive."
(ii)If the transmitter receives HEARTBEAT-ACK, then the counter value is changed to zero and the path status is changed from "inactive" to "active."
The SCTP original path failure detection mechanism must take continuous packet timeouts to reach the inactivethreshold. If a packet transmission includes any packet that is transmitted successfully before reaching the inactivethreshold, then the error count is reset to zero. This mechanism, which is called the single sampling mechanism, easily detects a single failure that occurs occasionally, such as network outage. This mechanism can only detect continuous long-term path errors.
The time required to deactivate a path is more than s (when Path_Max_Retrans = 5 and RTO = 2 s) . If packet transmission is successful during this period, then the error count is cleared and the process takes more than 62 s.
Figure 2 depicts a path with 23 packet timeouts occurring within 30 s of packet transmission. This path should not be used for data transmission due to the large number of packet errors in such a short time. However, the path does not reach the SCTP (RFC4960) inactive threshold, and, therefore, it is erroneously marked as "active."
Figure 2. Original count algorithm leading to a mistaken evaluation of the path condition as active.
When the path error type is a short-term error with high frequency, the existing SCTP mechanism cannot work successfully. This causes erroneous path condition estimates for the wireless network.
4. Quality-Aware SCTP Path Management
The purpose of this study is to improve path management in SCTP for wireless networks. A whole-path management mechanism called quality-aware SCTP is proposed and is depicted in Figure 3. The proposed mechanism has three parts: path condition measurement, path switching strategy, and path switch decision. These can all help improve the original SCTP path management mechanism.
Figure 3. Quality-aware SCTP path management mechanism.
4.1. Path Condition Measurement
The path condition measurement mechanism monitors every path's transmission condition to provide additional path information for path switching. The mechanism has three parts: the original SCTP's heartbeat to measure the basic facets of the path condition, a smart path failure detection method, and path quality estimation.
4.1.1. Smart Path Failure Detection Method
This study proposes a new path failure detection method that applies a cycle count that can distinguish different levels of a timed out packet, which solves the defect of the original SCTP's single count as shown in Figure 4.
Figure 4. Quality-aware SCTP path failure count method.
The proposed method counts the number of timeouts in a large number of transmissions, which is called the cycle count. In addition, SCTP has a backoff mechanism, in which a packet timeout results in retransmission and double RTO. Therefore, the proposed mechanism distinguishes different levels of timeout just like continuous or random timeouts in the cycle count.
The proposed method applies the different timeout cost of each counted error to represent different levels of timeout computed with a power function. The cost varies according to the length of timeout. Since transmission timeout interval increases by power of two in the SCTP mechanism, our method also increases the cost by power of two to reflect different levels of timeout. Therefore, the path reaches the inactivethreshold quickly when a long-term error occurs on the path, as in the original method. The proposed method also causes a path with many short-term errors to reach the inactive threshold, which the original method does not do:
The smart path failure detection mechanism computes the cost of any packet timeout by power weighting and adds this cost to the error counter. The power weighting can emphasize the burst error condition, which often occurs during handoff and briefly impairs transmission conditions. Standard SCTP does not always detect burst errors because they only produce a few errors, meaning that the error counter is not likely to reach the threshold. However, power weighting prevents this situation. If the total value reaches the threshold, then the path is marked "inactive" to prevent it from being further used by SCTP. The error count is returned to zero in two cases: when the path condition reaches the inactive threshold and when the number of successful packet transmissions reaches the count cycle.
4.1.2. Path Quality Estimation
In this part, we propose the ICE (idle path congestion window size estimation) mechanism for probing the path transmission conditions. By comparing the transmission conditions for the primary and secondary paths, the SCTP path management mechanism can choose the stable path with better transmission efficiency.
The path for a multinetwork environment is generally chosen according to bandwidth . For protocols such as SCTP or TCP, the number of transmission packets in the transmission process is determined by the protocol's sliding/congestion window (cwnd). Therefore, measuring the bottleneck bandwidth is not the key point. Even if a high-bandwidth network is applied, it might not be usable since the transmission efficiency is determined by cwnd.
The congestion window size in the SCTP congestion control mechanism is linked to the transmission condition. If the packet times out frequently, then the congestion window size must remain small. The congestion control mechanism can be applied to measure the changing of the congestion window size for the transmission path based on packet losses. Therefore, the efficiency when SCTP uses that path can be derived. Additionally, the SCTP evaluation criteria for path selection must be modified from the bottleneck bandwidth in the network to whether the cwnd size is stable. A more stable path leads to higher transmission efficiency.
However, since SCTP multihoming is built by independent paths connected through different IP addresses, each path has an independent congestion mechanism to control the number of packets. Because packets are transmitted along the primary path, changes in the congestion window size can be detected by directly monitoring the transmission condition of the data packets. Moreover, packets need to be produced and sent along alternative paths to detect changes in the size of each congestion window.
Data packet transmission on idle paths is simulated with the heartbeat mechanism. Heartbeat packets are enlarged to simulate real data packets; their packet type is changed to discriminate data packets for probing, and the sequence numbers of the packets are filled in the idle column. The transmission condition is determined from the packet sequence numbers.
After the idle path transmits a mass idle path congestion window size estimation packet, the changing conditions of the congestion widow size in these paths are estimated from the packet receiving condition.
To prevent too many ICE packets from destroying the overall network condition, they are measured periodically to estimate the changing value of the congestion window size. We set the ICE measurement as periodic in the experiment. The original heartbeat mechanism was applied for the remainder of the time to measure the basic path condition (active/inactive).
The packet transmission quantity for ICE was set as equal to the primary path's packet transmission quantity for fairness and to make the estimation worthwhile. As ICE initiates and starts to transmit packets on the idle path, ICE mechanism obtains the transmission conditions for the primary path by observing current congestion window size. In other words, the two paths have the same number of packets, and their packet transmission conditions are estimated for the same time period. The path condition for an idle path can be accurately estimated with this approach, as shown in Figure 5.
Figure 5. ICE mechanism: ICE operation graph.
4.2. Path Switch Strategy
In the path quality estimation mechanism, ICE periodically measures the congestion window of each path to identify the best path. If the idle path has a larger mean congestion window size than the primary path, then the transmission path needs to change to the idle path (secondary path) to improve the transmission efficiency as shown in Figure 6.
Figure 6. Path quality estimation and ICE mechanism pseudo code on the primary and secondary paths.
A better understanding of the path condition makes choosing a suitable path easier. Therefore, more realistic modeling of the path condition can enhance the performance of SCTP. However, standard SCTP only knows the availability of paths (i.e., heartbeat) and not their available bandwidth. Therefore, this study proposes that ICE should obtain the condition of idle paths. ICE can periodically measure the bandwidth with the congestion window method as in ordinary SCTP transmissions and can also model the available bandwidth of alternative paths for times when an alternative path becomes a better choice than the primary path. Knowing the path condition is essential for the quality-aware SCTP path management mechanism. If the path condition is measured inaccurately, then incorrect path switching decisions may be taken. Therefore, obtaining accurate path conditions and reducing the error path information are very important.
The measurement mechanism is based entirely on the path condition and detects heartbeat and path failure from timeout errors for packet transmission as shown in Figure 7. The ICE mechanism we proposed is like other bandwidth estimation methods in that the more time it operates the more data it has to estimate conditions.
Figure 7. (a) and (b) Primary path, (c) and (d) Secondary path. Path failure detection mechanism pseudocode.
4.3. Path Switch Decision
By enhancing the original SCTP, quality-aware SCTP can decide whether to change paths based on known information. The path condition measurement provides every path's transmission condition, and the path switching strategy provides the methodology. When the primary path's condition is unstable or degenerates, quality-aware SCTP transmits data along an alternative path.
We studied the performance of the proposed scheme via simulation by using ns-2.29 and SCTP modules .
5.1. Packet Loss Model for Wireless
Packet losses in wireless networks often result from a user moving out of range of the signal, interference from other signals, or handoff. Wireless channel errors can easily occur due to continuous interference over a short period. For example, data cannot be sent to or from a channel due to continuous interference. Because the random error model does not have the necessary features to simulate this condition in a wireless network simulation, the burst error model was used to ensure that the simulation accurately mirrored real-world situations.
Burst loss in wireless networks can be modeled as a continuous two-state alternating Markov chain. The duration for the good and bad states was independently and identically distributed with an exponential distribution function using the mean G/B [3, 9].
The network link had 1% random loss rate in the good state and 100% random loss rate in the bad state. The transmission medium was fully loaded in both good and bad states. The network total packet loss rate was defined as (neglecting 1% random loss in the good state)
5.2.1. Experiment 1: Quality-Aware SCTP Path Failure Detection Method
The path failure detection mechanism in standard SCTP can only detect continuous long-term errors. Although frequent short-term errors can make the path conditions not good enough for data transmission, this would not be detected by the standard SCTP mechanism. Therefore, standard SCTP can produce erroneous decisions for wireless networks. This study proposes a new path detection mechanism that measures the defects in terms of count cycle. Experiments were performed to test the proposed method.
Figure 8 depicts a mixed wired-wireless topology. Each mobile node has two wireless network interface cards connected to AP1 (802.11b) and AP2 (802.11b). The pre-set path failure judgment threshold was set to 15% packet loss rate, and the count cycle was set to 220 successful packet transmissions, as mentioned in Figure 7(a). A path was marked as "inactive" if its packet loss rate was 15%. The experiment parameter is shown in Table 1.
Table 1. Parameters of experiment.
Figure 8. Quality-aware SCTP Path failure detection mechanism experiment topology.
Figure 9 depicts a simulation in which the packet loss rate for Path 1 was set to 30%. The original and proposed SCTP path failure detection mechanisms detected the deterioration of Path 1's condition in 197.671 and 159.498 s, respectively.
Figure 9. QA-SCTP Path failure detection mechanism experiment (with 30% bit error rate).
In this simulation (Figure 9), both methods identified the poor condition of Path 1; however, the proposed mechanism did so more quickly than the standard SCTP. The proposed method switched to Path 2 rapidly and had a throughput about 40% greater than RFC4960 within 200 s. Table 2 lists the related experimental data.
Table 2. Experimental data for quality-aware SCTP path error detection mechanism.
5.2.2. Experiment 2: Impact of Network Condition on Transmission Efficiency
Both TCP and SCTP control congestion by changing the congestion window size to control the quantity of packets being transmitted. In addition, the packet transmission condition affects the size of the congestion window [1, 18]. Therefore, the packet transmission condition (i.e., packet loss rate/network congestion condition) can be used to measure the approximately SCTP packet flow and thus identify the best SCTP path.
This experiment was performed in two parts. Part 1 simulated frequent packet loss, causing the congestion control mechanism to decrease the congestion window size, which degraded the transmission efficiency.
Figure 10 depicts the experiment topology, which was based on a combined wired and wireless network. Each MN had a wireless NIC connected with AP for an 802.11b wireless network. Both CN and MN had one NIC and therefore had only one transmission path. Nodes 1 and 2 were the other nodes in the path.
Figure 10. Impact of network condition on transmission efficiency of experimental topology.
Figure 11 shows that a higher packet loss rate reduces the congestion window size and lowers the throughput of the overall transmission. The values 11, 6, and 2 MB stand for the physical data rate for the IEEE 802.11 channel (11, 6, and 2 Mbits per second, resp.). An excessive network error rate would thus result in unacceptably low transmission efficiency even with abundant bandwidth. Thus, the wireless bandwidth, which is usually a bottleneck in a network, is not the only factor to influence throughput and transmission efficiency over loss-prone channels.
Figure 11. Impact of packet loss rate on transmission efficiency.
In part 2, the impact of network congestion on both the congestion window size and transmission efficiency was observed. Traffic at a CBR (constant bit rate) was added between Nodes 1 and 2 to simulate the network congestion.
Figure 12 shows that wired network congestion did not affect the overall transmission condition when CBR MB. (At this condition, the transmission bottleneck relies on wireless bandwidth, not on the congestion of the wired network.) However, the network became severely congested when CBR MB. The congestion reduced the SCTP packet transmission efficiency and caused some packet timeouts. Therefore, the growth rate for the congestion window slowed down. This experiment identified the relationship between congestion in the network and congestion window size. A congested path is identified from the degree of congestion in the congestion window (cwnd).
Figure 12. Impact of path congestion on SCTP cwnd/throughput.
5.2.3. Experiment 3: Quality-Aware SCTP Path Condition Measure/Switch Experiment
Path management in SCTP applies multihoming to select the best path from all paths with the ICE mechanism (QA-SCTP). In the primary path, data packets are used to estimate the condition of path, while measuring packets are actively sent along the secondary path to measure the transmission conditions. The best path for transmitting data is determined from the conditions of the two paths. Experimental results show that the proposed QA-SCTP (quality-aware SCTP) path management mechanism assesses the path condition accurately and changes paths smoothly, thus providing high transmission efficiency.
As depicted in Figure 13, a simple multihoming experiment environment was deployed; Path 1 and Path 2 had different network conditions (using the burst error model in Section 5.1). The parameters of the ICE mechanism in QA-SCTP were set to a period of 100 s and a duration of 30 s; a longer ICE duration results in a more accurate measurement of the path condition, but it may result in additional loading when the ICE operating time is too long, thus causing too many measuring packets to be transmitted.
Figure 13. QA-SCTP path condition measure/switch experiment topology.
Experimental results show that QA-SCTP measured the path condition accurately. Figure 14(a) indicates that although data were transmitted on the bad path at the start of the connection, QA-SCTP changed paths to increase transmission efficiency at 134.38 s since the ICE mechanism found that Path 2 had better conditions than Path 1 at that moment.
Figure 14. QA-SCTP path condition measure/switch experiment results.
According to Figure 14(b), although Path 2 had a narrower bandwidth than Path 1, it enabled the congestion window size to grow stably, thus reducing the packet loss rate and increasing the efficiency. Table 3 lists the experiment results.
Table 3. QA-SCTP path condition measure/switch experiment results list.
5.2.4. Experiment 4: Dynamic PLR Conditions
In the following experiment depicted in Figure 15, the path condition changes continuously. Path 2 was set as the primary path for default transmission. In Figure 16, the red line (QA-SCTP Path 2) denotes the graph of QA-SCTP with the ICE mechanism; the green line (RFC4960-Path 2) denotes the results for SCTP in the same environment; and the blue line (RFC4960-Path 1) denotes the results for SCTP with Path 1 as the primary path (for comparison). In this experiment, QA-SCTP was set up with Path 2, which was the worse path, as the primary path. The path was changed at 31.61 s. QA-SCTP recognized changes to the path condition and changed to a better transmission path, as shown in Table 4.
Table 4. QA-SCTP path condition measure/switch experiment data.
Figure 15. QA-SCTP path condition measure/switch experiment topology.
Figure 16. QA-SCTP path condition measure/switch experiment result.
5.2.5. Experiment 5: Dynamic Parallel Congestion Conditions
As shown in Figure 15, the following experiment was performed to demonstrate QA-SCTP actively changing paths in a congested network. Two CBR connections were set up—one between Nodes 1 and 2 (CBR 8 MB at 50–250 s) and another between Nodes 3 and 4 (CBR 3 MB at 70–300 s)—to simulate congestion.
In Figure 17, the red line denotes the throughput measured from QA-SCTP in Paths 1 and 2 with 11 MB bandwidth; the green line denotes the throughput measured from QA-SCTP in Path 1 with 11 MB bandwidth and Path 2 with 6 MB bandwidth; and the blue line denotes the throughput measured from the SCTP (RFC4960) in Paths 1 and 2 with 11 MB bandwidth. According to Figure 17, the transmission efficiency of the primary path degraded because of congestion after 50 s. Therefore, QA-SCTP (red line) changed paths at 149.13 s and achieved better throughput than SCTP (RFC4960). In addition, QA-SCTP (green line) changed paths at 134.4 s. Thus, QA-SCTP achieved a better throughput than SCTP (RFC4960) in a congested network despite changing the transmission path to Path 2, which had a bandwidth of only 6 MB.
Figure 17. QA-SCTP path condition measure/switch experiment result.
5.2.6. Experiment 6: Dynamic Disjunct Congestion Conditions
In the following experiment, as shown in Figure 15, congestion occurring at different times in the two paths was simulated (Path 1 was congested at 100–250 s; Path 2 was congested at 250–400 s). In Figure 18, the red line denotes the throughput measured from the QA-SCTP environment with Path 1 as the primary path; the green line denotes the throughput measured from the SCTP (RFC4960) environment with Path 1 as the primary path; and the blue line denotes the throughput measured from the standard SCTP environment with Path 2 as the primary path.
Figure 18. QA-SCTP path condition measure/switch experiment result.
As shown in Figure 18 and Table 5, QA-SCTP actively changed the path to Path 2 because Path 1 became congested at 100 s (Path 2 was not congested) and changed back at 250 s because of congestion in Path 2 (Path 1 was less congested). QA-SCTP can change the current transmission path to a noncongested one quickly, thus improving the transmission efficiency.
Table 5. Experiment results for QA-SCTP path condition measure/switching.
The SCTP multihoming method supports multipath association, which enhances network transmission performance. SCTP supports multihoming and develops an original transmission performance. The path failure detection mechanism requires suitable path management in a wireless network. A good path management approach effectively distinguishes path conditions (e.g., active or inactive) and efficiently switches among multiple destination addresses (e.g., active or passive path switching).
The original path management method for SCTP that is defined in RFC4960 is very simple but does not effectively distinguish path conditions (e.g., active or inactive) or efficiently apply multiple destination addresses in wireless networks.
This study proposes a new and effective path management mechanism for wireless networks called quality-aware SCTP. This mechanism uses cycle counting—rather than single counting as in standard SCTP—to detect path failures. Cycle counting improves on the original path failure detection method in a wireless environment because it effectively identifies the path condition. The ICE mechanism in QA-SCTP can effectively estimate the path quality and provides information for path switching decisions. Experimental results under NS2 demonstrated that QA-SCTP performs better than standard SCTP, because it actively switches when the primary path is still active and passively switches when the path condition deteriorates and is inactive.
Other studies use complicated methods to adjust the congestion window size in a wireless environment to increase throughput. This study focuses on effectively identifying path conditions. Effectively identifying the path conditions enables the mechanism to rapidly switch to a secondary path when the primary path has a serious error or is in poor condition. Quality-aware SCTP not only is simple but also improves performance.
7. Future works
The ICE mechanism in QA-SCTP can effectively estimate the path quality but needs to transmit many estimation packets, thus wasting wireless network resources. Further works will include improving the technique for estimating path quality to decrease the number of estimation packets used by the idle path, implementing a prototype of proposed SCTP modification, and further discussion on the effect of mobility in wireless domain.
The authors thank the National Science Council, Taiwan, for partially supporting this research under contract nos. NSC 98-2622-E-194-004-A2, NSC 98-2218-E-194-005, and NSC 98-2218-E-150-006 as well as the anonymous reviewers for their very helpful and constructive criticism. Both Ted Knoy and Editage are also appreciated for their editorial assistances. These supports have enabled them to improve the quality of this work.
AA Abouzeid, S Roy, M Azizoglu, Comprehensive performance analysis of a TCP session over a wireless fading link with queueing. IEEE Transactions on Wireless Communications 2(2), 344–356 (2003). Publisher Full Text
R Fracchia, C Casetti, C-F Chiasserini, M Meo, A WISE extension of SCTP for wireless networks. Proceedings of IEEE International Conference on Communications (ICC '05), May 2005, Seoul, South Korea 3, 1448–1453
C Casetti, C-F Chiasserini, R Fracchia, M Meo, AISLE: autonomic interface SeLEction for wireless users. Proceedings of the International Symposium on a World of Wireless, Mobile and Multimedia Networks (WoWMoM '06), June 2006, Buffalo-Niagara Falls, NY, USA, 42–48
C-M Huang, C-H Tsai, The handover control mechanism for multi-path transmission using Stream Control Transmission Protocol (SCTP). Computer Communications 30(17), 3239–3256 (2007). Publisher Full Text
G Ye, C Liu, T Saadawi, M Lee, Wireless aware SCTP for ad hoc networks. Proceedings of the International Workshop on Heterogeneous Multi-Hop Wireless and Mobile Networks (MHWMN '05), November 2005, Washington, DC, USA, 88–95
J Noonan, P Perry, S Murphy, J Murphy, Stall and path monitoring issues in SCTP. Proceedings of the 25th IEEE International Conference on Computer Communications (INFOCOM '06), April 2006, Barcelona, Spain, 1–9
Y-J Lee, M Atiquzzaman, SK Sivagurunathan, Mean response time estimation for HTTP over SCTP in wireless environment. Proceedings of IEEE International Conference on Communications (ICC '07), July 2006, Istanbul, Turkey 1, 164–169
A Caro, P Amer, R Stewart, Retransmission policies with transport layer multihoming. Proceedings of the 11th IEEE International Conference on Networks( ICON '03), October 2003, Sydney, Australia, 255–260
H Kim, Y Kim, K Kim, J Chung, High-performance data transfer using SCTP-based compact association scheme. Proceedings of the International Conference on Computational Science and Its Applications (ICCSA '07), August 2007, Kuala Lumpur, Malaysia, 389–395
J Funasaka, K Ishida, H Obata, Y Jutori, A study on primary path switching strategy of SCTP. Proceedings of the International Symposium on Autonomous Decentralized Systems (ISADS '05), April 2005, Chengdu, China, 536–541