This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
into Q1 23: ENDIF
Fig. 4. DBR packet forwarding algorithm
buffer Q2. If the packet is found in Q2, it is dropped as it has been forwarded recently. Otherwise, the node calculates the sending time for the packet based on the current system time and the holding time and inserts the packet into the priority queue Q1. Note that if the packet is already in Q1, the sending time is updated to the earlier time. Later, the packets enqueued in Q1 will be sent out according to their scheduled sending times.
4
Performance Evaluation
In this section, we evaluate the performance of DBR and compare it with the Vector Based Forwarding (VBF) protocol[17]. 4.1
Simulation Settings
All simulations are performed using the Network Simulator (ns2) [12] with an underwater sensor network simulation package (called Aqua-Sim) extension. In our simulations, sensor nodes are randomly deployed in a 500m × 500m × 500m
DBR: Depth-Based Routing for Underwater Sensor Networks
81
3-D area. Multiple sinks are randomly deployed at the water surface. While we assume that the sinks are stationary once deployed, the sensor nodes follow the random-walk mobility pattern. Each sensor node randomly selects a direction and moves to the new position with a random speed between the minimal speed and maximal speed, which are 1 m/s and 5 m/s respectively unless specified otherwise. Although the source node can be anywhere in the network, for easy simulations, we place it at a random position at the bottom layer in our experiment. The data generating rate at the source node is one packet per second, with a packet size of 50 bytes. The communication parameters are similar to those on a commercial acoustic modem, LinkQuest UWM1000 [10]: the bit rate is 10k bps; the maximal transmission range is 100 meters (in all directions); and the power consumption in sending, receiving, and idling mode are 2w, 0.1w, and 10mw, respectively. The same broadcast Media Access Control (MAC) protocol as in [17] is used in our simulations. In this MAC protocol, when a node has a packet to send, it first senses the channel. If the channel is free, it continues to broadcast the packet. Otherwise, it backs off. The packet will be dropped if the maximal number of backoffs have been reached. We use the following metrics to evaluate the performance of routing protocols. – Packet Delivery Ratio is defined as the ratio of the number of distinct packets received successfully at the sinks to the total number of packets generated at the source node. Although a packet may reach the sinks multiple times, these redundant packets are considered as only one distinct packet. – Average End-to-end Delay represents the average time taken by a packet to travel from the source node to any of the sinks. – Total Energy Consumption represents the total energy consumed in packet delivery, including transmitting, receiving, and idling energy consumption of all nodes in the network. 4.2
Impact of Design Parameters
Now we examine how the performance of DBR is affected by algorithm parameters and network settings: parameter δ, depth threshold dth , node mobility, and number of sinks. Parameter δ. The parameter δ decides the holding time of packets at each node. With a larger δ, each node has a shorter holding time and hence the average end-to-end delay will be reduced; but more nodes will forward the same packet, which results in more energy consumption. On the other hand, with a smaller δ, a node will have longer holding time and hence the average end-to-end delay is increased; but less nodes will forward the same packet, as helps to reduce energy consumption. Fig. 5 shows how the energy consumption and average end-to-end delay change with three different values of δ: R/4, R/2, and R, where R is the maximal transmission range. In this set of simulations, the number of sinks is set to 5 and the depth threshold is set to 0. From Fig. 5(a), we observe that the average
82
H. Yan, Z.J. Shi, and J.-H. Cui 14000 Total Energy Consumption
Average E2E Delay (sec)
6 R/4 R/2 R
5 4 3 2 1
R/4 R/2 R
12000 10000 8000 6000 4000 2000 0
0 200
300
400 500 600 Number of Nodes
700
200
800
(a) Average end-to-end delay
300
400 500 600 Number of Nodes
700
800
(b) Energy consumption
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0
16000 Total Energy Consumption
Packet Delivery Ratio
Fig. 5. DBR’s performance with different δ values
0 20 40
14000
0 20 40
12000 10000 8000 6000 4000 2000 0
200
300
400 500 600 Number of Nodes
700
(a) Packet delivery ratio
800
200
300
400 500 600 Number of Nodes
700
800
(b) Energy consumption
Fig. 6. DBR’s performance with different depth thresholds
end-to-end delay when δ = R4 is about three times of the delay when δ = R. Fig. 5(b) shows that the energy consumption does increase as δ is lifted, but not significantly (less than 5%). Hence, we choose δ = R in later simulations. Depth Threshold. Fig. 6 shows how the depth threshold, dth , affects the packet delivery ratio and energy consumption. In this set of simulations, the number of sinks is set to 5. From Fig. 6, we see that when the depth threshold increases, both the packet delivery ratio and the total energy consumption decrease. This is because increasing the depth threshold has a similar effect to reducing the number of available nodes in the network. Therefore, the number of forwarding nodes will decrease. Consequently, the packet delivery ratio decreases and less energy is consumed. Node Mobility. To evaluate how node mobility affects the performance of DBR, we simulate DBR with different fixed node speeds at 1 m/s, 5 m/s, and 10 m/s. The depth threshold is set to 0 and the total number of sinks deployed is 5. The simulation results are plotted in Fig. 7. From Fig. 7, we observe that the packet delivery ratio, total energy consumption, and average delay do not change much with node speed. The reason is that all routing decisions in DBR are made locally based on a node’s depth information. No topology or route information needs to be exchanged among neighboring
DBR: Depth-Based Routing for Underwater Sensor Networks
83
16000 Average E2E Delay (sec)
Packet Delivery Ratio
4
1 0.98 0.96 0.94 0.92 0.9 0.88 0.86 0.84 0.82 0.8
1 m/s 5 m/s 10 m/s
14000 12000 10000 8000
1 m/s 5 m/s 10 m/s
6000 4000 2000
(a) Packet delivery ratio
3 2.5 2 1.5
1 m/s 5 m/s 10 m/s
1 0.5 0
0
200 300 400 500 600 700 800 Number of Nodes
3.5
200
300
400
500
600
700
800
Number of Nodes
(b) Energy consumption
200
300
400 500 600 Number of Nodes
700
800
(c) Average end-to-end delay
Fig. 7. DBR’s performance with different node mobility
nodes. Therefore, DBR can handle dynamic network topologies well. For example, Fig. 7(a) shows that DBR successfully delivers at least 88% of the packets in all cases. When the total number of nodes is larger than 400, almost all packets can be successfully delivered. From Fig. 7 we can also see how node density affects the performance of DBR. The figure shows that the packet delivery ratio and the energy consumption increase as the number of nodes increases. The average end-to-end delay, however, decreases. This is because when the number of nodes increases, the number of forwarding nodes also increases, which leads to a higher packet delivery ratio and higher energy consumption. At the same time, the probability that a forwarding node has a shorter distance to the sinks increases as more nodes participate in packet forwarding. As a result, the average end-to-end delay decreases. Number of Sinks. Fig. 8(a) shows how the packet delivery ratio changes with different number of sinks. DBR with multiple sinks has a better packet delivery ratio than DBR with only one sink. Since DBR is a greedy algorithm trying to deliver data packets to the water surface, increasing the number of sinks at the water surface will increase the chance that a packet is received by a sink. This explains the higher delivery ratio when multiple sinks are deployed. The total energy consumption for different number of sinks is shown in Fig. 8(b). We observe that the energy consumption is almost the same for different number of sinks. The reason is that in DBR, the number of sinks does not affect the forwarding process. Therefore, all different settings have almost the same energy consumption. From Fig. 8(c), we observe that DBR with multiple sinks has a slightly better average end-to-end delay than DBR with one sink. This is because in the multiple-sink case, a packet is considered successfully delivered whenever it reaches any of the sinks. 4.3
Comparison with VBF
Now we compare DBR with VBF [17]. In this set of simulations, we consider two settings for DBR: one sink and multiple sinks. For one-sink DBR, the depth threshold is set to 0. In multiple-sink DBR, 5 sinks are randomly deployed at
H. Yan, Z.J. Shi, and J.-H. Cui
3
1 sink 3 sinks 5 sinks 10 sinks
Average E2E Delay (sec)
12000
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0
Total Energy Consumption
Packet delivery Ratio
84
1 sink 3 sinks 5 sinks 10 sinks
10000 8000 6000 4000
2.5 2 1.5 1 sink 3 sinks 5 sinks 10 sinks
1 0.5
2000
0 200
300
400 500 600 Number of Nodes
700
800
(a) Packet delivery ratio
0
200 200
300
400 500 600 Number of Nodes
700
800
(b) Energy consumption
300
400 500 600 Number of Nodes
700
800
(c) Average end-to-end delay
Fig. 8. DBR’s performance with different number of sinks
the water surface and the depth threshold is set to 20 meters. For VBF, we set the routing pipe radius to 100 meters, which is the maximal transmission range. Fig. 9 compares DBR and VBF with respect to the three metrics. Fig. 9(a) shows that for the one-sink setting, DBR achieves a similar packet delivery ratio to VBF. With the multi-sink setting, however, DBR can achieve a much better delivery ratio, especially for sparse networks. For example, in a network with 200 nodes, DBR with five sinks has a packet delivery ratio of around 70%, which is more than four times larger than 15%, the delivery ratio of VBF. Fig. 9(b) shows that DBR has better energy efficiency compared with VBF. In all cases, the total energy consumption of DBR is about half that of VBF. This is mainly due to the the redundant packet suppression techniques adopted by DBR. The two-queue mechanism in DBR has greatly reduced the redundant packet transmissions in the network. It should be noted, however, that this comparison is made based on the basic settings of VBF. VBF may get better energy efficiency when advanced adaptation algorithms are applied and optimal parameters are chosen. Fig. 9(c) shows that the best end-to-end delay is achieved in multiple-sink DBR while VBF has a better end-to-end delay than one-sink DBR. This is because VBF tries to find the shortest path from the source node to the sink along the virtual vector between them. Thus the delay in VBF is shorter than that in one-sink DBR. In multiple-sink DBR, however, packets can be delivered to any sink, instead of a fixed sink as in VBF. It should be noted that DBR and VBF target different network settings and have quite different network assumptions. For example, VBF is designed for networks with a single sink. Although DBR can work in one-sink networks, it has better performance in multiple-sink settings. 4.4
Summary
The simulation results show that DBR protocol works well for dense networks. However, the delivery ratio in sparse networks is relatively low. The reason is that DBR has only a greedy mode. The greedy method alone is not able to achieve high delivery ratios in sparse networks. We will investigate recovery algorithms for DBR in the future.
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0
5
one-sink multiple-sink VBF
20000
Average E2E Delay (sec)
one-sink multiple-sink VBF
15000 10000 5000
300
400 500 600 Number of Nodes
700
800
(a) Packet delivery ratio
4 3 2
one-sink multiple-sink VBF
1 0
0
200
85
6
25000 Total Energy Consumption
Packet Delivery Ratio
DBR: Depth-Based Routing for Underwater Sensor Networks
200
300
400 500 600 700 Number of Nodes
200
800
(b) Energy consumption
300
400 500 600 Number of Nodes
700
800
(c) Average end-to-end delay
Fig. 9. Comparison of DBR and VBF
The DBR protocol requires more memory in sensor nodes to maintain two buffers. Since the underwater sensor nodes normally are equipped with more resources than land-based sensor nodes, the memory overhead is not significant in most systems. Moreover, the applications for underwater sensor networks have relatively low data rate so only small buffers need to be maintained. For example, we observed in our simulations that the average number of packets in the sending queue of each node is less than 10. As a result, the cost of extra memory is affordable for underwater sensor nodes.
5
Conclusions and Future Work
In this paper, we presented Depth Based Routing (DBR), a routing protocol based on the depth information of nodes, for underwater sensor networks. DBR uses a greedy approach to deliver packets to the sinks at the water surface. Different from other geographical-based routing protocols that require full-dimensional location information of nodes, DBR only needs the depth information, which can be easily obtained locally at each sensor node. Further, DBR can naturally takes advantages of the multiple-sink underwater sensor network architecture without introducing extra cost. Our simulation results have shown that DBR can achieve high packet delivery ratios (at least 95%) for dense networks, with reasonable energy consumption. To achieve better performance for sparse networks, recovery algorithms need to be explored to avoid the “void” areas where the greedy strategy fails. Advanced recovery algorithms should be developed for higher energy efficiency and delivery ratio. DBR provides a distributed routing protocol based on local information of the sensor nodes. Besides the depth information, other information, such as the residual energy level and estimated distance to neighboring nodes, could also be useful in making routing decisions that can further reduce energy consumption and extend the network’s life time. For multiple-sink network settings, we only consider some simple cases in which the sinks are randomly, uniformly deployed on the water surface. Given the routing protocol and the node deployment model, we may find better deployment locations for the multiple sinks to achieve better performance.
86
H. Yan, Z.J. Shi, and J.-H. Cui
References 1. Akyildiz, I.F., Pompili, D., Melodia, T.: Challenges for efficient communication in underwater acoustic sensor networks. ACM SIGBED Review 1(1) (July 2004) 2. Basagni, S., Chlamtac, I., Syrotiuk, V.R., Woodward, B.A.: A distance routing effect algorithm for mobility (dream). In: MOBICOM 1998 (1998) 3. Braginsky, D., Estrin, D.: Rumor routing algorithm for sensor networks. In: WSNA 2002 (September 2002) 4. Cui, J.H., Kong, J., Gerla, M., Zhou, S.: Challenges: Building scalable mobile underwater wireless sensor networks for aquatic applications. Special Issue of IEEE Network on Wireless Sensor Networking (May 2006) 5. Grossglauser, M., Vetterli, M.: Locating nodes with ease: Mobility diffusion of last encounters in ad hoc networks. In: IEEE INFOCOM 2003 (March 2003) 6. Heidemann, J., Ye, W., Wills, J., Syed, A., Li, Y.: Research challenges and applications for underwater sensor networking. In: IEEE Wireless Communications and Networking Conference (April 2006) 7. Heinzelman, W.R., Kulik, J., Balakrishnan, H.: Adaptive protocols for information dissemination in wireless sensor networks. In: Mobicom 1999 (August 1999) 8. Intanagonwiwat, C., Govindan, R., Estrin, D.: Directed diffusion: A scalable and roust communication paradigm for sensor networks. In: MOBICOM 2000 (August 2000) 9. Karp, B., Kung, H.T.: Gpsr: Greedy perimeter stateless routing for wireless networks. In: Proc. Mobicom (2000) 10. Linkquest, http://www.link-quest.com/ 11. Nicolaou, N., See, A., Xie, P., Cui, J.-H., Maggiorini, D.: Improving the robustness of location-based routing for underwater sensor networks. In: Proceedings of IEEE OCEANS 2007 (June 2007) 12. The ns mannual (2002), http://www.isi.edu/nsnam/ns/doc/index.html 13. Partan, J., Kurose, J., Levine, B.N.: A survey of practical issues in underwater networks. In: Proc. of ACM International Workshop on UnderWater Networks (WUWNet), September 2006, pp. 17–24 (2006) 14. Proakis, J., Sozer, E.M., Rice, J.A., Stojanovic, M.: Shallow water acoustic networks. IEEE Communications Magazines, 114–119 (2001) 15. Seach, W.K., Tan, H.X.: Multipath virtual sink architecture for underwater sensor networks. In: OCEANS (May 2006) 16. Xie, G.G., Gibson, J.: A networking protocol for underwater acoustic networks. Technical Report TR-CS-00-02 (2000) 17. Xie, P., Cui, J.-H., Lao, L.: Vbf: Vector-based forwarding protocol for underwater sensor networks. In: Proceedings of IFIP Networking (May 2006) 18. Ye, F., Luo, H., Cheng, J., Lu, S., Zhang, L.: A two-tier data dissemination model for large-scale wireless sensor networks. In: MOBICOM 2002 (September 2002) 19. Ye, F., Zhong, G., lu, S., Zhang, L.: Gradient broadcast: A robust data delivery protocol for large scale sensor networks. ACM Wireless Networks(WINET) 11(2) (2005)
Channel Allocation for Multiple Channels Multiple Interfaces Communication in Wireless Ad Hoc Networks Trung-Tuan Luong, Bu-Sung Lee, and C.K. Yeo School of Computer Engineering Nanyang Technological University, Nanyang Avenue, Singapore 639798 {Y050089,bslee,asckyeo}@ntu.edu.sg
Abstract. A major drawback of multi-hop communication in ad hoc network is the bandwidth scarcity along the forwarding path of data packet. The main reason for the lack of bandwidth or the exponential reduction in the bandwidth is the contention for bandwidth between nodes along the path. In this paper we will demonstrate one way to overcome this problem through the use of multiple channels multiple interfaces (MCMI). We investigate different forwarding channel selection schemes for MCMI communication with Destination Sequenced Distance Vector protocol: same channel, random and round robin. Based on our analysis and simulation results we have shown that MCMI protocol significantly improves the channel capacity while maintaining low end-to-end delay. Forwarding channel selection policies play an important role in determining the performance of the MCMI. Among the channel assignment policies under study, round robin policy provides the best performance. The results provide a baseline for evaluating bandwidth of multiple channels multiple interfaces networks. Keywords: Multiple channel communication, channel interference, channel assignment, bandwidth.
1
Introduction
Wireless communication has become an indispensable part of modern day-to-day life. Research in ad hoc networks has focused on single channel networks, in which a common channel is desired for simple routing control in multi-hop networks. A well known fact that is affecting the performance of ad hoc networks is the significant throughput degradation along the multi-hop path [1]. When a single channel is used both for incoming and outgoing traffic, throughput is halved as they use the same radio channel. That means when one node is transmitting, its neighbors nodes must all be in listening mode otherwise collision will occur. This problem is amplified across the network, and after a few hops the bandwidth is reduced significantly. To overcome the throughput degradation problem, a natural approach is to use multiple channels in which nodes work on different channels in an interference area. A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 87–98, 2008. c IFIP International Federation for Information Processing 2008
88
T.-T. Luong, B.-S. Lee, and and C.K. Yeo
Recent research and commercial efforts in the wireless networking industry have focused on a new class of ad hoc networks: multiple channels multiple interfaces ad hoc networks [1]. These networks are characterized by a set of fixed nodes with multiple wireless interfaces utilizing multiple orthogonal channels at the same time over a given swath of spectrum such as IEEE 802.11 a/b/g. Simultaneous operation of multiple channels provides the following advantages: – Capacity enhancement: A node with two interfaces can send packets on two channels simultaneously. More importantly, forwarding nodes can both send and receive at the same time. Using appropriate protocols for channel selection and assignment, such a system can provide significantly greater capacity than a single interface system – Load sharing: Load sharing occurs where a traffic flow is distributed among the available connections to achieve lower latency and increase robustness to network. – Channel failure recovery: Graceful degradation and robustness against channel errors is possible by employing frequency diversity. Frequency diversity can be achieved by using multiple interfaces and operating each on different channel frequencies. In this paper, we implement the Destination Sequenced Distance Vector (DSDV) for multiple channels multiple interfaces wireless ad hoc networks (DSDV-MCMI) to reduce the bandwidth degradation problem. In DSDV-MCMI, we investigated three different policies for forwarding channel selection: same channel, random channel and round robin channel to evaluate the channel interference along the multi-hop path. Our simulation results show that DSDVMCMI protocol significantly improves the network goodput while maintaining low end-to-end delay. Among the three different channels selection policies for MCMI, round robin policy, where the packets are forwarded based on the packet incoming channel, is the best at preventing channel interference; which results in shortest end-to-end delay time. Our paper outline is as follows. Section 2 briefly discusses the related work. In Section 3, we present the multiple channels multiple interfaces protocol with DSDV-MCMI. The simulation and results analysis are given in Section 4. Finally, Section 5 concludes the paper.
2
Related Work
We can categorize strategies for using multiple channels into two groups depending on the number of interfaces used: single interface and multiple interfaces. The first strategy is to enable a single wireless interface card to access multiple channels [2,3]. For example, So and Vaidya [3] propose a scheme that allows wireless devices to communicate on multiple channels using a single interface card. The scheme requires frequent channel switching, which incurs considerable overhead on the current hardware. The other strategy is to use multiple interface cards; Nasipuri et al. [4,5,6] propose a class of multi-channel carrier sense multiple access
Channel Allocation for MCMI Communication
89
MAC protocols where all nodes have an interface on each channel. These proposed protocols use different metrics to choose the channel for communication between nodes. The metric may simply use the idle channel [4], or the signal power observed at the sender [5], or the received signal power at the receiver [6]. Wu et al [7] propose a MAC layer solution that requires two interfaces. One interface is assigned to common channel for control purposes, and the second interface is switched between the remaining available channels for transmitting data. Lee [8] proposed a class of proactive routing protocol for multi channels, which uses one control channel and N data channels. The nodes exchange control packages on the control channel to negotiate the best channel for the receiver’s data channel. Most past research in the use of multiple channels require either modification of the MAC layer protocol or changes to IEEE 802.11. Compared to previous research, our proposed protocol focus on exploit the multiple channels by using concurrent multiple interfaces. The protocol does not require channel synchronization among nodes. Although there is some additional control overhead, the simulation results show that the proposed protocol significantly increase network goodput while decreasing end-to-end delay efficiently.
3 3.1
Multiple Channels Multiple Interfaces Routing with DSDV Model Description
Module based node for ns-2. Wireless nodes are becoming multimodal. They are equipped with multiple interfaces possibly using different technologies, including wired access, and may use them concurrently. Paquereau [9] designed module based wireless node (MW-Node), a more flexible and better integrated wireless and mobile support in ns-2[10]. It is not a new implementation but primarily a reorganization of already existing components. The MW-Node enables new features to be supported by the simulator. For instance, true support for multiple wireless interfaces on a single node, each may have its own routing protocol. DSDV-MCMI. Based on the MW-Node model, we developed destination sequenced distance vector for multiple channels multiple interfaces, DSDV-MCMI, to demonstrate the multiple channels multiple interfaces routing scheme. Nodes can have more than one network interfaces as shown in Fig. 1. These interfaces are assigned to orthogonal channels so that they will not interfere with each other. Every interface has one DSDV [11] routing agent for generating control messages and forwarding data packets. Destination-Sequenced Distance-Vector Routing (DSDV) is a table-driven routing protocol based on the Bellman-Ford algorithm. Each mobile node maintains a route to every other node in a routing table. Route entry contains destination address, next hop address and number of host to reach the destination. In order to prevent routing loop, each entry is marked with a sequence number assigned by the destination node. The sequence numbers enable node to
90
T.-T. Luong, B.-S. Lee, and and C.K. Yeo
Fig. 1. Multi-interface node
distinguish stale routes from new ones. The DSDV routing agent at each interface maintains its’ own routing table for all available destinations. To maintain the consistency of routing tables in a dynamically varying topology, each node’s interface periodically transmits full updates or immediately transmits incremental updates when significant new information is available, such as a topology changes. We design a channel assignment module on top of the network interfaces. This module is in charge of selecting the network interface for forwarding each data packets. 3.2
Channel Assignment Policy
The purpose of channel assignment is to determine the forwarding channel for packet to minimize interference with other nodes. We apply the static approach [12] that assigning a common set of channels for node’s interfaces. Every node has N interfaces, which are assigned to the same set of N orthogonal channels. At the source node, data packet is sent out on an interface which is randomly selected. When an intermediate node along the path receives a data packet on incoming channel Chin ; the node uses one of the following three policies to select the outgoing channel Chout for relaying data packet: – Policy 1 Same channel: node will relay the packet on the same channel as the packet was received. This approach incurs high channel interference in multi-hop route, which results in long delay and packet drops that degrade the performance significantly. Chout = Chin – Policy 2 Random channel: node relays data packet on a randomly selected channel. The probability that the forwarding channel is the same as the received channel is N1 . When a node has more interfaces, the less chance that the forwarding channel is the same as the received channel. Chout = Random(Ch0 ,Ch1 ,..,ChN −1) – Policy 3 Round robin channel: when a node receive data packet need to be forwarded on ith channel it will forward that packet on the (i+1)th channel. Chout = (Chin + 1) mod (N)
Channel Allocation for MCMI Communication
3.3
91
Channel Interference
Assuming that nodes are ideally placed along the route with hop distance ’d’ as in Fig.2, all the node has transmission range ’T’ and carrier sensing range ’C’. The ideal placement of a node is d ≤ T < 2∗d
(1)
The transmissions of a node interfere with transmissions of other nodes within its’ sensing range. Thus sensing range is also called as interference range. The interference distance in term of number of hops along a path is: M = Cd hops where Cd is floor of Cd This means that transmission of a node may interfere with transmission of the next M nodes and transmission of the previous M nodes along the path. We will prove the throughput by using multiple channels for transmission; the minimum number of channels required to eliminate the channel interference among forwarding nodes along the path is (M+2). As shown in Fig. 2, nodes A1 , A2 ,..,
Fig. 2. Multi-hop path
AM+1 are within interference range of each other, because the distance between A1 and AM+1 is M hops. Therefore the (M+1) data transmissions from Ai to Ai+1 (i=1,2,..,M+1) can interfere with each other. Due to the exposed node problem, data transmission from node AM+1 to node AM+2 can also interfere with CTS/ACK packet sent from node A1 to node S. Thus we can see that there are (M+2) data transmissions interfering with each other. Hence we need at least (M+2) channels so that every data transmission can work on different channel to ensure these communications will not interfere with each other. In Fig. 3, we apply policy 3 for forwarding channel selection among the set of (M+2) channels { Ch0 , Ch1 ,..,ChM+1 }. We can see that two transmissions use the same channel, such as link S-A1 and link AM+2 -AM+3 , are (M+1) hops apart along the path, hence they will not interfere with each other. Thus with (M+2) available channels, we can use policy 3 for channel assignment for data transmission so that we can eliminate channel interference
92
T.-T. Luong, B.-S. Lee, and and C.K. Yeo
Fig. 3. Channel assignment for communication link in multi-hop path
3.4
Capacity of a Chain of Multiple Channels Multiple Interfaces Nodes
In this subsection, we evaluate the capacity of a single chain of nodes where packets are originated at first node and forwarded along the chain to the last node. We investigate chain of nodes under saturated condition that every node along the chain always has packet to forward. When node A select channel to forward packet, we denote PI (A) the probability that the selected channel will be interfered. Let S be the set of N available channels; B is channel bandwidth; B(A) is bandwidth experienced by node A. BChain is the maximum bandwidth can be achieved for transmission from source to destination of the chain. M is the interference distance in term of number of hops and L is hops length of the chain. Along the chain, we can see that the middle node such as node AM+1 in Fig. 2 is the bottleneck node, because its’ data transmission may share the same channel with most number of other transmissions. Bandwidth of chain is reduced significantly because of those nodes. Thus we will evaluate the bandwidth can be experienced by the middle node A in the chain. Policy 1. we have Chout = Chin , therefore two consecutive data transmissions along the path always interfere with each other. Thus channel interference always happens, PI (A) =1. If the chain is long enough, which is equal or more than (2*M+2) hops long. We examine the middle node AM+1 as in Fig. 2; AM+1 will share the same channel with the next M nodes AM+2 ,.., A2M+1 and the previous M nodes A1 ,.., AM along the path. However due to the exposed node problem, transmission from node AM+1 to node AM+2 will also interfere with CTS/ACK packet sent from node A1 to node S. Therefore we can say that node AM+1 shares the same B channel with (2*M+1) other node.; this makes B(AM+1 ) = 2∗M+2 . Thus the B chain of nodes can achieve a maximum bandwidth of 2∗M+2 . If hops length L < (2*M+2); the middle node will have carrier sensing range cover the whole chain, thus its’ data transmission will share the same channel with all the other (L-1) transmissions along the path. So its’ experienced bandwidth B will be B L . Therefore the chain can achieve a maximum bandwidth of L . B if L ≥ (2 ∗ M + 2) BChain = 2∗M+2 (2) B if L < (2 ∗ M + 2) L Policy 2. we denote PN I (A) the probability that the selected channel of A will not be interfered. PN I (A) = 1 - PI (A). Let K be number of forwarding nodes
Channel Allocation for MCMI Communication
93
along the chain excluding A stay inside carrier sensing range of A. As discussed in policy 1, K is (2*M+1) if L ≥ (2*M+2); otherwise K is (L-1). We can see that PN I (A) equals to the probability that node A selects channel Chi and the other K nodes select among the rest (N-1) channels (S\ {Chi }) multiply by N. K *N = NN−1 K PI (A) = 1- PN I (A) = 1- NN−1
PN I (A) =
1 N
*
N −1 K N
we denote PI (A,J) the probability that the selected channel of A will be shared with other J nodes J+1 N −1 K−J J N −1 K−J PI (A,J) = N1 ∗ N ∗ N = N1 ∗ N J=0..K where 1 K K K (N −1)K−J B B(A) = J=0 PI (A, J) ∗ J+1 =B ∗ N J=0 J+1
BChain = B ∗
1 N
K K (N − 1)K−J (2 ∗ M + 1) if L ≥ (2 ∗ M + 2) whereK = L−1 if L < (2 ∗ M + 2) J + 1 J =0 (3)
Policy 3. We first evaluate the long chain of nodes that L ≥ (2*M+2). If N ≥ (M+2), policy 3 can help to eliminate channel interference; thus PI (A) = 0 and B(A)= B. Else if N < (M+2), PI (A) = 1 and node A will share the same M channel with next M along the chain. Node A N nodes and previous N nodes may share the same channel with the exposed node if M+1 = M+1 N N . Therefore B(A) = M + BM +1 +1 . N N Then we evaluate the short chain that L< (2*M+2). If L ≤ N then all the transmissions use different channel thus PI (A) = 0 and B(A)= B. Else if L > L N, data transmission of node A will share the same channel with other N -1 L L transmission. Therefore PI (A) = 1 and B(A)= B where N is ceiling of N L N ⎧ B if L ≥ (2 ∗ M + 2)andN ≥ (M + 2) ⎪ ⎪ B ⎪ ⎨ M if L ≥ (2 ∗ M + 2)andN < (M + 2) N + MN+1 +1 BChain = (4) B if N < L < (2 ∗ M + 2) ⎪ L ⎪ ⎪ N ⎩ B if L ≤ N
4 4.1
Simulation and Results Verification of Chain Results
First we simulate MCMI in a chain of nodes setup, where nodes are placed ideally 150m apart from each other. The transmission range is 250m and carrier sensing range is 550m. This is the worst-case placement, where node is placed at just above half of transmission range of each other. In this scenario, interference distance M is 3 hops. Packet is originated at source node with the rate of 2Mbps, which equals to channel bandwidth; so that data transmission of the chain is
94
T.-T. Luong, B.-S. Lee, and and C.K. Yeo Table 1. Bandwidth drop rate when chain’s length increases Chain length (hops) 1 2 3 4 5 5
Interface Interface Interface Interface Interface Interface
with with with with with
Policy Policy Policy Policy Policy
3 3 3 2 3
1 2
3
4
5
6
7
8
9
10
1 2
1 3 1 2
1 4 1 2 1 2
1 5 1 3 1 2 1 2
1 6 1 3 1 2 1 2
1 7 1 4 1 3 1 2
1 8 1 4 1 3 1 2
1 8 1 4 1 3 1 2
1 8 1 4 1 3 1 2
1 1 1 1 1 1
1 1 1 0.9 1
1 1 1 0.73 0.59 0.47 0.38 0.30 0.24 0.24 0.24 1 1 1 1 1 1 1 1
under saturated condition. We will measure the bandwidth can be achieved when the chain is 1-hop length and measure how the bandwidth drops when chain is longer. We increases numbers of interfaces equipped by nodes and apply different channel selection policy to verify our analysis. We calculate the drop rate of maximum bandwidth achieved of chain of Nhops length compared to 1-hop length chain according to equation (2), (3), (4). The result is summarized in Table 1 Fig. 4 shows the comparison results of our
Fig. 4. Bandwidth drop rate when number of hops increases
simulation and analysis. We can see that our simulation’s results are very close to the analysis results shown in Table 1. When the chain gets longer, packet must traverse more hops. Packets’ end-to-end delay increases while bandwidth decreases. 4.2
Simulation of MCMI in Two Dimensions Multihops Network Environment
We evaluated the performance of MCMI in static ad hoc network of map size 1200mx800m with network node density of 80 nodes. This setting helps to ensure that network is crowded enough so that we can have a path between any nodes; and network is also scarce enough so that the path length is long for evaluating effects of different channel allocation policies. The average hop counts of our
Channel Allocation for MCMI Communication
95
Table 2. Simulation Setting Parameter
Setting
Traffic model Packet size Packet sending rate Mac Transmission range Carrier sensing range Map size Node number Simulation time
20CBR connections 512 bytes 2pkt/s-12pkts/s 802.11 2Mbps 250m 550m 1200mx800m 80 300s
simulation are 3.5 hops. We simulate 20 CBR connections with 512bytes packet size in 300 seconds. The packet rate increases from 2 packets/s to 12 packets/s to vary the traffic load. A summary of the simulation setting is given as shown in Table 2. The following performance metrics are used to evaluate the simulation results: – Goodput: the number of useful bits per unit of time forwarded by the network from a certain source address to a certain destination, excluding protocol overhead, and excluding retransmitted data packets – End-to-end delay: the average time it takes for a packet to traverse the network from its source to destination. 4.3
Result Analysis
Goodput Experiment 1: Effects of number of Interfaces,N. Fig. 5 shows the goodput results at different traffic load for different number of channels. The goodput performance of N-interfaces is normalized against the performance of 1-interface. With increasing number of node’s interface, nodes can receive packet on one interface and send packet on other interface at the same time. Thus with more interfaces, node can share the traffic load better, which help to reduce the congestion. Therefore as expected when number of interfaces increases, the goodput increases. We do not expect the goodput to increase linearly as the number of interfaces increases, because communication paths can crossover and interfere each others. This causes bandwidth reduction in all the crossover communication path. Experiment 2: Effects of Forwarding Channel Assignment Policy. The normalized goodput performances of three channel assignment policies is compared against policy 1 in three-interface network are shown in Fig. 6. Policy 3 is the best as it diversifies channel usages, which results in greatest goodput achieved. Policy 1 does nothing to prevent channel interference, thus its’ goopdut performance is much less than that of policy 3. Policy 2 does a little effort to prevent
96
T.-T. Luong, B.-S. Lee, and and C.K. Yeo
Fig. 5. Normalized goodput regarding number of interfaces
Fig. 6. Normalized goodput regarding forwarding channel selection policy
channel interference by selecting forwarding channel randomly, which still has probability of channel interference. Thus policy 2 performs slightly worse than policy 3. End-to-End Delay Experiment 1: Effects of number of Interfaces,N. Fig. 7 shows the corresponding results of end-to-end delay for different number of network interface used for transmission, as the traffic load is increased. A key observation is that, in a congested network, packets will be kept in queue for very long, waiting for channel availability; which resulted in either long end to end delay or packet dropped. When node has more interfaces, it will be able to forward packets through all the interfaces. Thus packets need not wait long in queue; as the result, with more interface the end-to-end delay decreases considerably. For example at packet sending rate of 10pkt/s, the end to end delay can be reduced by 2, 4, 6 times that of a single interface when node has 2, 3 and 4 interfaces respectively.
Channel Allocation for MCMI Communication
97
Fig. 7. End-to-end delay regarding number of interfaces
Experiment 2: Effects of Forwarding Channel Assignment Policy. Fig. 8 presents the end to end delay performance of three channel assignment policies in three-interface node configuration with varying traffic load. Forwarding data packets on the same channel as the receiving channel incurs the greatest channel interference, thus policy 1 has the highest end-to-end delay. Policy 3 is the best as it diversifies channel usages, thus it can help reduce channel interference, which results in shortest end-to-end delay. The performance of policy 2 is slightly worse than policy 3.
Fig. 8. End-to-end delay regarding forwarding channel selection policy
5
Conclusion
We presented a multiple channels multiple interfaces ad hoc network routing protocol, DSDV-MCMI, which utilizes multiple channels to enable simultaneous multiple transmission to improve network capacity. This proposed scheme does not require modification to the current IEEE 802.11 MAC protocol. Simulation
98
T.-T. Luong, B.-S. Lee, and and C.K. Yeo
results shows that DSDV-MCMI exploits multiple channels multiple interfaces to improve network capacity and reduce channel interference. With more equipped network interfaces, we can achieve higher goodput and shorter end-to-end delay time. We also suggested some policies for forwarding channel selection: same channel, random channel and round robin channel; these policies play an important role in determining performance of MCMI. However, there is also an issue of crossover interference among the communication path and one needs a deeper understanding before a satisfactory solution is found.
References 1. Bahl, P., Adya, A., Padhye, J., Walman, A.: Reconsidering wireless systems with multiple radios. SIGCOMM Comput. Commun. Rev. 34(5), 39–46 (2004) 2. Chandra, R., Bahl, P., et al.: Multinet: Connecting to multiple ieee 802.11 networks using a single wireless card. In: Proceedings of IEEE Infocom 2004, Hongkong (March 2004) 3. So, J., Vaidya, N.H.: Multi-channel mac for ad hoc networks: handling multichannel hidden terminals using a single transceiver. In: MobiHoc 2004: Proceedings of the 5th ACM international symposium on Mobile ad hoc networking and computing, pp. 222–233. ACM Press, New York (2004) 4. Nasipuri, A., Zhuang, J., Das, S.R.: A multichannel csma mac protocol for multihop wireless networks. In: Wireless Communications and Networking Conference. WCNC, vol. 3, pp. 1402–1406. IEEE, Los Alamitos (1999) 5. Nasipuri, A., Das, S.: Multichannel csma with signal power-based channel selection for multihop wireless networks. In: Vehicular Technology Conference, 2000. IEEE VTS-Fall VTC 2000. 52nd, vol. 1(1), pp. 211–218 (2000) 6. Jain, N., Das, S., Nasipuri, A.: A multichannel csma mac protocol with receiverbased channel selection for multihop wireless networks. In: Proc. IEEE IC3N, Phoenix (October 2001) 7. Wu, S.-L., Lin, C.-Y., Tseng, Y.-C., Sheu, J.-P.: A new multi-channel mac protocol with on-demand channel assignment for multi-hop mobile ad hoc networks. In: ISPAN ’00: Proceedings of the 2000 International Symposium on Parallel Architectures, Algorithms and Networks (ISPAN 2000), p. 232. IEEE Computer Society Press, Washington (2000) 8. Lee, U., Midkiff, S.F., Park, J.S.: A proactive routing protocol for multi-channel wireless ad-hoc networks (dsdv-mc). In: International Conference on Information Technology: Coding and Computing (ITCC 2005), vol. 2, pp. 710–715 (2005) 9. Paquereau, L., Helvik, B.E.: A module-based wireless node for ns-2. In: WNS2 2006: Proceeding from the 2006 workshop on ns-2: the IP network simulator, p. 4. ACM Press, New York (2006) 10. network simulator version 2 (ns 2): http://www.isi.edu/nsnam/ns/ 11. Perkins, C.E., Bhagwat, P.: Highly dynamic destination-sequenced distance-vector routing (dsdv) for mobile computers. Computer Communications Review 24(4), 234–244 (1994) 12. Katzela, I., Naghshineh, M.: Channel assignment schemes for cellular mobile telecommunication systems: a comprehensive survey. Personal Communications, IEEE [see also IEEE Wireless Communications] 3(3), 10–31 (1996)
Resilience to Dropping Nodes in Mobile Ad Hoc Networks with Link-State Routing Ignacy Gawędzki and Khaldoun Al Agha Laboratoire de Recherche en Informatique Université Paris-Sud 11, CNRS F-91405 Orsay, France [email protected], [email protected]
Abstract. Currently emerging standard routing protocols for MANETs do not perform well in presence of malicious nodes that intentionally drop data traffic but otherwise behave correctly with respect to control messages of the routing protocol. In this paper, we address the problem of coping with the presence of such nodes in networks that use a linkstate routing protocol. The solution, based on the verification of the principle of flow conservation, is purely protocolar and does not rely on any specific underlying OSI layer 1 or 2 technical feature. In addition, it is well suited for integration into existing link-state routing protocols for ad hoc networks, by using existing periodic control messages and by not requiring any clock synchronization between the nodes. The method, once implemented in an actual routing protocol, proves to increase the ratio of successfully delivered data packets significantly. Keywords: ad hoc networks, link-state routing, security, resilience.
1
Introduction
Routing protocols for mobile ad hoc networks (MANETs) have received much attention in the past decade, but currently the most mature solutions still rely on the full cooperation of the participating nodes. The presence of one or more malicious nodes may have negative consequences on the proper operation of the network. In the case of proactive protocols, nodes exchange control messages allowing them to maintain their routing table and data packet forwarding is performed on a hop-by-hop basis, using a traditional protocol stack (most commonly TCP/IP). This makes these protocols easy to implement as userspace processes while the operating system’s kernel remains unchanged. The downside is that securing the protocol itself is not enough to make the network resilient to malicious nodes, since they can always play nice with control packets, while not as much with data packets. The presented solution aims to reduce the impact of malicious nodes as much as possible, allowing others to route data packets around nodes that tend to lose traffic, provided that malicious nodes are not colluding. A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 99–111, 2008. c IFIP International Federation for Information Processing 2008
100
I. Gawędzki and K. Al Agha
After related work in the field is summarized in Sect. 2, the solution is detailed in Sect. 3. Performance evaluation is presented in Sect. 4, followed finally by a conclusion and some perspectives in Sect. 5.
2
Related Work
The issue of Byzantine robustness of network operations has received attention for as long as the network administration of the Internet has become more decentralized and thus more exposed to attacks. The problem reemerged for MANETs, since the direct application of solutions for wired networks appeared to be either impossible or ineffective. In the family of reactive routing protocols — of which DSR [9] and AODV [13] are notorious examples — various solutions have been proposed [2,7,1] to provide Byzantine robustness. Since route discovery and maintenance as well as data packet forwarding is taken care of by the protocol, cryptographic methods can be used to ensure that every packet has been forwarded to the destination, without being corrupted, misrouted nor forged. As for proactive routing protocols, the OLSR [5] protocol has received attention from Raffo et al. [14] who proposed to secure the content of control messages to prevent nodes from advertising false or expired information. Fourati et al. also proposed a way to secure control messages [6] by requiring neighbors to validate and sign TC messages using threshold cryptography. While these propositions aim to guarantee the correctness of the protocol in presence of malicious nodes, they do not protect against data packet dropping. Protecting data packets in the same (intrusive) way as proposed for reactive protocols would break the principle of separate table-driven hop-by-hop routing, so it is not desirable in this case. Additional cryptographic tools such as key distribution systems to allow sender authentication should be used, but they still do not enable the prevention or detection of intentional packet dropping. In order to make packet dropping detectable, Marti et al. proposed [12] to exploit the ability of nodes to overhear the transmissions of their neighbors to check whether they have retransmitted the packets as requested. Unfortunately, such an approach does not work anymore when directional antennae or multiple network interfaces (or simply different communication channels) are used on nodes. Other approaches, based on active probing of nodes to detect droppers, have also been proposed [10,2,11]. They rely on the inability of nodes to either distinguish probes from plain data packets or identify their originator. It is worth noting that many solutions to encourage cooperation [4,15] have been proposed as well. Although they may be very effective to discourage selfishness, they do not protect against malicious nodes that drop data traffic, be it at their own expense. In the context of static wired networks, Bradley et al. proposed [3] that nodes should periodically verify that each of their neighbors satisfies the principle of flow conservation based on their advertised packet counters. Nodes that fail to pass these tests are flagged as bad and excluded from the network. Their
Resilience to Dropping Nodes in MANETs with Link-State Routing
101
assumptions about the network have later been criticized as being too strong and a few possible attacks have been exposed by Hughes et al. [8]. However, this solution is also hardly applicable to MANETs, because of mobility and the difficulty to maintain tightly synchronized clocks between nodes.
3 3.1
Proposed Solution Motivations and Assumptions
Our experience in implementation of MANET routing protocols taught us that the less a solution is intrusive in the existing framework the easier it is to implement, maintain and port. Besides, relying only on basic features of drivers allows wider hardware support. With a protocolar approach, we sought a solution easy to implement by requiring little or no change at all in the OS kernel while no cross-layer requirement eases support for a wide range of network interface cards. The solution assumes that cryptographic mechanisms allow any node, be it the destination host or an intermediate router, to check a packet’s integrity and authenticate its source. The network is assumed to be running a linkstate routing protocol that exchanges periodic control packets. The bound P on the time separating two successive control packets is assumed to be finite and known. 3.2
Solution Outline
The solution is composed of three distinct phases, that are performed continuously during the operation of the network. First, perform unicast packet accounting, exchange counters periodically and verify the principle of flow conservation. Second, maintain a local degree of distrust in each other node, based on how often it fails the flow conservation tests and diffuse that value in the network. Third, combine local degrees of distrust from other nodes into a single, uniform metric (i.e. every other node comes up with the same values) and use it for routing table calculation. Note that intentional and unintentional packet droppings are not distinguished, which is desirable since in the third phase, intentional as well as unintentional packet droppers are simply avoided. This should have a positive effect on the overall operation of the network. 3.3
Checking Flow Conservation
In this section, the method used to check whether nodes’ counter values do not satisfy the flow conservation principle is presented. Definition 1. Let the network be a graph G = (V, E) with V the set of vertices (the nodes) and E : R+ → V × V a function mapping instants in time t to sets of arcs E(t) (the one-way links) existing at these instants.
102
I. Gawędzki and K. Al Agha
j i Definition 2. Let Iij (t) and Iij (t) be respectively i’s and j’s counter of the amount of bytes that flowed on link (i, j) up to instant t in packets which desj i tination was not j. Similarly, let Oij (t) and Oij (t) be respectively i’s and j’s counter of what flowed on (i, j) up to t in packets which source was not i.
The flow conservation principle states that i i ∀t, ∀i, Iji (t) − Oij (t) = 0 .
(1)
j i i If i advertised its counters Iji (t) and Oij (t) periodically, its neighbors could check (1) for each instant t at which i sent an advertisement. But since that simple check is based on i’s counters only, i could as well have advertised false values. Additional checks are thus needed to ensure that these are correct, namely:
∀t, ∀i, j,
j j i i Iji (t) = Iji (t) and Oij (t) = Oij (t)
and Tiji (t) = Tijj (t) ,
(2)
where Tiji (t) and Tijj (t) are respectively i’s and j’s counter of the total amount of bytes that flowed on (i, j) up to t. Because of mobility, the neighborhoods are changing and so absolute values of counters are inconvenient. Differential values are better advertised instead: a differential value is simply the difference between the current absolute value of a counter and its absolute value at the time of last advertisement. Definition 3. Let Si (t) be the value of i’s sequence counter at instant t and let Ti (n) be the instant at which the sequence counter is incremented from n − 1 to n and i’s advertisement set with sequence number n is transmitted. In the following, X is used to represent either I, O or T , to avoid repeating three times each formula that holds for each type of counter. j i i Definition 4. For each counter in the form Xij (t) or Xij (t), let X˙ ij (t) and j ˙ Xij (t) be their differential values.
∀t, ∀i, j, ∀k ∈ {i, j},
k k k X˙ ij (t) = Xij (t) − Xij (Tk (Sk (t)))
(3)
Definition 5. Let T− i (n) be the instant right before i’s nth advertisement set is sent. This notation is used only with differential values to avoid ambiguity. ∀t, ∀i, Si T− (4) i (Si (t)) = Si (t) − 1 Using periodic messages of the routing protocol, nodes advertise successive differential values of their counters. Definition 6. An advertised values of counters (AVC) tuple from i for neighbor j with sequence number n has the following form: i − − i I˙ij Ti (n) , O˙ ij Ti (n) , T˙iji T− i (n) , i Vj (n) = i − . (5) − i I˙ji T (n) , O˙ ji T (n) , T˙jii T− (n) i
i
i
Resilience to Dropping Nodes in MANETs with Link-State Routing P
P Ti (n)
Ti (n + 1)
103
P
Ti (n + 2)
Ti (n + 3) from i time from j
Tj (m − 2)
Tj (m − 1) P
Tj (m) Tj (m + 1) P
P
Fig. 1. Desynchronized advertisements: differential counter values from i and j are not advertised at the same time and thus do not represent flow on the same interval. Vertical arrows indicate instants at which advertisements from i (above) and j (below) are sent. Upper bound on the advertisement interval P is shown as well.
Between two successive transmissions of an AVC tuple for some neighbor j, a node i may receive zero or more AVC tuples regarding itself from j. Definition 7. Let Sij (n) be the (possibly empty) set of sequence numbers of j’s AVC tuples received by i between its (n − 1)th and nth advertisements. ∀i, j, ∀n, Sij (n) = m : Ti (n − 1) ≤ Tj (m) < Ti (n) ∧ (j, i) ∈ E (Tj (m)) (6) To allow neighbors of i to verify (2), i has to retransmit, along with each AVC tuple about a neighbor j, a set of reverse AVC tuples. In all, values of counters are diffused to the whole 2-hop neighborhood. Definition 8. Node i’s nth advertisement set contains nth link advertisements about each of its neighbor j. ⎧⎛ ⎞ ⎫ ⎬ ⎨ ⎝n, Vji (n), Ai (n) = m, Vij (m) ⎠ (7) ⎩ ⎭ i j
m∈Sj (n)
Given that advertisements are sent asynchronously, (1) can be performed directly, whereas (2) most probably cannot. The question is then how to decide that those equations are not satisfied, based on desynchronized counters, i.e. differential counter values over different intervals of time (see Fig. 1). The idea is to consider what can be called desynchronized link balances. Definition 9. A desynchronized link balance in terms of counter X for the link (k, l) (either (i, j) or (j, i)), computed from advertisement number n from node i about node j has the following form: − j − i ∀i, j, ∀n, ∀(k, l), BX ikl (n) = X˙ kl Ti (n) − X˙ kl Tj (m) . (8) m∈Sij (n)
When a node k receives the nth advertisement set from i, it can compute BX iij (n), i i i ˙j − since X˙ ij (T− i (n)) and every Xij (Tj (m)) with m ∈ Sj (n) are contained in A (n).
104
I. Gawędzki and K. Al Agha
Obviously, BX iij (n) and BX iji (n) are seldom zero, unless the counters in Ai (n) are zero themselves. Instead of looking at desynchronized link balances for individual advertisements, let us consider the sum of several desynchronized link balances for successive advertisements. It appears that these accumulated link balances have interesting properties. Definition 10. Let Δij (n) be the difference in time between the instant Ai (n) is sent and last j’s advertisement set was received by i.
∀i, j, ∀n,
Δij (n) =
⎧ ⎨Ti (n) − max Tj (m) i
if Sij (n) =∅ ,
⎩T (n) − T (n − 1) + Δi (n − 1) i i j
otherwise.
m∈Sj (n)
(9)
Suppose that k receives M successive advertisement sets from i, calculates the desynchronized link balances and sums them. That sum is expressed quite simply in terms of absolute counters. The intuitive argument can be seen on Fig. 1: the summed desynchronized link balance (the gray rectangles) from i’s advertisements n + 2 to n + 3 (i’s (n + 2)th advertisement contains j’s (m − 1)th counters and i’s (n + 3)th advertisement contains j’s mth and (m + 1)th counters), is clearly equal to the difference between the amount of bytes that flowed on interval [Tj (m + 1), Ti (n + 3)) and on interval [Tj (m − 2), Ti (n + 1)). Definition 11. Let F X iij (n) (resp. F X iji (n)) be i’s end flow on link (i, j) (resp. (j, i)), i.e. the quantity expressed by: ∀i, j, ∀n, ∀(k, l),
i i F X ikl (n) = Xkl (Ti (n)) − Xkl Ti (n) − Δij (n) .
(10)
j i Theorem 1. If Xkl (t) = Xkl (t) (for any i, j, (k, l) = (i, j) or (k, l) = (j, i) and any t), the summed values of desynchronized link balances over an interval of sequence numbers [n, n + M ] are exactly:
∀i, j, ∀n, ∀M ≥ 0, ∀(k, l),
n+M
BX ikl (p) = F X ikl (n + M ) − F X ikl (n − 1) . (11)
p=n
Proof. By induction on M ≥ 0. The case of M = 0 is trivially shown: i i ∀i, j, ∀n, ∀(k, l), BX ikl (n) = Xkl Ti (n) − Xkl Ti (n) −Δij (n) (12) j j i − Xkl Ti (n−1) + Xkl Ti (n−1) −Δj (n−1) . j i The induction hypothesis holds since we have that Xkl (t) = Xkl (t).
From the expression of (11), bounds on the accumulated desynchronized link balances can be expressed as follows.
Resilience to Dropping Nodes in MANETs with Link-State Routing
105
j i Theorem 2. If Xkl (t) = Xkl (t) (for any i, j, (k, l) = (i, j) or (k, l) = (j, i) and any t), then the accumulated desynchronized link balances are bound in the q n+M following way: i X Xi ∀i, j, ∀n, ∀M ≥ 0, ∀(k, l), max B kl (p) − F kl (q) ≤ BX ikl (p) q∈[n,n+M ]
p=n
≤
min
q
q∈[n,n+M ]
p=n
BX ikl (p)
+ F X ikl (n + M ) .
(13)
p=n
The proof of Theorem 2 is straightforward but omitted for brevity. Definition 12. Let Γji (n), be the minimum difference in time between the instant Ai (n) is sent and first j’s advertisement set was received by i since Ai (n−1) was sent. ∀i, j, ∀n : Sij (n) = ∅, Γji (n) = Ti (n) − min Tj (m) (14) i m∈Sj (n)
i ˙i − In Ai (n), the quantities X˙ ij (T− i (n)) and Xji (Ti (n)) are i’s claim about how much has flowed on links (i, j) and (j, i) respectively for each class X, during interval [Ti (n−1), Ti (n)). If that advertisement also contains at least one reverse j i AVC tuple for the links (i.e. Sij (n) = ∅), then the quantities X˙ ji (T− i (n) − Γj (n)) j − i ˙ and Xij (Ti (n) − Γj (n)) are j’s corresponding claim on interval [Ti (n − 1) − Δij (n − 1), Ti (n) − Γji (n)).
Definition 13. Let Lij (n) and Nij (n) be the sequence numbers defined as follows. ∀i, j, ∀n,
Lij (n) = max m : m ≤ n ∧ Sij (m) =∅ Nij (n) = min m : m > n ∧ Sij (m) =∅
(15)
It appears that we have the following properties: ∀i, j, ∀n, Ti (n) − Δij (n), Ti (n) ⊆ Ti Lij (n) − 1 , Ti (n) Ti (n) − Δij (n), Ti (n) ⊆ Ti (n) − Δij (n), Ti Nij (n) − Γji Nij (n) .
(16)
It immediately follows that bounds for the end flow can be expressed in terms of differential values of counters contained in advertisements. ⎞ ∀i, j, ∀n, ∀(k, l), ⎛ n − i i i i ˙j ⎠ (17) F X ikl (n) ≤ min ⎝ X˙ kl T− i (p) , Xkl Ti Nj (n) − Γj Nj (n) p=Lij (n)
If there is no discrepancy between i and j’s counters about link (k, l) (either (i, j) or (j, i)), then the bounds on the accumulated desynchronized link balances of (13) are verified. Even more so if upper bounds of the end flows from (17)
106
I. Gawędzki and K. Al Agha
are used instead of their actual values. In the following we call this verification the link coherence check. When such a check fails, the absolute value of the excess of accumulated desynchronized link balances with respect to the (loose) bounds is itself a lower bound on the amount of actual discrepancy, which is used directly in the second phase of the solution (detailed in Sect. 3.4). Then the corresponding accumulated values have to be reset to zero and the bounds to be initialized anew upon reception of the next advertisement. 3.4
Distrust System
A failed check is a proof of counter discrepancy, caused by dropped data traffic or false AVCs. Since usually some data packet loss is to be legitimately expected, a check failure should not be a direct reason for the exclusion of nodes. Nodes that drop data traffic should thus be avoided if possible, but not excluded. In the second phase of the solution, tests from the first phase are used to maintain a distrust metric on nodes which is used for path calculation. Unlike in usual trust or reputation systems, this metric cannot be individually maintained by each node, based on first-hand observations combined with second-hand observations from neighbors. The metric has to be uniform across all the nodes, so that every node tends to know of the same value for any given node in the topology, otherwise hop-by-hop routing may not be loop-free. Therefore, the metric is a combination of all the nodes’ local observations, diffused in the network. The local observations (failures to pass checks from the first phase) are used to maintain a local degree of distrust. This value is initially zero and each time a check fails, it is incremented as follows: Di ← max(1, Di ) · 1 + Li · r+ , (18) where Di , Li and r+ are respectively the degree of distrust in i, the lower bound on the amount of actual discrepancy and the ratio used as a parameter of the system set to how fast a degree has to increase. The value recovers over time in the following way: Di ← max 0, Di − Δt · r− , (19) where Di , Δt and r− are respectively the degree of distrust in i, the interval of time elapsed since last update and the ratio used as a parameter of the system set to how quickly a degree has to decrease with time. The local degree of distrust is diffused to other nodes, to allow them to compute the distrust metric for each other node. To make the calculation resilient to slander, we propose to combine the different degrees by calculating a kind of median value, which is insensitive to pathological samples that deviate too much. Using the local degrees of distrust directly is too simplistic and we require nodes to advertise a confidence factor along. That factor is used to enable each node to say to what extent its degree has to be taken into account in the calculation of the median. It is based on the amount of traffic that the observed
Resilience to Dropping Nodes in MANETs with Link-State Routing
107
node supposedly transmitted, according to its counters. The confidence factor increases with traffic: ci ← ci + Ti · r+ (20) (with ci , Ti and r+ being respectively the confidence factor for Di , the amount of traffic of i and the ratio used as a parameter of the system set to how quickly the confidence has to grow) and decreases with time passing: ci ← max(0, ci − Δt · r− )
(21)
(with ci , Δt and r− being respectively the confidence factor of Di , the interval of time elapsed since last update and the ratio used as a parameter of the system set to how quickly the confidence has to decrease with time). This way, the more (alleged) traffic goes through a node, the higher the confidence factor of its neighbors in their degree of distrust in that node. The value of the confidence factor that is actually advertised is required to be in the interval [0, 1), Ci = 1 −
1 , 1 + ci · ra
(22)
where Ci , ci and ra are respectively the advertised confidence factor of Di , the (internal) confidence factor of Di and the ratio used as a parameter of the system set to how quickly an advertised confidence factor has to come close to 1. The actual calculation of the metric based on individual couples (Dij , Cij ) (distrust and associated confidence in i diffused by j) is a weighted median: ∀i,
Di1 , Ci1 , . . . , (Din , Cin ) , j 1 j Ci ≤ · C 2 j i j j:Di <Wi
and
Cij ≤
j:Dij >Wi
1 j · C , (23) 2 j i
where Wi is the combined metric for node i. A simple route calculation using a shortest path algorithm on the global topology graph is to set the weight wij of each link (i, j) to 1 + Wi (instead of 1 for a simple hop-count metric).
4 4.1
Performance Evaluation Simulation Model
We have implemented our solution on top of a model of the OLSR protocol for the OPNET 12.0 simulator. Mobile nodes move on an area of 1000 m × 1000 m, with constant velocity (chosen uniformly on [0, 1] m/s) and constant direction (chosen uniformly on [0, 2π)) during an interval of time chosen exponentially with rate 1/600 per second. Data packets are generated exponentially with rate 5 per second, source and destination are chosen uniformly and data length is chosen uniformly between 40 and 1500 bytes. Cheaters, also chosen uniformly among the
108
I. Gawędzki and K. Al Agha
nodes, drop data packets with a parametrized probability. A IEEE 802.11 MAC layer is used on all nodes with 11 Mbps carrier, 50 mW transmission power, flow control (RTS/CTS) and default power thresholds (-85 dBm for carrier sense and -70 dBm for reception, resulting in ranges of respectively 1200 m and 214 m). The method presented in Sect. 3.3 and 3.4 has been implemented, along with a simple retransmission protocol for lost advertisements (omitted here for brevity), with r+ = 1/50, r+ = 1, r− = r− = 1/10 and ra = 10−6 . The MPR selection heuristic has been adapted so as to prefer neighbors with lower local distrust (details omitted here as well). MPRs diffuse local degrees of distrust and confidence factors of their selectors in TC messages. Cheaters do slander by always advertising a very high degree of distrust and a confidence factor of 1. The data packet delivery rate (total received data packets over total generated data packets) has been measured in each run and compared to several reference runs: in the No Cheater run, plain OLSR is used and the drop probability is forced to zero to see what OLSR achieves at best without cheaters; in the Plain run, plain OLSR is faced with non-zero drop probability to see how bad it does alone; in the Known run, OLSR has an oracle telling which node is a cheater and routing table calculation is performed as suggested at the end of Sect. 3.4 with Wi = 9 for each cheater i. That last reference run is used to see what performance could be achieved at best. Cheaters that intentionally drop data packets have many possible ways in which they can manipulate their counters. Among possible strategies, we have chosen four different ones: increment counters as though the packets were forwarded indeed; increment counters on all outgoing links so that the total added sum is the amount of lost data bytes; do not increment counters on outgoing links; increment counters only for every second packet. 4.2
Simulation Results
In the first batch of simulations, there were 100 nodes with 10% of cheaters. We have checked that the system stabilizes pretty quickly and after a few dozen seconds, the delivery ratio of our method is stable (though we checked for up to 10 1.0 0.9 delivery ratio
delivery ratio
0.9
0.8 Known Average Plain
0.7
0.8 0.7 0.6
No Cheater Known
Average Plain
0.5 0.25
0.5
0.75
drop probability
1.0
25 (3)
50 (5) 75 (8) total nodes (cheaters)
100 (10)
Fig. 2. Delivery ratio: with fixed density of 100 nodes and variable drop probability (left); with variable density and fixed drop probability of 1.0 (right)
Resilience to Dropping Nodes in MANETs with Link-State Routing
109
1.0
delivery ratio
0.8 0.6 Known Average Plain
0.4 0.2 0
5
10
15
20
25
30
35
40
45
50
55
60
percentage of cheaters
Fig. 3. Delivery ratio vs. cheaters: 1.0 drop probability and a total of 100 nodes
hours) and much closer to the Known case than to the Plain one. Lowering the drop probability, apart from raising the Plain curve, only lengthened by a small factor the time required for the delivery ratio to be as close to the Known curve (approximately 3 minutes for a drop probability of 0.25). The average delivery ratios of the Plain, Known and the average of the four cheating strategies (which results turned out to be very similar) after one hour of simulation, with 100 nodes, 10% cheaters with 1.0 drop probability, are presented in Fig. 2 (left). It appears clearly that in dense networks, the performance of our method sticks to the Known reference. To evaluate the performance of our method with respect to varying network density, we have run a batch of simulations with a different total number of nodes but a (almost) constant ratio of 10% of cheaters, each dropping with a probability of 1.0. The results presented in Fig. 2 (right) show that while the delivery ratio degrades with decreasing density, the performance of our method is still very close to the Known reference. The reason why maximum achievable performance decreases with the density is that there are fewer and fewer alternative paths for a given destination, hence fewer ways to avoid the cheaters. A last batch of simulations has been run with a duration of 15 minutes, a total number of 100 nodes but a varying number of cheaters with 1.0 drop probability. Results show (see Fig. 3) that our method improves the delivery ratio significantly, but less and less than the Known reference as the number of cheaters increases. 4.3
Discussion
Hughes et al. strongly criticized [8] the use of the principle of flow conservation as a way to detect malicious nodes in a network. They presented a number of attack scenarios which make simplistic approaches fail anyway. In our solution, we require all packets to be checked for integrity and their source address to be authenticated by all intermediate nodes, to exclude the possibility of packet modification or forgery going unnoticed. Some attacks, like “ghost routers” or the ones based on the reactivity of link-state routing protocols,
110
I. Gawędzki and K. Al Agha
are targeted at the routing protocol itself, which we assume here to be already protected. Note that the “kamikaze” attack, in which a malicious node intentionally advertises false counter values in order to be excluded along with some of its neighbors is simply handled by our solution, in which nodes are never excluded.
5
Conclusion
We have presented a way to augment a link-state routing protocol to make it resilient to the presence of nodes intentionally dropping data traffic. The method consists in three parallel operations: detect flow non-conservation on neighboring nodes, maintain a degree of distrust in all checked nodes, combine all degrees of distrust into a metric for routing table calculation. The method is very little intrusive into the system, provided that necessary cryptographic tools are available and that the routing protocol itself is protected. It is independent of OSI Data Link and Physical layers which makes it easier to implement and workable with different hardware setups (unidirectional antennae, multiple interfaces, etc). The method showed satisfactory performance, very close to an ideal case in which all cheating nodes are known to an oracle. Among the possible future works, we intend to explore the possibility of making the method work even in the presence of colluding cheaters. The interaction with some intrusion detection system can also be studied, in order to counter the “premature aging” attack.
References 1. Avramopoulos, I., Kobayashi, H., Wang, R., Krishnamurthy, A.: Highly secure and efficient routing. In: IEEE (ed.) INFOCOM 2004. Twenty-third AnnualJoint Conference of the IEEE Computer and Communications Societies, March 2004, vol. 1, pp. 208–220. IEEE, Los Alamitos (2004) 2. Awerbuch, B., Holmer, D., Nita-Rotaru, C., Rubens, H.: An on-demand secure routing protocol resilient to byzantine failures. In: WiSE 2002: Proceedings of the 3rd ACM workshop on Wireless security, pp. 21–30. ACM Press, New York (2002) 3. Bradley, K.A., Cheung, S., Puketza, N., Mukherjee, B., Olsson, R.A.: Detecting disruptive routers: a distributed network monitoring approach. Network, IEEE 12(5), 50–60 (1998) 4. Buttyán, L., Hubaux, J.-P.: Stimulating cooperation in self-organizing mobile ad hoc networks. MONET 8(5), 579–592 (2003) 5. Clausen, T., Jacquet, P.: Optimized link state routing (OLSR) protocol. In: RFC 3626, IETF (October 2003) 6. Fourati, A., Agha, K.A.: A shared secret-based algorithm for securing the OLSR routing protocol. Telecommunication Systems 31(2–3), 213–226 (2006) 7. Hu, Y.-C., Perrig, A., Johnson, D.B.: Ariadne: a secure on-demand routing protocol for ad hoc networks. In: MobiCom 2002: Proceedings of the 8th annual international conference on Mobile computing and networking, pp. 12–23. ACM Press, New York (2002)
Resilience to Dropping Nodes in MANETs with Link-State Routing
111
8. Hughes, J.R., Aura, T., Bishop, M.: Using conservation of flow as a security mechanism in network protocols. In: IEEE Symposium on Security and Privacy, pp. 132–141 (2000) 9. Johnson, D.B., Maltz, D.A., Hu, Y.-C.: The dynamic source routing protocol (DSR) for mobile ad hoc networks for IPv4. RFC 4728, IETF (February 2007) 10. Just, M., Kranakis, E., Wan, T.: Resisting malicious packet dropping in wireless ad hoc networks. In: Pierre, S., Barbeau, M., Kranakis, E. (eds.) ADHOC-NOW 2003. LNCS, vol. 2865, pp. 151–163. Springer, Heidelberg (2003) 11. Mahajan, R., Rodrig, M., Wetherall, D., Zahorjan, J.: Sustaining cooperation in multi-hop wireless networks. In: 2nd Symposium on Networked System Design and Implementation, Boston, MA, USA (May 2005) 12. Marti, S., Giuli, T.J., Lai, K., Baker, M.: Mitigating routing misbehavior in mobile ad hoc networks. In: MobiCom 2000: Proceedings of the 6th annual international conference on Mobile computing and networking, pp. 255–265. ACM Press, New York (2000) 13. Perkins, C., Belding-Royer, E., Das, S.: Ad hoc on-demand distance vector (AODV) routing. RFC 3561, IETF (July 2003) 14. Raffo, D., Adjih, C., Clausen, T., Mühlethaler, P.: An advanced signature system for olsr. In: SASN 2004: Proceedings of the 2nd ACM workshop on Security of ad hoc and sensor networks, pp. 10–16. ACM Press, New York (2004) 15. Zhong, S., Chen, J., Yang, Y.R.: Sprite: A simple, cheat-proof, credit-based system for mobile ad-hoc networks. In: INFOCOM (2003)
3-D Localization Schemes of RFID Tags with Static and Mobile Readers Mathieu Bouet and Guy Pujolle Université Pierre et Marie Curie (UPMC) – Laboratoire d’Informatique de Paris 6 (LIP6) 104 avenue du Président Kennedy, 75016 Paris, France {Mathieu.Bouet,Guy.Pujolle}@lip6.fr
Abstract. RFID is an automatic identification technology that enables tracking of people and objects. We propose a scalable and robust 3-D localization method of RFID tags, derived in two schemes, that uses the diversity of pervasive environments to improve its accuracy. RFID readers are placed on the floor and ceiling of a room. In the first scheme, static and mobile tags are localized using only connectivity information obtained through this structure. The second scheme involves in addition mobile RFID readers. They are used here to refine the localization process by adding more inclusive constraints to the calculation. We study the impact of the number of static and mobile readers on the accuracy. We then show that the first scheme constitutes an upper bound for the second one. Furthermore, we observe that the second scheme does not require a lot of mobile readers and that it considerably improves accuracy. Keywords: RFID, localization, mobility, 3 dimensions, tracking.
1 Introduction Radio Frenquency IDentification (RFID) has recently become widespread for automatic identification and tracking. A RFID system is composed of two types of entities: RFID tags (or transponders) that store identity, and RFID readers (or detectors) that remotely retrieve these data. Tags can be passive: communications are supplied by the reader generally by backscattering its carrier wave, semi-passive: the tags embed a power source for their internal processes and communicate with readers like passive tags, and active: they embed a battery that supplies communications with readers and functionalities such as cryptography or sensor. Active tags are more expensive than passive tags but their communication range is far larger and they can have more advanced utilizations [1]. RFID is a key technology in future pervasive systems and services. Indeed, it provides essential context-aware functionalities such as automatic identification, tracking, and real-time inventory. By building RFID in networks, new management concepts could be conceived so as to fully integrate real-time status of items and people. However, all the benefits of this technology could be hugely increased if identification information was linked to positions. It would add another dimension to the context-awareness: real-time location and consequently mobility. For example, it could be used in home-networking and libraries to retrieve specific objects, control A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 112–123, 2008. © IFIP International Federation for Information Processing 2008
3-D Localization Schemes of RFID Tags with Static and Mobile Readers
113
access or monitor events. Matching identities with their locations would also allow the development of new strategies in autonomic systems for mobility control, resource allocation, security, service discovery. Classic RFID systems only provide coarse-grained localization. In fact, they are generally composed of readers placed in strategic locations; their purpose is to identify all the tags that pass in their read range. As a matter of fact, the precision of the position corresponds to the size of the cell formed by their read range. In this paper, our major contribution is to design a 3-D localization algorithm for mobile and static RFID tags which, contrary to other related works, is based only on connectivity information and which takes into account mobile RFID readers. Our algorithm offers fine-grained position estimation and is conceived so as to be cheap, robust, fast, and thus scalable. Moreover mobile readers are used to refine and improve the precision. Our model is simple: we consider a room, a warehouse, or a container (modeled by a hexahedron) and we deploy readers on the floor and ceiling. No assumption is done on the equipments and their quantity is reduced to the minimum in order to have a low-cost system. In the first scheme, an estimated position is computed for each mobile or static tag by using only connectivity information (which reader can detect the tag and which cannot) with a semi-infinitely constrained multivariable nonlinear method. Then, we present a second method, derived from the first one, to increase the localization precision when there are mobile readers. They are used to refine the first method by adding more constraints. This calculation requires more time and can only be applied on static RFID tags. First, we evaluate the impact of the number of readers on the precision of the localization, and we show that the accuracy of our method is very high when they are densely deployed. Then, we study the impact of the number of mobile readers on the performance of the second method, we underline the existence of an upper bound for the precision, and we point out a quick and impressive reduction of the localization error. The rest of the paper is organized as follows. First we discuss related work in Section 2. Then we explain the basic localization method and the improved localization method with mobile readers in Section 3. Simulation methodology and results are discussed in Section 4. Finally, Section 5 concludes the paper.
2 Related Work Localization is often considered as a widely studied domain. However, few methods have been proposed for RFIDs. In fact, this area has specific constraints and requirements. Contrary to localization in Mobile Ad-hoc NETworks (MANETs) or in Wireless Sensor Networks (WSNs) for which a lot of algorithms have been conceived, a RFID system is centralized because the computation capabilities of RFID tags are very limited. Besides they are composed of tens of thousands of tags that need to be treated quasi simultaneously. Moreover, they are usually deployed in indoor environments and their signal is harshly impaired. For example, UHF tags’ radio waves do not bounce off metal and have difficulties to penetrate water. The most famous indoor localization sensing method is called LANDMARC (LocAtioN iDentification based on dynaMic Active Rfid Calibration) [2]. It only
114
M. Bouet and G. Pujolle
localizes active RFID. The system is calibrated with the help of reference tags (additional tags that are fixed and whose positions are known by the system): a map including the Received Signal Strength (RSS) of each reader is built. Then, the system has to retrieve the RSS information from each tag to the readers and checks the map to find out its estimated position. Another well-known RFID localization system is SpotON [3]. It is also based on RSS measurements and uses them to estimate the distance between readers and tags. A central server aggregates the data and performs a trilateration to obtain the position of the tags. In [4], the authors also estimate the distance between tags and readers. However, this estimation is done through the Time Difference Of Arrival (TDOA) technique: the system measures the time-of-flight and deduces the distance according to the frequency and the inter-delay. This scheme is designed for fixed passive SAW RFID tags. Finally, in [5] the authors propose a 3-D localization scheme. It is founded on the assumption that readers have numerous power levels and on the deployment of reference tags. The read range of each reader is increased or decreased until the tag is detected. Then, thanks to the reference tags, an upper and a lower bound are obtained. The localization is done by mixing the bounds of all the readers and by applying a time-costly computation on the obtained area. Distance estimation through RSS, TOA or AOA is often very complicated in indoor environments because of signal absorption, indirect path, and interferences. These techniques can lead to large errors and require specific and thus expensive equipments. Moreover, the use of reference tags considerably increases the whole cost of the system and necessitates manual installation. Our localization method is based on very simple principles in order to be cost-effective, robust in harsh environments, and fast enough to be scalable when thousands of items need to be treated simultaneously. Indeed, we consider readers with basic capabilities, we do not use any additional equipment, and we localize tags using only connectivity information, no distance estimation is performed. General indoor localization systems have also been studied for a long time. The three more famous are Cricket [6], Active Bat [7], and Active Badge [8]. In the last system, Active Badges transmit unique infra-red signals every 10 seconds. When they pass close to a reader, they are detected. The position of the badge corresponds to the one of the reader that detected it, and the precision is the size of the cell. In Active Bat, ultrasonic receivers (or sensors) are placed on the ceiling. The system measures the time-of-flight from the node to each receiver and applies a classic trilateration. Finally, Cricket is also based on TDOA measurements but the difference is that the sensors send their coordinates to the node and it is the node that performs the trilateration to estimate its position. Several location methods for geographic routing and security mechanisms have also been proposed for MANETs and WSNs. The vast majority of them measures inter-node distance through the RSS, TDOA, or Angle of Arrival (AOA) technique. The others are based on hop count or inclusive and exclusive constraints. The readers are referred to [9] for more details. As explained earlier, those approaches address different problems than the one treated in this article but they offer a good comprehension and a solid basis for our approach. This also goes for the numerous methods that use reference RFID tags to localize mobile robots.
3-D Localization Schemes of RFID Tags with Static and Mobile Readers
115
3 Our Algorithm 3.1 System Setup First of all, we place RFID readers on the floor and ceiling of a room, a warehouse, or a container. These are modelized by a hexahedron whose length, width, and height are L, W, and H respectively as shown in Fig. 1. The readers are spaced from each other according to a certain gap S. The exact position of each reader is known by the system. Furthermore, they are supposed to be as basic as possible, that is, they have no different power levels, no directional antenna, no multiple antennas, and no synchronization. They can also have different read ranges. For easier comprehension, we consider they all have the same capacities and thus the same read range R, and we assume the signal transmission between readers and tags forms a sphere. Both active and passive tags can be located with this system.
Fig. 1. Our model
3.2 Basic Position Estimation This first method can locate both static and mobile tags and is based on the architecture presented in Section 3.1. The localization of tags only requires connectivity information: which readers are able to detect a given tag and which cannot. No distance estimation is performed. A mean position is calculated for each combination of intersection of readers as shown in Fig. 2. These mean positions correspond to the barycenter (also known as the center of gravity or the center of mass) of the different volumes formed by the intersection of the readers’ detection areas. Tags’ positions are estimated as follows. First, we define an error objective function δ i (x, y, z ) for each combination of readers: nj
δ i ( x, y , z ) = ∑ j =1
(x − x ) + (y − y ) + (z − z ) 2
j
2
j
2
j
.
(1)
116
M. Bouet and G. Pujolle
Fig. 2. A 2 dimensional intersection of readers
Where n j is the number of readers that form the combination,
( x, y , z )
are the
unknown coordinates of the barycenter (that will be the estimated position), and x j , y j , z j the coordinates of the reader j .
(
)
The error objective function is defined as the sum of the distance between the tag whose position is unknown and every reader able to read it. Then, as the number of readers on the floor is equal to the one on the ceiling, we can easily deduce if the tag is close to the floor, in the middle zone, or close to the ceiling. Indeed, if the tag is near the floor, more readers on the floor than on the ceiling will be able to read it. In that case, we can add extra information to the error objective function in equation (2). The same is done if more readers on the ceiling than on the floor are activated in equation (3). Nothing is done if the quantities are equal.
δ i ( x, y , z ) = δ i ( x , y , z ) +
(z − z
floor
)
δ i ( x, y , z ) = δ i ( x, y , z ) +
(z − z
ceiling
)
2
2
,
(2)
.
(3)
Finally, we use a semi-infinitely constrained multivariable nonlinear method to find the minimum of the error objective function presented in equation (1). It takes as parameter non linear functions, linear inequalities (the difference between the maximum read range R and the distance reader-unknown estimated position), and lower and upper bounds (the dimensions of the hexahedron). This well-known algorithm uses cubic and quadratic interpolation techniques to estimate peak values in the semi-infinite constraints. The error objective function has been defined so that its minimum corresponds to the barycenter of the volume: the calculated point will minimize the sum of the distances with all the readers plus the distance with the floor or the ceiling. The problem is stated as follows:
3-D Localization Schemes of RFID Tags with Static and Mobile Readers
117
min δ i (x, y, z ) subject to
( x, y , z )
⎧0 ≤ x ≤ L ⎪0 ≤ y ≤ W ⎪ ⎪0 ≤ z ≤ H ⎪ ⎨ ( x − x )2 + ( y − y )2 + ( z − z )2 − R ≤ 0 1 1 1 ⎪ ⎪... ⎪ ⎪ x − xn 2 + y − y n 2 + z − z n 2 − R ≤ 0 j j j ⎩
(
(
) (
Where (x1 , y1 , z1 ) , …, x n j , y n j , z n j
) (
(4)
)
) are the coordinates of the readers that formed
the volume. It is obvious that if the result for a given combination has already been computed, it is not necessary to recompute it. Consequently, this localization method can require a few calculations at the beginning but will be very fast when all the cases are treated. Actually, a solution would be to calibrate the room at the start, i.e. compute the corresponding mean position of every combination of reader. The localization would then be very fast: check the built map and retrieve the tag’s position. This process can be easily applied both on static and mobile tags since only connectivity information is used. 3.3 Position Estimation Enhanced by Mobile Readers In realistic pervasive environments, RFID readers can be mobile. We propose to use this diversity to improve our localization scheme. We lean this method on the first one: the room is equipped in the same way and the positions are estimated through the same process if no mobile reader is present. The mobile readers do not need to be complex or expensive since, once again, we deduce connectivity information from their location and their maximum read range. Their positions are known by the system. The interaction between the static reader structure and the mobile readers is shown in Fig. 3.
Fig. 3. A 2 dimensional intersection of static and mobile readers
118
M. Bouet and G. Pujolle
Consequently, the equation (4) becomes:
min δ i ( x, y, z ) subject to
(x, y , z )
⎧0 ≤ x ≤ L ⎪0 ≤ y ≤ W ⎪ ⎪0 ≤ z ≤ H ⎪ ⎪ ⎪ 2 2 2 ⎨ (x − x1 ) + ( y − y1 ) + ( z − z1 ) − R ≤ 0 ⎪ ⎪... ⎪ 2 2 2 ⎪ x − xn j + y − y n j + z − z n j − R ≤ 0 ⎪ ⎪ x − x mobile 2 + y − y mobile 2 + z − z mobile k k k ⎩
(
) (
(
(
) (
) (
Where x mobilek , y mobilek , z mobilek
)
) (
)
(5)
)
2
−R≤0
are the coordinates of the mobile reader that
detected the tag. Each time a mobile reader performs the reading of a tag, an inclusive constraint is added. Obviously, if the tag is static, this scheme can be easily applied and the zone is reduced quickly or not depending on the number of mobile readers. If the tag is moving slowly, it can also be localized with this variant but it is necessary to put timestamp on the constraints defined by the mobile readers and to remove the oldest ones. If the tag is moving quickly, the first localization method has to be applied.
4 Simulation 4.1 Simulation Methodology and Settings We have run extensive simulations in order to study the accuracy of our methods. The semi-infinitely constrained multivariable nonlinear algorithm has been implemented in several mathematic programs. We chose the one in the Optimization Toolbox available in Matlab [10]. We have defined different error measurements so as to evaluate the accuracy: • The mean error in 2 dimensions:
ε 2D =
(xreal − xestimated )2 + ( y real − yestimated )2
(6)
,
And its standard deviation σ 2 D . • The mean error in 3 dimensions:
ε 3D =
(xreal − xestimated )2 + ( y real − yestimated )2 + (z real − z estimated )2
And its standard deviation σ 3 D .
,
(7)
3-D Localization Schemes of RFID Tags with Static and Mobile Readers
119
• The mean error regarding the estimated height:
εh =
(z real − z estimated )2
,
(8)
And its standard deviation σ h . We dimensioned the hexahedron as follows:
L = 100m W = 100m . H = 3m
(9)
Where L, W, and H are the length, the width, and the height respectively. These values have voluntarily been chosen bigger than the dimensions of a typical room so as to take into account all the possible shapes. We choose realistic values for the read range of the static and mobile RFID readers:
R = 5m .
(10)
Finally, we implemented the Random WayPoint Mobility Model (RWP) [11] for the mobile readers. This model is used in many works since it is relevant for simulation of people displacements. The mobile readers randomly pick a destination in the hexahedron, go to it with a constant speed, when they reach it they pause, and then start the same process. It would be better if the mobile readers were not all at the same height but for an easier analysis of the performances, we chose to place them at 1 meter from the floor and to make them move with the speed of someone who is walking (5 kilometers/hour). Since the related works presented in Section 2 do not provide enough accurate hypotheses or use different configurations and different equipments (such as reference tags) from our model, we are not able to propose any comparison. 4.2 Results Fig. 4 shows the mean error in two dimensions (on x and y coordinates) after 300 seconds for different quantities of mobile readers. The accuracy of our basic localization scheme is below 1 meter when the static readers are spaced until 6 meters. A local peak is observed at 4.5 meters. This is due to the shape of the intersections of readers’ areas. Indeed, this value is just below the one of the radius. The readers on the floor and ceiling thus form very irregular zones, hence a higher error. This data constitutes an upper bound for the second localization method. After 300 seconds, with only one mobile reader the 2-D error is reduced until 40 centimeters compared to the static results. In the same time, if 5 mobile readers are used, the estimated error falls between 18 and 57 centimeters. Furthermore, the use of 10 or 20 mobile readers almost cancels the impact of the inter-reader spacing since after 300 seconds the error is bounded between 17 and 23 centimeters.
120
M. Bouet and G. Pujolle
1.4
0 mobile reader 1 mobile reader 5 mobile readers 10 mobile readers 20 mobile readers
1.2
Accuracy (m)
1 0.8 0.6 0.4 0.2 0 2
2.5
3
3.5 4 4.5 5 Inter-Reader Spacing (m)
5.5
6
6.5
6
6.5
Fig. 4. 2-D accuracy after 300 seconds 1.6
0 mobile reader 1 mobile reader 5 mobile readers 10 mobile readers 20 mobile readers
Accuracy (m)
1.4 1.2 1 0.8 0.6 0.4 2
2.5
3
3.5 4 4.5 5 Inter-Reader Spacing (m)
5.5
Fig. 5. 3-D accuracy after 300 seconds
Fig. 6 shows the mean error on the estimated height. It is limited between 39 and 61 centimeters. When the readers are densely deployed, the shapes of the intersections formed by the readers’ areas are not as regular as the ones when the inter-spacing reader is around 3 or 3.5 meters. The same phenomenon occurs in the cases where they are far one another. Consequently, the accuracy is better around 3 – 3.5 meters. The results for the second localization scheme are roughly the same. However, we can notice an improvement of the accuracy when mobile readers are used with static readers spaced of at least 4 meters. The impact of the mobile readers could be hugely increased if they were not all placed at the same height and if their read range were not all equal. For easier comparison between the different scenarios we chose identical mobile readers. Fig. 5 shows the 3-D mean error. The curbs have almost the same shapes than the ones for the 2-D results. This can be explained by the fact that our second localization method has only a light impact on the improvement of the height accuracy. Therefore,
3-D Localization Schemes of RFID Tags with Static and Mobile Readers
0.65
0 mobile reader 1 mobile reader 5 mobile readers 10 mobile readers 20 mobile readers
0.6
Accuracy (m)
121
0.55 0.5 0.45 0.4 0.35 2
2.5
3
3.5 4 4.5 5 Inter-Reader Spacing (m)
5.5
6
6.5
Fig. 6. Accuracy on height after 300 seconds
the evolution of the 3-D accuracy tends to follow the one in 2-D. The error is bounded between 57 and 159 centimeters for the first localization method. When 20 mobile readers are used, after 300 seconds the error falls between 48 and 61 centimeters (until 62% of reduction). The evolution of the accuracy through time is illustrated in Fig. 7. The impact of the mobile readers is visible since the beginning. After 30 seconds, the precision has been greatly increased and it goes on over time. Nevertheless, we can notice that improvement of the accuracy tends to decrease since the difference between the results at 240 seconds and at 300 seconds is only a few centimeters. Finally, in Fig. 8 we compare the impact of the number of mobile readers on the accuracy. Since for the first localization scheme there is no mobile reader, the error remains unchanged through time. In addition, two interesting remarks can be done. First, it is not necessary to use a lot of mobile readers. Indeed, the difference between 1.4
0s 1s 30 s 60 s 120 s 180 s 240 s 300 s
1.2
Accuracy (m)
1 0.8 0.6 0.4 0.2 0 2
2.5
3
3.5 4 4.5 5 Inter-Reader Spacing (m)
5.5
6
6.5
Fig. 7. Evolution of the 2-D accuracy with 10 mobile readers
122
M. Bouet and G. Pujolle
0.6
Accuracy (m)
0.5 0.4 0.3 0.2 0 mobile reader 1 mobile reader 5 mobile readers 10 mobile readers 20 mobile readers
0.1 0 0
100
200
300
400 500 Time (s)
600
700
800
900
Fig. 8. Evolution of the 2-D accuracy for an inter-spacing of 5 meters
the results for 5 mobile readers and the ones for 10 and 20 is not as important as expected. Secondly, as noticed in Fig. 7, the mean error in each scenario tends to rapidly converge over time. A residual error remains because of the inter-spacing between the static readers. To sum up, the results for the first localization scheme constitute an upper bound for the mean error of the second scheme. The use of mobile readers improves the accuracy. It depends on the number of mobile readers, the space between the static readers, and the execution time. For example, when inter-space is 5.5 meters and when 10 mobile readers are involved, the 3-D error falls from 92 to 59 centimeters (a reduction of 36%) after 300 seconds. Moreover, the results show that the error reduction converges quickly over time and that it does not require a lot of mobile readers.
5 Conclusion We have proposed a 3 dimensional localization method for static and mobile RFID tags and we have shown how to use diversity of pervasive environments, that is to say mobile RFID readers, to improve the positioning accuracy. We have chosen very simple properties so as to obtain a robust, fast, cost-efficient, and thus scalable method. Static RFID readers are placed on the floor and ceiling of a room. Tags’ positions are estimated by using only connectivity information in a semi-infinitely constrained multivariable nonlinear method. We then derive this scheme: mobile readers are used to refine the inclusive constraints and thus to improve the accuracy of static tags’ estimated location. Our results show that the precision of the first scheme is very satisfactory compared to the requirements. Furthermore, the use of mobile readers hugely reduces the localization error. The analysis also shows that it is not necessary to involve a lot of mobile readers and that the error reduction rapidly converges making the second localization scheme not only very quick but also very precise.
3-D Localization Schemes of RFID Tags with Static and Mobile Readers
123
References 1. Want, R.: An introduction to RFID technology. IEEE Pervasive Computing 5(1), 25–33 (2006) 2. Ni, L.M., Liu, Y., Lau, Y.C., Patil, A.P.: LANDMARC: indoor location sensing using active RFID. In: First IEEE International Conference on Pervasive Computing and Communications, pp. 407–415 (2003) 3. Hightower, J., Borriello, G., Want, R.: SpotON: An Indoor 3D Location Sensing Technology Based on RF Signal Strength. UW CSE Technical Report (2000) 4. Bechteler, T.F., Yenigun, H.: 2-D localization and identification based on SAW ID-tags at 2.5 GHz. IEEE Transactions on Microwave Theory and Techniques 51(5), 1584–1590 (2003) 5. Wang, C., Wu, H., Tzeng, N.-F.: RFID-Based 3-D Positioning Schemes. In: 26th IEEE International Conference on Computer Communications (INFOCOM), pp. 1235–1243 (2007) 6. Priyantha, N.B., Chakraborty, A., Balakrishnan, H.: The cricket location-support system. In: 6th Annual ACM International Conference on Mobile Computing and Networking (MOBICOM), pp. 32–43 (2000) 7. Ward, A., Jones, A., Hopper, A.: A New Location Technique for the Active Office. IEEE Personal Communications 4(5), 42–47 (1997) 8. Want, R., Hopper, A., Falcao, V., Gibbons, J.: The active badge location system. ACM Transactions on Information Systems 10(1), 91–102 (1992) 9. Gustafsson, F., Gunnarsson, F.: Mobile positioning using wireless networks: possibilities and fundamental limitations based on available wireless network measurements. IEEE Signal Processing Magazine 22(4), 41–53 (2005) 10. Matlab, http://www.mathworks.com/ 11. Hyytia, E., Lassila, P., Virtamo, J.: Spatial node distribution of the random waypoint mobility model with applications. IEEE Transactions on Mobile Computing 5(6), 680–694 (2006)
Performance Evaluation and Enhancement of Surface Coverage Relay Protocol Antoine Gallais and Jean Carle IRCICA/LIFL, Univ. Lille 1, INRIA Futurs, France {antoine.gallais,jean.carle}@lifl.fr http://www.lifl.fr/POPS
Abstract. Area coverage protocols aim at turning off redundant sensor nodes while ensuring full coverage of the area by the remaining active nodes. Connectivity of the active nodes subset must also be provided so that monitoring reports can reach the sink stations. Existing solutions hardly address these two issues as a unified one and very few are robust to non ideal physical conditions. In this paper, we propose a deep analysis and some enhancements of a localized algorithm for area coverage, based on Surface Coverage Relays (SCR) and able to build connected active nodes sets that fully cover the area. We first enhanced the critical phase of our protocol (the relay selection) and show that the number of active nodes can be drastically reduced. We then raise the issue of the robustness of the protocol once a realistic physical layer is simulated. Our algorithm proved itself to be an interesting solution as it remained able to still ensure high coverage level under realistic physical layer conditions. We also added the possibility to finely tune the overall proportion of active nodes through a new parameter used during local relay selection phases. Keywords: Wireless sensor networks, area coverage, configurable localized algorithm, realistic physical layer.
1 Introduction Wireless sensor networks are made up of hundreds of devices in which a battery, a sensing module and a wireless communication device are embedded. They are deployed over hostile or remote environments, in which they become one-use-only since their batteries cannot easily be replaced or refilled. Energy consumption is therefore balanced by taking advantage of the redundancy induced by the random deployment of nodes; some nodes are active while others are in sleep mode, thus using less energy. Such a dynamic topology should not impact the monitoring activity. The ensuing issue consists in the active nodes to fully cover the area. Furthermore, as monitoring reports should at least reach the sink stations, the set of active nodes should be connected. This is also known as the connected area coverage problem. This work focuses on a localized algorithm, considering first that the availability of a deciding central entity is a strong assumption and also willing to show that such an organization can be obtained from networks without any infrastructure. We proposed in [1] a fully localized solution to the connected sensor area coverage issue. Both a neighbor A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 124–134, 2008. c IFIP International Federation for Information Processing 2008
Performance Evaluation and Enhancement of SCR Protocol
125
detection phase and a relay selection phase are required to complete the activity decision process. In this article, we deeply study the relay selection phase, made from a new method described here. This latest solution allows us to strongly reduce the proportions of active nodes while not inducing any communication overhead nor any new information in control messages. Most of existing area coverage solutions rely on an ideal communication model (each node has a transmission threshold, beyond which no message may be directly sent). The radio channel randomness is hardly considered. We studied the robustness of our SCR protocol with such a new assumption. After showing that it was slightly impacted, we introduce a new parameter during the relay selection phase in order to vary the size of the relay set thus finely tuning the proportions of active nodes.
2 Preliminaries We assume that randomly deployed sensors are time-synchronized, static and positionaware. Several solutions have been studied to achieve these goals [2]. The location of a sensor node is used as its unique identifier. We also consider that sensors are able to determine whether an area is covered by a set of sensors or not. Various coverage evaluation schemes have already been used for that purpose [3,4]. 2.1 Communication and Sensing Models A wireless network is modeled by a graph G = (V, E), V being the set of vertices and E ⊆ V 2 the set of edges that the available communications. An edge between two vertices u and v exists if u is physically able to send a message to v. The neighborhood set of u, noted as N(u), is defined as: N(u) = {v ∈ V | v = u ∧ (u, v) ∈ E}.
(1)
Each sensor has a communication range Rc and a sensing range Rs . We denote by S(u) the area covered by a node u and S(A) the area covered by a set of nodes A = {a1 , a2 , . . . , an } such that:
i=|A|
S(A) =
S(ai ).
(2)
i=1
2.2 Radio Channel Model Given a graph G = (V, E), a communication range Rc and the Euclidean distance between nodes u and v dist(u, v), the unit disk graph model defines the set of edges E as: E = {(u, v) ∈ V 2 | u = v ∧ dist(u, v) ≤ Rc },
(3)
Yet, in a practical context, transmission quality varies over the time and a node u may be able to communicate with node v at time t, but not at time t+1. Each communication
126
A. Gallais and J. Carle
link has a probability to exist which is influenced by a lot of factors such as the emitting power or the distance between the emitter and the receiver. Many models exist and some generators have already been proposed to allow model generation from parameters such as the kind of material used or the localization of the sensors themselves (see [5] for instance). To replace the unit disk graph, we opted for the lognormal shadowing model thus transforming G into a weighted graph, where the weight of each edge (u, v) ∈ E is equal to the probability of correct reception p(dist(u, v)) for the two nodes u and v. An approximated function P(x) is described by Kuruvila et al. [6]: ⎧ ⎪ 1− ⎪ ⎪ ⎪ ⎪ ⎨ P(x) =
⎪ ⎪ ⎪ ⎪ ⎪ ⎩
( Rxc )2α 2
if 0 < x ≤ Rc ,
( 2RRcc−x )2α 2
if Rc < x ≤ 2 × Rc ,
0
otherwise,
(4)
α being a factor that highly depends on the environment and x being the considered distance. This function assumes that the probability of correct reception for the range Rc is always equal to P(Rc ) = 0.5. Fig. 1 illustrates this function for α = 2, which is frequently encountered in the literature. Being aware of the approximation that is made here, we are not pretending to use a highly realistic model. Yet, we believe that considering radio channel randomness during protocol analysis and simulation constitutes a first step towards facilitating further developments on real material.
3 Related Work Many papers have already addressed the problem of connected area coverage in wireless sensor networks once sensors are allowed to self-schedule their activity. Some have assumed a given topology to start the study, such as a grid for instance [7]. In [8], authors study some deployment patterns in order to ensure both coverage and connectivity once wireless sensors are deployed over a sensing field. Meanwhile, the deployment might be random thus forcing sensor devices to make decisions based on non predictable information. Tian and Georganas [9] have proposed a node scheduling scheme in which time synchronized and randomly deployed sensor devices regularly detect their neighbors and listen for retreat messages for a given timeout. A node can get passive if remaining neighbors fully cover its area. To ensure connectivity of the set of active nodes, a strong assumption is made regarding the ratio between sensing and communication radii (Rs ≤ Rc ). Such an assumption had already been used and proved as preserving network connectivity as long as area coverage was provided [3,4]. Recently, a randomized algorithm was proposed in [10]. Based on a Markov model, this algorithm allows each node to probabilistically turn off while preserving both coverage and connectivity. Yet, the need for a new analysis when considering non homogeneous settings might be an obstacle in real deployments where neighbor information is required to ensure coherent node behavior once the neighborhood is modified for any reason (mobility, failure).
Performance Evaluation and Enhancement of SCR Protocol
127
Unit disk graph 1
Lognormal shadowing
Probability of correct reception
0.8
0.6
0.4
0.2
0
0
0.5
1 Distance
1.5
2
Fig. 1. The two considered physical models (Rc = 1, α = 2)
4 Base of the SCR-CADS Protocol While coverage might not be a strict requirement for wireless sensor networks, connectivity among the set of monitoring nodes is crucial as every collected piece of information should be able to reach one of the sink stations. This is why we propose a new look at our SCR-CADS protocol which has been proved to ensure both connectivity and coverage in an original manner [1]. We show how this algorithm could be configured and especially what its resistance to new communication models is. Our solution consists in three consecutive phases (a neighbor discovery mechanism, a relay selection phase and a decision making process), each being detailed in this section. Regular neighbor discovery. A classical neighbor discovery phase is first required. At the beginning of each round, a hello message is sent by each node. It contains information such as its geographical position and a priority, assumed to be unique among the set of nodes. Relay selection. When considering node coverage, Jacquet et al. [11] have defined the notion of multipoint relay (MPR). Each node selects a subset of its neighborhood; the set of relays. For any given node u, this set, denoted as M P R(u), enables multi-hop communications with every 2-hop neighbors: MPR : V → V u −→ M P R(u) ∀u, ∃ MPR | N (MPR(u))\N (u) = N (N (u))\N (u),
(5)
V being the whole set of nodes. We can observe that M P R(u) = N (u) satisfies the relation. Yet, trying to have a MPR set as little as possible leads to diminishing the size of the dominating set, denoted as MPR-DS. Each node must send its own relay set to its whole neighborhood so that a simple decision rule can be made. Authors have proved that some rules were providing MPR-DS that were connected.
128
A. Gallais and J. Carle
As we aim at providing area coverage by connected sets, we have extended this solution to the problem of area coverage in wireless sensor networks. The relay selection phase has been modified. Each node computes its own relay set; this set must cover as large an area as the whole set of neighbors. This set is called Surface Coverage Relay (SCR) set. We defined a SCR function for this purpose: SCR : V → V u −→ SCR(u) SCR(u) standing for the subset of N (u) for which the property holds: ∀u, ∃ SCR | S(SCR(u))\S(u) = S(N (u))\S(u).
(6)
Each node must be able to compute its SCR set. Finding the subset of minimal size is equivalent to the minimum set cover problem, which is NP-complete [12]. This is why heuristics have to be designed in order to compute SCR sets that are as optimal as possible considering the number of nodes involved. Initially, a heuristic based on centroid computation was used [1]. In this article, we propose a new heuristic to compute SCR sets. Each node starts with an empty SCR set. Then, step by step, a neighbor is added to the SCR set if and only if it covers a portion of area yet uncovered by the SCR set. To get interesting subsets, at each step, the neighbor that brings the more new coverage should be added. Ideally, the neighbors should therefore be ordered according to their coverage potential regarding previously observed nodes. The first heuristic was based on a simple idea; at each step, we try to find the node that should bring the more coverage. To avoid heavy computation, we opted for the one whose location is the furthest from the center of mass of already selected relays (every relay having the same mass). It turned out that still large sets were computed. We now propose a new heuristic for selecting the relays, based on a simple intuition; the furthest neighbor is the one that covers the largest portion of area outside the sensing zone of the selecting sensor. Neighbors are therefore ordered according to their distance to the selecting node. The furthest is added to SCR set, then the second furthest is evaluated and so on. Note that for any heuristic, considered neighbors have to be distinguished in case of equality when facing the choice criterion. Which node is considered first is determined with a simple random function. Once SCR sets have been computed, each node has to decide its own activity status. We now explain the decision rule used for this purpose. Making activity decision. In the MPR-DS protocol [11], nodes apply a simple rule to decide their status (dominant or not). This rule is based on a key, assumed to be unique among the set of nodes. Definition 1. Every node u whose key is the lowest among the neighborhood or which belongs to the relay set of the neighbor with the lowest key must be active. As already shown in [11], if relay sets are computed so that the property 5 holds, then the induced set of active nodes is connected. We have already proved that using this rule
Performance Evaluation and Enhancement of SCR Protocol
129
with SCR sets was providing a set covering as large an area as the whole set of nodes. It is also obvious that SCR sets are MPR sets once Rs = Rc since 2-hop neighbors are necessarily located within one or several sensing areas of the 1-hop neighbors. This means that the covering set is also connected once we every activity decision has been made. Now that we have presented SCR-CADS and a new heuristic to compute SCR sets, we are evaluating this protocol under several communication models. Indeed, it has already been largely spread that protocols evaluated under ideal communication assumptions (i.e. the unit disk model) were more prone to failures or to dysfunction once used in practice (see [13] for some instances among area coverage protocols). The remaining of this article is therefore focused on the analysis of SCR-CADS protocol and its performances with a realistic physical layer for communications.
5 Performance Evaluation We have simulated only homogeneous sensor networks. Experimental results were obtained from randomly generated connected networks with a discrete event simulator. Nodes are deployed over a 50 × 50 rectangle area, considering a Poisson point process of intensity λ > 0. We define the density d of the network to be the average number of nodes in a given communication area: we thus have d = λ × πRc2 . Both the communication range (Rc ) and the sensing radius (Rs ) are fixed at 10. Simulations were launched over densities varying from 20 to 90 nodes per communication zone, with a step of 10. For each density, the number of performed iterations is adjusted so that 95% of the results are in a sufficiently tight confidence interval. Each iteration consists of rounds. Each round starts with the neighbor discovery phase, followed by the SCR sets computation and the decision making process. A sensing area is modeled as a disk while the communciation model varies (unit disk model or a realistic physical layer). When nodes have to compute the area covered by a given neighbor, they use a coverage evaluation scheme based on a disks intersections theorem, already applied in [3,4]. A round ends with the sensing period which involves every node that has decided to be active. We essentially measure the percentage of active nodes and the percentage of preserved coverage of original area. 5.1 Under Ideal Communication Assumptions We give complementary results about the SCR protocol when simulated with ideal communication assumptions. By ideal, we mean that no message can ever be lost, neither due to message collisions nor to the communication environment itself. Area coverage and connectivity. As already mentioned, the algorithm has been proved as preserving both area coverage and connectivity of the set of active nodes. We therefore focus on the size of the active nodes sets in order to evaluate the impact of the heuristic used during the relay selection phase. Size of SCR sets. We have observed the average size of the SCR sets in order to compare the performances of the original heuristic with the ones the latest solution, based on distances. The size of the relay sets is a matter of prime importance first
130
A. Gallais and J. Carle
35
80 Distance−based heuristic Centroid−based heuristic
Distance−based heuristic Centroid−based heuristic 70
60 25
Active nodes (%)
Average size of SCR sets
30
20
15
50
40
30 10
20
5
10 20
30
40
50 60 Network density
70
80
(a) Diminishing the size of relay sets.
90
20
30
40
50 60 Network density
70
80
90
(b) Reducing the proportion of active nodes.
Fig. 2. Main advantages of the distance-based heuristic for relay selection
because the number of active nodes is strongly linked to these and second because they determine the communication overhead induced by the protocol. Concerning the first point,every node whose key is the lowest among its neighborhood is necessarily active. This number does not vary as long as the network density remains identical. Yet, the larger the relay sets, the higher the probability for a node to belong to the SCR set of the neighbor with the lowest key and so to become active. Concerning the second point, as relay sets must be sent to every 1-hop neighbor, the less large they are, the better for the communication overhead and thus the energy consumption. We could observed that the distance-based heuristic was actually performing better than the centroid-based one. As shown on Fig. 2(a), the average size of the SCR sets generated by the distance-based heuristic varies from roughly 8 neighbors to 11, respectively for densities 20 and 90, while the centroid-based method leads to 11 neighbors selected as relays at density 20 and nearly 24 at density 90, that is more than twice the size obtained by our distance-based heuristic. As already mentioned, the size of the relay sets straightly impacts the number of active nodes. As our new heuristic allows us to considerably reduce this size, we are now looking to what extent this improved relay selection impacts the average number of active nodes that are involved at every round. Active nodes. Figure 2(b) shows the average number of active nodes versus the network density. As expected, the percentage of active nodes decreases as the network density increases; the more nodes there are, the less the proportion of required sensors to achieve full coverage of the area. Interestingly, we can observe that the centroid-based heuristic leads to 24.7% of active nodes at density 90 while the distance-based method lowers this result to only 13% for the same density. We therefore obtained very interesting results with this new method. 5.2 Under Realistic Physical Layer Assumptions We now try to evaluate the SCR-CADS protocol with a realistic communication model. The goal for such an investigation is twofold. First, we aimed at testing the robustness
Performance Evaluation and Enhancement of SCR Protocol
131
of this algorithm and then some potential enhancements were to be implemented and also evaluated. Introducing a more realistic physical layer leads to more channel randomness, that is communication links that are probabilistic; two nodes can communicate with a given probability depending on the distance that separates them. Some area coverage protocols have already been studied under this new assumption and we aim at evaluating SCR protocol also. In our algorithm, once the relay sets have been computed, they are sent so that every node can make its activity decision from the rule previously described in 4. The so computed set of active nodes is connected and covers as large an area as the whole set of nodes once the unit disk model is used. When a realistic physical layer is used, we could observed some changes. Area coverage. Figure 3(a) shows the average percentage of covered area by the sets of active nodes computed by our SCR protocol. We can observe that while area coverage was fully preserved with an ideal communication model, this property does no longer holds under our new assumptions. Area coverage goes from a bit more than 95% at density 30 to less than 90% at density 80. Yet, this loss of coverage is not as important as we could have expected, and especially not as dramatic as the ones we could already observed with other protocols [13]. This shows an inherent robustness for our SCR protocol. Let us detail the reasons why the impact is that low. During the neighbor discovery phase, hello messages from some of the theoretical 1-hop neighbors may not be received by a given node u. Yet, this actually increases the probability for u to evaluate its own key as being the lowest among its neighbors. Then, the less neighbors are discovered, the higher the probability for u to get active, the worst case being no hello message ever received and u having an empty neighbor table, thus necessarily deciding to be active. In such a case, we would have all nodes being leaf and thus active, which is not the case here as some coverage losses have still been recorded. We may now focus on the relay selection phase. Once relays have been selected, SCR sets are sent to the neighbors. If some of these messages are never received by a given node u, then it results in some nodes being aware of only a subset of its real SCR selectors. If one of these potentially missed selectors is the neighbor with the 25 Distance−based heuristic Centroid−based heuristic 100 20
Active nodes (%)
Area coverage (%)
95
90
85
Distance−based heuristic Centroid−based heuristic
15
10
80 5 75
70
0 30
40
50
60 Network density
70
(a) Coverage loss.
80
90
30
40
50
60 Network density
70
80
90
(b) Reduction of active nodes (%).
Fig. 3. SCR-CADS algorithm and a realistic physical layer (LNS, see formula 4, with α = 2)
132
A. Gallais and J. Carle
lowest key so far, such a wrong reception leads to u not knowing it has been selected by its neighbor with the lowest key, which would have meant it had to be active. In such a case, u decides to be passive and therefore jeopardizes area coverage. This is why some coverage losses are observed on Fig. 3(a). However, note that if a relay message is received from a yet unknown node whose key is the lowest among already collected ones, then the receiving node must consider this message as a hello message. It must also check if it has been selected as a relay by this node. This demonstrates the inherent robustness of SCR protocol since only coverage losses may happen only in case the relay message of the neighbor with the lowest key (and whose previous hello message was received) was never received. This means that only this message is crucial while others can only bring some new information that could help nodes make the right activity decision. Active nodes. We also observed to what extent the average percentage of active nodes was impacted by our new physical layer assumptions. Generally, when some coverage losses occur, it is either caused by a decrease of the number of active nodes or by a spatial incoherence (as many active nodes but concentrated on a given region at the expense of another one which is left uncovered). The latter case can hardly take place thanks to the homogeneity of both our deployment and our random processes used during key computation. Indeed, fig. 3(b) shows that the percentage of active nodes is largely decreased (from less than 10% at density 30 to only 2% at density 90) when the distance-based heuristic is used. Although this tremendous drop of the percentage of active nodes could lead us to think that large coverage holes have occurred, we have already observed that the impact on area coverage was minor. The SCR-CADS protocol is inherently robust and does not much suffer from loss of active nodes since the remaining ones have self-elected with a coherent local process. 5.3 Tending to More Robustness and Customization of SCR Protocol Although the impact of a realistic physical layer is not important on area coverage, we could observe that the number of active nodes was largely decreased. As already mentioned, the percentage of active nodes is very much induced by the average size of the relay sets. We are now trying to tune the relay selection made by each node in order to be able to tune the global percentage of active nodes, and also the area coverage. We therefore introduced a coverage parameter, denoted as SCR COV , which stands for the number of relays that should cover any portion of the sensing area of a neighbor currently evaluated for potential selection. Every neighbor is now added to the set of relays if and only if its sensing area is not k-covered by already selected relays, with k being SCR COV . Several definitions of k-coverage exist in the literature. Our approach is to consider a k-covered piece of area as soon as k distinct sensor devices are able to sense it. This should help us to raise the proportions of active nodes as relay sets could be made larger. By this way, the resistance to some communication anomalies should be obtained thanks to the redundancy induced in the set of monitoring nodes. Note that this solution solely requires a modified coverage evaluation scheme.
Performance Evaluation and Enhancement of SCR Protocol
133
100
30
95
25 Active nodes (%)
Area coverage (%)
35
90
85
SCR_COV=2 SCR_COV=3 SCR_COV=4
20
15
80
10
75
5
70
SCR_COV=2 SCR_COV=3 SCR_COV=4
0 30
40
50
60 Network density
70
80
90
30
40
50
60 Network density
70
80
90
(a) Increasing robustness to radio channel ran- (b) Configurable proportions of active nodes domness. with enhanced relay selection. Fig. 4. Configurability of SCR-CADS protocol (LNS, see formula 4, with α = 2)
Area coverage. The prime goal of our SCR COV parameter is to be able to better resist to message loss. Figure 4(a) shows area coverage versus network density, with SCR COV ∈ {2, 3, 4} when the distance-based heuristic is used. As long as SCR COV > 1, area coverage is at least 95%. This shows that, even in presence of a realistic radio channel, our algorithm can provide satisfying results in terms of area coverage. Our new parameter may also help us to customize the relay selection more finely. Until now, we were only using our two selection heuristics. The problem with such a method is that dynamically modifying the way a relay selection is conducted by a node would require changing the code it actually runs. Given the hardware constraints of the target devices, it would be more convenient to interact with the algorithm by the means of a simple parameter. Active nodes. We observed to what extent the SCR COV value was able to impact the proportions of active nodes. The average percentage of active nodes is shown on Fig. 4(b), for several SCR COV values. When SCR COV = 2 (which is sufficient to ensure more than 95% of covered area), we have between 17% and 4% of active nodes. This shows that our SCR COV not only deserves to be used to improve area coverage but also to finely tune the proportions of active nodes.
6 Conclusion We have enhanced our SCR-CADS protocol in order to have a more efficient relay selection that fits in today’s requirements for wireless sensor networks algorithms. We have shown that our algorithm, originally designed under ideal communication assumptions, could work properly with a realistic physical layer, maintaining a high coverage level. We then introduced a new parameter during the relay selection, thus enabling full coverage in case this would be strongly required by the application. This allows to finely tune the proportions of active nodes as we tend to a more configurable protocol. Future work will focus on characterizing connectivity under more realistic communication assumptions. We also aim at observing the impact of both synchronization and
134
A. Gallais and J. Carle
localization errors which could be induced either due to the environment or to the used algorithm itself.
Acknowledgments This work was partially supported by a grant from CPER Nord-Pas-de-Calais/FEDER TAC COM’DOM, CNRS National platform RECAP.
References 1. Carle, J., Gallais, A., Simplot-Ryl, D.: Preserving area coverage in wireless sensor networks by using surface coverage relay dominating sets. In: Proceedings of IEEE Symposium on Computers and Communications (ISCC), Cartagena, Spain, pp. 347–352 (2005) 2. R¨omer, K.: Time Synchronization and Localization in Sensor Networks. PhD thesis, ETH Zurich, Switzerland (2005) 3. Zhang, H., Hou, J.C.: Maintaining sensing coverage and connectivity in large sensor networks. Ad Hoc and Sensor Wireless Networks journal (AHSWN) 1, 89–123 (2005) 4. Xing, G., Wang, X., Zhang, Y., Lu, C., Pless, R., Gill, C.: Integrated coverage and connectivity configuration for energy conservation in sensor networks. ACM Transactions on Sensor Networks (TOSN) 1(1), 36–72 (2005) 5. Cerpa, A., Wong, J.L., Kuang, L., Potkonjak, M., Estrin, D.: Statistical model of lossy links in wireless sensor networks. In: Proceedings of International Symposium on Information Processing in Sensor Networks (IPSN) (2005) 6. Kuruvila, J., Nayak, A., Stojmenovi´c, I.: Hop count optimal position based packet routing algorithms for ad hoc wireless networks with a realistic physical layer. In: Proceedings of IEEE Mobile Ad hoc and Sensor Systems (MASS), Fort Lauderdale, FL, USA (2004) 7. Shakkottai, S., Srikant, R., Shroff, N.: Unreliable sensor grids: Coverage, connectivity and diameter. In: Proceedings of IEEE International Conference on Computer Communications (INFOCOM), San Francisco, CA, USA (2003) 8. Liu, C., Xiao, Y.: Random coverage with guaranteed connectivity: Joint scheduling for wireless sensor networks. IEEE Transactions on Parallel and Distributed Systems (TPDS) 17(6) (2006) 9. Tian, D., Georganas, N.D.: Connectivity maintenance and coverage preservation in wireless sensor networks. AdHoc Networks Journal (Elsevier Science), 744–761 (2005) 10. Yener, B., Magdon-Ismail, M., Sivrikaya, F.: Joint problem of power optimal connectivity and coverage in wireless sensor networks. Wireless Networks 13(4), 537–550 (2007) 11. Adjih, C., Jacquet, P., Viennot, L.: Computing connected dominated sets with multipoint relays. Ad Hoc and Sensor Wireless Networks journal (AHSWN) 1(3), 27–39 (2005) 12. Karp, R.M.: Reducibility among combinatorial problems. In: Miller, R.E., Thatcher, J.W. (eds.) Complexity of Computer Computations, pp. 85–103. Plenum Press, New York (1972) 13. Gallais, A., Ingelrest, F., Carle, J., Simplot-Ryl, D.: Preserving area coverage in sensor networks with a realistic physical layer. In: Proceedings of IEEE International Conference on Computer Communications (INFOCOM), Anchorage, AK, USA (short paper, 2007)
On Extending Coverage of UMTS Networks Using an Ad-Hoc Network with Weighted Fair Queueing R. El-Azouzi1 , R. El-Khoury1, A. Kobbane1,2 , and E. Sabir1,2 1
LIA/CERI, Universit´e d’Avignon, Agroparc BP 1228, Avignon, France 2 LIMIARF, Universit´e Mohammed V Rabat-Agdal, 4 Av. Ibn Battouta B.P. 1014, Maroc {rachid.elazouzi,ralph.elkhoury,abdellatif.kobbane, essaid.sabir}@univ-avignon.fr
Abstract. In this paper, we are interested in the interconnection between an ad-hoc network and UMTS system. In presence of two access technologies, new challenges arise and mobile host will have face multiple base stations or gateways with different utilizations. As a result, a user who needs to establish a voice call, prefers to be connected through UMTS and a user who needs to transmit a Best Effort traffic with high rate, prefers to be connected through ad-hoc network. The aim of that combination is to improve the coverage of cellular networks and increases the services which can be made available for mobiles. This combination also reduces transmission power for mobile hosts. Our main result is characterization of stability condition and the end-to-end throughput using the rate balance. Numerical results are given and support the results of the analysis. Finally, we perform extensive simulation and verify that the analytical results closely match the results obtained from simulations. Keywords: Interconnection, cross-layer, routing, ad-hoc, UMTS, stability.
1
Introduction
In order to meet the increasing in data and user mobility, a considered amount of effort is tunneled towards the convergence of multi-service networks of diverse technologies. Next generation wireless networks (NGWN) will be heterogeneous radio access technologies such UMTS, WiMAx, WLAN, etc, coexist. However, the NGWN will be a joint radio resource management among multiple operators of different radio resource technologies [3]. In this paper, we are interested in the planning of ad-hoc networks in providing an improved cellular coverage of UMTS cellular networks and different services can be made available for nodes. Indeed, there exist several types of traffic that require different QoS. In presence of several access technologies, new challenge arises and mobile host will
This work was partially supported by ANR WINEM No. 06TCOM05 and Maroc Telecom R&D No. 10510005458.06 PI.
A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 135–148, 2008. c IFIP International Federation for Information Processing 2008
136
R. El-Azouzi et al.
face multiple base stations or gateway with different utilization. This opens the possibility of using the most appropriate multiple access types for each type of call. For example, for a network with a low bandwidth and high reliability access as UMTS, it is preferable to be used by a voice call. As a result, a user prefers to be connected through UMTS network which can offer higher reliability for particular services, even at a high cost. A multi-hop wireless ad hoc network is a collection of nodes that communicate with each other without any established infrastructure or centralized control. Many factors interact with each other to make the communication possible like routing protocol and channel access. Recently, wireless ad-hoc networks have been envisioned of commercial applications such as providing Internet connectivity for nodes that are not in transmission range of a wireless access point. Cellular network and ad-hoc networks should be considered as complementary systems. Hence, it is possible to use ad-hoc networks as an extension of the cellular networks like UMTS. Thus it is possible for a multihomed node to use different access technologies at different time to assure a permanent connectivity. As a result, potential benefits can be envisaged for UMTS cellular as : extend the cellular coverage, reduce the power transmission which implies the reduction of intra-cell and extra-cell interference. In the ad-hoc networks, new services can be made available as VoIP and streaming video. In this work we are interested in the interconnection between a MANET and a 3G system. In order to be able to connect to more than one base station (or network), a terminal should have at least two network cards. In the ad-hoc network, we consider the random access mechanism for the wireless channel where the nodes having packets to transmit in their transmit buffers attempt transmissions by delaying the transmission by a random amount of time. This mechanism acts as a way to avoid collisions of transmissions of nearby nodes in the case where nodes can not sense the channel while transmitting (hence, are not aware of other ongoing transmissions). We assume that time is slotted into fixed length time frames. In any slot, a node having a packet to be transmitted to one of its neighboring devices decides with some fixed (possibly node dependent) probability in favor of a transmission attempt. If there is no other transmission by the other devices whose transmission can interfere with the node under consideration, the transmission is successful. As examples of this mechanism, we find Aloha-type [14] and IEEE 802.11 CSMA/CA-based mechanism. With these mechanisms, each node determines its transmission times [4,25]. In the UMTS network, the nodes communicate using Direct Sequence-Code Division Multiple Access (DD-CDMA). The node transmits the packet with fixed rate and fixed power [26]. We consider an automatic-repeat-request(ARQ) mechanism in which the node keeps retransmitting a packet until the packet is received at base station without any error. At any instant in time, a device may have two kinds of packets to be transmitted: 1. Packets generated by the device itself. This can be sensed data if we are considering a sensor network. 2. Packets from other neighboring devices that need to be forwarded.
On Extending Coverage of UMTS Networks Using an Ad-Hoc Network
137
We consider two separate queues for these two types and do a weighted fair queueing (WFQ) for these two queues. This configuration allows nodes to have flexibility for managing at each node forwarded packets and its own packets differently. Two queues allow to model the selfish behavior or on the contrary to give higher priority to connections that traverse many hops that could otherwise suffer from large loss rates. The main contribution of this paper is to provide approximation expressions of stability. Our main result is concerned with the stability of the forwarding queues at the devices. It states that whether or not the forwarding queues can be stabilized (by appropriate choice of WFQ weights) depends only on the routing and the channel access rates of the devices. The end-to-end throughput achieved by the nodes are independent of the choice of the WFQ weight. The context of the stability that we study is new as it takes into account the possibility of a limited number of transmissions of a packet at each node after which it is dropped. Related works. Multihoming has been traditionally used by stub networks for improving network availability. Previous studies [5], have shown that ”Multihoming Route Control” can improve the Internet communication performance of the networks significantly. A comparison study of overlay source routing and multihoming is presented in [6]. The goal of this work is how much benefit does overlay routing provides over BGP, when multihoming and route control are considered. In wireless network, the usefulness of attaching to the Internet using different access technologies at different time, or even simultaneously, has been described in various works [7, 8]. A work devoted to IEEE 802.11 WLANs is [9], where users can choose between several access points and even split their traffic by using several of them. The network stability has been studied extensively both for networks with centralized scheduling [15, 17], Aloha protocol [10, 21] and UMTS system [19,20]. Among the most studied stability problems are scheduling [15,16] as well as for the Aloha protocol [27, 24]. Tassiulas and Ephremides [15] obtain a scheduling policy for the nodes that maximizes the stability region. Their approach inherently avoids collisions which allows to maximize the throughput. Radunovic and Le Boudec [11] suggest that considering the total throughput as a performance objective may not be a good objective. Moreover, most of the related studied do not consider the problem of forwarding and each flow is treated similarly (except for Radunovic and Le Boudec [11] or Tassiulas and Sarkar [23]). The rest of the paper is organized as: In section II, we formulate the problem. In section III, we study the stability of any given node in the system using the rate balance equation. We analyze the uplink case in section IV, valid our model and provide some numerical examples and some concluding remarks in section V.
2
Model Formulation
Background. Consider a geographical area which is not totally covered by any 3G system. The system is composed of three geographical classes (See fig.1); Class C1 contains terminals which communicate with each other using an ad-hoc network and some of them could be covered by the UMTS. The class C3 contains
138
R. El-Azouzi et al.
all terminals which are in the direct range of the 3G Node-B. We denote by C2 the set of mobiles covered by both the 3G system and the ad-hoc network, i.e. C2 = C1 ∩ C3 . Let N1 = card(C1 \C2 ) and N2 = card(C2 ). The 3G base station is denoted by B. The idea behind this work is to find a solution that allows non covered mobiles (C1 \C2 ) to use the 3G services besides they are not in the covered area, and allow to 3G devices to connect to Internet thanks to ad-hoc network. So we consider a scheme with special kind of terminals, each one disposes of two network cards (IEEE 802.11 and DS-CDMA), hence it could be connected to either the ad-hoc or the 3G system according to the coverage criterion. Moreover this mobile is assumed to be able to forward packets arriving from ad-hoc mobiles, and therefore transmits them to the 3G node-B or to another ad-hoc node; In other terms these type of mobiles can play the role of gateways that allow to access to the node-B and therefore to benefit from its services.
Internet
Ad-hoc subsystem
UMTS subsystem
Fig. 1. A single Cell 3G system combined with ad-hoc network. Access to UMTS and Internet without coverage constraint using an IEEE 802.11/UMTS gateway solution.
As long as a 3G node is far of the base station as its transmit power is higher, which could deteriorate the other nodes QoS. To avoid this, far nodes will prefer to use their ad-hoc neighbors to transmit and therefore save their energy. Moreover, for a 3G user who needs to connect to the Internet, it is very interesting to access to it via ad-hoc for high rate and low cost comparing to Internet via UMTS. Remark. (Case of a node j ∈ C2 ). Node j has neighbors transmitting using the IEEE 802.11 band and others using the UMTS band; When j transmits over the ad-hoc subsystem, it only collides with its neighbors using ad-hoc. And it is influenced only by users communicating with the node-B when it transmits using DS-CDMA. In others terms the two subsystems are separated and do not interfere with each other. Network layer. In order to insure the forwarding of a packet to a given destination (ad-hoc node or the Node-B), we assume that each terminal i possesses two queues Qi and Fi . Fi is selected with probability fi and receives packet to be forwarded to another destination whereas Qi represents the queue which carries the own packets of node i and is selected for transmission with probability 1 − fi . In this work we consider the saturated case where node i has always
On Extending Coverage of UMTS Networks Using an Ad-Hoc Network
139
packets to transmit from Qi . These queues are assumed to have infinite capacity. The network layer handles these queues using a weighted fair queuing (W F Q) protocol. For notation, we denote by Rs,d the set of nodes between a source s and a destination d (s and d not included). MAC layer. The MAC layers of the two subsystems are different. We consider for ad-hoc subsystem a collision channel where no more than one node can transmit successfully in a slot; Denote by τ a the duration of one slot. A successful transmission is occurred when there is no collision on reception, in other terms neighbors of an intermediate node should not transmit when it receives a packet. Each mobile transmitting a packet either from Qi or Fi should access the channel by probability Pi . We can consider the aloha protocol, CSMA/CA or any other mechanism to access the channel. For instance, the attempt rate (for node i) in IEEE 802.11 DCF (see [25]) is, Pi =
2(1 − 2Pc ) (1 − 2Pc )(CWmin + 1) + Pc CWmin (1 − (2Pc )m )
(1)
Pc denotes the conditional collision probability given that a transmission atmax tempt is made and CW is the contention window. m = log2 ( CW CWmin ) is the maximum of backoff stage. We assume that a packet is retransmitted (if needed) till success or dropping, Let Ki,s,d be the maximum number of transmissions allowed by a mobile i per packet. Yet expression (1) is valid only for IEEE 802.11 systems. In our case we have an hybrid network, so it does not hold anymore and we shall calculate it. Assume xi is the total proportion of UMTS cycles for a given node i. Let τiu be the average needed number of slots to send a UMTS packets. Proposition 1. Consider a heterogenous network composed of a UMTS and an Ad-hoc subsystems, then we have the following, 1) The proportion of UMTS traffic is, xi = Pi,B (1 − πi fi ) + fi
πi,s,B
(2)
s
2) The attempt rate for any given node i is, Pi =
Li (1 − xi ) Pi Li (1 − xi ) + τiu xi Pi
(3)
Proof. Here we develop a cycle-based method to prove proposition 1. Let us a observe the system (in particular a node i) for Ci,t cycles. Ci,t is the number of th u Ad-hoc cycles until the t slot, and Ci,t is the corresponding number of cycles for the UMTS traffic. We denote by Tta the total number of transmission slots used by Ad-hoc connections till the tth slot. The proportion of UMTS cycles is xi =
u Ci,t Ci,t
=
u,Q u,F Ci,t +Ci,t Ci,t
140 u,Q Ci,t Ci,t u,Q Ci,t Ci,t u,F Ci,t Ci,t
R. El-Azouzi et al.
is the probability to choose a UMTS packet from Qi . We have = =
u,Q Ci,t Q Ci,t F Ci,t a Ti,t
·
·
Q Ci,t Ci,t
a Ti,t Ci,t
= Pi,B (1 − πi fi ) π C u,F · Ci,tF = fi πi s i,s,B = fi s πi,s,B πi i,t
a where Ti,t denotes the number of cycles having Ad-hoc packets till slot t. The proportion of UMTS cycles becomes xi = Pi,B (1 − πi fi ) + fi s πi,s,B The proof is complete for part 1. a Tta T a Ci,t Ci,t = lim ta · · t→∞ t t→∞ C C t i,t i,t
The long term attempt rate is P i = lim Tta a Ci,t a Ci,t limt→∞ Ci,t limt→∞ Cti,t
limt→∞
is the average number of slots per cycle (Ad-hoc or UMTS), i.e. Li . is exactly the proportion of Ad-hoc cycles among Ci,t , i.e. 1 − xi . is the average number of slots per cycle (Ad-hoc or UMTS), then a Ci,t ·
Li
u +Ci,t .n
Pi u i limt→∞ Cti,t = =L Ci,t Pi (1 − xi ) + τi xi The result follows by substituting each term by its established expression.
For the UMTS subsystem, we assume that the base station communicates with 3G nodes using Direct Sequence Code Division Multiple Access (DS-CDMA). Each user i transmits to the base station with a transmission rate ρi,B (Uplink transmission rate), which is the bandwidth to the processing gain ratio. It depends on the mobile classes, the solicited service and the global load. The base station uses a downlink transmission rate ρB,i when sending to i. Another important parameter is the Packet Success Rate (PSR), which we denote by ξ(γi ), it is a function of the instantaneous signal to noise plus interference ratio (SINR). ξ(.) could be any increasing continuous, differentiable and S-sharped (sigmoidal) function with ξ(0) = 0 and ξ(+∞) = 1. Some properties and examples of S-sharped functions are studied with more details in [26] and references therein. Define μi,B as the uplink service rate, i.e. at which UMTS packets are served at node i. We denote by μB,i the arrival rate to node i from the node-B. Let 1 τi,B = μi,B be the average service time in number of ad-hoc slots. Then, it can be Ma written as: τi,B = ρi,B ξ(γ a where Ma is the length of one ad-hoc packet (in i ).τ a bit) and ρi,BMξ(γ is the average service time in second of a packet while allowing i) infinity retransmissions of a failure packet, see [26].
Cross-layer architecture. Nodes with two network cards are able to communicate with other nodes or with the 3G node-B. The system performance depends on more than one layer, this motivates us to use a cross-layer architecture (fig.2). This new network insight is more powerful and flexible thanks to communication and information exchange between different layers. Remark. It is interesting to note that a mobile is able to transmit on one interface and receive on the other and vice-versa. Moreover, it could get si-
On Extending Coverage of UMTS Networks Using an Ad-Hoc Network
141
Fig. 2. Cross-layer architecture including the two subsystems
multaneously one ad-hoc and one UMTS reception. Whereas we do not allow simultaneous transmissions over the two network cards. This is due to the nature of scheduling mechanism that we consider (selection of one queue a time). If we allow parallel selections we could make two simultaneous transmissions possible.
3
Stability of Forwarding Queues
In this section we study stability properties of nodes in the system in particular. a node i ∈ C2 which we call gateways. Classically ,the forwarding queue Fi is stable if the departure rate of packets from Fi is at least equal to the arrival rate into it. This is expressed by a rate balance system. For any given nodes i, s, d ∈ C1 ∪ C3 ; i denotes an intermediate node, s is the source and d is the destination. Let ji,s,d denote the entry in the set Rs,d just after i and N (i) be the set of i’s neighbors. The probability that a transmission from node i on route from node s to node d is successful is, Pi,s,d = (1 − P j ) (4) j∈ji,s,d ∪N (ji,s,d )\i
The expected number of attempts till success or dropping from i on route Rs,d is, 1 − (1 − Pi,s,d )Ki,s,d Li,s,d = Pi,s,d Let πi,s,d be the probability that the queue Fi has a packet at the first position ready to be forwarded to the path Rs,d . It follows that the probability that the queue Fi has at least one packet to be forwarded is πi = s,d πi,s,d . If Pi,d denotes the probability that i transmits to d then the average of Li,s,d over all possible paths is, Li = πi,s,d fi Li,s,d + (1 − πi fi )Pi,d Li,i,d (5) s,d:i∈Rs,d
d
In the following we classify connections onto three categories. – ad-hoc to ad-hoc connections: This corresponds to the case studied in [1] in which an ad-hoc node transmits to another ad-hoc node, i.e. s, d ∈ C1 .
142
R. El-Azouzi et al.
– ad-hoc to UMTS connections: This is the uplink case in which nodes transmit to the base station. For s ∈ C1 and d = B, note that a UMTS packet is transmitted until success from the gateway to the base station. – UMTS to ad-hoc connections: This illustrates downlink scheme, in other terms when the base station is transmitting to a given node so s = B and d ∈ C1 ∪ C3 . We note for transmissions to the base station, that an intermediate node i Pi forwards packets to a next hop at a rate L , whereas it forwards them to the i base station (if it is in the direct range of B) at a rate μi,B . For more generality we define μi,B as the service rate for the uplink scheme as following, μi,B =
μi,B , Pi , L i
if
if i ∈ C3 i ∈ C1 \C2
(6)
The departure rate In order to compute the departure rate of a given node, we shall make differentiation between ad-hoc and UMTS connections. Also the geographical criterion is taken into consideration thanks to P i and μi,B . The long term departure rate from node i for the connection Rs,d is,
di,s,d
⎧ Pi ⎪ ⎨ πi,s,d fi Li , = πi,s,B fi μi,B , ⎪ ⎩π Pi i,B,d fi L , i
s, d ∈ C1 s ∈ C1 , d = B d ∈ C1 , s = B
(7)
The arrival rate Here, we compute the arrival rate for each node i. Let i, s, d ∈ C1 ∪ C3 . s sends a packet destined to d with probability Ps,d . When the UMTS node-B transmits to a node d, we denote by g (for gateway) the first hop on the route RB,d . i’s long term arrival rate is expressed, according to possible connections, as following:
ai,s,d
⎧
Ps ⎪ ⎪ (1 − π f ) P 1 − (1 − Pk,s,d )Kk,s,d , ⎪ s s s,d ⎪ ⎪ Ls ⎪ k∈Rs,i ∪s ⎪ ⎪ ⎨
Ps = (1 − πs fs ) Ps,B 1 − (1 − Pk,s,B )Kk,s,B , ⎪ Ls ⎪ k∈Rs,i ∪s ⎪ ⎪
⎪ ⎪μ ⎪ 1 − (1 − Pk,s,d )Kk,s,d , ⎪ ⎩ B,g
s, d ∈ C1 s ∈ C1 , d = B d ∈ C1 , s = B
k∈RB,d
(8) End to end throughput of a connection. The end to end throughput between a couple of nodes s and d is exactly the arrival rate to the destination d. Namely thps,d = ad,s,d . Recall that gateways keep transmission of a packet over the UMTS subsystem till success (correctly received by the base station).
On Extending Coverage of UMTS Networks Using an Ad-Hoc Network
3.1
143
The Rate Balance System (RBS)
A queue Fi is stable while its corresponding departure rate is greater or equal than the arrival rate into it. In this subsection we consider the extreme case where we have strict equality. We will derive the rate balance equation for every node in the system. When the steady state is achieved, if all queues are stable, then for each i, s and d such that i ∈ Rs,d we get di,s,d = ai,s,d , this is the rate balance equation on the path Rs,d . Then for all i, s and d, we get a system of equations from which we can find a solution of the πi,s,d for all i, s and d. And then, find πi , for all i, which determines the load of the forwarding queues and the main condition of their stability which is πi < 1. Each node can forward packets for the three types of connections defined previously, and therefore we can explicit the rate balance equations using three generic equations: ⎧
P s Li ⎪ ⎪ πi,s,d fi = (1 − πs fs ) Ps,d 1 − (1 − Pk,s,d )Kk,s,d , s, d ∈ C1 ⎪ ⎪ ⎪ P i Ls ⎪ k∈R ∪s ⎪ s,i ⎪ ⎪
⎨ (1 − πs fs ) P s πi,s,B fi = Ps,d 1 − (1 − Pk,s,d )Kk,s,d , s ∈ C1 , d = B μ Ls ⎪ i,B ⎪ k∈Rs,i ∪s ⎪ ⎪ ⎪
⎪ Li ⎪ ⎪ πi,B,d fi = μB,g 1 − (1 − Pk,s,d )Kk,s,d , d ∈ C1 , s = B ⎪ ⎩ P i k∈R B,d
(9) We sum over all sources s and destinations d for all connections written above and get the global rate balance equation which is useful to study some special cases. Theorem 1. In the steady state, if all the queues in the system (both ad-hoc and UMTS) are stable, then for each i, s, d ∈ C1 ∪ C3 , such that i ∈ Rs,d we have, P i fi πi,s,d fi + μi,B πi,s,B = Li s,d s d:i∈R
B,d
+
s,d:i∈Rs,d
(1 − πs fs )
P s Ps,d Ls
μB,i
1 − (1 − Pk,B,d )Kk,B,d k∈RB,i
1 − (1 − Pk,s,d )Kk,s,d
(10)
k∈Rs,i ∪s
Let zi,s,d = πi,s,d fi , for all i, s and d, be the unknown of the rate balance system which is a non linear system because P i and Li usually depend on zi,s,d . We remark as in paper [1] that the solution is independent on the forwarding probability, and consequently the end to end throughput is also not impacted by the choice of fi as it appears when computing the end-to-end throughput thps,d = ad,s,d . This result holds only when the forwarding queues are stable. As a consequence, the forwarding capabilities of gateways do not affect their energy consumption.
144
R. El-Azouzi et al.
Another important remarks concern the interaction between the ad-hoc and the UMTS. Practically, the bit rate per node in the ad-hoc network is larger than the UMTS, but the size of this former network and its characteristics (as channel access and routing) influence drastically its capacity. Yet, connecting two heterogenous networks normally needs a scaling and an adaptation of the rates on each interface, if not, stability of the gateway nodes becomes a real issue. From the rate balance system, we find zi,s,d function of the service rate of the UMTS node μi,B and of the base station rate μB,i . So, the condition on zi,s,d (zi,s,d < 1) will be translated to a condition on the parameters of the UMTS, for example, we can find a minimum packets rate for UMTS nodes or a threshold of the SINR γ that insures stability on gateway nodes. Concerning the throughput of ad-hoc nodes connected to the base station, the throughput can be written in a simple form, in case of stability, as: thps,B = zg,s,B μg,B , where g is a gateway node. For the particular uplink case, the arrival rate (second equation of (8)) is independent of μi,B since πs fs , Li and Pi do not depend on it. Then when μi,B changes the load zi,s,B changes in the opposite sense, it follows that the throughput stays unchanged.
4
The Uplink Case Analysis
In the following we discuss and study with more details a scheme when the RBS is linear such the uplink case which is very important. There is indeed many asymmetric services which do not requires any request-response pattern (e.g. downloading files). In this case all sources has the same destination and each intermediate node forwards always to the same next hop. it follows that Li is independent of the unknown πi , Ls =
πs,s ,d fs Ls,s ,d + (1 − πs fs )Ps,d Ls,s,d = πs fs Ls,s,d + (1 − πs fs )Ls,s,d = Ls,s,d
s
The RBS is reduced to the second equation when d = B, we sum over all s,
zi,s,B =
ys P s Ps,B
s
μi,B Ls
s
1 − (1 − Pk,s,d )Kk,s,d
k∈Rs,i ∪s
Let yi = 1 − πi fi , later we will refer to yi as the stability region of Fi . We have, yi +
ys ωi,s = 1
(11)
s
where ωi,s =
P s Ps,d d μi,B Ls
k∈Rs,i ∪s
1 − (1 − Pk,s,d )Kk,s,d . (11) can be written in
a matrix form and then will be resolved more easily. Y (I + W ) = 1
(12)
On Extending Coverage of UMTS Networks Using an Ad-Hoc Network
145
W is the N ×N matrix whose (s, i)th entry is ωs,i , Y is the unknown N −dimensional row vector, i.e. Y (i) = yi . In the following we will restrict to symmetric ad-hoc network. The transmit and forwarding probabilities are the same for all users, i.e. Pi = P and fi = f . Assume that every ad-hoc node i has the same number of neighbors ni = n (such a grid or a mesh), it follows that Pi,s,B = (1 − P )n . For simplification and without loss of generality we will be assuming that Ki,s,d ≡ 1. Let denote by d(i, s, B) the number of intermediate nodes on the route Rs,B . Since we only consider uplink connections we shall put μB,g = 0. Proposition 2. A necessary condition for stability of Fi , for any given node in the system, for the uplink scheme is that, f≥ where ω i,s,B =
s
ωi,s,B ωi,s,B + μi,B
s.t.
f ≤1
(13)
P (1 − P )n(d(i,s,B)+1)
Proof. For any given routing, the input ratio into the forwarding queue Fi is, ai =
(1 − f πs )P Ps,s,B 1 − (1 − Pk,s,B )Kk,s,B s
k∈Rs,i
≥ (1 − f )P (1 − P )n(d(i,s,B)+1) = amin i s
The departure rate is di = μi,B f πi ≤ μi,B f = dmax i Since Fi is stable if and only if di ≥ ai , then the result follows. The next corollary provides a condition related to UMTS subsystem. Corollary. Considering the uplink case, a necessary condition that insures stability of queue Fi for any given gateway i, is that, μi,B ≥
1−f · ωi,s,B f
(14)
A more useful form is to convert it onto a condition on instantaneous SINR as, γi ≥ ξ −1
1 − f Ma · · ωi,s,B a f ρi,B τ
(15)
where ωi,s,B = s P (1−P )n(d(i,s,B)+1) . An interesting result of proposition (13) is that UMTS parameters do not affect stability of non covered nodes.
5
Numerical Results and Simulations
Consider in fig. (3) one single UMTS cell, covered by base station B, and extended with an Ad-Hoc network which is itself related to Internet via AP 9.
146
R. El-Azouzi et al. a
Connection a: 4-3-2-1-B Connection b: 6-5-1-B Connection c: 10-1-7-8-AP
1O
a
3
2
a c 4
Internet
b
b
11
5 1
c 6
c c 9
7 8
Fig. 3. Cellular and Ad-Hoc networks 0.076
1 node node node node
0.9 0.8
1 2 3 5
0.074
0.7
Throughput
0.072
π
i
0.6 0.5 0.4
a b
0.07
0.068
0.3 0.2
0.066
0.1 0 0
0.2
0.4
μi,B
0.6
0.8
0.064 0
1
0.2
0.4
μ
0.6
0.8
1
i,B
Fig. 4. Queues load for K = 4 and f = 0.8 Fig. 5. Throughput of connections a and b 1
0.08
node node node node
0.9 0.8
1 2 3 5
0.07 0.06
Throughput
0.7
πi
0.6 0.5 0.4 0.3
0.05 0.04 0.03
0.2 0.02
a b
0.1 0 0
0.2
0.4
μi,B
0.6
0.8
1
Fig. 6. Queues load πi from simulation
0.01 0
0.2
0.4
μ
0.6
0.8
1
i,B
Fig. 7. Throughput from simulation
Both nodes in the UMTS cell and the Ad-Hoc network can access to the services of the two networks. For that, gateway nodes play an important relay role on forwarding packets for both technologies. For that we are interested to show, at first, numerical results concerning the load of these latter nodes and then the end -to-end throughput of connections that traverse these nodes. We use a discrete time simulator that reflects the behavior of nodes in our model described in section 2, to validate our formulation results. In fig. (3), nodes 4 and 6 access the UMTS system with the base station B via connections a and b. Node 10 which is in the UMTS cell also reaches the access point AP (node 9) via the Ad-Hoc network with a connection c.
On Extending Coverage of UMTS Networks Using an Ad-Hoc Network
147
We fixe P3 = P9 = 0.2, P4 = 0.4 and all other Pi to 0.3. The number of transmissions is set to Ki,s,d ≡ K = 4 and the forwarding probability to fi ≡ f = 0.8. Fig. (4) and (5) consider only the uplink case where Ad-Hoc nodes communicate with the base station. Fig. 4 shows the load variation function of the UMTS service rate μ1,B . It is clear that increasing μ1,B would ameliorate the stability of node 1. Here, we see that we need μ1,B > 0.19 to get π1 < 1. For an Ad-Hoc node rate of 2Mbps and an Ad-Hoc packet size of 1000 Bytes, the slot size becomes τ a = 4ms, then a minimum UMTS rate needed must be at least 47.5 packet/s (ad-hoc packet). Concerning the throughput, fig. (5) shows the insensitivity of the throughput with the service rate of the UMTS. Note that only for π1 < 1 the figure of the throughput make sense. Elsewhere it will be an increasing function of μ1,B as it is shown in the simulation fig. (7). A validation with simulations of the numerical results is shown in fig. (7,6). Conclusion. In this paper we propose extending the coverage of UMTS using an ad-hoc network, our main result is characterization of stability condition and the end-to-end throughput, we also validate the analytical result using a discrete simulator. An ongoing work consists on studying the impact of transmit power over the 3G subsystem on the stability of the forwarding queues. We also consider a joint power and rate control game to seek the equilibrium points under some QoS constraints.
References 1. El Khoury, R., Elazouzi, R.: Stability-throughput analysis in a multi-hop ad hoc networks with weighted fair queueing. In: The Proc. 45th Annual Allerton Conf. on Communication, Control, and Computing (Allerton 2007), Monticello, IL (September 2007) 2. Kherani, A., ElAzouzi, R., Altman, E.: Stability-Throughput tradeoff and routing in multi-hop wireless ad-hoc networks. In: The Proceeding of Networking Conference 2006, Coimbra, Portugal, MAY 19, vol. 15 (2006) (Best paper Award) 3. Bria, A.: Joint resource management of cellular and broadcasting systems-research challenges. In: RVK 2005 Conference (2005) 4. Bianchi, G.: Performance analysis of the IEEE 802.11 distribute coordination function. IEEE Journal on Selected Areas in Communications (March 2000) 5. Smith, P.: Bgp multihoming techniques. In: NANOG, vol. 23 (2001) 6. Shaikh, A., Sitaraman, R., Akella, A., Maggs, B.: A measurement-based analysis of multihoming. In: SIGCOMM (2003) 7. Stemm, R., Katz, R.: Vertical handoffs in wireless overlay networks. Journal on Mobile Networks and applications 3(4), 335–350 (1998) 8. Wakikawa, R., Paik, E.K., Ng, C.W., Ernst, T., Montavont, N., Noel, T.: Goal and benefits of multihoming. IETF Internet Draft (July 2005) 9. Altman, E., Shakkottai, S., Kumar, A.: The case for non-cooperative multihoming of users to access points in ieee 802.11 wlans. In: IEEE INFOCOM 2006, Barcelona (2006) 10. Rao, R., Ephremides, A.: On the stability of ineracting queues in a multi-access system. IEEE Tran. Inform. Theory 34, 918–930 (1988)
148
R. El-Azouzi et al.
11. Radunovic, B., Le Boudec, J.Y.: Joint Scheduling, Power Control and Routing in Symmetric, One-dimensional, Multi-hop Wireless Networks. In: WiOpt 2003: Modeling and Optimization in Mobile, Ad-Hoc and Wireless Networks, SophiaAntipolis, France (2003) 12. Clausen, T., Jacquet, P., Laouiti, A., Muhlethaler, P., Qayyum, A., Viennot, L.: Optimized Link State Routing Protocol. In: IEEE INMIC Pakistan (2001) 13. Murthy, S., Garcia-Luna-Aceves, J.J.: An Efficient Routing Protocol for Wireless Networks. ACM/Baltzer Journal on Mobile Networks and Applications, Special Issue on Routing in Mobile Communication Networks 1 (1996) 14. Roberts, L.G.: Aloha packet system with and without slots and capture, Tech. Rep. Ass Notes stanford Research Institute advance Recharch Projects Agency Network Infomation Center (1972) 15. Tassiulas, L., Ephremides, A.: Stability properties of constrained queuing systems and scheduling for maximum throughput in multihop radio network. IEEE Trans. Automat. Contr. 37(12), 1936–1949 (1992) 16. Tassiulas, L.: Linear complexity algorithm for maximum throughput in radio networks and input queued switches. In: IEEE Infocom 1998, pp. 533–539 (1998) 17. Tassiulas, L.: Scheduling and perfomance limits of networks with contantly changing topology. IEEE TRans. Inform. Theory 43(3), 1067–1073 (1997) 18. Altman, E., Borkar, V.S., Kherani, A.A., Michiardi, P., Molva, R.: Some game theoretic problems in wireless ad-hoc networks. In: Kotsis, G., Spaniol, O. (eds.) Euro-NGI 2004. LNCS, vol. 3427, pp. 82–104. Springer, Heidelberg (2005) 19. Schr¨ oder, B., Weller, A.: Prediction of the Connection Stability of UMTS Services in the downlink- an Analytical Approach. In: Vehicular Technology Conference (2002) 20. Kumar, A., Patil, D.: Stability and throughput analysis of unslotted CDMAALOHA with finite number of users and code sharing. Telecommunication Systems 8 (December (2-4), 1997) 21. Luo, W., Ephremides, A.: Stability of N interacting queues in multiqueue distributed systems: buffered random acess system. IEEE Trans. Inform. Theory 45, 1579–1587 (1999) 22. Tsybakov, B., Mikhailov, W.: Ergodicity of slotted Aloha system. Prob. Inform. Transmission 15(4), 301–312 (1979) 23. Tassiulas, L., Sarkar, S.: Max-Min fair scheduling in wireless networks. In: Proceeding of Infocom 2002 (2002) 24. Tsybakov, B.S., Bakirov, V.L.: Packet transmission in radio networks. Probl Infom. Transmission 21(1), 60–76 (1985) 25. Yang, Y., Hou, J.C., Kung, L.-C.: Modeling the effect of transmit power and physical carrier sense in multi-hop Wireless networks. In: Infocom 2007, Alaska (2007) 26. Meshkati, F., Poor, H.V., Schwartz, S.C., Mandayam, N.B.: An energy efficient approach to power control and receiver design in wireless data networks. IEEE transactions on communications 53(11), 1885–1894 (2005) 27. Anantharam, V.: The stability region of the finite-user slotted Alloha protocol. III Trans. Inform. Theory 37(3), 535–540 (1991)
A Performance Analysis of Authentication Using Covert Timing Channels Reed Newman and Raheem Beyah Communications Assurance and Performance Group, Computer Science Department, Georgia State University Atlanta, GA, USA [email protected], [email protected]
Abstract. Authentication over a network is an important and difficult problem. Accurately determining the authenticity of a node or user is critical in maintaining the security of a network. Our proposed technique covertly embeds a watermark, or identifying tag, within a data stream. By implementing this model on a LAN and WLAN we show that this method is easily adaptable to a variety of networking technologies, and easily scalable. While our technique increases the time required for data to be transferred, we show that the throughput of the link during the brief authentication window is decreased by no more than 8% in a switched LAN and 11% in a WLAN. During our empirical analysis we were able to detect the watermark with 100% accuracy in both a LAN and WLAN environment.
1 Introduction With the large amount of network applications in existence today, it is becoming increasingly difficult for network administrators to police the traffic on their networks. Additionally, these network applications are increasingly carrying sensitive information; as the sensitivity of the information traversing the network increases, so too must the level of security within the network. A key step in securing a network is the authentication of all nodes1 on that network. Authentication of nodes allow perimeter devices the ability to determine if a node's requests should be granted. Reliable node authentication helps to ensure the basic elements of network security: positively identifying a node, allowing that node specific access privileges, and holding that node accountable should it compromise the security or productivity of the network. Leading industry approaches, such as Cisco’s AAA Server and Cisco's NAC model [1], rely on user name/password, S/Key, Token Cards or system profiling to authenticate users. While all of these methods provide a reasonable level of security, each are expensive and have been shown to have flaws [2,3]. Additionally, simple access control lists have proven to be ineffective as spoofing IP and MAC addresses is a trivial task, allowing attackers to easily gain access to systems and networks. 1
Authentication relating to nodes can easily be extended to users. When referencing nodes, unless otherwise noted, the statement applies to nodes and users.
A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 149–161, 2008. © IFIP International Federation for Information Processing 2008
150
R. Newman and R. Beyah
By not requiring strict node authentication, joining a network is a trivial matter. An attacker may obtain a physical connection to a network, enter the network through a wireless access point, circumvent 802.1x via phishing or other known exploits, or access the network via a VPN connection. By requiring each node joining the network to authenticate itself, the overall security of the network is increased making systems within the network harder to breach. We propose to embed a watermark, or signature specific to a node, within a data flow using inter-packet delay. The watermark will be embedded between select packets in a covert manner, such that it is difficult to detect and does not decrease the throughput of the link significantly. Our model can be used to supplement the above methods or be used as a standalone method of authentication. Our technique does not require synchronization between the nodes' clocks, and can easily be adapted for user authentication. We acknowledge that our proposed method, a method advocating security by obscurity, is not an impervious solution but assert that the additional layer of security increases the difficulty for an attacker. We believe that providing authentication in a covert manner adds the same level of benefit one achieves when changing an internal server’s (sftp, ssh, etc.) port from a well-known port to a random port. The attacker would require not only a technique by which to break into the server (e.g., a buffer overflow attack, etc.), but must also find the server, via port scanning, over a range of 64,000 ports without being detected. Further, this work evaluates performance of using timing channels in general to transmit data. Our specific application of this method uses this channel to communicate authentication information. The remainder of this paper is organized as follows: Section 2 reviews related work, Section 3 details the covert timing channel model, Section 4 outlines the experimental setup and procedure, Section 5 provides analysis on the model, Section 6 provides experimental data, and Section 7 contains our conclusions and future work.
2 Related Work The idea of using inter-packet delay (IPD) for node identification is not necessarily new. There have been several different applications regarding the use of IPD in recent academic research. The majority of the work focuses on the detection of stepping stone connections (i.e., intermediate systems attackers use to launch attacks and insulate themselves from detection), with most solely considering interactive (SSH) traffic. The authors of [4] extend the work done in [5,6] to detect a correlation between stepping stones. In [4], the authors use a binning technique to partition the data stream allowing the encoded watermark a greater level of robustness against timing perturbations and repacketization within the stepping stone links. In [7], the authors extend the work of [8] in an effort to defeat chaff packets (e.g., structurally correct packets inserted within the data flow to obfuscate a pattern) that may be inserted by a node within the stepping stone chain. This is done by decoding watermarks from all possible subsequences of a downstream flow, and choosing the “best” watermark (defined as the watermark with the least hamming distance from the original watermark).
A Performance Analysis of Authentication Using Covert Timing Channels
151
Peng, et al. [9] investigate the secrecy of active watermarking. The authors develop an attack technique that infers important parameters of the watermarks, and also recovers and duplicates watermarks through the stepping stones. The authors of [10] attempt to detect stepping stone connection correlations of SSH traffic by creating a logical partition between ON and OFF periods of usage. By examining the IPD of connections and determining if the OFF period transitions to an ON period within a certain threshold, it can be reasonably stated that these connections are related. It is interesting to note that this is an entirely passive technique. In [11], provable upper bounds are set on the number of packets required to confidently detect encrypted stepping stone streams with proven guarantees of a low false positive rate. The methods in [11] also take into consideration the usage of chaff packets, and provide bounds on the amount of chaff needed by the attacker to evade detection. The model proposed by [12] is similar to that of [11], with the addition of wavelets. In [12], the authors attempt to differentiate between the short term behavior of the stepping stone streams, where timing perturbations and chaff packets can mask the correlation between connections, and the long term behavior of stepping stone streams. Wang and Reeves [5] propose a watermark-based scheme that can detect correlation between streams of encrypted traffic. However, the assumption is made that the attackers timing perturbations are independent and evenly distributed. Should the traffic be disturbed in another fashion, such as with the insertion of chaff packets, their method will show a decrease in accuracy. Zhang, et al. [13] provide an upper bound on the number of packets required to detect attackers in stepping stone networks when chaff packets and timing perturbations exist simultaneously. The authors of [14] show that VoIP encoding scheme can easily contain a covert channel by altering the least significant bit. They provide analysis on the bandwidth and the amount of data transferred. Wang, et al. [6] show that encrypted VoIP calls hidden through an anonymizing network can still be traced, using a technique similar to that of Paxson [10]. Only tangentially related to our work, the authors of [15] studied the loss of anonymity in a flow-based wireless mix network under flow marking attacks, in which an adversary embeds a pattern of marks into wireless traffic flows by electromagnetic interference. They asserted that traditional mix technologies are not effective in defeating flow marking attacks in wireless networks. They proposed a new countermeasure based on digital filtering technology. The authors of [16] introduce a covert timing channel model based on the presence or absence of packets arriving during a specific time period. The authors attempt to detect this covert timing channel over IP using a similarity comparison between packet inter-arrival times. The concept of covert channels was first introduced by B. Lampson in 1973 [17]. Covert channels at the network and transport layers in TCP/IP were first investigated by Rowland [18] and Fisk, et al. [19]. Currently software such as Covert_TCP [19] and Nushu [20] are available to hide data within TCP headers. Project Loki [21] has also shown that ICMP packets are capable of carrying covert information within their headers. By moving the covert channel to the application layer, detection of covert channels becomes even more difficult. It was discussed in RFC 3205 [22] that HTTP be used as a carrier for other protocols; this was obviously meant for the covert encapsulation of the protocols. Several tools are also available to tunnel protocols
152
R. Newman and R. Beyah
through HTTP, like Lars Brinkhoff's httptunnel [23], primarily for the purpose of evading firewalls. The predominate focus of these works, with the exception of [6,14-19,21-22], are on detection of stepping stones using SSH style traffic. SSH traffic can be classified as high-latency traffic, caused by user pauses in commands being issued. In [14], data in the least significant bit of the VoIP stream is altered to create a covert channel. Wang et al. [6] use a technique similar to that of Paxson [10] to correlate between VoIP flows hidden by an anonymizing network. Additionally, all of the works discussed above, with the exception of [15-19,21-22], focus on wired networks. In [17-18,21-22], the covert channel is actually embedded or encapsulated within another protocol. We propose a general model (protocol independent) for node authentication that is able to take advantage of low-latency traffic and be effective on both wired and wireless networks. We evaluate this model experimentally and address the performance and accuracy of our model. This model does not require a large amount of overhead during the brief authentication window, using no more than 8% of the available bandwidth during testing in a switched LAN and no more than 11% in a WLAN.
3 Covert Timing Channel Model Through the application of Steganography to a network flow, we achieve Covert Timing Channels, which are defined as parasitic communication channels that draw bandwidth from other channels, via the disruption of event timing relative to other events, in order to transmit information [24-25]. Traditionally Covert Timing Channels are used for the transmission of messages, and likewise, to provide authentication, we transfer a watermark or signature specific to a node, through this channel. Particularly, we disrupt the inter-packet timing within a data flow over a network (specifically using the TCP and UDP protocols). By adding minimal amounts of delay to select packets within the flow, we add a watermark to the flow in such a way that it is unique to a specific node. By delaying packets within a data stream, even minimally, we detract from the bandwidth of the network and thus increase the time required for a given task. We will show that bandwidth degrades proportional to the amount of delay needed to accurately transfer a watermark, the length of the watermark, and the rate at which the node must be re-authenticated. Disrupting the inter-packet timing within a data flow is inherently volatile, especially when considering outside influences such as the overhead incurred from the use of TCP. Given occasionally network volatility we must assume that sending one watermark may not provide adequate authentication. Additionally to provide a greater degree of robustness, in certain cases it may be necessary to increase the frequency of watermark transmissions. For instance, a university system may not require the node to re-authenticate itself often whereas a military institution, which places a higher priority on security, may. Resending the watermark increases the security provided by the model, allowing the host network to ensure that the node it authenticated originally is still that node. In Section 4 we show that the increase per
A Performance Analysis of Authentication Using Covert Timing Channels
153
additional watermark is small, resulting in a minimal decrease of network throughput. Additionally, we provide analysis on the amount of delay required to accurately detect the watermark, versus the percentage error of false negatives. The degree of natural delay varies from one network type to another. For instance, assuming that network delay is the only factor, the time required to transfer a file over the Internet or VPN connection is greater than the time required to transfer that same file over a wireless network (from one local computer to another); the time required for the transfer of that file over the wireless network is greater than the time required to transfer the file over a 100Mbps LAN connection. With the addition of network congestion, packet loss, etc., the distinction between network types becomes even clearer. As such, the addition of delay required by our model dynamically varies depending on what type of network the user is using. Our model calculates the minimal delay required to accurately embed a watermark into the data flow by using the roundtrip time (RTT) of the first ten data packets received per connection over a TCP connection. This approach will not work over a UDP flow, as there are no acknowledgment packets being returned to the sender. If UDP is being used, the client will ping the server several times and calculate the delay based on the RTT provided. An overview of our model, graphically represented in Fig. 1, is as follows. Initially a bootstrap phase is entered. During this phase, a kernel module, called the Encoder, is loaded and an initial watermark is created. The Encoder associates itself with an application at the transport layer and acts as a filter allowing for the queuing of packets, so that delay may be added. An additional kernel hook, called the Detector, registers itself to determine the RTT of the first ten data packets sent, which will determine the amount of delay added to the data flow. The initial watermark is currently generated from a password, but can be altered to be generated from another input; for example, using a serial number unique to a node (or other identifying information) in addition to a password would allow for the authentication of the user/machine pair. To generate a watermark, our password is hashed using the SHA-1 hashing algorithm, translated from hex to binary, and truncated to the desired length of the watermark. Two delay values are used within the watermark. A high value is used to represent a binary 1, and a low value used to represent a binary 0; the true high (λ) and low (ω) values are set by the Detector with λ > ω and ω being greater than the average delay between packets. When delaying a packet that is part of the watermarked sequence, the binary watermark is consulted to determine if the delay to be added is λ or ω; if the binary value of the delay is a 0, the value represented by ω is used, with the value of λ being used if the binary value of the delay is a 1. As data is sent from the application, it is registered with the Encoder. The Encoder tracks the number of packets being sent, as well as the start time of the data flow. From a predetermined level of security configured by the user, the Encoder will embed the watermark within the data stream after every β number of packets, or after γ units of time have elapsed. Additionally, the user may configure the watermark to be rehashed using the current watermark as the key to create a new watermark after δ packets have been transferred, or to create a new watermark after ζ units of time have elapsed. From this point, the data is transferred over the network to the receiver where another module, a kernel hook, decodes the signal; it is not required that a kernel hook be used in this instance, the application itself could provide this service. Abstractly,
154
R. Newman and R. Beyah
Fig. 1.
Fig. 2.
Fig. 3.
Fig. 1. A work flow depicting the Covert Timing Channel Model. Fig. 2. Depiction of the Experimental Testbed. Fig. 3 Watermarks in UDP traffic transmitted over a WLAN link. Here λ = 12 ms and ω = 8 ms, with the Watermark = {1 0 1 1 1 1 1 0 0 0 1 0 0 0 0 0 1 0 0 0}.
we shall refer to this entity as the Decoder. Prior to decoding the watermark, the data flows' inter-packet timing sequence is subjected to a high-pass filter which filters out the majority of the un-encoded network traffic. Two methods of decoding the watermarks were investigated. These methods are as follows: 1. The Simple Threshold Method – A cutoff point is determined by taking the mean of the IPD not set to zero by the high-pass filter. If a packet has been delayed by an amount greater than the cutoff, it is considered to represent a 1, otherwise it is considered to represent a 0. 2. The Multi-Threshold Method – Using a moving window of two, the values are multiplied together and stored in a separate array. Doing this places the number pairs into three distinctly separate categories, 00, 01/10, and 11. It is difficult to determine the order of the pairing in the 01/10 category; as a solution, the original stream is reviewed, and the greater value is determined to be the 1 value. Due to space limitations, only the Simple Threshold Method was used during testing. Should the flow be found to not contain the watermark after a certain threshold, as determined by the level of security required, the Decoder can be configured to signal a firewall, or other external device, in an effort to alert a user or disallow continued traffic from the source. There are many additional steps that could be taken, each specific to an individual organization's needs, and beyond the scope of this work.
4 Experimental Setup and Procedure To test the Covert Timing Channel Model in a controlled environment, an experimental testbed was constructed. The testbed was comprised of a Lenovo 3000 C100 laptop running Fedora Core 4, kernel ver. 2.6.16-1.2111_FC4 with 512 MB RAM as the client sending the watermark. One server, called Server 1, used in the
A Performance Analysis of Authentication Using Covert Timing Channels
155
testbed was a custom build desktop computer running Fedora Core 6, kernel ver. 2.6.20 with a 3.0 GHz processor and 1 GB RAM connected on a local network with the client by both a wired and wireless connection. An Airlink101 wireless card was used in the Lenovo client, and a D-Link wireless USB adapter was used in Server 1 for the wireless testing. A Netgear 802.11b router was used for the local wired and wireless testing; encryption was left on during the wireless testing to more accurately simulate a real-world environment. The majority of network traffic was generated by the client to the server, with several other computers generating traffic through the router on the local network, but not to the client or server. This is an appropriate setup considering most institutions use a switched network, possibly a wireless network as well, with multiple users active at any given time. In our experiments there were two different scenarios: 1. 2.
Switched LAN – The data transfer occurs entirely over a 10/100 Ethernet network. 802.11b WLAN – The data transfer occurs entirely over an 802.11b wireless network.
Several different configurations were used with multiple trials being run for each configuration. Packets were queued using a Netfilter kernel module [26]. The packets were passed to user space if they were being sent out of a predetermined port, and placed into a separate queue with an appropriate release time set. If the packets were part of a watermark, the release time was set according to the watermark; if the packets were not part of a watermark, their release time was set to the current time. The head of the queue was continually checked to determine if the packet had reached its release time, and the packet was released if the current time was greater than the release time. All network traffic was monitored using Tcpdump [27]. Traffic was generated by transferring a 2.97 MB text file using a simple sockets program written in C, resulting in the transfer of 2035 packets over the network for Figures 4 and 5. For Figures 6-9, the same sockets program was used to transfer 88,000 packets over the network. Each set of captured data was parsed to a flat file using a pcap parser. The files were then processed in Matlab to detect the watermark embedded within the data flow. Five hundred tests per network type were run without using the watermark to provide a baseline.2 For each set of parameters used in Figures 6-9, ten trials were run per configuration, resulting in approximately 400 trials.
5 Analysis The balance of performance and security within large networks is crucial in maintaining the viability of that network. Corporate, university, government and military networks all require different levels of security and minimum tolerable levels of performance, leading to the need for scalable and adaptable solutions that do not prohibit performance. Using the Covert Channel Model, each network type receives a configurable and robust method to authenticate nodes for a minimal cost to the 2
UDP traffic was generated as a CBR data flow (35Mbps).
156
R. Newman and R. Beyah
network. The cost of using these methods varies depending on the frequency of authentication, size of the watermark, and the amount of delay added. This cost is minimal over switched LAN and WLAN connections. When adding a watermark, the majority of the data flow is uninterrupted (Unwatermarked Delay). Only the portion of the data flow containing the watermark adds delay (Watermarked Delay). Additionally, the number of times the watermark repeats increases the delay (Watermarked Repetition Delay), leading to the delay model (Total Delay). unwatermarked_transmission_time = ( packets_total – packets_watermarked ) x (RTT/2) high_delay = packets_watermarked @ λ x λ low_delay = packets_watermarked @ ω x ω watermarked_delay = high_delay + low_delay watermarked_repititions_delay = total_repititions x watermarked_delay transmission_time = unwatermarked_transmission_time + watermarked_repitions_delay
The delay added by the watermark depends on 4 variables: (1) The value of λ; (2) the value of ω; (3) the length of the watermark; and (4) the number of times the watermark is repeated. Both (1) and (2) are configurable and by minimizing these parameters the performance of the network is preserved. Both (3) and (4) are a function of the security required by the network. The Detector attempts to minimize the values in (1) and (2). By using the values of first ten data packets sent, the Detector determines which type of network is being used and sets the rates accordingly. It determines the connection type based on the RTT time of the first ten packets. The distinction between a LAN and a WLAN is made based on the variance within the first ten packets. If a LAN is in use, the Detector sets λ= (φHigh x ( RTT / 2 )) and sets ω = (φLow x (RTT/2)) with φHigh = 46.5 and φLow = 15.5. If a WLAN connection is in use the Detector sets the Encoder to “spike” the interface. When using a WLAN connection φHigh = 1.84 and φLow = 1.0; due to the comparatively high bandwidth of the LAN connection, larger normalizing parameters (φHigh, φLow) are required. During testing, it was initially observed that large delays were required on WLAN networks to ensure that the entire watermark was received. When using limited bandwidth, such as that on a WLAN, packets may be queued within the interface before being transferred to the network. By adding a large delay (“a spike”) prior to sending the watermark, the interface is allowed to clear its queue and thus transmit the watermark with greater accuracy and lower delays. Empirical testing shows that by “spiking” the interface, bandwidth over a WLAN connection is preserved far better than by simply increasing λ and ω. This will be discussed in more detail in Section 6. While testing was done using both TCP and UDP traffic, we will focus our analysis on TCP. The primary reason for this is that UDP traffic is relatively well behaved (with no outside influences unlike TCP) and easily carries the watermark. This is shown in Fig. 3 where UDP traffic is sent over a WLAN connection (which is more volatile than a LAN connection) at a rate well below the rate determined to be optimal. During this trial, watermarks were detected at 100% over the entire duration. UDP traffic over a LAN connection showed similar results. Ideally, after minimizing the delay, the watermark is transfered over the network and detected immediately. While this may be true with λ and ω set to a high value, it is not always the case. Network perturbations may cause alterations within the watermark
A Performance Analysis of Authentication Using Covert Timing Channels
157
leading to a false negative (no false positives were observed). In this case, multiple watermarks may be sent to authenticate the node. These incomplete watermarks are examined to determine their proximity to the correct watermark. Should they be within a tolerance level against false negatives (a predetermined value from the user) they will be considered the same as an ideal watermark. Additionally, care is taken such that delay values are not set too high (i.e., above the TCP timeout values), since packet retransmissions could also cause an increased number of false negatives. Optimal values for encoding differ per network. To maximize throughput the desired value for ω is slightly above the normal sending rate. Desired values for λ are slightly but distinguishably above ω. While this varies depending on what network type is in use, testing within our testbed has shown that optimal values in our LAN are λ = 6ms and ω = 2ms and in our WLAN are λ = 22ms and ω = 16ms. This was determined empirically and is illustrated in Fig. 4 and Fig. 5. These values lead to a highly detectable solution that is still covert and minimizes the number of watermarks required for accurate detection. Network performance is not greatly affected if λ and ω are set to relatively low values (but not the lowest possible values) and the number of watermarks contained within the authentication cycle is small. An authentication cycle represents the transmission of one or more watermarks. The transmission of several watermarks may be required to achieve an acceptable degree of detection accuracy. While it is certainly possible for a greater degree of performance to be achieved by setting λ and ω to lower values, doing so decreases the probability that the watermark will be accurately detected requiring a larger number of watermarks to be included within an authentication cycle. The computational power required and the speeds at which the watermarks can be detected are also important factors. The Simple Threshold Method is a powerful and easily implementable method to detect the watermark. It only requires enough memory to buffer the current watermark, and minimal computations; as such, the Simple Threshold Method is faster than the Multi-Threshold Method. The drawback to using this method is that it has minimal intelligence, and can create a higher false positive rating if network conditions change. The Multi-Threshold Method provides a greater degree of robustness with lower false positive rates. However, it does require that the original time stamps be held in memory as well as the current watermark, and a slightly greater amount of computation to be done. Comparatively, the MultiThreshold Method provides better protection against changes within network conditions. Due to space limitations our experimental data only provides analysis using the Simple Threshold method. At the monitoring node each watermark is individually detected and compared to the true watermark to determine its accuracy. Each of these accuracy ratings are stored until enough watermarks have been received (or time has elapsed) to complete one authentication cycle. The maximum value of the stored accuracy ratings is selected and compared to the configured threshold. If this maximum is greater than the threshold the user is considered to be authenticated, otherwise the maximum value of the stored accuracy ratings is averaged with all previously detected maximum rates and this value is considered to be the user’s current authentication value. The authentication value is compared to the configured threshold again to determine if the user is authenticated.
158
R. Newman and R. Beyah
Fig. 4.
Fig. 5.
Fig. 6
Fig. 7.
Fig. 8.
Fig. 9
Fig. 4. contains the results from trials used to empirically determine the optimal values for λ and ω, as well as the number of watermarks required per authentication cycle for different levels of detection accuracy in a LAN. Fig. 5 contains the results from trials used to empirically determine the optimal values for λ and ω, as well as the number of watermarks required per authentication cycle for different levels of detection accuracy in a WLAN. Figs. 6 and 8 show the percentage decrease in network throughput, compared to the baseline throughput, when the number of authentication cycles is increased in a switched LAN and WLAN respectively. Figs. 7 and 9 show the percentage decrease in network throughput, compared to the baseline throughput, when the length of a single watermark is increased in a switched LAN and WLAN respectively.
6 Performance Analysis RTT values differ per network. During testing it was observed that RTT values for a switched LAN had a median value of 0.258ms and a mean value of 0.247ms. Within a WLAN the RTT median value was 23.90ms and a mean value of 42.43ms. Using the Detector, the appropriate λ / ω delay times for a LAN and WLAN network are 6ms/2ms and 22ms/16ms respectively. As previously mentioned these values were determined empirically and are fixed in order to provide the performance analysis. While certain institutions may require the highest level of security, the needs of other institutions may not be as stringent. The Covert Timing Channel method is designed to be a general method of authentication for institutions requiring various levels of security. As such, performance testing was done for several different levels of accuracy using different watermarks lengths and various numbers of watermarks included within a single authentication cycle. By using shorter watermark lengths and/or fewer watermarks per authentication cycle, institutions (such as educational facilities that do not require high levels of security) may authenticate nodes with a
A Performance Analysis of Authentication Using Covert Timing Channels
159
lower degree of accuracy without seriously impacting the performance of the network. Conversely, institutions requiring a greater degree of security may increase the length of the watermark and/or the number of watermarks per authentication cycle. Doing so allows nodes to be authenticated at a higher degree of accuracy while increasing the complexity required for watermarks to be detected at high levels of accuracy. Testing on the switched LAN differed from that of the WLAN network in that the addition of a watermark was either fully detectable or not detectable at all up to 95% accuracy using an authentication cycle containing one watermark, after which an increase in the authentication cycle size (increased to three watermarks) was required to achieve 100% accuracy at lower rates. This is the result of extremely low latency between hosts. The “authentication watermarks” were fully detectable until 6ms/2ms, after which no watermarks were detected at all. As long as λ > 5ms and 1ms < ω ≤ λ2ms, watermarks were generally 95% detectable with 0% error within the detection. The values of 6ms/2ms were chosen for the LAN because of their consistent ability to provide a great degree of detectability with minimal performance degradation (Fig. 4). Our primary consideration during testing was the amount of overhead this model requires for accurate detection. Two configurable parameters were tested to provide a performance versus security comparison: (1) the cost to network throughput for different watermark lengths; and (2) the cost to network throughput for additional redundancy using authentication cycles. By increasing the length of the watermark and by adding additional authentication cycles, the security of the model is increased at a cost to the network throughput. Fig. 6 represents the cost of increasing the number of watermarks contained within one authentication cycle. This figure provides results for 1 watermark, 20 bits (or packets) long, per authentication cycle, with one to ten authentication cycles being sent over the authentication period of 88,000 packets for 95% detection rate. To achieve 100% detection, 3 watermarks were used per authentication cycle using the same λ and ω values. The throughput of the watermarked flows are compared to the average of several hundred baseline transmissions in the same environment. Transmission of more authentication cycles caused a decrease in the throughput of the network. In our experiments it was noted that there was an average of 0.54% decrease in throughput per additional authentication cycle transmitted, with a maximum performance penalty of 7.32% over our trials. Fig. 7 represents the cost of increasing the watermark length, tested using 6 watermarks per authentication cycle for 100% detection, and 1 watermark per authentication cycle for 95% detection. The cost of increasing the watermark from a length of 5 to 40 is a total decrease in throughput of 7.5%, with each additional bit costing, on average, a 0.036% decrease in throughput. Performance on a WLAN network had a greater degree of variance, primarily due to the nature of the network. Due to the bursty nature of a WLAN network, a higher proportional delay value was required for accurate detection. Testing was done at a detection accuracy of 90% (λ = 20ms), 95% (λ = 20ms), and 100% (λ = 22ms), with ω = 12ms (the optimal low value for our tested network) for each.
160
R. Newman and R. Beyah
Fig. 8 represents the cost of increasing the amount of authentication cycles per authentication period on a WLAN network. Each authentication cycle contains 6/3/2 watermarks for 100%/95%/90% detection respectively, consisting of 20 bits (or packets). In our experiments it was noted that there was, on average, a 0.63% decrease in network throughput per additional authentication cycle added, with a maximum decrease of 7.17%. Fig. 9 represents the cost of increasing the watermark length in a WLAN network. This figure contains a large degree of variance due to the nature of WLAN networks, but shows a general decrease in network throughput as the length of the watermarks are increased; with a larger amount of test data, we believe that this trend will smooth over time. On average adding an additional bit in a watermark on a WLAN network caused a 0.0435% decrease in throughput with, generally, an average maximum performance penalty of 8.54% when disregarding a single outlying value. All figures, while showing the general trend expected, are comprised of a limited set of trials. It is our belief that the anomalies within each figure will smooth over a larger number of trials.
7 Conclusion and Future Work While our specific application uses the Covert Timing Channel model to communicate authentication information, we investigate the use of the Covert Timing Channel model to transmit data in general. We show that the Covert Timing Channel method provides a secure, reliable, and cost effective process for which nodes may be authenticated within a network. Our model is highly scalable, easily adaptable and backwards compatible with existing technology, and provides excellent performance on switched LAN and WLAN networks. While the performance of this model is readily visible from the LAN and WLAN test results, we believe that this model could be extended for use over WAN networks as well; in our future work, we intend to show that this model will perform well over VPN connections. Additionally, we intend to investigate the effects of chaff packets on our method. Lastly, we shall apply our method to node authentication using real world traffic.
References 1. Cisco, NAC. http://www.cisco.com/en/US/netsol/ns466/ networking_solutions_package.html 2. Thumann, M., Roecher, D.: NAC@ACK: Hacking the Cisco Nac Framework. In: The Proceedings of Black Hat Europe (2007) 3. Cisco Security Response: AAA Command Authorization By-Pass. 0125-aaatcl.pdf (2006), http://www.cisco.com/warp/public/707/cisco-sr4. Pyun, Y.J., Park, Y.H., Wang, X., Reeves, D.S., Ning, P.: Tracing Traffic through Intermediate Hosts that Repacketize Flows. In: INFOCOM 2007. 26th IEEE International Conference on Computer Communications (2007) 5. Wang, X., Reeves, D.S.: Robust Correlation of Encrypted Attack Traffic through Stepping Stones by Manipulation of Interpacket Delays. In: Proc. of the 10th ACM conference on Computer and Communications Security (CCS), October 2003, pp. 20–29 (2003)
A Performance Analysis of Authentication Using Covert Timing Channels
161
6. Wang, X., Chen, S., Jajodia, S.: Tracking Anonymous Peer-to-Peer VoIP Calls on the Internet. In: Proc. of the 12th ACM conference on Computer and Communications Security (CCS), November 2005, pp. 81–91 (2005) 7. Peng, P., Ning, P., Reeve, D.S., Wang, X.: Active Timing-Based Correlation of Perturbed Traffic Flows with Chaff Packets. In: Proc. Of the 2nd International Workshop on Security in Distributed Computing Systems (SDCS), June 2005, pp. 107–113 (2005) 8. Want, X., Reeves, D.S., Ning, P., Feng, F.: Robust Network-Based Attack Attribution through Probabilistic Watermarking of Packet Flows. Technical Report TR-2005-10, Department of Computer Science, NC State Univ. (2005) 9. Peng, P., Ning, P., Reeves, D.S.: On the Secrecy of Timing-Based Active Watermarking Trace-Back Techniques. In: Proc. of the 2006 IEEE Symposium on Security and Privacy (S&P), May 2006, pp. 334–349 (2006) 10. Zhang, Y., Paxson, V.: Detecting Stepping Stones. In: Proc. of the 9th USENIX Security Symposium, August 2000, pp. 171–184 (2000) 11. Blum, A., Song, D.X., Venkataraman, S.: Detection of Interactive Stepping Stones: Algorithms and Confidence Bounds. In: Proc. of the 7th International Symposium on Recent Advances in Intrusion Detection (RAID), Octeber 2004, pp. 258–277 (2004) 12. Donoho, D.L., Flesia, A.G., Shankar, U., Paxson, V., Coit, J., Staniford, S.: Multiscale Stepping-Stone Detection: Detecting Pairs of Jittered Interactive Streams by Exploiting Maximum Tolerable Delay. In: Proc. of the 5th International Symposium on Recent Advances in Intrusion Detection (RAID), October 2002, pp. 17–35 (2002) 13. Zhang, L., Persaud, A., Johnson, A., Guan, Y.: Stepping Stone Attack Attribution in NonCooperative IP Networks. Iowa State University, Tech. Rep. TR-2005-02-1 (February 2005) 14. Takahashi, T., Lee, W.: An Assessment of VoIP Covert Channel Threats. In: Proc. of SecureComm 2007, 3rd International Conference on Security and Privacy in Communication Networks (2007) 15. Fu, X., Zhu, Y., Graham, B., Bettati, R., Zhao, W.: On Flow Marking Attacks in Wireless Anonymous Communication Networks. In: Proceedings of the 25th International Conference on Distributed Computing Systems (ICDCS) (2005) 16. Cabuk, S., Brodley, C., Shields, C.: IP Covert Timing Channels: Design and Detection. In: the Proceedings of the 11th ACM conference on Computer and Communications Security (October 2004) 17. Lampson, B.W.: A Note on the Confinement Problem. Communications of the ACM 16, 613–615 (1973) 18. Rowland, C.H.: Covert Channels in the TCP/IP Protocol Suite. First Monday 2.5 (May 1997) 19. Fisk, G., Fisk, M., Papadopoulos, C., Neil, J.: Eliminating Stenagraphy in Internet Traffic with Active Wardens. In: Information Hiding 2002, pp. 18–35. Springer, Heidelberg (2002) 20. Rutkowska, J.: The Implementation of Passive Covert Channels in the Linux Kernel. In: Chaos Communication Congress, Chaos Computer Club e.V. (2004) 21. route, alhambra. Project Loki. Phrack 7(49) (November 1996) 22. Moore, K.: On the Use of HTTP as a Substrate. Tech. Rep. In: Ternet Engineering Task Force, RFC 3205 (February 2002) 23. Brinkhoff, L.G.: httptunnel, http://www.nocrew.org/software/httptunnel.html 24. Covert Channels Definition, http://en.wikipedia.org/wiki/Covert_channel 25. Stenography Definition, http://en.wikipedia.org/wiki/Stenography 26. Netfilter / IPTables, http://www.netfilter.org/ 27. Tcpdump, http://www.tcpdump.org/
PassPattern System (PPS): A Pattern-Based User Authentication Scheme T. Rakesh Kumar and S.V. Raghavan Network Systems Laboratory, Department of Computer Science and Engineering, Indian Institute of Technology Madras Chennai-600036, India {rakeshk,svr}@cs.iitm.ernet.in
Abstract. Authenticating a user online, without compromising the user comfort is an important issue. The most popular approach to authenticate a user online is Password-based authentication. Studies show that, users (always) choose very simple passwords which are often easy to guess. On the contrary, randomly generated strings are difficult to remember, especially if the user is having many passwords. In this paper we present a dynamic password scheme based on patterns, called PassPattern System (PPS), which works using the existing infrastructure. PPS is an Adaptive Authentication System, where the strength of the system can be changed depending on the need of the application without compromising the user comfort. Keywords: User Authentication, Security.
1 Introduction "Open, Sesame!" is a classical example of using a SecretWord/Password in the famous tale Ali Baba and the Forty Thieves [1] to open the door of the magical cave. Since then SecretWord/Password has been used to authenticate the user before accessing any resource. With the advancement in computers, Internet and electronic commerce, authentication has become increasingly important. One of the main problems with the username-password scheme is ‘selection of the password’ itself. Studies show that users will always pick passwords which are short and easy to remember [2]. Often it is very easy to break the password of the user, if the personal information about him/her is known and more often than not, it is widely known. With technological advancement, alternative authentication schemes are reported in literature, which are more secure than the conventional Password-based scheme using Biometrics, RSA SecurID® [3], and Graphical passwords [4]. Each mechanism has its own advantages and disadvantages. One of the main reasons why password is still widely used is that newer technologies entail significant changes in the infrastructure of the system. Besides, the vulnerabilities of Graphical Passwords are still not fully understood and is an active area of research [4]. It appears that the need of the hour is to design an authentication scheme that is easy and intuitive to use, strong and robust against all possible attacks, and works using the existing hardware/software infrastructure. A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 162–169, 2008. © IFIP International Federation for Information Processing 2008
PassPattern System (PPS): A Pattern-Based User Authentication Scheme
163
In this paper we present the PPS, which is a dynamic password authentication system, where the user will prove to the system that he/she knows the secret instead of communicating it directly. PPS can be visualized as a challenge-response system, where in the response to a challenge is hardly reusable, there by rendering the replay attack or its variant ineffective. 1.1 Related Work There are several attempts reported in literature about authentication schemes in lieu of the traditional Password-based system. While each attempt is successful in increasing the strength of the system against some of the known attacks, they are either computationally intensive or they require additional hardware/software in the infrastructure. In this section we review the contemporary attempts, identify the gaps, and highlight the motivation for developing PPS. Password-based authentication. Password system is the oldest and the most popular authentication scheme used in the modern world. But users tend to choose simple passwords, which are easy to remember but they are very easy to break [2,5]. One way of preventing this is to provide users with a random password. While it is difficult for the user to remember, with contemporary computing power even a computer generated random password of length 8 characters is not strong enough for bruteforce attack; With Blue Gene/L1, it will take 1 hour to break password of length 10 characters. According to Microsoft “A strong password should appear to be a random string of characters to an attacker. It should be 14 characters or longer, (eight characters or longer at a minimum)” [6]. While it is recommended that user should not use same password for more than one account, it is quite common that the users have more than one online profile. Besides, users have to maintain a separate account for e-mail, social networking, e-banking, e-commerce, blogging, multimedia sharing, etc. Remembering a 14 character password for each account is difficult. The other way of increasing the strength of the password system is to make the password dynamic, i.e. the user has to enter a different password every time he/she does a login. But existing dynamic password or One-Time Password schemes either require extra hardware or complex mathematical operations. Biometrics. Biometrics comes under the category of authentication systems which use ‘What the user is’. The main disadvantage with any biometric system is the need for a change in the infrastructure of the entire system. For example if Yahoo wants to replace its authentication system from password to fingerprint based authentication, all the users have to install fingerprint readers on their computers and Yahoo should maintain a registry. This kind of change in infrastructure may not be feasible always. Moreover, biometrics are not often secret [7], as people publicly expose their voice and fingers in various ways on a regular basis, creating the possibility of biometric spoofing. For biometrics like Retina-based authentication and Vein-based authentication, spoofing is not possible but the installation cost is very high. Graphical passwords. The main idea of Graphical passwords [4] is that users find it easy to remember Graphical passwords than text-based passwords. Graphical 1
IBM Blue Gene is the current fastest super computer. [www.research.ibm.com/bluegene/]
164
T. Rakesh Kumar and S.V. Raghavan
passwords are more secure than text-based passwords from various attacks like dictionary attack, bruteforce attack and spyware. Some of the problems with the graphical passwords are that the users tend to choose the same sequence of images as their password making it easy to guess; Graphical passwords require much more storage than conventional text-based passwords. RSA SecurID®. RSA SecurID® is a two-factor authentication. It is based on something you know (a password or PIN) and something you have (an authenticator). RSA SecurID® is one of the dynamic password systems, where the user password will change for every login. Issues that cause concern are the cost and the possible of loss of physical devices. Virtual keyboard. Virtual keyboard is yet another user authentication system, where the user has to enter his/her password by clicking the characters on a virtual keyboard instead of typing the password on the conventional keyboard. While such a system is good against keyloggers and spywares, it is susceptible to other attacks like Shoulder surfing, guessing, and Social Engineering. Motivation for PPS. The discussions hitherto underline the need for an authentication system, that is simple, easy-to-use, inexpensive, incorporates the essence of challenge-response system, dynamically changing, robust against attacks such as bruteforce, dictionary, shoulder surfing, spyware, social engineering, ManIn-The-Middle attack and all above doesn’t demand any special hardware/software.
2 PassPattern System PassPattern System is a challenge-response system and is based on the premise that ‘humans are good at identifying, remembering and recollecting graphical patterns than text patterns’ [8]. The core idea of PassPattern system is that, ‘Instead of remembering a sequence of characters as the secret, users have to remember a shape (which is stored internally as a sequence of positions in hash form) as the secret’. Whenever the user wants to get authenticated, the PPS displays an NxN matrix of cells, which is known as PatternSquare. Each cell in the PatternSquare is an image, which represents a character as shown in Fig. 1(a). The character can be an alphabet, number or even special characters. The PatternSquare is the challenge that is sent by the server to the user. The PatternSquare will be generated dynamically upon each user request. Hence the characters in each cell of the PatternSquare may change or their position may change or both may change, for every authentication request. At the time of registration the user is asked to choose a sequence of positions as shown in Fig. 1(b), by typing the characters in those positions. The sequence of positions then becomes the user’s PassPattern. The cell sequence of the PassPattern so chosen will remain the secret between the user and the system. The user has to remember only the shape (cell sequence in the PatternSquare) as that is the only secret. For the user to get authenticated, he/she has to type the characters that are present in the chosen shape (PassPattern) in the PatternSquare. The cells in the PatternSquare are colored2 in such a way that, the user can see smaller 2
To enhance user convenience; no relationship to security of the PPS.
PassPattern System (PPS): A Pattern-Based User Authentication Scheme
(a)
165
(b)
Fig. 1. (a) A sample PatternSquare. This is the sample of the image that the user will see, whenever he/she wants to login to the system. (b) A sample user choice of a PassPattern. A user can choose any sequence of positions as the PassPattern.
subsections of the PatternSquare (3 x 3 in our example), which makes it easy for him to remember his PassPattern. Whenever the user wants to login to the system, the user has to type the sequence of characters which appear in the user’s PassPattern presented by the system as a challenge (This sequence of characters is referred to as SecretWord). During every presentation of the PatternSquare, the contents change and hence the user has to type a different SecretWord as shown in Fig. 2, during every authentication process such as login.
Fig. 2. The above figure shows PatternSquares that are displayed to the users at different login attempts. SecretWords corresponding to the PassPattern in Fig. 1(b) will be “t?X4”, “@?7-” and “b-97”.
2.1 Design Issues PPS allows users to choose any set of characters as their PassPattern. The user can select the PassPattern based on some sequences familiar to him/her, for example knight’s moves on a chess board or some symmetric positions. Because of the coloring2 of the cells, remembering the PassPattern will be easy. The PPS comprises of 4 parts - PPS software, Pseudo-Random number generator, Image generator, and PassPattern database. PPS software controls all activities in the system, Pseudo-Random number generator and Image generator are used to create dynamic challenges and PassPattern database stores all the PassPatterns of the users. Internally the cells of the PatternSquare are indexed in row-major order (and left to
166
T. Rakesh Kumar and S.V. Raghavan
right), starting from 0 to N2-1 (where N is the size of the matrix). Hence the PassPattern of a user will be stored as a string of numbers. Both PassPattern and usernames will be stored in the database as Hash, using MD5 hash function. Registration phase. Whenever a user sends a request for new registration, the server will create two S-seeds based on the “current clock time” (This seeds are valid only for that session at the server). Using S-seeds as the seed values, the Pseudo-Random generator will (randomly) pick two sets of 49 characters (for a 7x7 matrix) out of 94 printable characters in ASCII. The Image generator takes these characters and creates two sets of 49 images and sends the images to PPS Software. PPS Software creates two PatternSquares using the images and sends them to user as challenges. These two challenges are similar to the process of retyping the password in traditional password systems at the time of registration. The S-seed values are preserved as the session variable (in physical memory) for the verification phase.
(a)
(b)
Fig. 3. (a) Registration phase in the PPS. (b) Validation and Creation of the user account.
Once the user gets these two challenges, the user has to type the username and SecretWords. The SecretWords will be based on the user selection of the PassPattern. The PPS checks both the PassPatterns and if they are same, then the PPS calculates the MD5 Hash of the username and PassPattern and stores them in the PassPattern database and acknowledges the successful registration to the user. The Authentication phase. Whenever a user makes a login or authentication request, the PPS Software creates the PatternSquare (similar to the registration phase) and sends it to the user as a challenge. Once the user gets the challenge, the user has to type the username and the SecretWord which is based on his/her PassPattern and the PatternSquare (Secret and Challenge). The PPS software calculates the MD5 Hash of the username and PassPattern and compares the result with the value stored in the PassPattern database. Based on the comparison results, the user will be either allowed or rejected.
PassPattern System (PPS): A Pattern-Based User Authentication Scheme
(a)
167
(b)
Fig. 4. (a) Challenge creation phase in the PPS. (b) Response validation phase in the PPS.
Other Design Issues. PPS is an adaptive user-authentication system. The strength of PPS can be adapted for various situations. The strength of the PPS can be varied by changing two parameters – the size of the PatternSquare and the type of image. The first method is to change the size of the PatternSquare, i.e. the more the size, more is the security. Number of possible patterns of length n in an NxN matrix will be (N2)n. Thus, as the size of PatternSquare (N) increases, the total possible number of PassPatterns will increase, which in turn increases the strength of the system. The second method of increasing the security is by changing the type of the image in the PatternSquare. The strength of the system can be drastically improved by changing the type of the image. Each character in the PatternSquare can be represented with different coding, compression, noise, distortion, and even as a CAPTCHA3 image.
3 Security Strength of PPS In general, several attacks are possible on an authentication system. For any authentication system, the hacker can attack at least at three places; they are server, client, and the communication link. The different attacks on sever includes Bruteforce attack, Dictionary attack, attack on PassPattern database, and compromising the server as a whole. At the client, the possible attacks are keylogging and shoulder surfing. Finally on the communication link, the possible attack is Man-In-The-Middle attack, which can be done using packet sniffers. In terms of the data being passed from the user to the server and the data which is being stored in the server PPS is comparable with the classical Password-based authentication system. In both cases, user sends the username and a SecretWord and this will be compared with the registry in the database. But because of the dynamic nature of the challenge-response system, PPS is more secure than Password-based scheme to attacks such as Bruteforce, Dictionary attack, Keylogger, and Shoulder surfing. For the rest of the attacks, PPS is as vulnerable as Password-based schemes 3
CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart) is a test used in computing to determine whether the user is human. For more information on the CAPTCHA refer [http://www.captcha.net].
168
T. Rakesh Kumar and S.V. Raghavan
(e.g. Server database compromise attack). The best known solution for such attacks is to use cryptography protocols at the server or on the communication link. In this section we analyze the impact of the four attacks mentioned here on PPS. Bruteforce attack. The hacker can try two kinds of Bruteforce attacks on this system. The first way of attacking the system is to ignore the PatternSquare and try with some random string. For a user PassPattern of length 4, there will be a unique SecretWord for the given session. If the hacker wants to guess that SecretWord, the probability of success will be 1/(944) = 1.28x10-8 (Since there are 94 printable characters). If the guess is wrong the probability of success will remain same for the next guess, it is because the SecretWord will change with every attempt. Hence, The probability of success for every attempt =
1 94n
(1)
The other way of doing Bruteforce search is to try all combinations of positions. For example, if we consider a 7x7 PatternSquare there will be 49n (if selection of PassPattern includes reuse of positions) or 49Pn (without reuse of positions) different patterns of length n. ⎧( N 2 ) n ⎪ Number of possible PassPatterns = ⎨ N 2! ⎪ ( N 2 − n)! ⎩
(2)
To break the system, the hacker on an average has to break (nx49n)/2 images (with reuse) or (nx49Pn)/2 (without reuse). ⎧ n × ( N 2 )n ⎪ 2 ⎪ Number of images that are to be broken = ⎨ (3) n × N 2! ⎪ ⎪⎩ 2 × ( N − n)! N represents the size of the PatternSquare and n represents the length of the PassPattern. Dictionary attack. Dictionary attack is one of the most commonly used techniques to break a Password-based system. In the case of PPS commonly used shapes, sequences can be possible candidates in a dictionary. However, as the PatternSquare changes randomly on every presentation, it approaches the behavior of one-time pad. Keyloggers. Keylogger is a program, which captures the user’s keystrokes and sends this information to the hacker. The natural protection for an authentication system from the keylogger is to have a one-time password (or Dynamic password). PPS being a dynamic password system, is not vulnerable to keyloggers. Even if the hacker gets the SecretWord of the user of a PPS system, this SecretWord cannot be reused by the hacker to login to the system, because of the dynamic nature of the PatternSquare. Shoulder surfing. Shoulder surfing is looking over someone’s shoulder when they enter a password or a PIN code. It is an effective way to get information in crowded places because it is relatively easy to stand next to someone and watch as they fill out a form, enter a PIN number at an ATM machine, or use a calling card at a public pay
PassPattern System (PPS): A Pattern-Based User Authentication Scheme
169
phone. Shoulder surfing can also be done at a distance with the aid of binoculars or other vision-enhancing devices to know the password. Shoulder surfing can be done easily on the password system, just by seeing the keys that the user is typing. But to decode the PassPattern in the PPS, the hacker has to see both the key sequence and the PatternSquare and do a mapping before the user submits the page. So shoulder surfing is of little or no use in PPS as compared to a Password-based system.
4 Conclusion In this paper we presented PPS, a user authentication system which can be a potential replacement to classical Password-based authentication system. The strength of the system can be changed by varying the size of the PatternSquare and the type of image associated witch each cell of the PatternSquare without increasing the length of the PassPattern. PPS is very easy for the user to use and at the same time it is more secure than conventional Password-based system. An existing Password-based system can be migrated to PPS, without any change in the infrastructure. Some of the open problems in this area are: What is the ideal length of the PassPattern? What is the ideal size of the PatternSquare? What is the general user behavior while choosing a PassPattern? Prototype of the PPS is available at http://netlab.cs.iitm.ernet.in/pps
References 1. McCaughrean, G.: One Thousand and One Arabian Nights, USA. Oxford University Press, Oxford (1999) 2. Adams, M.A., Sasse, M.S.: Users are not the enemy: why users compromise computing security mechanisms and how to take remedial measure. Communications of the ACM 42(12), 40–46 (1999) 3. RSA Security Inc. RSA SecurID® authenticators, http://www.rsasecurity.com 4. Suo, X., Owen, Y.Z.: Graphical Passwords: A Survey. In: 21st Annual Computer Security Applications Conference (ACSAC 2005), pp. 463–472 (2005) 5. Gilhooly, K.: Biometrics: Getting Back to Business. Computerworld (May 09, 2005) 6. Strong passwords: How to create and use them, http://www.microsoft.com/ protect/yourself/password/create.mspx 7. Brainard, J., Juels, A., Rivest, R.L., Szydlo, M., Yung, M.: Fourth-Factor Authentication: Somebody You Know. In: Proceedings of the 13th ACM conference on Computer and communications security, pp. 168–178 (2006) 8. Shepard, R.N.: Recognition memory for words, sentences and pictures. Journal of verbal Learning and verbal Behavior 6, 153–163 (1967)
A Secure and Efficient Three-Pass Authenticated Key Agreement Protocol Based on Elliptic Curves Meng-Hui Lim1 , Chee-Min Yeoh1 , Sanggon Lee2 , Hyotaek Lim2 , and Hoonjae Lee2 1
Department of Ubiquitous IT, Graduate School of Design & IT, Dongseo University, Busan 617-716, Korea {menghui.lim,yeohcm}@gmail.com 2 Division of Computer and Information Engineering, Dongseo University, Busan 617-716, Korea {nok60,htlim,hjlee}@dongseo.ac.kr
Abstract. Key agreement protocol is of fundamental importance in providing data confidentiality and integrity between two or more parties over an insecure network. In 2004, Popescu [14] proposed an authenticated key agreement protocol in which its security is claimed. However, Yoon and Yoo [19] discovered its vulnerabilities two years later and proposed an improved variant of it. In this paper, we highlight the vulnerability of this improved variant under the LaMacchia et al.’s extended Canetti-Krawczyk security model [12]. With this, we propose another enhanced version of Popescu’s protocol which offers stronger security features and appears to be significantly more efficient than Yoon-Yoo’s scheme. In order to justify our claims, we present a thorough heuristic security analysis on our scheme and compare the computational cost and security attributes with the surveyed schemes.
1
Introduction
Authenticated key agreement protocol is essential for two or more specific entities to communicate securely over an open network (e.g. the Internet), in which the communication can be fully controlled by adversaries. The protocol must be properly designed in such a way that at the end of the protocol execution, both communicating parties can be assured of each other’s identity and agreed on an unique shared secret key (also known as session key) based on the information contributed equally by each party. Once the key agreement is successfully carried out, the derived session key can be used subsequently to create a confidential channel particularly for preserving data confidentiality and integrity. Therefore, an authenticated key agreement protocol should strictly prohibit other unauthenticated parties aside from the intended protocol participants from gaining access to the shared secret under any circumstances.
This work was supported by MIC of Korea, under ITRC support program supervised by IITA (IITA-2007-C1090- 0701-0026).
A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 170–182, 2008. c IFIP International Federation for Information Processing 2008
A Secure and Efficient Three-Pass Authenticated Key Agreement Protocol
171
Key agreement protocols can employ symmetric or/and asymmetric cryptography in its construction. Generally, symmetric protocols require a common secret key to be shared in prior between the communicating parties whereas asymmetric or public key-based protocols require the communicating entities to learn only specific authenticated public information of their peer (such as identity, public key, etc.), which is usually exchanged via certificates. This paper is concerned with two-party authenticated key agreement protocols in the asymmetric settings. Over the years, there has been overwhelming interest in the use of public keybased cryptography, mainly due to the employment of elliptic curve operations in constructing cryptographic key agreement protocols. However, as designing a secure and efficient protocol is far from being a simple task, many protocols have been proven to be fallible. Strangio [16], in 2005, has proposed an efficient two-party elliptic curve based key agreement protocol, namely ECKE1, which is believed to be secure at the first glance since the security attributes are well discussed in his work. Unfortunately, Wang et al. [18] have revealed a weakness in Strangio’s protocol recently. Specifically, they have presented a valid key compromise impersonation attack on it. Besides, Duraisamy et al. [8] have also pointed out a similar attack independently. To defeat the vulnerability of ECKE1, Wang et al. [18] and Strangio [17] have proposed their revised version of ECKE1, namely ECKE1N and ECKE1R respectively at the expense of a higher computational workload. In 2004, Popescu [14] has proposed another notable key agreement scheme, in which the author claimed such protocol to be secure and more efficient than the exisitng ones due to its low computational cost required at both communicating entities. However, in 2006, Yoon-Yoo [19] have subverted Popescu’s claim by exploring a series of cryptographic attacks which encompass a key-compromise impersonation attack, a reflection attack and a replay attack. Subsequently, Yoon-Yoo have proposed another improved scheme [19] in order to defeat these vulnerabilities. To justify their claims on the security of their protocol, they have demonstrated a detailed heuristic security analysis on it. In this paper, we point out that Yoon-Yoo’s improved scheme [19] does not seem secure when both ephemeral keys of a specific completed session are exposed to a passive adversary who only eavesdropped on the session. This compromise of session-specific secret information is regarded as one of the essential attacks captured by the extended Canetti-Krawczyk security model [12]. Based on the shortcoming, we propose another improved variant of Popescu’s protocol [14] and we claim that our protocol is able to achieve a stronger and higher sense of security and efficiency as compared to Yoon-Yoo’s scheme. The structure of this paper is organized as follows. In Section 2, we illustrate the basic concepts needed to evaluate the security properties of a key agreement protocol and define the elliptic curve as well as several hard cryptographic problems. In section 3, we revisit Yoon-Yoo’s improved scheme and illustrate its insecurity. We propose an efficient three-pass authenticated key agreement protocol and evaluate its security in sections 4 and 5 successively. In Section 6, we compare our scheme with
172
M.-H. Lim et al.
the other existing key agreement schemes in terms of computational efficiency and security. Lastly, we conclude this paper in Section 7.
2 2.1
Preliminaries Security Properties of Key Agreement Protocol
There are numerous security attributes that have been defined and discussed, specifically for the analysis of the key agreement protocols. The most fundamental property of a key agreement protocol is the passive attack resilience, that is, the protocol should be able to prevent the adversary from obtaining the session key or any other useful information (such as ephemeral keys) by merely eavesdropping on the protocol. On top of that, we also assume that the adversary has full control of the communications on the open network, such that the adversary is capable of intercepting, deleting, injecting, altering and replaying messages in any online instance of the key agreement protocol. These potential attacks has in fact led to the additional security properties: known session key security, perfect forward secrecy, key compromise impersonation resilience, unknown key-share resilience and key control resilience. Please refer to Blake-Wilson and Menezes’s definition of these security attributes [4,3] for an excellent overview. 2.2
Elliptic Curve Cryptography
The notion of elliptic curve cryptography was first introduced independently by Miller [13] and Koblitz [10]. Since then, numerous elliptic curve cryptosystems have been proposed and employed. The main attraction of it is that it allows much smaller parameters (e.g. key size) to be employed in order to achieve an equivalent level of security as compared to the traditional public-key cryptosystems such as RSA and DSA. Since an elliptic curve cryptosystem, that is mainly based on the intractability of Elliptic Curve Discrete Logarithm Problem (ECDLP), takes full exponential time, its resistance against the sub-exponential attack offers potential reductions in processing power and memory size which is essential in applications on constrained devices [15]. Let E(Fq ) be an elliptic curve of defined over a finite field Fq of characteristic p. The public elliptic curve domain parameters over Fq is defined as a 8-tuple (q, F R, S, a, b, P, n, h), where q is the prime order of the field, F R (field representation) indicates the representation used for the elements of Fq , S is the random seed for elliptic curve generation, the coefficients a, b ∈R Fq define the equation of elliptic curve E over Fq (y 2 = x3 + ax + b for p = q > 3, where 4a3 + 27b2 = 0), the base point P = (xp , yp ) in E(FQ ), the prime n is the order of P (n > 2160 ) and the cofactor h = E(FQ )/n, where E(FQ ) denotes the number of FQ -rational points on E. These parameters should be chosen appropriately to prevent the employment of any efficient algorithm from solving the Discrete Logarithm Problem (DLP) or the computational Diffie-Hellman Problem (CDHP) in the cyclic subgroup P [16].
A Secure and Efficient Three-Pass Authenticated Key Agreement Protocol
173
Since many cryptographic primitives base their security on the underlying assumptions in which the DLP and CDHP on some cyclic groups are intractable, our proposed key agreement protocol would not be exceptional. Our protocol also rests upon a few related conjectures before its security can be claimed. Now, we define several cryptographic problems which we will assume their hardness throughout this paper. Conjecture 1 (ECDLP). Let E(Fq ) and P be defined as above. The Elliptic Curve Discrete Logarithm Problem is said to be intractable if for any probablilistic polynomial time Turing Machine A with the knowledge of Y = xP , where Y ∈ P , the probability of success in computing logP Y = x ∈R ecdlp [1, n − 1], denoted as SuccP,E(Fq ) (A) is negligible: ⎡
⎤ x ∈R [1, n − 1]; ecdlp ⎦ ε, Y = xP ; SuccP,E(Fq ) (A) = P r ⎣ A(n, P, Y ) = logP Y where the probability is taken over the coin tosses of A for any random choice of x. Conjecture 2. (ECCDHP). Let E(Fq ) and P be defined as above. The Elliptic Curve Computational Diffie-Hellman Problem is said to be intractable if for any probablilistic polynomial time Turing Machine A with the knowledge of R = rP and S = sP , where R, S ∈ P , the probability of success in computing rsP , denoted as Succeccdhp P,E(Fq ) (A) is negligible: ⎡
⎤ r, s ∈R [1, n − 1]; eccdhp SuccP,E(Fq ) (A) = P r ⎣ R = rP ; S = sP ; ⎦ ε, A(n, P, R, S) = rsP where the probability is taken over the coin tosses of A for any random choices of r and s. Conjecture 3 (ECDDHP). Let E(Fq ) and P be defined as above. The Elliptic Curve Decisional Diffie-Hellman Problem is said to be intractable if for any probablilistic polynomial time Turing Machine A with the knowledge of R = rP and S = sP , where R, S ∈ P , the probability of success in distinguishing the two probability distributions (P, R, S, Q) and (P, R, S, T ), ecddhp denoted as SuccP,E(Fq ) (A) is negligible: ⎡
⎤ r, s, t ∈R [1, n − 1]; ⎢ R = rP ; S = sP ; Q = rsP ; T = tP ; ⎥ ⎢ ⎥ 1 ecddhp ⎥ + ε, b ∈R [0, 1]; SuccP,E(Fq ) (A) = P r ⎢ ⎢ ⎥ 2 ⎣ ⎦ if(b = 0), U = T, else U = Q; A(n, P, R, S, U ) = b where the probability is taken over the coin tosses of A for any random choices of r, s and t.
174
3
M.-H. Lim et al.
Revisiting Yoon-Yoo’s Key Agreement Protocol
This section reviews an improved variant of Popescu’s protocol due to Yoon and Yoo [19]. Figure 1 gives a clear description of this three-pass protocol. The two communication parties are specified to be A (initiator) and B (responder), with their long term public/private key pairs (YA /sA ) and (YB /sB ) (where YA = sA P and YB = sB P ), and their chosen ephemeral secret key rA and rB respectively. Consider that the static public keys are exchanged via certificates, which are generally issued by a Certification Authority (CA) binding each entity’s identity (IDA /IDB ) to his/her long term public key (YA /YB ). Once the message exchange is completed, the session key, KAB is computed as H(IDA , IDB , xVA , xVB , xK2 , xK1 ), where K1 = rA rB sA P and K2 = rA rB sB P are the shared secrets. The conjectured security attributes of this protocol are known key security, perfect forward secrecy, key compromise impersonation resilience, session key security, reflection resilience and replay resilience.
A
B
(sA , YA )
(sB , YB )
rA ∈R [1, n − 1] VA = rA P QA = rA YA VA , QA −−−−−−−−−→
rB ∈R [1, n − 1] K1 = rB QA = rA rB sA P K2 = rB sB VA = rB rA sB P VB = rB P QB = rB YB
eB = H(IDA , IDB , xVB , xK1 , xK2 )
CB = e−1 B (sB − xVB rB ) mod q
K1 = rA sA VB = rA rB sA P
VB , QB , CB ← −−−−−−−−−− −
K2 = rA QB = rA rB sB P
eB = H(IDA , IDB , xVB , xK1 , xK2 )
Abort if VB = x−1 V (YB P − eB CB P ) B
eA = H(IDA , IDB , xVA , xK2 , xK1 )
CA =
e−1 A (sA
− xVA rA ) mod q
CA − −−−−−−−− →
eA = H(IDA , IDB , xVA , xK2 , xK1 )
Abort if VA = x−1 V (YA − eA CA P ) A
KAB = H(IDA , IDB , xVA , xVB , xK2 , xK1 )
Fig. 1. Yoon-Yoo’s Improved Variant of Popescu’s Key Agreement Protocol
A Secure and Efficient Three-Pass Authenticated Key Agreement Protocol
3.1
175
The Insecurity of Yoon-Yoo’s Scheme in the Extended Canetti-Krawczyk Security Model
Recently, LaMacchia et al. [12] have extended the Canetti-Krawczyk security model [6] for authenticated key exchange to achieve a stronger sense of security by capturing all possible attacks resulting from ephemeral and long-term data compromise. Specifically, they view the message exchange and the computation of a common session key as a function of at least four pieces of secret information, which encompass their own long-term and ephemeral secret keys and the other party’s static and ephemeral secret keys. Of these four pieces of information, the adversary in their model is allowed to reveal any subset of the four which does not contain both the long-term and ephemeral secrets of one of the parties that would trivially break the scheme. For passive sessions where the adversary has only the eavesdropping ability (without active intervention in the session establishment), the adversary may reveal both ephemeral keys, both long-term secret keys, or one of each from the two different parties once the session is established. For example, as defined by Krawczyk [11], the weak Perfect Forward Secrecy (wPFS) is concerned with the security against revelation of both the long term keys after the passive session is completed. For active sessions where the adversary may forge the communication of one of the parties during protocol execution, the adversary is allowed to reveal a long-term secret key or ephemeral secret key of the other party. This is because if the adversary can also reveal the long term key of the same party, then the adversary can trivially compute the session key. As pointed out by Krawczyk [11], this is the unattainable full Perfect Forward Secrecy property for two-pass AKE protocol. By considering only passive sessions in this part of our analysis, we now prove that Yoon-Yoo’s scheme is insecure under the extended Canetti-Krawczyk security model. As claimed by Yoon and Yoo, their improved protocol indeed provides weak perfect forward secrecy as the compromise of both long term keys of A and B (sA , sB ) would not expose any of the established session keys to the adversary. Also, it is easy to see that the security of the session key remains valid even if we consider the exposure of the static key and ephemeral key, one of each from the two different parties, (sA , rB ) or (sB , rA ) after the session completes. The revelations in these two cases truly prevent the adversary from reconstructing both the shared secrets K1 and K2 of their protocol. However, the analysis does not end here. Notice that if both the ephemeral secrets rA and rB are revealed to the passive adversary, she would then be able to recompute the shared secrets K1 = rB QA = rA rB sA P , K2 = rA QB = rA rB sB P and reconstruct the session key without needing to learn any of the static private keys sA or sB . In fact, this leakage can possibly happen in practical scenario as the ephemeral secret information may be stored in insecure memory or the random-number generator of a party may be corrupted. As a result, the adversary is able to gain access to the ephemeral data and recompute the session key, which renders the specific session insecure.
176
4
M.-H. Lim et al.
A Secure and Efficient Authenticated Key Agreement Protocol
Now we propose a secure and efficient authenticated key agreement protocol. As usual, the two communicating parties are A and B with their long term public/private key pairs (YA /sA ) and (YB /sB ) respectively. In this protocol, we employ two independent one-way collision-free hash functions, namely H1 : {0, 1}∗ → Fq and H2 : {0, 1}∗ → {0, 1}k , where k is the security parameter. Assume that the public keys are exchanged via certificates. Our key agreement protocol can be performed as follows: 1. Initially A selects a random rA ∈R [1, n − 1] and computes TA = rA YA .
(1)
In the similar manner, B selects a random rB ∈R [1, n − 1] and computes TB = rB YB .
(2)
Then, A, in the role of the initiator, initiates the key agreement process by sending TA to B. 2. Upon receiving A’s message, B computes accordingly K = hrB sB TA = hrA rB sA sB P,
(3)
eB = H1 (IDA , IDB , xTA , xTB , xK ),
(4)
zB = rB + eB sB mod q,
(5)
where xTA denotes the x-coordinate of TA , xTB denotes the x-coordinate of TB , xK denotes the x-coordinate of K and h denotes the cofactor. Finally, B, in the role of the responder, sends the triple (TB , zB ) to A. 3. On reception of B’s message, A calculates
and verifies whether
K = hrA sA TB = hrA rB sA sB P,
(6)
eB = H1 (IDA , IDB , xTA , xTB , xK ),
(7)
TB = zB P − eB YB
(8)
?
holds. If the verification fails, A terminates the execution. Otherwise, A proceeds to compute eA = H1 (IDA , IDB , xTB , xTA , xK ),
(9)
zA = rA + eA sA mod q
(10)
accordingly and then sends zA to B.
A Secure and Efficient Three-Pass Authenticated Key Agreement Protocol
4. B computes
177
eA = H1 (IDA , IDB , xTB , xTA , xK ),
(11)
TA = zA P − eA YA
(12)
and checks whether
?
holds. If the verification fails, A terminates the execution. Otherwise, B can be assured of A’s identity. 5. At last, both A and B terminate and agree on the common session key which is computed as KAB = H2 (IDA , IDB , xTA , xTB , zA , zB , xK ).
5
(13)
Security Analysis
In this section, we scrutinize our proposed key agreement protocol in detail so as to ensure that our protocol is able to achieve the desired security attributes of a key agreement protocol and also able to resist against the known cryptographic attacks. Known session key security (KSK-S). As shown in our protocol description, the session key is derived from the ephemeral keys (rA , rB ) of the specific session and the long term keys (sA , sB ) of the protocol entities. This would result in distinct independent session key in each protocol execution. On top of that, a one-way collision-resistant cryptographic hash function is used to derive the session key. Thus, obtaining any other session keys would not benefit the adversary in mounting a successful attack against a protocol run without the information set (rA , sA ) or (rB , sB ) which is required in the computation of the shared secret K. Therefore, based on the conjectures that we have defined in Section 2, we claim that the knowledge of some previous session keys would not allow the adversary to gain any advantage in deriving any future and other previous session keys. Weak Perfect Forward secrecy (wPFS). Suppose that both A and B’s long term private key sA and sB have been exposed. However, the adversary, with the eavesdropped information (TA , TB , zA , zB ) of any particular session, would not be able to recover the respective established session key since the adversary does not know the involved ephemeral private key rA or rB which are needed in the computation of the shared secret K. And also, the intractability of ECCDHP has significantly thwarted the adversary’s attempt in computing K by using merely TA and TB . Hence, we claim that our enhanced protocol enjoys weak perfect forward secrecy. Key-Compromise Impersonation Resilience (KCI-R). Suppose that A’s long term private key sA has been compromised and instead of directly impersonating A, the adversary now wishes to impersonate B in order to establish a session with A. However, the adversary is unable to compute the shared secret K with the available information (sA , rB , TA ) since the required information set is (rA , sA , TB ) or (rB , sB , TA ). Even if the adversary
178
M.-H. Lim et al.
is able to compute K by some means and subsequently eB , she would again face difficulty in computing zB in which it is impossible without the knowledge of sB . Hence, the adversary is significantly prevented from launching a successful KCI attack against our protocol. Generally, the same situation will result when the long term key sB is compromised (the adversary would impersonate A in this case and her effort will be foiled in computing K and zA ) as our key agreement protocol is symmetric. As a result, we claim that this protocol is able to withstand the KCI attack under all circumstances. Key Replicating Resilience (KR-R). The key replicating attack was first introduced by Krawczyk [11] where the illustration of it involves oracle queries described in Bellare and Rogaway’s random oracle model [1,2]. This attack, if successfully carried out by the adversary, would force the establishment of a session, S (other than the Test session or its matching session) to agree on a same session key as the Test session, by means of intercepting and altering the message from both communicating parties during transmission. Since the Test session and S are non-matching, the adversary may issue a Reveal query to the oracle associated with S and she can then distinguish whether the Test session key is real or random. (See [5,11] for more details on this attack.) Notice that the message integrity of TA and TB has been guaranteed by having each party to calculate the hash function eA and eB which will be bound to zA and zB respectively. Since the adversary has no idea in forging zA or zB along with TA or TB in such a way that the verification steps in Eqs. (8) or (12) would yield a positive result, she would not be able to force the establishment of non matching sessions to possess a common session key. As a result, if the adversary reveals A’s session key, she would not be able to guess B’s session key correctly with non-negligible probability and vice versa. On top of that, A and B also include the session identifiers (TA , TB , zA , zB ) in the key derivation function in Eq. (13) so as to fully eliminate the possibility of this attack [7]. Therefore, we claim that our protocol is secure against the key replicating attack. Unknown Key-Share Resilience (UKS-R). It is apparent that an adversary masquerading as another legal entity E cannot deceive A into believing that messages received from E are originated from B, even if the adversary could obtain E’s certificate. Suppose that in a protocol run, the adversary intercepts the second flow of message transmission, erases B’s certificate and attaches E’s certificate to the message, and sends (TB , zB ) along with E’s certificate to A. After computing eE = H1 (IDA , IDE , xTA , xTB , xK )
(14)
A would eventually terminate the protocol execution as she verifies that TB = zB P − eE YE ?
(15)
does not hold. As a result, the attack attempt fails. It is easy to see that this attack does not work on tricking B in the similar manner by attaching E’s certificate to A’s message. In a nutshell, we speculate that the inclusion
A Secure and Efficient Three-Pass Authenticated Key Agreement Protocol
179
of A and B’ identity (IDA and IDB ) in the hash function eA and eB along with the employment of the sender’s public key in the verification steps in Eqs. (8) and (12) would significantly prevent the adversary from launching the unknown key-share attack on our proposed protocol. Replay Resilience (R-R). In any protocol run, an adversary may attempt to deceive a legitimate participant through retransmitting the eavesdropped information of the impersonated entity from a previous protocol execution. Although the adversary might be unable to compute the session key at the end of the protocol run, her attack is still considered successful if she manage to trick the protocol entity to complete a session with her, believing that the adversary is indeed the impersonated party. In this replay analysis, we reasonably assume that the prime order n of point P is arbitrarily large such that the probability of a protocol entity selecting the same ephemeral key (rA , rB ∈ [1, n − 1]) in two different sessions is negligible. Consider a situation where the adversary (masquerading as A) replays A’s first message (TA(old) ) from a previous protocol run between A and B. After B has sent her a fresh (TB , zB ) in the second message flow, the adversary would abort since she could not produce (by means of forging or replaying) zA corresponding to TB . Notice that the same replay prevention works in the reverse situation where B’s message is replayed. The adversary would fail eventually in generating zB corresponding to the fresh TA . Hence, we claim that message replay in our protocol execution can always be detected by both A and B. Key Control Resilience (KC-R). Obviously in our protocol, no single protocol participant could force the session key to a predetermined or predicted value since the session key KAB is computed from the shared secret K which consists of both A and B’s long term and ephemeral keys. Besides all these security attributes, we also speculate that our protocol is able to overcome the security flaw of Yoon-Yoo’s protocol and achieves a stronger sense of security as specified in LaMacchia’s model. Note that in our protocol, the only way to compute the shared secret K = rA rB sA sB P (for reconstructing the session key) is to employ both ephemeral key and secret key of the same protocol participant, along with the other participant’s public information TA or TB . Thus, this fully prevents a passive adversary to recompute the established session key by revealing any other subset of the four secret keys (rA , sA , rB , sB ).
6
Comparison of Elliptic Curve Based Key Agreement Schemes
The computational efficiency of elliptic curve based key agreement schemes mainly relies on the number of major operations (elliptic curve scalar point multiplication and point addition) that is required to be performed by each protocol entity in a protocol run. In other words, while preserving the desired security features, one may need to minimize the number of these operations in ensuring the performance of key agreement protocol.
180
M.-H. Lim et al. Table 1. Comparison of Online Computational Efficiency Without With precomputations precomputations Protocol
Pass PSM PA FM
H
PSM PA FM
H
Popescu [14]
2
3
0
0
1
1
0
0
0
ECKE1 [16]
2
3
1
4
3
2
1
2
2
ECKE1N [18]
2
4
2
2
2
3
2
0
1
ECKE1R [17]
3
4
1
3
3
3
1
1
2
Yoon-Yoo [19]
3
6
1
5
3
4
1
2
3
Our Protocol
3
4
1
3
2
3
1
1
2
Table 1 summarizes the comparison of the online computational efficiency between the existing elliptic curve based key agreement schemes with our proposed scheme. Note that we do not consider pairing based schemes in our comparison work as the computation of a paring operation is equivalent to several times of an elliptic curve point scalar multiplication, which would turn out to be trivially inefficient. Moreover, we record the online computational operations such as point scalar multiplications (PSM), point addition/point subtraction (PA), field multiplication (FM) and hash function (H) with and without precomputations. For ease of comparison, we treat all the key derivation functions employed in the surveyed protocols as hash functions. And also, among the surveyed schemes, Popescu [14] and Yoon-Yoo [19] have ignored the cofactor in describing their protocol which is required to ensure that the point sent is a member of the prime order subgroup. To illustrate a fairer comparison, we assume that the shared secret(s) in their schemes are computed as a function of the cofactor h, in which we replace K = rA rB P with K = hrA rB P in Popescu’s protocol and in Yoon-Yoo’s protocol, we replace K1 = rA rB sA P with K1 = hrA rB sA P , K2 = rA rB sB P with K2 = hrA rB sB P in this efficiency analysis. Table 2 illustrates the comparison of security properties offered by the surveyed schemes with our proposed scheme. EE basically refers to the secuity against the compromise of both parties’ ephemeral secret for a passive completed session and ES refers to the similar security except that for the ephemeral and the static key, one of each from the two different parties is exposed. From Table 1, it is apparent that the two-pass key agreement protocols require lesser computational requirements than the three-pass schemes do. Despite being more efficient, all of them except Popescu’s scheme exchange unauthenticated messages, which means that private keys are not used in the message construction. This has led to session key establishment without authenticating the partner’s identity in prior. And also, as time synchronization is not always feasible, two-pass protocols can hardly withstand the replay attack even though the transmitted message is signed with the long term private key (since the signed message can also be replayed), as illustrated in Table 2. Basically, the inherent demerits of two-pass protocol can be successfully overcome by the three-pass schemes, where Yoon-Yoo’s scheme [19] (except for the EE attribute), Strangio’s revised scheme ECKE1R [17] and our scheme offer
A Secure and Efficient Three-Pass Authenticated Key Agreement Protocol
181
Table 2. Comparison of Conjectured Security Attributes Protocol
ES
Popescu [14]
KSK-S wPFS KCI-R KR-R UKS-R R-R KC-R EE √ √ √ √ √ X X X √ √ √ √ √ √ ECKE1 [16] X X √ √ √ √ √ √ √ ECKE1N [18] X √ √ √ √ √ √ √ √ ECKE1R [17] √ √ √ √ √ √ √ Yoon-Yoo [19] X √ √ √ √ √ √ √ √ Our Protocol
X √ √ √ √ √
more attractive security attributes than the two-pass protocols do. Comparing to the existing three-pass schemes without precomputations, our protocol appears to be the most efficient as our protocol only requires each participant to perform 4 point scalar multiplications, 1 point addition, 3 field multiplications and 2 hash functions online in order to establish a secure session key, while Yoon-Yoo’s scheme requires 6 point scalar multiplications, 1 point addition, 5 field multiplications and 3 hash functions, and ECKE1R requires 4 point scalar multiplications, 1 point addition, 3 field multiplications and 3 hash functions to be computed by each party in a protocol execution. Even with precomputation where extra storage requirement is incurred, our protocol achieves the same online computational efficiency as ECKE1R as it requires only the minimum computational effort for a party to compute 3 point scalar multiplications, 1 point addition, 1 field multiplication and 2 hash functions in a protocol run.
7
Conclusion
In conclusion, we have revealed the weakness of Yoon-Yoo’s protocol in providing security as the ephemeral secret of both communicating parties are disclosed. By aiming to eliminate this security flaw, we have proposed another improved variant of Popescu’s authenticated key agreement protocol. Besides that, we have evaluated the heuristic security of the protocol thoroughly to ensure that the analyzed security features are all offered. Furthermore, we have also compared our proposed scheme with several existing elliptic curve public-key key agreement schemes in terms of computational efficiency and security attributes. As a result, our protocol turns out to be a more secure and efficient improved variant of Popescu’s key agreement scheme as compared to Yoon-Yoo’s protocol.
References 1. Bellare, M., Rogaway, P.: Entity Authentication and Key Distribution. In: Stinson, D.R. (ed.) CRYPTO 1993. LNCS, vol. 773, pp. 110–125. Springer, Heidelberg (1994) 2. Bellare, M., Rogaway, P.: Provably Secure Session Key Distribution: The Three Party Case. In: 27th ACM Symposium on the Theory of Computing - ACM STOC, pp. 57–66 (1995)
182
M.-H. Lim et al.
3. Blake-Wilson, S., Johnson, D., Menezes, A.: Key Agreement Protocols and their Security Analysis. In: Darnell, M.J. (ed.) Cryptography and Coding 1997. LNCS, vol. 1355, pp. 30–45. Springer, Heidelberg (1997) 4. Blake-Wilson, S., Menezes, A.: Authenticated Diffie-Hellman key Agreement Protocols. In: Tavares, S., Meijer, H. (eds.) SAC 1998. LNCS, vol. 1556, pp. 339–361. Springer, Heidelberg (1999) 5. Boyd, C., Choo, K.-K.R.: Security of Two-Party Identity-Based Key Agreement. In: Dawson, E., Vaudenay, S. (eds.) Mycrypt 2005. LNCS, vol. 3715, pp. 229–243. Springer, Heidelberg (2005) 6. Canetti, R., Krawczyk, H.: Analysis of Key-Exchange Protocols and Their Use for Building Secure Channels. In: Pfitzmann, B. (ed.) EUROCRYPT 2001. LNCS, vol. 2045, pp. 453–474. Springer, Heidelberg (2001) 7. Choo, K.-K.R., Boyd, C., Hitchcock, Y.: On Session Key Construction in ProvablySecure Key Establishment Protocols. In: Dawson, E., Vaudenay, S. (eds.) Mycrypt 2005. LNCS, vol. 3715, pp. 116–131. Springer, Heidelberg (2005) 8. Duraisamy, R., Salcic, Z., Strangio, M.A., Morales-Sandoval, M.: Supporting Symmetric 128-bit AES in Networked Embedded Systems: An Elliptic Curve Key Establishment Protocol-on-Chip. EURASIP Journal of Embedded Systems 2007(9) (2007) 9. Diffie, W., Hellman, M.: New Directions in Cryptography. IEEE Transactions on Information Theory 22(6), 644–654 (1976) 10. Koblitz, N.: Elliptic Curve Cryptosystems. Mathematics of Computation 48, 203– 209 (1987) 11. Krawczyk, H.: HMQV: A High-Performance Secure Diffie-Hellman Protocol. In: Shoup, V. (ed.) CRYPTO 2005. LNCS, vol. 3621, pp. 546–566. Springer, Heidelberg (2005) 12. LaMacchia, B.A., Lauter, K., Mityagin, A.: Stronger Security of Authenticated key Exchange. In: Susilo, W., Liu, J.K., Mu, Y. (eds.) ProvSec 2007. LNCS, vol. 4784, pp. 1–16. Springer, Heidelberg (2007) 13. Miller, V.S.: Use of Elliptic Curves in Cryptography. In: Williams, H.C. (ed.) CRYPTO 1985. LNCS, vol. 218, pp. 417–426. Springer, Heidelberg (1986) 14. Popescu, C.: A Secure Authenticated Key Agreement Protocol. In: Proceedings of the 12th IEEE Mediterranean (MELECON 2004), vol. 2, pp. 783–786 (2004) 15. Raju, G.V.S., Akbani, R.: Elliptic Curve Cryptosystem and its Applications. In: Proceedings of the 2003 IEEE International Conference on Systems. Man and Cybernetics (IEEE-SMC), vol. 2, pp. 1540–1543 (2003) 16. Strangio, M.A.: Efficient Diffie-Hellmann Two-Party Key Agreement Protocols based on Elliptic Curves. In: Proceedings of the 2005 ACM Symposium on Applied Computing, pp. 324–331 (2005) 17. Strangio, M.A.: Revisiting an Efficient Elliptic Curve Key Agreement Protocol. Cryptology ePrint Archive: Report 081 (2007) 18. Wang, S., Cao, Z., Strangio, M.A., Wang, L.: Cryptanalysis of an Effcient DiffeHellman Key Agreement Protocol based on Elliptic Curves. Cryptology ePrint Archive: Report 026 (2006) 19. Yoon, E.-J., Yoo, K.-Y.: An Improved Popescu’s Authenticated Key Agreement Protocol. In: Gavrilova, M.L., Gervasi, O., Kumar, V., Tan, C.J.K., Taniar, D., Laganá, A., Mun, Y., Choo, H. (eds.) ICCSA 2006. LNCS, vol. 3984, pp. 276–283. Springer, Heidelberg (2006)
On the Robustness of Complex Networks by Using the Algebraic Connectivity A. Jamakovic and P. Van Mieghem Delft University of Technology Electrical Engineering, Mathematics and Computer Science P.O. Box 5031, 2600 GA Delft, The Netherlands [email protected], [email protected]
Abstract. The second smallest eigenvalue of the Laplacian matrix, also known as the algebraic connectivity, plays a special role for the robustness of networks since it measures the extent to which it is difficult to cut the network into independent components. In this paper we study the behavior of the algebraic connectivity in a well-known complex network model, the Erd˝os-R´enyi random graph. We estimate analytically the mean and the variance of the algebraic connectivity by approximating it with the minimum nodal degree. The resulting estimate improves a known expression for the asymptotic behavior of the algebraic connectivity [18]. Simulations emphasize the accuracy of the analytical estimation, also for small graph sizes. Furthermore, we study the algebraic connectivity in relation to the graph’s robustness to node and link failures, i.e. the number of nodes and links that have to be removed in order to disconnect a graph. These two measures are called the node and the link connectivity. Extensive simulations show that the node and the link connectivity converge to a distribution identical to that of the minimal nodal degree, already at small graph sizes. This makes the minimal nodal degree a valuable estimate of the number of nodes or links whose deletion results into disconnected random graph. Moreover, the algebraic connectivity increases with the increasing node and link connectivity, justifies the correctness of our definition that the algebraic connectivity is a measure of the robustness in complex networks.
1 Introduction Complex networks describe a wide range of natural and man-made systems, e.g. the Internet, the WWW, networks of food webs, social acquaintances, paper citations, as well as many others [5,11,28]. Although complex systems are extremely different in their function, a proper knowledge of their topology is required to thoroughly understand and predict the overall system performance. For example, in computer networks, performance and scalability of protocols and applications, robustness to different types of perturbations (such as failures and attacks), all depend on the network topology. Consequently, network topology analysis, primarily aiming at non-trivial topological properties, has resulted in the definition of a variety of practically important metrics, capable of quantitatively characterizing certain topological aspects of the studied systems [2,24]. A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 183–194, 2008. c IFIP International Federation for Information Processing 2008
184
A. Jamakovic and P. Van Mieghem
In this paper, we rely on a spectral metric, i.e. the second smallest Laplacian eigenvalue, often also referred to as the algebraic connectivity [13]. Fiedler [13] showed that the algebraic connectivity plays a special role: 1) a graph is disconnected if and only if the algebraic connectivity is zero, 2) the multiplicity of zero as an eigenvalue of a graph is equal to the number of disconnected components. There is a vast literature on the algebraic connectivity; see e.g. [9,10,19,20,22] for books and surveys and e.g. [21,23] for applications to several difficult problems in graph theory. However, for the purpose of this work, the most important is its application to the robustness of a graph: 1) the larger the algebraic connectivity is, the more difficult it is to cut a graph into independent components, 2) its classical upper bound in terms of the node and the link connectivity provides worst case robustness to node and link failures [13]. As mentioned in [6], the second means that for every node or link connectivity, there are infinitely many graphs for which the algebraic connectivity is not a sharp lower bound. The node and the link connectivity are important for the robustness because they quantify the extent to which a graph can accommodate to node and link failures. Hence, it is worth investigating the relationship between those three connectivity metrics. Traditionally, the topology of complex networks has been modeled as Erd˝os-R´enyi random graphs. However, the growing interest in complex networks has prompted many scientists to propose other, more complex models such as ”small world” [27] and ”scalefree” [4] networks. Despite the fact that various authors have observed that real-world networks have power-law degree distribution, the Erd˝os-R´enyi random graph still has many modeling applications. The modeling of wireless ad-hoc and sensor-networks, peer-to-peer networks like Gnutella [8] and, generally, overlay-networks, provide wellknown examples [14]. Besides that, for the Erd˝os-R´enyi random graph, most of the interesting properties can be analytically expressed. This is in contrast to most other graphs where computations are hardly possible. Taking the above arguments into consideration, in the first part of this work we study the behavior of algebraic connectivity in the Erd˝os-R´enyi random graph. By using the basic approximation that the algebraic connectivity equals the minimum nodal degree, we estimate the mean and the variance of the algebraic connectivity. Hereby we improve an already existing theorem concerning its behavior [18]. In the second part, we study the relationship between the algebraic connectivity and graph’s robustness to node and link failures. Extensive simulations show that the algebraic connectivity increases with the increasing node and link connectivity, implying the correctness of our definition that the algebraic connectivity is a measure of the robustness in complex networks. The paper is organized as follows. In Section 3, we present the theoretical background on the algebraic connectivity, and the node and the link connectivity. In Section 3, we analytically derive the estimation of the mean and the variance of the algebraic connectivity for the Erd˝os-R´enyi model, which we verify by simulations. Prior to analytical derivation, we describe in Section 3.1 the common topological properties that are observed in the random graph of Erd˝os-R´enyi, how they are measured and why they are believed to be important in the context of this paper. In Section 4, we present additional simulation results: by exploring the relation between the algebraic connectivity, and the node and the link connectivity, the existing relations for the connected Erd˝os-R´enyi graph are refined. Section 5 summarizes our main results.
On the Robustness of Complex Networks by Using the Algebraic Connectivity
185
2 Background A graph theoretic approach is used to model the topology of a complex system as a network with a collection of nodes N and a collection of links L that connect pairs of nodes. A network is represented as an undirected graph G = (N , L) consisting of N = |N | nodes and L = |L| links, respectively. The Laplacian matrix of a graph G with N nodes is an N × N matrix Q = Δ − A where Δ = diag(Di ). Di denotes the nodal degree of the node i ∈ N and A is the adjacency matrix of G. The eigenvalues of Q are called the Laplacian eigenvalues. The Laplacian eigenvalues λN = 0 ≤ λN −1 ≤ ... ≤ λ1 are all real and nonnegative [21]. The second smallest Laplacian eigenvalue λN −1 , also known as the algebraic connectivity, was first studied by Fiedler in [13]. Fiedler showed that the algebraic connectivity is very important for the classical connectivity, a basic measure of the robustness of a graph G: 1) the algebraic connectivity is only equal to zero if G is disconnected, 2) the multiplicity of zero as an eigenvalue of Q is equal to the number of disconnected components of G. In [13], Fiedler also proved the following upper bound on the algebraic connectivity λN −1 in terms of the minimum nodal degree Dmin of a graph G: 0 ≤ λN −1 ≤ NN−1 Dmin . In addition, we introduce two connectivity characteristics of a graph G: the link connectivity, i.e. the minimal number of links whose removal results in losing connectivity, is denoted by κL and the node connectivity, which is defined analogously (nodes together with adjacent links are removed) is denoted by κN . The following inequality in terms of the node connectivity κN (and obviously the link connectivity κL ) is to be found in [13]: λN −1 ≤ κN . Hence, the minimum nodal degree Dmin of an incomplete1 graph G is an upper bound on both λN −1 as well as κN and κL . If κN = κL = Dmin , we say that the connectivity of a graph is optimal.
3 Algebraic Connectivity in Random Graph of Erd˝os-R´enyi In this section we give an analytical estimate of the algebraic connectivity in the Erd˝osR´enyi random graph. The analytical estimate relies on the equality with the minimum nodal degree. This approximation is verified by a comprehensive set of simulations, presented in Subsection 3.4. Prior to analyzing the minimum nodal degree in Subsection 3.2, we give some details on the Erd˝os-R´enyi random graph and the corresponding theorems. 3.1 Random Graph of Erd˝os-R´enyi The random graph as proposed by Erd˝os-R´enyi [12] is a well-known model to describe a complex network. The most frequently occurring realization of this model is Gp (N ), where N is the number of nodes and p is the probability of having a link between any two nodes (or shortly the link probability). In fact, Gp (N ) is the ensemble of all such graphs in which the links are chosen independently and the total number of links is on average equal to pLmax , where Lmax = N2 is the maximum possible number of links. 1
The node connectivity κN of a complete graph KN is λN−1 (KN ) = N > κN (KN ) = N −1.
186
A. Jamakovic and P. Van Mieghem
Many properties of the random graph can be determined asymptotically, as was shown by Erd˝os-R´enyi in the series of papers in the 1960s and later by Bollobas in [6]. For example, for a random graph to be connected there must hold, for large N , that p ≥ logNN ≡ pc . Moreover, the probability that a random graph for large N is −p(N −1) connected, equals Pr[Gp (N ) = connected] e−N e [26]. Then, the probability that the node connectivity κN equals the link κL connectivity, which in turn equals the minimum nodal degree Dmin , approaches 1 as N approaches infinity or that Pr[κN = κL = Dmin ] → 1 as N → ∞ is also proved in [6] and holds without any restriction on p. This was also shown by Bollob´as and Thomason in [7]. On the other hand, the asymptotic behavior of the algebraic connectivity in the Erd˝os-R´enyi random graph Gp (N ) is proved by Juh¯az in [18]: For any ε > 0, 1 λN −1 = pN + o N 2 +ε (1) where the algebraic connectivity converges in probability as N → ∞. 3.2 Minimum Nodal Degree in Random Graph of Erd˝os-R´enyi In Gp (N ) each node i has a degree Di that is binomially distributed. Before proceeding, we first need to show that degrees in the sequence {Di }1≤i≤N are almost independent random variables. In any graph N i=1 Di = 2L holds, thus degrees in the sequence {Di }1≤i≤N are not independent. However, if N is large enough, Di and Dj are almost independent for i = j and we can assume that all Di are almost i.i.d. binomially distributed (see also [6, p. 60]). The following Lemma quantifies this weak dependence: Lemma 1. The correlation coefficient of the degree Di and Dj of two random nodes i and j in Gp (N ) for 0 < p < 1 is Cov [Di , Dj ] 1 ρ (Di , Dj ) = = . N −1 Var [Di ] Var [Dj ] Proof. See Appendix A of [16]. For large N and constant p, independent of N , the normalized i.i.d. binomially distributed sequence {Di∗ }1≤i≤N of all degrees in Gp (N ) tends to be Gaussian distributed. The minimum of the sequence {Di∗ }1≤i≤N possesses the distribution Pr[ min Di∗ ≤ x] = 1 − 1≤i≤N
N
Pr[Di∗ > x] = 1 − (Pr[Di∗ > x]) . N
i=1
After considering the limiting process of the minimum of a set {Di∗ }1≤i≤N when N → ∞, we derive [16] the appropriate solution
2 −Y − 2 log N + log 2π log N 2π ∗ √ Dmin = 2 log N
On the Robustness of Complex Networks by Using the Algebraic Connectivity
187
∗ where Y is a Gumbel random variable [26]. With Dmin = σ[D].Dmin + E[D] = ∗ (N − 1)p(1 − p).Dmin + p(N − 1), we obtain
⎞ ⎛ N2 2π log 2π ⎟ ⎜ Y + 2 log N − log ⎟. √ Dmin = p(N − 1) − (N − 1)p(1 − p) ⎜ ⎝ ⎠ 2 log N
Finally, let Dmin (p) denote the minimum degree in Gp (N ). Since the complement of Gp (N ) is G1−p (N ), there holds that Dmin (p) = N − 1 − Dmax (1 − p) . The law of Dmax has been derived by Bollobas [6, Corollary 3.4 (p. 65)] via another method. Using the above relation, Bollobas’ results precisely agrees with ours. 3.3 Analytical Approximation for Algebraic Connectivity in Random Graph of Erd˝os-R´enyi In Section 2 we saw that λN −1 ≤ NN−1 Dmin . Our basic approximation is λN −1 Dmin for large N . A comprehensive set of simulation results, presented in Subsection 3.4, supports the quality of this assumption. With this approximation we arrive, for large N , at λN −1 p(N − 1) − 2p(1 − p)(N − 1) log N (N − 1)p(1 − p) N2 + log 2π log 2 log N 2π (N − 1)p(1 − p) − Y. (2) 2 log N By taking the expectation on both sides and taking into account that the mean of a Gumbel random variable E[Y ] = γ = 0.5772..., our estimate of the mean of the algebraic connectivity in Gp (N ) becomes, for large N and constant p, E[λN −1 ] p(N − 1) − 2p(1 − p)(N − 1) log N (N − 1)p(1 − p) N2 + log 2π log 2 log N 2π (N − 1)p(1 − p) − γ. (3) 2 log N Similarly, by taking into account that V ar[Y ] = algebraic connectivity in Gp (N ) is V ar[λN −1 ] =
π2 6 ,
the estimate of the variance of the
(N − 1)p(1 − p) π 2 . 2 log N 6
(4)
188
A. Jamakovic and P. Van Mieghem
160 140 120
eq (1) for N = 200 eq (1) for N = 400 eq (1) for N = 800 eq(3) + eq(5) for N = 200 eq(3) + eq(5) for N = 400 eq(3) + eq(5) for N = 800
λN−1
100 80 60 40 20 0
4
8
12 α = p / pc
16
20
Fig. 1. A comparison between the estimation of the mean (3) as well as the standard deviation (5), plotted in lines and error bars, and the theorem of Juh¯az (1), plotted in markers, for the algebraic connectivity λN−1 as a function of α = p/pc in the Erd˝os-R´enyi random graph Gp (N ) with N = 200, 400 and 800 nodes
An interesting observation is that the standard deviation N σ [λN −1 ] = V ar[λN −1 ] = O log N
(5)
is much smaller than the mean (3). This implies that λN −1 tends to the mean rapidly, or that, for large N , λN −1 behaves almost deterministically and is closely approximated by the first three terms in (2). Hence, the relation (2) is more accurate than (1) (see also Figure 1). 3.4 Verification of Analytical Approximation by Simulations In all simulations we consider exclusively the Erd˝os-R´enyi random graph Gp (N ) with various combinations of the number of nodes N and the link probabilities p. N can takes the following values: 200, 400 and 800. The link probability p = αpc = α logNN , where α is varying from 1 to 20. From each combination of N and p, we compute the algebraic connectivity λN −1 and the minimum nodal degree Dmin . Then, we classify the simulated graphs according to their value of α, as shown in Figures 2 and 3. Subsequently, from generated graphs with a given α, we are interested in the extreme values, i.e. min λN −1 and max λN −1 , as shown in Figures 4 and 5. In Figures 2 and 3, we have plotted the simulated mean E[λN −1 ], the corresponding standard deviation σ [λN −1 ], and our estimate for the mean, Eq. (3), and the standard deviation, Eq. (5), of the algebraic connectivity as a function of α. As illustrated in Figures in Figures 2 and 3 there is a remarkable correspondence between the simulations and our estimate: the standard deviation is much smaller than the mean, implying that for N → ∞, λN −1 will rapidly approach E[λN −1 ]. Moreover, our basic approximation that, for large N , λN −1 Dmin is verified by the simulations shown in Figures 4 and 5.
On the Robustness of Complex Networks by Using the Algebraic Connectivity
189
We found that min λN −1 or max λN −1 grows linearly with Dmin . Note in Figure 4 that, in the probability range around the connectivity threshold pc , the minimum algebraic connectivity is always equal to zero, indicating a non-connected random graph (for details see Section 4). From Figures 4 and 5 it is clear that if the value of the algebraic connectivity is larger than zero, the random graph has nodes of minimum degree always larger than zero too, referring to {λN −1 > 0} ⇐⇒ {Gp (N ) is connected}. However, by scrutinizing only degree-related simulation results, we see that the implication {Dmin ≥ 1} =⇒ {Gp (N ) is connected} is not always true, i.e. for large N and certain p which depends on N , the implication is almost surely (a.s.) correct [26]. For example, the percentage of graphs with Dmin ≥ 1 that leads to a connected Gp (50) increases from 98% for p = pc to 100% for 2pc , while the percentage for Gp (400) increases from 99% for p = pc to 100% for 2pc . Hence, the simulation results confirm that, for large N and rather small p = logNN , the latter implication a.s. is equivalent. 100
4 6
90 4 80
2
70
−2 σ[λN−1]
E[λN−1]
60
3
0
50
2
40 30
N = 200 N = 400 N = 800 eq (3) for N = 200 eq (3) for N = 400 eq (3) for N = 800
20 10 0 1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18 19 20 α = p / pc
Fig. 2. A comparison between the estimation (3), plotted in lines, and the simulation results, plotterd in markers, for the mean of the algebraic connectivity E[λN−1 ] as a function of α. In the upper left corner of the figure, we show the difference between the estimation and the simulation results as a function of α.
N = 200 N = 400 N = 800 eq (5) for N = 200 eq (5) for N = 400 eq (5) for N = 800
1
0
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18 19 20 α = p/p c
Fig. 3. A comparison between the estimation (5), plotted in lines, and the simulation results, plotterd in markers, for the standard deviation of the algebraic connectivity σ[λN−1 ] as a function of α
Simulations demonstrate also that, for a particular fixed α = ppc , the mean of the algebraic connectivity increases with the size of the random graph: a higher value of the graph size N implies a higher mean of the algebraic connectivity, what in turn indicates that the probability of having a more robust graph is approaching 1 as N → ∞. Theorem given in Subsection 3.1, stating that Pr[κN = κL = Dmin ] → 1 as N → ∞, clarifies this observation in a slightly different way: given that N is approaching ∞, the node and the link connectivity will become as high as possible, i.e. equal to the minimum nodal degree, and therefore the graph will become optimally connected.
190
A. Jamakovic and P. Van Mieghem
N = 400,α = 1,2,3,...,20 100
4.5
90
4
80
3.5
70 min/max λN−1
min/max λ
N−1
N = 400, α = 0.1,0.2,...,2 5
3 2.5 2 1.5
60 50 40 30
1
min λN−1
20
min λ
0.5
max λN−1
10
max λ
0
0
1
2
3
4
5
N−1
6
D
min
Fig. 4. The relationship between the minimum algebraic connectivity min λN−1 (maximum algebraic connectivity max λN−1 ) and the minimum nodal degree Dmin in the Erd˝os-R´enyi random graph Gp (N ). For each combination of N and p = αpc , α = 0.1, 0.2, 0.3, ..., 2, we generate 104 random graphs. Then, from the generated graphs, having a given value of α, we take min λN−1 (max λN−1 ) and the corresponding Dmin , resulting in one point for each considered α.
0
N−1
0
20
40
60
80
100
Dmin
Fig. 5. The relationship between the minimum algebraic connectivity min λN−1 (maximum algebraic connectivity max λN−1 ) and the minimum nodal degree Dmin in the Erd˝os-R´enyi random graph Gp (N ). For each combination of N and p = αpc , α = 1, 2, 3, ..., 20, we generate 104 random graphs. Then, from the generated graphs, having a given value of α, we take min λN−1 (max λN−1 ) and the corresponding Dmin , resulting in one point for each considered α.
4 Relationship between Algebraic, Node and Link Connectivity in Random Graph of Erd˝os-R´enyi In the previous section we analytically estimated the behavior of the algebraic connectivity in the Erd˝os-R´enyi random graph. In this section we analyze the relation among the three connectivity measures: the algebraic connectivity, the node connectivity and the link connectivity. We have used the polynomial time algorithm, explained in [15], to find the node and the link connectivity by solving the maximum-flow problem. The maximum-flow problem can be solved with several algorithms, e.g. Dinic, Edmonds & Karp, Goldberg, etc. If Goldberg’s push-relabel algorithm√is utilized, as performed in our simulations, the link connectivity algorithm has O(N 3 L)-complexity, while the node connectivity √ 2 algorithm has O(N L L)-complexity. We have used the LAPACK implementation of the QR-algorithm for computing all the eigenvalues of the Laplacian matrix. For linear algebra problems involving the computation of a few extreme eigenvalues of large symmetric matrices, algorithms (e.g. Lanczos) whose run-time and storage cost is lower compared to the algorithms for calculation of all eigenvalues (QR algorithm has O n3 -complexity) are known [3]. We simulate for each combination of N and p, 104 independent Gp (N ) graphs. N is 50, 100, 200 and 400 nodes and the link probability p = αpc , where α varies from 1 to 10. From each combination of N and p, we compute the minimum nodal degree
On the Robustness of Complex Networks by Using the Algebraic Connectivity
191
40 N=50 N=100 N=200 N=400 E[λN−1], N=50
35
E[κN] = E[κL] = E[Dmin]
30
E[λ
], N=100
N−1
25
E[λN−1], N=200 E[λN−1], N =400
20 15 10 5 0
1
2
3
4
5 6 α = p / pc
7
8
9
10
Fig. 6. Simulated results on Erd˝os-R´enyi random graph Gp (N ) for N = 50, 100, 200, 400 and the link probability p = αpc , showing the mean of the algebraic connectivity E [λN−1 ], the mean of the node E[κN ] and the link E[κL ] connectivity and the mean of the minimum nodal degree E[Dmin ] as a function of α, where α = 1, 2, ..., 10. Note that for α = 1, E[κN ] = E[κL ] but E[κN ] = E[Dmin ].
Dmin , the algebraic, the node and the link connectivity, denoted respectively by λN −1, , κN and κL . Then, we classify graphs according to their value of α. Figure 6 shows the mean value of the algebraic connectivity E [λN −1 ] as a function of increasing α = ppc . In addition, Figure 6 shows the mean of the node connectivity E[κN ], the link connectivity E[κL ] and the minimum nodal degree E[Dmin ]. The first conclusion we can draw after analyzing simulation data is that for all generated random graphs from p = pc to p = 10pc the convergence to a surely connected random graph, i.e. λN −1 > 0, is surprisingly rapid. Results concerning connectivity percentages are plotted in Figure 7. For example, the percentage of connected random graphs with 50 nodes increases from about 39% and 98% for pc and p = 2pc , respectively, to 99% for p = 3pc , where for p = 4pc the graph is connected. These results are consistent with the Erd˝os-R´enyi asymptotic expression. For N → ∞, as observable in Figure 7, the simulated data as well as the Erd˝os-R´enyi formula confirm a well known result [17] that the random graph Gp (N ) is a.s. disconnected if the link density p is below the connectivity threshold pc ∼ logNN and connected for p > pc . The second conclusion is that our results, regarding the distribution range of the algebraic connectivity and the minimum nodal degree, indeed comply with the bounds 0 ≤ λN −1 ≤ NN−1 Dmin : the distribution of the algebraic connectivity λN −1 is contained in the closed interval [0, N ], or to be more precise λN −1 is 0 for a disconnected graph and above bounded by NN−1 Dmin for all those link probabilities p for which the graph is connected but not complete2 . Then, obviously E[λN −1 ] ≤ E[Dmin ]. The third conclusion is that the distribution range of the algebraic connectivity also complies with the bounds λN −1 ≤ κN . Moreover, in Figure 6, for p > pc and all simulated N , the distributions of the node κN and the link κL connectivity are equal to 2
If a graph G is a complete graph KN then λN−1 = N > Dmin = N − 1.
192
A. Jamakovic and P. Van Mieghem
the distribution of the minimum nodal degree Dmin (recall that in Figure 6 for p = pc , the distributions of κN , κL and Dmin are almost equal but not the same). Convergence here to a graph where κN = κL = Dmin is surprisingly rapid. For example, from the simulation results plotted in Figure 8 with p = pc and size of the random graph ranging from N = 5 to N = 400, we found that with probability approaching 1, the random graph becomes optimally connected at rather small graph sizes. For all other link probabilities, p > pc , the convergence to κN = κL = Dmin is faster (see Figure 8 for p = 2pc ). Hence, the simulation results show that the random graph Gp (N ) a.s. is constructed in such a way that deleting all the neighbors (or the links to its neighbors) of a minimum nodal degree node will lead to the minimum number of nodes (links) whose deletion from a graph will result into a disconnected random graph. Hence, the minimum nodal degree is a valuable estimate of the number of nodes or links whose deletion results into a disconnected graph. 100
100
90 98
70 κN = κL = Dmin [%]
Gp(N) is connected [%]
80
60 50
N = 50 N = 100 N = 200 N = 400 N = 50 N = 100 N = 200 N = 400
40 30 20 10 0
0
0.5
1 α=p/p
1.5
96
94
92
α=p/p =1 c
α=p/p =2 c
2
c
Fig. 7. Percentage of the connected Erd˝os-R´enyi random graphs Gp (N ), i.e. λN−1 > 0: a comparison between the simulation results, plotted in markers, and the Erdos’ asymptotic formula −p(N −1) Pr[Gp (N ) =connected] e−Ne , plotted in lines, in the probability range α = p/pc = 0.1, 0.2, ..., 2
90
0
50
500
1000
N
Fig. 8. Percentage of the Erd˝os-R´enyi random graphs Gp (N ) with p = pc and p = 2pc in which the node connectivity κN , the link connectivity κL and the minimum nodal degree Dmin converge to κN = κL = Dmin for small graph sizes N
5 Conclusion We studied the algebraic connectivity and its relation to the node and the link connectivity in the Erd˝os-R´enyi random graph. The analytical study shows that the variance of the algebraic connectivity is much smaller than its mean, implying that, for large graph size N , the distribution of the algebraic connectivity will rapidly approach the mean value. Through extensive simulations, we verified that the algebraic connectivity behaves almost deterministically and is closely approximated by our basic estimate, Eq. (2). Simulations also show that, for large N , the distribution of the algebraic connectivity grows linearly with the minimum nodal degree, confirming our basic approximation that λN −1 Dmin .
On the Robustness of Complex Networks by Using the Algebraic Connectivity
193
Moreover, for a given value of α = ppc , a higher value of the graph size N means a higher value of the algebraic connectivity. This translates into a higher probability of having a more connected, or to say robust, graph as N → ∞. On the other hand, the larger the graph size, the more the Erd˝os-R´enyi random graph is constructed in such a way that deleting all the neighbors (or the links to its neighbors) of a minimum nodal degree node leads to the minimum number of nodes (links) whose deletion disconnects the graph. However, the simulation results show that this optimal connectivity, occurs, regardless of the link probability p, at already small graph sizes N . Hence, the larger the value of the algebraic connectivity, the better the graph’s robustness to node and link failures.
References 1. Abramowitz, M., Stegun, I.A.: Handbook of Mathematical Functions. Dover Publications, Inc, NY (1999) 2. Albert, R., Barabasi, A.-L.: Statistical mechanics of complex networks. Reviews of Modern Physics 74(1) (January 2002) 3. Bai, Z., Demmel, J., Dongarra, J., Ruhe, A., van der Vorst, H.: Templates for the solution of Algebraic Eigenvalue Problems: A Practical Guide. SIAM, Philadelphia (2000) 4. Barabasi, A.-L., Albert, R.: Emergence of scaling in random networks. Science 286, 509–512 (1999) 5. Barabasi, A.-L.: Linked. The new science of networks. Perseus, Cambridge (2002) 6. Bollob´as, B.: Random graphs, 2nd edn. Cambridge University Press, Cambridge (2001) 7. Bollob´as, B., Thomason, A.G.: Random graphs of small order. Random graphs 1983. Annals of Discrete Mathematics 28, 47–97 (1985) 8. Castro, M., Costa, M., Rowstron, A.: Should We Build Gnutella on a Structured Overlay. ACM SIGCOMM Computer Communications Review 34(1), 131–136 (2004) 9. Chung, F.R.K.: Spectral Graph Theory. In: Conference Board of the Mathematical Sciences, American Mathematical Society, Providence, RI, vol. 92 (1997) 10. Cvetkovic, D.M., Doob, M., Sachs, H.: Spectra of Graphs, Theory and Applications, 3rd edn. Johann Ambrosius Barth, Heidelberg (1995) 11. Dorogovtsev, S.N., Mendes, J.F.F.: Evolution of Networks. In: From Biological Nets to the Internet and WWW, Oxford University Press, Oxford (2003) 12. Erd˝os, P., R´enyi, A.: On random graphs. Publicationes Mathematicae 6, 290–297 (1959) 13. Fiedler, M.: Algebraic connectivity of graphs. Czechoslovak Mathematical Journal 23, 298– 305 (1973) 14. Fuhrmann, T.: On the Topology of Overlay Networks. In: Proceedings of 11th IEEE International Conference on Networks (ICON), pp. 271–276 (2003) 15. Gibbons, A.: Algorithmic Graph Theory. Cambridge University Press, Cambridge (1985) 16. Jamakovic, A., Van Mieghem, P.: On the robustness of complex networks by using the algebraic connectivity, Technical Report (2007) 17. Janson, S., Knuth, D.E., Luczak, T., Pittel, B.: The birth of the giant component. Random Structures & Algorithms 4, 233–358 (1993) 18. Juh¯az, F.: The asymptotic behaviour of Fiedler’s algebraic connectivity for random graphs. Discrete Mathematics 96, 59–63 (1991) 19. Merris, R.: Laplacian matrices of graphs: a survey. In: Linear Algebra Applications, vol. 197,198, pp. 143–176 (1994) 20. Merris, R.: A survey of graph Laplacians. In: Linear and Multilinear Algebra, vol. 39, pp. 19–31 (1995)
194
A. Jamakovic and P. Van Mieghem
21. Mohar, B., Alavi, Y., Chartrand, G., Oellermann, O.R., Schwenk, A.J.: The Laplacian spectrum of graphs. Graph Theory, Combinatorics and Applications 2, 871–898 (1991) 22. Mohar, B.: Laplace eigenvalues of graphs: a survey. Discrete Mathematics 109, 198, 171–183 (1992) 23. Mohar, B., Hahn, G., Sabidussi, G.: Some applications of Laplace eigenvalues of graphs. Graph Symmetry: Algebraic Methods and Applications, NATO ASI Ser. C 497, 225–275 (1997) 24. Newman, M.: The structure and function of complex networks. SIAM Review 45, 167–256 (1990) 25. Skiena, S.: Implementing Discrete Mathematics: Combinatorics and Graph Theory with Mathematica. Addison-Wesley, Reading (1990) 26. Van Mieghem, P.: Performance Analysis of Computer Systems and Networks. Cambridge University Press, Cambridge (2006) 27. Watts, D.J., Strogatz, S.H.: Collective dynamics of small-world networks. Nature 393, 440– 442 (1999) 28. Watts, D.J.: Small Worlds. The Dynamics of Networks Between Order and Randomness. Princeton University Press, Princeton (1999)
On the Social Cost of Distributed Selfish Content Replication Gerasimos G. Pollatos1, , Orestis A. Telelis2, , and Vassilis Zissimopoulos1 1
Department of Informatics and Telecommunications, University of Athens, Greece {gpol,vassilis}@di.uoa.gr 2 Department of Computer Science, University of Aarhus, Denmark [email protected]
Abstract. We study distributed content replication networks formed voluntarily by selfish autonomous users, seeking access to information objects that originate from distant servers. Each user caters to minimization of its individual access cost by replicating locally (up to constrained storage capacity) a subset of objects, and accessing the rest from the nearest possible location. We show existence of stable networks by proving existence of pure strategy Nash equilibria for a game-theoretic formulation of this situation. Social (overall) cost of stable networks is measured by the average or by the maximum access cost experienced by any user. We study socially most and least expensive stable networks by means of tight bounds on the ratios of the Price of Anarchy and Stability respectively. Although in the worst case the ratios may coincide, we identify cases where they differ significantly. We comment on simulations exhibiting occurence of cost-efficient stable networks on average.
1
Introduction
Distributed network storage constitutes a frequently exploited modern resource for the improvement of services offered to internet users. A network node can replicate locally content (files or services) that is accessed frequently by local users, so as to lessen bandwidth consumption incurred by frequent remote access. Non-locally replicated objects can be retrieved from the nearest location where they can be found replicated (neighbors/origin servers). Web caching, content distribution networks and, more recently, applications over P2P networks serve this scheme. Query protocols [1], succint summaries [2], and distributed hash tables [3] can implement search of object replicas at remote nodes. Such systems are frequently modeled as Distributed Replication Groups [4]: a distant server distributes content represented as a set of information objects to a network of nodes sharing proximity, each having constrained local storage
Author supported by the 03ED694 research project (PENED), co-financed by E.U.European Social Fund (75%) and the Greek Ministry of Development-GSRT (25%). Center for Algorithmic Game Theory, funded by the Carlsberg Foundation, Denmark.
A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 195–206, 2008. c IFIP International Federation for Information Processing 2008
196
G.G. Pollatos, O.A. Telelis, and V. Zissimopoulos
capacity. Each node has an interest to a subset of information objects in the form of a non-negative demand weight per object. Access cost incurred per non-locally replicated object is defined as the distance from which the object is retrieved times the demand weight. The related Object (or Data) Placement problem requires placement of object replicas in nodes, subject to capacity constraints, so that total access cost summed over all objects and nodes is minimized [4,5]. We consider networks formed voluntarily by autonomous users for shared exploitation of distributed resources (storage capacity), such as file-sharing networks. We develop a game-theoretic analysis of distributed replication networks, in the light of which, users choose autonomously a replication strategy (a subset of objects to replicate locally), catering to minimization of their individual access cost. Through our study of the Distributed Selfish Replication game we address systematically the questions: “Does the performance of the network ever stabilize?” and “What is the overall performance of a stable network, in absence of a central optimizing authority?” Game theory predicts that users will eventually end up (converge) in a Nash equilibrium [6], i.e. a set of (randomized in general) replication strategies, under which no user can decrease his/her individual (in general, expectation of) access cost by unilaterally changing his/her strategy [7]. In view of equilibria as a notion of network stabilization, we are interested in deterministic strategies (pure equilibria), because randomized strategies do not naturally fit behavior of a rational user [7,8], as he/she may observe inefficiency during network’s lifetime and change the replication strategy. Two natural ways of measuring the social (overall) network cost include the average cost experienced by network users (SUM of individual costs), and the maximum cost over all users (MAX). The coordination ratio of such systems, widely known as the Price of Anarchy (PoA) was introduced in the seminal work of [9] as the worst-case ratio of the social cost of the most expensive equilibrium over the optimum centrally enforcable social cost. The PoA measures worst-case performance loss due to the absense of a centralized coordinating authority. More recently in [10] it was proposed that the worst-case ratio of the social cost of the least expensive equilibrium to the optimum social cost is also of interest, since some kind of coordination may be provided to the users, so that they reach the most efficient stable state. This ratio, initially termed the optimistic PoA [10], was established in [11] as the Price of Stability, (PoS) i.e. the performance loss due to the requirement for stability. In this paper we prove existence of pure strategy Nash equilibria for the Distributed Selfish Replication game, (section 3) over a slightly more general network model than the one originally proposed in [4], by analyzing a converging best response dynamics algorithm. We prove a tight upper bound for the PoA and matching lower bounds for the PoS (section 4), for both the SUM and MAX social costs: our PoA upper bound is valid for more general network models than the one considered. However, the simple model that we study exhibits tight worst-case lower bounds for the PoS. We identify cases where the PoS can be significantly smaller than PoA, and comment on simulations that exhibit occurence of cost-efficient equilibria on average (section 5). Our results generalize
On the Social Cost of Distributed Selfish Content Replication
197
and complement the work of [12], and answer a related open question posed in [8] with respect to considering constrained storage capacity in replication games. Related Work. The study of voluntarily formed data replication networks by autonomous users with individual incentives was initiated in [8], where each replicated object could be payed for a fixed amount (as opposed to capacity constraints). It was shown that both PoA and PoS can be unbounded in general with the exception of special topologies. The authors considered only 0/1 demand weights in their analysis. They posed consideration of capacitated nodes along with demand weights as an open question. Let us note here that the notion of capacity should not be perceived under the narrow view of hard disk storage (which is quite affordable nowadays), but rather as a more general notion of budget, to be spent for maintenance and reliability purposes (particularly when replication concerns services). Existence of equilibria for the simple capacitated model of [4] was shown in [12], and for demand weights that constitute a distribution over the set of objects requested by each node. This work however does not concern social efficiency, but rather maximization of the gain of individuals when participating in the network as opposed to staying isolated. Our work is strongly related to the recent studies on network formation games initiated by the seminal work of [13], in an effort of understanding the efficiencies and defficiencies induced to a network created by autonomous users, that are motivated by colliding incentives. A wealth of recent results on such network creation models [11,10,14] have grown this direction of research into an exciting field [15] (chapter 19), that has provided useful insights with respect to the manipulation of the users’ incentives towards creation of socially efficient networks.
2
Preliminaries
We consider a network involving k servers and a set N , |N | = n of client-nodes (simply referred to as nodes), each node having at its disposal integral local storage capacity of sizei . A universe U of up-to-date unit-sized information objects originates from the k servers and each node i requests access to each object o ∈ U by means of a demand weight wio ≥ 0. The request set of i is Ri = {o ∈ U |wio > 0}. Node i may choose to replicate locally any at most sizei cardinality subset of Ri , and access every non-replicated object o from some node (or server) j = i at cost dij wio , where dij is the cost (distance) of accessing j per unit of demand. If Pi is the subset of objects replicated by i, a placement over the network is denoted by X = {P1 , . . . , Pn }. Given a placement X, we use di (o) to denote the distance from node i of the closest node (including origin servers: they can be considered as nodes with fixed placements) replicating object o. Formally: di (o) = minj =i:o∈Pj dij . The individual access cost of i under a placement X, is defined as: ci (X) = wio di (o) (1) o∈Ri \Pi
198
G.G. Pollatos, O.A. Telelis, and V. Zissimopoulos
Our study involves two versions of social (overall) cost: SUM and MAX, defined as i ci (X) and maxi ci (X) respectively. We study the strategic Distributed Selfish Replication (DSR, and DSR(0/1) when demand weights are 0 or 1) game defined by the triple N, {Pi }, {ci } in which every node i is a player with strategy space {Pi } consisting of all sizei -cardinality subsets of objects that i may replicate, and utility expressed by the access cost ci , that i wishes to minimize. A placement X is then a strategy profile for the DSR game. In what follows we use the terms node and player interchangeably. Let X−i = {P1 , . . . , Pi−1 , Pi+1 , . . . , Pn } refer to the strategy profile of all players but i. For the DSR game, it is easy to see that given a strategy profile X−i , player i can determine optimally in polynomial time its best response Pi to the other players’ strategies, simply by solving a special 0/1 Knapsack problem, that amounts to replicating sizei objects with the greatest value wio di (o). Network Model. We consider a slightly more general network model than the one introduced by Leff,Wolf, and Yu in [4] and studied in [12], involving k origin servers, instead of 1. The distance of every node i from server l is dl for l = 0 . . . k − 1, while two nodes i and j are at distance dij = dk . We assume that distances form an ultra-metric such that dk < dk−1 < · · · < d0 . We refer to this network model as LWY(k). The minimum and maximum distances appearing in the network are also referred to with dmin = dk and dmax = d0 .
3
Existence of Pure Strategy Nash Equilibria
We introduce a simple polynomial-time algorithm, that finds a feasible placement constituting a pure strategy Nash equilibrium for the DSR game on a LWY(k) networks. The algorithm constitutes a converging iterative best response dynamics that iterates for l = 0 . . . k over the different distance values (in non-increasing order) appearing in LWY(k): for each distance value dl , all distances at most equal to dl are redefined to exactly dl and a best response placement is computed for each node i = 1 . . . n in turn. It is important to note that during computation of best response of a node i a tie for the values of two objects wio di (o) and wio di (o ) is resolved on the basis of index (for otherwise we cannot guarantee convergence to equilibrium). The order by which nodes compute their best response is fixed in all iterations. We refer to this algorithm (algorithm 1) as DSR-EQ. We show that DSR-EQ finds an equilibrium placement. In our analysis we use the iteration index l as superscript to the various quantities involved. Proposition 1. Consider the time right after computation of placements Pil−1 and Pil for a fixed node i in iterations l − 1 and l of algorithm DSR-EQ. Then for every pair of objects o, o with o ∈ Pil−1 \Pil and o ∈ Pil \Pil−1 it is dli (o) = dl and dli (o ) > dl . The proof is by induction on indices i, l through the following claims: Claim. (Basic Step) Proposition 1 holds for l = 1 (second iteration) and i = 1.
On the Social Cost of Distributed Selfish Content Replication
199
Algorithm 1. DSR-EQ for all i, j set d−1 ij ← dij ; for l=0. . . k do for all i, j set dlij ← dl−1 ij ; for all i, j: dij ≤ dl set dlij ← dl ; for i=1. . . n do Compute best response Pil of i with respect to [dlij ] end end
Proof. Right after computation of P10 and P11 the following hold with respect to objects o and o : d01 (o )w1o ≤ d01 (o)w1o ,
and
d11 (o )w1o ≥ d11 (o)w1o
(2)
Equality in both cases cannot hold, because of the index rule for breaking ties. From the first inequality it must be that w1o ≤ w1o because d01 (o ) = d01 (o) = d0 . Furthermore, in iteration l = 1, by redefinition of distances less than d0 in the original input to d1 , it must be either that d11 (o ) = d11 (o) = d0 (both objects are found only at server distance d0 ), or that d11 (o ) = d11 (o) = d1 (both objects are replicated somewhere at distance d1 ), or that d11 (o ) = d11 (o). The first two imply w1o ≥ w1o which contradicts w1o ≤ w1o , even in the case of equality (because of the tie-breaking index rule). For the third case, if d11 (o ) = d1 and d11 (o) = d0 , we obtain that d11 (o )w1o < d11 (o)w1o , a contradiction to the second relation of (2). Thus it must be that d11 (o ) = d0 > d1 and d11 (o) = d1 . Claim. (Inductive Step) Proposition 1 holds for every iteration l. Proof. Assume that the statement is true for all nodes {i + 1, . . . , n, 1, . . . , i − 1} computing their best response right after computation of Pil−1 and right before computation of Pil . For o ∈ Pil−1 \ Pil and o ∈ Pil \ Pil−1 we can write: dl−1 (o )wio ≤ dl−1 (o)wio , i i
and
dli (o )wio ≥ dli (o)wio
(3)
Equality in both cases cannot occur as before. Assume that dli (o) > dl . Then l di (o) ≥ dl−1 and, if o was replicated at some node in iteration it l − 1 (i.e. dl−1 (o) = dl−1 ), it must have remained so, by hypothesis. But then it should i have been dli (o) = dl . Thus o was found only at some server in iteration l − 1. l−1 l Then dli (o) = dl−1 i (o). For o however, we have that di (o ) ≤ di (o ), because of the assumed behavior of the other nodes computing best response after Pil−1 and before Pil : either o reduces its distance from i due to redefinition of distances to dl (in case some node has it replicated) or not. Then it is: dli (o )wio ≤ dl−1 (o )wio ≤ dl−1 (o)wio = dli (o) i i which is a contradiction to (3). Thus it must be dli (o) = dl .
200
G.G. Pollatos, O.A. Telelis, and V. Zissimopoulos
Now assume that dli (o ) = dl . Since dli (o) = dl also, we have that wio ≥ wio . Furthermore, in iteration l − 1 it must have been dl−1 (o ) ≥ dl−1 and dl−1 i i (o) = l−1 l dl−1 . Then we obtain di (o )wio ≥ di (o )wio = dl wio > dl wio = dli (o)wio = dl−1 (o)wio , which is a contradiction to (3). Thus it must be dli (o ) > dl . i Using proposition 1 it is possible to show that: Lemma 1. In the end of iteration l of algorithm 1, {Pil |i = 1 . . . n} is a pure strategy Nash equilibrim with respect to the current distance matrix [dlij ]. Proof. By proposition 1 we deduce that, in each iteration, a node’s best response is not invalidated by other nodes’ best responses, as follows. In the l-th iteration, for every node j = i and an object o ∈ Pjl−1 \ Pjl the object remains at distance dl from i (which was its distance when i was computing Pil ). For an object o ∈ Pjl \ Pjl−1 , o was at distance > dl and, therefore, not replicated in i either. Replication in j only decreases the value of o for i (because its distance is reduced). Theorem 1. Pure strategy Nash equilibria exist for the DSR game on LWY(k) networks. Proof. By lemma 1 the placement produced in the last iteration of algorithm 1 is a pure strategy Nash equilibrium with respect to a distance matrix identical to the input one.
4
Worst-Case Equilibria
We study efficiency of pure equilibria for the DSR game, by studying the worstcase ratios of the PoA and PoS. We assume that all players (nodes) have a marginal interest for joining the network, expressed by |Ri | ≥ sizei . If this does not hold, then equilibria may be unboundedly inefficient, because of unused storage space in certain nodes. In summary we show that the PoA can be at most ddmax for both the SUM and the MAX social cost functions, and the PoS can min be at least as much in the worst-case. We compare a worst-case socially most expensive equilibrium placement X towards the socially optimum placement X ∗ , and use di (·) and d∗i (·) for distances of objects in each placement. The analysis is performed for the individual cost of a single fixed node i, and therefore yields results with respect to the SUM and the MAX social cost functions. Lemma 2. If X and X are equilibrium and optimum placements respectively, for each node i we have: ci (X) = wio di (o) + wio di (o) (4) o∈Ri \(Pi ∪Pi )
ci (X ) =
o∈Ri \(Pi ∪Pi )
o∈Pi \Pi
wio di (o) +
o∈Pi \Pi
wio di (o)
(5)
On the Social Cost of Distributed Selfish Content Replication
201
Proof. Taking expression (1) for ci at X and X and noticing that: Ri \ Pi = (Ri \ (Pi ∪ Pi )) ∪ (Pi \ Pi ) and (Ri \ (Pi ∪ Pi )) ∩ (Pi \ Pi ) = ∅ Ri \ Pi = (Ri \ (Pi ∪ Pi )) ∪ (Pi \ Pi ) and (Ri \ (Pi ∪ Pi )) ∩ (Pi \ Pi ) = ∅
yields the result.
Lemma 3. If X and X are equilibrium and optimum placements respectively, for every player i we have that |Pi \ Pi | = |Pi \ Pi | and for every pair of objects o ∈ Pi \ Pi , o ∈ Pi \ Pi it is wio di (o) ≥ wio di (o ). Proof. Since for every player i sizei < |Ri |, we obtain |Pi \ Pi | = |Pi \ Pi |. For every pair of objects o ∈ Pi \ Pi , o ∈ Pi \ Pi it must be wio di (o) > wio di (o ), for otherwise, player i would have an incentive to unilaterally deviate in placement X, by substituting o for o , thus decreasing its individual access cost. Theorem 2. The price of anarchy for the DSR game is upper bounded by with respect to either of the SUM or the MAX social cost functions.
dmax dmin ,
Proof. Starting from expression (5) and using lemma 3 we have: ci (X ) =
wio di (o) +
o∈Ri \(Pi ∪Pi )
≥
o∈Ri \(Pi ∪Pi )
wio di (o)
o∈Pi \Pi
wio di (o)
o∈Ri \(Pi ∪Pi )
≥
wio di (o)
di (o) + di (o) dmin + dmax
o ∈Pi \Pi
o ∈Pi \Pi
wio
di (o ) d (o) di (o) i
wio di (o )
dmin dmax
min By expression (4) ci (X ) ≥ ddmax ci (X). Summing over all i yields the result for the SUM. For the MAX notice that for some j: maxi ci (X) = cj (X) ≤ ddmax cj (X ∗ ) ≤ min dmax ∗ dmin maxi ci (X ).
Note that we did not make use of any particular network topology. The bound is valid on any network topology, provided an equilibrium exists. Interestingly, matching lower bounds for the PoS can be shown on a LWY(1) network: Proposition 2. The Price of Stability for the DSR game has a lower bound arbitrarily close to dmax /dmin in the worst-case, with respect to SUM and MAX social cost functions, even for 1 server and 0/1 demand weights. Proof. Take dmin inter-node distance and dmax the distance of the single server. For SUM: we show that for every fixed integer I the PoS is lower bounded I dmax by I+1 dmin asymptotically with n. Take sizei = 1 and set: Ri = {a} for i = 1 . . . n−I and Ri = {bj |j = 1 . . . n−1}, for i = n−I +1 . . . n. In every equilibrium
202
G.G. Pollatos, O.A. Telelis, and V. Zissimopoulos
of this instance the I last nodes replicate collectively at most I objects from their (common) request set, while the rest n − I replicate object a. The social cost is I(I − 1)dmin + I(n − 1 − I)dmax . In the socially optimum placement we let nodes i = 1 . . . n − I − 1 replicate n − I − 1 objects that are not replicated in the I last nodes. But, we save a node for replicating a. The social cost becomes I(n − 2)dmin + (n − 1 − I)dmin = [(I + 1)n − 3I − 1]dmin . Since I is fixed, the I dmax PoS becomes I+1 dmin as n grows. For MAX: all nodes have sizei = 1 and let R1 = {a, b}, whereas for i > 1 set Ri = {c}. Take n ≥ 3 nodes. In equilibrium node 1 pays dmax for either a or b. In the social optimum some i > 1 replicates one of a,b that is not replicated by node 1, and pays dmin for c, while 1 also pays dmin .
5
Less Expensive Equilibria
Proposition 2 states that the least expensive and the most expensive equilibria can be of the same cost in the worst case. In this section we investigate existence of less expensive equilibria than the ones indicated by the worst-case PoA and PoS. In particular, we elaborate on conditions under which the PoS can be at dmax most 2d for the DSR(0/1) game, and present some indicative experimental min results on random instances of the DSR game, showing that social efficiency of equilibria does not degrade much as the ratio dmax /dmin grows. For the rest of this section’s theoretical analysis we turn our attention to the DSR(0/1) game and restrict our discussion to the SUM social cost function. In proving proposition 2 we used “over-demanding” nodes, each requesting O(n) times more objects, than the storage capacity they offer to the group. In what follows we will assume modestly demanding nodes. We define such nodes |−sizei formally through the demand ratio q = maxi |Risize as being q = O(1). We i will also use the assumption that the absolute difference of any pair of distinct distance values in the network is at least dmin . This is e.g. the case when the network is modeled as a graph with inter-node distance being one hop, while the nearest server being at least 2 hops away. We will compare the least expensive equilibrium X = {Pi } against the socially optimum placement X ∗ = {Pi∗ }, so as to obtain the maximum possible difference c(X) − c(X ∗ ). We consider objects a∗ ∈ Pi∗ \ Pi , that we call insertions and study an imaginary procedure that transforms X into X ∗ , by performing such insertions. An insertion is termed significant if it contributes to c(X) − c(X ∗ ). Lemma 4. If r significant insertions occur in comparing a least expensive equilibrium X to a socially optimum placement X ∗ , and at most n0 nodes benefit by any insertion, then: c(X) − c(X ∗ ) ≤ rn0 (dmax − dmin ) − rdmin . Proof. Take a∗ ∈ Pi∗ \ Pi for some node i. There is an object a ∈ Pi \ Pi∗ evicted from i due to insertion of a∗ . We use di (·) to denote the current distance of an object from i. Our target is to show that every significant insertion contributes a social cost increase at least dmin while potentially offering at most (dmax − dmin) cost decrease to some nodes. At first suppose that wia∗ = 0: i suffers an access
On the Social Cost of Distributed Selfish Content Replication
203
cost increase of at least dmin , because a has to be retrieved remotely at minimum distance dmin . Every node j = i with wja∗ = 1 benefits at most (dmax − dmin ) though. This is a significant insertion. Now consider the case wia∗ = 1. Then di (a) ≥ di (a∗ ), because X is equilibrium. We examine the following cases: 1. di (a) = di (a∗ ) = dmin : then i does not benefit or loose, and the insertion is indifferent to every other node j = i with wja∗ = 1 (they also do not benefit or loose, because a∗ is already replicated somewhere in the network). Such an insertion is not significant. 2. di (a) > di (a∗ ) = dmin : the cost of i increases by at least 2dmin (due to eviction of a and di (a) − di (a∗ ) ≥ dmin ) and decreases its cost by at most dmin (due to insertion of a∗ ). Such an insertion is potentially significant. 3. di (a) = di (a∗ ) > dmin : i does not benefit or loose, but any node j = i with wia = 1 and wia∗ = 0 looses at least di (a∗ ) − dmin > dmin (as long as a was stored in i it was retrieved by j from distance dmin ). If no such node exists, then we have a new equilibrium, potentially less expensive than X, a contradiction. Such an insertion can be significant. 4. di (a) > di (a∗ ) > dmin : eviction of a from i is caused at distance di (a) which is at least by dmin greater than di (a∗ ). Thus i looses at least dmin in this case. This insertion can be significant. Notice that the cost increase effect of cases (2), (3) and (4) may be compensated by a re-insertion of the evicted object a in some node j = i. By the previous arguments, such a re-insertion causes eviction of some object a from j and therefore, induces a new cost increase of at least dmin , or a new equilibrium contradiction. Such re-insertions are insignificant, as they may form chains of “movements” of objects around the network’s nodes, always carrying a cost increase, but no decrease. If n0 nodes benefit from any of the significant insertions, then assuming that all of them benefit from all the significant insertions only enlarges the difference c(X) − c(X ∗ ), and the result follows. Lemma 5. The cost of the socially least expensive equilibrium placement X for the DSR(0/1) game on a LWY(k) network in the worst case is at least: c(X) ≥ n0 (n0 − 1)Sdmin + n0 rdmax
(6)
where r is the number of significant insertions, S is the minimum storage capacity, and n0 is the number of nodes that benefit from all insertions. Proof. For every node j that benefits from an insertion a∗ it is wja∗ = 1, and for maximum benefit (dmax −dmin ), this object is payed dmax in the best equilibrium. In the worst case all n0 nodes benefit from all r significant insertions, as argued in lemma 4 (this assumption enlarges the difference c(X) − c(X ∗ )). The second term of inequality (6) is thus justified. For the first term, we notice that since all n0 nodes benefit from an insertion a∗ , then in the least expensive equilibrium X every object stored in these nodes is of interest to at least n0 nodes of the network. Otherwise, we show that there
204
G.G. Pollatos, O.A. Telelis, and V. Zissimopoulos
may be an equilibrium of less cost: take for example an instance where every one of the n0 nodes is either interested to replicas stored in the rest n0 − 1 of them or not, and no other nodes are interested in replicas stored in these n0 nodes. If there is a node j not interested to a replica a stored in some node i, then substitution of a for a∗ in i yields a less expensive equilibrium. We assume that all n0 nodes benefiting from the r insertions are also interested in objects replicated in them in equilibrium. This yields a lower bound of n0 (n0 − 1)Sdmin cost. Now we can prove the following: Theorem 3. The Price of Stability of the DSR(0/1) game on LWY(k) networks with modestly demanding nodes and distance differences at least dmin is dmax upper bounded by 2d . min Proof. By lemma 4: P oS ≤
c(X) c(X) + rdmin − r(dmax − dmin )
This bound is a monotonically decreasing function of c(X). Therefore we use for c(X) the lower bound given by (6) for worst-case P oS, and obtain: n0 (n0 − 1)Sdmin + n0 rdmax (r + rn0 + n0 (n0 − 1)S)dmin
P oS ≤
By the analysis of lemma 5, the number of insertions occurring is upper bounded as r ≤ (q − (n0 − 1))S. Taking the maximum value r = (q − (n0 − 1))S increases the ratio for every value of n0 : P oS ≤
n0 (n0 − 1)Sdmin + n0 (q − (n0 − 1))Sdmax ⇒ [(q − (n0 − 1))S + n0 (q − (n0 − 1))S + n0 (n0 − 1)S]dmin P oS ≤
n0 − 1 q+
q−(n0 −1) n0
+
q − (n0 − 1) q+
q−(n0 −1) n0
·
dmax dmin
Now notice that, since every node of the n0 accesses replicas stored in all other n0 − 1 nodes, it must be n0 − 1 ≤ q. Thus the first term can be at most 1, while dmax for q = O(1), the second term is maximized to 2d for n0 = 1. min Simulation on Random Instances. We performed simulations on random instances of the general DSR game, that provide evidence of existence of efficient equilibria on average. Fig. 1 depicts the evolution of emipirically extracted values for PoS, PoA, and an average value of coordination ratio, as dmax /dmin increases. We used an LWY(10) network of 64 nodes, with sizei = 5, and |Ri | = 10. For each node i the request set Ri was constructed by uniform random sampling of 10 objects out of a universe U of 400 objects. Demand weights were taken
On the Social Cost of Distributed Selfish Content Replication
SUM Social Cost
205
MAX Social Cost 4 PoA AVG PoS
3
PoA AVG PoS
3.5 3
2.5
2.5 2 2 1.5
1.5
1
1 0
20
40
60
80
100 120 140 160 180 200
0
20
dmax/dmin
40
60
80
100 120 140 160 180 200
dmax/dmin
Fig. 1. Evolution of PoS, PoA, and average coordination ratio (AVG) with dmax /dmin
randomly in (0, 1] for each node. We took dmin = 1 and distributed 10 servers, each hosting 40 objects, uniformly within the range [dmin , dmax ] for each different value of dmax . Social optimum for SUM and MAX was obtained by solution of the Object Placement Problem ILP formulation described in [5], using GLPK [16]. Each point of the diagrams was extracted using the maximum (for PoA), minimum (for PoS) and average (for AVG) social cost obtained over 1000 executions of algorithm DSR-EQ with randomly chosen node and object orderings per execution. Two main observations can be extracted by these experiments. First, that the rate of growth of all coordination ratios degrades significantly as dmax /dmin increases, thus giving the impression of a stabilization of the efficiency of the system. Second, that the range of different stable social cost values is quite narrow. These observations motivate a probabilistic analysis of the efficiency of equilibria, that constitutes an aspect of future work.
6
Conclusions and Open Questions
We studied the effects of selfish behavior in a distributed replication group with restricted storage capacity per node. We proved existence of pure strategy Nash equilibria for the related strategic game for networks with multiple origin servers, thus generalizing the result of [12]. Although worst-case maximum and minimum social cost of equilibria were shown to be ddmax times the optimum social cost in min the worst case, for 0/1 demand weights and certain topologies a better upper dmax bound of 2d was shown for the Price of Stability. Simulations on random min instances have shown that even the Price of Anarchy may grow much less rapidly than the ratio dmax /dmin . We were not able to find a single example without any pure equilibria when arbitrary-sized objects are involved, or disprove existence of pure equilibria for more general topologies. We consider investigation of these situations as an aspect of future work, along with enrichment of the game model with other realistic features, such as bounded node degrees.
206
G.G. Pollatos, O.A. Telelis, and V. Zissimopoulos
References 1. Wessels, D., Claffy, K.: ICP and the Squid web cache. IEEE Journal on Selected Areas in Communications 16(3) (1998) 2. Fan, L., Cao, P., Almeida, J., Broder, A.Z.: Summary cache: a scalable wide-area web cache sharing protocol. IEEE/ACM Transactions on Networking 8(3), 281–293 (2000) 3. Stoica, I., Morris, R., Liben-Nowell, D., Karger, D.R., Kaashoek, M.F., Dabek, F., Balakrishnan, H.: Chord: A scalable peer-to-peer lookup protocol for internet applications. IEEE/ACM Transactions on Networking 11(1), 17–32 (2003) 4. Leff, A., Wolf, J., Yu, P.S.: Replication Algorithms in a Remote Caching Architecture. IEEE Transactions on Parallel and Distributed Systems 4(11), 1185–1204 (1993) 5. Baev, I., Rajaraman, R.: Approximation algorithms for data placement in arbitrary networks. In: Proceedings of the ACM-SIAM Annual Symposium on Discrete Algorithms (SODA), pp. 661–670 (2001) 6. Nash, J.F.: Non-Cooperative ganes. Annals of Mathematics 54, 286–295 (1951) 7. Osborne, M.J., Rubinstein, A.: A course in game theory. MIT Press, Cambridge (1994) 8. Chun, B., Chaudhuri, K., Wee, H., Barreno, M., Papadimitriou, C.H., Kubiatowicz, J.: Selfish caching in distributed systems: a game-theoretic analysis. In: Proceedings of the ACM Symposium on Principles of Distributed Computing (PODC) (2004) 9. Koutsoupias, E., Papadimitriou, C.H.: Worst-case Equilibria. In: Proceedings of the Symposium on Theoretical Aspects of Computer Science (STACS), pp. 404– 413 (1999) 10. Anshelevich, E., Dasgupta, A., Tardos, E., Wexler, T.: Near-optimal network design with selfish agents. In: Proceedings of the ACM Annual Symposium on Theory of Computing (STOC), pp. 511–520 (2003) 11. Anshelevich, E., Dasgupta, A., Kleinberg, J.M., Tardos, E., Wexler, T., Roughgarden, T.: The Price of Stability for Network Design with Fair Cost Allocation. In: Proceedings of IEEE Annual Symposium on Foundations of Computer Science (FOCS), pp. 295–304 (2004) 12. Laoutaris, N., Telelis, O.A., Zissimopoulos, V., Stavrakakis, I.: Distributed Selfish Replication. IEEE Transactions on Parallel and Distributed Systems 17(12), 1401– 1413 (2006) 13. Fabrikant, A., Luthra, A., Maneva, E.N., Papadimitriou, C.H., Shenker, S.: On a network creation game. In: Proceedings of the ACM Symposium on Principle of Distributed Computing (PODC), pp. 347–351 (2003) 14. Chen, H., Roughgarden, T., Valiant, G.: Designing networks with good equilibria. In: Proceedings of the ACM-SIAM Symposium on Discrete Algorithms (SODA) (to appear, 2008) 15. Nisan, N., Roughgarden, T., Tardos, E., Vazirani, V.V. (eds.): Algorithmic Game Theory. Cambridge University Press, Cambridge (2007) 16. GNU Linear Programming Kit, http://www.gnu.org/software/glpk/
On Performance Evaluation of Handling Streaming Traffic in IP Networks Using TFRC Protocol Kacper Kurowski and Halina Tarasiuk Institute of Telecommunications, Warsaw University of Technology ul. Nowowiejska 15/19, 00-665 Warsaw, Poland [email protected], [email protected]
Abstract. This paper deals with the performance evaluation of handling streaming traffic in IP best effort networks using TFRC protocol. In our studies we check and discuss an influence of video on demand traffic and different network conditions on TFRC congestion control mechanism. Moreover, we check TFRC performance when it is sharing bottleneck with different versions of TCP. We illustrate our studies by simulation results performed in ns-2 simulation tool and compare results with those obtained for UDP. Keywords: IP network, TCP-Friendly, Video on Demand, Best-effort.
1 Introduction In the last years we have observed the dynamic growth of standardization activity on the Internet towards the multi-service network based on Quality of Service (QoS) architectures, e.g. [20]. However, current version of Internet i.e., best effort network, lacks mechanisms guaranteeing QoS. Therefore, it is not possible to guarantee target values of throughput, IP packet delay (IPTD), packet losses (IPLR) or packet delay variation (IPDV) that are required by applications [21](e.g. audio, video on demand). Moreover, applications generate different types of traffic e.g. streaming or elastic and have different QoS requirements e.g. real time applications are delay sensitive while non-real time applications are loss rate sensitive. In order to provide better service for streaming and elastic traffic (to avoid congestion collapse and starvation of elastic flows by streaming transmissions) without building QoS networks new transport protocols such as TFRC (TCP-Friendly Rate Control [2], [15]) have been designed. TFRC is intended to provide congestion control mechanism for streaming traffic (e.g. audio, video). The protocol is reasonably fair while competing for bandwidth with TCP flows [1]. It is also responsible for maintaining smoothly changing sending rate, which is adjusted according to the changes in network conditions. TFRC may be implemented directly into the application or the transport protocol [7]. This protocol is receiver-based and to calculate allowed transmission rate uses TCP Reno throughput equation derived in [11] and [10]. The performance of TFRC congestion control mechanism has been intensively analyzed. However, in this paper we will present some aspects that have not been presented before. We analyze TFRC when it carries VoD traffic under different network conditions such as level of congestion, A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 207–214, 2008. © IFIP International Federation for Information Processing 2008
208
K. Kurowski and H. Tarasiuk
different RTT (Round Trip Time) values or TCP version used as background traffic. We will compare obtained results with simulations where only UDP was used. The reason to study TFRC performance for handling VoD streams is that TFRC uses throughput equation derived for TCP Reno to control transmission rate and, on the other hand, VoD is non-real time application. The paper is organized as follows: section 2 provides related works dealing with performance evaluation of TFRC; section 3 contains studied system and problem statement; section 4 presents simulation results; section 5 concludes the paper.
2 Related Works There are plenty of papers evaluating effectiveness of TFRC congestion control mechanisms: [4], [5], [16] and [17]. However, majority of them evaluate TFRC when RED (Random Early Detection) [6] was used for buffer management. It is important to emphasis that configuration parameters of RED have strong influence on its performance [19]. Moreover, based on our best knowledge RED is not amply used in current Internet. Therefore, in this paper, similar as in [17], we consider best effort environment where queues are drop-tail with FIFO (First In First Out) queuing discipline. In [4] the smoothness of TFRC throughput was evaluated and compared with the results obtained for AIMD (Additive Increase Multiplicative Decrease). The simulations have shown that TFRC maintains slowly changing sending rate and obtains better results in comparison with AIMD. Authors of [17] compared three TCP-Friendly protocols: GAIMD (Generalized Additive Increase Multiplicative Decrease), TEAR (TCP Emulation at Receivers), and TFRC in terms of friendliness, smoothness and quickness in responding to changes in network conditions. The simulations showed that TFRC maintains smooth sending rate only when loss rate is low and, when losses rise above 10 −1 TFRC throughput changes rapidly and is close to zero. However, [17] did not consider the influence of RTT and traffic characteristics on the congestion control mechanism implemented in TFRC. Based on the studies of current state of the art, we can conclude that there are hardly any publications concerning the impact of VoD traffic on the TFRC’s performance. Only in [18] was considered the transmission of pre-encoded media using TFRC. Authors analyzed the impact of TFRC on user-perceived media quality. The results from their studies can be used by streaming media applications to assess the movie playback rate, which will be based on the current network conditions. We can conclude that until now researchers have focused on evaluation and adjustment of TFRC protocol and verification of its friendliness with TCP flows. The impact of the type of traffic carried by TFRC was not deeply analyzed and simulations were mainly carried with the continuous traffic resembling FTP application. Taking above into account, we propose to evaluate the impact of traffic generated by VoD server on the performance of congestion control mechanism built into TFRC. We analyze TFRC in the best-effort environment, where FIFO/DropTail queuing scheme is used.
On Performance Evaluation of Handling Streaming Traffic in IP Networks
209
3 Problem Statement In this paper we study the impact of traffic characteristics on TFRC congestion control mechanism and the behavior of TFRC under different network conditions. In our studies we employed popular versions of TCP that exist in the Internet [8] because TFRC is supposed to share bandwidth with them. We performed simulations with TCP Reno [13] for which TFRC throughput equation was derived. Moreover, we considered TCP NewReno, which improves protocol performance in situations where there are multiple drops in a single congestion window [14], [3]. Furthermore, we used the most aggressive version of TCP – TCP SACK in which receiver explicitly informs sender about lost packets [12]. As first step of our studies we checked bandwidth sharing between TFRC and each of mentioned TCP versions. We assumed that both TFRC and TCP are associated with greedy source. We wanted to verify if TFRC stays friendly despite the version of TCP that it shares bandwidth with. However, due to space limit we present only main conclusions of these studies. We observed that, TFRC is the friendliest with TCP SACK, but its friendliness decreases along with the increase in RTT. Therefore, we found interesting to evaluate whether increase in delay has a similar effect on TFRC carrying VoD traffic. Moreover, we used different versions of TCP as background traffic for VoD transmission. As reference values for measured metrics obtained for VoD transmission, IPTD and IPLR, we used those proposed in [21]. The reference metrics are mean IPTD=1 s and IPLR=10-3. Let us recall that IPDV is not critical for VoD. For this purpose we studied the following system (see Fig. 1).
Fig. 1. Studied system for VoD transmission
Data packets coming from the source are encapsulated by MPEG-TS (MPEG Transport Stream) ISO/IEC 13818-1 and sent to receiver by UDP with transmission speed controlled by TFRC (there is no transmission rate control in case of standard UDP). Finally, we compared results obtained for TFRC and UDP carrying VoD.
4 Simulations Results As we have mentioned in previous paragraphs we study impact of different RTT values and traffic characteristics on performance of TFRC. Moreover, through experiments we verify whether using TFRC in best effort network can bring any advantage in comparison with actually used UDP/RTP for handling VoD application.
210
K. Kurowski and H. Tarasiuk
We prepared well known single bottleneck topology (Fig. 2). It consists of two IP routers R1 and R2 (with FIFO/drop-tail queue), a number of sources (it depends on evaluated scenario), associated with TFRC, TCP or UDP senders, and a number of receivers. In Fig. 2 we denoted by X link rate between R1 and R2 routers, by (d11,...., d1N), d2, and (d31, ..., d3N) we denoted propagation delay introduced by links between sender – router R1, router R1 – router R2, and router R2 – receiver, respectively. We changed link rate and delay depending on tested scenario.
Fig. 2. Simulation topology
For the simulations we used the ns-2 implementation [9] of TFRC with several modifications required for our needs. Especially due to the TFRC requirement for fixed packet sizes, a middle layer MPEG-TS was introduced to avoid sending small video packets of different sizes and, as a consequence, packets of fixed size (1316 bytes) were generated by the VoD source. Moreover, we modified TFRC source code in ns-2 to measure the value of delay introduced by the TFRC sender while buffering packets before transmission. To properly assess the impact of traffic characteristics on TFRC congestion control mechanism, we used traces [22] of two different movies (“V for Vendetta” and “Cinderella Man”) with different peak to mean rates. The movies were previously captured and stored in the trace files. The first movie had much quicker changes of bit rate in comparison with the second one (on the frame level peak/mean ratio equals 18.2 and 12.1 respectively). 4.1 Impact of TFRC on VoD Transmission In this section we evaluate the impact of VoD traffic on TFRC congestion control mechanism. We performed simulations in the single bottleneck topology depicted in Fig. 2. We begin our studies from testing performance of single VoD connection in isolation. Therefore, we set the link rate between IP routers to 2 Mbps. The link is faster than the peak value of the movies’ bit rates (mean rate about 640 kbps). To test the transmission over distinct network conditions we changed d2 delay values to 20 ms and 60 ms and router R1 buffer size to 20 and 100 packets. The simulations showed that using TFRC to carry VoD transmission slightly changes traffic characteristics. The influence of TFRC increases along with delay and it is also higher for movies with quick changes of bit rate (“V for Vendetta”). As one could expect, TFRC causes the increase of end-to-end packet delay, which in extreme case can be higher of about 1.5 seconds in comparison to UDP. The difference between mean IPTD values for TFRC and UDP grows with the increase of d2 delay value. The reason for greater delays for TFRC is the queuing time in the sender, which is required to shape outgoing traffic in accordance to the allowed value of transmission
On Performance Evaluation of Handling Streaming Traffic in IP Networks
211
Table 1. Simulation results for considered movies UDP 20 ms
TFRC 60 ms
UDP 60 ms
Cinderella Man
TFRC 20 ms
IPLR
V for Vendetta
Protocol d2
none
1.13E-03
none
1.13E-03
mean IPTD [s]
0.027
0.025
0.122
0.075
max IPTD [s]
0.19
0.13
0.82
0.18
IPLR
8.59E-03
2.28E-02
4.30E-03
2.28E-02
mean IPTD [s]
0.079
0.039
0.26
0.079
max IPTD [s]
0.73
0.13
1.69
0.18
rate calculated at the sender. However, the increase of IPTD (IPTD is the sum of the packet queuing and end-to-end transfer time) leads to the decrease of IPLR for TFRC (see Table 1). We observed, that the IPLR value for TFRC and UDP depends on the type of the movie transmitted (value of peak/mean ratio) and on the delay introduced by the network (in case of TFRC). When delay increases, IPLR decreases when TFRC is used. This was due to the fact that for greater delay, TFRC sender waited for a longer time with the increase of sending rate and, therefore, through the introduction of additional delay, reduced the number of lost packets. During the simulations we noticed that the upper limit (twice the receiving rate during last RTT) for the sending rate had some negative influence on VoD traffic. This effect consisted in the introduction of additional delay even though the sender could transmit packets faster due to availability of network resources. However, changing the upper bound for the sending rate caused the increase in IPLR. Nevertheless, the results that we obtained suggest that if there are enough resources for the transport of one VoD stream, TFRC mechanism has a positive impact on the service especially because of the reduction of IPLR value in comparison to UDP (see Fig.3). Having seen that TFRC does not disturb VoD transmission in different network conditions we verified how it deals with scenarios, where there are multiple connections. Therefore, we changed resource usage from about 50% to almost 100% by increasing the number of simultaneous VoD connections. We set the buffer size of bottleneck (10 Mbps) router R1 for three different values: 0.5BDP, 1BDP, 2BDP (Bandwidth Delay Product, BDP [8]) and compared the results obtained for TFRC and UDP. We noted that in our studies TFRC performed especially well in scenario, where the delay introduced by the bottleneck link was low (20ms) and buffers had small sizes (18 or 37 packets). Sample results are shown in Fig. 4. The results are presented with the 0.95 confidence interval. With the increase in buffer space or delay, TFRC and UDP obtained almost identical results. TFRC packets always had higher value of IPTD due to the fact that packets were queued in the sender when equation based sending rate did not allow their transmission. We observed that IPTD value was greater for movies with greater peak/mean ratio such as “V for Vendetta”. It was due to the fact that quick changes in sending rate influenced the value of receiving rate, and receiver reported this and as a consequence limited the allowed sending rate. Nevertheless, comparing to UDP, TFRC allows transmitting more simultaneous VoD connections, which meet
212
K. Kurowski and H. Tarasiuk
1,0E+00
1,0E+00 10
11
12
13
14
15
16
9 1,0E-01
1,0E-02
1,0E-02 IPLR
IPLR
9 1,0E-01
1,0E-03 1,0E-04
11
12
13
14
15
16
1,0E-03 1,0E-04
TFRC 18 packets
UDP 18 packets
TFRC 37packets
1,0E-05
10
UDP 37 packets
1,0E-05
TFRC 74 packets
UDP 74 packets
1,0E-06
1,0E-06 Number of VoD connections
Number of VoD connections
Fig. 3. IPLR for V for Vendetta movie, d2–20ms. Characteristics differ on buffer size expressed in packets (TFRC – Left, UDP – Right).
0,35
0,35
0,3
0,3
0,25
TFRC 74 packets
0,2
UDP 18 packets
TFRC 18 packets IPTD mean [s]
IPTD mean [s]
TFRC 18 packets
UDP 74 packets 0,15 0,1 0,05
0,25
TFRC 74 packets
0,2
UDP 18 packets UDP 74 packets
0,15 0,1 0,05
0
0 9
10
11
12
13
14
Number of VoD connections
(a) V for Vendetta
15
16
9
10
11
12
13
14
15
16
Number of VoD connections
(b) Cinderella Man
Fig. 4. Mean IPTD for d2–20ms. Characteristics differ on buffer size expressed in packets (18, 74).
reference values of IPTD and IPLR (see section 0). We obtained better results for movies with quick changes in bit rate (“V for Vendetta”). The gain of additional VoD connections decreases while d2 delay or buffer size increases. The results that we presented in this section show that in an environment with mainly VoD traffic, the use of TFRC reduces IPLR for tested connections and allows for simultaneous transmission of more VoD connections, which meet QoS requirements. The only drawback of TFRC is the increase of IPTD. 4.2 VoD Transmission Sharing Bottleneck with TCP Traffic In the next simulations we used single VoD source and increased the number of simultaneous FTP sessions (TCP Reno or TCP SACK). This approach is based on the fact that the most amount of network traffic is TCP. Our simulations have shown that the use of TFRC reduces the value of IPLR for VoD traffic. However, the use of TFRC allows activating only one (two for TCP Reno) more TCP connections in comparison with UDP. Sample results (IPTD and IPLR as a function of number of TCP sources) obtained for “Cinderella Man” are presented in Fig. 5. From the graphs we see that, as in all previous simulations, IPTD increases when TFRC is used, which remains within the boundaries defined for VoD.
On Performance Evaluation of Handling Streaming Traffic in IP Networks
1,0E-01
213
0,6 1
2
3
4
5
6
7
8
9
10
11
12
13 0,5
TFRC (RENO)
IPTD mean [s]
UDP (RENO)
1,0E-02 IPLR
TFRC(SACK) UDP(SACK)
1,0E-03
TFRC(RENO) UDP(RENO)
0,4
TFRC(SACK) UDP(SACK)
0,3 0,2 0,1 0
1,0E-04
1
2
3
Number of TCP connections
4
5
6
7
8
9
10
11
12
13
Number of TCP connections
Fig. 5. IPLR and mean IPTD characteristics for Cinderella Man traffic trace sharing bottleneck with TCP (IPLR – Left, mean IPTD – Right), d2–20 ms , X–15Mbps.
1,0E-01
3,0E+06
6
7
8
9
10
11
12
13
TCP Reno (TFRC)
IPLR
1,0E-03 TCP Reno (TFRC) TCP Reno (UDP)
1,0E-04
Throughput [bit/s]
2,5E+06
1,0E-02
TCP Reno (UDP) TCP SACK (TFRC)
2,0E+06
TCP SACK (UDP)
1,5E+06
1,0E+06
TCP SACK (TFRC) TCP SACK (UDP) 5,0E+05 6
1,0E-05
Number of TCP connections
7
8
9
10
11
12
13
Number of TCP connections
Fig. 6. IPLR and throughput characteristics for selected TCP flow (IPLR – Left, mean IPTD – Right), d2–20 ms, X–15Mbps.
Because in our experiments VoD traffic coexists with TCP connections, it is important to assess the impact that VoD has on the parameters of TCP packet transfer (Fig. 6). The results presented for TCP were obtained for one selected TCP connection. From Fig. 6 we can observe that TCP connections coexisting with VoD transmitted using TFRC have slightly higher IPLR values and lower throughput. This effect we may only observe in case where IPLR of the VoD trace exceeds reference values defined for VoD (see section 5). This is due to the fact that TFRC tends to obtain fair share of the bandwidth and its transmission is more aggressive in comparison with UDP. Nevertheless, the differences were within the error margin and can be considered negligible. From the obtained results we noticed that, due to the dynamic shaping of traffic by TFRC, its packets obtain higher end-to-end delay. The difference with UDP can be as high as 0.6 seconds in our studies. On the other hand, the use of TFRC for VoD reduces the packet loss rate.
5 Conclusions In this paper, we considered the transmission of VoD traffic using TFRC protocol. Our results show that when RTT increases TFRC is able to reduce the IPLR value. However, TFRC performs better than UDP only when buffer size in router R1 and end-to-end delay are small. In this case, it allows transmitting more VoD connections at the same time or running more TCP connections taking into account the reference values of IPTD and IPLR. Moreover, when TFRC is used to transmit, VoD traffic has
214
K. Kurowski and H. Tarasiuk
only negligible influence on TCP throughput. In the future, it can be interesting to compare the effectiveness of TFRC with shaped UDP stream and to verify results in real networks. We would like to consider TFRC for performance evaluation studies on multi-service QoS networks.
References 1. Handley, M., et al.: TCP Friendly Rate Control (TFRC): Protocol Specification. Internet RFC 3448 (January 2003) 2. Handley, M., et al.: TCP Friendly Rate Control (TFRC): Protocol Specification, March 2007. Internet draft (2007) 3. Fall, K., Floyd, S.: Simulation-based Comparisons of Tahoe, Reno, and SACK TCP. SIGCOMM Comput. Commun. Rev. 26(3), 5–21 (1996) 4. Floyd, S., Handley, M., Padhye, J.: A Comparison of Equation-Based and AIMD Congestion Control (February 2000) 5. Floyd, S., et al.: Equation-Based Congestion Control for Unicast Applications. In: ACM SIGCOMM 2000, Stockholm (2000) 6. Floyd, S., Jacobson, V.: Random Early Detection Gateways for Congestion Avoidance. IEEE/ACM Trans. on Netw. 1(4), 397–413 (1993) 7. Kohler, E., Handley, M., Floyd, S.: Datagram Congestion Control Protocol (DCCP). Internet RFC 4340 (March 2006) 8. Lee, H., Lee, S.-h., Choi, Y.: The Influence of the Large Bandwidth-Delay Product on TCP Reno, NewReno, and SACK. In: ICOIN (Japan, January 2001) 9. The Network Simulator (NS-2)., http://www.isi.edu/nsnam/ns/ 10. Padhye, J., et al.: Modeling TCP Reno Performance: A Simple Model and Its Empirical Validation. IEEE/ACM Trans. on Netw. 8(1), 133–145 (2000) 11. Padhye, J., et al.: Modeling TCP Throughput: A Simple Model and its Empirical Validation. In: SIGCOMM Symp. on Commun. Architectures and Protocols, Vancouver (1998) 12. Mathis, M., Mahdavi, J., Floyd, S., Romanow, A.: TCP Selective Acknowledgement Options. Internet RFC 2018 (October 1996) 13. Allman, M., Paxson, V., Stevens, W.: TCP Congestion Control. Internet RFC 2581 (April 1999) 14. Floyd, S., Henderson, T.: The NewReno Modification to TCP’s Fast Recovery Algorithm. Internet RFC 2582 (April 1999) 15. Floyd, S., Kohler, E.: TCP Friendly Rate Control (TFRC): The Small-Packet (SP) Variant. Internet RFC 4828 (April 2007) 16. Widmer, J.: Equation-based Congestion Control, Master’s thesis, University of Mannheim (February 2000) 17. Yang, Y.R., et al.: Transient Behaviors of TCP-friendly Congestion Control Protocols. In: IEEE INFOCOM 2001, Anchorage Alaska (April 2001) 18. Xu, L., Helzer, J.: Media streaming via TFRC: An analytical study of the impact of TFRC on user-perceived media quality. Computer Networks 51(17), 4744–4764 (2007) 19. Ziegler, T., Brandauer, C., Fdida, S.: A quantitative Model for the Parameter Setting of RED with TCP traffic. In: IWQoS 2001, Germany (June 2001) 20. ITU-T Rec.Y.2001, General Overview of NGN (2004) 21. ITU-T Rec. Y.1541, Network Performance Objectives for IP-based Services(2002) 22. VoD traces used: http://tnt.tele.pw.edu.pl/include/tools/vod_traces.php
Efficient Heuristic for Minimum Cost Trees Construction in Multi-Groups Multicast Keen-Mun Yong, Gee-Swee Poo, and Tee-Hiang Cheng Network Technology Research Centre (NTRC) School of Electrical and Electronic Engineering, Nanyang Technological University, Singapore 639798 {yong0010,egspoo,ethcheng}@ntu.edu.sg
Abstract. We propose an efficient and fast heuristic algorithm (MGST) to construct minimum cost tree for each multicast-group in multi-groups multicast. The idea is to construct just one spanning shared-tree that allows minimum cost tree of each multicast-group to be computed from this shared-tree. MGST is compared with the low overheads Core-Based Tree algorithm (CBT) and approximate optimal cost Minimum Cost Tree heuristic (MCT) through simulations. The results showed that MGST constructs trees with average cost close to the approximate optimal (7% difference). The overheads incurred from MGST are also comparable to CBT and much lesser than MCT. In addition, MGST has also shown to construct minimum cost trees much faster than MCT and comparable to CBT. To further improve the performance, “trace back” method is introduced to MGST and denoted as MGST-T. MGST-T yields average cost performance of only 2% difference from the optimal and with almost the same overheads and trees’ construction time as MGST. Keywords: Multicast, Multi-groups, Minimum cost tree, Shared-Tree.
1 Introduction Due to increase demand of multicast services, it is not unusual to have applications that cater multicast services to a wide diversity of users. Each group of users will be assigned a multicast-group within which multicasting can take place and each request to deliver traffic within the group is known as a multicast-session. We refer this as multi-groups multicast. Each user in the group will be identified as the group’s member. The tree constructed to deliver traffic for each group must be cost-efficient due to economic reason. Thus, the problem of computing minimum cost trees in multi-groups multicast is referred as the Multi-Groups Multicast problem (MGM). The problem of constructing minimum cost tree for a multicast-session can be modeled as a Steiner tree problem which is known to be NP-complete [1], and heuristics have been developed to approximate the constructed tree cost to the optimal. The most well-known is the one from [2] which constructs minimum cost tree for each multicast-session from a graph consisting of minimum cost paths between any two nodes for all the nodes. We henceforth refer the heuristic from [2] as A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 215–226, 2008. © IFIP International Federation for Information Processing 2008
216
K.-M. Yong, G.-S. Poo, and T.-H. Cheng
Minimum Cost Tree heuristic (MCT). As MCT or any other source-based algorithms constructs a tree for each session from source to its destinations, the overheads incurred and the time to construct a tree will be large if the number of destinations is large. This is not desirable especially for applications which require the trees to be ready within a short time period. Also, effective algorithms for dynamic membership multicast [3] proposed in [4], [5] will not work well and may incur race condition if the rearranged tree is not ready before the arrival of next member’s addition or removal event. In this paper, we proposed Multi-Groups Shared Tree algorithm (MGST) for the MGM problem. The objective is to construct minimum cost trees comparable to the optimal cost using minimal overheads and time to provide reliable and efficient multicasting. We then further improve the cost performance of MGST and denote it as MGST-T. The organization for the rest of the paper is as follows. Section 2 states the network model. Section 3 gives a brief review of CBT[6] and MCT in multi-group multicast. Section 4 presents the proposed algorithms. The performance of the proposed algorithms is evaluated in section 5. Section 6 concludes the paper.
2 Network Model We model the network as a graph G = (V, E) where V is a set of nodes and E a set of edges. All nodes are assumed to be source and destination node candidate and multicast-capable. Each edge e ∈ E connecting node x and y is denoted as ex , y and has a non-negative cost C (e) associated with it. We assume symmetric link cost. The cost of any directed tree T = (VT , ET ) in the network is given by C (T ) = ∑ e∈E C (e) . T
The set of multicast-groups is given by Q = {q1 ,......, qx } where each group consists of members given by qi = (mi ) . The set of incoming multicast-session requests is given by Y = { y1 ,...., y j } and each request is expressed in the form of yi = { X , si , Di } where si and Di are the source and its set of destinations respectively, and X is the multicast-group ID which the session is requested from. In order to deliver traffic efficiently, a tree Ty is constructed for each session y.
3 Review of CBT and MCT in Multi-Groups Multicast 3.1 Core-Based Tree Algorithm (CBT)
In CBT [6], a core node is first selected and each member of a multicast-group sends a join message to this core node to connect itself to the shared-tree constructed so far. This continues until all the members are connected via the shared-tree. Hence, each shared-tree is shared among the members of each group and the number of CBT required is proportional to the number of multicast-groups involved. However, for each group, since only a single shared-tree is employed, the number of overheads incurred and the processing time to construct the tree ready for data delivery each time a session request is made will be low. Thus, we evaluate the performance of our
Efficient Heuristic for Minimum Cost Trees Construction in Multi-Groups Multicast
217
proposed algorithm using CBT as the benchmark in terms of the overheads incurred as well as the processing time to ready the tree for data delivery. However, due to all paths in tree are required to travel through a core node, the selection of the core node will determine the resource and cost efficiency of the tree. This means that low cost tree cannot be a guarantee since core node selection is complex and can only be approximated most of the time and congestion may occurs at the core node leading to undesirable consequence unless a very efficient queuing model can be applied at the core node. In this paper, to minimize the tree cost constructed by CBT for comparison with our proposed algorithm in terms of both overheads and cost, the core node is selected such that its average minimum cost to the other members in the group is the minimum compared with the rest of the nodes. After which, each member of group is added to the core-based tree by means of least minimum cost path until all the members are connected in the shared-tree. 3.2 Minimum Cost Tree Heuristic (MCT)
In MCT [2], minimum cost path between any two nodes are first computed. These paths make up the links of a minimum cost graph. In this graph, all the nodes are connected via links which corresponds to their respective minimum cost path joining between them. For each incoming multicast-session request, the tree construction starts from the source node. From the source node, the least cost link in the graph to its neighboring member node is appended to the tree constructed so far. The next least cost link from unconnected member node to this tree will then be appended and this continues until all member nodes have been connected to the tree. The links in the obtained tree are then expanded to their respective minimum cost paths. Pruning may be required to remove any unnecessary links. It has been shown in [2] that MCT is able to obtain trees with cost very close to the optimal. Thus, we evaluate the performance of our proposed algorithm using MCT as the benchmark in terms of cost efficiency. However, since a minimum cost tree needs to be constructed for each incoming session request, and the least minimum cost path is required to be searched and selected to append to the tree for connection of each member, therefore the processing time to ready the tree for data traffic and overheads incurred will be significantly larger than that of CBT.
4 Our Proposed Algorithms (MGST and MGST-T) 4.1 Details
Our proposed Multi-Groups Shared Tree algorithm (MGST) consists of two phases. The first phase is to construct a cost efficient shared-tree spanning to all nodes. The second phase is to compute minimum cost tree for each multicast-session from the shared-tree obtained in the first phase. We assumed that the minimum cost path between any two nodes in the graph has been computed using Dijkstra algorithm and stored in the set W. MGST-T is an improvement of MGST where “trace back” method is introduced in the second phase.
218
K.-M. Yong, G.-S. Poo, and T.-H. Cheng
4.1.1 Phase 1: Construction of Cost-Efficient Spanning Shared-Tree
For each iteration of the cost-efficient shared-tree construction, we consider each neighboring node of the existing shared-tree as the potential node to connect. In order to have a cost-efficient shared-tree, the selection function (SF) which selects each neighboring node to add to the tree in each iteration must be in such a way that the cost to deliver traffic via (as a transition node) or from the node (as a source node) is low. A transition node is used to relay data. Hence, for each iteration of the sharedtree construction, the SF of a particular unconnected node j which is a neighbor to the existing shared-tree should consider the average minimum cost to deliver traffic to each node from node j either as a transition node or source node.
Fig. 1. An example of constructing shared-tree in MGST
From fig.1, when the next node is to be added to the sharing-tree, the SF of each potential node j needs to compute the average minimum cost to deliver traffic via node j and this consists of average minimum cost from any of the nodes in the existing shared-tree constructed so far to node j and the average minimum cost to any of the nodes not in the tree from node j, and vice versa. Since symmetric link cost is assumed, therefore only one direction needs to be considered. Since those unconnected nodes cannot be reached via the tree, therefore the computation of the average minimum cost to any of the nodes not in the tree from node j should be approximated by the average minimum path cost from j to the unconnected nodes. Let H and R be the set of unconnected nodes and set of connected nodes to the existing shared-tree respectively. Denoting ek , j as the minimum cost link between the existing shared-tree Ts and node j and Cm ( Px , y ) as the minimum cost path between node x and y, the selection function of a unconnected node j can be expressed as,
⎡1 1 SF ( j ) = ⎢ ⎡⎣C (Ts ) + C (ek , j ) ⎤⎦ + R H ⎣⎢
∑
b∈H
⎤ Cm ( Pj ,b ) ⎥ ⎦⎥
(1)
The first term in (1) computes the average minimum cost from any of the nodes in the existing shared-tree constructed so far to node j and the second term computes the average minimum cost to any of the nodes not in the tree from node j. The node with the least SF value among the unconnected nodes is selected to append to the existing
Efficient Heuristic for Minimum Cost Trees Construction in Multi-Groups Multicast
219
shared-tree via the minimum cost link between the existing shared-tree and the node, and this continues until all nodes are appended to the tree. For each iteration of the shared-tree construction, since the existing shared-tree makes no further changes in its structure, therefore it is independent to the cost contribution to future iteration of the construction process. This means that for the SF computation of an unconnected node during each iteration, the existing shared-tree can be viewed as a single entity, and the first term in (1) can be replaced by the average minimum cost between the existing shared-tree and the unconnected node. Thus, (1) is further simplified as, ⎡ 1 SF ( j ) = ⎢C (ek , j ) + H ⎢⎣
∑
b∈H
⎤ Cm ( Pj ,b ) ⎥ ⎥⎦
(2)
The final tree obtained is the cost-efficient spanning shared-tree. For selecting the first node to include in the shared-tree to start the construction process, it can be observed that since initially no shared-tree is constructed, therefore the first component of (2) is zero and the node with the least average minimum cost to all other nodes is selected to add into the shared-tree to start the construction process. Each node in the existing shared-tree is required to know the up-to-date configuration of the existing shared-tree so that the SF of those unconnected nodes can be computed for further tree construction. Hence, whenever a new node is added to the shared-tree, a control packet which stores the new node addition information is broadcast from the nearest on-tree neighboring node of the added node to all other nodes in the existing shared-tree. The overheads incurred by MGST in phase 1 are the total number of control packets required to complete the shared-tree construction.
Fig. 2. 8-nodes random network and its table of minimum cost path between any two nodes using Dijkstra algorithm. The numeric cost of each path is shown beside the path in the table.
Fig.2 shows an 8-nodes random network and the corresponding minimum cost path between any two nodes tabulated using Dijkstra algorithm. Fig.3 shows the stages of computing the spanning shared-tree using MGST from the network in fig.2. For the first stage shown in fig.3(a), node G has the least SF value of 2.86. Hence, it is selected as the first node to add to the shared-tree. Since only node F, A and H are neighbors to G in the network, therefore their SF are computed while the rest are labeled infinity. Since node A has the least SF, it is selected next to be connected to the shared-tree shown in fig.3(b). If there is a tie in SF value, the one with the least
220
K.-M. Yong, G.-S. Poo, and T.-H. Cheng
Fig. 3. (a) - (g) Seven stages in producing the cost-efficient spanning shared-tree using MGST. (h) The final cost-efficient spanning shared-tree produced by MGST.
connection link cost will be selected to be connected to the shared-tree. This is repeated shown in fig.3(c) to fig.3(f) until all the nodes are connected in the spanning shared-tree shown in fig.3(h). 4.1.2 Phase 2: Construction of Minimum Cost Tree for Each Session When an incoming session arrives, the source-members pair information will be stored in each data packet as part of the packet’s overheads. Each packet will be sent from the source via the shared-tree constructed in section 4.1.1. Each node in the shared-tree upon receiving the packet will check if its descendent sub-tree has any member nodes. If there is, the packet will be duplicated and transmitted out, while no further action will be done if otherwise. Fig.4 shows the tree constructed for a session with source node at C and destination nodes at E, G, F, A and B by MGST, MCT and CBT. The arrows indication in fig.4 shows CBT is a core-based tree with core at G while MGST and MCT are source-based trees. G is selected as the core for CBT because it has the least average minimum cost to the other destination nodes. It can be observed that both MGST and MCT have tree cost of 12 units while CBT has tree cost of 13 units. Although it is fairly simple to obtain minimum cost tree through pruning of the shared-tree in MGST, one disadvantage is that minimum cost tree may not be obtained for all cases. For example, if only a handful of nodes are members, then the session-tree obtained via pruning from the spanning shared-tree may consist a large
Efficient Heuristic for Minimum Cost Trees Construction in Multi-Groups Multicast
221
Fig. 4. An example of constructing minimum cost tree for a session with source node at C and destination nodes at node E, G, F, A, B in network given in fig.2. (a) Session-Tree produced by MGST. (b) Session-Tree produced by MCT. (c) Session-Tree produced by CBT.
Fig. 5. An example of constructing minimum cost tree for a session with source node at C and destination nodes at node F, B in network given in fig.2. (a) Session-Tree produced by MGST. (b) Session-Tree produced by MCT. (c) Session-Tree produced by CBT.
number of non-leaf nodes which are not necessary (redundant nodes) to connect the destination nodes. This leads to redundant cost in the tree and increases the tree cost instead of minimizing it. Fig.5 shows one such example where a session has source node at C and destination nodes at B and F. As node B and F are leaf-nodes in the shared-tree obtained from MGST with respect to the source C shown in fig.5(a), therefore no edges can be pruned and the total session-tree cost is 12 units. This is in big contrast to the tree obtained from MCT and CBT both with session-tree cost of 5 units. To solve this, we introduced “trace back” method to phase 2 of MGST to trace back the minimum cost link between each node of the shared-tree and the current active tree constructed. Each node in the shared-tree upon receiving the packet will check if a direct minimum cost link to the current active tree existed. If so, the minimum link cost is compared to the cost of shared-tree path between the nearest “anchor” node towards the direction of the source and the node. This “anchor” node is defined as the ingress node of the shared-tree path which can be replaced by the minimum cost link to the particular node without creating any dis-joint trees as a result. Hence, “anchor” node can be the source node; ingress of the minimum cost link; a destination node or a node with out-degree greater than one. The minimum cost link replaces the shared-tree path if it has smaller cost. Two extra control packets are required. One packet is required to prune the replaced path and the other packet to activate the replacing link. The idea is to remove redundant nodes in the tree.
222
K.-M. Yong, G.-S. Poo, and T.-H. Cheng
Fig. 6. (a) – (d) Four stages to construct minimum cost tree in MGST-T. (d) The final sessiontree for session with source at node C to destination node B and F.
Fig.6 shows an example of the “trace back” method in MGST. From the sharedtree obtained in fig.3(h), since F is the first node from C which has minimum cost link connecting to the current active tree constructed, therefore the cost of path from C to F in the shared-tree and the cost of minimum cost link between C and F are compared. Since the minimum link from C to F has cost of only 3 units, while the path from C to F in the shared tree has 7 units, therefore the path is replaced with the minimum cost link. However, since G has another link connected to H beside F, therefore only the link between G and F in the path is replaced with the link between C and F shown in fig.6(b). The next node which has minimum cost link connecting to the current active tree constructed is H. As the minimum cost link between F and H is smaller than from C to D to H, the path C to D to H is replaced with C to F to H shown in fig.6(c). And finally at B, since C to B has smaller cost than from C to F to H to E to B, thus the final session-tree is obtained in fig.6(d). This tree has the same low cost of 5 units compared to MCT and CBT shown in fig.5(b) and (c). This is a vast improvement compared to the tree obtained without “trace back” in MGST shown in fig.5(a). For easier reference and distinction of the improvement made to our proposed algorithm, we denote MGST-T as the algorithm with “trace back” method introduced. 4.2 Complexity of MGST and MGST-T 2
The worst case complexity to construct the shared-tree is O( V ) as each node is considered iteratively to append to the shared-tree. As no further action is required other than identifying pruned edges and tracing minimum cost link when session request arrives, by normalizing the complexity of all identification processes whereby tree information is known as O(1) , the complexity to set up session-tree is O(1) . Thus, the total complexity of MGST is O( V ) + O( Y ) where Y is the total set of multicast-session requests. If the worst case complexity is such that each node performs “trace back” in MGST-T, then the total worst case complexity of MGST-T 2
will be O( V ) + O( 2Y ) since again all the “trace back” links and the replaced paths are all known and do not require additional searching. The worst case complexity for 2
CBT and MCT are ∑ q ∈Q O ( qi ) + O ( Y ) and ∑ y ∈Y O( Di ) respectively. 2
i
2
i
Efficient Heuristic for Minimum Cost Trees Construction in Multi-Groups Multicast
223
5 Performance Evaluations 5.1 Performance Metrics 5.1.1 Cost Competitiveness (CC)
It is a measure of a given algorithm’s average tree cost performance with respect to an optimal algorithm. Finding optimal cost tree is proven to be NP-complete. As MCT constructs trees with cost approximate to the optimal, therefore, it is used as the benchmark for cost efficiency. Let R = {T1 ,....., Tx } and U = {B1 ,....., Bx } be the set of trees constructed by a given particular algorithm and by MCT respectively for a total of x = Y multicast-session requests. The CC of a given algorithm is expressed as CC =
⎛ C (Ty ) ⎞ 1 ⎜ ⎟⎟ . A low CC is desired as it means that the given algorithm is ∑ y∈Y ⎜ x ⎝ C ( By ) ⎠
able to construct trees with cost not too far off from the optimal cost algorithm. 5.1.2 Overheads Incurred
We defined overheads incurred as the total number of control packets required to set up the tree ready for multicasting. For CBT, the overheads incurred are the total number of join messages required to construct the trees for all groups. For MCT, the overheads incurred are the total number of control packets sent to each node in the existing tree of each iteration for all iterations of the construction process. For MGST, the overheads consist of the control packets required in constructing the spanning shared-tree. Additional overheads are incurred for MGST-T as mentioned earlier. The overheads incurred should be low to allow lesser resource used for setting up trees. 5.1.3 Tree Construction Processing Time
To measure the complexity of the algorithms we measure the average processing time required to construct a tree for each multicast-session. This does not include the spanning shared-tree construction time at the initialization stage for MGST since we are only interested in the time efficiency between the period when a session request is made and its corresponding tree ready for data transmission. 5.2 Simulation Model
Waxman method [7] was used to generate random networks ranging from 10 to 100 nodes with average node’s outdegree of 3 to 4 to analyze the performance of MGST and MGST-T. Readers are to refer to [7] for details in the method. Each link has cost ranging between 1 to 10 units. 100 multicast-session requests are randomly generated. Each of the requests is to perform multicasting in an arbitrary selected multicastgroup involved. The member size of each group is defined uniformly distributed when all groups have the same member size, and non-uniformly distributed when the groups have different member size. For non-uniform distribution, we defined a member size range K and uses 50% of the network size as the mid-point of the range.
224
K.-M. Yong, G.-S. Poo, and T.-H. Cheng
This means that if the range is K on a network of 100 nodes, the member size distribution ranges from 50 − K to 50 + K . 5.3 Simulation Results and Discussions
Fig.7(a) shows that CBT has an average CC of 1.2 while MGST and MGST-T have average CC of 1.07 and 1.02 respectively. This means that MGST and MGST-T are able to construct trees with cost very close to the optimal and performs much better than CBT. MGST-T has even lower CC than MGST due to the “trace back” method introduced to remove any redundant nodes in the trees to minimize costing. Fig.7(b) shows that the overheads incurred by MGST and MGST-T are smaller than CBT for smaller networks and comparable to CBT for larger networks. This is because the spanning shared-tree gets larger with larger network and thus requires more overheads. It is interesting to note that MGST and MGST-T have much lower overheads incurred compared to MCT (optimal cost heuristic) but yet able to yield also similar cost performance as shown in fig.7(a).
(a)
(b)
Fig. 7. (a) CC vs. Network size. (b) Overheads Incurred in Log10 scale vs. Network size. (group size of 100 and uniform per group’s member size of 50% of network size).
Fig.8(a) shows that the average time taken for MCT to ready a session-tree increases exponentially with increases in network size, while the increase is much more gentle for MGST, MGST-T and CBT. This is due to the employment of sharedtrees which allows sessions to use it to derive the delivery trees without having to reconstruct them from scratch each time. From fig.7(a) , fig.7(b) and fig8.(a), it can be concluded that MGST and MGST-T are able to construct minimum cost trees using minimal overheads and within a very much shorter time. Fig.8(b) shows that as the member size per group increases, CBT increases in CC while MGST and MGST-T decreases in CC. This is because MGST and MGST-T construct trees out of a sharedtree which uses the average minimum cost from a node to the rest as the selection criteria to add each node iteratively. This means that we assume all other nodes are
Efficient Heuristic for Minimum Cost Trees Construction in Multi-Groups Multicast
225
members during the shared-tree construction. Thus, as the member size increases, more member nodes contribute to the average minimum cost computation from one node to all others, thus increasing the accuracy of the selection to construct a cost efficient shared-tree. Even at smaller member size, CC of MGST is comparable to CBT, and as the member size increases, MGST and MGST-T performs much better by having much smaller CC than CBT. It can be observed in fig.8(b) that MGST-T has even lower CC than MGST. This shows that our theory of removing redundant nodes via “trace back” method is correct.
(a)
(b)
Fig. 8. (a) Average tree construction processing time vs. Network size (group size of 100 and uniform per group’s member size of 50% of network size). (b) CC vs. Uniform member size per group (group size of 100 on 100 nodes network).
(a)
(b)
Fig.9. (a) CC vs. Non-uniform member size range per group (group size of 100 on 100 nodes network). (b) CC vs. multicast-group size (uniform per group member size of 100 on 100 nodes network).
226
K.-M. Yong, G.-S. Poo, and T.-H. Cheng
Fig.9 shows that the CC performance of MGST and MGST-T are still much better than CBT and are close to the optimal when the member size per group is nonuniform.. Fig.9(b) also shows that MGST and MGST-T perform much better than CBT when multicast-group size varies from 10 to 100 nodes. MGST-T lies very close to CC=1, indicating MGST-T’s consistency in constructing trees with cost close to the optimal. Again, it can be observed that MGST-T performs better than MGST due to the removal of redundant nodes in the delivery trees. From the above figures, it is easy to conclude that MGST and MGST-T are able to construct minimum cost trees within a very short time and with overheads comparable to the optimal.
6 Conclusion In this paper, we proposed efficient algorithms to construct a single spanning sharedtree used to compute each incoming multicast session tree. We explained the need for an algorithm that constructs cost-efficient multicast-trees within a very short processing time with as little overheads as possible. To lower tree cost even further, “trace back” is introduced to phase 2 of MGST and we denote this improved algorithm as MGST-T. Intensive simulations carried out on MGST and MGST-T against approximate optimal cost heuristic such as MCT and low overheads algorithm such as CBT, showed that MGST and MGST-T are able to compute trees within a very short processing time; with cost comparable to optimal cost MCT and overheads incurred comparable to low overheads CBT. In conclusion, our proposed MGST and its improved MGST-T are able to construct trees with approximate optimal cost in multi-groups multicast much faster than existing algorithms using much lesser overheads. However, it should be noted that MGST and MGST-T are only limited to non-delay constraint scenarios where delays requirement is largely relaxed. With more multicast applications having strict delays requirement, it will be worthwhile to expand MGST and MGST-T to delay-constraint environment as our future work.
References 1. Karp, R.M.: Reducibility among combinatorial problems. In: Miller, R.E., Thatcher, J.W. (eds.) Complexity of Computer Computations, pp. 85–103. Plenum Press, New York (1972) 2. Kou, L., Markowsky, G., Berman, L.: A fast algorithm for Steiner Trees. Acta Informatica 15, 141–145 (1981) 3. Striegel, A., Manimaran, G.: A survey of QoS Multicasting Issues. IEEE Comm. Magazine, 82–85 (June 2002) 4. Raghavan, S., Manimaran, G., Murthy, C.S.R.: A Rearrangeable Algorithm for the Construction of Delay-Constrained Dynamic Multicast Trees. IEEE/ACM Transactions on Networking 7(4), 514–529 (1999) 5. Bauer, F., Verma, A.: ARIES: A rearrangeable inexpensive edge-based on-line Steiner algorithm. IEEE J. of Selected Areas in Comm. 15, 382–397 (1997) 6. Ballardie, A., Francis, P., Crowcroft, J.: Core Based Trees (CBT) and Architecture for Scalable Inter-domain Multicast Routing. In: ACM SIGCOMM 1993, August 1993, pp. 85– 89 (1993) 7. Waxman, B.: Routing of multipoint connections. IEEE Journal of Selected Areas in Communication 6, 1617–1622 (1988)
Delay Bounds and Scalability for Overlay Multicast Gy¨ orgy D´ an and Vikt´ oria Fodor ACCESS Linnaeus Centre, School of Electrical Engineering KTH, Royal Institute of Technology Stockholm, Sweden {gyuri,vfodor}@ee.kth.se
Abstract. A large number of peer-to-peer streaming systems has been proposed and deployed in recent years. Yet, there is no clear understanding of how these systems scale and how multi-path and multihop transmission, properties of all recent systems, affect the quality experienced by the peers. In this paper we present an analytical study that considers the relationship between delay and loss for general overlays: we study the trade-off between the playback delay and the probability of missing a packet and we derive bounds on the scalability of the systems. We use an exact model of push-based overlays to show that the bounds hold under diverse conditions: in the presence of errors, under node churn, and when using forward error correction and various retransmission schemes. Keywords: Overlay multicast, Scalability, Delay, Large-deviation theory.
1
Introduction
Overlay multicast is promising for distributing streaming data simultaneously to a large population of users. The architectures proposed for overlay multicast (a.k.a. peer-to-peer streaming) generally fall into one of two categories: push-based or pull-based. Solutions of both categories utilize multi-path transmission. Multi-path transmission offers two advantages. First, disturbances on an overlay path lead to graceful quality degradation in the nodes. Second, the output bandwidth of the peers can be utilized more efficiently. Push-based overlays follow the traditional approach of IP multicast: nodes are organized into multiple transmission trees and relay the data within the trees. The streaming data is divided into packets and packets are transmitted at roundrobin through the transmission trees, providing path diversity for subsequent packets in this way. The transmission trees are constructed at the beginning of the streaming session and are maintained throughout the session by a centralized or a distributed protocol. Node churn leads to the disconnection of the trees and hence to data loss, which is one of the main deficiencies of push-based overlays.
This work was in part supported by the Swedish Foundation for Strategic Research through the project Winternet.
A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 227–239, 2008. c IFIP International Federation for Information Processing 2008
228
G. D´ an and V. Fodor
Fig. 1. The playback delay and the time needed to connect to the overlay
The pull method (also called swarming) follows the approach of batch peer-topeer content distribution: nodes know about a subset of all nodes (their neighbors); they both receive data from and forward data to their neighbors. There is no global structure maintained, hence the scheduling of data transmissions is determined locally. Pull-based overlays are resilient to node churn as forwarding decisions are taken based on the actual neighborhood information, but their efficiency depends on the scheduling algorithm. Several works deal with the management of push-based overlays ([1,2] and references therein) and with scheduling algorithms for pull-based overlays ([3,4] and references therein). There are also numerous proposals on how to improve the robustness of the overlays to errors using coding techniques such as forward error correction (FEC), multiple description coding (MDC) and network coding [5]. The evaluation of the proposed solutions is mostly based on simulations and small scale measurements; the analytical modeling of overlay multicast has not received much attention. There are a number of commercial deployments of overlay multicast, e.g. [6,7]. Commercial systems often serve hundreds of thousands of peers simultaneously [8], yet little is known how they would behave if the number of concurrent users increased to its tenfold. We argue that there is a need for an analytical understanding of the performance of large systems in order to be able to design systems that can provide predictable and controllable quality under a wide range of operating conditions. The most important difference between overlay multicast systems and peerto-peer content distribution, such as Bittorrent, is the delay aspect: data should be delivered to the nodes before their playout deadline. The probability that data arrive before their playout deadline depends on the playback delay b: the lag between the time of the generation of a packet at the source and the time of the playback at the peers, as shown in Fig. 1. The necessary playback delay for providing good streaming quality may depend on many factors: the overlay’s architecture and size, which determine the nodes’ distances from the source; the per-hop delay distribution, the packet loss probability between the nodes and
Delay Bounds and Scalability for Overlay Multicast
229
the error control solutions used; and the frequency of node departures and the time needed to reconnect to the overlay in the case of push-based overlays. In this paper we consider two questions related to the playback delay. First, how fast does the probability of missing a packet decrease as a function of the playback delay. Second, how fast should the playback delay be increased to maintain the probability of missing a packet unchanged as the overlay’s size increases. We give bounds on the decrease of the packet missing probability and the necessary increase of the playback delay under general assumptions. Our results facilitate the choice of benchmarking metrics for the performance evaluation of overlay multicast systems. The rest of the paper is organized as follows. Section 2 gives an overview of the related work. Section 3 presents bounds on the playback delay and the scalability of the overlays based on the foundations of large deviation theory. Section 4 discusses the delay bounds and the performance of the overlays based on an exact mathematical model of overlay multicast systems, and we conclude our work in Section 5.
2
Related Modeling Work
The trade-off between the available resources and the number of nodes that can join the overlay was studied for overlay multicast systems utilizing a single transmission tree in [9]. The first models that describe the data distribution performance of multi-tree-based overlay multicast were proposed in [10,11] and showed that these systems exhibit a phase-transition when using FEC. The effect of the forwarding capacity on multi-tree-based overlays was investigated in [12] using a queuing theoretic approach, and in [13] based on a fluid model. The delay characteristics of a pull-based overlay were investigated in [4], and the authors showed an exponential relationship between the playback delay and the packet missing probability. The analytical results presented there are limited to a specific packet forwarding algorithm and to complete graphs. In [14] we presented an analytical model of push-based overlays and used the model to identify the primary sources of delay in overlay multicast. We are however not aware of analytical results neither on the scalability of overlay multicast architectures in terms of delay, nor on the effects of the playback delay on the performance.
3
Delay Bounds
We model the overlay as a directed graph G = (V, E) with N = |V | vertices. The set of vertices and edges can change over time due to node churn and due to the overlay management. We chose to omit the time dimension in our notation in order to ease understanding. Let us denote by s the source of the multicast, and by Ti the spanning tree rooted at the source, through which the copies of packet i reach the nodes in V . In a push-based overlay with τ trees the Ti are predetermined by the overlay maintenance entity and ∪Ti = E. In a pull-based overlay the Ti are a result
230
G. D´ an and V. Fodor
of local decisions taken in the nodes, such that all edges (u, v) ∈ Ti are chosen from E. E is maintained by the overlay maintenance entity. Let us denote by the random variable Li (v) the length of the simple path from s to v in Ti , and by the random variable Di (v) the time it takes for packet i to reach node v from s in Ti . We assume that every packet reaches every node after some finite amount of time, i.e., limb→∞ P (Di (v) ≤ b) = 1. Both push-based overlays with retransmissions and pull-based overlays (e.g., using the policy described in [4]) can fulfill this requirement. Di (v) is the sum of Li (v) ≤ N − 1 per-hop delays. We denote the per-hop Li (v) delays by the non-negative random variables Xh (v), i.e., Di (v) = h=1 Xh (v). For example, in Fig. 1, L400 (v) = 6 and L600 (v) = 4, i.e., the packets reach node v on different overlay paths. The distribution of the Xh (v) depends on many factors, e.g., the data distribution model (time spent for coordination between nodes), the probability of losses (due to churn and network congestion), the nodes’ upload capacities, and the distance from the source (many proposed architectures place nodes with large upload capacities close to the source). The probability that node v with playback delay b misses an arbitrary packet i is P (Di (v) > b). 3.1
Playback Delay in Stationary State
First, we consider an overlay in which N is a stationary process, and consequently Li (v) is a stationary process as well. Li (v) has a finite support and the per-hop delays Xh (v) follow distributions with finite moment generating functions (m.g.f), i.e., a light-tailed distribution. We are not aware of measurements that would show heavy-tailed end-to-end delay distributions, but theoretical work has shown that heavy-tailed distributions can arise in the presence of selfsimilar traffic [15]. We argue that the per-hop delays can be modeled with a distribution with finite m.g.f. even in this case, if the back-off scheme in use is sub-exponential, e.g., polynomial. Large delays trigger retransmission requests that cut the heavy tail of the distribution, and the resulting distribution will be geometric-like, which has a finite m.g.f. We leave the case of exponential back-off schemes, i.e., heavy-tailed per-hop-delays, to be subject of future work. Given the per-hop-delays with finite moment generating functions, the sum of the perhop delays has finite m.g.f. even if the per-hop delays are positively correlated, as shown by the following lemma. Lemma 1. Given non-negative random variables Xh (h = 1 . . . n, n > 0) with marginal p.d.f f (x1 , . . . , xn ) such that E[eθXh ] < ∞, for n p.d.f fh (x) and joint θSn Sn = h=1 Xh we have E[e ] < ∞. n Proof. For independent r.v.s the proof is trivial, E[eθSn ] = Πh=1 E[eθXh ]. For correlated r.v.s, we prove the lemma can be used for n > 2. x for n = 2, induction x Let us order X1 and X2 such that 0 f1 (t)dt ≤ 0 f2 (t)dt for ∀ x > x0 (x0 > 0). Let us denote by X2∗∗ a random variable that is distributed as X2 but is in perfect positive dependence with X1 (see [16] for a definition), that is x2 = g(x1 ) for
Delay Bounds and Scalability for Overlay Multicast
231
some function g. E[eθ(X1 +X2 ) ] is a convex, monotonically increasing function, hence [16] ∗∗ E[eθS2 ] = E[eθ(X1 +X2 ) ] ≤ E[eθ(X1 +X2 ) ]. (1)
Since there exists θ > 0 such that E[eθ X1 ] < ∞ ∞ ∞ ∞ E[eθS2 ] = e(x1 +x2 )θ f (x1 , x2 )dx1 dx2 ≤ e(x1 +g(x1 ))θ f1 (x)dx1 (2) 0 0 0 ∞ ≤ a(x0 , θ) + e2x1 θ f1 (x)dx1 < ∞, (3) x0
where (2) holds because of (1), (3) holds because g(x) ≤ x for x > x0 due to the ordering of X1 and X2 , and (3) holds for every 0 < θ ≤ θ /2. Based on Lemma 1 and on results from large deviation theory [17] we can prove the following theorem. Theorem 1. The decrease of the probability that an arbitrary node with playback delay b misses an arbitrary packet in an overlay with N nodes is asymptotically at least exponential in b if the per-hop delays have finite m.g.f. Proof. We use the law of total probability to express the probability of missing a packet P (Di (v) ≥ b) =
N −1
P (Di (v) ≥ b|Li (v) = l)P (Li (v) = l),
(4)
l=1
and in the following we show that the decrease of P (Di (v) ≥ b|Li(v) = l) is asymptotically at least exponential in b for any l. According to Chernoff’s bound for the average An of n i.i.d random variables X (note that it is not the sum, but the average of the r.v.s.) P (An ≥ x) ≤ e−nI(x) ,
(5)
where I(x) is the rate function given by I(x) = maxθ>0 θx − ln(MX (θ)), and MX (θ) = E[eXθ ] is the moment generating function of X. Fig. 2 shows the rate functions for two distributions with different parameters. Chernoff’s bound holds for any distribution for which MX (θ) < ∞, and for x > E[X]. The rate function I(x) is convex for scalar random variables, is monotonically increasing on (E[X], ∞) and I(E[X]) = 0 [17]. For non-negative r.v.s X with E[X] ≥ 0, the derivative ∂I(x) ∂x |x0 ≥ I(x0 )/x0 , so that we have I(ax) ≥ I(x) + (ax − x)I(x)/x = aI(x) and hence
for ∀a > 1
P (An ≥ ax) ≤ e−nI(ax) ≤ e−naI(x) .
(6) (7)
232
G. D´ an and V. Fodor
Fig. 2. Rate function for two distributions (a) X = a+yb where a = 1 and y has discrete uniform distribution on [1, n] and (b) geometric distribution with failure probability p
We apply (7) for the r.v. Di (v) conditioned on Li (v) = l with n = 1 P (Di (v) ≥ ab|Li (v) = l) ≤ e−Il (ab) ≤ e−aIl (b) ,
(8)
where Il (b) is the rate function conditioned on Li (v) = l. Eq. (8) holds for any l, which together with (4) proves the theorem. The result is independent of the distribution P (Li (v) = l), and holds whenever there is enough forwarding capacity in the overlay. It is also independent of the number of packets in the stream and does not make any assumption on the graph’s connectivity or the distribution scheme, in particular, it does not assume a complete graph. The simulation results presented in [4] support our analytical result for pull-based overlays, and we show results later that support the theorem for push-based overlays. 3.2
Scalability
The question we address here is how the probability of missing a packet changes as the overlay’s size increases. The change of the overlay’s size affects the data distribution through the distribution of the Li (v), hence we focus on the question how the increase of the path length Li (v) affects the probability of missing a packet. This way we decouple the problem of scaling in terms of delay from the problem of overlay maintenance, e.g., neighbor selection: the neighbor selection algorithm, random or optimized according to some metric, influences the scaling of the path lengths Li (v). Given the scaling of the path lengths we can evaluate the scaling in terms of delay. A trivial lower bound on the scaling in terms of delay is given by the increase of E[Di (v)], which is proportional to E[Li (v)]. In the following we show that the upper bound is proportional to Li (v) as well. We consider the case when the Xh (v) are i.i.d. random variables with M (θ) < ∞. We note that there are no asymptotic results available for correlated r.v.s, but we conjecture that the following theorem holds for correlated and for non identically distributed r.v.s as long as E[Xh (v)] is bounded from above, and leave the proof to be subject of future work.
Delay Bounds and Scalability for Overlay Multicast
233
Theorem 2. If Li (v) ∼ O(logN ) then the increase of the playback delay b needed to maintain the probability of missing an arbitrary packet unchanged is at most asymptotically logarithmic in N . Proof. We prove the theorem by showing that the upper bound of the playback delay increases logarithmically. We look for a d ≥ 0 such that for a ≥ 0 P (Di ≥ b|Li (v) = l) = P (Di ≥ b + d|Li (v) = l + a).
(9)
We use Chernoff’s bound to express the upper bounds of the probabilities e−lI( l ) = e−(l+a)I( l+a ) . b+d
b
We omit the base and rearrange the exponents to get b b+d b+d l I( ) − I( ) = aI( ). l l+a l+a
(10)
(11)
The right hand side of (11) is always positive. As the rate function is convex and monotonically increasing on (E[Xh (v)], ∞) we have the condition b+d b ≤ , l+a l
(12)
which can be rearranged to ba . (13) l If Li (v) = O(logN ) then as the overlay grows from N1 to N2 we have a ∼ log(N2 /N1 ) and this proves the theorem. d≤
In general, (12) shows that it is sufficient to increase the playback delay at the same pace as the depth of the spanning trees grows in order to maintain the probability of missing a packet unchanged. E.g., if the nodes’ distances from the source grow as a linear function of the overlay’s size, then the playback delay should be increased in direct proportion to the growth of the overlay to keep the packet missing probability constant. Consequently, in order to show that an overlay scales as O(logN ) in terms of playback delay, it is enough to show that Li (v) = O(logN ). Even though this result is in accordance with one’s expectations, it is not straightforward. Unfortunately, the converse of the theorem cannot be proved: there is no upper bound on the increase of the packet missing probability for constant playback delay as the overlay’s size grows, because the increase depends on the shape of the rate function. These asymptotic results indicate that the exponential decrease of the packet missing probability as a function of the playback delay is not a good measure of the efficiency of a scheduling scheme in overlay multicast: all scheduling schemes that manage to distribute the data to all nodes have this property under the assumption that the per-hop-delays have finite m.g.f. The scalability with respect to the overlay’s size is however a good measure: Theorem 2 shows that in a
234
G. D´ an and V. Fodor
scalable overlay the playback delay does not have to be increased faster than the logarithm of the increase of the overlay’s size to keep the packet missing probability constant. While the exponential decrease was shown via simulations for a specific scheduling algorithm in [4], we are not aware of any scheduling algorithm for pull-based systems with analytical results on its scalability.
4
Numerical Results
In the following we present numerical results obtained using an exact model of multi-tree-based overlays presented and validated in [14], and show that the bounds derived using the large deviation approach hold in the presence of various retransmission schemes and FEC. 4.1
System Description
We denote the number of trees in the overlay by τ . We assume the existence of a tree maintenance entity (centralized [18] or decentralized [19,20]) that finds suitable predecessors for arriving nodes and for nodes that lose their predecessors due to node churn or preemption [1,21]. We denote by Lm (v) the distance of node v from the source in tree m, and say that node v is in level l of tree m if Lm (v) = l. Packet i is distributed in tree m = (i mod τ ) + 1. To simplify the notation, we introduce the notion of stripe, and say that packet i belongs to stripe m if it is distributed in tree m. We consider two forms of error control: forward error correction and retransmissions. When forward error correction (FEC) is used, the source adds c redundant packets to every k packets, resulting in a block length of n = k + c. We denote this FEC scheme by FEC(n,k). Once a node receives at least k packets of a block of n packets, it may recover the remaining c packets, and forwards the reconstructed packets if necessary. Block based FEC can be used to implement PET and the MDC scheme considered in [18], where different blocks (layers) of data are protected with different FEC codes: the probability of reception in the different layers depends on the strength of the FEC codes protecting them. We consider three retransmission schemes. A node that detects a packet loss in stripe m requests the retransmission of the packet by one of these three strategies: (RF) from its predecessor in tree m. If the loss is due to node churn then the node will have to wait until a new predecessor is found. (RB) from another node that is forwarding packets in tree m in the same level as the node’s actual predecessor. This scheme assumes that every node maintains a list of backup nodes, but we do not model the overhead of maintaining such a list. (RS) from a predecessor in another tree. A predecessor in another tree is likely to be far away from the source in tree m, hence the retransmission might take longer than using a backup list.
Delay Bounds and Scalability for Overlay Multicast
235
For the RF and the RB strategies, the level of node v in the tree in which packet i should be distributed (Li mod τ (v)) is the same as the distance of v in the spanning tree Ti through which the copies of packet i reach the nodes (Li (v)), i.e., Li (v) = Li mod τ (v). For the RS strategy Li (v) ≥ Li mod τ (v), i.e., due to the retransmissions the spanning tree Ti can be deeper than the trees maintained by the overlay maintenance entity. 4.2
System Parameters
We model the propagation delay Dp by a normal distribution truncated at 180 ms with mean and variance (E[Dp ] = 67 ms, σDp = 21 ms) extracted from a transitstub network of 104 nodes generated with the GT-ITM topology generator [22]. We consider the streaming of a B = 400 kbps data stream, and the capacity of the source node’s output link is C(s) = 100 Mbps. The outdegree of the source, Os , is set to 50 throughout the paper for easy comparison and to ensure that the overlay is feasible for all considered values of the number of trees [12], though the particular value of Os does not affect the validity of our conclusions. The packet size is 1410 bytes. The distribution of the nodes’ output capacities (Cv ) and outdegrees (Ov ) is as in [4] and is shown in Table 1. Since the effect of the input capacity of the nodes is small on the results [14], we consider 10 Mbps for all nodes. Table 1. Distribution of node output capacities and outdegrees Ratio 15% 25% 40% 20% Cv 10 Mbps 1 Mbps 384 kbps 128 kbps Ov 2.5τ 2τ 0.75τ 0.25τ
The inter-arrival times of nodes joining the overlay are exponentially distributed, this assumption is supported by several measurement studies, e.g., [23]. The session holding times M follow the log-normal distribution, the mean holding time is E[M ] = 306 s (μ = 4.93, σ = 1.26) [23]. The nodes are prioritized according to their outdegrees as proposed in [21], hence large contributors are closer to the source in the trees in which they forward data and reconnect faster to the trees. 4.3
Packet Losses
First we evaluate the packet missing probability as a function of the playback delay for the case of packet losses. Fig 3 shows results for the RF scheme with two different packet loss detection times. We denote by tdld = 0 the case when the loss of a packet is detected at the instant when it should have arrived (if it had not been lost), i.e., an ideal loss detection algorithm. We denote by tdld = 1 when a retransmission is requested 1 s after the packet or the retransmission request has been sent out. The figure shows results for N = 104 nodes organized in τ = 4 trees. In the absence of losses (p = 0) the decrease of the packet missing probability is faster than exponential. This is predicted by Fig. 2 (a), as the rate function for the discrete uniform distribution grows faster than linear. The
236
G. D´ an and V. Fodor
Fig. 3. Packet missing prob. vs. playback delay for different packet loss probabilities, and packet loss detection times, τ = 4, N = 104
Fig. 4. Packet missing prob. vs. playback delay for different retransmission schemes, τ = 4, N = 104
rate function of the geometric distribution is however close to linear (Fig. 2 (b)), hence we expect that in the presence of losses the decrease of the packet missing probability is not much faster than exponential. This is supported by the curves that show results for p > 0. The slope of the curves is related to the slope of the rate function of the per-hop delay distribution, the steeper the rate function, the faster the decrease of the packet missing probability. Though for tdld = 1 the loss detection time is big compared to the per-hop delays and hence the packet missing probability decreases almost in a stepwise manner, we still observe the exponential decay. The curves for different loss probabilities and loss detection times show similar properties, they only differ in the slopes of the curves, so in the following we show results for p = 0.1 and tdld = 0. Fig. 4 shows results without losses and with losses for the RF and the RS retransmission schemes. The N = 104 nodes are organized in τ = 4 trees, and FEC(4,3) is used when indicated. We observe that in the presence of losses the exponential decay does not hold when retransmissions are not used. In this case the analysis of the asymptotic behavior presented in [11] with respect to N ,p and the FEC code applies to limb→∞ π(b): the system converges to the asymptotically stable fixed point of the discrete dynamic system shown in [11], and limb→∞ π(b) < 1. Consequently, the assumptions of Theorem 1 are not fulfilled, because all nodes do not receive all data. When using retransmissions, the decay is exponential, as shown by the results for both the RF and the RS retransmission schemes, with and without FEC. FEC decreases the necessary playback delay to achieve a certain packet missing probability, but the exponential decay still holds: in the presence of FEC Di (v) is the minimum of two random variables, the time until the packet would be received through the corresponding parent and the time to FEC recovery (which is the k th order statistic of n − 1 random variables with finite m.g.f.), and hence Di (v) has finite m.g.f. Consequently, an alternative of increasing the playback delay in order to achieve a certain packet missing probability is to introduce FEC. Nevertheless, the ratio of FEC redundancy has to be adjusted dynamically based on feedback from the nodes. We observe a small difference between the results obtained with the two retransmission schemes. Using the RS scheme, retransmission of a packet in stripe m becomes possible only
Delay Bounds and Scalability for Overlay Multicast
237
once nodes that do not forward data in tree m receive the packet. These nodes are in the last level of tree m, and hence, we observe a slow decay of the packet missing probability close to the point where the curves with and without retransmissions separate. Surprisingly, the difference between the results obtained with the RF and the RS schemes is small, especially when FEC is used, in which case the decrease of the decay close to the point where the curves with and without retransmissions separate is significantly smaller as well. Fig 5 shows results for the RF retransmission scheme for different overlay sizes for τ = 4 trees. Both in the presence of losses and in the absence of losses it is enough to increase the playback delay logarithmically in order to maintain the packet missing probability constant. Surprisingly however, the smaller the playback delay needed to achieve a certain packet missing probability for a given overlay size, the more sensitive is the overlay to the increase of the number of nodes. For p = 0 the packet missing probability increases by orders of magnitude if the overlay’s size increases by a factor of ten, for p = 0.1 the increase is significantly smaller. Consequently, even if one could achieve a low packet missing probability with a small playback delay, the playback delay should be overdimensioned to ensure that the packet missing probability does not become too high if the overlay suddenly grows. 4.4
Node Churn
In the following we show analytical results for the case of node churn. For the reconnection times (Ξ) and the disconnection times (Ω) we use values similar to the measured data presented in [1]: E[Ξ] = 5 s and E[Ω] = 200 s in the tree in which a node forwards data, and E[Ξ] = 30 s and E[Ω] = 100 s in the trees in which it does not. (Nodes are disconnected with a higher probability in the trees in which they do not forward data.) In lack of a measured distribution we model the reconnection time Ξ with a normal distribution N (E[Ξ], E[Ξ]/3). Based on these values the loss probability experienced by a node in a tree in which it forwards data (p = 0.024) and in which it does not forward data (p = 0.1968) can be calculated as described in [14]. The distribution of the retransmission times depends on the retransmission scheme used. For the RB and RS schemes we use the retransmission times as discussed in [14]. For the RF scheme retransmission occurs once the new predecessor is found, hence the retransmission time is the sum of the forward recurrence time of a renewal process with inter-renewal time Ξ (see [24]) and the retransmission time of the RB scheme. For all three schemes, retransmissions are asked from nodes that are present in the overlay and consequently limb→∞ P (Di (v) ≤ b) = 1. Figure 6 shows results for the case of node churn and the three retransmission schemes. As expected, the RB scheme, which involves tremendous control overhead, performs best. Surprisingly however, the RS scheme performs nearly as good as the RB scheme, both without and with FEC. This is because under churn nodes experience more frequent losses in the trees in which they do not forward data, i.e., far from the source: when these losses occur, data is already
238
G. D´ an and V. Fodor
Fig. 5. Packet missing prob. vs. playback delay for different overlay sizes
Fig. 6. Packet missing prob. vs. playback delay for N = 104 , node churn and three retransmission schemes
available in large parts of the overlay, hence the additional delay introduced by the RS scheme is small. The RF scheme, due to the large retransmission delays, performs almost as bad as if there were no retransmissions at all. Nevertheless, we observe the exponential decay with a very slow decay rate. The bad performance of the RF scheme suggests that resilience to node churn in a push-based overlay requires retransmission schemes that abandon the rigid structure of the trees, and converge towards pull-based architectures, e.g., the RS and RB schemes.
5
Conclusion
In this paper we presented analytical results that show that in overlay multicast systems the packet missing probability decreases at least exponentially as a function of the playback delay under very general conditions. Consequently, the exponential decrease of the packet missing probability as a function of the playback delay is not a good measure of the efficiency of a scheduling scheme in overlay multicast: all scheduling schemes that manage to distribute the data to all nodes have this property. The scalability with respect to the overlay’s size is however a good measure: the playback delay should not have to be increased faster than the logarithm of the overlay’s size to keep the packet missing probability constant. We used an exact model of push-based overlays to show that the exponential decrease of the packet missing probability holds using various retransmission schemes and FEC. It will be subject of future work to design a provably scalable pull-based scheduling algorithm based on the analytical results on scalability. To the best of our knowledge, our work is the first to present a continuous time analytical model of the effects of the playback delay on overlay multicast.
References 1. Sung, Y.-W., Bishop, M., Rao, S.: Enabling contribution awareness in an overlay broadcasting system. In: Proc. of ACM SIGCOMM, pp. 411–422 (2006) 2. Liao, X., Jin, H., Liu, Y., Ni, L.M., Deng, D.: Anysee: Scalable live streaming service based on inter-overlay optimization. In: Proc. of IEEE INFOCOM (April 2006)
Delay Bounds and Scalability for Overlay Multicast
239
3. Magharei, N., Rejaie, R.: PRIME: Peer-to-peer Receiver drIven MEsh-based streaming. In: Proc. of IEEE INFOCOM (May 2007) 4. Massoulie, L., Twigg, A., Gkantsidis, C., Rodriguez, P.: Randomized decentralized broadcasting algorithms. In: Proc. of IEEE INFOCOM (2007) 5. Fodor, V., D´ an, G.: Resilience in live peer-to-peer streaming. IEEE Communications Magazine 45(6) (June 2007) 6. ‘PPLive,” (June 2007), http://www.pplive.com/ 7. “OctoShape,” (June 2007), http://www.octoshape.com/ 8. Hei, X., Liang, C., Liang, J., Liu, Y., Ross, K.W.: A measurement study of a large-scale P2P IPTV system. IEEE Trans. Multimedia 9(8), 1672–1687 (2007) 9. Small, T., Liang, B., Li, B.: Scaling laws and tradeoffs in peer-to-peer live multimedia streaming. ACM Multimedia (October 2006) 10. D´ an, G., Fodor, V., Karlsson, G.: On the stability of end-point-based multimedia streaming. In: Proc. of IFIP Networking, May 2006, pp. 678–690 (2006) 11. D´ an, G., Fodor, V., Chatzidrossos, I.: Streaming performance in multiple-treebased overlays. In: Proc. of IFIP Networking, May 2007, pp. 617–627 (2007) 12. D´ an, G., Fodor, V., Chatzidrossos, I.: On the performance of multiple-tree-based peer-to-peer live streaming. In: Proc. of IEEE INFOCOM (May 2007) 13. Kumar, R., Liu, Y., Ross, K.W.: Stochastic fluid theory for P2P streaming systems. In: Proc. of IEEE INFOCOM (May 2007) 14. D´ an, G., Fodor, V.: An analytical study of low delay multi-tree-based overlay multicast. In: Proc. of ACM P2P-TV (August 2007) 15. Lelarge, M., Liu, Z., Xia, C.H.: Asyumptotic tail distribution of end-to-end delay in networks of queues with self-similar cross traffic. In: Proc. of IEEE INFOCOM (March 2004) ´ Stochastic bounds of sums of dependent risks. 16. Denuit, M., Genest, C., Marceau, E.: Insurance: Mathematics and Economics 25(1), 85–104 (1999) 17. Schwartz, A., Weiss, A.: Large Deviations for Performance Evaluation: Queues, communication and computing. Chapman and Hall, Boca Raton (1995) 18. Padmanabhan, V.N., Wang, H.J., Chou, P.A.: Resilient peer-to-peer streaming. In: Proc. of IEEE ICNP, pp. 16–27 (2003) 19. Castro, M., Druschel, P., Kermarrec, A.-M., Nandi, A., Rowstron, A., Singh, A.: SplitStream: High-bandwidth multicast in a cooperative environment. In: Proc. of ACM SOSP (2003) 20. Setton, E., Noh, J., Girod, B.: Rate-distortion optimized video peer-to-peer multicast streaming. In: Proc. of ACM APPMS, pp. 39–48 (2005) 21. Bishop, M., Rao, S., Sripanidkulchai, K.: Considering priority in overlay multicast protocols under heterogeneous environments. In: Proc. of IEEE INFOCOM (April 2006) 22. Zegura, E.W., Calvert, K., Bhattacharjee, S.: How to model an internetwork. In: Proc. of IEEE INFOCOM, March 1996, pp. 594–602 (1996) 23. Veloso, E., Almeida, V., Meira, W., Bestavros, A., Jin, S.: A hierarchical characterization of a live streaming media workload. In: Proc. of ACM IMC 2002, pp. 117–130 (2002) 24. Feller, W.: An Introduction to Probability Theory and its Applications. John Wiley and Sons, Chichester (1966)
A Distributed Algorithm for Overlay Backbone Multicast Routing in Content Delivery Networks Jun Guo and Sanjay Jha School of Computer Science and Engineering The University of New South Wales, Sydney, NSW 2052, Australia {jguo,sjha}@cse.unsw.edu.au
Abstract. To support large-scale live Internet broadcasting services efficiently in content delivery networks (CDNs), it is essential to exploit peer-to-peer capabilities among end users. This way, the access bandwidth demand on CDN servers in the overlay backbone can be largely reduced. Such a streaming infrastructure gives rise to a challenging overlay backbone multicast routing problem (OBMRP) to optimize multicast routing among CDN servers in the overlay backbone. In this paper, we take a graph theoretic approach and frame OBMRP as a constrained spanning tree problem which is shown to be NP-hard. We present a lightweight distributed algorithm for OBMRP. Simulation experiments confirm that our proposed algorithm converges to good quality solutions and requires small control overhead.
1
Introduction
Recent experiences of Internet service providers have seen a huge market demand for live Internet broadcasting services in content delivery networks (CDNs) [1]. AOL’s airing of the Live 8 concerts in July 2005 drew about 5 million users within one day and delivered 175,000 concurrent video streams of the concerts at its peak. This record was soon broken by Yahoo!’s broadcasting of NASA’s Shuttle Discovery launch, which is said to have delivered more than 335,000 video streams simultaneously. MSN’s latest broadcasting of the Live Earth concerts in July 2007, using Akamai’s streaming platform [2], has also drawn a global audience of the order of millions of viewers across the Internet. For such an Internet killer application that is both resource-intensive and latency-sensitive, a challenging issue is to design bandwidth-efficient mechanisms and algorithms that can handle large-scale live Internet broadcasting of streaming video efficiently in CDNs. While IP multicast [3] is doubtlessly the ideal solution for supporting large-scale live Internet broadcasting services, enabling IP multicast across the global Internet has not been successful due to its various deployment issues [4]. Until the global deployment of IP multicast could be eventually realized, Internet service providers have to resort to interim solutions. Among them, current service providers in general favor the overlay multicast approach that emulates the forwarding mechanism of IP multicast at the application layer [5,6,7,8,9,10,11,12,13]. A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 240–251, 2008. c IFIP International Federation for Information Processing 2008
A Distributed Algorithm for Overlay Backbone Multicast Routing in CDNs
241
In particular, small-scale service providers (such as PPLive [14]) typically use the peer-to-peer (P2P) approach [5,6,7,8]. In the P2P approach, end users wishing to participate in a live broadcasting session self-organize into an overlay multicast tree rooted at the origin server. The P2P approach, however, cannot yield satisfactory performance in large-scale live broadcasting services [14]. This is mainly due to the fact that current broadband access technologies provide end users with very limited upload bandwidth. The fanout capability of end users is thus significantly restricted. As a result, overlay multicast trees due to the P2P approach could be rather tall, so that end users deep in the tree (hence far from the origin server) are likely to suffer considerable lag [14]. On the other hand, large-scale service providers (such as Akamai [2]) generally adopt the infrastructure-based approach [9,10,11,12,13]. This approach relies on a set of geographically distributed and dedicated servers with large processing power and high fanout capability. Such powerful servers are typically placed at co-location facilities with high-speed connection to the Internet, and thus form a backbone service domain, which we call overlay backbone, for the overlay multicast network. The infrastructure-based approach has been widely used by commercial CDNs to support live Internet broadcasting services [2]. Akamai’s streaming platform largely benefits from a CDN that consists of over 20,000 servers distributed in more than 70 countries. Its solution is, however, a pure infrastructure-based approach, where each end user wishing to view the live broadcasting event is directly connected to one CDN server in the overlay backbone to fetch the live video stream [2]. The pure infrastructure-based approach is not efficient in handling large-scale live Internet broadcasting services, since it is less effective in restricting excessive and redundant traffic to be injected into the Internet, and also because the tremendous access bandwidth demand on CDN servers would render large-scale Internet broadcasting services sheer prohibitive. One flexible and scalable approach is to exploit P2P capabilities among end users as much as possible, so long as a predefined bound on the end-to-end latency can be met [9]. Such a hybrid approach leads to an effective two-tier overlay multicast architecture [13], in which the access bandwidth demand on CDN servers in the overlay backbone can be largely reduced. The two-tier overlay multicast architecture gives rise to a challenging overlay multicast problem among CDN servers in the overlay backbone. For a live broadcasting event, each participating CDN server is made aware of the largest delay from it to end users within its service area as well as the number of end users within its service area. The problem is to optimize the overlay multicast tree among CDN servers in the overlay backbone subject to access bandwidth constraints on CDN servers and the fixed bound on the de facto maximal end-toend latency from the origin server to end users. The optimization criterion is to minimize the weighted average latency from the origin server to the participating CDN servers, which weights each CDN server with the number of end users within its service area. We call such a problem as the overlay backbone multicast routing problem (OBMRP) in this paper. OBMRP is strongly motivated due to
242
J. Guo and S. Jha
the concern that the larger the size of user population within the service area of a CDN server, the larger is the access bandwidth demand that could be placed on the corresponding server. By reducing the latency as much as possible at such servers, it is more feasible to exploit P2P capabilities among end users and thus reduces the access bandwidth demand on CDN servers. In this paper, we take a graph theoretic approach to frame OBMRP as a constrained spanning tree problem and show that it is NP-hard. We propose a lightweight distributed algorithm for OBMRP (hence called OBMRP-DA for brevity). For the purpose of validating the efficacy of OBMRP-DA, we modify the distributed algorithm proposed in [11] for the OMNI problem (hence called OMNI-DA for brevity) to provide a comparable solution for OBMRP. In OMNI, each CDN server in the overlay backbone is made aware of only the number of end users within its service area. The overlay multicast problem addressed by OMNI-DA is to minimize the weighted average latency from the origin server to the participating CDN servers subject to access bandwidth constraints on CDN servers. OMNI-DA cannot guarantee to bound the de facto maximal end-to-end latency as required in the context of OBMRP. Moreover, OMNI-DA relies on a set of local transformation operations which essentially require probing among all nodes within up to two levels of each other. It was observed that such local transformation operations cannot guarantee that a global minimum will be achieved. OMNI-DA thus relies on a random swap operation to divert the algorithm from the local minimum region. Such a random swap operation inevitably introduces significant oscillations to the tree latency and thus prolongs the converging process. We shall see in this paper that our proposed OBMRP-DA benefits from the more efficient transformation operations that we have designed, and thus can significantly reduce the control overhead while yielding solutions of comparable qualities to OMNI-DA. The rest of this paper is organized as follows. Section 2 deals with the problem formulation. Section 3 presents the distributed algorithm. Simulation experiments are reported in Sect. 4. Finally, we draw conclusions in Sect. 5.
2
Problem Formulation
We model the overlay backbone in the CDN as a complete directed graph G = (V, E), where V is the set of N nodes and E = V × V is the set of edges. Each node in V represents a CDN server participating in the live broadcasting session. Let node r be the origin server. All other nodes (in the set V − {r}) are proxy servers. The directed edge i, j in E represents the unicast path of latency li,j from node i to node j. By {li,j }, we denote the matrix of unicast latency quantities between each pair of nodes in G. An overlay backbone multicast tree can be represented by a directed spanning tree T of G rooted at node r. For each sink node in the set V − {r}, we define Rr,v as the set of directed edges that form the overlay routing path from the root node to node v in the multicast tree. Let Lr,v denote the aggregate latency along the overlay routing path from the root node to node v. Let γv be the largest
A Distributed Algorithm for Overlay Backbone Multicast Routing in CDNs
243
delay from node v to end users within its service area, and cv be the number of end users within the service area of node v. The weight wv of node v is given by wv = cv / cv . (1) v∈V −{r}
¯ denote the weighted sum of latencies from the origin server to the proxy Let L servers along T . Let Lmax denote the de facto maximal end-to-end latency from the origin server to the end users. Let LB max denote the specified bound on Lmax . Given the unicast latency matrix {li,j }, we readily have Lr,v = li,j (2) i,j∈Rr,v
and ¯= L
wv Lr,v
(3)
v∈V −{r}
and Lmax =
max (Lr,v + γv ) .
v∈V −{r}
(4)
Let di be the residual degree of node i, and di be the out-degree of node i counted within the overlay backbone multicast tree. Since a spanning tree with N nodes has exactly N −1 edges, the sum of out-degrees in the overlay backbone multicast tree satisfies i∈V di = N − 1. Definition 1. Given the complete directed graph G = (V, E), OBMRP is to ¯ is find a constrained directed spanning tree T of G rooted at node r, such that L minimized, while T satisfies the residual degree constraint, i.e. di ≤ di , ∀i ∈ V , and the bound on the de facto maximal end-to-end latency, i.e. Lmax ≤ LB max . Such a constrained spanning tree problem is NP-hard. This is shown by creating a dummy node for each node v in V − {r} and forming an edge of weight γv between node v and its corresponding dummy node. The resulting problem can be reduced to finding a Hamiltonian path within the augmented graph which is known to be NP-complete [15].
3
Distributed Algorithm
In this paper, we define the ancestor nodes of node i as those nodes (including the root node) in the overlay routing path of the multicast tree from the root node to node i, where the parent node of node i is the immediate forwarding node to node i in the overlay routing path. The child nodes of node i are the immediate nodes that relay from node i in the subtree rooted at node i. The descendants of node i are defined as those end users served by proxy servers (including node i) in the subtree rooted at node i. Our proposed distributed algorithm for OBMRP requires node i, ∀i ∈ V , to maintain the following state information during the iterative tree restructuring process, except for those inapplicable to the root node:
244
– – – – –
J. Guo and S. Jha
ˆi: Parent node of node i in the current tree Φi : Set of all ancestor nodes of node i in the current tree Ωi : Set of all child nodes of node i in the current tree di : Residual degree of node i in the current tree Wi : Aggregate weight of all nodes in the subtree rooted at node i (including node i), which is given by ⎧ node i is a leaf node ⎨ wi , if Wi = wi + (5) Wj , elsewhere ⎩ j∈Ωi
– Lr,i : Latency from the root node to node i, which is given by Lr,i = Lr,ˆi + lˆi,i
(6)
– Γi : Largest delay from node i to end users served by proxy servers (including node i) in the subtree rooted at node i. This can be iteratively computed by γi , if node i is a leaf node
Γi = max max(l + Γ ), γ , elsewhere (7) i,j j i j∈Ωi
Clearly, Γr corresponds to Lmax of the current tree. 3.1
Tree Initialization
Starting from the initial tree including the origin server only, we allow proxy servers in V − {r} to join the tree in a random order, which is realistic in an actual live broadcasting event. If multiple nodes arrive concurrently, they are added to the tree in the decreasing order according to their node IDs. When node i wishes to join the tree, it directly contacts the root node, since the root node by default maintains the list of all nodes in the current tree. Upon the joining request of node i, the root node successively probes the list of nodes in the current tree until node j with sufficient residual degree, i.e. dj > 0, is found. Node i is thus grafted to the tree by registering as a child node of node j. 3.2
Handling of Tree Restructuring Requests
Our proposed distributed algorithm for OBMRP works by allowing each node in T to periodically and randomly contact another node in T to make a tree − → restructuring request. Let i, j denote such a tree restructuring request from node − → i to node j. Following OBMRP-DA, i, j will be simply rejected by node j if the current states and positions of node i and node j in T satisfy one of the five exclusive conditions: 1) i ∈ Φj ; 2) j = r, j = ˆi; 3) j = r, j = ˆi, dj = 0; 4) j = r, − → ˆ ˆ j = i, dˆj = 0; 5)j ∈ Φi − {r}, j = i, dˆj = 0, dj = 0. Node j considers i, j only if the current states and positions of node i and node j in T match one of the five distinct cases illustrated in Fig. 1. In particular, (a), (b) and (c) deal with the various cases where we have j ∈ Φi .
A Distributed Algorithm for Overlay Backbone Multicast Routing in CDNs
245
Fig. 1. Snapshot of the five distinct cases where a tree restructuring request from node i will be considered by node j. Both node i and node j are marked by circles. Node j is pointed by the double arrow.
(a) If j = r, j = ˆi and dˆj > 0, a Type-A transformation (described in Sect. 3.3) will be attempted by node j. (b) If j = r, j = ˆi and dj > 0, a Type-C transformation (described in Sect. 3.5) will be attempted by node j. (c) If j ∈ Φi − {r}, j = ˆi and dˆj > 0, a Type-A transformation will be attempted by node j. If dˆj = 0 but dj > 0, node j will instead attempt a Type-C transformation. (d) If ˆj = ˆi, a Type-C transformation will be attempted by node j provided dj > 0. However, if dj = 0, node j will instead attempt a Type-D transformation (described in Sect. 3.6). (e) In all other situations where neither i ∈ Φj nor j ∈ Φi , node j will selectively attempt a Type-A, B (described in Sect. 3.4), C or D transformation (in the corresponding order), depending on if any of the four exclusive conditions, i.e. dˆj > 0, dˆj = 0, dj > 0, or dj = 0, holds true. 3.3
Type-A Transformation
Since dˆj > 0, node i (together with its subtree if any) is switched to be a child node of node ˆj, given that ˘ r,i = (L ˆ + lˆ ) − (L ˆ + lˆ ) > 0 L r,i i,i r,j j,i
(8)
˘ r,i denotes the amount of variation on Lr,i . Clearly, such a transformation where L reduces the end-to-end latency Lr,j of each node j in the subtree rooted at node ˘ r,i , and thus reduces L ¯ by Wi · L ˘ r,i without increasing Γr of the current i by L tree. We illustrate an example of the Type-A transformation in Fig. 2(a) for the case presented in Fig. 1(e). 3.4
Type-B Transformation
Since dˆj = 0, if (8) holds true, we may switch node j to be either a child node of node ˆi, or a child node of node i after node i is grafted to node ˆj. More explicitly, we check if ˘ r,j = (L ˆ + lˆ ) − (L ˆ + lˆ ) > 0 L (9) r,j j,j r,i i,j
246
J. Guo and S. Jha
Fig. 2. All possible tree restructuring results for the case depicted in (e) of Fig. 1: (a) due to the Type-A transformation; (b) and (c) due to the Type-B transformation; (d) due to the Type-C transformation; (e) to (h) due to the Type-D transformation.
and if
˘ = (L ˆ + lˆ ) − (L ˆ + lˆ + li,j ) > 0 L r,j r,j j,j r,j j,i
(10)
˘ r,j = max(L ˘ , L ˘ ). If L ˘ r,j > 0, we perform the given that di > 0. Let L r,j r,j ˘ transformation by choosing the option that yields Lr,j . On the other hand, if ˘ r,j ≤ 0, but we have L ˘ r,i + Wj · L ˘ r,j > 0, Wi · L (11) ˘ r,j . we proceed with the transformation by choosing the option that achieves L However, this is done only if the transformation does not increase Γr of the B current tree or violate LB max if Γr is already smaller than Lmax . The two possible tree updates due to the Type-B transformation of Fig. 1(e) are shown in Fig. 2(b) and Fig. 2(c). 3.5
Type-C Transformation
This transformation is similar to the Type-A transformation by instead checking if ˘ r,i = (L ˆ + lˆ ) − (Lr,j + lj,i ) > 0 L (12) r,i i,i If so, node i (together with its subtree if any) is simply grafted to node j, since ¯ by Wi · L ˘ r,i without increasing Γr . An such a transformation certainly reduces L example of the Type-C transformation of Fig. 1(e) is shown in Fig. 2(d). 3.6
Type-D Transformation
Given that dj = 0 in this case, if (12) holds true, for each child node c of node j, i.e. c ∈ Ωj , we may switch node c to be either a child node of node ˆi, or a child node of node i after node i is grafted to node j. More explicitly, we check for all c ∈ Ωj if
A Distributed Algorithm for Overlay Backbone Multicast Routing in CDNs
and if
247
˘ r,c = (Lr,j + lj,c ) − (L ˆ + lˆ ) > 0 L r,i i,c
(13)
˘ r,c = (Lr,j + lj,c ) − (Lr,j + lj,i + li,c ) > 0 L
(14)
˘ r,c = max(L ˘ , L ˘ ), and let c denote the node in Ωj given that di > 0. Let L r,c r,c such that ˘ r,c = max Wc · L ˘ r,c . Wc · L (15) c∈Ωj
˘ r,c > 0, we perform the transformation by choosing the option that yields If L ˘ r,c . On the other hand, if L ˘ r,c ≤ 0, but we have L ˘ r,i + Wc · L ˘ r,c > 0, Wi · L
(16)
˘ r,c . we proceed with the transformation by choosing the option that achieves L However, this is done only if the transformation does not increase Γr of the B current tree or violate LB max if Γr is already smaller than Lmax . All four possible tree updates due to the Type-D transformation of Fig. 1(e) are illustrated in Fig. 2(e) to Fig. 2(h), respectively. 3.7
Control Overhead
The control overhead of OBMRP-DA is small due to the four lightweight trans− → formation operations that we design. For a tree restructuring request i, j, the ˆ Type-A transformation only requires probing between node i and node j (i ↔ ˆj for short) to acquire the unicast latency quantity lˆj,i . Similarly, the Type-C transformation only requires probing between i ↔ j to acquire the unicast latency quantity lj,i . The Type-B transformation requires probing between three pairs of nodes, i.e. i ↔ ˆj, ˆi ↔ j and i ↔ j, to acquire the corresponding unicast latency quantities. Even the most elaborate Type-D transformation merely requires probing between i ↔ j, ˆi ↔ c and i ↔ c, ∀c ∈ Ωj , which is within only one level of node j and thus requires only O(|Ωj |) control overhead. It is also important to note that OBMRP-DA defines exclusive conditions for an appropriate transformation operation to be performed, based on the current states and positions of node i and node j in the multicast tree. Consequently, − → any successful tree restructuring request i, j requires no more than one transformation attempt. The time for which the multicast tree is left in a transient state due to the transformation operation is thus minimal.
4
Simulation Experiments
We have examined the efficacy of our proposed OBMRP-DA through extensive simulation experiments. The network topologies used in our experiments are obtained from the transit-stub graph model of the GT-ITM topology generator [16]. All topologies have 12,000 nodes. CDN servers are placed at a set of N nodes, chosen uniformly at random. Due to the space limitation, here we report
248
J. Guo and S. Jha
experiments on one small-size graph (N = 20) and ten large-size graphs (N = 300). Unicast latencies between different pairs of nodes in these overlay topologies vary from 10 to 1000 msec. We set the residual degree as 5 for each node in the small-size graph and 10 in the large-size graphs. The bound LB max is set to 2000 in all experiments. The number ci of node i is randomly selected between 100 and 600. The value γi of node i is randomly generated following a lognormal distribution Log-N(a, b) with a = ci and b = ci . We thus introduce certain statistical correlation between ci and γi . This is due to the concern that it is likely that a larger number of end users within the service area of a CDN server can cause a larger delay from the server to its end users. Based on these overlay topologies, we design the following experiments to study the performance of OBMRP-DA. We have derived an integer linear programming (ILP) formulation for OBMRP (OBMRP-ILP for brevity, provided in the Appendix). Although ILP is known to have an exponential computational complexity and is unlikely to be solved for large-size problem instances, it allows us to find optimal solutions for small-size problem instances of OBMRP. Since OBMRP is NP-hard and the proposed OBMRP-DA uses a random approach for tree initialization, independent runs of OBMRP-DA for the same experiment setting can converge to different solutions. For each experiment setting, we thus solve OBMRP-DA for 200 independent runs, each of which for up to 300 × N successive tree restructuring requests. Results in Fig. 3(a) for the small-size graph are presented in the form of ¯ between the mean results obtained from OBMRPpercentage deviation in L DA and the optimal solutions from OBMRP-ILP. Each data point in Fig. 3(a) corresponds to the case where we set a particular node in the graph with the indicated node ID to be the root node. We see in all instances that the solutions obtained from OBMRP-DA are very close to the optimal solutions. The worst ¯ is within only 6% of OBMRP-ILP. case performance in L As we have discussed in Sect. 1, OMNI-DA proposed in [11] can be modified to provide a comparable solution for OBMRP. For the purpose of comparison, we have modified OMNI-DA by adding the same elements that we have developed for OBMRP-DA to control Γr during the tree restructuring process. While the random swap operation defined in OMNI-DA can have the same effect in improving the latency performance in the context of OBMRP-DA, we did not enable it in our experiments so as to make a fair comparison between the deterministic transformation operations proposed in this paper and those in [11]. For each of the ten large-size graphs, we again set each particular node to be the root node. This creates 3,000 simulation experiments. In each experiment, ¯ performance between OBMRP-DA and OMNI-DA in we compare the mean L the form of a ratio. We also count the number of probing actions required in the tree restructuring process. This is for us to investigate and compare the control overhead (again in the form of a ratio) between the two different algorithms. The ¯ comparison and those from the control 3,000 data points obtained from the L overhead comparison are presented in Fig. 3(b) and Fig. 3(c), respectively, both in the form of cumulative percentage.
(a)
10
100
OBMRP−DA
Cumulative Percentage
Deviation from OBMRP−ILP (%)
A Distributed Algorithm for Overlay Backbone Multicast Routing in CDNs
8
6
4
2
0 0
4
8
12
16
(b) OBMRP−DA
80
60
40
20
0 88
20
90
Root Node (c)
100
94
96
98
60
40
100
102
Maximum Average Minimum
80
80
60
40
20
20
0 4.5
92
Ratio to OMNI−DA (%) (d)
OBMRP−DA
Proportion (%)
Cumulative Percentage
100
249
4.6
4.7
4.8
4.9
5.0
Ratio to OMNI−DA (%)
5.1
5.2
0
A
B
C
D
Type
¯ performance compared with OBMRP-ILP; (b) Fig. 3. Efficacy of OBMRP-DA: (a) L ¯ performance compared with OMNI-DA; (c) Control overhead compared with OMNIL DA; (d) Distribution of transformation operations
These results clearly demonstrate the efficacy of OBMRP-DA. In general, OBMRP-DA converges to better quality solutions than OMNI-DA. In only four ¯ performance of OBMRP-DA is out of the 3,000 simulation experiments, the L slightly worse than OMNI-DA. On average, OBMRP-DA outperforms OMNIDA by more than 5%. However, as shown in Fig. 3(c), OBMRP-DA requires on average only 5% of the control overhead as required by OMNI-DA. This is due to the fact that OMNI-DA relies on a set of five transformation operations which in general require probing among all nodes within up to two levels of each other. In contrast, even the most elaborate Type-D transformation defined in OBMRP-DA merely requires probing between node i and all nodes within one − → level of node j for a particular tree restructuring request i, j. Moreover, this is also due to the fact that, for each particular tree restructuring request, OMNIDA attempts all five transformation operations until one of them is successful. In contrast, OBMRP-DA performs no more than one transformation, and requires only a modicum of the elaborate Type-D transformation operation, as shown in ¯ performance. Fig. 3(d), to achieve the comparable L
250
5
J. Guo and S. Jha
Conclusion and Future Work
In this paper, we have identified and addressed a strongly motivated overlay backbone multicast routing problem to support large-scale live Internet broadcasting services in CDNs more efficiently using the two-tier overlay multicast architecture. We have proposed a lightweight algorithm for solving OBMRP in a distributed iterative way. Simulation experiments have confirmed that our proposed algorithm can yield good quality solutions with small control overhead. Our future work is to design a distributed protocol based on the lightweight algorithm proposed in this paper, and to test the multicast routing performance in real or emulated CDN environments. Acknowledgments. This project is supported by Australian Research Council (ARC) Discovery Grant DP0557519.
References 1. Sripanidkulchai, K., Maggs, B., Zhang, H.: An analysis of live streaming workloads on the Internet. In: Proc. ACM IMC 2004, October 2004, pp. 41–54 (2004) 2. Dilley, J., Maggs, B., Parikh, J., Prokop, H., Sitaraman, R., Weihl, B.: Globally distributed content delivery. IEEE Internet Comput. 6(5), 50–58 (2002) 3. Deering, S.E., Cheriton, D.R.: Multicast routing in datagram internetworks and extended LANs. ACM Trans. Comput. Syst. 8(2), 85–110 (1990) 4. Diot, C., Levine, B.N., Lyles, B., Kassem, H., Balensiefen, D.: Deployment issues for the IP multicast service and architecture. IEEE Network 14(1), 78–88 (2000) 5. Chu, Y.H., Rao, S.G., Zhang, H.: A case for end system multicast. In: Proc. ACM SIGMETRICS 2000, Santa Clara, CA, USA, June 2000, pp. 1–12 (2000) 6. Kwon, M., Fahmy, S.: Topology-aware overlay networks for group communication. In: Proc. ACM NOSSDAV 2002, Miami, FL, USA, May 2002, pp. 127–136 (2002) 7. Zhang, B., Jamin, S., Zhang, L.: Host multicast: A framework for delivering multicast to end users. In: Proc. IEEE INFOCOM 2002, New York, USA, June 2002, vol. 3, pp. 1366–1375 (2002) 8. Banerjee, S., Bhattacharjee, B., Kommareddy, C.: Scalable application layer multicast. In: Proc. ACM SIGCOMM 2002, Pittsburgh, PA, USA, August 2002, pp. 205–217 (2002) 9. Malouch, N.M., Liu, Z., Rubenstein, D., Sahu, S.: A graph theoretic approach to bounding delay in proxy-assisted, end-system multicast. In: Proc. IEEE IWQoS 2002, May 2002, pp. 106–115 (2002) 10. Shi, S.Y., Turner, J.S.: Routing in overlay multicast networks. In: Proc. IEEE INFOCOM 2002, New York, USA, June 2002, vol. 3, pp. 1200–1208 (2002) 11. Banerjee, S., Kommareddy, C., Kar, K., Bhattacharjee, B., Khuller, S.: Construction of an efficient overlay multicast infrastructure for real-time applications. In: Proc. IEEE INFOCOM 2003, San Francisco, CA, USA, March 2003, pp. 1521–1531 (2003) 12. Lao, L., Cui, J.H., Gerla, M.: TOMA: A viable solution for large-scale multicast service support. In: Boutaba, R., Almeroth, K.C., Puigjaner, R., Shen, S., Black, J.P. (eds.) NETWORKING 2005. LNCS, vol. 3462, pp. 906–917. Springer, Heidelberg (2005)
A Distributed Algorithm for Overlay Backbone Multicast Routing in CDNs
251
13. Guo, J., Jha, S.: Host-aware routing in multicast overlay backbone. In: Proc. IEEE/IFIP NOMS 2008 (2008) 14. Hei, X., Liang, C., Liang, J., Liu, Y., Ross, K.W.: Insights into PPLive: A measurement study of a large-scale P2P IPTV system. In: Proc. Workshop on Internet Protocol TV (IPTV) services over World Wide Web in conjunction with WWW 2006, Edinburgh, Scotland (May 2006) 15. Garey, M.R., Johnson, D.S.: Computers and Intractability: A Guide to the Theory of NP-Completeness. W. H. Freeman, San Francisco (1979) 16. Zegura, E.W., Calvert, K.L., Bhattacharjee, S.: How to model an internetwork. In: Proc. IEEE INFOCOM 1996, San Francisco, CA, USA, March 1996, vol. 2, pp. 594–602 (1996)
Appendix Here we provide an ILP formulation for OBMRP. Let the 0-1 variables pvi,j , v ∈ V − {r}, i, j ∈ E, indicate if the directed edge i, j is included in the overlay routing path from node r to node v. Let the 0-1 variables ti,j , i, j ∈ E, indicate if the directed edge i, j is included in the overlay backbone multicast tree. OBMRP can be mathematically formulated as: Minimize wv pvi,j li,j (17) v∈V −{r}
i,j∈E
subject to j:i,j∈E
pvi,j −
pvj,i
j:j,i∈E
⎧ ⎨ 1, if i = r = 0, if i ∈ V − {r, v} , ∀v ∈ V − {r} ⎩ −1, if i = v
pvi,j ≤ (N − 1) · ti,j , ∀i, j ∈ E
v∈V −{r}
(18) (19)
ti,j = N − 1
(20)
ti,j ≤ di , ∀i ∈ V
(21)
pvi,j li,j + γv ≤ LB max , ∀v ∈ V − {r}
(22)
i,j∈E
j:i,j∈E
i,j∈E
The objective function in (17) is equivalent to (3) by the definition of pvi,j . Equations (18) and (19) ensure that the solution is a directed spanning tree rooted at node r. More explicitly, they enforce one single overlay routing path for each source-sink pair. Equation (20) restricts that the sum of out-degrees counts N −1. Equation (21) enforces the residual degree constraint. Equation (22) ensures that the de facto maximal end-to-end latency of the overlay backbone multicast tree is bounded by LB max . All equations jointly ensure that the solution is a directed spanning tree rooted at node r and satisfies all constraints of OBMRP.
Network Performance Assessment Using Adaptive Traffic Sampling René Serral-Gracià, Albert Cabellos-Aparicio, and Jordi Domingo-Pascual Advanced Broadband Communications Centre, Technical University of Catalunya (UPC), Spain {rserral,acabello,jordid}@ac.upc.edu
Abstract. Multimedia and real-time services are spreading all over the Internet. The delivery quality of such contents is closely related to its network performance, for example in terms such as low latency or few packet losses. Both customers and operators want some feedback from the network in order to assess the real provided quality. There are proposals about distributed infrastructures for the on-line reporting of these quality metrics. The issue all these infrastructures must face is the high resource requirements to keep up with accurate and live reporting. This paper proposes an adaptive sampling methodology to control the resources needed for the network performance reporting. Moreover, the solution keeps up with accurate live reporting of the main network performance metrics. The solution is tested in a European wide testbed with real traffic which permits to assess the accuracy and to study the resources consumption of the system. Keywords: Traffic sampling, Adaptive sampling, Quality assessment, Network Metrics, Distributed traffic monitoring.
1 Introduction Since the apparition of multimedia tools such as Skype or Ekiga the Internet became a multimedia aware system. Using these services usually comes with an associated fee. Hence, the clients require some guarantees in the Service Level Agreement (SLA). This raises the need of providing some feedback to the customers about the performance given by the network, nowadays achieved through the so called network quality metrics. Therefore on-line traffic monitoring infrastructures for network performance assessment are quickly spreading. The main goal of such systems is to efficiently provide a distributed intra and inter-domain infrastructure where to evaluate the network metrics. Distributed network monitoring infrastructures can be divided into two main groups: high and low level. On the one hand, high level systems deliver information about the network’s status by focusing on the study of its capacity and availability, while providing means to visually monitor the status of the traffic. On the other hand, low level approaches focus on direct traffic observation for assessing the network performance. These systems may use a distributed infrastructure in order to gather the network
This work was partially funded by IST under contract 6FP-004503 (IST-EuQoS), MCyT (Spanish Ministry of Science and Technology) under contract TSI 2005-07520-C03-02 and the CIRIT (Catalan Research Council) under contract 2005 SGR 00481.
A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 252–263, 2008. c IFIP International Federation for Information Processing 2008
Network Performance Assessment Using Adaptive Traffic Sampling
253
metrics. This requires of certain control traffic to maintain the structures for the live reporting. Our solution uses a low-level approach, which instead of providing information about the availability of the network or gathering information for off-line processing, it provides real-time information about the following network metrics: One-Way Delay (RFC-2679), Packet Loss Ratio (RFC-2680) and bandwidth usage. These metrics are among the most used, as stated on ITU-T Rec. Y.1540, and help operators to monitor and verify the status of their network. In order to achieve this we proposed the Network Parameter Acquisition System (NPAS) [1], a distributed monitoring infrastructure that collects and analyses the traffic on-line in an intra-domain environment. NPAS collects the traffic in all the different ingress and egress points of the domain under analysis, monitors the desired flows and sends the collected information to an analysis unit. The analysis unit computes the metrics by using the collected information through timestamps and packet sizes. Gathering this information in a per packet basis is very expensive in terms of bandwidth and processing resources needed by the control traffic. In our previous work we proposed mechanisms that used traffic aggregation [1] and traffic static sampling techniques [2] in order to reduce the resource consumption. We plan to further reduce the used resources with an adaptive sampling technique. The novel proposed distributed adaptive sampling dynamically adapts the sampling rate depending on the traffic conditions, reducing the resources needed by the control traffic down to 4% compared to the case of per packet reporting. Specifically our contribution uses the IP Delay Variation in order to estimate the accuracy of the sampled results, adjusting the sampling rate accordingly with minimum loss in accuracy. Moreover, the technique efficiently controls the use of resources, scheduling the sampling rates as required by the system. The system is tested in a European wide scenario by using 12 different locations with different traffic profiles. The results show that the enhancements permit a tight control over the used resources for the reporting and an increase in the accuracy compared to the case of static sampling. The rest of the paper is structured as follows, next section focuses on the explanation of the already existing solutions to perform distributed network performance assessment, centring on the most similar to our work. The paper continues by describing the state of the art in network parameter acquisition system and the current static sampling solution. After this the paper centres on the main proposal, which is an adaptive sampling solution to schedule the resources used for the live network performance assessment. This approach is validated in section 5, where tests in a real scenario are performed. The paper finishes with the conclusions and the work left for further study.
2 Related Work Traffic sampling is a broadly deployed technique used to reduce the resources required for traffic analysis [3, 4]. In general the sampling schemes are static [5], where a sampling rate is decided in advance and applied during all the study. Others use adaptive
254
R. Serral-Gracià, A. Cabellos-Aparicio, and J. Domingo-Pascual
methods [6] which decide dynamically the best sampling rate over time, adapting to the changes suffered by the system. Given the distributed nature of our scenario, the applicable sampling schemes are limited. Duffield et. al developed a sound methodology, namely trajectory sampling [7], based on hash sampling, which was used to infer packet paths simultaneously with different collection points. This schema has been used several times in other scenarios [2, 4, 8] using static sampling rates. As it has been said before, we propose a novel adaptive sampling technique based on the trajectory sampling, but relying on the IP Delay Variations (IPDV). We apply this technique on a distributed scenario used to monitor specific network performance metrics. Regarding distributed network performance assessment proposals, at the best of our knowledge very few tools have been published. Firstly, perfSONAR [9] is a tool intended to monitor any network metric on a distributed fashion. Specifically the authors present a methodology that provides meaningful network performance indicators, which can be used to visually monitor the status of the traffic. The main difference between this tool and our proposal is that while perfSONAR limits the study to the link status by active traffic generation, NPAS analyses directly the network metrics by passively collecting the traffic. Secondly InterMON [10] is based on interaction and coordination of different kinds of tools with access to a common database. The system’s main goal is to gather network metrics for off-line processing, analysis and data-mining. In this case, the main difference between InterMON and our proposal is that we are focused on providing live values for some network metrics not just gathering information for off-line processing.
3 Description of Network Parameter Acquisition System Network Parameter Acquisition System as proposed in [1] is a distributed network performance assessment infrastructure. It computes the network metrics suitable to quantify the network performance over sensible traffic (e.g. VoIP or Videoconferencing) on-line. The system collects the traffic on each ingress and egress points in the network, and only analysing the traffic selected by the configured filters. It computes the following network metrics: One-Way Delay (OWD), Packet Loss Ratio (PLR) and used bandwidth. 3.1 Basic System This infrastructure presents a framework which reports the intra-domain traffic metrics to higher layer entities to assess whether the specified performance constraints (policies) are fulfilled or not. This mechanism can also be used for triggering alarms to give feedback to other system units in case that the network is not providing the contracted quality . Both alarms and policies management are out of the scope of this specification. Figure 1 shows a generic network scenario where the system is deployed. It is composed by the following entities:
Network Performance Assessment Using Adaptive Traffic Sampling
255
Fig. 1. Example Scenario
The Monitoring Entity (ME) is in charge of the traffic collection via selection filters. The traffic selection policy aggregates the data in a per flow or per Class of Service (CoS) basis, but it can be easily extended to others. The traffic information collected by MEs is sent to a per-domain analyser entity (Processing Entity - PE) which computes the network metrics of all the traffic under analysis. The Processing Entity (PE) is the gathering point within the domain. It configures the ME policies, performs most of the processing, matches the information of the packets coming from the MEs and computes the network metrics on-line. The results are published as a network management service to monitor the status of the traffic under analysis in real-time. Depending on the information sent by the ME more control traffic is required to perform the monitoring. In general this can be a problem for under provisioned domains without dedicated links for network management traffic, we believe that this is the case in most ISPs. NPAS controls this issue by having three different modes of operation: i) per packet reporting, where the traffic information is sent in a per packet basis. ii) using time aggregation, where a time sliding window is used to optimise the network usage. iii) by using traffic sampling, as further discussed in the section 3.2. More detail in the specification of the first two modes and the analysis of the bandwidth usage can be found at [1]. In this paper we focus on the traffic sampling mode of operation. 3.2 Static Distributed Sampling The complexity of applying sampling in this distributed scenario is that centralised techniques (e.g. the techniques studied in [11]) are not well suited for this task, since they do not guarantee that all the ME capture exactly the same set of packets. Thus, accurately determining packet losses or one way delays is not feasible. We addressed this issue in [2] by using a deterministic sampling technique. It was used to match exactly the same packets all over the different ME to compute the network metrics. This permits to all the different ME to collect traffic independently, and only the selection function at start up time has to be shared by the MEs.
256
R. Serral-Gracià, A. Cabellos-Aparicio, and J. Domingo-Pascual
This distributed sampling technique computes a hash function over a set of fields on the packet’s header. For this to work in our environment, using only one hash table is not sufficient, since the monitoring framework has to guarantee that all the flows under analysis are considered. So, the sampling must be applied within individual flows, not directly to all the collected traffic. Hence, the packets are identified by using two different keys, flow and packet with the corresponding two level hash table. Thus, a packet is only analysed if it falls within specified positions in the hash table (A), of which only the first r packets are considered. Changing r gives different sampling rates ( Ar ). The hash table is sent from each ME to the PE when A packets have arrived or after a timeout t. This time interval t is known as a bin and it limits the upper bound for the live reporting interval. This permits to efficiently control the resources and the applied sampling rate.
4 Adaptive Distributed Sampling Using traffic sampling in order to reduce the required resources is usually a good option. But choosing the optimal sampling rate with minimum loss of accuracy is not straightforward. Moreover, knowing that control traffic (the reporting information from MEs to PEs) must be limited on the network, it might force the per flow sampling rate to be further reduced. Hence, selecting the right flows to reduce the sampling rate leads to better results than just equally sharing the sampling rate among the flows. The methodology presented here permits to efficiently estimate the One-Way Delay and Packet Loss Ratio using adaptive sampling. 4.1 Problem Formulation Given a domain D with R = {r1 , . . . , rn } ingress and egress points of the network, and FD = { f1 , . . . , fm } the list of active flows within the domain. Then R fi (t) (Ri from now on) is the rate of the ith flow at time t, being n the number of ME and m the number of flows. For simplicity we consider through out the paper that the resources for a ME is the bandwidth required to send information to the PE. The resources required to monitor all the existing flows from ME i to ME j are xi j = S
m
∑ δi jk Rk
(1)
k=1
where S is a constant defining the amount of resources needed to process (and send) a single control packet, for example the number of bytes. As it is a constant, for the ease of exposition we will assume S = 1. And δi jk = 1 if fk goes from ri to r j and 0 otherwise. From this we derive that the resources required for each ME (Xi ) are Xi =
∑nj=1 xi j + xji . Hence, reporting in a per packet basis implies that the total amount of resources (X ) required for on-line monitoring in domain D is: XD = ∑ni=1 Xi . In general per packet reporting requires too much resources to be feasible. We ease this requirement by applying adaptive traffic sampling to the solution. We consider
Network Performance Assessment Using Adaptive Traffic Sampling
257
that XD are the global resources available to perform the collection and performance assessment. We need a fair share of the resources among all the ME, considering that ME with more load (e.g. with more number of monitored flows) deserve more of the resources. Hence, we need to adapt the per flow sampling rate (ρ) in order to comply with this restriction: m
XD ≥ X ≥ S ∑ ρi Ri
(2)
i=1
where ρi is the sampling rate (0 ≤ ρi ≤ 1) of flow i, Ri the rate in packets per second and X the maximum resources reserved for the monitoring. Note that Ri (in packets/sec) is known since the ME initially must collect all the traffic to decide whether it falls within the specified threshold set in the hash table as described in 3.2. We need a lower bound of the sampling rate, namely ρimin , which guarantees that it is adjusted depending on the rate in a per flow basis, since low rate flows at small time scales are very sensible to sampling rates. This lower bound determines the minimum required resources for the whole monitoring task. Thus, m
Xmin = ∑ ρimin Ri
(3)
i=1
Where ρimin is the minimum ρi for flow i. This works well if the traffic has constant rates, but since traffic in general is variable these values need to be updated periodically. Moreover, new and expired flows are bound to appear over time. Both the flow management and the update strategy will be discussed later. The minimum applicable sampling rate has to take into account the rate of the flows, limited by expression ρimin = R1i ∀i \1 ≤ i ≤ m. Where ρimin is the minimum applicable sampling rate for all fi . This guarantees at least that one packet per flow is captured. If cmin is the number of samples per fi then, ρimin = 1 ∀i \cmin ≥ Ri cmin ρimin = , otherwise Ri
(4)
when more precision is required or more resources are available, assuring that at least cmin packets per flow are considered. In the same way we can define the maximum sampling rate to ρimax = 1 ∀i \cmax ≥ Ri cmax ρimax = , otherwise Ri
(5)
where cmax determines the maximum number of per flow packets to be collected. Then Xmax = ∑m i=1 ρimax Ri and Xmax ≤ X ≤ XD . In order to ease the exposition we define ximin and ximax which refer to the minimum and maximum resources for a particular flow respectively.
258
R. Serral-Gracià, A. Cabellos-Aparicio, and J. Domingo-Pascual
4.2 Resource Sharing With equations 2 and 3 we know that after Xmin are used, the remaining available resources (ΔX) to share among the flows are ΔX = X − Xmin
(6)
The goal now is to share the ΔX resources. Let’s define ωi as the weight assigned to the flow i where ∑m i=1 ωi = 1, then the resources assigned to the flow follow equation 7. xi = min {ΔX ωi + ximin , ximax }
(7)
It can be noted that the resources assigned to the flow are bounded by the Xmax as assigned previously. Now the weights (ω) may be assigned in different ways, in this work as a proof of concept we study IPDV driven sharing. IPDV driven. The ΔX resources need to be shared smartly. Obviously it is much more useful to increase ρi for flows with less accuracy on the metric estimation. But the estimated error is unknown in advance, so it is not possible to determine the sampling rate deterministically. The proposed mechanism uses I PDV as a measure of the accuracy of the estimator. Before detailing the methodology, it is important to define IPDV in our context. IPDV usually is defined as OW Di − OW Di−1 , excluding lost packets (See RFC-3393), or as OW D99.9th prc − OW Dmin in Rec. ITU-T 1541. In our work the first definition is not applicable since the packet sequence is lost during the sampling. Regarding the second option, obtaining the 99.9th percentile for low rate flows is not possible because there are too few packets in the bin. As an alternative, RFC-3393 states that it is possible to specify a custom selection function to compute IPDV . Hence we use IPDVi = |OW D− OW Di |, for all the i packets within the bin. Where the estimator OW D = E[OW D] for all the sampled packets. Using the IPDV as an accuracy estimator is based on the following rationale: 1. Constant OW D leads to null IPDV , where both OW D and I PDV can be perfectly estimated using ρimin . 2. High IPDV with low ρi might lead to inaccurate OW D since the subset of packets selected by ρi may not be representative enough. Hence it is worth to increase ρi for high variable flows. 3. But, in some cases, with ρi we can incorrectly estimate small I PDV due to the bias of the selected subset. This false negative will be corrected in later bins as I PDV converges. 4. The other case is incorrectly estimating high I PDV when in reality it is low. That being a false positive and forcing a needless increase of ρi for the flow. But not leading to incorrect estimation. The probability of false positives or false negatives decreases as ρi increases. Then the system automatically tunes ρi reducing these mistakes in the estimation. Therefore, the different weights (ωi ) are distributed using:
Network Performance Assessment Using Adaptive Traffic Sampling
ωi =
259
I PDV i m ∑ j=1 I PDV j
(8)
Fairly scheduling the ΔX resources proportionally to its delay variation. 4.3 Update Strategy Flow rates vary over time, ideally in our approach we need the rate for all flows in advance. Since this is not possible in a distributed scenario, our proposal uses a periodic updating mechanism divided into these steps: 1. Warm-up phase: Initially the PE assigns xmin resources to the system. 2. Working phase: In each step (bin of size t) the PE collects the rates and the estimated network metrics and computes the corresponding ci for each flow fi as explained before. This ci will be effective on the next step. Since the rate (ri ) might vary from one bin to the other, the estimated effective rate ∑k R considered in the analysis is Rˆ = i=1 i , where k is the history of the system. k
4.4 New and Expired Flows Since users connect to and disconnect from many services, continuously new flows arrive and others end in a domain. In our system the effects of such behaviour are that expired flows release resources for the reporting, while new flows force a rescheduling of the already shared ones. In the case that a flow does not have any active packets on the bin, its resources are not used in the current step. Note that increasing the ρ for other flows would lead to incorrect estimation as the other ME receiving (or sending) the flow are not aware of the situation. In the next bin, the flow without active packets will be assigned cmin resources and will enter in the Warm-up phase again. If a flow stays in Warm-up phase during several consecutive bins it is considered as expired, hence it is removed from the resource scheduling. Another condition to be considered is the apparition of new flows on the system. When this occurs, there is no time for the ME to ask the PE for a rescheduling of the resources, so the ME enters in local rescheduling mode. We know that each ME has Xi resources dedicated to it. Therefore to accommodate the new flow (x j ) the ME has the following alternatives: 1. There are flows without active packets in the bin: in this situation cmin resources from that inactive flow are used for the new. Equation 7 guarantees that the resources are present. 2. All the flows have active packets: ME (r j ) searches for the max(xi ) ∀i x1...m and shares its resources in the following way: xinew = xi − cmin and x jnew = cmin . Forcing x jnew to enter in Warm-up phase. The PE can fairly reallocate the resources to fit the new situation in the next step.
260
R. Serral-Gracià, A. Cabellos-Aparicio, and J. Domingo-Pascual
5 Tests and Results The adaptive sampling methodology proposed in this paper has been validated by a set of more than 500 experimental tests performed during 2006 using twelve different testbeds across Europe. The testbeds were provided by EuQoS [12] partners, covering a total of 5 countries and 4 different access technologies (LAN, xDSL, UMTS and WiFi) [13] with an overlay architecture on the Géant research network. For this work the testbed is configured to act as a single domain, with one ME deployed on each testbed, amounting to 12 ME and 1 PE on this scenario. 5.1 Validation Tests The tests were performed by actively generating synthetic periodic traffic, emulating different applications, namely VoIP and Videoconferencing; with a broad set of combinations of different packet rates and packet sizes, from 16 up to 900 packets per second, with a random duration between 1 and 10 minutes. A wide range of packet loss and delay variation conditions were encountered given the different cross-traffic found on the network at different days, hours and physical location of each testbed. The goal of the evaluation is twofold, in the one hand we compute the accuracy in the estimation of OWD and PLR. On the other hand, we analyse the used resources for the task. For each test the full trace was collected. With the traces we simulated a network with the flows entering and leaving the system following an uniform randomly distribution up to a maximum of 100 simultaneous flows. This way we were able to evaluate the results for different resource reservations (X) by taking as reference the complete original trace. In the experiments the used X were: 7000, 5000, 3000, 2000, 1000, 500, 300 and 200 with the constant S = 1 as detailed before. We also consider a bin size of t = 175ms which provides a good tradeoff between the interval for live reporting and collection time to apply the proper sampling rate. We used previously this bin size with success in [1]. Summarising the methodology used for obtaining a trace per different resources is: 1. 2. 3. 4. 5. 6.
Generate the test traffic and monitor all the traces in the MEs. Simulate the scenario with multiple simultaneous flows using the real traces. Split the results into bins of size t. Apply off-line the adaptive sampling for the different resources (X). and the average OW For each bin and X the PLR D are computed. Finally the estimated OWD for the sampled bin is compared with the real value.
5.2 Evaluation Results In order to evaluate the system we compare the obtained accuracy using adaptive sampling with the application of a fairly equivalent static sampling. Since the sampling rate (ρ) depends directly of c and Ri not all values of ρ within a bin lead to a feasible situation. For example, for low rate flows, (e.g. 16 packets per second), using the bin size t = 175ms leads to 3 packets per bin, then ρimin = 23 since with IPDV we need at least 2 packets to compute it. But in the case of flows with 200 packets per bin then 2 ρimin = 200 .
1
1
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
Probability
Probability
Network Performance Assessment Using Adaptive Traffic Sampling
0.5
0.5
0.4
0.4
0.3
0.3
0.2
0.2 X=200 X=1000 X=7000
0.1 0
261
0
0.05
0.1
0.15
0.2
0.25 γA
0.3
0.35
0.4
0.45
ρ=3.8% ρ=11.3% ρ=30.9%
0.1 0
0.5
0
0.005
0.01
(a) Adaptive sampling
0.015
0.02
0.025 εS
0.03
0.035
0.04
0.045
0.05
(b) Static Sampling
Fig. 2. CDF of OWD accuracy comparison between adaptive and static sampling
Required resources: The row labelled as (ρe f f ) of Table 1 shows the amount of resources effectively needed for each value of X. It details the global sampling rate applied taking into account all the flows and their durations. This value is obtained by aggregating all the considered samples out of the total amount of packets sent by all the tests. As it can be noted for low X values the sampling rate is very small, which means that only 3.8% (in the case of X = 200) of the resources needed to monitor XD are required by our proposal. Table 1. Effective global sampling and Delay and Loss errors for 95th percentile per X X ρe f f εdelay γloss
200 3.8% 0.025 0.22
300 4.5% 0.018 0.17
500 7.3% 0.013 0.15
700 9.0% 0.012 0.11
1000 11.3% 0.010 0.09
2000 17.6% 0.008 0.07
3000 23.4% 0.007 0.06
5000 27.3% 0.005 0.05
7000 30.9% 0.005 0.05
OWD Estimation: In order to evaluate the accuracy of the OWD estimation we compared obtained per X with the real traces by using relative delay error values: the results ˆ ε = 1 − Dd . Where D is the average OWD per bin taken from the complete trace and dˆ stands for the estimate obtained by our solution for different X. Figure 2 shows the comparison between adaptive sampling (left) and static sampling (right). The figures show the Cumulative Distribution Function (CDF) for various X for the adaptive and equivalent sampling rates for the static case. The X-axis of the figures holds the relative error (ε) while Y-axis is the error probability. The results clearly show the gain obtained by our adaptive solution. Where adaptive sampling outperforms static sampling by around 50% for low values of X. For example in 95% of the tests, for X = 200 the εA ≤ 0.020 while εS ≤ 0.040. When the resources are increased the difference is reduced down to 5% and below for X ≥ 1000. Moreover, adaptive sampling gives a more robust and reliable mechanism to control and schedule the used resources. This sensible gain in accuracy is further enhanced when dealing with packet losses as shown later.
R. Serral-Gracià, A. Cabellos-Aparicio, and J. Domingo-Pascual 1
1
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
Probability
Probability
262
0.5
0.5
0.4
0.4
0.3
0.3
0.2
0.2 X=200 X=1000 X=7000
0.1 0
0
0.05
0.1
0.15
0.2
0.25 γA
0.3
0.35
0.4
0.45
ρ=3.8% ρ=11.3% ρ=30.9%
0.1
0.5
(a) Adaptive sampling
0
0
0.05
0.1
0.15
0.2
0.25 γS
0.3
0.35
0.4
0.45
0.5
(b) Static Sampling
Fig. 3. CDF of PLR accuracy comparison between adaptive and static sampling
From the accuracy point of view the figure 2 shows that increasing the resources for the reporting improves greatly OW D, in fact 95% of the tests had an error smaller than 0.025 as summarised in the row labelled as εdelay in Table 1. PLR Estimation: Given that many flows did not have any packet loss and the system always estimates this case correctly, we decided to remove from the study such flows for not biasing the results. In this case PLR comparison is performed by using absolute errors. The results show that the accuracy is lower than for OWD as shown in Figure 3, but much higher than in the case of static sampling, whose error is up to ∼ 25% in the best considered case (30.9% sampling) for 95% of the tests. Compared to the worst obtained with adaptive sampling which is ∼ 20% for the minimum resources. Eventhough for reasonable sampling rates the results show an error lower than 10% for 95% of the cases, the full details are in the row labelled as γloss in Table 1. A way to overcome this lower accuracy in the estimation of PLR, is to increase the bin size (t) in order to gather more information per bin. Hence improving the sampling estimation of
the number of lost packets, which error is bound by ε ≤ 1.96 1c where c is the number of lost samples detected. A deep analysis of this is left for further study.
6 Conclusions and Future Work In this paper we proposed a new adaptive sampling methodology for distributed network performance assessment. Our contribution is focused on the resource scheduling and the optimisation of the required resources with minimum loss of accuracy in the live reporting. As a proof of concept, we use IPDV as an accuracy estimator to set the the sampling distribution. Our adaptive approach outperforms static sampling solutions by smartly scheduling more resources to the flows with poorer estimation in the performance assessment. In order to evaluate the accuracy of the estimation of OWD and PLR, we performed a series of tests in a European-wide scenario. The results show a negligible relative error in the OWD estimation (lower than 2.5% for 95% of the cases). In the case of PLR the accuracy is lower but kept within bearable thresholds.
Network Performance Assessment Using Adaptive Traffic Sampling
263
PLR estimation can be improved by enlarging the bin size. Hence we leave as an important part of our future work the use of dynamic bin sizes. This way, low rate flows report more detailed information and the sampling rate could be better adjusted. Another detail left as future work is the treatment of X as a distributed resource. This suits better a real scenario where the resources assigned to each ME can vary within the same domain. Finally with the current system design, it always uses all the available resources regardless of the conditions. A further optimisation would be to focus on the minimisation of such used resources when possible.
References 1. Serral-Gracià, R., Barlet-Ros, P., Domingo-Pascual, J.: Coping with Distributed Monitoring of QoS-enabled Heterogeneous Networks. In: IT-News (QoSIP) - 2008, pp. 142–147 (2008) 2. Serral-Gracià, R., et al.: Distributed sampling for on-line qos reporting. In: Submitted and pending acceptance (2008) 3. Duffeld, N.: Sampling for Passive Internet Measurement: A Review. Statistical Science 19(3), 472–498 (2004) 4. Zseby, T.: Comparison of Sampling Methods for Non-Intrusive SLA Validation. In: E2EMon (2004) 5. Cozzani, I., Giordano, S.: Traffic sampling methods for end-to-end QoS evaluation in large heterogeneous networks. In: Computer Networks and ISDN Systems, vol. 30, pp. 1697–1706 (1998) 6. Ma, W., Huang, C., Yan, J.: Adaptive sampling for network performance measurement under voice traffic. In: IEEE-ICC (2004) 7. Duffield, N.G., Grossglauser, M.: Trajectory sampling for direct traffic observation. IEEE/ACM Trans. Netw. 9(3), 280–292 (2001) 8. Zseby, T.: Stratification Strategies for Sampling-based Non-intrusive Measurements of Oneway Delay. In: Passive and Active Measurements (2003) 9. Hanemann, A., Boote, J.W., et al.: PerfSONAR: A Service Oriented Architecture for MultiDomain Network Monitoring. In: Benatallah, B., Casati, F., Traverso, P. (eds.) ICSOC 2005. LNCS, vol. 3826, pp. 241–254. Springer, Heidelberg (2005) 10. Miloucheva, I., Gutierrez, P.A., et al.: Intermon architecture for complex QoS analysis in inter-domain environment based on discovery of topology and traffic impact. In: Interdomain Performance and Simulation Workshop, Budapest (March 2004) 11. V.-Nogués, C., C.-Aparicio, A., D.-Pascual, J., S.-Pareta, J.: Verifying IP Meters from Sampled Measurements. In: Testing of Communicating Systems XIV. Application to Internet Technologies and Services. IFIP TC6/WG6.1. TestCom. pp. 39–54. Kluwer Academic Publishers, Dordrecht (2002) 12. [IST] EuQoS - End-to-end Quality of Service support over heterogeneous networks (September 2004), http://www.euqos.eu/ 13. D5.1.1: Technical requirements for trials, tasks scheduling - (September 2004), http://www.euqos.eu/documents/md_1216_d-511.pdf
On the Applicability of Knowledge Based NAT-Traversal for Home Networks Andreas M¨ uller, Andreas Klenk, and Georg Carle University of T¨ ubingen, Computer Networks and Internet, Sand 13, 72076 T¨ ubingen, Germany {mueller,klenk,carle}@ri.uni-tuebingen.de http://net.informatik.uni-tuebingen.de
Abstract. The presence of Network Address Translation (NAT) is a hindrance when accessing services within home networks, because NAT breaks the end-to-end connectivity model of the Internet protocol suite. Communication across NATs is only possible if it is initiated from a host belonging to the internal network. Thus, services expecting a connection established from the outside fail in most situations. Existing approaches for NAT-Traversal do not cover the full range of NAT-Traversal methods and fail in certain situations, or deliver sub optimal results in others. Part of the problem of existing approaches is that they do not differentiate between different types of applications. We argue that the classification of applications into four service categories helps to determine the best matching NAT-Traversal technique. An extensive field test enables us to acquire knowledge about the success rates of promising NAT-Traversal techniques. These results will help us to develop a knowledge driven NAT-Traversal framework making its choice based on an understanding of NAT behavior, NAT-Traversal options and the service category of the application. Keywords: NAT-Traversal, Field Test on NAT Behavior.
1
Introduction
Today most home networks connect to the public Internet via a “Designated Border Router”, allowing multiple clients to share one public IP address using Network Address Translation (NAT). We use the term NAT as defined in [1]: “a method by which IP addresses are mapped from one realm to another, in an attempt to provide transparent routing to hosts”. Since NAT breaks the end-to-end connectivity model of the TCP/IP-protocol suite, a communication across a middlebox performing NAT is only possible if it is initiated from a host belonging to the internal network. Therefore, applications behind a Network Address Translator aiming to provide a globally reachable service (e.g. Web Servers, Peer-to-Peer or VoIP applications) suffer from the existence of NATs. This problem is known as the NAT-Traversal problem. The NAT-Traversal problem arises as soon as an external host wants to connect to a peer located in the private network. This is because NAT only passes A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 264–275, 2008. c IFIP International Federation for Information Processing 2008
On the Applicability of Knowledge Based NAT-Traversal for Home Networks
265
inbound packets to an internal host if it has a state listed in its mapping table. The creation of a state however depends on a packet traveling in the other direction than the incoming packet. In other words, before an internal host is able to receive packets, it first has to send a packet to the remote peer itself. NAT then tries to handle all incoming packets as a response to the outgoing packet and passes them to the appropriate internal host. There are many different approaches for solving the NAT-Traversal problem, but none can claim to solve the problem in all situations without drawbacks. Some are behavior based and only support UDP (e.g. ICE [2]), while others introduce a significant communication overhead and require the presence of infrastructure nodes (e.g. TURN [3]). An alternative to behavior based approaches is to exercise direct control over the NAT, for instance by using UPnP [4] or MIDCOM [5] in order to establish port forwarding entries. There is a lack of extensible frameworks that can make a choice when to utilize behavior based or control based techniques. Our aim is to establish persistent knowledge about the available NAT-Traversal options and to make an intelligent choice depending on the application. This paper has four main contributions: 1.) A survey on the behavior of Network Address Translators and techniques for NAT-Traversal 2.) Service categories for applications requiring NAT-Traversal support 3.) Framework proposal for knowledge based NAT-Traversal 4.) A Field test on the success rate and applicability of NAT-Traversal techniques regarding our four service categories. The remainder of this paper is structured as follows. In Sec. 2 we rehash NAT behavior. Sec. 3 explains NAT-Traversal techniques. Service categories for applications are introduced in Sec. 4. Sec. 5 introduces the idea of the ANTS framework for NAT-Traversal. In Sec. 6 we present our field test on NAT behavior. Sec. 7 surveys related work. Finally, Sec. 8 summarizes the contributions of this paper.
2
NAT Behavior
Current NAT implementations not only differ from vendor to vendor, but also from model to model. If an application works with one particular Network Address Translator, there is no guarantee that it always works in a NATed environment. This section gives a short introduction to a common classification proposed by [6]. For a more detailed discussion please refer to [7] and [8]. A FullCone NAT uses an endpoint independent binding strategy (the same external endpoint is assigned to two consecutive connections from the same source transport address (the combination of IP address and port) independent from the destination transport address) and an independent filtering strategy. Thus, once a mapping is created, every external host can access it in order to communicate with the appropriate internal client. An Address-Restricted-Cone NAT uses an endpoint independent binding in combination with an address restricted filtering strategy: only packets that originate from the same host the initial packet has been sent to are forwarded. Again, endpoint independent binding is used for
266
A. M¨ uller, A. Klenk, and G. Carle
a Port-Address-Restricted-Cone NAT. In addition to the destination address, a Port-Address-Restricted-Cone NAT also considers the port of the external host when translating packets between the realms. Other than the three categories described above, a Symmetric NAT uses a non-independent mapping. Depending on the exact strategy (random or not), port prediction may not be possible. Symmetric NATs usually behave like Port-Address-Restricted-Cone NATs with respect to filtering.
3
Techniques for NAT-Traversal
This section presents popular and promising methods for NAT-Traversal. One important group of NAT-Traversal techniques assumes direct control over the NAT. Adding a Port-Forwarding entry to the Network Address Translator can be done manually, which is only feasible for experienced users, or dynamically. Controlling the Network Address Translator transparent to the user is the aim of protocols such as Universal Plug and Play (UPnP) [4], MIDCOM [5], NAT/Firewall NSIS Signaling Layer Protocol [9] or the NAT-Port-Mapping Protocol [10]. However, if the protocol is not explicitly supported by the NAT (e.g. UPnP may be disabled due to security issues) it fails. Furthermore, every external port can only be used once. If, e.g., two hosts in a private network want to provide a service running on the same port, only one can use port preservation. There are also NAT-Traversal methods that do not require support by the Network Address Translator. These techniques try to anticipate NAT behavior in order to establish a connection. One such technique is UDP Hole-Punching. HolePunching was first described in [11] and more thoroughly documented in [12]. In order to receive packets behind a Network Address Translator, the initial packet coming from the remote host has to look like a response to the Hole-Punching packet sent by the NATed host. Simple Traversal of User Datagram Protocol through NATs (STUN) [6] allows to determinate external transport addresses and works well for endpoint independent mapping. Today, UDP Hole-Punching is used by many proprietary protocols for Instant-Messaging, Online-Gaming and VoIP applications. Due to the connection-oriented design of TCP, Hole-Punching for TCP is more difficult than for UDP. The TCP NAT-Traversal method STUNT [8] requires a NAT to accept an incoming TCP-SYN packet following an outgoing TCP-SYN packet (the outgoing TCP-SYN being the Hole-Punching packet), a sequence of packets usually not seen and therefore often discarded. Hole-Punching is not a suitable technique for NAT-Traversal of Symmetric NATs, since port prediction usually fails. The goal of Traversal Using Relays around NAT (TURN) [3] is to provide a relay with a public transport address allowing the exchange of data packets between a TURN-client and a public host. TURN has the advantage of working with almost every NAT because all incoming packets are directly related to outgoing packets. As a drawback, the reliability and the bandwidth of a connection depends on the chosen TURN server, introducing a Single Point of Failure.
On the Applicability of Knowledge Based NAT-Traversal for Home Networks
4
267
Service Categories for NAT-Traversal
When investigating existing applications suffering from the presence of NAT, we identified four service categories an application can belong to. Each category addresses different requirements and makes assumptions about the network topology and available components. Our first category, Global Service Provisioning (GSP), assumes that only one host has a NAT-Traversal framework running (no signaling is needed). It helps to make a local service globally accessible by creating and maintaining a NAT-mapping (e.g. sending keep-alive packets). Services such as a Web-Server belong to GSP. Peers of P2P content distribution networks can establish direct connections, even if both peers are behind a NAT and one of them supports GSP. Service Provisioning using Pre-Signaling (SPPS) extends the GSPcategory by giving NAT-Traversal support to both parties, which allows more sophisticated connection establishment procedures such as signaling. Compared to related work, SPPS is the category used by most existing frameworks [2][13][14]. The advantage of SPPS is that the NAT-Traversal service can select from all available NAT-Traversal solutions. Therefore, SPPS should be used, if possible, because it provides the highest success rate regarding NAT-Traversal. Our third category, Secure Service Provisioning (SSP), is an extension to SPPS and addresses applications that only want to allow authorized hosts to create and use a mapping in the Network Address Translator. Many applications were originally designed to run in a closed environment only, such as a home or company network. Such services do not always realize a high level of security, making them a target for hackers if they are reachable from the public Internet. Unfortunately, none of the NAT-Traversal solutions available today actually offers restricted access to certain services. The last category, ALG Service Provisioning (ALG-SP), focuses on applications having problems with realm-specific IP-Addresses in their payload. This applies to protocols using inband-signaling on the application layer. This is also strongly related to Bundled-Session Applications with asymmetric connection establishment establishing separate control- and data-connections. The most popular application belonging to this category is VoIP using SIP. Besides ICE, SIP NAT-Traversal is usually solved by STUN or a SIP-aware Network Address Translator. But STUN only works with an independent mapping strategy, and SIP-aware NATs are not widely used. Therefore, in addition to the three categories described above, a NAT-Traversal service should also be able to handle protocols using inband-signaling without relying on a NAT-ALG.
5
Concept for a NAT-Traversal Framework
This section presents the idea of ANTS, a new framework which aims towards providing an Advanced NAT-Traversal Service for legacy applications. We first give an overview by describing a particular scenario for NAT-Traversal in section
268
A. M¨ uller, A. Klenk, and G. Carle
5.1. Section 5.2 then discusses the applicability of existing NAT-Traversal techniques regarding our service categories and explains our main idea of a knowledge based framework. 5.1
Towards the Advanced NAT-Traversal Service
ANTS is deployed directly at the host and is aware of all registered applications in order to provide NAT-Traversal support based on the requested service category. Figure 1 shows a scenario where two hosts, both behind NAT, want to establish a direct connection to each other. First, the ANTS-module gathers knowledge about its environment and determines which NAT-Traversal techniques can be used in order to traverse the Network Address Translator it is behind (see 5.2). ClientApplication
ANTS
ANTS knowledge gathering
Connection Request
register Server Application
Session Manager
ask for remote endpoint
Signaling
ServerApplication
Signaling create mapping
remote endpoint received
Public Endpoint for NAT-Traversal
Remote Endpoint
Rendezvous Point legacy IP-Connection
Host A
NAT A
NAT B
Host B
Fig. 1. Scenario for a new NAT-Traversal framework
If a user decides that a particular application should be reachable from the public Internet, he registers it at a Session Manager keeping track of all applications and their service categories. With the Session Manager, ANTS is able to provide Global Service Provisioning directly. Whenever an application is added and associated with GSP, the Session Manager calls the NAT-Traversal logic and asks to allocate an appropriate mapping in the NAT (for GSP, only the host that wants to offer services must run ANTS). SPPS and SSP, however, require some form of signaling in order to exchange connection specific information in advance. Signaling should result in a working public transport address for NAT-Traversal. In order to avoid a Single Point of Failure, signaling should be done in a decentralized way (e.g. Peer-to-Peer SIP (P2P-SIP) [15]). Furthermore, we also aim towards port preservation, meaning
On the Applicability of Knowledge Based NAT-Traversal for Home Networks
269
that the legacy applications only use realm-specific ports (e.g. port 80 for a web-server) independent of the global port allocated by the NATs. 5.2
Knowledge Based NAT-Traversal
The concept of ANTS is based on the idea of reusing previously obtained knowledge. This means, instead of querying the network on every new connection request, ANTS determines the properties and capabilities of the NAT periodically, resulting in a very fast connection establishment. The Knowledge and Decision Module not only needs to determine all working NAT-Traversal techniques, it also has to make sure that ANTS only applies NAT-Traversal techniques suitable for the requested service category. For example, UPnP cannot be used with Secure Service Provisioning because it violates the idea of a secure public endpoint. Therefore, every NAT-Traversal technique integrated into ANTS has to be associated with an entry as follows: (Identifier → Service Category → Condition) The last field describes the conditions that have to be met for the technique in order to work with the defined service category. Global Service Provisioning depends on NAT-Traversal techniques that allow unrestricted access to a public endpoint. A Port-Forwarding entry created by UPnP is easy to maintain and works independently from NAT behavior. Hole-Punching for GSP is also possible if the NAT is of type Full-Cone. Finally, an independent relay can be used as the third option. Since SPPS makes no assumptions about the accessibility of the mapping, there are no restrictions to be considered. As long as the technique is supported it may be used. As SPPS uses a signaling protocol between two hosts, more sophisticated techniques such as tunneling TCP within UDP are also possible. SSP is an extension to SPPS and relies on the same signaling infrastructure. Since it only allows authorized hosts to allocate and to use a mapping, we have to choose from the following techniques: Hole-Punching with a restricted filtering strategy or TURN (which behaves like a Restricted Cone-NAT) are possible. The applicability of NAT-Traversal techniques for ALG-SP depends on the security considerations made by the user for the particular service. As long as we only want to provide NAT-Traversal based on SPPS, any approach can be used. On the other hand, if we prefer to only allow certain hosts to access the NAT-mapping, the considerations made above when discussing SSP also apply to ALG-SP. Figure 2 shows the components necessary for a knowledge based framework. When making a decision (e.g. which NAT-Traversal technique should be used for the requested application) the Knowledge and Decision Module relies on input from an overlaying Input Module. Besides the rather static knowledge about the applicability of existing NAT-Traversal techniques, the Knowledge and Decision Module should also consider user input, as well as input from the Session Manager as described above. However, the most important component
270
A. M¨ uller, A. Klenk, and G. Carle Input Module NAT-Tester
Registered Applications
Policies
Knowledge based NAT-Traversal working techniques
Applicability
decision (2)
(3)
(1)
Fig. 2. Inputs to be considered in order to make decisions
of the Input Module has to be able to test the Network Address Translator regarding its core properties and the supported NAT-Traversal methods. Only if ANTS is able to determine the properties of the NAT correctly, it is able to reuse its knowledge when providing a working public endpoint to an application.
6
Knowledge Gathering for NAT-Traversal
We described the idea of ANTS, a knowledge based approach for solving the NAT-Traversal problem in section 5. The fundamental question is how to discover the behavior of individual NAT-Traversal techniques in order to establish this knowledge. Throughout the whole paper we stated that the implementation of NAT is not standardized and differs from model to model. To get an overview of the behavior of current NAT implementations we devised the NAT-Tester as a module that can work as a stand-alone program and as an integral part of ANTS at the same time. We then did a field test investigating the behavior of 104 NATs in the wild, with our NAT-Tester available here: http://gex.cs.unituebingen.de. Similar tests have been done in the past [8] [16], but all of them only tested a few NAT properties. For example, the combination of UPnP and different Hole-Punching techniques has never been considered. Additionally, the results are dependent on the market share of the NAT manufacturers, which differs from country to country. While all former results represent the North American Market, our test mainly grasps the realities in the German market. 6.1
NAT Behavior Discovery
As the first test, the NAT-Tester queried a public STUN-Server and determined the properties of the NAT (Table 1). More than 85% of all NATs were either of type Port-Address Restricted or Full-Cone. Symmetric NATs, which are said to be popular in the business market, were rarely discovered. The second test then queried the network to determine if the NAT supports UPnP. According
On the Applicability of Knowledge Based NAT-Traversal for Home Networks
271
Table 1. Results of the Field Test: NAT behavior NAT Type
Appearance
Port-Address Restricted Full-Cone Address-Restricted Symmetric No-NAT Symmetric Firewall
50.96 36.54 4.81 4.81 1.92 0.96
% % % % % %
Behavior
Appearance
Port Preservation Hairpinning
63.46 % 51.92 %
no UPnP no IGD UPnP ok
51.92 % 9.62 % 38.46 %
to Table 1, 51.92% of all NATs had UPnP disabled. No IGD means that the NAT-Tester found an UPnP-capable device on the private network, but it was not an Internet-Gateway-Device (IGD). 6.2
Anticipated Success of NAT-Traversal Techniques
The next tests actually determined the success rates for different NAT-Traversal techniques. First, the NAT-Tester created a Candidate-List (listing all public endpoints to be tested) for UDP containing a STUN-derived public transport address for Hole-Punching. For the Hole-Punching test, the NAT-Tester sent a UDP packet towards the Test-Server allocating an appropriate mapping in the NAT. The NAT-Tester then started a listener on the private port and waited for a connection from the Test-Server. If a packet was received within a limited amount of time, the test succeeded. Table 2 shows the success rates for UDP. While 93.67% of our 104 NATs supported UDP-Hole-Punching via STUN, the success rate of UPnP was only 38.46%. Table 2. NAT-Traversal for UDP Technique Relay Hole-Punching UPnP
Appearance 100 % 92.31 % 38.46 %
Table 3. NAT-Traversal for TCP Technique Relay HP FTP-ALG HP Low-TTL UPnP HP High-TTL
Appearance 100 67.44 51.92 38.46 13.95
% % % % %
The UDP test algorithm was adapted to TCP and showed interesting results. In [8], the authors identified Hole-Punching using a Hole-Punching packet with a low TTL to be the most promising method with a success rate of 88% and rely on it for their NAT-Traversal technique STUNT2. In our tests this form of TCPHole-Punching only succeeded for 51.92% of all NATs. After discovering that the actual success rate was much lower, we modified the NAT-Tester and added two other types of TCP-Hole-Punching to it1 . HP High-TTL uses a high TTL 1
43 NATs were tested with the modified NAT-Tester.
272
A. M¨ uller, A. Klenk, and G. Carle
Table 4. Results of the Field Test: Success rates for the different Service Categories Category
Condition
GSP1 GSP3 GSP2 GSP4
(Full-Cone and HP-UDP) (Full-Cone and HP-TCP) (UPnP or (Full-Cone and HP-UDP)) (UPnP or (Full-Cone and HP-TCP))
(UDP) (TCP) (UDP) (TCP)
SPPS1 SPPS2 SPPS3 SPPS4 SPPS5 SPPS6
(UDP) (HP-UDP) (TCP) (HP-TCP) (TCP) (HP-TCP or HP-UDP) (UDP) (UPnP or HP-UDP) (TCP) (UPnP or HP-TCP) (TCP) (UPnP or HP-TCP or HP-UDP)
SSP1 (UDP) (Restricted-NAT and HP-UDP) SSP2 (TCP) (Restricted-NAT and HP-TCP)
Success Rate 35.58 21.15 57.66 50.45
% % % %
92.31 66.35 96.15 92.31 75.96 96.15
% % % % % %
49.04 % 35.58 %
for the Hole-Punching packet resulting in a RST -packet from the NAT. With a success rate of only 13.95%, it cannot be seen as a general solution for TCPNAT-Traversal. HP FTP-ALG [17] relies on a working ALG for active FTP. The ALG creates mappings in the NAT according to the FTP signaling messages. But instead of providing a working FTP endpoint within the control messages, an independent transport address is listed. This unconventional technique works with 67.44% of all NATs. For future tests it could be interesting to extend this idea to SIP and to provide a transport address within the SDP message. The results of the individual techniques for TCP show that no general solution for TCP-Hole-Punching exists. Therefore, building a framework that automatically detects and applies a working candidate is the most promising way for providing a NAT-Traversal service to applications. Finally, we assumed for all tests that if the NAT-Tester is able to connect to the Test-Server, it is also able to connect to an external relay. Therefore, 100% of the tested NATs support NAT-Traversal using an appropriate data relay such as TURN. To adapt the test results to our work, we evaluated the success rates of the individual techniques regarding to our defined service categories. Table 4 shows the categories and the conditions that have to be met according to section 5.2. For example, GSP requires the use of UPnP or working Hole-Punching support in combination with a Full-Cone NAT. Therefore, 57.66% of our tested NATs supported a direct connection for UDP and category GSP (50.45% for TCP). In all other cases (the remaining percentages) an external relay has to be used in order to provide GSP. For SPPS, which makes no security assumptions, we divided our results into two categories. First we determined the success rates without considering UPnP. With 92.31% of all NATs we were able to establish a direct connection to the host behind the Network Address Translator (66.35% for TCP). This rate increased
On the Applicability of Knowledge Based NAT-Traversal for Home Networks
273
silghtly for TCP (to 75.96% ) when UPnP was an option. The highest success rate for TCP-NAT-Traversal (96.15% ) was discovered when we also allowed the tunneling of TCP-packets through UDP. Finally, SSP only allows authorized hosts to create and to use a mapping. Therefore, a suitable technique for SSP is Hole-Punching in combination with a NAT implementing a restricted filtering strategy. This was supported by 49.04% for TCP and 35.58% for UDP.
7
Related Work
A number of techniques have been proposed to examine NAT behavior. The IETF has standardized STUN [6], which is widely used by Voice over IP (VoIP) applications and phones. The STUN protocol determines the public transport address assigned for a connection and detects the NAT strategy of the middlebox by using a number of probing messages. The drawback of STUN is that it does not identify NATs allowing direct control (e.g. UPnP). Additionally, STUN does not preserve its gathered topology knowledge for later usage. This is not an issue for VoIP where there is enough time to perform the STUN protocol until the other party answers the telephone, but many other applications may suffer from this delay. There is an informational IETF draft presenting results of a survey that also utilized STUN to classify 43 Network Address Translators [16]. Francis did a thorough analysis of NAT implementations in [18] and also considered important properties for NAT-Traversal. However, the tool used is very time consuming and is therefore not able to provide a knowledge gathering component for ANTS. There are already a number of frameworks for NAT-Traversal that can also incorporate knowledge about the NAT behavior. ICE [2] aims to provide a solution flexible enough to work with all network topologies. Whenever a call is established, each phone gathers all possible transport addresses and exchanges them using SIP. Both clients then set up a local STUN-Server and go through the received candidate list. A client tries to connect to each candidate address using STUN binding-requests and responses, resulting in working candidate pairs. ICE describes a general solution for offer/answer protocols, but was mainly designed to provide a NAT-Traversal solution for VoIP. Therefore, it only supports UDP-based candidates. However, there have been studies on extending ICE to work with TCP as well [19]. ICE also requires both peers to have an ICE-implementation running. If one side does not, ICE cannot help. In [18] and [13], the authors propose a new architecture called NUTSS. They describe the integration of a TCP NAT-Traversal method called Simple Traversal of User Datagram Protocol through NATs and TCP too (STUNT). NatTrav, published in [14], exchanges public endpoints and uses TCP-Hole-Punching to actually traverse the NAT. The proprietary Skype2 VoIP application has a sophisticated probing technique [20] for NAT-Traversal, which is not available to any other application, though. NAT-Traversal is done using an unknown variation of the 2
http://www.skype.com
274
A. M¨ uller, A. Klenk, and G. Carle
STUN and TURN protocol. If possible, a Skype node uses Hole-Punching to establish a direct connection. If not, a Super Node acts as a TURN-Server relaying traffic back and forth. The analysis of the related work shows that there is no single NAT-Traversal technique which is able to handle all situations without having significant drawbacks in others. This is the strong point of our envisioned architecture that can be extended by behavior and control based NAT-Traversal techniques and profit from persistent knowledge about NAT behavior.
8
Conclusion
The NAT-Traversal problem became more and more important with the increasing popularity of applications following the Peer-to-Peer communication paradigm. Existing solutions to the NAT-Traversal problem have drawbacks of only working with certain types of NAT implementations, or lacking support for legacy applications and multiple transport protocols. When analyzing the NAT-Traversal problem more thoroughly, we discovered that the requirements for legacy applications differ significantly, and identified four service categories relevant for NAT-Traversal. The choice of the NAT-Traversal technique depends on the service category an application belongs to. We made a proposal for a knowledge based extensible NAT-Traversal framework that incorporates the NAT behavior and the available NAT-Traversal options in its decision. As a corner stone of the framework, we implemented the NAT-Tester for knowledge gathering. We did a field test using the NAT-Tester to get an overview on behavior of current NAT implementations and about promising NAT-Traversal techniques. TCP Hole-Punching, for instance, yielded worse results than expected. We therefore must integrate alternative methods to support TCP and SCTP. Future work addresses the implementation of the framework and connecting legacy applications to it.
References 1. Srisuresh, P., Holdrege, M.: IP Network Address Translator (NAT) Terminology and Considerations. RFC 2663, Internet Engineering Task Force (August 1999) 2. Rosenberg, J.: Interactive Connectivity Establishment (ICE): A Methodology for Network Address Translator (NAT) Traversal for the Session Initiation Protocol (SIP). Internet-Draft - work in progress, Internet Engineering Task Force (October 2007) 3. Rosenberg, J., Mahy, R., Matthews, P.: Traversal Using Relays around NAT (TURN). Internet Draft - work in progress. Internet Engineering Task Force (January 2008) 4. UPnPTM Forum. Internet gateway device (IGD) standardized device control protocol (November 2001) 5. Srisuresh, P., Kuthan, J., Rosenberg, J., Molitor, A., Rayhan, A.: Middlebox communication architecture and framework. RFC 3303, Internet Engineering Task Force (August 2002)
On the Applicability of Knowledge Based NAT-Traversal for Home Networks
275
6. Rosenberg, J., Weinberger, J., Huitema, C., Mahy, R.: STUN: Simple Traversal of User Datagram Protocol (UDP) Through Network Address Translators (NATs). RFC 3489, Internet Engineering Task Force (March 2003) 7. Audet, F., Jennings, E.,, C.: NAT Behavioral Requirements for Unicast UDP. RFC 4787, Internet Engineering Task Force (January 2007) 8. Guha, S., Francis, P.: Characterization and Measurement of TCP Traversal through NATs and Firewalls. In: Proceedings of ACM Interet Measurement Conference (IMC), Berkeley, CA (October 2005) 9. Stiemerling, M., Tschofenig, H., Aoun, C., Davies, E.: NAT/Firewall NSIS Signaling Layer Protocol (NSLP). IETF draft - work in progress. Internet Engineering Task Force (October 2006) 10. Cheshire, S., Krochmal, M., Sekar, K.: NAT Port Mapping Protocol (NAT-PMP). Internet Draft, Internet Engineering Task Force (September 2006) 11. Holdrege, M., Srisuresh, P.: Protocol Complications with the IP Network Address Translator. RFC 3027, Internet Engineering Task Force (January 2001) 12. Ford, B., Srisuresh, P., Kegel, D.: Peer-to-Peer Communication Across Network Address Translation. Technical report, Massachusetts Insitute of Technology (2005) 13. Guha, S., Francis, P.: Towards a Secure Internet Architecture Through Signaling. Technical report, Cornell University (2006) 14. Eppinger, J.: TCP Connections for P2P Applications - A Software Approach to Solving the NAT Problem. Technical report, Carnegie Mellon University, Pittsburgh, PA (2005) 15. P2P-SIP IETF Working Group, http://www.p2psip.org 16. Jennings, C.: NAT Classification Test Results. Internet Draft - work in progress. Internet Engineering Task Force (July 2007) 17. Olsson, M.: Extending the FTP ”ALG” vulnerability to any FTP client (March 2000) 18. Francis, P., Guha, S.: Takeda, Y.: NUTSS: A SIP-based Approach to UDP and TCP Network Connectivity. Technical report, Cornell University, Panasonic Communications (2004) 19. Rosenberg, J.: TCP Candidates with Interactive Connectivity Establishment. Internet Draft - work in progress. Internet Engineering Task Force (November 2007) 20. Baset, S.A., Schulzrinne, H.: An Analysis of the Skype Peer-to-Peer Internet Telephony Protocol. Technical report, Columbia University, New York (2004)
IP Performance Management Infrastructure for ISP Atsuo Tachibana, Yuichiro Hei, Tomohiko Ogishi, and Shigehiro Ano KDDI R&D Laboratories, 2-1-15 Fujimino-shi, Saitama, Japan {tachi,hei,ogishi,ano}@kddilabs.jp
Abstract. An IP performance management infrastructure that has the twin frameworks of performance measurement and topology monitoring is proposed. By combining above frameworks, the infrastructure locates performance-degraded segments. Since the Internet is still highly prone to performance deterioration due to congestion, router failure, and so on, not only detecting performance deterioration, but also monitoring topology and locating the performance-degraded segments in real-time is vital to ensure that Internet Service Providers can mitigate or prevent such performance deterioration. The infrastructure is implemented and evaluated through a real-world experiment and its considerable potential for practical network operations is demonstrated.
1
Introduction
Today’s Internet serves as a communication infrastructure that supports various social and economic activities. The Internet needs to be managed in a reliable and efficient manner, and should be measurable and tractable in terms of its characteristics and internal states by ISPs (Internet Service Providers). However, it is widely known that transient performance deterioration is actually still likely to occur due to the inherent feature of providing cost-efficient and scalable services based on statistical, loosely controlled shares of network resources, meaning that ISP operators have to detect performance deterioration and take certain action to mitigate it. Although SNMP (Simple Network Management Protocol) may provide high accuracy for a metric such as a link-by-link packet loss, it is not suitable for estimating customers’ traffic performance. Hence, active measurement of packet behaviors passing through the targeted intra-network is an essential and rational approach to the network operations of ISPs. In addition to performance measurement, topology monitoring is important for network operation, because failures of a router or a transit network resulting in topology change can potentially severely degrade the performance of the network. Monitoring LSAs (Link-State Advertisements) that are updates of OSPF, a widely deployed intra-domain routing protocol, is a promising approach for ISP operators to efficiently monitor the topologies on the intra-network [1,2,3]. A variety of infrastructures and tools for active measurement and topology monitoring have been extensively developed for research (e.g., [4,5,6,7,8,9,10,11]). A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 276–288, 2008. c IFIP International Federation for Information Processing 2008
IP Performance Management Infrastructure for ISP
277
However, because most of them aim to clarify some research issues based on a different network model and not designed for real-time network operation, their practical application to a commercial ISP’s network operation in their present form remains difficult. Therefore in this paper, we propose an IP performance management infrastructure that has the twin frameworks of performance measurement and topology monitoring. In addition, there is a real possibility that the analysis of the combination of these two functionalities might reveal other useful features from the measurement data. Locating performance-degraded segment ensures that ISP operators take action to reduce costs and configuration efforts required for troubleshooting. Network tomography is a promising analysis technique for inferring the internal status of a network solely by measuring end-to-end packet behaviors passing through multiple paths traversing the targeted intra-network instead of directly monitoring each network node such as routers. A variety of network tomographic approaches have been extensively studied (e.g., [12,13,14,15,16]). Along these lines, as a practical way to locate performance-degraded segments, the inference methods in real-time are also proposed [17,18]. These methods actively and continuously measure end-to-end packet loss rate or delay variation within each measurement period (e.g., 15 seconds and 5 seconds, respectively) on paths from multiple origins to multiple destinations. The infrastructure includes these methods targeting ISPs’ network operation. The rest of the paper is organized as follows. Section 2 shows the system requirements. In Section 3, we explain the details of the system architecture, and in Section 4, in order to assess the feasibility of the infrastructure we outline an experiment with its results including the considerable potential of the proposed infrastructure for practical operational use. Finally, we conclude this work in Section 5.
2
System Requirements
Minimum system requirements for the proposed infrastructure are listed below. 1. Performance measurement First, network probes themselves are unsolicited and may cause harm to the network especially on a large scale, by consuming precious router processing resources. Probing packets have to be sufficiently light even when active measurements are simultaneously performed on multiple paths. To address this, we designed the following system requirements. – Probing packets are sent at a low rate (e.g., several Kbps) on each monitored path. To avoid being synchronized with a particular networkinternal queue behavior, the interval of an adjacent probing packet should be chosen randomly as specified in the IPPM (IP Performance Metrics) Working Group of the IETF. 2. Topology monitoring Although traceroute command is one available approach to making route measurements, since traceroute lists the source addresses of gTime exceededh
278
A. Tachibana et al.
ICMP messages, these addresses represent interfaces that received traceroute probes, the topology information obtained by traceroute is not necessarily accurate. In addition, to monitor all routers’ interface states in a large-scale network precisely, a large number of traceroute probes would be required. Hence, this approach is not suitable for continuous topology monitoring for an entire large-scale network. Instead, in this paper, we focus on monitoring LSAs. Routers running OSPF advertise their link states on LSAs to the network, and OSPF routers can construct a complete view of the topology of the network from these LSAs. Therefore, by passively monitoring LSAs flooded throughout the intra-network, we can comprehend the topology of the network. 3. Combination of performance measurement and topology monitoring From the operator’s viewpoint, not only IP performance on the measurement paths among measurement nodes but also the routes the probing packets pass through are important. For example, when performance deterioration is detected, operators investigate MIB (Management Information Base) of routers which are included in the monitored paths. Hence, the route of each monitored path needs to be calculated in real-time by combining the performance measurement information and topology. 4. Security In addition to the harmful aspect of network probing, network measurement data may be abused and used to harm the network. This is due to the fact that accurate measurement data may help unscrupulous parties to attack the infrastructure. Furthermore, network measurement data can expose private information on network architectures. Thus, the measurement infrastructure has to be securely and robustly managed including handling of measurement data. 5. Cost Although hardware-based measurement infrastructure may provide precise timestamps by using a specialized device with a built-in clock, it is difficult to apply to a large-scale distributed measurement infrastructure due to high cost and lack of expansibility. Hence, measurement nodes should be implemented with light-weight software. Our measurement software works even on a small PCs on which an RISC CPU 400-MHz processor, 64-MB RAM, 16-MB flash Rom, and two 100-Mbit Ethernet interfaces are implemented.
3
System Architecture
Our infrastructure consists of three frameworks for performance measurement, topology monitoring (i.e., OSPF monitoring), and analyzing measurement results as illustrated in Fig. 1.
IP Performance Management Infrastructure for ISP
279
The performance measurement framework continuously measures network performance along multiple paths among distributed measurement nodes. Measurement results such as one-way packet delay and loss rate along each path are periodically (e.g., every 1 minute) collected and stored in the performance database. The OSPF monitoring framework captures LSAs at a measurement node that establishes an adjacent relationship with an OSPF running router. By analyzing LSAs, we build an entire view of the network topology and detect route instability. The topology database stores an entire network topology. The data analysis framework detects performance deterioration by periodically looking up the performance database. Although network performance deterioration itself might be defined in various ways, we simply assume that packet loss rate or packet delay variation experienced on at least one monitored path is distinguishably larger than that found under normal conditions. Furthermore, the infrastructure infers the location of the performance-degraded segments by analyzing the performance database with the topology database along the line of network tomography. Operators interact with all frameworks and databases through the web-based graphical interface that uses HTML4, Javascript, PHP4, and Apache Web server using SSL (Secure Sockets Layer). In the following subsections, we explain the details of each framework.
Performance measurement framework
Graphical User Interface
Performance database
OSPF monitoring Framework
Topology database Data analysis Framework
Fig. 1. System architecture
3.1
Performance Measurement Framework
The system components of the performance measurement framework are depicted in Fig. 2. The measurement management software is in charge of measurement control, comprising not only the execution of performance measurements, but also monitoring survivability and configuration of measurement nodes. Along multiple paths among measurement nodes, performance is actively measured and the results are uploaded to the performance database. (1) Measurement node software The measurement node software is implemented over the GNU Linux operating system. Measurement nodes are always listening for commands from the measurement management software. The functionality of the measurement node should be reduced to a minimum in order to improve the robustness of the whole platform in case of a single node failure. Accordingly, the node software only provides the following functions.
280
A. Tachibana et al.
Measurement management software Graphical User Interface Performance database
Measurement node
Measurement node
Network probing
Network probing
Measurement node
Measurement node
Measurement node
Monitored network
Fig. 2. The system components of the measurement framework
– Measuring IP performance by sending probing packets UDP packets are sent at certain intervals (e.g., Poisson interval, uniformly distributed interval, and Pareto-distributed interval). The probing packet size is set by operators in the range from 64 to 1500 bytes. The TOS (Type of Service) field in the IP packet header is also specified for measurements over the policy-routing operated network. – Computing IP performance metrics The nodes periodically (e.g., every one minute) calculate 11 metrics at each period, the maximum, minimum, average, and the 95th percentile of oneway packet delay and delay variation respectively, the number of lost packets, loss rate, and the number of reordered packets. Here, we define packet delay variation vk for k-th packet along a path as the difference between the absolute one-way delay xk of the packet and the minimum d in all the observed absolute one-way delays along the path (vk = xk − d), which is nearly equal to the sum of queuing delays experienced by the packet along the path. – Uploading the measurement results to the data server The 11 metrics described above are periodically uploaded from each measurement node to the performance database using SSL. Periodic updating is also used for monitoring the survivability of the measurement nodes. After uploading the measurement results, the measurement data at each node are removed within a certain period (i.e., a few days) automatically. – Time synchronization All measurement nodes synchronize their clocks with the NTP server. To eliminate clock errors, each measurement node locally computes its own time based on the Time Stamp Counter (TSC) register that counts CPU ticks. Correspondence between the values of the TSC register and the actual time is periodically computed by simultaneous measurements for the TSC register value and reference time (i.e., the time of each NTP server). Currently, all measurement nodes are synchronized with one of the CDMA-based NTP servers (stratum 1) that are deployed in the intra-network.
IP Performance Management Infrastructure for ISP
281
(2) Measurement Management Software The measurement management software is also implemented for the GNU Linux operating system. – Measurement execution The operator chooses the measurement paths by picking up pairs of the sender and the receiver measurement nodes. Measurement parameters of probing packets are defined. Once a new set of measurement parameters has been defined, the measurement management software securely commands the measurement nodes using SSL. During the measurement execution task, the measurement management software is on standby until the end of the measurement or the registration of another measurement task. It ensures that no other measurement is duplicated on the same measurement paths. (Multiple measurements can be performed on the same measurement node.) – Downloading measurement data The measurement management software periodically receives the measurement results of 11 metrics, explained above, from each measurement node. The total size of the data at each measurement period is only about 300 Kbytes and thus, simultaneous execution of network probing and downloading measurement data is not expected to interfere with precise performance measurement. In addition to the 11 metrics, detailed (packet by packet) measurement results can be downloaded at an operatorfs request, because measurement data for each probing packet convey much more information that is possibly useful for monitoring network-internal states. The measurement management software specifies the measurement data to be uploaded with its period and path. To avoid congestion due to transmission of detailed data (e.g., the total size of detailed data that contain 1000 packets is about 10 Kbytes) the transmission rate-limiting function is implemented. In addition, a selective download function is also implemented. For example, the detailed measurement data of certain paths within certain measurement periods is downloaded if each measurement metric exceeds the predefined threshold. – System configuration Besides the measurement management tasks described above, maintenance tasks are also performed by the measurement management software. Such tasks have low priority and they take place when no other task is being performed by measurement nodes. An example of a maintenance task is to configure a newly incorporated measurement node on the infrastructure. To do this, a firewall to prevent unauthorized access and basic software configuration are added to the infrastructure. Locating information on the node i.e., which router it connects to is recorded. Other maintenance tasks are related to keep-alive functions such as connectivity checking. If no messages (including measurement result uploading) are received within a predefined period, the measurement nodes are assumed to be down and alarm messages are then sent to the operators.
282
A. Tachibana et al.
OSPF monitoring Manager Graphical User Interface
OSPF monitor
LSAs at area1
Area 1
Topology database
OSPF monitor
LSAs at area 0
Area 0 (Backbone)
OSPF monitor
LSAs at area 2
Area 2
Fig. 3. System components of the OSPF monitoring framework
3.2
OSPF Monitoring Framework
OSPF is a link-state routing protocol, meaning that each router within the OSPF area discovers and builds an entire view of the network topology. Using the topology graph, each router computes a shortest-path tree with itself as the root and applies the results to build its forwarding table according to the cost associated with each link. Hence, a measurement node running OSPF can also build an entire view of the network topology by passively capturing LSAs from a router located in each OSPF area. Note that it makes no difference wherever a monitoring point is located in an OSPF area because all OSPF routers in the same area store the same LSAs. When OSPF is run on a large-scale network, an OSPF domain is usually divided into multiple areas for scalability. For example, an OSPF domain is often organized into areas containing several dozen routers and a backbone area (area 0). Each area must contain at least one router with an interface in the backbone area. Because LSAs are flooded to all OSPF routers in the same area but are not flooded to other areas, for a multi-area OSPF network, the OSPF monitoring framework needs to distribute at least one OSPF monitoring point to each area, we refer to this as an “OSPF monitor,” and capture LSAs. Figure 3 shows the system components of the OSPF monitoring framework. Each OSPF monitor is managed by a central OSPF monitoring management software and LSAs captured by each OSPF monitor are uploaded to the topology database. 3.3
Data Analysis Framework
(1) Route Calculation along Measurement Path Once a new performance measurement task is executed, the data analysis framework calculates the route along the measurement path (defined as a set of sender and receiver measurement nodes). Because the performance measurement framework records the location of each measurement node with the information of the
IP Performance Management Infrastructure for ISP
283
router to which the node connects, the data analysis framework looks up the topology database and finds the shortest route from the router that connects to the sender measurement node to the router that connects to the receiver measurement node according to Dijkstra’s algorithm used in OSPF. As mentioned in Section 2, performance data related to the route information itself is often useful for troubleshooting when performance deterioration occurs and it is indispensable to locate performance-degraded segments, as explained below. (2) Detection of Performance Deterioration The data analysis framework monitors network packet loss rate and the 95th percentile of delay variation along monitored paths by periodically (e.g., every 1 minute) looking up the performance database. A path is regarded as being degraded within a certain measurement period if either or both of two performance metrics, packet loss rate and the 95th percentile of delay variation, over the time period is larger than a pre-defined threshold (e.g., 0.01 and 10ms, respectively). In this paper, we refer to a path on which performance deterioration is detected as a ”deteriorated path.” If we detect at least one deteriorated path, the following inference methods are applied. (3) Locating Performance-degraded Segments – Inference method based on Packet Loss Measurements[17] If we detect performance deterioration by packet loss, the method classifies all monitored paths’ states into three path states, i.e., bad, medium, and good, for the measurement period, using the high and low thresholds of packet loss rates (e.g., 0.01 and 0.005). By comparing the path statuses, our method infers a candidate set of performance-degraded segments along the deteriorated paths with the following properties: (i) each good path includes none of the segments in the candidate set; (ii) each bad path includes at least one segment in the candidate set; or (iii) the number of segments in the candidate set is the minimum among all possible performance-degraded segment sets satisfying properties (i) and (ii). The method defines a performancedegraded segment as packet loss rate on a segment that is larger than the low threshold (0.005). – Inference method based on Clustering the Delay Performance[18] If we detect at least one deteriorated path by the 95th percentile of delay variation, clustering of the monitored paths based on the delay variations detected by the probing packets is performed. The method compares the time series of packet delay variation among multiple paths and classifies each path into a cluster by using a hierarchical clustering technique. This technique is designed to effectively identify correlation among delay variations on these paths in conjunction with a network tomographic approach. After clustering, the method can extract all the clusters with at least one deteriorated path. In other words, a set of paths under the following conditions is regarded as a set of degraded paths resulting from a common congestion: the set contains at least one deteriorated path, and each path in the set is subject to similar
284
A. Tachibana et al.
variations in packet delay in a synchronized manner. The final step involves locating the performance-degraded segments by combining the clustering results with the topology information. During each measurement period, the segments shared by all paths that belong to the same cluster, including some deteriorated paths, are inferred as being performance degraded, and such segments are the cause of those deteriorated paths. Because the method clusters multiple monitored paths based on timeseries of packet delay variation, we need to download detailed (packet-bypacket) measurement data on multiple paths. However, since our concern is which monitored paths are degraded in a synchronized manner, we do not have to compare all monitored paths. Namely, among such paths whose delay variations are very small (completely non-degraded paths), some of them may be eliminated without decreasing the accuracy of the inference results. Actually, in the preliminary analysis, we could reduce the number of paths for which data need to be downloaded, by excluding the paths for which the maximum delay variations in each 60-second period are distinguishably smaller than the candidates of degraded paths.
4
Evaluation and Discussion
In this section, we evaluate the three functionalities of our infrastructure, performance measurement, OSPF monitoring and locating performance-degraded segments. The accuracy of performance measurement is verified by deploying a prototype of our infrastructure on a commercial intra-network. Since it is difficult to actually induce OSPF routing failure and performance deterioration in a real intra-network, these two functionalities are verified on a local experimental network. 4.1
Measurement Accuracy
Measuring IP performance accurately is the most essential part of our management infrastructure. Accuracy-verifying tests were conducted over the commercial intra-network. The core nodes of the network are connected with multiple 10 Gigabit/Gigabit lines. We chose 4 paths and made active measurements along them for 2 days. The distance of the targeted paths is in the range from about 1000 km and 1500 km. To verify measurement accuracy, we deployed another hardware-based (more expensive) measurement system “IQ2000 [19],” which actively measures end-toend IP performance on a targeted path more accurately than a software-based system. Probing packets with an interval of 20 ms are sent on both measurement infrastructures. Table 1 shows the distribution of the difference in the 95th percentile of one-way packet delay on a targeted path within 1 minute measured by our infrastructure and IQ2000. In addition, the distribution of the differences in packet loss rates measured is also indicated. The following results were obtained.
IP Performance Management Infrastructure for ISP
285
Table 1. Distribution of the difference between the two measurement infrastructures Dd is the difference the number of of packet delay [ms] 1-minute periods 0 ≤ |Dd | < 0.25 2588 0.25 ≤ |Dd | < 0.5 183 0.5 ≤ |Dd | < 0.75 6 0.75 ≤ |Dd | < 1 6 1 ≤ |Dd | 21
Dl is the difference the number of of loss rate 1-minute periods 0 ≤ |Dl | < 0.001 2603 0.001 ≤ |Dl | < 0.002 131 0.002 ≤ |Dl | < 0.003 44 0.003 ≤ |Dl | < 0.004 17 0.004 ≤ |Dl | 9
– The average of the difference in the 95th percentile of one-way packet delay was 0.17 ms. In about 99.3% (2783/2804) of 1-minute periods, the difference of the 95th percentile of one-way delay was less than 1 ms. – In about 99.7% (2795/2804) of 1-minute periods, the difference in packet loss rates was less than 0.004. – Measurement results along the other paths were roughly the same. The proportion of the periods within which the difference in the 95th percentile of one-way packet delay was less than 1 ms ranged from 99.1% to 99.8%. On the other hand, the proportion of periods within which the difference of packet loss rate was less than 0.004 ranged from 99.3% to 99.8%.
4.2
OSPF Monitoring
We established an experimental network consisting of five OSPF running routers (a), (b), (c), (d) and (e), the OSPF monitor and four performance measurement nodes as illustrated in Fig. 4. The OSPF monitor captures LSAs by establishing the adjacency with a router (b) and draws the entire topology of the experimental network. Figure 5 shows the topology drawn by our infrastructure with the graphical user interface. As a result, we could confirm that monitoring LSAs precisely draw the real router-level topology. In addition, we investigated behavior when links/routers are removed from the experimental environment. We monitored the topology via the graphical user interface when one of links “(a)(b)”, “(b)-(c)”, “(b)-(d)” and “(d)-(e)”, or one of routers (a), (c), (d) and (e) is removed. The results are summarized as follows. – In all cases, we could confirm that monitoring OSPF precisely recognizes the removal of links/routers and redraws the new topology. – The interval before our system recognizes a routing failure was in the range from 5 to 45 seconds. The interval mainly depends on when each router detects a failure. In this experiment, the hello-interval, the interval between the sending time of OSPF Hello Packets, and dead-interval, a timer used to time out inactive adjacencies, on each router were 10 and 40 seconds (default values of the router), respectively.
286
A. Tachibana et al.
Extension for OSPF Equal-Cost Multipath Multipath routing “Equal-Cost Multipath (ECMP)” is implemented with the OSPF. ECMP splits the traffic evenly among equal-cost paths to each destination by distributing the packets among them. Since the OSPF monitoring infrastructure monitors only the LSAs, the current version of our infrastructure cannot ascertain which paths each packet passes through at the ECMP branch points. On the other hand, the hash-based version of ECMP that maps packets from the same flow to the same path is often performed to avoid packet reordering [20,21]. For this type of ECMP routing, measuring the measurement paths by periodically issuing the traceroute command specifying the same UDP port number as the network probing packets use, in addition to the OSPF monitoring task, might be able to obtain more detailed route information. 4.3
Inference of Performance-Degraded Segments
To verify the functionality of locating performance-degraded segments, we chose a targeted segment from router (d) to measurement node 3, and caused congestion by loading heavy traffic on the segment. In Fig. 4, the traffic generator sent a number of packet trains, each of which consists of several dozen 1500 byte UDP packets. The interval of each packet train is uniformly distributed from 1 to 10 ms. By continuously monitoring the inference results shown on the graphical user interface as illustrated in Fig. 5, we checked whether the targeted segments are inferred as being degraded or not (the performance-degraded segment is indicated by bold gray arrow). Here, we define the performance-deterioration as the condition under which either or both of the following two conditions is satisfied: (i) Packet loss rate is larger than 0.01; (ii) The 95th percentile of packet delay variation is larger than 10 ms. measuremen node 1 Measurement management - OSPF monitoring and management -Graphical User Interface
measuremen node 2 web access user
probes (a)
probes (c)
(b)
These are Gbit Ethernet links (The others are 100 Mbit ethernet links) (e)
area0
probes
(d) HUB
HUB traffic load
probes
measuremen node 4
traffic generator
Fig. 4. Experimental local network
measuremen node 3
IP Performance Management Infrastructure for ISP
287
performance-degraded segment
Fig. 5. An example of monitoring OSPF
The results are summarized as follows. – During heavy traffic loading, there was a total of 131 1-minute periods during which performance deterioration was detected. (46 and 109 1-minute periods were detected by packet loss rate and delay variation, respectively.) – In 38 (29%) of the 131 1-minute periods, the data analysis framework failed to infer performance-degraded segments because the inference methods stop when any possibility of miss-inference is recognized to avoid inferring wrong segments. In 86 (92%) of the remaining 93 periods, the targeted segments were inferred as being congested correctly. In all cases, inference was performed in 1 minute or less.
5
Conclusion
In this paper, we proposed an IP performance management infrastructure having the twin frameworks of performance measurement and topology monitoring. By combining above frameworks, the infrastructure locates performance-degraded segments. Through an experiment over a commercial intra-network and an experimental local network, we verified that the proposed infrastructure can manage IP performance, topology and the location of the performance-degraded segments precisely and in real time.
References 1. Shaikh, A., Greenberg, A.: OSPF Monitoring: Architecture, Design and Deployment Experience. In: Proc. USENIX Symposium on Network Systems and Design and Implementation (NSDI) (2004) 2. Shaikh, A., Goyal, M., Greenberg, A., Rajan, R., Ramakrishnan, K.: An OSPF Topology Server: Design and Evaluation. IEEE J.Selected Areas in Communications 20(4) (2002)
288
A. Tachibana et al.
3. Watson, D., Labovitz, C., Jahanian, F.: Experiences with Monitoring OSPF on a Regional Service Provider Network. In: Proc. IEEE International Conference on Distributed Computing Systems (ICDCS) (2003) 4. Claffy, K.C., Monk, T.E., McRobb, D.: Internet tomography. Nature, Web Matter (January 1999) 5. Peterson, L., Anderson, T., Culler, D., Roscoe, T.: A blueprint for introducing disruptive technology into the Internet. In: Proc. ACM Workshop on Hot Topics in Networks (HotNets), Princeton, NJ, October 2002, pp. 59–64 (2002) 6. Andersen, D.G., Balakrishnan, H., Kaashoek, M.F., Morris, R.: Resilient overlay networks. In: Proc. ACM Symposium on Operating Systems Principles (SOSP), Banff, Alberta, Canada, October 2001, pp. 131–145 (2001) 7. Simpson Jr., C.R., Riley, G.F.: NETI@home: A distributed approach to collecting end-to-end network performance measurements. In: Proc. Passive & Active Measurement (PAM), Juan-les-Pins, France (April 2004) 8. Shavitt, Y., Shir, E.: DIMES: Let the internet measure itself. SIGCOMM Computer Communication Review 35(5), 71–74 (2005) 9. Kalidindi, S., Zekauskas, M.J.: Surveyor: An infrastructure for Internet performance measurements. In: Proc of INET 1999 (June 1999) 10. Active Measurement Project, http://amp.nlanr.net/ 11. Paxson, V., Adams, A., Mathis, M.: Experiences with NIMI. In: Proc. Passive & Active Measurement (PAM) (April 2000) 12. Caceres, R., Duffield, N., Horowitz, J., Towsley, D.: Multicast-based inference of network-internal loss characteristcs. IEEE Trans. Info. Theory 45(7), 2462–2480 (1999) 13. Duffield, N., Presti, F.L., Paxson, V., Towsley, D.: Inferring link loss using striped unicast probes. In: Proc. IEEE infocom, Anchorage (April 2001) 14. Tsuru, M., Takine, T., Oie, Y.: Inferring link characteristics from end-to-end path measurements. In: Proc. IEEE ICC, Helsinki, June 2001, pp. 1534–1538 (2001) 15. Bestavros, A., Byers, J., Harfoush, K.: Inference and labeling of metric-induced network topologies. In: Proc. IEEE infocom, New York (June 2002) 16. Padmanabhan, V.N., Qiu, L., Wang, H.: Server-based inference of internet link lossiness. In: Proc. IEEE infocom, San Francisco (April 2003) 17. Tachibana, A., Ano, S., Hasegawa, T., Tsuru, M., Oie, Y.: Locating Performancedegraded segments over the Internet Based on Multiple End-to-End Path Measurements. IEICE Transactions on Communications Internet Technology VI (April 2006) 18. Tachibana, A., Ano, S., Hasegawa, T., Tsuru, M., Oie, Y.: Locating Performancedegraded segments on the Internet by Clustering the Delay Performance of Multiple Paths. In: Proc. IEEE ICC, Glasgow (June 2007) 19. IQ, QoS Monitoring system, Yokogawa Electric Corporation (2000), http://www.yokogawa.com/tm/data/tm-data.htm 20. Cisco express forwarding(cef). Cisco white paper, Cisco Systems (July 2002) 21. Junos 6.3 internet software routing protocols configuration guide, http://www. juniper.net/techppubs/software/junos/junos63/swconfig63-routing/html/
Can Critical Real-Time Services of Public Infrastructures Run over Ethernet and MPLS Networks? Jaime Lloret1, Francisco Javier Sanchez2, Hugo Coll3, and Fernando Boronat4 1,3,4
Department of Communications, Polytechnic University of Valencia, Camino Vera s/n, 46022, Valencia (Spain) [email protected], [email protected], [email protected] 2 ADIF, Molino de las Fuentes s/n, 46026, Valencia (Spain) [email protected]
Abstract. — With the adoption of Ethernet-IP as the main technology for building end-to-end real-time networks, the requirement to deliver high availability, quality and secure services over Ethernet and MPLS has become strategic. Critical real-time traffic is generally penalized and the maximum restoration time of 50 msec. sometimes is exceeded because of devices hangings or the high delay to find an alternative path. Existing standard networks are not ready to transport real-time critical information. This issue must be solved specially in critical infrastructures such as railway control systems, because passengers’ safety could be committed. In this work, first we have checked in which conditions the devices of the network will have a reply in real-time. Then, we will explain why existing Ethernet and MPLS combined solutions don’t offer recovery time lower than 50 msec., and we will propose a new approach that achieves these conditions. Our statements are based on real measurements in real railway environments and using real testbeds. Keywords: real-time networks, critical systems, Ethernet, MPLS.
1 Introduction Distribution and transport companies (gas, oil, water, railway, etc.) often have their own voice and data communication infrastructure, usually based on SDH/SONET transmission systems over fiber or copper cables. Only few years ago, industrial systems were “islands” for control and system safety, but now they are integrating network technologies, to permit easy growing, and central management. We can distinguish two main environments depending on the type of service: non critical realtime services and critical real-time services. Normally, non critical real-time services are based on Ethernet access to corporate MPLS/VPLS network. The main structure and technology for this network responds basically to multimedia traffic requirements, but the behaviour is completely different when we are connecting critical real time systems to the same network. In fact, to avoid occasional blocking problems, critical real-time services are provisioned through independent local Ethernet networks (most of them in ring topology to provide resiliency), with no A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 289–301, 2008. © IFIP International Federation for Information Processing 2008
290
J. Lloret et al.
interaction with corporate MPLS/VPLS network. These solutions increase complexity and budget, and present many difficulties for integrated management on critical infrastructure companies. In the case of railway systems (where we are going to do our tests and simulations), non critical real-time services are provisioned through direct access to corporate MPLS network, such as railway station auxiliary services: automatic stairs, lifts, evacuation and emergency facilities, IP phones, video, remote alarm and supervision, etc. Station services and equipments are connected to third level nodes (usually MPLS routers) organized by a double ring topology. Both ends of the ring are connected to regional gigabit ring, through physical link between third level node and second level node (this is typically a layer 3 switch). On the other hand, critical real-time services are provisioned through independent Ethernet rings with resiliency mechanisms activated: level 2 methods based on Ethernet common topologies (like Spanning Tree Protocol -STP-, Rapid STP, Multiple STP and link aggregation), or specific ring topologies (RPR/802.17, EAPS/RFC3619) and level 3 methods based on interior routing protocols (EIGRP, ISIS, OSPF) and default-gateway backup protocols (VRRP, HSRP). [1] A real example of a complete railway control system network is shown in figure 1. The Circles represent routers in each station interlocking system, the rectangles represent switches using HSRP protocol and the squares represent interlocking CPUs. Dotted lines are the backup network lines. [2] Station 1
Station 2
Station 3
Station 4
Station 5
Station 6
Station 7
Station 8
Fig. 1. Network topology of a railway line critical control system
In critical real-time networks, any type of failure must be recovered in less than 50 msec. The non achievement of this goal could suppose to lose lives, such as in critical railway control system networks [3]. It is vital to study the viability of running critical real-time services over standard networks such as Ethernet and MPLS. This goal will allow the companies to use a unique network infrastructure. This paper is structured as follows. Section 2 describes last methods for protection and restoration in Ethernet and MPLS networks. Section 3 shows the measurements and analysis of real Ethernet and MPLS scenarios on the Spanish railway administrator (ADIF) company. Section 4 presents our proposal to improve the availability and fault tolerance for critical real-time systems using the integrated network. Finally, section 5 summarizes the conclusions and gives future works.
Can Critical Real-Time Services of Public Infrastructures Run over Ethernet
291
2 Failure Detection, Protection and Restoration in Ethernet and MPLS Networks When there is a failure in the network, there must be a way to detect it, so the recovery operation must start. Failure detection depends on the type of failure and may be done by an adjacent node to the failed one or by a configured point of repair in the network. Failure detection involves multiple layer mechanisms such as [4]: • • • • • •
Hardware: connectivity failures can be detected by line cards. Signaling: errors in SDH/SONET are detected using signaling mechanisms. Link: specific messages can be sent to poll node state or to notify an error. Network: when there is a failure, “hello” messages are missing. Application: SNMP traps can be used to notify a failure to a central manager. Specific protocols: failure detection could also be based on a specialized protocol like BFD (Bidirectional Forwarding Detection) [5].
The design and reconfiguration of the network, regarding with the components availability, is fundamental to deliver the required performance and reliability to realtime services. There are complex methods based on two complementary approaches to avoid the failure impact of the network components. The first one is to design high availability working paths, where the resilience is provided by selecting a working path with high connection availability. Few protocols include in their metrics availability factors, but usually data link protocols don’t include any. The second one is the use of backup paths. There are two main methods for resiliency provisioning: • Protection: static scheme in which backup paths are pre-computed and preprovisioned before the failure occurs. Protection can be done in two different forms: dedicated protection and shared protection. In dedicated protection, the resources used for protection are dedicated for backup traffic. There are two types of dedicated protection (1+1 and M:N protection). In shared protection, when a backup path is activated, other backup paths, that share resources with it, will have to be rerouted. Shared protection is more complex to maintain dedicated protection, but it can offer higher network utilization. • Restoration: dynamic scheme in which backup paths are discovered dynamically due to failed connections, so they are created and routed after the failure. In both cases have one mechanism to detect the failure and notify it to the rest of nodes and another one to re-route traffic from the working the path to a backup path. Recovery schemes can also be categorized by the scope of the recovery. Global recovery covers link and node failure by calculating a new unique end-to-end path (this recovery action run in the ingress node), while with local recovery faults are handled locally by the neighbors. Keeping failures local cause minimum disruption in the traffic, but it is necessary to reserve several paths. The topology of the network affects on how the recovery can performs [6]. Network recovery management is difficult when the network is viewed as an unstructured collection of backup paths. These schemes are based on building a set of sub-topologies of the network, serving as a more intuitive abstraction of the recovery paths, and can be applied to both, local and global recovery. The main methods are:
292
•
•
•
•
J. Lloret et al.
Self-healing rings. In these methods each node in the network is connected with two links to its upstream and downstream neighbours. In regular operation, the traffic is sent in one direction of the ring. When a link fails, the traffic is sent to the other link in the reverse direction, so the failed link is avoided. There are several mechanisms that rely on ring topologies, like SONET/SDH or Ethernet ring solutions (RPR/802.17 [7] and EAPS/RFC3619 [8]). Disjoint paths. These methods are based on a graph property described by Menger [9]. These solutions are applied to MPLS networks, because they can be adapted easier to MPLS signalling. This technique uses pre-provisioned backup paths with local recovery [10]. Protection cycles. The goal is to provide fast recovery speed (usually offered in rings) to mesh networks. In order to combine the best properties from both ring and mesh, a new concept called p-cycles has been introduced. It is based on the formation of closed paths which are formed in the spare capacity only of a mesh restorable network. When a link fails, the traffic is locally switched or routed according to the cycle instead of to the original shortest path [11]. Redundant trees. These methods are applied to standard Ethernet access networks. Ethernet traditionally relies on Spanning Tree Protocol (STP) defined in IEEE 802.1D, which provides loop-free communication between all nodes. The restoration after a link failure involves the reconstruction of the whole spanning tree. Typically, the recovery of the worst case requires around 50 seconds, which is not acceptable for real-time critical applications. In Rapid STP convergence, the time is reduced but is still in the order of few seconds. Multiple STP defines several spanning trees instances organized in regions and map each Virtual LAN onto a single spanning tree. MSTP restoration time is still high [12].
3 Measurements and Analysis in Ethernet and MPLS Networks Our first goal is to know which delays are introduced in the network because of the data transmission through the wire and because of the devices placed inside. We will give a law that shows which conditions we should follow when we want to have delays lower than 50 msec. Then, some measurements will demonstrate that existing recovery path restoration systems for Ethernet (such as STP) don’t accomplish realtime requisites. Next, we have measured the real environment to know which delays are in a real MPLS network when there is regular traffic through it. Finally, we have measured the path restoration time when there is a failure in the network. 3.1 Delays in Network Devices and Their Links Network delays are produced because of the transmission time Ttrans (time to send the information from the network adapter to the transmission medium), the propagation time Tprop (elapsed time in the medium) and the processing time Tproc (time to process the received frame in the station and transmit the next one). The Round Trip Time (RTT) of a ping is the elapsed time needed to send the frame from the station to the medium, plus the elapsed time to receive the last bit at the destination, plus the elapsed time to process the last bit and send the ACK, plus the elapsed time to send from the destination station to the medium the ACK, plus the ACK propagation time,
Can Critical Real-Time Services of Public Infrastructures Run over Ethernet
293
plus the processing time of the source station to process last bit of the ACK, plus the processing time of the source station. The expression for RTT is given by equation 1.
RTT = 2·Tprop + 2·Tproc + Ttrans_ frame + Ttrans_ ACK
(1)
We have considered the same processing time for both stations when they have the same hardware characteristics and the same operative system. The transmission time is determined by the bits of the frame sent divided by the Mbps of the interface card. The propagation time is the distance between stations divided by the propagation velocity in medium (for non guided transmissions through air or ether, it is the light speed, approximately 3•108 m/s, for guided transmissions through fiber and copper, this velocity is approximately 0.67 times the light speed). In order to determine the mean elapsed time, we have taken the average time of 100 pings. Each ping has 548 bytes, so the total packet length is 602 bytes (548 bytes of ping data + 8 bytes of the ICMP + 20 bytes of the IP + 26 bytes of Ethernet). Figure 2 shows obtained results using UTP category 5 wires. It also shows the equation that relates the meters of wire with the RTT using the obtained results. 0,41
y = 0,0063x + 0,3394 R2 = 0,96
0,40
RTT (msec.)
0,39 0,38 0,37 0,36 0,35 0,34 0,33 0,32 0,31 1 Meter
2 Meter
3 Meter
4 Meter
6 Meter
8 Meter
10 Meter 20 Meter
30 Meter
Fig. 2. RTT for several UTP category 5 pigtails
Taking these measurements into account, we can state that the wire together with the computer processing time and the packet transmission time introduces delays of about 1 msec. every 100 meters, where about 0.34 msec. will be due to the computer processing time and the packet transmission time. We must remember that it is not allowed a wire length larger than 100 meters in fast Ethernet. For Gigabit Ethernet we have calculated the delay of the propagation time for 1 kilometre about 0.004 msec. Once we have obtained the elapsed time due to the wire and to the computers, we can obtain the delay time introduced by the network devices. In order to do it, we have taken the average time of 100 pings (with the same size than the previous test) using two wires of 10 meters (one for each computer). Figure 3 shows the delay measurements introduced by some switches from several manufactures subtracting the RTT obtained for 20 meters in the previous test. The range of delays varied from 0.113 msec. to 1.943. The average value of all measured switches was 0.667 msec. The same methodology was used for the routers to measure their processing delay. Figure 4 shows results obtained from some routers of several manufacturers. The range varied from 0.479 msec. to 2.229 msec. The average value was 1.191. We have observed that the processing delay introduced highly depends on the switch or router
294
J. Lloret et al.
2,5
1,5
1
0,5
0 Cisco Catalyst 2950/12
Cisco Catalyst 2950/24
Allied Telesyn 8124XL
Allied Telesyn 8024
Cisco Catalyst 2923/24
Cisco Catalyst 3550
Cisco Catalyst 1900/12
Sitre Telecom
Nortel 2000/24
3com 2200/16
Processing delay (msec)
P rocessing delay (m sec)
2,5 2
2 1,5 1 0,5 0 Cisco 2621XM
Switches
Fig. 3. RTT for several Switches
Cisco 2651XM
Allied Telesyn AR410
Cisco 1720
Cisco 2611
Cisco 2514
Routers
Fig. 4. RTT for several Routers
manufacturer and even on its model. Switches and routers with more features introduce higher delays and, on the other hand, older switches and routers have higher delays than other devices from the same manufacturer. Using the measures obtained from the real world, we can conclude that the RTT value (in msec.) in an Ethernet network follows approximately equation 2. (2) RTT = 1.1912·Z + 0.6669·Y + 0.0063· X + 0.3394 Where Z is the number of routers, Y is the number of switches and X is the meters of wire in the Ethernet network. Assuming that there are 2 switches at least per router in the network and supposing that there is a mean value of 30 meters of wire between any device or computer, we can calculate that there couldn’t be more than 18 routers between the most remote devices in order to have a network with real time requisites. 3.2 Convergence Time in Spanning Tree Protocol In order to check that the STP doesn’t accomplish real-time responses, we have setup a testbed with three switches arranged in a triangle and test the response time when the link where the traffic goes through fails down. Figure 5 shows the network topology and the features of the computers for the testbed. In order to measure the time needed to recover a link, where the traffic is going through, we transmitted 10000 pings, each one with a difference of 200 msec. from one laptop to the other and, then, we measured how many packets were lost in the convergence time. Table 1 shows our measurements for several manufacturers and models. Table 1. STP measurements Switch 1 IP 192.168.1.1
Switch 3 IP 192.168.1.3 F 0/3
F 0/5
F 0/3
F 0/1
F 0/2
F 0/1
Laptop 1 IP 192.168.1.10 Intel Core 2 Duo 2.0Ghz 256 Mb RAM Debian Linux
F 0/5
F 0/2
Switch 2 IP 192.168.1.2
Laptop 2 IP 192.168.1.11 Intel Core 2 Duo 2.0Ghz 1 Gb RAM Debian Linux
Fig. 5. Testbed for STP measurements
Cisco Cisco HP C2923XL C2950-12 Procurve Packets received 7466 7871 9943 Packet loss 25.34% 21.29% 0.57% Time (in msec) 33954 28862 4458 Minimum value 0.156 0.136 0.107 Average value 0.356 0.305 0.295 Maximum value 1.561 4.731 1.231 Max. desviation 0.073 0.162 0.087 Convergence 506800 425800 11400 time (msec)
Can Critical Real-Time Services of Public Infrastructures Run over Ethernet
295
We can now state that the convergence time in a Fast Ethernet network, when a switch fails and the path is recovered using STP, exceeds always 50 msec, so such networks don’t provide real time recovery. 3.3 Round Trip Time in the Spanish Railway Network In order to test a MPLS network, area 3 (Madrid-Albacete-Játiva-Valencia) of ADIF corporate network was chosen. This area has 28 routers as it is shown in figure 6. The network has two levels. The second level can be distinguished by lines in black in figure 6. Stations are connected to the rings with 2 Mb/s, to deliver service in short distances (15-60 kilometers). Above this topology we can find 1 GB fiber optic links that connect main network nodes. Lines in red form the first level, that is, nodes 0, 1, 2 and 3 (Madrid, Albacete, Valencia and Jativa). Each ring has two connected nodes to this fiber network through 100Mb/s links. Thus, when a station needs to communicate with a station of another ring or other control node, data will go through fiber network. Distances between nodes in the same ring not exceed 15 Kilometers. However, first level node links are about 250 Kilometers. In order to know the real response time between the most remote nodes, we have gathered RTT from node 9 to node 21. Figure 7 shows the real response time obtained by 100 regular pings between those nodes. The minimum value was 23 msec., the maximum value was 98 msec. and the average time value was 24.84 msec. The 20th ping and the 94th ping peaks could be because there was sporadic excess of traffic in one of the nodes in the path, so the queue of that device needed more time to process all packets. Reference [13] shows more information about real measurements and simulations of this test bench. 120
RTT (msec.)
100 80 60 40 20 0 0
20
40
60
80
100
Ping
Fig. 6. ADIF corporate network - Area 3
Fig. 7. Delay time from node 9 to node 21
3.4 Convergence Time When There Are Node Failures in MPLS Networks In order to measure the delay produced in the traffic because of a link failure, we have used the testbed shown in figure 8. All routers in the topology were Cisco 2621 XM running MPLS. All links between routers have a bandwidth of 2 Mbps except the links between the routers b and c, d and e, and f and g, which are 10 MBps. In T=0 sec. we started to send 200 UDP packets per second (one packet every 50 msec.), with a size of 64 Bytes, from the computer A to the computer B. Due to the bandwidth of the links in the network, the path followed by the packets was a-b-d-e-g-h. In t=5 sec., the link between routers e and g fails. The time needed to send the traffic through an
296
J. Lloret et al. 192.168.3.0
A .1 192.168.11.0
192.168.0.0
c .2 .1
a
e .1
.1
.2
.1
g .1
192.168.10.0 .2 .2
192.168.2.0
.1
192.168.1.0
.2 .2 b
.3
.2
192.168.5.0
.1 .2
.1
192.168.6.0
192.168.8.0 .2
.2 .1
.2
192.168.4.0
d
.1
.2
f
.2
.1 B
h 192.168.12.0
192.168.9.0 .1
192.168.7.0
Fig. 8. Testbed used to measure the convergence time
available path is 5.4 secs. This time, the path followed by the packets is a-b-d-f-g-h. In t=15 secs. we recover the link between routers e and g and it is needed 5.0 secs to restore the old path. In both cases (the path recovery and the path restoration), the delays are quite higher than 50 msec.
4 Proposal We propose a new model for the integration of critical and non critical applications over standard Ethernet and MPLS networks. The new scenario is based on MetroEthernet corporate and integrated real-time network (see figure 9).
Customer Edge (VLAN)
Q in Q 802.1ad Encapsulation
MPLS o Provider Backbone Bridge (MAC in MAC 802.1ah)
Q in Q 802.1ad Encapsulation
Customer Edge (VLAN)
Fig. 9. Real-time corporate and integrated control network For each application or real time traffic flow, it is assigned a separate VLAN to establish a quality of service with level 2 or 3 marking. It will be a relationship between VLANs and VPNs at the backbone. It is necessary to improve the transport network to guarantee high quality communications. The main objectives of these improvements are: guarantee quality of service to vital applications (also during fails), minimize fail occurrences and get low recovery times (lower than 50 msec., the standard on SDH systems). MetroEthernet, technology is not used to support critical applications, where it is necessary not only to adjust to QoS requirements, but high end-to-end reliability and availability. We can find many innovations about QoS aware MPLS/VPLS networks, but really there is a gap about fault-tolerance for
Can Critical Real-Time Services of Public Infrastructures Run over Ethernet
297
supporting critical services. Our main goal is to provide high quality and reliability for the end-to-end path through Ethernet access networks and MPLS/VPLS core for non critical and critical real-time services. 4.1 Components of the Proposed Model The general components used in our proposed model are (i) a topology discovery protocol to build the network map, (ii) an algorithm for selecting primary and backup paths, (iii) an encapsulation method and frame format to carry data and explicit routing information, (iv) a protocol to detect and notify failures and, finally, (v) a mechanism to switch from active to backup paths. A protocol discovery is needed to learn network connectivity. It is better to use local non bridging protocol to avoid traffic overhead. In this case, we use LLDP (Link Layer Discovery Protocol) [14], defined in IEEE 802.1AB standard. LLDP data units (LLPDUs) are sent to destination MAC address, defined like LLDP multicast address. A LLDPDU will not be forwarded by MAC bridges or switches that using IEEE 802.1D standard [15]. In order to distribute this information we have chosen SNMP, and to retrieve the initial topology, network nodes use SNMP polls to query topology MIB database and they use SNMP traps to notify topology changes. LLDP system capabilities information is used to query only neighbours which are intermediate nodes (bridge, AP, etc.) and to register end-stations (station-only). Paths are pre-calculated with the algorithm proposed in [16]. It is a simple solution to build optimal primary and backup paths (k-paths) based on the SPF algorithm. But, in our case, we are going to include QoS and reliability considerations in a new integrated metric. All the parameters can be obtained through SNMP queries to the nodes in the path. We have not used STP algorithm because of its limitations (only one working path, no load balancing, a unique point of failure, maximum bridge diameter, etc). We have designed the metric shown in equation 3 to achieve our goals. delay ⎞ ⎛ loss·length ⎞ ⎛ ⎟⎟ Metric = ⎜ k1 ⎟ + ⎜⎜ ⎝ bandwidth ⎠ ⎝ availabili ty ⎠
(3)
The metric is formed by two parts. The first part, on the left, is related with QoS. Bandwidth is given by the addition of the bandwidth of the links along the path and the delay is the Round Trip Time required to move a packet from the source to the destination. The second part, on the right, is related with the reliability. Availability is the fraction of time in which nodes or links from all paths are working with full functionality, loss is the packet loss probability, and it is obtained from the SNMP interface counters, and length is the number of hops between the source and the destination. We have considered K1=103 to get the QoS part into the desired values. Only border network nodes build a full network map and select optimal working and backup paths, as a function of the availability and reliability based metrics. This algorithm falls under the category of proactive (pre-calculated backup paths) and global fault management (end-to-end). Really, the algorithm only have to add route descriptors (node and port identifier pairs) to a vector and have to detect if the node identifier is repeated for discarding this path. The next computation of the path can begin from the last node before the loop, and try to find another feasible segment to a destination. Our proposal allows several active paths for load balancing because the
298
J. Lloret et al.
loop free topology is inherent to explicit routing. Moreover, we have not a unique point of failure; we have a faster path recovery and an increased bridge diameter. The encapsulation method is based in QinQ or IEEE 802.1AD [17]. QinQ was originally designed to expand the number of VLANs by adding an additional tag to an 802.1Q frame. With this new tag, the number of VLANs is increased to 4096+4096. QinQ tags can indicate different information. For example, the inner tag indicates the user and the outer tag, the service. QinQ can be executed as the extension of a core MPLS VPN in the MetroEthernet to provide end-to-end VPN technology. QinQ encapsulation can be based on port or on traffic (on traffic is more flexible). QinQ encapsulation is also compatible with default-gateway standby protocols, like VRRP. Level-3 resiliency methods can be also added to our method. Ingress nodes store in their memory explicit end-to-end primary and backup paths. If an active path fails, the ingress node decides to switch to the best alternative path. The old primary path is marked inactive, and can be deleted from their memory if a timeout is exceeded. If the recovery time of the failed node, or link, is lower than a timeout, old path is marked as an active. In this case, it is not necessary to recalculate the path. This switching mechanism is extremely simple, and there is no need for changing frame control information to notify an alternative path, because primary and backup paths are stored in ingress node’s memory and intermediate nodes have not any routing information. In MSTP recovery solutions, normally end-hosts need to change the VLAN id in subsequent frames to select an alternative switching path [18]. As our proposal uses an explicit routing/switching mechanism based on the global view of the network, paths are pre-calculated from LLDP information and ingress node put full explicit path into the frame header. Since the path is predefined, the frame is routing at each node without the need for making routing decisions at every node along the path (hop-by-hop destination-based routing). Setting up paths implies that network will keep state information. It has been avoided in the past due to its potential reduce of performance, but now it can be done more efficiently because of higher-performance devices. In fact, MPLS networks use this technique to establish traffic engineering tunnels, but Ethernet networks have never use it before. Explicit routing approach is very useful for the prevention of routing loops, for traffic engineering and to adjust to QoS constraints (some constraints like the overall delay cannot be really calculated in a hop-by-hop fashion). Then, it is not necessary to work with Spanning Tree algorithm to find a unique path with no closed cycle, neither Multiple Spanning Tree routing solutions like 802.1AQ Shortest Path Bridging [19]. In order to guarantee full compatibility, we have employed the source routing transparent Ethernet operation described in IEEE Std 802.1D-2004 Annex C. However, we use QinQ tagged frame format between the ingress and egress node. In this case, when CFI bit is set (bit CFI=1), the switch performs source routing. It comprises a two-octet Route Control Field (RC) that has the following fields: •
3-bit Routing Type (RT) fixed to 0XX. If the most significant RT bit is set to 0, the Route Descriptor (RD) field contains a specific route through the network. This is the unique combination used in our proposal, because there is no need for routing explorer frames (network map is built from LLDP information).
Can Critical Real-Time Services of Public Infrastructures Run over Ethernet
• •
• •
299
5-bit Length (LTH). Indicates the length (in octets) of the Routing Information Field (RIF). Length field values will be even values between 2 and 30 inclusive. 1-bit Direction Bit (D). If the D bit is 0, the frame traverses the LANs in the order in which they are specified in the RIF (RD1 to RD2 to... to RDn). Conversely, if the D bit is set to 1, the frame will traverse the LANs in the reverse order (RDn to RDn-1 to... to RD1). 5-bit Largest Frame (LF). For source routing frames, the LF bits are ignored and shall not be altered by the bridge. Then this field is free to use such as destination region/ring id. 1-bit Non Canonical Format Indicator (NCFI). If it is set, indicates that all MAC address information, that may be present in the MAC Service Data Unit (MSDU), is in Canonical format, and it is reset otherwise. Figure 11 shows the modified E-RIF Route Control Field. 2 RT Bits:
8
(X) 6
LTH 5
D 1
8
NCFI
Octets: 1
LF 7
2
1
Fig. 11. E-RIF Route Control Field
Moreover, more octets of Route Descriptors could be added (up to a maximum of 28 octets such as in IEEE Std 802.Q-2005). Each Route Descriptor has 16-bits that next node contains (7-bit code) and port destination (9-bit code) for providing routing information. This design is scalable because it has three organization levels: regions (up to 32 coded in 5-bit field), nodes (up to 128 coded in 7-bit field), ports (up to 512 coded in 9-bit field). The bridge diameter of the network is only limited by the maximum number of octets in the frame. In our implementation, end-stations transmit standard frames with no routing information included. The ingress switch is responsible to put it into the frame and the egress put off the routing information. Then, no changes are required at end-stations. Route Descriptors are concatenated and are removed from the corresponding switch. Finally, when there is no Route Descriptors in the message, the bit CFI is set to zero. Then, last switch forwards the frame to local port destination. This mechanism of putting and taking information from the frame can prevent undesirable loops in the network, because never must be two equal route descriptors in the route information fields. In order to provide a procedure and protocol to notify link and node errors, for starting restoration actions, we can choose between two standardized methods (we can implement each one of them). Bidirectional Forwarding Detection (BFD) is an IETF draft standard that defines a method to detect errors in forwarding paths, and can be used to trigger a switch or a router to alternate interfaces or routes. It can be applied to many technologies and networks. The alternative option is to use IEEE 802.1AG standard [20]. It was designed only for Ethernet networks but it can be adapted with few modifications. Both can be used depending on the network scenario.
300
J. Lloret et al.
5 Conclusions We have shown the need of critical and non critical real-time services integration in a unique corporate network, to optimize management and to avoid high budget. We have provided an experimental law that should be applied when it is needed a network with real-time services. Measurement results confirm that recovery times in Ethernet and MPLS networks exceed 50 msec. On the other hand, we have observed that the delay of video streams is higher when the traffic begins to use an available path after a failure than when the failed device is recovered. We have proposed a new system to improve resiliency on critical infrastructures networks that allows path recoveries faster than 50 msec. because the proposal is based on a protection mechanism which guarantees a very small delay when a path has failed. This solution is fully compatible with Ethernet and MPLS equipments and protocols, with no need for substantial hardware or software modifications in nodes or end stations. In fact, only end switches must run this algorithm, and STP is yet not necessary to avoid loops. The key of our method is a new metric not only with QoS constraints, but also with metrics related with the reliability of nodes and links. This work opens new research lines in MetroEthernet, Cluster and Corporate networks and it can also be a fault-tolerance and traffic engineering optimal solution.
References 1. Sánchez, F.J., Lloret, J., Díaz, J.R., Jiménez, J.M.: Mecanismos de protección y recuperación en redes de tiempo real para el soporte de servicios de explotación ferroviaria, Gandia (Spain). In: XX Simposium Nacional de la URSI (September 2005) 2. Sánchez, F.J., Lloret, J., Díaz, J.R., Jiménez, J.M.: Standardization and improvement of real time network technology on railway traffic control systems. In: 7th World Congress on Railway Research, Montreal (June 2006) 3. Lloret, J., Sánchez, F.J., Díaz, J.R., Jiménez, J.M.: A fault-tolerant protocol for railway control systems. In: 2nd Conference on Next Generation Internet Design and Engineering, Valencia (Spain) (April 2006) 4. Harrison, E., Farrel, A., Miller, B.: Protection and restoration in MPLS networks. Data Connection White Paper (October 2001) 5. Aggarwal, R., Kompella, K., Nadeau, T., Swallow, G.: BFD For MPLS LSPs (November 2007) 6. Amin, M., Ho, K., Pavlou, G.: MPLS QoS-aware Traffic Engineering for Network Resilience. In: Proceedings of London Communications Symposium, London, UK (September 2004) 7. IEEE Std 802.17B. Resilient packet ring (RPR) access method and physical layer specifications. pp.1-216 (August 2007) 8. Shah, S., Yip, M.: IETF RFC 3619, October 2003. Ethernet Automatic Protection Switching (2003) 9. Dirac, G.A.: Extensions of Menger’s Theorem. Journal of the London Mathematical Societ s1-38(1), 148–161 (1963) 10. Hansen, A.F., Kvalbein, A., Cicic, T., Gjessing, S., Lysne, O.: Resilient Routing Layers for Recovery in Packet Networks. In: Proceedings of the International Conference on Dependable Systems and Networks, June 28 - July 1, 2005, pp. 238–247 (2005)
Can Critical Real-Time Services of Public Infrastructures Run over Ethernet
301
11. Stamatelakis, D., Grover, W.D.: IP layer restoration and network planning based on virtual protection cycles. IEEE Journal on selected areas in communications 18(10) (October 2000) 12. Padmaraj, M., Nair, S., Marchetti, M., Chiruvolu, G., Ali, M.: Distributed Fast Failure Recovery Scheme for Metro Ethernet. IEEE ICN, Los Alamitos (April 2006) 13. Coll, H., Lloret, J., Sanchez, F.J.: Does ns2 really simulate MPLS networks? In: The 4th Int. Conf. on Autonomic and Autonomous Systems (March 2008) 14. IEEE Std 802.1AB- Draft 2 d2-2. Station and Media Access Control Connectivity Discovery (December 2007) 15. IEEE Std 802.1D. Media Access Control (MAC) Bridges (June 2004) 16. IEEE Std 802.1AD. Provider Bridge (May 2006) 17. Eppstein, D.: Finding the k Shortest Paths. SIAM J. Computing 28(2), 652–673 (1998) 18. Sharma, S., Gopalan, K., Nanda, S., Chiueh, T.: Viking: a multi-spanning-tree Ethernet Architecture for Metropolitan Area and Cluster Networks. In: IEEE INFOCOM (2004) 19. IEEE 802.1AQ draft 0.3. Shortest Path Bridging (May 2006) 20. IEEE 802.1AG draft 8.1. Connectivity Fault Management (February 2007)
Shim6: Reference Implementation and Optimization Jun Bi, Ping Hu, and Lizhong Xie Network Research Center, Tsinghua University, Beijing, 100084, China [email protected]
Abstract. Shim6 is an important multihoming solution. This paper studies shim6 from several perspectives, including shim6 protocol implementation, shim6 mechanism optimization and security enhancement. In order to provide a shim6 research platform, we implement shim6 protocol on the Linux 2.6 platform as one of the first reference implementations. Based on this research platform, we refine the shim6 address switching mechanism, which reduces shim6 address switching time greatly. In addition, we propose an enhanced shim6 security mechanism to defeat reflection-type DoS/DDoS attacks launched from the multihomed site, by preventing source address spoofing in the multihomed site. Keywords: Multihoming, Shim6, IPv6.
1 Introduction Multihoming to upstream ISPs is a requirement today for most IPv4 networks in the Internet, especially for the enterprise networks. With the deployment of IPv6 network, more and more devices can access to the Internet, and more and more sites will have the requirement of multihoming. IPv6 multihoming will be a very common phenomenon undoubtedly. Currently, the shim6 mechanism [1] is an important multihoming approach. This paper studies shim6 from several perspectives, including shim6 protocol implementation, shim6 mechanism optimization and IPv4/IPv6 transition utilizing shim6. In order to provide a shim6 research platform, we implement shim6 protocol on the Linux 2.6 platform, which is one of the first reference implementations in the world. Based on this research platform, we refine the shim6 address switching mechanism, which reduces shim6 address switching time greatly. In addition, we propose an enhanced shim6 security mechanism to defeat reflection-type DoS/DDoS attacks launched from the multihomed site, by preventing source address spoofing in the multihomed site. In order to explore the utilization of shim6 in other research fields, we propose a mechanism called MI46 to optimize IPv4/IPv6 inter-operation using simplified shim6. The rest of this paper is organized as follows: Section 2 describes our Linux-based shim6 implementation; Section 3 and section 4 present the enhancements on shim6 protocol, including shim6 address switching mechanism refinement and shim6 security mechanism enhancement. Section 5 concludes the paper. A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 302–313, 2008. © IFIP International Federation for Information Processing 2008
Shim6: Reference Implementation and Optimization
303
2 Reference Implementation of Shim6 Multihoming refers to the phenomena that one network end node accesses to the Internet through multiple network paths mainly due to the consideration of fault resilience. For the purpose of accessing to the Internet via multiple network paths, the multihomed network end node often possesses several addresses. Once the current network path fails, the multihomed network end node can immediately switch to another address and use another network path to communicate. In the shim6 approach, a new ‘SHIM6’ sub-layer is inserted into the IP stack in end hosts that wish to take advantage of multihoming. The shim6 sub-layer is located within the IP layer between the IP endpoint sub-layer and IP routing sub-layer. With the shim6, hosts have to deploy multiple provider-assigned IP address prefixes from multiple ISPs. These IP addresses are used by applications and if a session becomes inoperational, shim6 sub-layer can switch to using a different address pair. The switch is transparent to applications as the shim6 layer rewrites and restores the addresses at the sending and receiving host. For the purpose of transport layer communication survivability, the shim6 approach separates the identity and location functions for IPv6 addresses. In shim6, the identifier is used to uniquely identify endpoints in the Internet, while the locator is used to perform the role of routing. There is a one-to-more relationship between the identifier and locator. The shim6 layer performs the mapping function between the identifier and the locator consistently at the sender and the receiver. The upper layers above the shim6 sub-layer just use the unique identifier to identify the communication peer, even though the locator of the peer has changed. Hence, when the multihomed host switches to another locator, the current transport layer communication does not break up since the identifier is not changed. Due to the lack of the implementation, there are a lot of problems on shim6 which nobody can give some clear answers. Therefore, in order to start our research on shim6, we first implement shim6 protocol based on Linux 2.6.x platform. The control plane of shim6 mainly refers to the four handshakes process. The function of first two handshakes are to confirm the peer whether deploys shim6, and that of other two handshakes are to exchange the address list with the peer. The data plane of shim6 includes two main functions: rewriting the source and destination addresses of each packet, adding (the sender) /removing (the receiver) the payload extension header to/from the packet. The control plane of shim6 is implemented in the user space while the data plane is implemented in the kernel space using netfilter mechanism [2] of Linux. That’s because the four handshakes function of control plane is more complicated than the rewriting packets’ addresses function of data plane. If the four handshakes function is implemented in the kernel space, it may bring bad influence to the efficiency of the kernel. However, if we want to modify the addresses of every packet, we must implement the function of rewriting packets’ addresses in the kernel space. And it doesn’t bring too much weight to kernel since the function of rewriting packets’ addresses is very simple. But, the data plane relies on the addresses mapping table that is generated by the control plane. So, we implement modules of communication
304
J. Bi, P. Hu, and L. Xie
between the kernel and user space using the Linux netlink mechanism[3], in order to transfer the addresses mapping table from the control plane to the data plane.
3 Optimization of Shim6 In our experimental platform of shim6, we explore some researches on optimization of shim6 and get some achievements. The address switch mechanism of shim6 is defined in REAP (REAchability Protocol)[4]. REAP contains two parts: failure detection mechanism which detects failures between two communicating hosts, and address-pair exploration mechanism which locates another operational address-pair if a failure occurs. The failure detection mechanism uses two timers (Keepalive Timer, Send Timer) and Keepalive message to detect the failures between two communicating hosts. The concrete process is as follows: 1. When host A sends data packets to host B, a send timer starts at the same time. The suggested timeout value is 10s. 2. When host B receives data packets sent from host A, a Keepalive timer starts simultaneously. The suggested timeout value is 3s. If host B sends no packets to host A within the keepalive interval (less than Keepalive timeout value) after receiving data packets from host A, host B sends a Keepalive message to host A. 3. If host A receives no packets (including data packets and Keepalive packets) from host B before the send timer is timeout, it can be determined that there is a failure of current address pair. And then the addresses exploration mechanism sets up to locate another operational addresses pair. The address-pair exploration mechanism uses the Probe message to examine the reachability of the address-pair. Specifically, if host A wants to choose another address-pair with host B, host A needs to send a series of Probe messages to host B until receiving the Probe message sent from B. Upon receipt of the Probe message from host B, host A can conclude that the new address-pair is reachable from A to B. After receiving the first Probe message from host A, host B applies the same algorithm to confirm that the address-pair is reachable from B to A. If the test fails, another address-pair is selected to do the next address exploration. REAP defines some suggested default values associated with the exploration process. The Initial Probe Timeout which specifies the interval between initial attempts to send probes is 0.5s. Then the exploration process uses the exponential backoff procedure to increase the time between every probe if there is no response. So, each increase doubles the time. If the exploration process reaches Max Probe Timeout (60 seconds), it will continue sending at this rate until a suitable response is received. From the above description, we can see the time of shim6 address switching can be expressed as the following formula: Shim6 address switching time = failure detection time + next address-pair exploration time
Shim6: Reference Implementation and Optimization
305
The failure detection time is the value of Send timer timeout (10s). The next address-pair exploration time may grow exponentially. If the multihomed hosts have numerous addresses and the address failure rate is high, the shim6 address switching time will be very time consuming. For example, if the multihomed host A and B have Na and Nb addresses respectively, then under the worst circumstance each host would be required to detect about Na*Nb times to examine the next operational address-pair. In the original shim6 address switching mechanism, the shim6 next address-pair exploration process starts until the failure detection has finished, that is, after 10s, the hosts start to explore the reachability of the next address-pair. In this paper, we explore from the SCTP[5] protocol to refine the shim6 address switching mechanism, whose main idea is: during the failure detection, the hosts maintain the reachability of next address-pair simultaneously. In this way, once the failure occurs, the hosts can immediately switch to next operational address-pair. The refined shim6 address switch mechanism can shorten the shim6 address switching time to exactly 10s (that is the failure detection time). In the refined shim6 address switch mechanism, we use the Heartbeat message to maintain the reachability of next address-pair. The details are as follows: While host A and B communicate with each other using the current address-pair, meanwhile host A and B send Heartbeat request to each other periodically. Upon receipt of the Heartbeat request, the host sends back the Heartbeat acknowledgement. The host maintains a counter to record the number of Heartbeat requests that have been sent but not received Heartbeat acknowledgements. When the counter value reaches a certain threshold, this address-pair is marked un-reachable. Then another address-pair is selected to examine the reachability using the same method. We design several experiments to verify the effectiveness of the refined shim6 address switching method regarding the address number of each multihomed host and address failure possibility as the variables. The experimental result shows that when the multihomed hosts have numerous addresses, and these addresses are at a relatively high probability of failure, the original shim6 address switching time significantly increases. But the refined shim6 address switching time remains 10s constantly. Thus, in this situation, the refined shim6 address switching mechanism can reduce the address switching time effectively.
4 Source Address Spoofing Prevention for Multihomed Site 4.1 Problem Statement Today's Internet is suffering from reflection-type DoS/DDoS attacks. Current source address spoofing prevention methods have a coarse granularity, and the attackers can still in some cases launch reflection-type DoS/DDos attacks or other attacks hard to trace. The approaches based filtering, such as ingress filtering [6][7], can validate the source address in real-time. But the current approaches based on filtering just validate the IP source address according to the network prefix. Thus, these approaches can not
306
J. Bi, P. Hu, and L. Xie
prevent the IP source address spoofing in the edge network granularity, and leave some room to launch reflection-type DoS/DDoS attacks. For instance, with the ingress filtering, the attacker can still forge the IP source address that belongs to the same multihomed site and attack the victim using the reflection-type DoS/DDoS. This type attack scenario is shown in Figure 1.
Fig. 1. Reflection-type DDoS attack in the same multihomed site
This type security threats may be more serious with the IPv6 network deployment, because the IPv6 multihomed site may be much larger than the one of IPv4. In this situation, the ingress filtering is not sufficient. This paper aims to prevent the source address spoofing when the host in the multihomed site sends packets to somewhere outside this multihomed site. In addition, the replay attack must be handled. Even if the forged IP source address packets can be identified, the replay packet can still be sent to somewhere outside the multihomed site since its source address is valid. 4.2 The Algorithms 4.2.1 Source Address Validation Algorithm In our solution, each edge router of the edge network is equipped with a security gateway to carry out the authentication algorithm. Each security gateway is responsible for handling the addresses assigned from the ISP to which the security gateway is
Shim6: Reference Implementation and Optimization
307
attached. For example, in Figure 2, the security gateway A just handles the addresses assigned from ISP A. When host A sends packets using the addresses based on prefix A (PrefixA:PrefSite:hostA) as the source addresses, the packets may be sent to the edge router B connected to ISP B, and the security gateway B will be confused and take wrong action. In order to solve this problem, packets originating in the multihomed site are passed through a source routing domain (see Figure 2), to which all edge routers are connected. These routers would choose a route based on the destination and source addresses of a packet, selecting the appropriate edge router for the given source address.
Fig. 2. The source address spoofing prevention solution for multihoming scenario
Initially, When a host wants to access the Internet, it should firstly carry out the access authentication. This process can use the existing access authentication mechanism such as 802.1x[8], NAC[9], NAP[10] and TNC[11], etc. If the access authentication succeeds, the host generates a session key and sends it to the security gateway via some key exchange mechanisms such as IKE and IKE2. The session key is a random number that is at least 12-byte-long. The security gateway binds the session key and the host’s IP address. When the host sends packets to somewhere outside the multihomed site, it needs to certify its ownership of a certain IP address via showing the security gateway its secret session key which is shared with the security gateway by generating one signature for each packet using the hash digest algorithm (MD5, SHA-1, etc). The approach mainly includes the following steps. Host A sends a packet M to the security gateway B. M carries a signature H[M||S] which is computed by the hash digest function using the session key S and the certain part of the packet M (source address, timestamp, sequence number, etc.) as the input. When the security gateway B receives the packet M, B can
308
J. Bi, P. Hu, and L. Xie
re-compute the hash value HB according to the packet M, since B also knows the session key S. If HB is equal to the signature H [M||S] carried in the packet M, the security gateway B can confirm that the packet has a valid source address; Otherwise, B can conclude that the packet's source address is forged and then drops it. 4.2.2 The Anti-replay Algorithm After validating the signature, the security gateway also identifies the replay packets by checking whether the timestamp of the packet is expired and the sequence number of the packet is increasing. The timestamp method works as follows: when the host A sends a packet M to the security gateway, the packet M is marked with a timestamp Ta, which represents the sending time of the packet M. Once the security gateway receives the packet M, it reads its local time Tb. If |Tb-Ta|> T, where T is the admission time window, the security gateway can conclude that the packet M is a replay one then drops it. However, it’s hard to synchronize the clocks of the host and the gateway exactly. Moreover, the transmitting time of the packet in the network is also uncertain. Therefore, the admission time window T is always larger than the real transmitting time of the packet. This feature makes the timestamp method unfaithful for anti-replay. When |Tb-Ta|< T, the packet should be a non-replay one. But afterwards, if the replay packet is received in the margin time ( T-|Tb-Ta|), the security gateway will regard it as a normal packet incorrectly. The main idea behind the sequence number method is: when the host A sends packets to the security gateway, each packet carries an incremental sequence number. If the latest packet’s sequence number is greater than the previous one, the packet is normal; otherwise, the packet is a replay one. This method requires the packets to come in order. If the packets come out of order, one can employ a sequence number window to deal with it like IPSec. That the packets come out of order is mainly due to the load balance policy or queuing in the router or other 3-layer devices. This paper deals with the situation behind the first 3-layer device, thus we can assume that the packets sending to security gateway from hosts in the edge network are always in order. However, even though the packets come in order, this method may not identify some replay packets when the sequence number is used in a cycle way. For example, assuming the length of the sequence number is 16 bits, once the sequence number reaches the maximum 65535, it will return to 0 and increase as the previous cycle. In this case, if the attacker keeps a packet of the nth cycle and replays it in the (n+1) th cycle, the security gateway can’t identify the replay packet. In order to overcome the drawbacks of the timestamp and sequence method, we combine these two methods to prevent the replay attack. The timestamp method can use the sequence number mechanism to identify the replay packets in the admission time window T; And the sequence method can avoid the confusion between the normal and the replay packet by limiting the period of the sequence number cycle within the admission time window T.
△
△
△
△
△
△
△
4.2.3 IPv6 Source Address Validation Header In our approach, we design a new IPv6 extension header to carry the signature, the sequence number and other useful information. We call this new extension header
Shim6: Reference Implementation and Optimization
309
“source address validation header”. We develop a new IPv6 extension header rather than use the IPv6 AH extension header to complete the authentication between host and security gateway, because the AH extension header just can be carried once in the IPv6 packet according to the IPv6 specification. If we use it here, the host can not use the AH extension header with its communication correspondent. That’s not the result we want.
Fig. 3. The format of the source address validation header
The format of the extension header is shown in Fig. 3: • Next Header: 8-bit. Indicate either the type of the next extension header or the protocol type of the payload (TCP/UDP). • Payload Len: 8-bit. Length of the source address validation header in 8-octet units, not including the first 8 octets. • Algorithm: 8-bit. Point out the hash digest algorithm. For example, MD5 is set to 1. • Reserved: 8-bit. Reserved for future use. Zero on transmit. • Timestamp: 32-bit. It is used to anti-replay as described above. • Sequence Number: 32-bit. It is used to anti-replay as described above. • Authentication Data: 128 bits if using MD5 as the hash digest algorithm. The authentication data is computed by the hash digest algorithm. The input of the hash digest algorithm includes: IPv6 source address, timestamp, sequence number and session key. • The security gateway needs to remove the source address validation header from the packet. Considering the partial deployment, if we don’t remove the source address validation header, the hosts in other multihomed site may drop the packet due to misunderstanding of the new extension header. This step is unnecessary if our approach has been globally deployed. 4.3 Experiment Simulation 4 3.1 The Performance Evaluation of Source Address Validation Algorithm Because every packet needs to be authenticated when they are sent to somewhere outside the edge network, the primary design requirement of source address validation
310
J. Bi, P. Hu, and L. Xie
algorithm is the high performance. In our approach, this requirement means whether the performance of the hash digest algorithm is high enough. In addition, the security gateway needs to record the (IPv6 address, session key) pair for every host in the edge network, and each authentication procedure needs to look up the session key according to the IPv6 address. We use the hash table to organize the (IPv6 address, session key) pair, and its average performance for looking up is O(1). We conduct some experiments to validate the source address validation algorithm. Table 1 shows our experimental results, which are evaluated in the platform of Intel P4 2.0G CPU and 512M memory. Table 1. The performance comparison of two main hash digest algorithms HASH Digest algorithm MD5 SHA-1
The capacity per second (MB/S)
205 66
The results show that the performance of MD5 is about 1.64 Gbps This performance can meet the requirements in the most cases. We should note that this result is derived from the MD5 algorithm implemented in the software. If we implement the MD5 algorithm using hardware, we will get a higher performance. Therefore, the source address validation algorithm in our approach is completely feasible.
Fig. 4. The topology of anti-replay algorithm simulation experiments
Shim6: Reference Implementation and Optimization
311
4.3.2 The Effectiveness Evaluation of Anti-replay Algorithm In order to validate the effectiveness of our anti-replay algorithm which integrates the timestamp and the sequence number methods, we conduct several experiments to compare the effects of the timestamp, sequence number and our anti-replay algorithm. The experimental topology is shown as Fig 4. In Fig 4, host A is the victim, host B sniffs the packets sent from A and replays them. In the simulation experiment to validate effectiveness of the timestamp method, host A and the security gateway G synchronize the clocks exactly. The packet transmitting time from A to G is about 8~10ms. The host B takes 2ms±50% to sniff a packet and replay it. We set the admission time window T in the security gateway is 10ms, 11ms and 12ms respectively to see the effectiveness of the timestamp method. Fig 5 shows the result when the attacker B replays 10,000 packets. $FFXUDF\RIUHSOD\SDFNHWVLGHQWLILFDWLRQ
△
Ƹ7 PV Ƹ7 PV Ƹ7 PV
Fig.5. The simulation result of the timestamp method
△
△ △
△
From Fig 5 we can see, the effectiveness of timestamp method seriously relies on the size of admission time window T. When T=11ms, that is, T has a growth of 10% from the upper bound of packet transmitting time, the gateway can identify 68.7% of replay packets. When T=12ms, that is, T has a growth of 20% from the upper bound of packet transmitting time, the gateway can identify only 31.3% of replay packets. In the simulation experiment, we make host A and the security gateway G synchronize the clocks exactly. But, in the real network environment, it is hard to synchronize clocks exactly. What’s worse, the packet transmitting time in real network may be more fluctuant than that we set in the experiment. So, the admission time window T may have larger margin and the effectiveness may be much worse in the real network. In the simulation experiment to validate effectiveness of the sequence number method, the sequence number is 16-bit long. After recording the packets sent from A in the nth sequence number increasing cycle, attacker B replays these packets persistently in the (n+1)th sequence number increasing cycle. Fig 6 shows the accuracy of replay
△
△
312
J. Bi, P. Hu, and L. Xie
s t e k c a p y a l p e r f o y c a r u c c A
1.2 n 1 o i t 0.8 a c i 0.6 f i t n 0.4 e d i 0.2 0 0 5000 10000 15000 20000 25000 Packet number recorded in the nth sequence number increasing cycle
Fig.6. The simulation result of the sequence number method
packets identification in the (n+1)th sequence number increasing cycle when attacker B respectively records 10, 20, 50, 100, 1000, 5000, 10000, 15000 and 20000 packets sent from A in the nth sequence number increasing cycle. From Fig 6 we can see, under condition of persistent replay, the accuracy of replay packets identification in the (n+1)th sequence number increasing cycle is linear with the packet number recorded in the nth sequence number increasing cycle. The experiment result shows that almost all packets recorded can be replayed successfully under condition of persistent replay. We redo the above two simulation experiments to validate the effectiveness of our anti-replay algorithm which integrates the timestamp and the sequence number methods. The result is shown as Fig 7.
a. Comparison with timestamp
b. Comparison with sequence number
Fig. 7. The results of our anti-replay algorithm integrating timestamp and sequence number
Shim6: Reference Implementation and Optimization
313
△
In Fig 7a, even though the admission time window T has a large margin, with the help of sequence number method, all replay packets are identified successfully. In Fig 7b, in the (n+1)th sequence number increasing cycle, when attacker B replays the packets recorded in the nth sequence number increasing cycle, the security gateway can identify nearly 100% replay packets since the intervals between replay packets and normal packets exceed the admission time window T. From the above experiments we can conclude that the anti-replay algorithm this paper proposed can overcome the shortcomings of both timestamp and sequence number methods, and form a more effective, fine-grain anti-replay mechanism.
△
5 Summary This paper studies shim6 from several perspectives, including shim6 protocol implementation, shim6 mechanism optimization and security enhancement. In order to provide a shim6 research platform, we implement shim6 protocol on the Linux 2.6 platform, which is one of the first reference implementations in the world. Based on this research platform, we introduce HEARTBEAT message to refine the shim6 address switching mechanism, which reduces shim6 address switching time greatly. In addition, we propose an enhanced shim6 security mechanism to defeat reflection-type DoS/DDoS attacks launched from the multihomed site, by preventing source address spoofing in the multihomed site.
References 1. Nordmark, E.: Level 3 multihoming shim protocol, draft-ietf-shim6-proto-08.txt (2007) 2. http://www.netfilter.org 3. Salim, J., Khosravi, H., Kleen, A., Kuznetsov, A.: Linux Netlink as an IP Services Protocol. RFC 3549 (July 2003) 4. Arkko, J., Beijnum, I.: Failure Detection and Locator Pair Exploration Protocol for IPv6 Multihoming. draft-ietf-shim6-failure-detection-07.txt (2006) 5. Stewart, R., et al.: Stream Control Transmission Protocol. IETF RFC 2960 (2000) 6. Ferguson, P., Senie, D.: Network Ingress Filtering: Defeating Denial of Service Attacks which employ IP Source Address Spoofing. RFC2827 (2000) 7. Baker, F. and Savola, P.: Ingress Filtering for Multihomed Networks. RFC3704 (2004) 8. American National Standards Institute: IEEE-SA Standards Board: IEEE Standard for Local and metropolitan area networks - Port-Based Network Access Control (2001) 9. Cisco Systems: Network Admission Control 10. Microsoft: Network Access Protection 11. TNC: TCG Trusted Network Connect TNC Architecture for Interoperability (2005)
A Measurement Study of Bandwidth Estimation in IEEE 802.11g Wireless LANs Using the DCF Michael Bredel and Markus Fidler Multimedia Communications Lab Technische Universit¨ at Darmstadt, Germany {michael.bredel,markus.fidler}@kom.tu-darmstadt.de
Abstract. In this paper we present results from an extensive measurement study of wireless bandwidth estimation in IEEE 802.11 WLANs using the distributed coordination function. We show that a number of known iterative probing methods, which are based on the assumption of first-come first-serve scheduling, can be expected to report the fair bandwidth share of a new flow rather than the available bandwidth. Our measurement results confirm this view and we conclude that under the current probe gap and probe rate models the fair share can only be loosely related to the available bandwidth. Like a few other studies we report that packet sizes have a tremendous impact on bandwidth estimates. Unlike these studies we can, however, show that minor modifications to known methods for wired networks, such as Pathload, can solve previously indicated limitations of these methods in wireless networks.
1
Introduction
The term available bandwidth denotes the portion of the capacity at a link or a network path that remains unused by present traffic. The idea to estimate the bandwidth of a network path from end-host measurements dates back to TCP congestion control [11] and packet pair probing [17]. Since then the field of available bandwidth estimation has evolved significantly and to date a number of estimation methods exists, e.g. [12,10,27,30,26], which are frequently used e.g. for network management, error diagnostics, overlay routing, and traffic engineering. The theoretical underpinnings of bandwidth estimation have been explored e.g. in [23,24,22,25] and empirical evaluations can be found e.g. in [29,30]. The task of bandwidth estimation in wireless networks, such as IEEE 802.11 Wireless LANs, however, has been understood to a much lesser extend. Bandwidth estimation methods, which perform well in case of wired links, have been reported to yield highly unreliable available bandwidth estimates for wireless links [9,21,19], hinting at a number of specific challenges and open issues in wireless bandwidth estimation. Here, the performance and the quality of service of a link depend largely on the characteristics of the shared physical medium and the multi-access coordination function. These aspects strongly influence quantities like delay, loss, and throughput and may result in a high variability of available or actually accessible resources. This makes measurement-based bandwidth estimation in wireless networks a complex and difficult task. A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 314–325, 2008. c IFIP International Federation for Information Processing 2008
A Measurement Study of Bandwidth Estimation
315
A few approaches to bandwidth estimation specifically address the characteristics of wireless networks. Passive methods, which measure existing traffic, can take advantage of the wireless broadcast medium and record idle periods to estimate the resources that would be available in the proximity of a node [20,28]. The approach is, however, unreliable in case of hidden stations. Active probing, on the other hand, takes measurements of specific probing traffic at the ingress and the egress of the network to infer the available bandwidth of a network path. Contrary to wired networks a strong impact of packet sizes on bandwidth estimates has been observed for wireless links [15,16,21,19,6]. Here, the fluid model, which is employed by many estimation methods, is clearly violated. Moreover, it is noted in [19] that the assumption of First-Come First-Serve (FCFS) scheduling, which is the basis of most active probing methods, may not hold in IEEE 802.11 WLANs, e.g. due to the Distributed Coordination Function (DCF). In this paper we report results from an extensive measurement study of active probing methods to shed light on the issues mentioned above. We conducted measurements of an IEEE 802.11g link in ns-2 simulations [4], Emulab [3,31], and a highly controlled local wireless testbed that is located in a shielded and reflection absorbing measuring room. Based on our measurement results we find that the common FCFS model does clearly not hold under the DCF. The DCF can (within certain limits) rather be viewed as implementing fair scheduling. Based on the fair queuing model we can show that iterative methods that are based on the FCFS assumption can be expected to estimate the fair share of a new flow instead of the available bandwidth. Our measurements using the methods in Tab. 1 support the anticipated results. The gathered data reconfirms the known dependency of bandwidth estimates on the probing packet size. The remainder of this paper is organized as follows. In Sect. 2 we review the state-of-the-art in available bandwidth estimation. In Sect. 3 we discuss relevant characteristics of wireless links and the fair queuing model. In Sect. 4 we show our measurement results and in Sect. 5 we present our conclusions.
2
Methods for Available Bandwidth Estimation
In this section we discuss the state-of-the-art of available bandwidth estimation in wired and wireless networks. We focus on a set of publicly available measurement tools, see Tab. 1, which are used for measurements in Sect. 4. For related empirical evaluations in wired networks see e.g. [29,30]. The task of available bandwidth estimation is to infer the portion of the capacity of a link or a network path that remains unused by cross-traffic. The available bandwidth of a link with index i can be defined as [12] ABi (τ, t) = Ci (1 − ui (τ, t))
(1)
where Ci is the capacity and ui ∈ [0, 1] is the utilization by cross-traffic in the interval [τ, t). The available bandwidth of a network path is determined by the available bandwidth of the tight link as AB(τ, t) = mini {ABi (τ, t)} [12].
316
M. Bredel and M. Fidler Table 1. Bandwidth estimation methods used in this study Probing method Pathload [12] Pathchirp [27] Spruce [30] IGI [10] PTR [10] WBest [21] DietTOPP [14]
Probing traffic Inference technique packet trains iterative packet chirps iterative packet pairs direct packet trains direct packet trains iterative packet trains direct packet trains iterative
Active measurement methods inject specific probes into the network and estimate the available bandwidth from measurements of the probing traffic at the ingress and at the egress of the network. The majority of the methods uses packet pairs, i.e. two packets sent with a defined spacing in time referred to as gap, or packet trains, i.e. a larger number of packets sent at a defined constant rate. The rate of a packet train can be converted into a certain spacing of the train’s packets, showing a direct relation to the gap model of packet pairs. Packet chirps [27] are specific packet trains that are sent at a geometrically increasing rate respectively with a geometrically decreasing gap. Many methods use a simplified network model, where cross-traffic is viewed as constant rate fluid and the network is abstracted as a single tight link. Under these assumptions the available bandwidth of a network path simplifies to AB = C(1 − u). In addition, FCFS multiplexing is usually assumed, where flows share the capacity of a link proportionally to their offered rates. For constant rate probes an expression referred to as rate response curve [26,23] can be derived as ri ri + λ 1 , if ri ≤ C − λ = max 1, = ri +λ (2) ro C , if ri > C − λ C where ri and ro are the input and output rates of probes respectively and λ is the input rate of cross-traffic. If λ ≤ C the available bandwidth follows as AB = C − λ and otherwise AB = 0. Based on this model the task of available bandwidth estimation is to select the rate of probing traffic such that (2) can be solved for C and λ or C − λ. While (2) is usually used for packet train probes, an equivalent gap response curve can be derived for packet pairs, where the gap g is linked to the rate r by the packet size l resulting in gi = l/ri and go = l/ro [23]. In [13] measurement methods are classified by their inference technique as either direct or iterative probing schemes. Direct probing schemes assume that the capacity of the link C is known in advance. In this case (2) can be solved for the rate of the cross-traffic if the probing rate is larger than the available bandwidth. A straightforward choice is to probe with ri = C in which case the available bandwidth follows from (2) in rate respectively gap notion as [21,30] C go − gi AB = C 2 − =C 1− . (3) ro gi
A Measurement Study of Bandwidth Estimation
317
Spruce, WBest, and IGI are methods that use direct probing. Spruce assumes that the capacity is known a priori and immediately applies the gap version of (3). WBest provides a two-step algorithm using packet pairs to estimate the link capacity and packet trains for available bandwidth estimation based on the rate version of (3). IGI uses probing trains with increasing gaps resulting in a more complex direct probing formula than (3), for details see [10]. Iterative probing methods do not require a priori knowledge of the link capacity. They employ an iterative procedure with multiple probing rates aiming to locate the turning point of the rate response curve (2), i.e. they seek to find the largest probing rate ri such that ri /ro = 1. At this point the probing rate coincides with the available bandwidth. TOPP, DietTOPP, PTR, Pathload, and Pathchirp are iterative probing methods. TOPP [26] uses trains of packet pairs with increasing rate and applies (2) for available bandwidth estimation. It recursively extends the model to the multiple node case and in addition it estimates the capacity from the second linear segment in (2). Closely related is a simplified version called dietTOPP. PTR is a packet train method that uses a gap version of (2). Pathload varies the rate of packet trains using a binary search algorithm to find the largest probing rate that does not cause overload and hence matches the available bandwidth. It uses increasing one-way delays as an indication of overload. Increasing delays indicate that the input rate exceeds the output rate, i.e. ri /ro > 1 which clearly shows the relation to (2) [23]. Pathchirp increases the probing rate within a single packet train, referred to as a chirp, instead of varying the rate of successive packet trains. Like Pathload it detects crossing the turning point of the rate response curve from increasing one-way delays. Most of the discussed methods have been developed for wired networks while WBest and dietTOPP have been suggested by the authors for available bandwidth estimation in wireless networks. Further on, a method called ProbeGap has been proposed for bandwidth estimation in broadband access networks [19]. The method does not exactly fit into the classification scheme used here. ProbeGap sends out single packets and collects the one-way delays of these probes. The fraction of the packets which have a delay close to zero are assumed to have found an idle channel. This fraction is used to estimate the available bandwidth. Besides, passive measurement approaches can take advantage of the wireless broadcast medium [28] or protocol related information [20]. Passive methods are, however, not considered within the scope of this study.
3
Relevant Wireless Link Characteristics
In this section we discuss relevant characteristics of wireless links that are of vital importance for bandwidth estimation. We show how these aspects affect current fluid rate and gap models from Sect. 2 and reason which quantity we expect to be estimated by known methods for bandwidth estimation in wireless
318
M. Bredel and M. Fidler
systems. We use the term wireless link meaning a wireless broadcast channel with Medium Access Control (MAC) and Radio Link Control (RLC) protocols. Fading and interference: As opposed to wired links the characteristics of wireless channels are highly variable due to fading. Other potentially hidden stations, which may even include stations that implement different radio standards using the same frequency band, create interference on the wireless broadcast medium. These effects can cause rapid fluctuations of the signal-to-noise ratio and may lead to high bit error rates. Different modulation and coding schemes combined with rate adaptation may be used for compensation. As a consequence, the capacity and the availability of the channel may vary drastically. Contention: In case of wireless multi-access channels, stations share the same medium and contend for access to the channel, often in a fully distributed manner. Channel access is controlled by the MAC protocol. Before accessing the medium stations listen to the channel to detect nearby transmissions with the objective of avoiding collisions. This procedure may fail in case of hidden stations, thus requiring additional protocol mechanisms such as RTS/CTS. The resulting behavior of medium access procedures may be largely different if compared to FCFS multiplexing at a point-to-point link. Retransmissions: Due to frequent packet loss on wireless links, e.g. because of fading, interference, or collisions, many standards include an RLC protocol that implements an automatic repeat request technique such as stop-and-wait ARQ to ensure packet delivery. Link layer retransmissions consume channel capacity and lead to increased and varying one-way delays. Effects that are due to fading and interference result in a time-varying channel capacity C(t). It is straight-forward to adapt the definition of available bandwidth (1) accordingly. The fluid rate and gap models for bandwidth estimation (2), (3) assume, however, a constant capacity. This assumption is mirrored by the view of cross-traffic as constant rate fluid. Our controlled measurement environment eliminates effects that are due to fading and interference to a large extend. Protocol-related aspects, however, remain to be addressed. In the following subsections we investigate two effects of the IEEE 802.11 protocols that have major impact on bandwidth estimation. 3.1
Protocol Overhead
We compute the impact of the IEEE 802.11g protocol overhead on the achievable throughput. Given packets of size l bits the throughput can be determined as C = l/g where g is the gap, i.e. the time between the beginning of two subsequent packets transmitted at the maximum rate. The gap consists of a number of additive parameters1 including inter frame spacings, the expected backoff time, transmission times of the data packet including preamble and header and the acknowledgement, as well as propagation delays which are neglected here. 1
We set tdifs = 28 μs, tsifs = 16 μs, tbackoff = 139.5 μs, tdata = 26+l/54 μs, tack = 30 μs.
A Measurement Study of Bandwidth Estimation
40 S5 contending traffic 54 Mbps
S3
100 Mbps
R
AP probe traffic
S2
measurements simple model
35 Throughput [Mbps]
S4
319
30 25 20 15 10 5
S1
0 0 Wireless test network
Wired control network
Fig. 1. Wireless testbed setup
500
1000
1500
2000
Packet size [Byte]
Fig. 2. Achievable throughput
Fig. 2 shows the achievable throughput for different packet sizes. The outcome of the above model is compared to measurement results from our testbed shown in Fig. 1, for details see Sect. 4. We used a single greedy UDP traffic stream that is generated with the D-ITG traffic generator [1]. The measured throughput is averaged over 60 s. It exhibits a strong dependence on the packet size, as also derived for IEEE 802.11b in [8]. We conclude that the size of probing packets used by bandwidth estimation tools has a large impact on the accuracy of estimates. This aspect is also noted in [16,19,21,6]. The fluid rate response model for bandwidth estimation does not involve a notion of packets. Using the equivalent gap formulation, an extended model that includes the effects of the packet size has been developed in [16]. The conclusion in [16] is none the less that the probing packet size needs to be tailored to the application that uses the bandwidth estimates. 3.2
Distributed Coordination Function
In this section we investigate how the capacity of IEEE 802.11g links using the DCF is allocated to contending flows. The issue is discussed controversially in the literature. While [18] showed short-term unfairness of CSMA/CA-based WaveLANs a recent study [7] attributes findings of unfairness to early WaveLAN cards and reports that current IEEE 802.11 DCF implementations actually exhibit good short-term fairness. On this account we performed a number of initial experiments to explore fairness issues in our shielded testbed. Fig. 3 shows the throughput of contending flows at an IEEE 802.11g link. Flows have a constant bit rate and are generated using the Rude/Crude traffic generator [5]. All packets have a constant size of 1500 Bytes. The throughput is averaged over 60 s. In Fig. 3(a) two flows contend for the link. Flow 1 has a rate of 28 Mbps and the rate of flow 2 is increased from 0 to 28 Mbps in steps of 1 Mbps after each experiment. Similarly Fig. 3(b) shows the throughput of four flows, where the rate of flow 4 is increased. The results in Fig. 3 confirm that each flow receives a fair share of the capacity. Flow 2 in Fig. 3(a) achieves its target throughput whereas the throughput of flow 1 is reduced accordingly until flow 2 reaches 14 Mbps. From this point on both
320
M. Bredel and M. Fidler
30
flow1: 24 Mbps flow2: 9 Mbps flow3: 2 Mbps flow4: 0-24 Mbps
25 Throughput [Mbps]
25 Throughput [Mbps]
30
flow1: 24 Mbps flow2: 0-24 Mbps
20 15 10 5
20 15 10 5
0
0 0
5
10
15
20
25
Rate of flow2 [Mbps]
0
5
10
15
20
25
Rate of flow4 [Mbps]
(a) two contending flows
(b) four contending flows
Fig. 3. Measured throughput of contending flows. Each flow obtains its fair share.
flows get a fair share of 14 Mbps regardless of the rate of flow 2. Fig. 3(b) confirms this result for four heterogeneous flows. Note that we measured fair throughput shares only for flows with homogeneous packet sizes. The fair share f at a congested link that is observed in Fig. 3 can be computed as the solution of n f: min{rk , f } = C (4) k=1
where C is the capacity, rk is the rate of flow k, and n is the number of flows. Once f is determined the output rate of flow k follows as min{rk , f }. The rate response curve of a fair queuing system follows immediately as 1 ri ri = max 1, = ri ro f f
, if ri ≤ f , if ri > f
(5)
where ri and ro are the input and output rates of the probes respectively. As opposed to the FCFS rate response curve (2) the available bandwidth cannot be derived from (5). Trivially the available bandwidth AB is upper bounded by the fair share, i.e. 0 ≤ AB ≤ f . Without further assumptions the two extremal values can, however, be easily attained if f ≤ C/2. As an example consider a single contending flow with rate λ = C/2 respectively λ = C. The fair share of a new greedy flow is f = C/2 in both cases, whereas the available bandwidth becomes AB = f respectively AB = 0. Referring to the classification of bandwidth estimation methods in Sect. 2 we conclude that iterative methods, which use the turning point of the rate response curve as bandwidth estimate, can be expected to report the fair share of a new greedy flow in case of a fair wireless link. For existing direct probing methods that inject probes with rate ri = C such a clear result cannot be established. Inserting ro = f into (3) does neither compute the available bandwidth nor the fair share. We note, however, that direct probing with ri = C could easily report the fair share, since ro = f in this case.
A Measurement Study of Bandwidth Estimation
4
321
Experimental Evaluation of Bandwidth Estimation
Equipped with the results from Sect. 3 we now investigate the performance of the bandwidth estimation tools listed in Tab. 1. If not mentioned otherwise we use the default configuration of the bandwidth estimation tools to perform the experiments. We evaluate the methods using a wireless testbed in a shielded, anechoic room. Hence, we act on the assumption that the physical medium is free of interference from external sources that do not belong to the testbed. We focus on the accuracy of wireless bandwidth estimates and show how these relate to the available bandwidth respectively to the fair share under different types of contending traffic. We do not report probing overhead, intrusiveness, as well as run or convergence times. These aspects are elaborated e.g. in [29]. As shown in Fig. 1 the testbed comprises five wireless stations (S1 to S5) that serve as traffic sources. The stations are connected to the access point (AP) using IEEE 802.11g with 54 Mbps2 . The access point is connected over fast Ethernet at 100 Mbps to a station (R) that acts as receiver. The distance between the wireless stations and the access point was between 0.5 m and 1.5 m. We switched of RTS/CTS, automatic rate adaption (which turned out to be unneeded in our scenario) as well as packet fragmentation. We used the DCF for medium access. In parallel to the wireless test network, all nodes are connected to a separated switched Ethernet, which is used as a control network. 4.1
Impact of the Intensity of Contending Traffic
In the first set of experiments we estimate the available bandwidth from S1 to R in the presence of a single contending flow. We increase the rate λ of the contending traffic that flows from S2 to R from 0 Mbps up to 28 Mbps in steps of 1 Mbps. The contending traffic consists of packets of 1500 Bytes and is generated using the D-ITG traffic generator [1]. All probe packets are set to 1500 Bytes. Fig. 4 shows the average of 25 available bandwidth estimates for each of the tools and all rates of the contending traffic as well as corresponding confidence intervals at a confidence level of 0.95. As a reference the available bandwidth AB = C − λ as well as a the fair share of a new flow f = max{C − λ, C/2} are plotted, where we use C = 28 Mbps from Fig. 2 for a packet size of 1500 Bytes. Iterative probing: From our arguments in Sect. 3 we expect that the iterative probing methods Pathload, DietTOPP, Pathchirp, and PTR report an estimate of the fair share. As indicated in Fig. 4 the fair share and the available bandwidth are identical for contending traffic with rate λ ∈ [0 . . . 14] Mbps, whereas they differ for λ ∈ (14 . . . 28] Mbps. Fig. 4(a) shows that the estimates from Pathload (which reports an upper and a lower bound of the available bandwidth) and DietTOPP clearly confirm the fair queuing model in (5). Both methods closely 2
We used Lenovo ThinkPad R61 notebooks with 1.6 GHz, 2 GB RAM running Ubuntu Linux 7.10 with kernel version 2.6.22. We employed the internal Intel PRO/Wireless 4965 AG IEEE 802.11g WLAN adapters. The access point is a Buffalo Wireless-G 125 series running DD-WRT [2] version 24 RC-4.
M. Bredel and M. Fidler
Bandwidth Estimate [Mbps]
35
35
Pathload DietTOPP
30 25 20 15 10 5
avail.bw.
0 0
5
10 15 20 Contending Traffic [Mbps]
Bandwidth Estimate [Mbps]
322
Spruce Pathchirp
30 25 20
fair share
15 10 5
avail.bw.
0
25
0
(a) Pathload and DietTOPP 35
IGI PTR
30 25 20 15 10 5
avail.bw.
0 0
5
10 15 20 Contending Traffic [Mbps]
(c) IGI/PTR
25
10 15 20 Contending Traffic [Mbps]
25
(b) Spruce and Pathchirp
Bandwidth Estimate [Mbps]
Bandwidth Estimate [Mbps]
35
5
WBest Avail.Bw. WBest Capacity
30 25 20 15 10 5
avail.bw.
0 0
5
10 15 20 Contending Traffic [Mbps]
25
(d) WBest
Fig. 4. Bandwidth estimates for a wireless link with one contending flow
track the fair share and the reported estimates deviate noticeably from the available bandwidth as the rate of the contending traffic increases beyond 14 Mbps. The results from PTR in Fig 4(c) and to a lesser extend from Pathchirp in Fig. 4(b) confirm this view. In case of Pathchirp we used the estimates provided after Pathchirp’s self-adapting phase. In our experimental results plotted in Fig. 4(b) it nevertheless underestimates the fair share and the estimates exhibit a comparably high variance. Pathload has been reported to provide inaccurate bandwidth estimates for wireless networks in [9,19,21]. This stands in contrast to experiences made using Pathload in wired networks. In [21] the probing packet size is mentioned as a possible reason for bandwidth underestimation, and [19] identifies the signature of one-way delays in wireless networks as a source of the problem. Having confirmed the strong impact of the packet size on the throughput in wireless networks, see Fig. 2, we modified Pathload so that we can specify the probing packet size. Using Pathload with a fixed packet size of 1500 Bytes improves bandwidth estimates significantly and leads to quite accurate and stable results as can be seen in Fig. 4(a). Similar problems have been reported for IGI/PTR [21], which can also be mitigated using a packet size of 1500 Bytes rather than the default size. The estimates in Fig. 4(c) are, however, less sensitive to the intensity of contending traffic, as also reported for cross-traffic in wired networks in [30]. Direct probing: Direct probing tools require a priori knowledge of the link capacity. We executed Spruce with a given capacity of C = 28 Mbps which
A Measurement Study of Bandwidth Estimation Pathload DietTOPP Fair Share
30 25 20 15 10 5 0
35 Bandwidth Estimate [Mbps]
Bandwidth Estimate [Mbps]
35
323
PTR Pathchirp Fair Share
30 25 20 15 10 5 0
0 1 2 3 4 Number of Contending Flows [Mbps]
(a) Pathload and DietTOPP
0 1 2 3 4 Number of Contending Flows [Mbps]
(b) PTR and Pathchirp
Fig. 5. Bandwidth estimates for a wireless link with several contending flows
corresponds to the throughput for packets of 1500 Bytes size in Fig. 2. From our results shown in Fig. 4(b) we cannot detect a clear trend of the estimates towards either the fair share or the available bandwidth once λ exceeds 14 Mbps. WBest uses a two-step algorithm to estimate first the capacity and then the available bandwidth. In our measurements both estimates exhibit a comparably high variance as shown in Fig. 4(d). Moreover, the capacity estimates are sensitive to contending traffic, possibly a result of fair resource allocation, such that bandwidth estimates that are based heron may be unreliable. 4.2
Impact of the Number of Contending Flows
In the second set of experiments we investigate the impact of the number of contending flows on bandwidth estimates. We use contending traffic with a total rate of 20 Mbps, which is divided evenly among one to four flows. Hence, the available bandwidth AB = 8 Mbps remains constant in all experiments, whereas the fair share of a new flow is (14, 9.3, 8, 8) Mbps for (1, 2, 3, 4) contending flows each offering a rate of (20, 10, 6.6, 5) Mbps respectively. Since we only related the estimates of iterative probing methods to the fair share we restrict the results shown here to iterative methods. Again all contending and probe packets are adjusted to have a fixed size of 1500 Bytes to achieve comparability. As in the experiments presented above, we ran each experiment 25 times and display the average of the available bandwidth estimates and belonging confidence intervals at a confidence level of 0.95 in Fig. 5. The estimates of the iterative methods Pathload, DietTOPP, PTR, and Pathchirp are closely related to the fair share and do not match the available bandwidth. As anticipated these results confirm the model that is developed in Sect. 3. Without presenting results due to limited space we state that the direct probing tools that were investigated tend to be more inaccurate and do not report the available bandwidth nor the fair share in these experiments.
5
Conclusions
We conducted an extensive measurement study of wireless bandwidth estimation in IEEE 802.11g WLAN testbeds. In contrast to wired links bandwidth
324
M. Bredel and M. Fidler
estimates for wireless channels depend largely on the choice of packet sizes. We adapted the examined tools accordingly. We found that the FCFS assumption common in bandwidth estimation does not apply in case of wireless channels with contending traffic, where the distributed coordination function seeks to achieve a fair bandwidth allocation. We showed that the estimates of known iterative measurement methods can be related to the fair share of a new flow, which may deviate significantly from the available bandwidth. Our measurement results confirm this relation. A similar result was not established for direct probing. As opposed to previous studies our measurement results indicate that the methods, which have been specifically targeted at wireless channels, are not superior to previously known methods that have been developed for wired networks.
Acknowledgements We would like to thank M. Hollick, R. Steinmetz, and R. Jakoby for providing the equipment and facilities that made this research possible. This work has been funded by an Emmy Noether grant of the German Research Foundation.
References 1. D-ITG: Distributed Internet Traffic Generator, http://www.grid.unina.it/software/ITG 2. dd-wrt: Linux wireless router, http://www.dd-wrt.com 3. Emulab: Network emulation testbed, http://www.emulab.org 4. ns-2: Network simulator, http://www.isi.edu/nsnam/ns 5. Rude/Crude: Real-time UDP Data Emitter/Collector, http://rude.sourceforge.net 6. Amambra, A., Hou, K.M., Chanet, J.-P.: Evaluation of the performance of the SLoPS: Available bandwidth estimation technique in IEEE 802.11b wireless networks. In: Proc. of IFIP NTMS, May 2007, pp. 123–132 (2007) 7. Berger-Sabbatel, G., Duda, A., Heusse, M., Rousseau, F.: Short-term fairness of 802.11 networks with several hosts. In: Proc. of IFIP MWCN, October 2004, pp. 263–274 (2004) 8. Bianchi, G.: Performance analysis of the IEEE 802.11 distributed coordination function. IEEE JSAC 18(3), 535–547 (2000) 9. Botta, A., Pescape, A., Ventre, G.: Improving accuracy in available bandwidth estimation for IEEE 802.11-based ad hoc networks. In: Proc. of IEEE Systems Communications, August 2005, pp. 287–292 (2005) 10. Hu, N., Steenkiste, P.: Evaluation and characterization of available bandwidth probing techniques. IEEE JSAC 21(6), 879–894 (2003) 11. Jacobson, V.: Congestion avoidance and control. In: Proc. of ACM SIGCOMM, August 1988, pp. 273–288 (1988) 12. Jain, M., Dovrolis, C.: End-to-end available bandwidth: measurement methodology, dynamics, and relation with tcp throughput. IEEE/ACM TON 11(4), 537–549 (2003) 13. Jain, M., Dovrolis, C.: Ten fallacies and pitfalls on end-to-end available bandwidth estimation. In: Proc. of ACM IMC, October 2004, pp. 272–277 (2004)
A Measurement Study of Bandwidth Estimation
325
14. Johnsson, A., Melander, B., Bj¨ orkman, M.: Diettopp: A first implementation and evaluation of a simplified bandwidth measurement method. In: Proc. of SNCNW (November 2004) 15. Johnsson, A., Melander, B., Bj¨ orkman, M.: Bandwidth measurement in wireless networks. In: Proc. of Med-Hoc-Net (June 2005) 16. Johnsson, A., Melander, B., Bj¨ orkman, M.: An analysis of active end-to-end bandwidth measurements in wireless networks. In: Proc. of IEEE/IFIP E2EMON, April 2006, pp. 74–81 (2006) 17. Keshav, S.: A control-theoretic approach to flow control. In: Proc. of ACM SIGCOMM, September 1991, pp. 3–15 (1991) 18. Koksal, C.E., Kassab, H., Balakrishnan, H.: An analysis of short-term fairness in wireless media access protocols. In: Proc. of ACM SIGMETRICS, June 2000, pp. 118–119 (2000) 19. Lakshminarayanan, K., Padmanabhan, V.N., Padhye, J.: Bandwidth estimation in broadband access networks. In: Proc. of ACM IMC, October 2004, pp. 314–321 (2004) 20. Lee, H.K., Hall, V., Yum, K.H., Kim, K.I., Kim, E.J.: Bandwidth estimation in wireless LANs for multimedia streaming services. In: Proc. of IEEE ICME, July 2006, pp. 1181–1184 (2006) 21. Li, M., Claypool, M., Kinicki, R.: WBest: A bandwidth estimation tool for multimedia streaming application over IEEE 802.11 wireless networks. Technical Report WPI-CS-TR-06-14, Computer Science Department, Worcester Polytechnic Institute (March 2006) 22. Liebeherr, J., Fidler, M., Valaee, S.: A min-plus system interpretation of bandwidth estimation. In: Proc. of IEEE INFOCOM, May 2007, pp. 1127–1135 (2007) 23. Liu, X., Ravindran, K., Loguinov, D.: A queuing-theoretic foundation of available bandwidth estimation: Single-hop analysis. IEEE/ACM Trans. Networking 15(4), 918–931 (2007) 24. Liu, X., Ravindran, K., Loguinov, D.: A stochastic foundation of available bandwidth estimation: Multi-hop analysis. IEEE/ACM Trans. Networking 16(2) (2008) 25. Machiraju, S., Veitch, D., Baccelli, F., Bolot, J.: Adding definition to active probing. ACM SIGCOMM Computer Communication Review 37(2), 19–28 (2007) 26. Melander, B., Bj¨ orkman, M., Gunningberg, P.: Regression-based available bandwidth measurements. In: Proc. of SPECTS (July 2002) 27. Ribeiro, V.J., Riedi, R.H., Baraniuk, R.G., Navratil, J., Cottrell, L.: Pathchirp: Efficient available bandwidth estimation for network paths. In: Proc. of PAM (April 2003) 28. Sarr, C., Chaudet, C., Chelius, G., Lassous, I.G.: Improving accuracy in available bandwidth estimation for IEEE 802.11-based ad hoc networks. In: Proc. of IEEE MASS, October 2006, pp. 517–520 (2006) 29. Shriram, A., Kaur, J.: Empirical evaluation of techniques for measuring available bandwidth. In: INFOCOM 2007. 26th IEEE International Conference on Computer Communications, May 2007, pp. 2162–2170. IEEE, Los Alamitos (2007) 30. Strauss, J., Katabi, D., Kaashoek, F.: A measurement study of available bandwidth estimation tools. In: Proc. of ACM IMC, October 2003, pp. 39–41 (2003) 31. White, B., Lepreau, J., Stoller, L., Ricci, R., Guruprasad, S., Newbold, M., Hibler, M., Barb, C., Joglekar, A.: An integrated experimental environment for distributed systems and networks. In: Proc. USENIX OSDI, December 2002, pp. 255–270 (2002)
Hierarchical Logical Topology in WDM Ring Networks with Limited ADMs Tomoya Kitani1 , Nobuo Funabiki2, Hirozumi Yamaguchi3, and Teruo Higashino3 1
Graduate School of Information Science Nara Institute of Science and Technology, Nara, Japan 2 Graduate School of Natural Science and Technology Okayama University, Okayama, Japan 3 Graduate School of Information Science and Technology Osaka University, Osaka, Japan [email protected], [email protected], {h-yamagu,higashino}@ist.osaka-u.ac.jp
Abstract. This paper presents a method for constructing logical topology in multi-hop WDM networks hierarchically. Our logical topology can be built over WDM ring networks with only three ADMs (Add-Drop Multiplexers) and transceivers per node. We aim to realize low-cost WDMs that can be deployed for MANs and LANs. Due to well constructed hierarchical topology, both the maximum distance between two nodes and the number of required wavelengths on each optical fiber are reduced to the logarithmic order of the number of nodes. This contributes to mitigate traffic costs in WDM networks. Furthermore, we propose a node labeling scheme to achieve efficient routing without routing table lookup. From our numerical experiments, we have shown that we could construct a logical topology consisting of 1,000 nodes with a very small diameter and 16 wavelengths in a WDM ring network. Keywords: WDM ring networks, logical topology design algorithm, hierarchical topology, compact routing algorithm.
1 Introduction Wavelength Division Multiplexing (WDM) technology enables high-speed and highvolume data transmission over fiber-optic networks by multiplexing several optical carrier signals using different wavelengths. Because of its significance for very high-speed communication infrastructure, the WDM methodology and the related issues have been widely investigated so far. In particular, since multi-hop WDM networks are required to assign lightpaths among two nodes and any data is carried over those lightpaths, the quality of lightpath design obviously has great impact on the network performance such as the volume of traffic that can be accommodated without causing congestion. Therefore, many algorithms on designing logical topologies over multi-hop WDM networks have been considered [1,2]. The existing methodologies on logical topology design over WDM networks have focused on minimizing the number of required wavelengths [3,4,5,6], the number of A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 326–337, 2008. c IFIP International Federation for Information Processing 2008
Hierarchical Logical Topology in WDM Ring Networks with Limited ADMs
327
required ADMs (Add-Drop Multiplexers) and transceivers [5,6,7], the blocking probability [8], the number of required paths [9], the total amount of relayed traffic [10,11], the number of required wavelength converters [3,12] and so on, for given traffic matrices. It is well-known that the number of ports (ADMs and transceivers) per WDM node has big impact on hardware costs. Also in order to save network resources, minimizing the number of required wavelengths is also desirable. Although some methods try to reduce the total number of ports for cost-efficient design of WDM networks [13], it is desirable to consider WDM networks with a small number of ports per node since MANs and LANs may employ a large number of low-cost nodes. Thus, the traffic grooming methods to minimize the number of ADMs and wavelengths have been investigated so far. In our previous work [14], we have proposed a logical topology called Hierarchical Chordal Ring Network (HCRN). In HCRN, each node has only three ports (ADMs and transceivers)√and the network diameter and the number of required wavelengths are proportional to N (N denotes the number of nodes). Arora et al. have proposed a method to configure a logical topology for WDM ring networks such as a prevalent MAN [15]. This topology has the network diameter and the number of required wavelengths which are proportional to the logarithmic order of N by using lightpaths with O(2N ) lengths (physical hop-counts). However, this method may require each node to use more ports in the logical topology whereas HCRN uses only three ports. In this paper, we propose a method of designing a logical topology where the network diameter and the number of required wavelengths are the logarithmic order of N on the WDM ring networks constituted by nodes with only three ports. We also propose a multi-hop routing method over this logical network. This topology is configured by clustering adjacent nodes in a similar way to HCRN and Arora’s method. This topology can admit most traffic patterns and variance because of its regularity. Although logical topologies may sometimes be reconfigured according to changes of traffic patterns, frequent reconfiguration cannot be applied in practice due to its overhead. Therefore, it is important to construct a topology which is adaptive to most traffic patterns. Furthermore, exploiting regularity and hierarchy of the logical topology, we propose a node labeling scheme to achieve effective routing on the logical topology without routing table lookup. From the numerical results, we have shown that we could construct logical topologies of 1,000 nodes with a very small diameter and up to 16 wavelengths per fiber-optic cable, and the method is dominant to the method in Ref. [16] that generates dynamic topologies and Chordal Ring Network topology.
2 Related Work Reference [16] is one of the initial literatures on logical topology design over optical networks, and provides several heuristic algorithms such as HLDA (Heuristic Logical topology Design Algorithm) and TILDA (Traffic Independent Logical topology Design Algorithm). Later we will conduct performance comparison with them to see efficiency of our method. Reference [6] deals with optical ring networks, and gives the lower bound analysis of wavelengths and ADMs usage in WDM networks. The results
328
T. Kitani et al.
indicate to what degree our achievements have been attained; our upper bound analysis shows that we could achieve almost the lowest in most cases. Reference [5] introduces several logical topologies in dynamic lightpath assignment, minimizing the number of transceivers. References [10,11] also assume SONET ring networks, minimizing the relay traffic on logical topologies by ILP formulation. In particular [10] considers the upper and lower bounds of the minimized relay traffic for cost-efficient design. The recent work [17] has presented the improvement of existing heuristic algorithms by the “rollout” technique. We have proposed the logical topology called Hierarchical Chordal Ring Network (HCRN) [14]. HCRN is inspired from the Chordal Ring Network topology (CRN) [18], where each node has only three ports (ADMs and transceivers). HCRN achieves less network diameter and less number of required wavelengths than the original CRN by clustering adjacent nodes and configuring internal / inter-cluster lightpaths. However, in both CRN√ and HCRN, the network diameter and the number of required wavelengths are order of N (N is the number of nodes). Arora et al. have proposed the method to configure a logical topology for WDM ring networks [15]. The topology achieves that the network diameter and the number of required wavelengths are the logarithmic order of N . In the method, the concept of configuring lightpaths is similar to the distributed hash table (DHT) algorithm named “Chord” for peer-to-peer networks [19]. Both methods use lightpaths/connections whose lengths (physical hop-counts) are power of two. However, they may make each node need more ports in the logical topology whereas it uses only three ports in CRN. We note that recent researches have dealt with wavelength assignment for highend, brand-new architectures like WDM networks with wavelength converters [3] and ROADM (Reconfigurable Optical Add-Drop Multiplexer) with modulators [20]. Also some others aim at attaining non-blocking rearrangement [4], achieving fairness in wavelength assignments [12] and so on. Different from those researches, we revisit the important topic; logical path design and routing over WDM networks with limited capabilities of equipments. Even several heuristic solutions have been presented over the last decade, we believe that this problem has not been solved completely and our solution is quite significant for efficient usage of low-cost WDM networks.
3 Target WDM Network Model In this section, we show the architecture of WDM networks to explain the problem dealt with in this paper. An optical network is modeled as a ring graph Gphy = (V, Ephy ) where V = {0, 1, · · · , N − 1} is a set of nodes and Ephy ⊆ V × V is a set of fiber-optic cables called physical links or simply links. Each node is equipped with OADMs (Optical Add-Drop Multiplexers) and for data transmission between two nodes; their transceivers are required to be tuned to a common wavelength in advance. The resulting logical path is called lightpath, and the two nodes are called terminal nodes. Since each lightpath needs a port (transceiver) at its both terminal nodes, the number of input and output ports at each node is greater than
Hierarchical Logical Topology in WDM Ring Networks with Limited ADMs
329
that of lightpaths which are terminated at the node. The number of ports is called degree bound. We show the architecture of WDM nodes in Fig. 1. For a lightpath, each non-terminal node on the lightpath acts as an optical repeater where the optical signal is passed through from an ingress port to the corresponding egress port. Meanwhile, routing is done by the terminal nodes by the conversion between optic signals and electric signals. We assume the same number of ADMs and transceivers for each node – two ADMs and three transceivers for each node in Fig. 1–, and thus the maximum number of wavelengths on each physical link is identical and is denoted by W . We also assume that in the similar reason, the degree bound of all nodes and the capacity of all the lightpaths are identical, and they are denoted by D and C, respectively. λ1
λ1, …, λw λw
Optical AddDrop MUX λ1
Optical AddDrop MUX
λa
λb λc λe
λ1, …, λw λw
Transceiver
λd λf
Transceiver
Electric Router
Transceiver
Fig. 1. Architecture of WDM Node
4 Proposed Hierarchical Network Topology Here, we explain the proposed hierarchical logical topology. We assume a physical ring network G = (V, Ephy ) where V = {0, 1, ..., N − 1} and Ephy = {(l, l ⊕ 1)|l ∈ V } is a set of bi-directional physical links (i ⊕ j ≡ (i + j) mod N ). 4.1 Clustering of Nodes In the given physical ring network, a subsequence of nodes in the node ring is called cluster. First, we start with a whole, single cluster [0, ..., N − 1]. As shown in Fig. 2, for each cluster we establish a lightpath called chord lightpath between the both end nodes of the cluster, and create two same-sized sub-clusters using the nodes in the cluster except the both end nodes. Then we establish a lightpath between an end node of an i-th level cluster and its physically adjacent node, which is an end node of the (i + 1)-th
330
T. Kitani et al.
chord lightpath i -th layer
(i+1)-th layer chord lightpath
Fig. 2. Clustering of nodes 1 1 0 0 0 0 0 0 0 1 0 1 1 01 1 1 01 11 10 00 0 0 0 0 1 0 1 1 0 1 1 1 0 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 11 11 01 01 01 01 01 01 01 1 0 00 00 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 0 1 0 1
(a) Hierarchical Construction of “Chords”
0 00 000
01 001
0000 0001
1
0011
011
11 010
110
111
10 101
100
1100 1010 0110 1111 1001 0101 1101 1110 1011 1000 0010 0111 0100 Links on the ring
Chord Links
(b) Hierarchical Node Labeling
Fig. 3. Node labeling and routing in a cluster of HLT
level sub-cluster. For each sub-cluster, we repeat the same procedure until the cluster size is less than or equal to four. The consequent hierarchical network topology is called HLT (Hierarchical Logical Topology). As shown in Fig. 3(a), all nodes on this HLT can be clustered hierarchically. Then, for routing purpose, we give node labels according to the policy below (see Fig. 3(b)). For the end nodes in the 1st-level (the highest level) cluster, we assign the node labels 0 and 1 to those nodes. If the end nodes of an i-th level cluster have the node labels X0 and X1, we assign to the end nodes of the (i + 1)-th level clusters the node labels X00, X01, X11 and X10. According to this labeling policy, the nodes in the same level’s clusters have the node labels based on Gray codes where the labels of any two nodes that are directly connected by a lightpath differ in only one digit (Fig. 3). Also if a node p of (i + 1)-th level cluster is connected by a lightpath with a node of i-th level cluster with node label Y , the node label of p is Y 0. These codes are called variable length Gray codes.
Hierarchical Logical Topology in WDM Ring Networks with Limited ADMs
331
In this hierarchical logical topology HLT, the network diameter (the maximum distance (hop count) between two nodes in the network) is O(log N ). One may think that this is similar√with the Chordal ring network topology [18], however its network diameter is O( N ). Thus, the proposed hierarchical topology HLT can attain smaller network diameters than Chordal Ring Network topology in large-scale networks. As shown in Fig. 3, all the chord lightpaths established in the clusters of the same level can use a common wavelength because they never share the physical links. Therefore, as a total, we only need H wavelengths where H is the number of hierarchy levels. Since N ≤ 2H+1 − 2, the number of required wavelengths is obtained as follows; H = log2 (N + 2) − 1 log2 N
(1)
We note that if we use a physical ring network topology, the wavelength for the 1st level can be the same as that used for the second level, and this can save one wavelength. For example, in Fig. 3, the wavelength assigned to the chord lightpath between nodes 0 and 1 can be the same as that used for the two chord lightpaths between 00 and 01 and between 11 and 10 since there is a direct physical link between nodes 0 and 1. As we have seen above, the most significant feature of HLT is that the network diameter and the number of required wavelengths are suppressed to the logarithmic order of N . 4.2 Routing on Proposed Hierarchical Logical Topology Here, we consider a routing on the proposed network topology. For routing on the hierarchical topology HLT, as shown in Fig. 3(b), the proposed variable length Gray codes can be used for deciding the route from a source node to its destination node. If nodes 001 and 1001 are the source node and its destination node respectively, the path 001, 000, 00, 0, 1, 10, 100, 1000, 1001 is one of the shortest routes. Basically, each packet is relayed from the source node to a node on an upper level, and then it is forwarded from the node on the upper level to the destination node. This is the basic routing policy. There is an exception. If nodes 00 and 111 are the source node and its destination node, the path 00, 01, 11, 110, 111 is the shortest route, and the route through 00, 0, 1, 10 becomes longer. The lightpath from 01 to 11 makes the length of the route shorter. For each node S with node label s1 , s2 , · · · , sk , there are four routing actions. U P denotes the action which forwards the received packet to its parent node SUP = s1 , s2 , · · · , sk−1 . U P can be used only for sk = 0. DW denotes the action which forwards the received packet to its child node SDW = s1 , s2 , · · · , sk , 0 (sk+1 = 0). BR denotes the action which forwards the received packet to its sibling node SBR = s1 , s2 , · · · , sk ⊕ 1 through the chord lightpath (or normal lightpath) between s1 , s2 , · · · , sk and s1 , s2 , · · · , sk ⊕ 1. Here, note that x⊕1 = 1 if x = 0, and that x⊕1 = 0 if x = 1. CO denotes the action which forwards the received packet to its cousin node SCO = s1 , s2 , · · · , sk−1 ⊕ 1, sk through the lightpath between s1 , s2 , · · · , sk and s1 , s2 , · · · , sk−1 ⊕ 1, sk . CO can be used only for sk = 1. Hereafter, Forward(S, U P ), Forward(S, DW ), Forward(S, BR) and Forward(S, CO) denote the forwarded nodes SUP , SDW , SBR and SCO , respectively. Let S = (s1 , · · · , si , si+1 , · · · , sk ) and D = (s1 , · · · , si , di+1 , · · · , dh ) denote the variable length Gray codes for nodes S and D. Here, we assume that the first i bits
332
T. Kitani et al.
of the variable length Gray codes of nodes S and D are the same (si+1 = di+1 ). The following algorithm R-HLT(S,D) calculates the routing action of node S (here, “NIL” denotes no action).
[Routing Algorithm R-HLT]: if (S = D) then “NIL” else if ( (k − i > 2) ∨ (h = i) ) then if ( sk = 0 ) then “UP” else “BR” else if ( k − i = 2) then case (sk−1 , sk ) of (0, 0): if ( k > h ) then “UP” else “BR” (0, 1): if ( dk−1 = 0 ) then “BR” else “CO” (1, 0): if ( dk−1 = 0 ) then “CO” else “BR” (1, 1): if ( k > h ) then “UP” else “BR” end else if ( k − i = 1 ) then “BR” else (* k = i *) “DW” If node S is a source node or relay node, the above routing algorithm R-HLT(S,D) can decide the routing action of node S when S must forward its received packets to node D. If the source node S wants to decide the strict routing path and its length from node S to its destination node D, we can calculates them by repeating R-HLT and calculating the path S0 = S, S1 =Forward(S,R-HLT(S, D)), S2 =Forward(S1 ,R-HLT(S1 , D)), · · ·, Sq = D =Forward(Sq−1,R-HLT(Sq−1 , D)) until we find node D as Sq . This path denotes the strict routing path from S to D and its path length is q. This routing can be used when we use source routing.
5 Performance Evaluation and Numerical Results 5.1 Comparative Models Here, we will explain existing logical topologies which can be applied for WDM networks with node degree 3. A Chordal ring network has a ring topology with N nodes (N must be even) whose node IDs are 0 to N − 1. For each node with node ID k, one chord is connected to either √ node k + L or k − L. Here, L denotes a constant number. In Ref. [18], it is shown that if N + 3 ≤ N2 holds, we can maximize its network diameter √ √ when an odd number closest to N + 3 is specified as the constant L. If N + 3 ≤ N2 does not hold, we can assign the maximum odd number which is less than or equal to N 2 as the constant L. In this situation, the network diameter and the number of required wavelengths of CRN are both proportional to the square root of the number N of nodes. On the other hand, as we explained above, the proposed HLT topology only requires the network diameter and the number of required wavelengths which are proportional to the logarithmic order of N . Figure 4 denotes the comparison about the network diameter, the average hop counts and the number of required wavelengths of HLT and CRN
Hierarchical Logical Topology in WDM Ring Networks with Limited ADMs 45
100
40
90
HLT
35
25
p o h
20
70 s h t g 60 n e l e v 50 a w f o 40 #
15
30
10 Network Diameter of HLT Ave. hop count of HLT
5 0
CRN
80
30 t n u o c
333
20
Network Diameter of CRN Ave. hop count of CRN
10
0
0
200
400
600
800
1000 1200 # of nodes
1400
1600
1800
(a) Network diameter and average hop count
2000
0
200
400
600
800
1000
1200
1400
1600
1800
2000
# of nodes
(b) Number of required wavelengths
Fig. 4. Comparison between HLT and CRN
networks. Note that, as shown in Fig. 4(b), CRN needs twice the number of wavelengths in order to construct itself when N cannot be divided by the chord length L. There are also some dynamic topology construction methods. For example, in Ref. [16], HLDA (Heuristic Logical topology Design Algorithm) and TILDA (Traffic Independent Logical topology Design Algorithm) are proposed, and they are often used for performance comparison. In HLDA, in order to minimize the total amount of traffic, nodes with heavy traffic are given priority to use usable optical wavelengths. In HLDA, the following algorithm is used. Algorithm HLDA Step.0 An optical link is given between every physically adjacent nodes so that all nodes can communicate each other. Step.1 Estimate the traffic amount Pij for every link (i, j). Step.2 Find link (i, j) whose Pij is maximum. If there is an usable wavelength on the link (i, j), we assign one wavelength to link (i, j). Then, we set Pij to 0. Step.3 If all Pij are 0, go to Step.4. Otherwise, return to Step.2. Step.4 If we still have usable wavelengths, we assign those wavelengths to possible links randomly. We repeat this process until we cannot assign new wavelengths. On the other hand, TILDA does not consider traffic amounts, and gives priority for assigning usable wavelengths to physically closer links. In TILDA, the following algorithm is used. Algorithm TILDA Step.0 An optical link is given between every physically adjacent nodes so that all nodes can communicate each other. Step.1 Set i = 2. Step.2 If a node has usable ADMs and if there is a usable wavelength on the path from the node to another node with i hop distance, we assign one wavelength to all links on the path. If there is no such a path for two nodes with i hop distance, we set i = i + 1 and repeat the same process.
334
T. Kitani et al.
5.2 Performance Evaluation We have evaluated the performance of the proposed HLT, HLDA and TILDA by simulation. Here, we have used three types of traffic matrices: random model, server-client model and small-world model. In our analyses, we have changed the number N of nodes from 50 to 1, 000 in units of 50 nodes, and tried three numerical analyses for the above three types of traffic matrices, respectively. Here, we assume that HLDA can also use the same number of wavelengths as much as that used in the proposed method. The uniform random numbers between 0 and 1 are given as the traffic matrix of the random model. In the server-client model, 5% of nodes are selected as servers, and we have sent 10 times of traffic to those server nodes. In the small-world model, first we construct a traffic matrix based on the server-client model, and then we make traffic among neighboring nodes increase 10 times [21]. We also make the traffic between two nodes decrease in proportion to the distance between two nodes. For the given traffic matrices, we have evaluated the network diameters, the average number of hops, and overall traffic volume. The traffic volume, denoted by Q hereafter, is defined as follows; Q= T uv · huv (2) u
v
where huv and T uv denote the number of lightpaths and traffic on the route from u to v, respectively. We show our numerical results for the above three models in Fig. 5. Figure 5(a)–(c) denotes the network diameters and average numbers of hop counts. Figure 5(d) denotes the overall traffic volumes Q where all the traffic volumes are normalized so that the traffic volume of HLDA is represented as 1. For all the traffic models, if the number of nodes exceeds 100, the proposed logical topology HLT is better than other topologies. The reason is that if the number of nodes is small, relatively we can use more wavelengths. On the other hand, if the number of nodes becomes large, relatively we can use less wavelengths. If HLDA can assign enough number of logical links between nodes with heavy traffic, we can assign enough number of logical links. However, if the number of nodes becomes large, we might not be able to assign enough number of logical links for such purposes. For the network diameters, in the proposed hierarchical topology HLT, the network diameters are stable independently of traffic fluctuation and deviation. On the other hand, HLDA gives priority to assigns logical links for node pairs with heavy traffic. This makes the hop counts for node pairs with light traffic increase. The traffic fluctuation and deviation also make big influence to the network diameters. Next, we focus on the average hop counts and total traffic volumes for the random model and server-client model. In HLDA, the average hop counts are small for the random model since optical fiber links are assigned uniformly. In the server-client model, the total traffic volumes relatively become small since HLDA gives priority to assign logical links for node pairs with heavy traffic. Since the proposed topology is regular, it offers almost fixed performance independently of traffic models and volumes. It can also guarantee the upper limit of the network diameters theoretically. In general, the random model and server-client model have similar tendency for the average hop counts.
Hierarchical Logical Topology in WDM Ring Networks with Limited ADMs
335
(a) Net. dia. and ave. hop counts on Random (b) Net. dia. and ave. hop counts on Servermodel Client model
(c) Net. dia. and ave. hop counts “Small-world” (d) Ratio of network traffic amounts in HLT, model HLDA and TILDA (HLT = 1) Fig. 5. Network diameter, average hop counts and traffic amounts in HLT, HLDA and TILDA
Lastly, we focus on the average hop counts and total traffic volumes for the smallworld model. HLDA assigns many optical links for neighboring node pairs since we assume relatively heavy traffic to neighboring node pairs. Then, it becomes difficult to assign optical links for node pairs with long distances. On the other hand, the proposed topology can assign hierarchical chords for node pairs with long distances while neighboring node pair can communicate with each other using the links on the original ring topology. From the above reason, our proposed topology HLT and HLDA have rather different tendency. In Fig. 5(d), if the number of nodes is more than 400, the total traffic volumes of the proposed topology HLT is less than 60% of those for HLDA. We can observe that our topology could save the usage of wavelengths because it could uniformly distribute lightpaths over physical links. As shown in Fig. 5(d), for a logical topology with 1,000 nodes, an HLT topology only requires 16 wavelengths. Meanwhile, in HLDA and TILDA, it is likely to occur that some lightpaths are established over some specific physical links first due to degree limitations. In that case no more lightpaths were accepted over the link if no more wavelength is available, and the other lightpaths are needed to detour the link. Thus consequent topologies may have long routes that require many hops and make the diameters larger.
336
T. Kitani et al.
6 Conclusion In this paper, we propose a design method of hierarchical logical topology in multi-hop WDM networks. Our logical topology can be built over WDM networks with limited ADMs. The method can be applied for both ring-type and mesh-type WDM networks. The proposed logical topology has features that both the maximum distance between two nodes and the required number of wavelengths on each physical optical link are proportional to the logarithmic order of the number N of nodes. From theoretical and numerical points of views, we have compared the proposed logical topology with general Chordal ring network topology and HLDA (Heuristic Logical topology Design Algorithm) based network topology. The proposed logical topology has smaller average hop number, network diameter and total traffic amount. If the number N of nodes on a given WDM network becomes large, our logical topology becomes more efficient. It is shown that the proposed logical topology has enough scalability for large scale WDM networks. We have also shown that the network performance can be further improved by combining HLDA over our logical topology. To investigate detailed network performance on real WDM networks is one of our future work.
References 1. Dutta, R., Rouskas, G.N.: A survey of virtual topology design algorithms for wavelength routed optical networks. Optical Network Magazine 1, 73–89 (2000) 2. Zang, H., Jue, J.P., Mukherjee, B.: A Review of Routing and Wavelength Assignment Approaches for Wavelength-Routed Optical WDM Networks. Optical Networks Magazine 1(1), 47–60 (2000) 3. Chen, L.-W., Modiano, E.: Efficient Routing and Wavelength Assignment for Reconfigurable WDM Ring Networks With Wavelength Converters. IEEE/ACM Trans. on Networking 13(1), 173–186 (2005) 4. Saengudomlert, P., Modiano, E.H., Gallager, R.G.: Dynamic Wavelength Assignment for WDM All-Optical Tree Networks. IEEE/ACM Trans. on Networking 13(4), 895–905 (2005) 5. Gerstel, O., Ramswami, R., Sasaki, G.H.: Cost-Effective Traffic Grooming in WDM Rings. IEEE/ACM Trans. on Networking 8(5), 618–630 (2000) 6. Billah, A.R.B., Wang, B., Awwal, A.A.S.: Effective Traffic Grooming in WDM Rings. In: Proc. of the 45th IEEE Global Telecomm. Conf(GLOBECOM 2005), vol. 3, pp. 2726–2730 (2002) 7. Janardhanan, S., Mahanti, A., Saha, D., Sadhukhan, S.K.: A Routing and Wavelength Assignment (RWA) Technique to Minimize the Number of SONET ADMs in WDM Rings. In: Proc. of the 39th Annual Hawaii Int’l Conf. on Sys. Sci (HICSS 2006), vol. 2 (2006) 8. Liu, C., Ruan, L.: Logical Topology Augmentation for Survivable Mapping in IP-over-WDM Networks. In: Proc. of the 48th IEEE Global Telecomm. Conf(GLOBECOM 2005), vol. 4 (2005) 9. Xin, C., Wang, B., Cao, X., Li, J.: A Heuristic Logical Topology Design Algorithm for MultiHop Dynamic Traffic Grooming in WDM Optical Networks. In: Proc. of the 48th IEEE Global Telecomm. Conf(GLOBECOM 2005), vol. 4 (2005) 10. Lee, K., Siu, K.-Y.: On the Reconfigurability of Single-Hub WDM Ring Networks. IEEE/ACM Trans. on Networking 11(2), 273–284 (2003)
Hierarchical Logical Topology in WDM Ring Networks with Limited ADMs
337
11. Dutta, R., Rouskas, G.N.: On Optimal Traffic Grooming in WDM Rings. IEEE J. on Select. Areas in Commun. 20(1), 110–121 (2002) 12. Mosharaf, K., Lambadaris, I., Talim, J., Shokrani, A.: Fairness Control in WavelengthRouted WDM Ring Networks. In: Proc. of the 48th IEEE Global Telecomm. Conf(GLOBECOM 2005), vol. 4 (2005) 13. Schein, B., Modiano, E.: Quantifying the Benefit of Configurability in Circuit-Switched WDM Ring Networks with Limited Ports per Node. J. of Lightwave Tech. 19(6), 821–829 (2001) 14. Kitani, T., Funabiki, N., Higashino, T.: Proposal of Hierarchical Chordal Ring Network Topology for WDM Networks. In: Proc. of the IEEE Int’l Conf. on Networks 2004 (ICON 2004), pp. 605–609 (2004) 15. Arora, A.S., Subramaniam, S., Choi, H.-A.: Logical Topology Design for Linear and Ring Optical Networks. IEEE J. on Select. Areas in Commun. 20(1), 62–74 (2002) 16. Ramaswami, R., Sivarajan, K.N.: Design of logical topologies for wavelength-routed alloptical networks. In: Proc. of the 14th IEEE Int’l Conf. on Comp. Comm (INFOCOM 1995), pp. 1316–1325 (1995) 17. Lee, K., Shayman, M.A.: Rollout Algorithms for Logical Topology Design and Traffic Grooming in Multihop WDM Networks. In: Proc. of the 48th IEEE Global Telecomm. Conf(GLOBECOM 2005), vol. 4 (2005) 18. Arden, B.W., Lee, H.: Analysis of Chordal Ring Network. IEEE Trans. on Comp. C-30(4), 291–295 (1981) 19. Stoica, I., Morris, R., Liben-Nowell, D., Karger, D.R., Kaashoek, M.F., Dabek, F., Balakrishnan, H.: Chord: a scalable peer-to-peer lookup protocol for Internet applications. IEEE/ACM Trans. on Networking 11(1), 17–32 (2003) 20. Turkcu, O., Subramaniam, S.: Blocking in Reconfigurable Optical Networks. In: Proc. of the 26th IEEE Int’l Conf. on Comp. Comm (INFOCOM 2007), pp. 188–196 (2007) 21. Watts, D.J., Strogatz, S.H.: Collective dynamics of ‘small world’ networks. Nature 393, 440– 442 (1998)
A Novel Class-Based Protection Algorithm Providing Fast Service Recovery in IP/WDM Networks∗ Wojciech Molisz and Jacek Rak Gdansk University of Technology, G. Narutowicza 11/12, Pl-80-952 Gdansk, Poland {womol,jrak}@eti.pg.gda.pl
Abstract. In this paper we consider a multilayer architecture: IP-MPLS over optical transport networks (OTNs). Nodes have integrated functionality of optical cross connects (OXCs) in the optical layer and of IP routers in the IP layer. Any two IP routers can be connected together by an all-optical wavelength-division multiplexing (WDM) channel, called a lightpath. Wavelength converters may be installed in each node. We propose a class-based method providing fast service restoration and reducing the number of service recovery actions in the IP layer. We focus on service restoration time values and we show, that it is possible to decrease them, by reducing the size of active path protected area. This may be achieved for the price of link capacity utilization degradation. Keywords: IP /WDM network survivability, multilayer routing, fast, service recovery.
1 Introduction We consider a multilayer architecture: IP-MPLS over optical transport networks (OTNs), the main architecture of the next generation networks [3]. The OTN nodes have functionality of both optical cross connects (OXCs) in the optical layer and of IP routers in the IP layer. Any two IP routers can be connected together by an all-optical wavelength-division multiplexing (WDM) channel, called a lightpath. A lightpath may use several wavelengths if wavelength converters are installed in nodes. A fundamental characteristic of survivable network systems is their capability to deliver essential services in the face of failure, or attack. There are two approaches for providing survivability of IP-over-WDM networks: protection and restoration [11]. Protection uses pre–computed backup paths applied in the case of a failure. Restoration finds dynamically a new path, once a failure has occurred. In both cases we distinguish either path protection/restoration, or link protection/restoration against a single link or node failure. Several intermediate solutions can be applied between the mentioned extremes, like area protection [7], or partial path protection [13]. ∗
This work was partially supported by the Ministry of Science and Higher Education, Poland, under grants 3 T11D 001 30 and N517 022 32/3969.
A. Das et al. (Eds.): NETWORKING 2008, LNCS 4982, pp. 338–345, 2008. © IFIP International Federation for Information Processing 2008
A Novel Class-Based Protection Algorithm Providing Fast Service Recovery
339
1.1 Related Works Recently several papers have appeared on survivability of IP-over-WDM networks. Colle et al. [3] gave an excellent survey of multilayer survivability concepts in the context of next generation networks. Sahasrabuddhe, Ramamurthy and Mukherjee [11], assumming that each backup path in the WDM layer is arc-disjoint with the respective primary path, analysed protection in the WDM layer, and restoration in the IP layer. They proposed four integer linear programming (ILP) models and heuristics to find solutions. Pickavet et al. [8] discussed three approaches to interworking between layers and two efficient coordinated multilayer recovery techniques. Sasaki and Su [12] proposed models to evaluate the cost of survivable IP-over-WDM networks. Provisioning of survivability at the optical layer provides fast service recovery and is thus inherently attractive, but its major drawback is that it cannot recover from failures that occur at the IP-MPLS layer. The IP layer itself reacts very slowly to failures. Qin, Mason and Jia [9], Lei, Liu and Ji [5], and Ratnam, Zhou and Gurusamy [10] addressed the problem of efficient multilayer operational strategies for survivable IP-over-WDM networks and proposed several joint multiple layer restoration schemes with intralayer and interlayer signaling and backup resource sharing. Zhao et al. [16] proposed a similar strategy for IP/GMPLS/OTN networks. Bigos et al. [2], and Liu, Tipper and Vajanapoom [6] described various methods for spare capacity allocation (SCA) to reroute disrupted traffic in MPLS-over-OTN. Doucette, Grover and Giese [4] used the spare capacity of span-protecting p-cycles to provide protection against both optical link and node failures in the IP-MPLS layer. 1.2 Outline We consider here a survivable IP-MPLS-over-OTN-WDM network protected against a single node failure. Demands for IP flows are given. We assume M service classes, numbered from 0 to M-1. Class 0 represents the demands for which all the service recovery actions must be performed as fast as possible (i.e. at the WDM layer). For other (lower priority) classes, the IP restoration times may increase. In the first stage of our algorithm, for each service class we find a node-disjoint working and a backup label switched (LSP) paths. Then we group the IP demands into service classes on IP links. In the next stage we map each class onto protected lightpaths according to available capacities of optical links. The scope of WDM protection depends on service class. For the highest class 0, each two adjacent WDM links of the LSP are protected by a backup lightpath. In contrast, for the lowest class (M-1), there is no backup lightpath and all the recovery actions must be performed at the IP layer. We assume a bottom-up restoration strategy. If an active lightpath consists of more than one link, then a failure of the lightpath transit node can be restored in the optical layer. Connections which cannot be restored in the WDM layer, should be restored in the IP layer. Since all the flow optimization models (in the IP as well as in the WDM layer) are NP-complete, we propose the novel heuristic approach. The rest of the paper is organized as follows. The survivable routing and wavelength assignment optimization problems are sketched in Section 2. Heuristic algorithms are developed to solve the problems. Modeling assumptions are described in Section 3. Results discussed in Section 4 show, that it is possible to decrease service restoration duration by reducing the size of active path protected area.
340
W. Molisz and J. Rak
2 IP-MPLS Survivable Routing of Working/Backup LSPs The survivable IP-over-WDM routing problem, is divided into two following subproblems: a) survivable IP-MPLS routing consisting of determining the IP virtual topology and finding the survivable routing of IP layer demands, b) survivable WDM routing (lightpath routing and wavelength assignment). In a subproblem (a) is to find the survivable LSPs, where each working LSP is protected by the end-to-end backup LSP being node-disjoint with the working one. The number of active LSP links depends on the service class m and is determined as: ⎡ l −1 ⎤ rm = ⎢ c × m + 1⎥ ⎢ M −1 ⎥
where:
(1)
lc is the number of links of the end-to-end shortest path between the given pair of source s and destination d nodes in the WDM layer, m is the class of a demand, M is the number of service classes.
It is clear from the formula (1), that a working LSP for the class 0 is established by a direct IP layer link. This implies in turn that no IP layer recovery actions will take place. On the contrary, for the class M-1 each working LSP link will be mapped onto a single-link WDM lightpath, implying frequent recovery actions at IP layer. Fast service recovery at WDM layer is achieved here by limiting the backup lightpath protection scope. For that purpose we determine the number of backup lightpaths protecting the given working lightpath as: ⎡ l −1 ⎤ bm = ⎢− c × m + lc − 1⎥ M − 1 ⎢ ⎥
(2)
where all the symbols have the same meaning as in (1). From the formula (2), one can observe that bm decreases linearly with the increase of service class number m. In particular it means that any backup lightpath for the class 0 protects two adjacent links of the working lightpath, while for class M-1 there is no backup lightpath for a given working lightpath and all the recovery actions must be performed in the IP layer. However, due to the limitations on the number of working LSP links in the IP layer given in Eq. 1 (implying the decrease of the length of the working lightpath with the increase of service class number), the real scopes of WDM protection (measured in kilometers of fibers) remain at the same small level, independent of service class number (except for class M-1). This in turn provides fast service recovery in the WDM layer independent of the service class number. The proposed approach is characterized by better performance, compared to the approach of solving all the four subproblems separately, since it divides the original problem of integrated IP/WDM routing into two separate subproblems only. Finding the solution to subproblem (a) is followed here by solving the subproblem (b), but the tasks within subproblems (a) and (b) are performed in the integrated manner. Example IP/WDM routing for demands of boundary classes 0 and M-1 is given in Figs. 1÷2.
A Novel Class-Based Protection Algorithm Providing Fast Service Recovery
R2 R2 R1
R6
IP layer
R4
R6
IP layer
R4
R3
R1
R3
341
R5
R5
O2 O2
O3
O1 O4
O4
O6
WDM layer
O3
O1
O6
WDM layer O5
O5
backup LSP backup lightpaths for working LSP backup lightpath for backup LSP
\
working LSP working lightpath for working LSP
Fig. 1. Example IP/WDM routing of survivable connection of the class m = 0
Fig. 2. Example IP/WDM routing of survivable connection of the class m = M-1
In the proposed algorithm, given in Fig. 3, the following notation is used: s - source node of a demand d - destination node of a demand m - class of a demand Πsd - the demanded capacity ξij - the cost of the IP link lij defined as the length of the respective end-to-end lightpath in the WDM layer between nodes i and j INPUT
Network topology; A set of demands, each demand given by a quadruple [s, d, Πsd, m].
OUTPUT Survivable multilayer routing of demands from A. Step 1. Find the working and backup LSPs using the WDM topology with the link costs ξij set to link lengths or to infinity in case of insufficient spare capacity. Step 2. Divide the working LSPs into rm regions, as given in Eq. 1 and replace each working LSP region with a direct IP link. Regardless of the service class m, provide each link of the found backup LSP with the one-hop lightpath. Step 3. Find the lightpaths carrying the IP working flows, using the standard distance metrics treating the aggregated flows belonging to the same class m between the given pair of IP layer nodes, found in Step 2, as the demands for the WDM layer. Step 4. Divide each working lightpath into bm regions, as given in Eq. 2, and provide each region of WDM lightpath with the dedicated backup lightpath. Step 5. Provide each aggregated IP backup flow with the unprotected WDM lightpath.
Fig. 3. The proposed algorithm
Steps 1÷2 are responsible for determining the survivable IP-layer routing while steps 3÷5 are used to find the surivivable routing in the WDM layer. Since each of the subproblems considered here is NP-complete, we have used only the heuristic approach in computations. Due to limitations on the size of this paper, we have put the respective ILP formulations of the above problem at the Web page: http://www.pg.gda.pl/~jrak/Networking2008_ILP.pdf.
342
W. Molisz and J. Rak
3 Modeling Assumptions The modeling was performed for the U.S. Long-Distance Network [15], and European COST 239 Network [14], shown in Figs. 4÷5. The simulations were to measure the link capacity utilization ratio, the number of broken connections restored at the IP and WDM layers and the values of connection restoration time. Time of service restoration in WDM layer comprised: time to detect a failure, link propagation delay, time to configure backup lightpath transit nodes and message processing delay at network nodes (including queuing delay). All the WDM layer links were assumed to have 32 channels. Channel capacity unit was considered to be the same for all the network links. Optical nodes were assumed to have a full wavelength conversion capability. When measuring the IP layer service restoration time, we assumed the IP link propagation delay to be equal to the aggregate delay of the respective WDM lightpath realizing this IP link. The time of message processing delay at the IP layer label-switch routers was assumed to be equal to 30 ms. For each IP layer connection, the following properties were assumed: − demands from M = 5 service classes with protection against a single node failure, − the demanded capacity equal to 1/32 of the WDM link channel capacity, − provisioning 100% of the requested bandwidth after a network element failure, − a demand to assure unsplittable flows in both IP and WDM layer, − the distance metrics and Bhandari’s algorithm [1] of finding k-node disjoint paths (here k = 2) in all path computations, except for the unprotected lightpaths for the backup LSP links, found by the Dijsktra’s shortest path algorithm, − the three-way handshake protocol of service restoration in WDM layer (the exchange of LINK FAIL, SETUP and CONFIRM messages). The algorithm of a single modeling scenario is shown in Fig. 6.
Fig. 4. U.S. Long-Distance Network (28 nodes, 45 bidirectional links)
Fig. 5. European COST 239 Network (19 nodes, 37 bidirectional links)
Repeat r* times the following steps: Step 1. Randomly choose 30 pairs (s, d) of nodes (6 demands for each service class). Step 2. Try to establish the survivable connections using the proposed algorithm. Step 3. Store the ratio of link capacity utilization and the lengths of the backup paths. Step 4. t* times simulate random failures of single nodes. For each failure state restore connections that were broken and store the connection restoration time values. *
in each scenario, r = 100 and t = 100 were assumed
Fig. 6. Research plan
A Novel Class-Based Protection Algorithm Providing Fast Service Recovery
343
4 Modeling Results 4.1 Average Link Capacity Utilization Ratio Table 1 shows the average ratios of link capacity utilization achieved during simulation. The amount of capacity needed for backup lightpath purposes turned out to be about two times higher, compared with the amount of capacity needed for active lightpaths. This was due to the fact that additional unprotected lightpaths were needed for backup LSPs to provide protection against the IP layer transit router failures. Table. 1. Average ratios of link capacity utilization Network U. S. Long-Distance COST 239
active lightpath capacity 3,43% 3,15%
backup lightpath capacity 8,60% 7,08%
total used capacity 12,03% 10,22%
4.2 Average Lengths and Numbers of Links of Connection Paths
4000
Average number of LSP links
Average length of LSPs [km]
Fig. 7 shows the average lengths of IP layer active and backup paths as the function of the service class number, while Fig. 8 gives the respective numbers of IP layer path links. Independent of the service class, the lengths of IP layer active and backup paths remain at the same level, implying similar network resource utilization for all the network classes. The average number of IP layer active path links decreases with the decrease of the service class number (Fig. 8). As a result, time-consuming IP layer recovery actions are less frequent for more important service classes. The average number of IP layer backup path links remains at the same level, independent of the service class, because each IP layer backup path link is established as the one-hop lightpath.
2000
0 0
1 2 3 4 Service Class Number active LSPs (US) backup LSPs (US) active LSPs (COST) backup LSPs (COST)
6 4 2 0 0 1 2 3 4 Service Class Number active LSPs (US) backup LSPs (US) active LSPs (COST) backup LSPs (COST)
\
Fig. 7. Average length of paths in the IP layer
Fig. 8. Average number of LSP links
Fig. 9 shows the average lengths of WDM layer lightpaths as the function of the service class number, while Fig. 10 gives the respective numbers of WDM layer path links. The average length of backup lightpaths remains at the same level, independent of the service class number. However, the average length of active lightpaths decreases with the increase of service class number. This is due to the fact that with the increase of the service class number, the number of IP layer active LSP links increases, and each active LSP link is realized by a shorter WDM lightpath.
W. Molisz and J. Rak 4000
Average number of lightpath llinks
Average length of WDM lightpaths [km]
344
2000
0
6 4 2 0
0
1 2 3 4 Service Class Number active lightpaths (US) backup lightpaths (US) active lightpaths (COST) backup lightpaths (COST)
0 1 2 3 4 Service Class Number active lightpaths (US) backup lightpaths (US) active lightpaths (COST) backup lightpaths (COST)
\
Fig. 9. Average length of WDM lightpaths
Fig. 10. Average number of lightpath links
4.3 Service Recovery Actions
6000 4000 2000 0 0
1 2 3 4 Service Class Number WDM layer (US) IP layer (US) WDM layer (COST) IP layer (COST)
Average values of service restoration time [ms]
Toral numbers of restored connections
Fig. 11 shows the aggregate numbers of recovery actions for both IP and WDM layer measured in a single scenario. It shows that with the increase of the service class number, the number of recovery actions in IP layer increases, while the number of recovery actions at WDM layer decreases. For the class 0 it implies that WDM layer recovery actions are sufficient to handle all the failure cases and, as a result, provide fast service recovery as given in Fig. 12. For the other service classes, due to the existence of IP layer active path transit nodes, the more IP layer transit nodes the IP active LSP traverses, the higher frequency of IP layer service recovery actions occurs. The average values of service recovery times in WDM layer remain at the same low level, characteristic to link protection scheme. This is true independent of the service class number, since similar scopes of protection a