Abstract
Software-defined networking (SDN) has received tremendous attention from both industry and academia. The centralized control plane in SDN has a global view of the network and can be used to provide more effective solutions for complex problems, such as traffic engineering. This study is motivated by recent advancement in SDN and increasing popularity of multicasting applications. We propose a technique to increase the resiliency of multicasting in SDN based on the subtree protection mechanism. Multicasting is a group communication technology, which uses the network infrastructure efficiently by sending the data only once from one or multiple sources to a group of receivers that share a common path. Multicasting applications, e.g., live video streaming and video conferencing, become popular, but they are delay-sensitive applications. Failures in an ongoing multicast session can cause packet losses and delay, which can significantly affect quality of service (QoS). In this study, we adapt a subtree-based technique to protect a multicast tree constructed for OpenFlow switches in SDN. The proposed algorithm can detect link or node failures from a multicast tree and then determines which part of the multicast tree requires changes in the flow table to recover from the failure. With a centralized controller in SDN, the backup paths can be created much more effectively in comparison to the signaling approach used in traditional multiprotocol label switching (MPLS) networks for backup paths, which makes the subtree-based protection mechanism feasible. We also implement a prototype of the algorithm in the POX controller and measure its performance by emulating failures in different tree topologies in Mininet.
Similar content being viewed by others
References
Akyildiz, I.F., Lee, A., Wang, P., et al., 2014. A roadmap for traffic engineering in SDN-OpenFlow networks. Comput. Netw., 71: 1–30. http://dx.doi.org/10.1016/j.comnet.2014.06.002
Bondan, L., Müller, L.F., Kist, M., 2012. Multiflow: multicast clean-slate with anticipated route calculation on Open-Flow programmable networks. J. Appl. Comput. Res., 2(2): 68–74. http://dx.doi.org/10.4013/jacr.2012.22.02
Cain, B., Deering, S., Kouvelas, I., et al., 2002. Internet Group Management Protocol, Version 3. RFC 3376. Internet Engineering Task Force, Fermont. Available from http://www.ietf.org/rfc/rfc3376.txt.
Congdon, P., 2002. Link Layer Discovery Protocol. RFC 2922. Available from https://tools.ietf.org/html/rfc2922.
Craig, A., 2014. GroupFlow. Available from https://github. com/alexcraig/GroupFlow.
Craig, A., Nandy, B., Lambadaris, I., et al., 2015. Load balancing for multicast traffic in SDN using real-time link cost modification. IEEE Int. Conf. on Communications, p.5789–5795. http://dx.doi.org/10.1109/ICC.2015.7249245
Das, S., 2012. PAC.C: a Unified Control Architecture for Packet and Circuit Network Convergence. PhD Thesis, Stanford University, USA.
Farhady, H., Lee, H., Nakao, A., 2015. Software-defined networking: a survey. Comput. Netw., 81: 79–95. http://dx.doi.org/10.1016/j.comnet.2015.02.014
Fei, A.G., Cui, J.H., Gerla, M., et al., 2001. A “dual-tree” scheme for fault-tolerant multicast. IEEE Int. Conf. on Communications, p.690–694. http://dx.doi.org/10.1109/ICC.2001.937328
Fenner, B., Handley, M., Holrook, H., et al., 2006. Protocol Independent Multicast-Sparse Mode (PIM-SM): Protocol Specification (Revised). RFC 4601. Internet Engineering Task Force, Fremont. Available from https://tools.ietf.org/ html/rfc4601.
Floodlight, 2015. Project Floodlight—Open Source Software for Building Software-Defined Networks. Available from http://www.projectfloodlight.org/floodlight/.
Huang, W.L., Guo, H.Y., 2009. A fault-tolerant strategy for multicasting in MPLS networks. Proc. Int. Conf. on Computer Engineering and Technology, p.432–435. http://dx.doi.org/10.1109/ICCET.2009.138
Katz, D., Ward, D., 2010. Bidirectional Forwarding Detection (BFD). RFC 5880. Internet Engineering Task Force, Fremont. Available from https://tools.ietf.org/html/rfc 5880.
Kempf, J., Bellagamba, E., Kern, A., et al., 2012. Scalable fault management for OpenFlow. Proc. IEEE Int. Conf. on Communications, p.6606–6610. http://dx.doi.org/10.1109/ICC.2012.6364688
Kitsuwan, N., McGettrick, S., Slyne, F., et al., 2015. Independent transient plane design for protection in OpenFlow-based networks. J. Opt. Commun. Netw., 7(4): 264–275. http://dx.doi.org/10.1364/JOCN.7.000264
Kotani, D., Suzuki, K., Shimonishi, H., 2012. A design and implementation of OpenFlow controller handling IP multicast with fast tree switching. IEEE/IPSJ 12th Int. Symp. on Applications and the Internet, p.60–67. http://dx.doi.org/10.1109/SAINT.2012.17
Kreutz, D., Ramos, F.M.V., Verí ssimo, P.E., et al., 2015. Software-defined networking: a comprehensive survey. Proc. IEEE, 103(1): 14–76. http://dx.doi.org/10.1109/JPROC.2014.2371999
Lantz, B., Heller, B., McKeown, N., 2010. A network in a laptop: rapid prototyping for software-defined networks. Proc. 9th ACM SIGCOMM Workshop on Hot Topics in Networks, p.19. http://dx.doi.org/10.1145/1868447.1868466
Lee, M.W., Li, Y.S., Huang, X., et al., 2014. Robust multipath multicast routing algorithms for videos in softwaredefined networks. Proc. IEEE 22nd Int Symp. of Quality of Service, p.218–227. http://dx.doi.org/10.1109/IWQoS.2014.6914322
Marcondes, C.A.C., Santos, T.P.C., Godoy, A.P., et al., 2012. CastFlow: clean-slate multicast approach using inadvance path processing in programmable networks. IEEE Symp. on Computers and Communications, p.94–101. http://dx.doi.org/10.1109/ISCC.2012.6249274
McKewon, N., Anderson, T., Balakrishnan, H., 2008. OpenFlow: enabling innovation in campus networks. ACM SIGCOMM Comput. Commun. Rev., 38(2): 69–74. http://dx.doi.org/10.1145/1355734.1355746
Medard, M., Finn, S.G., Barry, R.A., et al., 1999. Redundant trees for preplanned recovery in arbitrary vertexredundant or edge-redundant graphs. IEEE/ACM Trans. Netw., 7(5): 641–652. http://dx.doi.org/10.1109/90.803380
Moy, J., 1994. MOSPF: Analysis and Experience. RFC 1585. Internet Engineering Task Force, Fremont. Available from https://tools.ietf.org/html/rfc1585.
Nakagawa, Y., Hyoudou, K., Shimizu, T., 2012. A management method of IP multicast in overlay networks using OpenFlow. Proc. 1st Workshop on Hot Topics in Software Defined Networks, p.91–96. http://dx.doi.org/10.1145/2342441.2342460
Open Networking Foundation (ONF), 2012. Software-Defined Networking: the New Norm for Networks. ONF White Paper. Available from https://www.opennetworking.org/ images/stories/downloads/sdn-resources/white-papers/wpsdn-newnorm.pdf.
Osborne, E., Simha, A., 2002. Traffic Engineering with MPLS. Cisco Press, Indianapolis, USA.
Pan, P., Swallow, G., Atlas, A., 2005. Fast Reroute Extensions to RSVP-TE for LSP Tunnels. RFC 4090. Internet Engineering Task Force, Fremont. Available from https://tools.ietf.org/html/rfc4090.
Pfeiffenberger, T., Du, J.L., Arruda, P.B., et al., 2015. Reliable and flexible communications for power systems: fault-tolerant multicast with SDN/OpenFlow. 7th IFIP Int. Conf. on New Technologies, Mobility, and Security, p.1–6. http://dx.doi.org/10.1109/NTMS.2015.7266517
Pointurier, Y., 2002. Link Failure Recovery for MPLS Networks with Multicasting. MS Thesis, University of Virginia, Charlottesville, USA.
POXST, 2016. POX Spanning Tree. Available from https://github.com/noxrepo/pox/blob/carp/pox/openflow/spanning_tree.py.
POXTD, 2014. POX Topology Discovery. Available from https://github.com/noxrepo/pox/blob/carp/pox/openflow/ discovery.py.
Python, 2015. Python Time Complexity. Available from https://wiki.python.org/moin/TimeComplexity.
Renganathan Raja, V., Pandey, A., Lung, C.H., 2015. An OpenFlow-based approach to failure detection and protection for a multicasting tree. LNCS, 9071: 211–224. http://dx.doi.org/10.1007/978-3-319-22572-2_15
Rückert, J., Blendin, J., Hark, R., et al., 2015. An Extended Study of DynSdm: Software-Defined Multicast Using Multi-trees. Technical Report, No. RS-TR-2015-01. Technische Universität Darmstadt, Darmstadt, Germany.
Saidi, M.Y., Cousin, B., Molnar, M., 2006. Improved dual-forest for multicast protection. 2nd Conf. on Next Generation Internet Design and Engineering, p.371–378. http://dx.doi.org/10.1109/NGI.2006.1678265
Sharafat, A.R., Das, S., Parulkar, G., et al., 2011. MPLS-TE and MPLS VPNs with OpenFlow. Proc. ACM SIGCOMM, p.452–453. http://dx.doi.org/10.1145/2018436.2018516
Tiso, J., 2011. Designing Cisco Network Service Architectures (ARCH): Developing an Optimum Design for Layer 3 (CCDP). Cisco Press, Indianapolis, USA.
van Adrichem, N.L.M., van Asten, B.J., Kuipers, F., 2014. Fast recovery in software-defined networks. Proc. 3rd European Workshop Software Defined Networking, p.61–66. http://dx.doi.org/10.1109/EWSDN.2014.13
Wei, G.M., Lung, C.H., Srinivasan, A., 2010. Protecting a MPLS multicast session tree with bounded switchover time. Int. Symp. on Performance Evaluation of Computer and Telecommunication Systems, p.236–243.
Xu, X.R., Myres, A.C., Zhang, H., et al., 1997. Resilient multicast support for continuous-media applications, IEEE 7th Int. Workshop on Network and Operating System Support for Digital Audio and Video, p.183–194. http://dx.doi.org/10.1109/NOSDAV.1997.629385
Zhou, Y.L., Zhang, Y.S., 2009. An aggregated multicast fault tolerant approach based on sibling node backup in MPLS. Int. Conf. on Information Engineering and Computer Science, p.1–4. http://dx.doi.org/10.1109/ICIECS.2009.5364380
Author information
Authors and Affiliations
Corresponding author
Additional information
A preliminary version was presented at the 13th Wireless and Wired International Conference, Malaga, Spain, May 25–27, 2015
ORCID: Chung-Horng LUNG, http://orcid.org/0000-0002-5662-490X
Rights and permissions
About this article
Cite this article
Renganathan Raja, V., Lung, CH., Pandey, A. et al. A subtree-based approach to failure detection and protection for multicast in SDN. Frontiers Inf Technol Electronic Eng 17, 682–700 (2016). https://doi.org/10.1631/FITEE.1601135
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1631/FITEE.1601135
Keywords
- Software-defined networks (SDNs)
- OpenFlow
- Multicast tree
- Protection
- POX controller
- Mininet
- Multiprotocol label switching (MPLS)