La red es la capa OSI Nivel 3 y es la capa de Internet en el modelo TCP-IP. Al igual que las capas física y MAC, la capa de red también forma parte de la capa de infraestructura en la arquitectura de referencia de IoT.
Esta capa es responsable de direccionar y enrutar paquetes de datos. En esta capa, los datagramas de la capa de transporte se encapsulan en paquetes de datos y se entregan a sus destinos mediante direccionamiento IP. IPv4 era hasta ahora el protocolo estándar para la capa de red. IPv4 tiene un espacio de direcciones limitado que ya está agotado y no puede manejar la escalabilidad de las aplicaciones IoT. El nuevo estándar IPv6 se desarrolló para acomodar suficiente espacio de direcciones para permitir abordar miles de millones de dispositivos IoT. También hay muchas pilas de protocolos basados en direccionamiento IPv6 desarrollados considerando el escenario IOT. Los protocolos de capa de red populares son los siguientes:
• IPv4
•IPv6
• 6LoWPAN
• 6TiSCH
• 6Lo
• IPv6 sobre Bluetooth de bajo consumo
• IPv6 sobre G.9959
IP versión 4 (IPv4) –
IPv4 sigue siendo el protocolo de capa de red ampliamente utilizado para computadoras en red. Las direcciones IPv4 se expresan como números decimales con puntos. La dirección consta de cuatro octetos (número de 32 bits) divididos en dos partes: dirección de red para identificar de forma única una red TCP-IP o IOT y dirección de host para identificar el host dentro de la red identificada. Se utiliza una máscara de subred junto con la dirección IP de 32 bits para identificar de forma única un host (computadora o dispositivo IoT). La máscara de subred también es un número de 32 bits. La máscara de subred ayuda a identificar la ubicación exacta del dispositivo host. Los enrutadores extraen la dirección de red de la dirección IPv4 y la comparan con una tabla de rutas para identificar la red y el paquete de datos se entrega primero a la red de destino. Luego, la máscara de subred se utiliza para identificar de forma única el host y entregar el paquete de datos al dispositivo host.
En el estándar, hay cinco clases de IPv4: A, B, C, D y E. La clase de una dirección IPv4 se identifica por el primer octeto de la dirección IP. Las clases A, B y C son las más utilizadas. La clase D está reservada para multidifusión y la clase E para fines experimentales.
En la dirección IPv4 de clase A, el primer octeto se utiliza para identificar la red y los tres octetos restantes se utilizan para identificar el host. Esta clase de direccionamiento se utiliza generalmente en redes con una gran cantidad de dispositivos host. El primer bit del primer octeto siempre se establece en 0, por lo que el primer octeto puede tener un valor decimal en el rango de 1 a 127. El valor 127 para el primer octeto en la dirección de clase A permanece reservado para loopback o dirección IP del host local. , por lo tanto, solo quedan disponibles los valores del 1 al 126. La máscara de subred predeterminada para la Clase A es 255.0.0.0. Con este esquema de direccionamiento, se pueden identificar de forma única un máximo de 126 redes y un máximo de 16777214 dispositivos host en cada red.
En la dirección IPv4 clase B, los dos primeros octetos se utilizan para identificar la red y los dos últimos octetos se utilizan para identificar el dispositivo host. Los primeros dos bits del primer octeto de la dirección de Clase B siempre se establecen en 10, por lo que la dirección de red puede oscilar entre 128.0.XX y 191.255.XX. La máscara de subred predeterminada para la dirección de clase B es 255.255.0.0. Con este esquema de direccionamiento, se pueden identificar de forma única un máximo de 16.384 redes y un máximo de 65.534 dispositivos host en cada red.
En la dirección IPv4 clase C, los primeros tres octetos se utilizan para identificar la red y el último octeto se utiliza para identificar el dispositivo host. Los primeros tres bits del primer octeto de la dirección Clase C siempre están configurados en 110, por lo que su valor puede oscilar entre 192 y 223. La dirección de red puede oscilar entre 192.0.0.X y 223.255.255.X. La máscara de subred predeterminada para la dirección de clase B es 255.255.255.0. Con este esquema de direccionamiento, se puede identificar de forma única un máximo de 2.097.152 redes y un máximo de 254 dispositivos host en cada red.
Supongamos que una dirección IPv4 de Clase C es 192.168.8.1 y una máscara de subred es 255.255.255.0. La máscara de subred en binario se convierte a 11111111.11111111.11111111.00000000, lo que implica que los primeros tres octetos son la dirección de red y el último octeto es la dirección del host. Entonces, en la dirección IP 192.168.8.1, 192.168.8.0 será la dirección de red y 000.000.000.1 será la dirección de host.
Sólo hay espacio de direcciones para 4.294.967.296 direcciones en el estándar IPv4. Este espacio de direcciones ya se ha agotado y no es escalable para dar cabida a miles de millones de dispositivos IoT. Por lo tanto, se introdujo IPv6 para ampliar el espacio de direcciones para IoT.
IP versión 6 (IPv6) –
IP Versión 6 es un sucesor interoperable de IPv4. El espacio de direcciones en IPv4 está limitado a aproximadamente 4,3 mil millones de dispositivos. Habrá 20 mil millones de dispositivos IoT solo para el año 2020. Por lo tanto, la necesidad del momento era un estándar de direccionamiento IP que fuera escalable para satisfacer la futura infraestructura de IoT.
En comparación con las direcciones de 32 bits en IPv4, hay direcciones de 128 bits en IPv6. La dirección se divide en ocho bloques de 16 bits donde cada bloque puede representarse mediante un número hexadecimal de 4 dígitos. cada bloque de la dirección IPv6 está separado por punto y coma. Por lo tanto, una dirección IPv6 típica se vería así 77AD:45DF:A23D:8:2D:76DF:245:AF. Hay ocho bloques en la dirección: 77AD, 45DF, A23D, 8, 2D, 76DF, 245 y AF.
Cada bloque está separado por un punto y coma en la dirección.
Puede haber tres tipos de direcciones en el estándar IPv6:
1) Dirección de unidifusión: dirección para identificar una única interfaz
2) Dirección de multidifusión: dirección para identificar múltiples interfaces agrupadas en diferentes nodos
3) Dirección Anycast: dirección para identificar una única interfaz en un conjunto de interfaces que pertenecen a diferentes nodos
Con direcciones de 128 bits, IPv6 se puede utilizar para identificar 340 billones de billones de billones (38X1038), lo que equivale aproximadamente a 667 sextillones (667X1021) de dispositivos por metro cuadrado en la Tierra. Esto es más que suficiente para el futuro más lejano de IOT.
6LoWPAN –
La red de área personal inalámbrica de baja potencia IPv6 (6LoWPAN) es un protocolo de capa de red basado en el estándar IPv6 para redes de área personal inalámbricas. Basado en el protocolo 802.15.4 en la capa física, el estándar fue desarrollado para direccionar sensores y dispositivos IOT en una Red de Sensores Inalámbricos (WSN). Este protocolo es una versión modificada de IPv6 con la intención de implementar el protocolo de Internet para todos y cada uno de los dispositivos (tanto dispositivos restringidos como dispositivos grandes) y dispositivos de bajo consumo con capacidades limitadas como menos memoria, red con pérdidas, etc. IPv6 opera sólo en la banda de frecuencia de 2,4 GHz con una velocidad de transferencia de datos de 250 Kbps.
6Las redes LoWPAN se conectan a Internet a través de una puerta de enlace (WiFi o Ethernet), que realiza algún proceso de conversión de protocolo para que el dispositivo pueda comunicarse con Internet. Específicamente, la capa de adaptación realiza las siguientes tres optimizaciones para reducir la sobrecarga de comunicación:
1) Compresión de encabezado: IPv6 admite una longitud de encabezado de paquete de 127 bytes. Por lo tanto, 6loWPAN define la compresión de encabezados de paquetes IPv6 para disminuir la sobrecarga de IPv6.
2) Fragmentación: el tamaño mínimo de MTU (unidad de transmisión máxima) de IPv6 es 1280 bytes. Por otro lado, el tamaño máximo de una trama en IEEE 802.15.4 es de 127 bytes. Por lo tanto, es necesario fragmentar el paquete IPv6. Esto lo hace la capa de adaptación.
3) Enrutamiento de la capa de enlace: 6LoWPAN también admite el enrutamiento en malla, que se realiza en la capa de enlace utilizando direcciones cortas a nivel de enlace. Esta función se puede utilizar para la comunicación en una red 6LoWPAN.
6TiSCH –
Desarrollado por el IETF, 6TiSCH es un estándar IPv6 para protocolos de capa MAC 802.15.4. El estándar permite que las direcciones IPv6 pasen a través del modo de salto de canal con ranuras de tiempo (TSCH) de la capa MAC IEEE 802.15.4e, de modo que la capa de adaptación de IPv6 se pueda utilizar para la automatización industrial y las redes de baja pérdida de energía (LLN).
6Lo –
Desarrollado por el grupo IETF, IPv6 sobre redes de nodos de recursos limitados (6Lo) es un protocolo de acceso a la red basado en IPv6 para enlaces de datos que fueron excluidos por 6LoWPAN y 6TiSCH. Por ejemplo, en este estándar se incluirá la estandarización de IPv6 sobre BLE, NFC, IEEE 802.11ah y muchos otros protocolos de capa MAC.
IPv6 sobre Bluetooth de bajo consumo –
Este es un estándar de capa de adaptación IPv6 para el protocolo de capa MAC Bluetooth 4.0. El estándar excluye la función de fragmentación de 6LoWPAN, ya que ya existe una función de segmentación y reensamblaje de paquetes del Protocolo de adaptación y control de enlace lógico (L2CAP) en la pila BLE.
IPv6 sobre G.9959 –
Este es un estándar de direccionamiento IPv6 para el protocolo de capa MAC G.9959. G.9959 es una pila de protocolos de acceso a la red diseñada para redes inalámbricas de dispositivos de bajo consumo en una red de área personal (PAN).
Por lo tanto, IPv6 y las pilas de protocolos basadas en él son el futuro de las aplicaciones de IoT. Tiene suficiente espacio de direcciones para cualquier infraestructura IoT futurista. En el próximo tutorial, se analizarán los protocolos de la capa de transporte.