Domorela's Blog: Intranet of Things network deployment
As the Internet concept, IoT is constructed merging ICT technologies. To deploy IoT we need a TCP/IP network and an equivalent of WWW that usually is a Web Service, but could be another kind of service using the TCP/IP stack.
Said the above, the way to implement an Intranet of Things is mostly the same to implement Internet of Things, the main difference is that Intranet of Things is deployed using a secure private network in which a Private Cloud is deployed.
To be called Intranet, the network needs to be composed by private infrastructure. This can be achieved by deploying a LAN, CAN or MAN using different Communication Technologies to implement a wired or wireless physical network on which to implement a logical TCP/IP network. The most used technology to implement a LAN, even a CAN, is Ethernet Standard, that can be used in wired and wireless networks, but CAN and MAN are usually implemented using other International Telecom Union (ITU) standards used in Broadband Networks such as Multiprotocol Label Switching (MPLS), based on Asynchronous Transfer Mode (ATM), that are being driven by the Broadband Forum (BBF).
In the case of using wireless networks we strongly recommend to implement secure TCP/IP communications in order to add another layer of security by encrypting data sent over the air using SSL/TLS or IPSec protocols, so this is the most insecure physical media to transmit any Information. In the case of using Power Line Communications (PLC) in a building with various tenants, encryption should also be used.
Once the physical network is deployed, next step is to implement the TCP/IP network:
- First step is choose the version of the TCP/IP Stack that will be in use: TCP/IP version 4 (IPv4) or TCP/IP version 6 (IPv6).
- Second step is to define the address range that will be in use and assign addresses to every segment of the network on the basis of its size, see details below.
- Third step is to define IP routing in the network and configure the routers present on the network, this can be done with static routes or deploying a routing protocol to achieve automatic dynamic routing tables. IPv4 requires more configurations needed to implement routing than IPv6.
Depending of the TCP/IP version the second and third steps will be different, TCP/IP version 4 (IPv4) is older and is supported by any kind of TCP/IP capable device, offers several ranges of addressing for Intranets of different sizes:
network size | IPv4 prefix | Allocated hosts IPv4 addresses |
small |
192.168.0.0/16 192.168.x.0/24 |
up to 2¹⁶ - 2 = 65,534 IPv4 hosts addresses usually used to define 254 subranges of 254 hosts addresses |
medium |
172.16.0.0/12 172.x.0.0/16 172.x.y.0/24 |
up to 2²⁰ - 2 = 1,048,574 IPv4 hosts addresses usually used to define 16 subranges of 65,534 hosts addresses, x = 16..31 allows for 4096 subranges of 254 hosts addresses |
large |
10.0.0.0/8 10.x.0.0/16 10.x.y.0/24 |
up to 2²⁴ - 2 = 16,777,214 IPv4 hosts addresses usually used to define 256 subranges of 65,534 hosts addresses allows for 65,536 subranges of 254 hosts addresses |
TCP/IP version 6 (IPv6) is newer and is supported by almost any recent devices, that include TCP/IP Stack in their firmware. The quantity of IPv6 addresses that can be allocated is much greater than the total amount of IPv4 addresses. As IPv4 does, IPv6 also offers a private range for addressing Intranets (IPv6 prefix fc00::/7 that allows for 2¹²¹ - 2 allocated hosts addresses) and leverages the implementation of an IoT network deployment due to automatic configuration by including the hardware address of devices in the IPv6 address and also automatic router detection mechanism included in IPv6.
As in IPv4, within the fc00::/7 prefix there can be defined longer prefixes with less hosts per prefix, in the table below you can see a few examples¹:
network size | IPv4 prefix | Allocated hosts IPv4 addresses |
small |
fc00::/56 fd00::/56 |
up to 2⁷² - 2 = 4.72 * 10²¹ IPv6 hosts addresses allows for 256 subranges of 2⁶⁴ - 2 = 1.8 * 10¹⁹ hosts addresses |
medium |
fe00::/48 |
up to 2⁸⁰ - 2 = 1.21 * 10²⁴ IPv6 hosts addresses allows for 256 subranges of 2⁷² - 2 hosts addresses allows for 65,536 subranges of 2⁶⁴ - 2 hosts addresses |
large |
ff00::/40 |
up to 2⁸⁸ - 2 = 3.09 * 10²⁶ IPv6 hosts addresses allows for 256 subranges of 2⁸⁰ - 2 hosts addresses allows for 262,144 subranges of 2⁶⁴ - 2 hosts addresses |
huge |
fc00::/32 |
up to 2⁹⁶ - 2 = 4.95 * 10²⁷ IPv6 hosts addresses allows for 16 subranges of 2⁸⁸ - 2 hosts addresses allows for 4,194,304 subranges of 2⁶⁴ - 2 hosts addresses |
(1) IPv6 addressing plans usually have into account services, regions and sites in order to make a segmentation of the address space, but all these considerations are out of the scope of this article.
After the TCP/IP network is deployed, next step is to deploy Private Cloud Service to manage the IoT nodes. This will be explained in the next article.