La pila TCP / IP está diseñada para ser lo más genérica posible, por lo que las aplicaciones pueden interactuar con varios protocolos de enlace de datos como 802.3 (Ethernet), 802.11 (Wi-Fi), PPP (protocolo punto a punto), etc. sin necesidad de saber qué tipo de enlace están utilizando ...
TCP / IP en realidad comprende varias capas de protocolos, por ejemplo,
5. Application DNS, FTP, HTTP, IMAP, POP3, SMTP, SSH, Telnet, SSL, ...
4. Transport TCP, UDP, ...
3. Network IP (IPv4, IPv6), ICMP, ARP, ...
2. Data Link 802.3 (Ethernet), 802.11 (Wi-Fi), PPP, ...
1. Physical Ethernet (NIC), Wireless (NIC), Cat 5/RJ-45, ...
(La capa superior a menudo se divide en tres capas separadas, estoy simplificando un poco las cosas).
Por lo tanto, será el nivel inferior donde la pila debe interactuar con el controlador para su módulo de Wi-Fi específico.
Dado que esto se encuentra en el nivel de bytes, habrá un número limitado de funciones que deben implementarse. Siguen un modelo de controlador de dispositivo de E / S bastante estándar, es decir,
Open function
Close function
Send function
Receive function
IO Control function
Get PhysicalAddress function
Interrupt service routine (ISR) callback
por lo que debería ser bastante simple casar la interfaz de la pila con un módulo en particular.
Consulte aquí para ver un ejemplo con más detalles para un sistema operativo en particular.
Algunos módulos Wi-Fi, como el ESP8266 , vienen con una pila TCP / IP incorporada, desde TCP / IP puede estar gravando con un pequeño microcontrolador. Se accede a través de comandos AT, como un módulo celular o un módulo Bluetooth.