Unidad 7 / 12

Protocolos de comunicación y pila de red

Ganancias:

  • Capacidad para analizar la estructura de trama/paquete de protocolos como I2C/SPI/UART y TCP/IP, MQTT con soporte de IA
  • Capacidad para reducir los errores de protocolo (tiempo, direccionamiento, suma de verificación) como hipótesis con IA
  • Capacidad para verificar la interpretación del protocolo de IA con documento estándar, medición del analizador (lógica/paquete)

Un protocolo es un conjunto de reglas que acuerdan dos dispositivos para entenderse: a qué velocidad, en qué orden, en qué formato hablarán. Si un sensor de temperatura se comunica con un microcontrolador a través de I2C o un dispositivo se comunica con un servidor en la nube a través de TCP/IP y MQTT se basa en un protocolo. En esta unidad, verá cómo utilizar la IA para analizar tramas/paquetes de protocolo, reducir los errores de protocolo y comprender la pila de comunicaciones (capas una encima de la otra, desde la capa física hasta la aplicación). La IA es poderosa para explicar protocolos y generar hipótesis; pero lo que realmente hace una línea se sabe sólo por la medición de su analizador (analizador lógico, analizador de protocolo/paquetes) y el documento estándar.

Protocolos serie integrados: I2C, SPI, UART

Los chips de una placa generalmente se comunican con tres protocolos en serie:

  • UART: dos líneas (TX/RX), sin línea de reloj; Ambos lados deben estar configurados a la misma velocidad (velocidad en baudios). Simple pero la sincronización depende de la velocidad.
  • SPI: Reloj (SCLK), entrada/salida de datos (MOSI/MISO) y líneas seleccionadas (CS); Rápido, full duplex, pero requiere más pines. La polaridad/fase del reloj (CPOL/CPHA) debe coincidir en ambos lados.
  • I2C: dos líneas (SDA/SCL), basado en dirección, múltiples dispositivos en la misma línea; Resistencias pull-up y condición de tierra común. Lento pero económico.

La IA explica muy bien cómo funcionan estos protocolos, su estructura marco y las causas típicas de fallas. Enumera sistemáticamente las posibles causas (dirección incorrecta, falta de pull-up, discrepancia de velocidad, ausencia de conexión a tierra común, contención de línea, longitud/capacitancia del cable) cuando un dispositivo I2C deja de responder. Pero cuál de ellas es real se puede entender midiendo la línea con un analizador lógico y observando las ondas SDA/SCL; La IA da la hipótesis, la medición decide.

Consejo: en caso de una falla del protocolo en serie, pídale a la IA que " clasifique las posibles causas de más probable a menos probable, y se confirmará todo lo que vea en el analizador para cada una". De esta manera realizas la medición dirigida; En lugar de probar cada motivo uno por uno, la vista del analizador lo lleva a la rama correcta.

Protocolos de red: TCP/IP, UDP, MQTT, CoAP

Los protocolos en capas entran en juego cuando los dispositivos se conectan a la red y a la nube. La pila TCP/IP está esencialmente en capas: enlace físico/de datos (Ethernet, Wi-Fi), red (IP: direccionamiento y enrutamiento), transporte (TCP: confiable, secuencial, controlado por flujo / UDP: rápido, sin confianza) y aplicación (HTTP, MQTT, CoAP). Conceptos clave:

  • TCP vs UDP: TCP compensa la pérdida y garantiza el orden, pero introduce latencia y gastos generales; UDP es rápido pero no tiene garantía de entrega (se prefiere audio/video en tiempo real para telemetría).
  • MQTT: protocolo ligero de mensajería IoT que funciona con el modelo de publicación-suscripción; mensajería a través de temas a través de un corredor. Los niveles de QoS establecen la garantía de entrega.
  • CoAP: protocolo ligero similar a HTTP y basado en UDP para dispositivos restringidos.

La IA analiza la estructura de tramas/paquetes de estos protocolos, lo ayuda a interpretar una captura de Wireshark (analizador de paquetes) y revisa un diseño de tema MQTT. Pero el tráfico real se verifica mediante captura de paquetes y el comportamiento del servidor se verifica mediante pruebas reales.

Suma de comprobación, CRC y encuadre

La mayoría de los protocolos utilizan una suma de verificación o CRC (verificación de redundancia cíclica) para verificar que los datos no estén dañados: el remitente calcula un valor de verificación a partir de los datos, el receptor hace el mismo cálculo y los compara. La IA describe y escribe código para el cálculo de CRC/suma de comprobación, pero detalles como la selección de polinomios, la endianidad, el valor inicial, etc., son específicos del estándar; El código CRC generado por la IA debe compararse palabra por palabra con la definición oficial del protocolo y verificarse con un vector de prueba conocido.

tres mini casos

Caso 1: Dominadas incompletas. Un equipo no puede ejecutar un sensor I2C en una placa; no reconoce la dirección del dispositivo (sin ACK). AI enumera la falta de resistencia pull-up y puntos en común como la causa más probable. Al observar la línea SDA con un analizador lógico, se ve que la señal no puede alcanzar completamente el nivel alto; La comunicación comienza cuando se agregan resistencias pull-up. Lección: La IA destacó la causa más probable, el analizador la confirmó.

Caso 2: Modo SPI incorrecto. Un ingeniero lee datos incoherentes de un dispositivo SPI. La IA sugiere que la posible causa es una discrepancia en la polaridad/fase del reloj (CPOL/CPHA). En el analizador, el reloj parece muestrear de manera diferente al borde que espera el dispositivo; Cuando se corrige la moda, los datos se vuelven significativos. Lección: El síntoma de "datos pero sin sentido" en SPI suele ser una falta de coincidencia de modo; La medición deja esto claro.

Caso 3: malentendido sobre la calidad de servicio de MQTT. Un pasante envía telemetría a través de MQTT pero ve que algunos mensajes se pierden y pregunta a la IA. AI afirma que QoS 0 es “como máximo una vez, la entrega no está garantizada”; Explica que se requiere QoS 1/2 para garantizar la entrega, pero esto introduce gastos generales y demoras. El pasante cambia a QoS 1 según la criticidad de la telemetría y verifica el comportamiento del intermediario con pruebas reales. Lección: Explique la opción del protocolo AI; La elección correcta se realiza según la aplicación y se verifica mediante pruebas.

Plantillas de avisos copiables

PLANTILLA DE NAVEGACIÓN DE FALLO DE PROTOCOLO "La comunicación [I2C/SPI/UART/TCP/MQTT] tiene el siguiente síntoma: [síntoma]. Clasifique las posibles causas de MÁS PROBABLE a Menos probable. Para cada causa: (1) por qué da este síntoma, (2) todo lo que veo en el analizador/medición está CONFIRMADO, (3) todo lo que veo está ELIMINADO. NO HAGA un diagnóstico definitivo; limito abajo por medición emerge el árbol de decisiones".

PLANTILLA DE ANÁLISIS DE MARCO/PAQUETE "Divida el siguiente contenido [matriz de bytes I2C/SPI/UART/captura de paquetes] en campos y describa cada campo (dirección, comando, datos, suma de comprobación/CRC, bandera). Indique claramente su suposición sobre endianidad y orden de bits. Tenga en cuenta que necesito verificar su comentario con la descripción oficial del protocolo y un vector de prueba. Datos: [pegar]".

PLANTILLA DE VERIFICACIÓN DE CRC/SUMA DE VERIFICACIÓN"Describa el cálculo de CRC/suma de verificación para [protocolo]: polinomio, valor inicial, orden de bits, final

PLANTILLA DE SELECCIÓN DE PROTOCOLO "Realice una comparación de protocolos de transporte/aplicación para la siguiente aplicación: [requisito: garantía de entrega, latencia, potencia, ancho de banda, restricción del dispositivo]. Compare las opciones TCP/UDP y MQTT/CoAP/HTTP con estos criterios. NO IMPONGA una elección clara; equilibre cada opción e indique que la elección debe verificarse mediante pruebas reales".

Aviso débil / Aviso fuerte

AVISO DÉBIL: "I2C no funciona, ¿por qué?"

AVISO FUERTE: "Mi sensor I2C no confirma (dirección no reconocida). Enumere las posibles causas comenzando por las más probables: pull-up, conexión a tierra común, dirección incorrecta, velocidad, capacitancia del cable, contención. Para cada causa, escriba lo que veo en el SDA/SCL en el analizador lógico, se confirma, lo que veo se elimina. No haga un diagnóstico; quiero una lista que pueda reducir mediante mediciones".

El mensaje débil produce una única suposición; El poderoso mensaje proporciona un mapa de diagnóstico que puede reducirse a mediciones, ordenarse y verificarse.

Cuadro comparativo de protocolos

protocolo

Tipo

punto fuerte

herramienta de verificación

UART

Serie, sin reloj.

Sencillo, dos líneas

analizador lógico

SPI

Serie, cronometrado

Rápido, dúplex completo

Analizador lógico (CPOL/CPHA)

I2C

Serie, direccionable

Muchos dispositivos, pocos pines

Analizador (ACK, pull-up)

tcp

red, transporte

Confiable, en orden

Analizador de paquetes (Wireshark)

UDP

red, transporte

Rápido y baja latencia

analizador de paquetes

MQTT

Solicitud

Ligero, pub/sub, QoS

Registro de intermediario + captura de paquetes

Precaución: Hacer que la IA interprete una captura de protocolo es rápido, pero la IA puede asumir incorrectamente el orden de bits o el límite de campo. Verifique cada análisis con la descripción oficial del protocolo y un vector de prueba conocido.

Errores comunes

  • Cambiarlo según la predicción de la IA sin medir la causa de la falla. La vista del analizador le lleva a la causa correcta.
  • Ignorar el cumplimiento de CPOL/CPHA en SPI. "Hay datos pero no tienen sentido" suele ser una incompatibilidad de modos.
  • Olvidar el pull-up y los puntos comunes en I2C. Es la causa más común de "no funcionar en absoluto".
  • Asumiendo parámetros CRC. El polinomio, el inicio y el orden de los bits son específicos del estándar; Se verifica con el vector de prueba.
  • Confundir MQTT QoS con garantía de entrega. QoS 0 no garantiza; La selección se realiza y prueba según la aplicación.

En resumen

En esta unidad, ha utilizado la IA como una poderosa ayuda para explicar protocolos como I2C/SPI/UART y TCP/IP, MQTT, análisis de tramas/paquetes y para reducir sistemáticamente las causas de fallas. Pero los protocolos son precisos y están sujetos a estándares: lo que realmente hace una línea lo determina un analizador lógico/de paquetes, la precisión de un análisis está determinada por la definición formal y el vector de prueba, la causa de una falla está determinada por la medición. Dirigir a la IA para que dé “la causa más probable y la medida para confirmarla”; Deje que el analizador y el estándar decidan.

Tarea de aplicación

Seleccione un escenario de falla del protocolo serie (por ejemplo, sin ACK I2C). Solicite a AI un mapa de diagnóstico secuencial y verificable por medición con la plantilla de “estrechamiento de fallas de protocolo”. Luego tome una matriz de bytes de muestra (por ejemplo, un marco de lectura de sensor) y espárela con el patrón "Análisis de marco/paquete" y observe la suposición de endianidad. Finalmente, verifique un código CRC con un vector de prueba conocido con la plantilla "verificación CRC/suma de verificación".

lista de verificación

  • [] Confirmé la causa de la falla mediante la medición del analizador, no mediante la predicción de IA.
  • [] Enumeré CPOL/CPHA en SPI, dirección/pull-up/control de terreno común en I2C.
  • [] Comparé el análisis de tramas/paquetes con la definición de protocolo oficial.
  • [] Verifiqué los parámetros CRC/suma de verificación con el vector de prueba.
  • [ ] Hice la selección del protocolo de transporte/aplicación de acuerdo con el requisito y lo probé con pruebas reales.
  • [] He interpretado correctamente el significado de garantía de entrega de MQTT QoS.