9,224
Views
8
CrossRef citations to date
0
Altmetric
Review Article

SDN in the home: A survey of home network solutions using Software Defined Networking

, & ORCID Icon
Article: 1469949 | Received 23 Jan 2018, Accepted 18 Apr 2018, Published online: 04 Jun 2018

Abstract

Software Defined Networking (SDN) is an important paradigm shift of computer networking in the last 10 years. The concept of SDN is so powerful that the potential of applying it can easily be perceived beyond the initial use case of large data centre networks. We are motivated by this perception to explore the potential use of SDN in the context of home networks specifically, even though home environments were not the driving scenario behind SDN in the first years of its development. Lacking other reviews on the subject, we performed a focused search for every article that proposes, discusses or otherwise addresses the idea of implementing SDN in home networking. We surveyed four major technical and online databases (IEEE Xplore, ACM, ScienceDirect and Wiley) to ensure the inclusion of relevant, quality and authentic works. The final filtered set included 42 articles that spanned the period from 2010 to 2017. Most of the articles address specific aspects of controlling and managing home networks, such as Quality of Experience, security, Internet caps, Internet-of-Things device management and other specific themes, while the rest of articles address the generic case of managing home networks using SDN without a special focus on a particular target application. We derive a simple taxonomy for the works on home SDN and summarize the complete set of works, highlighting few points along the way and drawing few simple statistics.

Public Interest Statement

In the past, home networks used to be small, connecting a couple of computers to the Internet, mainly for browsing websites. Today, these networks are complex, connecting various devices, from computers and smartphones to TVs and Internet-of-Things (IoT) devices. Our applications have grown from simple web browsing to live video streaming. Our diverse needs require complicated configuration that cannot be managed by occasional calls to technical support. Unfortunately, current networking technology expects low-level knowledge that is beyond the average user, and specialists cannot simplify this task for non-specialists (a common practice in IT industry) because there is no open interfaces, and no programmability. These are the keywords that SDN is addressing. Though SDN is primarily driven by applications of data centres, researchers started to explore its application in home networks to give home users the control over their networks. The purpose of this article is to survey and summarize the landscape of research on this particular topic for the networking community and the general public.

1. Introduction

Software Defined Networking (SDN) is the latest major trend in computer networking that promises to create a whole paradigm shift. The formulation of SDN started in academia in 2008 as a response to the difficulties that face professionals in managing today’s networks. The problem of current network appliances is that they are typically manufactured by individual vendors and combine the essential functions of forwarding packets along with proprietary control software to control those functions. Proprietary interfaces are usually used to configure the devices for higher-level policies. As a result, the management of network functions is closely tied to the individual hardware devices, which in turn are associated with individual vendors and proprietary interfaces.

The whole idea behind SDN is to introduce a separation between the actual forwarding functions of the network that can be performed in hardware (collectively named as the forwarding layer of the network) and the management of those functions that can be expressed in software (collectively named as the control plane of the network). This separation of concerns holds the promise of more flexible network architecture that allows for innovation, and eases the task of network management.

Despite the revolutionary impact that SDN carries to the whole scene of networking today, it is safe to state that the premier driver behind SDN is the modern data centre, where the sheer number of servers, the required agility of reconfigurations and the traffic patterns make the new features of SDN very attractive and in great demand. Nevertheless, the SDN technology can bring important innovations to other domains as well, especially when the level of complexity increases to the extent where traditional networks can offer little help. One particular domain that started to receive an increasing attention by network researchers is the management of home networks.

Home networks are getting harder to manage as more devices are connected, and new applications are introduced, spanning the whole range from home entertainment, communication and social networking up to performing work from home. Started as simple connections of user computers to the Internet, home networks have considerably evolved during the last decades, and the number of devices they connect is exploding: from an initial situation with a few PCs, a set-top-box and a residential Home Gateway, then the emergence of many multimedia devices (media servers, tablets, smartphones, connected TVs, etc.), and up to the recent arrival of consumer IoT devices such as connected thermostats and weather stations. Integrating these different devices into home networks is challenging as there are two contradicting requirements to increase their acceptance ratio: ease of use versus tight control of information flows to enforce user privacy and user preferences (e.g. controlling who accesses the devices and where collected information is sent).

In that regard, an interesting characteristic of SDN applied to the connected home is to greatly facilitate the home network management by virtualising the home network infrastructure. Based on this premise, a number of research studies started to address this potential application of SDN and explore the ways in which SDN can help put the control of home networks into the hands of their users. Despite the fact that this line of research is already active since the few last years, we cannot find a dedicated reference for the various works and proposals up to this point, perhaps except a single review on wireless software defined networks, which includes a brief section on wireless home networks (Haque & Abu-Ghazaleh, Citation2016). Out of this need, we set up to survey the available works on this subject, summarising the researchers’ efforts in applying SDN to the home and mapping the literature into a unified taxonomy.

2. Background

This section provides the necessary background to understand the general problem of home networking and the very nature of SDN that makes this new paradigm a very attractive solution for that problem. This is a brief treatment, and the interested reader is referred to (Edwards, Grinter, Mahajan, & Wetherall, Citation2011; Feamster, Rexford, & Zegura, Citation2014; Grinter et al., Citation2009; Goransson, Black, & Culver, Citation2016; Kreutz et al., Citation2015; Nunes, Mendonca, Nguyen, Obraczka, & Turletti, Citation2014).

2.1. The problem of home network management

One major problem with managing home networks is the low-level configuration required to implement different controls, and the lack of this level of technical knowledge among home users. For example, a pertinent task in home networks is to manage the bandwidth of incoming broadband connection. If it is required to control the Internet usage cap, then there is a need to monitor the bandwidth usage and interfere when necessary. This functionality requires a level of statistical aggregation that is not easy to implement with current consumer switches and routers by home users. There is also no interface to report and then act upon those results. If the required control is bandwidth management with respect to individual devices or applications, then again, there is no easy way to implement this functionality with traditional networking devices in home. Similar functions can be found in larger networks (e.g. enterprise networks) using special middle boxes such as load balancers, but not in the home.

These types of control necessitate low-level configurations that are way beyond the capabilities of the average home user and that might require specialised network devices besides the typical home gateway. Obviously, a new model of configuring networking functions is needed, which can abstract the low-level details into higher-level control and provide a means of collecting an overall view of the network as well as an open interface to access network configuration. Here comes the role of SDN.

2.2. SDN architecture

The basic architecture of SDN is shown in Figure . The original design of SDN constitutes three major layers: infrastructure, controller and application layers as well as the interfaces between successive layers. From the bottom of the layered architecture in Figure , the infrastructure layer comprises network devices that perform packet forwarding, that is data forwarding; hence, the elements in this layer are also collectively called the data layer or the forwarding plane.

Figure 1. Basic architecture of SDN.

Figure 1. Basic architecture of SDN.

The first fundamental characteristic of SDN is the separation of the forwarding and control planes in networks devices. The forwarding plane implements forwarding functionality, including the logic and tables for choosing how to deal with incoming packets, based on characteristics such as MAC address, IP address, and VLAN ID. The fundamental actions performed by the forwarding plane can be described by how it dispatches arriving packets. It may forward, drop, consume, or replicate an incoming packet. It may also transform the packet in some manner before taking further action. For basic forwarding, the device determines the correct output port by performing a lookup in the address table in the hardware switch or router. A packet may be dropped due to buffer overflow conditions or due to specific filtering resulting from a quality of service (QoS) rate-limiting function, for example.

The logic and algorithms that are used to program the forwarding plane reside in the control plane. Many of these protocols and algorithms require global knowledge of the network. The control plane determines how the forwarding tables and logic in the data plane should be programmed or configured. Since in a traditional network each device has its own control plane, the primary task of that control plane is to run routing or switching protocols so that all the distributed forwarding tables on the devices throughout the network stay synchronised. In SDN, the control plane is moved off of the switching device and onto a centralised controller.

Building on the idea of separation of forwarding and control planes, the next characteristic of SDN is the simplification of network devices, which are then controlled by a centralised system that runs management and control software. Instead of hundreds of thousands of lines of complicated control plane software running on the device, allowing the device to behave autonomously, that software is removed from the device and placed in a centralised controller. This software-based controller may then manage the network based on higher-level policies. The controller provides primitive instructions to the simplified devices when appropriate in order to allow them to make fast decisions about how to deal with incoming packets.

The centralised software-based controller in SDN provides an open interface on the controller to allow for automated control of the network. In the context of SDN, the terms northbound and southbound are often used to distinguish whether the interface is to the applications or to the devices. These terms derive from the fact that in most diagrams the applications are depicted above (i.e. to the north of) the controller while devices are depicted below (i.e. to the south of) the controller. An example of a southbound API (Application Programming Interface) is the OpenFlow interface that the controller uses to program the network devices (McKeown et al., Citation2008). The controller offers a northbound API, allowing software applications to be plugged into the controller, and thereby allowing that software to provide the algorithms and protocols that can run the network efficiently. These applications can quickly and dynamically make network changes as the need arises.

The northbound API of the controller is intended to provide an abstraction of the network devices and topology. There are three key benefits that the application developer should derive from the northbound API: (1) it converts to a syntax that is more familiar to developers (e.g. REST or JSON); (2) it provides abstraction of the network topology and network layer allowing the application programmer to deal with the network as a whole rather than individual nodes; and (3) it provides abstraction of the network protocols themselves, hiding the application developer from the details of OpenFlow or BGP. In this way, applications can be developed that work over a wide array of manufacturers’ equipment that may differ substantially in their implementation details.

2.3. OpenFlow and SDN controllers

OpenFlow is an early protocol specification that describes the communication between OpenFlow switches and an OpenFlow controller. Historically, the term SDN did not come into use until a year after OpenFlow made its appearance in 2008. The OpenFlow protocol defines the specific messages and message formats exchanged between controller (control plane) and device (data plane). The OpenFlow behaviour specifies how the device should react in various situations, and how it should respond to commands from the controller. The protocol defines two switch components:

  1. A flow table that resides on the switch and performs packet lookup. The fields in each packet are compared to the flow table looking for a match. If a match between the packet headers and any entry of the flow table was found, then an action would be taken by the switch, depending on the found match. If there is no match, then the traffic is sent to the controller.

  2. A secure channel by which the switch communicates with the external controller.

Two mandatory actions in OpenFlow protocol specification are forwarding the packet and dropping it. Forwarding could be to all interfaces (except the incoming interface), to the controller, to the switch’s local network stack, to the interface specified by the table flow entry, or to the input port. There is an optional possible forwarding action specified in the OpenFlow protocol, which is to forward the packet in the same way as a normal switch would do, using the spanning tree algorithm. A flow entry with no specified action indicates that all matching packets should be dropped.

Apart from mandatory actions, the OpenFlow protocol specification defines optional actions, including the Modify action, whereby the switch may modify various packet header values such as the VLAN ID or the destination IP address. Another optional action is the Enqueue action, which sends the packet through a queue attached to a port. OpenFlow switches listen by default to a control port, through which a program called dpctl can communicate with the switch even in the absence of a controller. The dpctl program allows for performing operations such as inspecting flow table entries and modifying flows.

The OpenFlow specification includes details on metering, traffic monitoring, control channel encryption, handling control messages from multiple controllers, and many other details that can be found in the website of Open Network Foundation (Foundation, Citation2018).

Other SDN control architectures come from either research community, network vendors, or from the open source community. Among the different SDN controllers that have been introduced, few of the most popular controllers are: NOX/POX, Ryu, Floodlight, Pyretic, Frenetic and Procera. Considerations when choosing a particular controller include the programming language that the controller is written in (which can affect performance), the learning curve (how difficult is it to learn to write policies), the user base and community support, and the focus area of the controller.

2.4. How can SDN help?

As mentioned earlier, SDN separates the control plane from the data plane, providing the required abstraction of low-level layers into a logical view that can be understood and programmed by network developers. Providing an access into the configuration of network hardware through software programming is essential to allow users to manage their networks via high-level applications that are developed for them by third-party developers. Alternatively, users can outsource network configuration and management to service providers. Viewing the target management functions of each possible application as a separate control slice of the home network, trusted third parties can programmatically control different slices to better manage different functions, such as WiFi configuration, improving routing and implementing access control (e.g. configure WiFi channel and power to minimize interference and/or set parental controls).

Several other researchers have previously identified the need for applications and services within the home to cope with increasing complexity and heterogeneity. Few works suggested solutions that are independent of the SDN concept, such as creating new and separate operating system for the home in which users deal with applications and high-level policies to deal with integration and management of their network (Dixon et al., Citation2010) or using an OSGI (Open Service Gateway Initiative)-based framework to install applications on a residential gateway (Valtchev & Frankov, Citation2002). However, most of the recent works rely on the SDN technology, and particularly the OpenFlow-based solutions to address the problem of network management. This is the main focus of this article. Aside from the core management functions, and as a subset of those functions, significant work has been done to automate detection and diagnosis of faults in home networks, and to define the appropriate interaction and interfaces between the users and tools to manage and configure the home network (Agarwal et al., Citation2009).

3. Method

In this section, we present the exact steps we followed to select the surveyed papers on SDN in home networks. We explain the method in some detail to make sure it is clear and reproducible. Because the literature on SDN is quite vast, we focus on the most important keyword that distinguishes our target works from all other works on SDN; i.e. home or residential networks. No other restrictions are put on the search. We also limit our scope to the English literature.

Our search for target articles was conducted against four digital databases: (1) the IEEE Xplore library of technical literature in engineering and technology; (2) the ACM digital library on computing and information technology; (3) the ScienceDirect database of science, technical and medical journal articles; and (4) the Wiley online library, indexing cross-disciplinary research in life, health and physical sciences, social science, and the humanities. This selection of databases covers the most important, authentic and comprehensive technical sources. We also tried Springer Link as well as Taylor & Francis Online databases, but no results were found with respect to our search target.

We performed the process of study selection as follows. First, we searched the source databases using a specific query string that contains our target keywords. Then, the duplicates among different databases were removed. After that, we filtered the articles based on the abstract. Finally, few duplicate as well as irrelevant articles were excluded during the full-text reading of the screened articles from the first steps. We applied the same eligibility criteria over all screening iterations, which is to include any English work that reviews, proposes or discusses the use of SDN in home networking for any possible purpose or way.

The search was performed at the end of November 2017. We used a mix of keywords that contained ‘home’, ‘residential’, ‘software defined networking’, ‘software defined networks’, ‘SDN’ and ‘openflow’ with certain search operators to make sure that either ‘home’ or “residential” appears in the title, and at least one of the other keywords appears anywhere in the text.

4. Results

The initial query search resulted in 65 articles: 40 from IEEE Xplore, 20 from ACM library, 4 from ScienceDirect and only one result from Wiley online library, over the span form 2010 to 2017. Five articles were duplicates, where the same article resulted from more than one library databases or the same work was published in more than one venue (e.g. a proceedings and a journal). After scanning the abstracts and then reading the full-text, 18 more articles were excluded, resulting in 42 articles included in the final set. Those papers were studied for the purpose of mapping the current research on software defined home networking and find the general trends and directions in this emerging subfield.

The majority of the surveyed articles (35/42 articles) focus on special themes in the context of managing home networks, while the rest (7/42) address the problem of home network management in a generic perspective without focusing on a particular target application. Among the first group, the most popular theme is the Quality of Experience (QoE) for home network users (11/42 articles), in which the proposals mostly address the problems of bandwidth allocation and adaptive video streaming. Other groups of articles propose SDN to manage IoT smart-home devices (5/42), secure home networks (4/42), manage the usage of Internet (4/42), manage wireless access points (4/42), slice home networks (3/42), manage heterogeneous networks (1/42), automatically configure home networks (1/42), troubleshoot home networks (1/42) or address the problem of multi-home networking (1/42). The breakdown of these categories is shown in Figure .

Figure 2. Breakdown of survey results categorising the target application.

Figure 2. Breakdown of survey results categorising the target application.

4.1. A taxonomy of the surveyed works

Based on the resulting categories in Figure and the observed patterns and trends in the surveyed research papers, we have derived a basic taxonomy of all works on the subject, shown in Figure . We can distinguish between two overall trends in the surveyed works, one is general and the other is specialised. In the following subsections, we briefly list those works according to their category. A more detailed summary of all mentioned works can be found in the (Appendix).

Figure 3. A taxonomy of works on software defined home networks.

Figure 3. A taxonomy of works on software defined home networks.

4.1.1. Generic theme

Apart from the works that focus on a specific aspect of managing home networks, such as bandwidth allocation or security, several articles introduce their own approach of exploiting SDN in home networking, from a general perspective. Two of the first works in this category were developed as part of the Homework project (The University of Nottingham, Citation2012), and aimed at redesigning exiting home-network infrastructure (i.e. routers) based on the concepts of SDN to provide the user with better understanding and control as well as novel interfaces (Mortier et al., Citation2011, Citation2012). The authors in (Chetty & Feamster, Citation2012) take the home network as a case study to discuss how SDN can be used to refactor current networks and provide users with the correct level of network visibility and actionable information. The concept of virtualisation is suggested in the remaining works of this generic category (Boussard et al., Citation2014; Dillon & Winters, Citation2014; Flores Moyano, Fernández, Bellido, & González, Citation2017; Moyano, Cambronero, & Triana, Citation2017). These four works differ in their proposed architectures, but agree on virtualising the home network and delegating the management and control of the network to someone in the cloud, most probably the Internet Service Provider (ISP). This aims to remove the management burden from the user while providing the usability of the network.

4.1.2. Specialised themes

In this category, we can find few different themes. The general purpose is still to control and manage the home network using ideas and tools from the SDN paradigm, but the emphasis is put on a particular aspect of home networking in each work. We could recognize several specialised themes and summarised them into 10 different subcategories, some of which have only one paper each, but the theme is distinct enough to be highlighted and pointed out for further study and research.

The most popular subject in this category is the QoS and quality of user experience (QoE) when using home network applications (Abuteir, Fladenmuller, & Fourmaux, Citation2016; Agapiou, Papafili, & Agapiou, Citation2014; Bakhshi & Ghita, Citation2016; Bozkurt & Benson, Citation2016; Eghbali & Wong, Citation2015; Gharakheili, Bass, Exton, & Sivaraman, Citation2014; Jang, Huang, & Yeh, Citation2016; Kumar, Gharakheili, & Sivaraman, Citation2013; Moyano et al., Citation2017; Trajkovska, Aeschlimann, Marti, Bohnert, & Salvachúa, Citation2014; Yang, Wang, Nguyen, & Lu, Citation2016). The target application in these works is generally multimedia and video streaming, and the aim is to optimize bandwidth allocation for different network applications to improve the user experience. This optimisation is mostly based on the user preferences or profile, but can also be derived from dynamic traffic shaping based on collected traffic statistics (Abuteir, Fladenmuller, & Fourmaux, Citation2016), automatic identification of applications (Yang, Wang, Nguyen, & Lu, Citation2016) or a proposed bandwidth allocation algorithm (Jang, Huang, & Yeh, Citation2016). Most of the works enable the ISP of controlling the service quality from the cloud, though few works depend on local solution using in-home SDN controller (Abuteir et al., Citation2016), (Bozkurt & Benson, Citation2016), (Bakhshi & Ghita, Citation2016). One work also proposes a novel pricing scheme for ISPs, who can implement time-dependent hybrid pricing through SDN APIs (Eghbali & Wong, Citation2015).

Another distinct theme in this category is to address the issues related to IoT devices, in the context of smart home (Hernando, Fariña, Triana, Piñar, & Cambronero, Citation2017; Kim & Lee, Citation2015; Nobakht, Sivaraman, & Boreli, Citation2016; Sivaraman, Gharakheili, Vishwanath, Boreli, & Mehani, Citation2015; Xu, Wang, Wei, Song, & Mao, Citation2016). This perspective is unique and new to home networking, but its relevance is increasing in modern homes with the rise of the IoT paradigm. All network-enabled devices in the home are eventually forming an internet of things, and their management can consequently be considered a networking problem; hence, the SDN comes to mind. Within the papers on IoT home devices, some works focus on the problem of managing IoT devices, such as finding a device fault easily (Kim & Lee, Citation2015), integrating the heterogeneous network devices in smart home environments (Xu, Wang, Wei, Song, & Mao, Citation2016), and offering a portfolio of IoT-related functions to home users (Hernando, Fariña, Triana, Piñar, & Cambronero, Citation2017). Another focus point is to propose solutions for smart home and IoT device security (Nobakht et al., Citation2016, Sivaraman, Gharakheili, Vishwanath, Boreli, & Mehani, Citation2015).

Apart from IoT, targeting the application of home network security is also a common theme. One of the earliest works in the complete set of the surveyed papers proposed that users outsource the management tasks related to security to a third party controller who has the required expertise and capacity to monitor coordinated activities over the Internet (Feamster, Citation2010). Another work proposes a multi-stage attack mitigation mechanism for home networks using SDN (Luo, Wu, Li, & Guo, Citation2016). A home-level security proxy solution for the video conferencing applications (as a case study) is proposed in (Taylor, Shue, & Najd, Citation2016). Finally, a community-based crowdsourced home cyber-security system is proposed in (Stewart, Vasu, & Keller, Citation2017).

Because the caps of Internet usage is an increasing concern for home users, several works specifically address the problem of managing Internet use through the SDN architecture (Chetty et al., Citation2015; Gharakheili, Exton, Sivaraman, Matthews, & Russell, Citation2015; Kim, Sundaresan, Chetty, Feamster, & Edwards, Citation2011; Yiakoumis et al., Citation2012). An early work (Kim et al., Citation2011) demonstrates a system to collect usage statistics and reports them to a central controller, which displays usage information. The controller allows users to specify policies and enforces them, where policies dictate how different people, devices, and applications should consume the usage cap. The other works depend either on the ISP, where the users are allowed to choose the relative priority of their applications, and signal their preference to the ISP (Yiakoumis et al., Citation2012), or allow a third party to control the Internet traffic usage (Gharakheili, Exton, Sivaraman, Matthews, & Russell, Citation2015), (Chetty et al., Citation2015).

Another group of papers address the specific issues arising from managing home WiFi access points (Patro & Banerjee, Citation2015a, Citation2015b; Schulz-Zander, Mayer, Ciobotaru, Schmid, & Feldmann, Citation2015), or in general all multi-technology wireless network devices (Gallo, Kosek-Szott, Szott, & Tinnirello, Citation2016). Few papers adopt the concept of network slicing (Fratczak, Broadbent, Georgopoulos, & Race, Citation2013; Wang, Wu, Chen, Wang, & Li, Citation2014; Yiakoumis, Yap, Katti, Parulkar, & McKeown, Citation2011). Network slicing is a promising technique that creates different slices over the same physical home network, so that each slice is independently controllable and can be isolated for different services. The management of slices may be assigned to a third party.

Finally, the last four papers in our collection are directed toward four special target applications. The first work proposes the instrumentation of home networks to enable their troubleshooting (Calvert et al., Citation2011). This work presents the design requirements of a general-purpose home network logging platform that can record events supporting troubleshooting services for home network users. A second work discusses the idea of multi-home networking (Jo, Lee, & Kim, Citation2014), enabling on-demand provisioning of networked multi-home multimedia applications using SDN-based in-home consumer electronic devices. The automatic configuration of home networks is also addressed in (Lee, Kim, & Lee, Citation2015), which proposes a method where SDN controller performs auto-recognition and registration of home devices, then manages home devices according to the home network connection state. The final work addresses the problem of heterogeneity in home networks, and evaluates the ability of OpenFlow-enabled switches to manage heterogeneous home networks by utilising redundant links for flow rerouting and performing link switching between wired and wireless technologies both under normal conditions and in case of link failures (Soetens, Famaey, Verstappen, & Latré, Citation2015).

4.2. Basic statistics

This subsection presents few basic statistics to highlight a couple of points. The first one is shown in Figure , and illustrates the number of published works on using SDN in home networks by the year. Despite the slight regression in 2017, the last 3 years witnessed an increased interest of researchers in the topic of software-defined home networking. Another interesting observation is the extent to which the proposed solutions rely on entities outside the home to manage the home network. Figure compares the number of proposals that are based on a third party or the cloud (e.g. an ISP) to the number of proposals that manage the home network locally within the home itself without outsourcing any task to the cloud. ‘Na’ in the figure refers to the cases where this detail is not available. Finally, Figure depicts the number of works based on the OpenFlow protocol. As expected, excluding a few works where there are no exact implementation details, OpenFlow is used in most of the works. This comes as no surprise for the most popular open protocol in SDN implementations.

Figure 4. Number of surveyed papers by year.

Figure 4. Number of surveyed papers by year.

Figure 5. Classification of works according to whether they are based on a third party or cloud.

Figure 5. Classification of works according to whether they are based on a third party or cloud.

Figure 6. Classification of works according to whether they are based on OpenFlow.

Figure 6. Classification of works according to whether they are based on OpenFlow.

5. Discussion

The purpose of this article is to explore the available works on using SDN in the realm of home networks. After a couple years of research into the paradigm of SDN that commenced circa 2008, researchers soon realised the value of the new idea in contexts other than data canters and large enterprise networks. Indeed, the challenges of modern home networks and the complexity of their management push towards new approaches and reminds every one of the flexibility and power that SDN can bring in. The separation of control from data makes it possible to isolate the low-level details of how home network devices work and provide the home user (or a third party for that matter) with a clean interface to control network operation exploiting the new programmability of networks. Many network management functions that are not possible to perform in current home networks by average home users become feasible, and easy to perform, with the help of SDN.

Based on the results of our survey, a couple of points may be worth highlighting in this discussion. First, it is apparent from the derived taxonomy that many individual tasks of network management can be the target of an SDN-based solution, such as Internet usage, security and QoE. Most of the surveyed works focused on these tasks and produced different architectures and prototypes to prove the concept of their design and demonstrate its implementation. Although these works have the SDN basis in common, they are independent of each other and, most probably, incompatible. Each one alone is also incomprehensive in terms of the whole range of network management tasks. This leads to the need for further studies to analyse, evaluate and combine these solutions into a unified framework, a sort of one-stop product for software defined home networking. We might eventually end with few such products, but the potential to integrate many of the proposed ideas is great.

Second, many solutions aim to put the control in the hands of the home user in managing their home networks. Whatever was the underpinning mechanism, all solutions would need to interface with the user at the front-end. The role of the interface is crucial; it should make various functionalities and information on the underlying network visible to the user, and allow the user to make changes in response to those information. As pointed out in (Chetty & Feamster, Citation2012), this raises questions on how to expose that kind of new functionality to the users using intuitive interfaces that improve their awareness of the network status and enable them of taking actions. For example, the downstream speed of the Internet broadband connection might be represented by the width of a pipe, and packet loss might be shown as certain traffic not making it all the way through the pipe. Slides and icons can represent various devices and dropdown lists can present available actions…etc. That being said, it is also important to remember that while a novice user needs understand no details, an expert user might gain additional insight from knowing the underlying details, and hence exposing various levels of visibility may be required.

Finally, an important point to notice is that most of the works suggest the involvement of a cloud-based, third party (such as the ISP) in the management of the virtualised home network. As pointed in (Chetty & Feamster, Citation2012) again, determining what information should be collected and presented to the operator is an area for future work. The challenge here is to balance the home user’s privacy with the need for an ISP operator to see the configuration, topology, and devices on the home network. From a security perspective, exposure to external entities may also increase the attack surface on the home network, as more channels and more information are open to outside the perimeter of the home network.

6. Conclusion

In this article, we have surveyed the state-of-the-art in applying the concept of SDN to the problem of managing home networks. Modern home users are quite familiar with the concept of programmability; the modern lifestyle involves a lot of interaction with programmable devices (e.g. computers and smartphones) that can be controlled by applications, using intuitive and attractive interfaces. SDN is a powerful paradigm that introduces the same idea of programmability to networked devices in the home, so that home networks can be controlled and managed through application-level interfaces. This idea has been investigated in a number of works by now. The purpose of this article was to scan, taxonomised and summarize these initial proposals. Basic statistics have been derived and few important points have been discussed. To the best of our knowledge, this is the first dedicated survey of using SDN in home network management, and we hope that it can provide the readers with an entry point to the emerging subfield of software defined home networking.

Acknowledgements

The authors would like to thank University Technikal Malaysia Melaka and INSFORNET Research Group for their incredible support by providing facilities to conduct the study.

Additional information

Funding

The authors received no direct funding for this research.

Notes on contributors

Ahmed Al-Haiqi

The work in this paper is part of a series of investigations on the emerging SDN technology and its applications in:

  • Home network management

  • Network security

  • Smart home implications

  • Privacy-aware smart metering in consumer households

Some of these topics are addressed in grant-based projects while others are part of our undergraduate students’ projects. These projects are a joint collaboration between Universiti Teknikal Malaysia Melaka, Faculty of Information and Communication Technology (INSFORNET research group) and Universiti Tenaga Nasional, Department of Electronic and Communications Engineering.

References

  • Abuteir, R. M. , Fladenmuller, A. , & Fourmaux, O. (2016). An SDN approach to adaptive video streaming in wireless home networks. In 2016 International wireless communications and mobile computing conference (IWCMC) (pp. 321–326).
  • Agapiou, G. , Papafili, I. , & Agapiou, S. (2014). The role of SDN and NFV for dynamic bandwidth allocation and QoE adaptation of video applications in home networks. In 2014 Euro med telco conference (EMTC) (pp. 1–4).
  • Agarwal, B. , Bhagwan, R. , Das, T. , Eswaran, S. , Padmanabhan, V. N. , & Voelker, G. M. (2009). NetPrints: Diagnosing home network misconfigurations using shared knowledge. NSDI , 9, 349–364.
  • Bakhshi, T. , & Ghita, B. (2016). User-centric traffic optimization in residential software defined networks. In 2016 23rd International conference on telecommunications (ICT) (pp. 1–6).
  • BeagleBoard.org - black. [Online]. Retrieved November 30, 2017 from https://beagleboard.org/black
  • Boussard, M. , Bui, D. T., Douville, R., Le Sauze, N., Noirie, L., Peloso, P., Varloot, R., & Vigoureux, M. (2014). The majord’home: A SDN approach to let isps manage and extend their customers’home networks. In 10th International conference on network and service management (CNSM) and workshop (pp. 430–433).
  • Bozkurt, I. N. , & Benson, T. (2016). Contextual router: Advancing experience oriented networking to the home. In Proceedings of the symposium on SDN research (p. 15: 1–15:7).
  • Calvert, K. L. , Edwards, W. K. , Feamster, N. , Grinter, R. E. , Deng, Y. , & Zhou, X. (2011, January). Instrumenting home networks. SIGCOMM computation communicable reviews , 41(1), 84–89. doi:10.1145/1925861
  • Chetty, M. , & Feamster, N. (2012, Jun). Refactoring network infrastructure to improve manageability: A case study of home networking. SIGCOMM computation communicable reviews , 42(3), 54–61. doi:10.1145/2317307
  • Chetty, M. , Haslem, D. , Baird, A. , Ofoha, U. , Sumner, B. , & Grinter, R. (2011). Why is my internet slow?: Making network speeds visible. In Proceedings of the SIGCHI conference on human factors in computing systems (pp. 1889–1898).
  • Chetty, M. , Kim, H. , Sundaresan, S. , Burnett, S. , Feamster, N. , & Edwards, W. K. (2015). uCap: An internet data management tool for the home. In Proceedings of the 33rd annual ACM conference on human factors in computing systems (pp. 3093–3102).
  • Cisco . Snort - network intrusion detection & prevention system. [Online]. Retrieved Nov 30, 2017 from https://www.snort.org/
  • Dillon, M. , & Winters, T. (2014, November). Virtualization of home network gateways. Computer (Long Beach California) , 47(11), 62–65.
  • Dixon, C., Mahajan, R., Agarwal, S., Brush, A. J., Lee, B., Saroiu, S., & Bahl, V. (2010). The home needs an operating system (and an app store). In Proceedings of the 9th ACM SIGCOMM workshop on hot topics in networks (p. 18).
  • Edwards, W. K. , Grinter, R. E. , Mahajan, R. , & Wetherall, D. (2011). Advancing the state of home networking. Communicable ACM , 54(6), 62–71. doi:10.1145/1953122
  • Eghbali, H. , & Wong, V. W. S. (2015). Bandwidth allocation and pricing for SDN-enabled home networks. In 2015 IEEe international conference on communications (ICC) (pp. 5342–5347).
  • The European Commission DG CONNECT in FP7 . Home - UNIFY project. [Online]. Retrieved Nov 28, 2017 from http://www.fp7-unify.eu/
  • Feamster, N. (2010). Outsourcing home network security. In Proceedings of the 2010 ACM SIGCOMM workshop on home networks (pp. 37–42).
  • Feamster, N. , Rexford, J. , & Zegura, E. (2014). The road to SDN: An intellectual history of programmable networks. ACM SIGCOMM Computation Communicable Reviews , 44(2), 87–98. doi:10.1145/2602204.2602219
  • FFmpeg. [Online]. Retrieved November 29, 2017 from https://www.ffmpeg.org/
  • Flores Moyano, R. , Fernández, D. , Bellido, L. , & González, C. (2017). A software-defined networking approach to improve service provision in residential networks. International Journal Network Managed . doi:10.1002/nem.1984
  • Foundation, O. N. Open networking foundation is an operator led consortium leveraging SDN, NFV and cloud technologies to transform operator networks and business models. [Online]. Retrieved Apr 01, 2018 from https://www.opennetworking.org/
  • Fratczak, T. , Broadbent, M. , Georgopoulos, P. , & Race, N. (2013). HomeVisor: Adapting home network environments. In 2013 Second European workshop on software defined networks (pp. 32–37).
  • Gallo, P. , Kosek-Szott, K. , Szott, S. , & Tinnirello, I. (2016). SDN@ home: A method for controlling future wireless home networks. IEEE Communicable Magazine , 54(5), 123–131. doi:10.1109/MCOM.2016.7470946
  • Gharakheili, H. H. , Bass, J. , Exton, L. , & Sivaraman, V. (2014). Personalizing the home network experience using cloud-based SDN. In Proceeding of IEEE International symposium on a world of wireless, mobile and multimedia networks 2014 (pp. 1–6).
  • Gharakheili, H. H. , Exton, L. , Sivaraman, V. , Matthews, J. , & Russell, C. (2015). Third-party customization of residential Internet sharing using SDN. In 2015 International telecommunication networks and applications conference (ITNAC) (pp. 214–219).
  • GitHub - noxrepo/nox . (2017). NOX network control platform. [Online]. Retrieved from https://github.com/noxrepo/nox
  • Goransson, P. , Black, C. , & Culver, T. (2016). Software defined networks: A comprehensive approach . Cambridge, MA: Morgan Kaufmann.
  • Grinter, R. E. , Greenhalgh, C. , Benford, S. , Edwards, W. K. , Chetty, M. , Poole, E. S. , … Rodden, T. (2009). The ins and outs of home networking: The case for useful and usable domestic networking. ACM Transactions Computation Interact , 16(2), 8. doi:10.1145/1534903
  • Haque, I. T. , & Abu-Ghazaleh, N. (2016). Wireless software defined networking: A survey and taxonomy. IEEE Communicable Survey Tutorials , 18(4), 2713–2737. doi:10.1109/COMST.2016.2571118
  • Hernando, A. B. G. , Fariña, A. D. S. , Triana, L. B. , Piñar, F. J. R. , & Cambronero, D. F. (2017). Virtualization of residential IoT functionality by using NFV and SDN. In 2017 IEEE international conference on consumer electronics (ICCE) (pp. 86–87).
  • Jang, H.-C. , Huang, C.-W. , & Yeh, F.-K. (2016). Design a bandwidth allocation framework for SDN based smart home. In 2016 IEEE 7th annual information technology, electronics and mobile communication conference (IEMCON) (pp. 1–6).
  • Jo, J. , Lee, S. , & Kim, J. W. (2014, August). Software-defined home networking devices for multi-home visual sharing. IEEE Transactions Consum Electronic , 60(3), 534–539. doi:10.1109/TCE.2014.6937340
  • Kim, H. , Sundaresan, S. , Chetty, M. , Feamster, N. , & Edwards, W. K. (2011). Communicating with caps: Managing usage caps in home networks. In Proceedings of the ACM SIGCOMM 2011 conference (pp. 470–471).
  • Kim, Y. , & Lee, Y. (2015). Automatic generation of social relationships between internet of things in smart home using SDn-based home cloud. In 2015 IEEE 29th International conference on advanced information networking and applications workshops (pp. 662–667).
  • Kreutz, D. , Ramos, F. M. V. , Verissimo, P. E. , Rothenberg, C. E. , Azodolmolky, S. , & Uhlig, S. (2015). Software-defined networking: A comprehensive survey. Proceedings IEEE , 103(1), 14–76. doi:10.1109/JPROC.2014.2371999
  • Kumar, H. , Gharakheili, H. H. , & Sivaraman, V. (2013). User control of quality of experience in home networks using SDN. In 2013 IEEE International conference on advanced networks and telecommunications systems (ANTS) (pp. 1–6).
  • Lee, M. , Kim, Y. , & Lee, Y. (2015). A home cloud-based home network auto-configuration using SDN. In 2015 IEEE 12th International conference on networking, sensing and control (pp. 444–449).
  • Luo, S. , Wu, J. , Li, J. , & Guo, L. (2016, May). A multi-stage attack mitigation mechanism for software-defined home networks. IEEE Transactions Consum Electronic , 62(2), 200–207. doi:10.1109/TCE.2016.7514720
  • McKeown, N. , Anderson, T. , Balakrishnan, H. , Parulkar, G. , Peterson, L. , Rexford, J. , … Turner, J. (2008). OpenFlow: Enabling innovation in campus networks. ACM SIGCOMM Computation Communicable Review , 38(2), 69–74. doi:10.1145/1355734
  • Monsanto, C. , Reich, J. , Foster, N. , Rexford, J. , & Walker, D. (2013). Composing software defined networks. NSDI , 13, 1–13.
  • Mortier, R., Bedwell, B., Glover, K., Lodge, T., Rodden, T., Rotsos, C., ... Sventek, J. (2011). Supporting novel home network management interfaces with openflow and NOX. In Proceedings of the ACM SIGCOMM 2011 Conference (pp. 464–465).
  • Mortier, R., Rodden, T., Lodge, T., McAuley, D., Rotsos, C., Moore, A. W., Koliousis, A. & Sventek, J. (2012). Control and understanding: Owning your home network. In 2012 Fourth International conference on communication systems and networks (COMSNETS 2012) (pp. 1–10).
  • Moyano, R. F. , Cambronero, D. F. , & Triana, L. B. (2017). A user-centric {SDN} management architecture for NFV-based residential networks. Computation Standards Interfaces , 54(Part 4), 279–292. doi:10.1016/j.csi.2017.01.010
  • Moyano, R. F. , Fernández, D. , Bellido, L. , Merayo, N. , Aguado, J. C. , & De Miguel, I. (2017). NFV-based QoS provision for software defined optical access and residential networks. In 2017 IEEE/ACM 25th International symposium on quality of service (IWQoS) (pp. 1–5).
  • ns-3. [Online]. Retrieved November 29, 2017 from https://www.nsnam.org/
  • Nobakht, M. , Sivaraman, V. , & Boreli, R. (2016). A host-based intrusion detection and mitigation framework for smart home IoT using OpenFlow. In 2016 11th International conference on availability, reliability and security (ARES) (pp. 147–156).
  • Nunes, B. A. A. , Mendonca, M. , Nguyen, X.-N. , Obraczka, K. , & Turletti, T. (2014). A survey of software-defined networking: Past, present, and future of programmable networks. IEEE Communicable Survey Tutorials , 16(3), 1617–1634. doi:10.1109/SURV.2014.012214.00180
  • OpenWrt. [Online]. Retrieved November 29, 2017 from https://openwrt.org/
  • Open vSwitch. 2017. [Online]. Retrieved November 20, 2017 from http://openvswitch.org/
  • Patro, A. , & Banerjee, S. (2014). COAP: A software-defined approach for home WLAN management through an Open API. In Proceedings of the 9th ACM workshop on mobility in the evolving internet architecture (pp. 31–36).
  • Patro, A. , & Banerjee, S. (2015a, January). COAP: A software-defined approach for home WLAN management through an Open API. SIGMOBILE Mobile Computation Communicable Reviews , 18(3), 32–40. doi:10.1145/2721896
  • Patro, A. , & Banerjee, S. (2015b). Outsourcing coordination and management of home wireless access points through an open API. In 2015 IEEE conference on computer communications (INFOCOM) (pp. 1454–1462).
  • Project BISmark (Broadband internet service benchmark). (2017). [Online]. Retrieved November 19, 2017 from http://projectbismark.net/
  • Project Floodlight . Floodlight OpenFlow controller-project floodlight. [Online]. Retrieved November 29, 2017 from http://www.projectfloodlight.org/floodlight/
  • Ryu SDN Framework Community . (2017). Ryu SDN framework. [Online]. Retrieved November 27, 2017 from https://osrg.github.io/ryu/
  • Schulz-Zander, J. , Mayer, C. , Ciobotaru, B. , Schmid, S. , & Feldmann, A. (2015). OpenSDWN: Programmatic control over home and enterprise WiFi,” in Proceedings of the 1st ACM SIGCOMM symposium on software defined networking research (p. 16: 1–16:12).
  • Sherwood, R. , Gibb, G. , Yap, K. K. , Appenzeller, G. , Casado, M. , McKeown, N. , … Parulkar, G. (2009). Flowvisor: A network virtualization layer. OpenFlow Switch Consortium, Technical Reports , 1, 132.
  • Sivaraman, V. , Gharakheili, H. H. , Vishwanath, A. , Boreli, R. , & Mehani, O. (2015). Network-level security and privacy control for smart-home IoT devices. In 2015 IEEE 11th International conference on wireless and mobile computing, networking and communications (WiMob) (pp. 163–167).
  • Soetens, N. , Famaey, J. , Verstappen, M. , & Latré, S. (2015). SDN-based management of heterogeneous home networks. In 2015 11th International conference on network and service management (CNSM) (pp. 402–405).
  • Stewart, C. E. , Vasu, A. M. , & Keller, E. (2017). CommunityGuard: A crowdsourced home cyber-security system. In Proceedings of the ACM International workshop on security in software defined networks & network function virtualization (pp. 1–6).
  • Taylor, C. R. , Shue, C. A. , & Najd, M. E. (2016). Whole home proxies: Bringing enterprise-grade security to residential networks. In 2016 IEEE International conference on communications (ICC) (pp. 1–6).
  • Trajkovska, I. , Aeschlimann, P. , Marti, C. , Bohnert, T. M. , & Salvachúa, J. (2014). SDN enabled QoS provision for online streaming services in residential ISP networks. In 2014 IEEE International conference on consumer electronics - taiwan (pp. 33–34).
  • The University of Nottingham . (2012). Homework – User-centred home networking. [Online]. Retrieved November 20, 2017 from http://homenetworks.ac.uk/
  • Valtchev, D. , & Frankov, I. (2002). Service gateway architecture for a smart home. IEEE Communicable Magazine , 40(4), 126–132. doi:10.1109/35.995862
  • Wang, S. , Wu, X. , Chen, H. , Wang, Y. , & Li, D. (2014) An optimal slicing strategy for SDN based smart home network. In 2014 International conference on smart computing (pp. 118–122).
  • Xu, K. , Wang, X. , Wei, W. , Song, H. , & Mao, B. (2016, May). Toward software defined smart home. IEEE Communicable Magazine , 54(5), 116–122. doi:10.1109/MCOM.2016.7470945
  • Yang, H. , Wang, X. , Nguyen, C.-T. , & Lu, S. (2016). Conan: Content-aware access network flow scheduling to improve QoE of home users. In Proceedings of the 2016 ACM SIGCOMM conference (pp. 575–576).
  • Yiakoumis, Y. , Katti, S. , Huang, T.-Y. , McKeown, N. , Yap, -K.-K. , & Johari, R. (2012). Putting home users in charge of their network. In Proceedings of the 2012 ACM conference on ubiquitous computing (pp. 1114–1119).
  • Yiakoumis, Y. , Yap, -K.-K. , Katti, S. , Parulkar, G. , & McKeown, N. (2011) Slicing home networks. In Proceedings of the 2Nd ACM SIGCOMM workshop on home networks (pp. 1–6).

Appendix:

A summary of the complete list of surveyed articles, sorted by year of publication