# A Secure Internet of Things Smart Home Network: Design and Configuration
## 1 Introduction  
Internet of Things (IoT) networks refers to connecting devices to the Internet [1]. Connected devices receive instructions from the IoT network and transmit data over the network with minimal human intervention. To enable IoT services, a messaging protocol is required to allow IoT devices to exchange information at remote locations. These application protocols provide device accessibility to IoT networks through the transport layer of the Internet Protocol stack. HTTP (Hypertext Transfer Protocol) [2] is the most widely used and widely used application protocol.  
The processing power of many IoT devices is often limited by limited available resources in terms of computational power and bandwidth. The problem with HTTP is that it requires significant control packet overhead along with the request/response model. On the other hand, the protocols required by IoT services are the support of a small code footprint, low power consumption, low bandwidth consumption, and high latency. For this, we choose MQTT (Message Queuing Telemetry Transport).  
MQTT is a lightweight messaging protocol designed for devices with limited computing power in unreliable networks. It uses a topic-based publish/subscribe model andconverts messages between devices. Devices of the MQTT protocol are considered clients. The client communicates with a dedicated server called a broker. Whenever a client wants to distribute information, it posts information to the broker under that topic. The broker then sends the posted information to clients that have subscribed to the topic. In other words, clients communicate indirectly about a particular topic through a broker that is responsible for controlling the operations of data transfer between clients.  
The MQTT specification recommends the use of Secure Socket Layer (SSL) or Transport Layer Security (TLS) as a complementary protocol for security, but for simplicity, no security protocol is built into the application layer. In addition, due to its lightweight protocol capabilities, many researchers have made it an important priority to provide additional security to MQTT by encrypting application data with low computational overhead. Another option is to improve the data transfer speed and more reliable data transfer in a timely manner, especially for processing multimedia data.  
Recently, more home multimedia appliances have joined the IoT network, and many people want to bring the power of IoT network by configuring an IoT server as part of their smart, multimedia, home network. However, since we need to configure a server, there exists an IP address-related technical issue in operating it in home networks. While we agree with the IoT research community in prioritizing of the MQTT protocol, our current work focuses on designing the home network itself and its configuration experiments for IoT service supporting wide range of applications including real-time multimedia applications. With our network configuration, all parts of the home network have access to external networks while access to the IoT server either from the home network or external networks is only granted to the authorized IoT clients. At the same time, other parts of the home network excluding the IoT entities are strategically protected from the internal and external access.  
The rest of this paper is organized as follows. Section 2 briefly introduces the MQTT protocol and its related works. In Section 3, we state our goals for the network design and its configuration methodology using a packet tracer network emulator while Section 4 demonstrates the operation of the configured network with the emulator. We conclude the paper and suggest our future work in Section 5.