Fault-Tolerance of Capillary Multi-Path Routing for Real-Time Multimedia Streaming with Forward Error Correction

 

Emin Gabrielyan

EPFL and Switzernet Sàrl

Lausanne, Switzerland

emin.gabrielyan@switzernet.com

Roger D. Hersch

Swiss Federal Institute of Technology – EPFL

Lausanne, Switzerland

rd.hersch@epfl.ch

 

Packetized communications over Internet behave like erasure channels and the erasure resilient FEC codes can be applied to combat packet losses. For numerous packetized off-line applications, erasure resilient codes yield spectacular results. Raptor code makes possible satellite broadcasts of voluminous updates of GPS maps to millions of motor vehicles at arbitrary fragmental visibility without a feed-back channel [1]. In a film industry the film footage can be delivered over lossy Internet across many thousands of miles, thanks to LT codes [2]. Off-line streaming benefits from application of FEC because, contrary to real-time streaming, the sender is not obliged to deliver in time “fresh” packets of a very short life time and the buffer size is not a concern. With limited buffering time, FEC can only mitigate short granular failures. Many studies reported weak or negligible improvements from application of FEC to real-time streaming [3], [4], [5] and [6].

FEC however can be a mean for achieving fault-tolerance also in real-time streaming, but other dimensions, replacing the long buffering time must be exploited. Studies stressing the poor FEC efficiency always assumed that the media stream follows a single path. There is an emerging body of a literature demonstrating the applicability of FEC in real-time streaming, if combined with path diversity [7], [8], [9] and [10]. These studies are stressing the advantageousness of the path diversity being compared only with single path routing approach and the considered multi-path routing patterns are simple and are limited to only two alternative paths or in the best case to a sequence of parallel and serial links. The multi-path routing topologies, so far, were not regarded as a space of solutions and a ground for searching FEC-friendly patterns. In this paper we present a comparative study across a wide range of multi-path routing patterns. Single path routing, being considered as too hostile is excluded from our comparison system.

As means for achieving multi-path routing we propose capillary routing, seeking to minimize the impact of individual link failures to the media stream. The capillary routing is built layer by layer, providing at each layer a different routing pattern. In the first layer the alternative paths are discovered by minimizing the maximal loads of all links. Further equilibration is obtained by minimizing in the second layer the maximal load of all links, but now without the bottlenecks of the first layer’s routing. The solution of the second layer leads to the sub-routes and the sub-bottlenecks of the second layer. The successive layers are constructed similarly until the entire footprint of the flow is discovered. Contrary to the shortest path or max-flow routing capillary routing has only one solution. A flow traversing a large network with hundreds of nodes may have hundreds of capillary routing layers.

The friendliness of a routing is measured with an imaginary application employing end-to-end adaptive FEC for combating link failures. The FEC block, carrying a fixed number of source media packets (10 or 20 in our measurements), has a variable size, which is a function of the percentage of packet losses p reported by the receiver. The FEC(p) function is computed assuming Reed-Solomon code taking into account the desired decoding failure probability ( in our example). Most of real-time streaming applications already tolerate a certain constant level of packet losses (e.g. about 9% for VOIP). The permanent tolerance can be also obtained or increased by incorporating a constant amount of FEC. If the loss rate p measured at the receiver is about to exceed the critical tolerable level, the sender increases its transmission rate, by sending according to the FEC(p) function a sufficient surplus of redundancy. Adjustable FEC in real-time streaming was already proposed by several authors [11], [12], [5], [3] and [4]. Although the proposed end-to-end adaptive FEC mechanism is not aware of the underlying routing and is implemented entirely at the application level, the friendliness of the routing pattern is measured by the total amount of the failure recovery adaptive redundancy needed from the sender during the communication time, i.e. by Adaptive Redundancy Overall Need (ARON); see the equation.

Here, L is the set of all links in the communication path, the percentage  of recoverable losses is the level of the tolerance permanently maintained by the media stream, and r(l) is the load of a link  under the routing pattern (note that a temporary congestion or a failure of one of the links produces random losses, corresponding to the portion of the traffic being still routed toward this faulty link).

Text Box:  
Fig.1.	Adaptive Redundancy Overall Need as a function from the capillary routing layer

By computing the ARON ratings of capillary routing layers we show that by capillarization of the flow (i.e. by recursively spreading and equilibrating the sub-flows of the main flow) the routing pattern becomes much friendlier toward FEC. Multi-path routing similarly to buffering can significantly burst the efficiency of FEC. The chart of Fig.1 shows on 300 network samples (divided in 7 groups) the decrease of the average ARON cost as the capillary routing layer increases. The three curves correspond to the static tolerance levels of 5.4%, 6.6% and 7.8%. The network samples are obtained from a random walk Mobile Ad-hoc Network (MANET) with 115 nodes.

 

[1]   A. Shokrollahi, “Raptor codes”, ISIT’04, Jun 27 - Jul 2, p 36

[2]   M. Luby, “LT codes”, FOCS’02, Nov 16-19, pp 271-280

[3]   I. Johansson, T. Frankkila, P. Synnergren, “Bandwidth efficient AMR operation for VoIP”, Speech Coding 2002, IEEE Workshop, Oct 6-9, pp 150-152

[4]   Y. Huang, J. Korhonen, Y. Wang, “Optimization of Source and Channel Coding for Voice Over IP”, ICME’05, Jul 06, pp 173-176

[5]   C. Padhye, K. J. Christensen, W. Moreno, “A new adaptive FEC loss control algorithm for voice over IP applications”, IPCCC’00, Feb 20-22, pp 307-313

[6]   E. Altman, C. Barakat, V. M. Ramos, “Queueing analysis of simple FEC schemes for IP telephony”, INFOCOM’01, Vol. 2, Apr 22-26, pp 796-804

[7]   Q. Qu, I. V. Bajic, X. Tian, J. W. Modestino, “On the effects of path correlation in multi-path video communications using FEC over lossy packet networks”, GLOBECOM’04, Vol. 2, Nov 29 - Dec 3, pp 977-981

[8]   T. Thongpook, “Load balancing of adaptive zone routing in ad hoc networks”, TENCON’04, Vol. B, Nov 21-24, pp 672-675

[9]   R. Ma, J. Ilow, “Regenerating nodes for real-time transmissions in multi-hop wireless networks”, LCN’04, Nov. 16-18, pp 378-384

[10] T. Nguyen, P. Mehra, A. Zakhor, “Path diversity and bandwidth allocation for multimedia streaming”, ICME’03 Vol. 1,  Jul 6-9, pp 663-672

[11] S. Kang, D. Loguinov, “Impact of FEC overhead on scalable video streaming”, NOSSDAV’05, Jun 12-14, pp 123-128

[12] Y. Xu, T. Zhang, “An adaptive redundancy technique for wireless indoor multicasting”, ISCC’00, Jul 3-6, pp 607-614