Tutorial de pruebas de protocolo: L2 & L3

Tabla de contenido:

Anonim

Antes de aprender sobre las pruebas de protocolo, comprendamos:

¿Qué es el protocolo?

Cuando una computadora se comunica entre sí, existe un conjunto común de reglas y condiciones que cada computadora debe seguir. En otras palabras, los protocolos determinan cómo se transmiten los datos entre dispositivos informáticos y redes.

Prueba de protocolo

La prueba de protocolo es un método para verificar protocolos de comunicación en los dominios de conmutación, conexión inalámbrica, VoIP, enrutamiento, etc. El objetivo principal de la prueba de protocolo es verificar la estructura de los paquetes que se envían a través de una red utilizando herramientas de prueba de protocolo. Los enrutadores e interruptores se utilizan durante la prueba para formar partes de dispositivos y productos bajo prueba.

Protocolos de enrutamiento y enrutamiento

Los protocolos se clasifican en dos categorías: protocolos enrutados y protocolos de enrutamiento

  • Protocolos enrutados : los protocolos enrutados se pueden utilizar para enviar los datos del usuario de una red a otra. Transporta tráfico de usuarios como correos electrónicos, tráfico web, transferencias de archivos, etc. Los protocolos enrutados son IP, IPX y AppleTalk.
  • Protocolos de enrutamiento : los protocolos de enrutamiento son protocolos de red que determinan las rutas para los enrutadores. Solo se usa entre enrutadores. Por ejemplo, RIP, IGRP, EIGRP, etc.

En términos simples, un enrutador es como un autobús utilizado para el transporte, mientras que los protocolos de enrutamiento son señales en la carretera.

Según el tipo de comunicación se utilizan diferentes protocolos. Empresas como CISCO, JUNIPER, ALCATEL producen dispositivos de red como enrutadores, módems, puntos de acceso inalámbricos, etc. que usan diferentes protocolos para la comunicación, por ejemplo, Cisco usa EIGRP, OSPF, etc. Las pruebas de protocolo no son más que verificar si EIGRP (Enhanced Interior Gateway Routing Protocol) u OSPF (Open Shortest Path First) o cualquier otro protocolo funciona según el estándar respectivo.

Tipos de protocolos informáticos

Tipos de protocolos Propósito de los protocolos
TCP / IP Se utiliza para enviar información en pequeños paquetes a través de Internet.
UDP / ICMP Se utiliza para enviar una pequeña cantidad de información en paquetes de datos a través de Internet.
POP3 y SMTP Se utiliza para enviar y recibir correo.
Protocolo de Transferencia de Hipertexto Se utiliza para transferir páginas HTML en forma encriptada para brindar seguridad a los datos confidenciales.
FTP Se utiliza para transportar archivos a través de una red de un nodo a otro.

* TCP / IP - Protocolo de control de transmisión / Protocolo de Internet, UDP / ICMP - Protocolo de datagramas de usuario / Protocolo de mensajes de control de Internet, POP3 / SMTP - Protocolo de oficina postal / Protocolo simple de transferencia de correo, HTTP - Protocolo de transferencia de hipertexto, FTP - Protocolo de transferencia de archivos

Diferentes tipos de protocolos de red (L2 y L3)

El modelo OSI tiene un total de 7 capas de comunicación de red, en las que la capa 2 y la capa 3 son muy cruciales.

  • Capa 2 : es una capa de enlace de datos. La dirección Mac, Ethernet, Token Ring y Frame Relay son ejemplos de la capa de enlace de datos.
  • Capa 3 : Es una capa de red que determina la mejor ruta disponible en la red para la comunicación. Una dirección IP es un ejemplo de layer3.

Cómo hacer pruebas de protocolo

  • Para las pruebas de protocolos, necesita un analizador y un simulador de protocolos.
  • El analizador de protocolos garantiza una decodificación adecuada junto con el análisis de llamadas y sesiones. Mientras que el simulador simula varias entidades del elemento de red
  • Por lo general, DUT (dispositivo bajo prueba) lleva a cabo una prueba de protocolo a otros dispositivos como conmutadores y enrutadores y configura el protocolo en él.
  • Posteriormente, verificar la estructura de los paquetes enviados por los dispositivos.
  • Comprueba la escalabilidad, el rendimiento, el algoritmo de protocolo, etc. del dispositivo mediante el uso de herramientas como lxNetworks, Scapy y Wireshark.

Tipos de prueba para pruebas de protocolo

Las pruebas de protocolo incluyen pruebas de funcionalidad, rendimiento, pila de protocolos, interoperabilidad, etc. Durante las pruebas de protocolo, básicamente, se realizan tres comprobaciones.

  • Corrección : ¿Recibimos el paquete X cuando esperábamos?
  • Latencia : cuánto tiempo tarda un paquete en transitar por el sistema
  • Ancho de banda : cuántos paquetes podemos enviar por segundo

Las pruebas de protocolo se pueden segregar en dos categorías. Pruebas de estrés y confiabilidad y pruebas funcionales. Las pruebas de estrés y confiabilidad cubren pruebas de carga, pruebas de estrés, pruebas de rendimiento, etc., mientras que las pruebas funcionales incluyen pruebas negativas, pruebas de conformidad, pruebas de interoperabilidad, etc.

  • Pruebas de conformidad : los protocolos implementados en los productos se prueban para verificar su adherencia como IEEE, RFC, etc.
  • Prueba de interoperabilidad : se prueba la interoperabilidad para diferentes proveedores. Esta prueba se realiza después de realizar la prueba de conformidad en la plataforma adecuada.
  • Prueba de características de red : las características de los productos de red se prueban para su funcionalidad con referencia al documento de diseño. Por ejemplo, las funciones pueden ser seguridad de puerto en un conmutador, ACL en un enrutador, etc.

Ejemplos de casos de prueba para pruebas de protocolo de dispositivos de red

Aquí está el caso de prueba de muestra para enrutadores

Nombre de la prueba Casos de prueba
  1. Una VLAN en un conmutador
  • Cree dos VLAN diferentes. Verifique la visibilidad entre hosts en diferentes VLAN
  1. Tres VLAN simétricas en un conmutador
  • Cree tres VLAN asimétricas diferentes. Verifique la visibilidad entre hosts
  1. Árbol de expansión: variación del costo de la ruta raíz
  • Pruebe cómo cambia el costo de la ruta raíz después de una variación de topología
  1. Árbol de expansión: bloqueo de puertos
  • Compruebe cómo el protocolo de árbol de expansión evita la formación de ciclos en la red, bloqueando enlaces redundantes, también en presencia de VLAN
  1. Puente raíz diferente para diferentes MSTI
  • Demuestre que cada MSTI puede tener diferentes puentes raíz.
  1. Visibilidad entre diferentes regiones STP
  • Con las mismas VLAN, verifique la visibilidad entre diferentes regiones STP
  1. Rendimiento del conmutador telefónico
  • Genere 1000 llamadas telefónicas y verifique si el conmutador telefónico aún funciona o si su rendimiento se degrada
  1. Prueba negativa para dispositivo
  • Ingrese la clave incorrecta y verifique la autenticación del usuario. No debe permitir que un usuario acceda
  1. Linea de velocidad
  • Verifique que el dispositivo funcione a una velocidad de 10 Gbps, utilizando todo el ancho de banda disponible para manejar el tráfico entrante
  1. Tasa de conversación de protocolo
  • Rastree una conversación TCP entre dos dispositivos y verifique que cada dispositivo tenga un comportamiento correcto
  1. Tiempo de respuesta para el inicio de la sesión
  • Mide el tiempo de respuesta de un dispositivo a una solicitud de invitación para el inicio de sesión.

Herramientas para pruebas de protocolo

Analicemos las herramientas de prueba más importantes que se utilizan para verificar los protocolos.

Scapy para la elaboración de paquetes

Scapy es un poderoso programa interactivo de manipulación de paquetes. Te permite

  • Crea paquetes
  • Decodificar paquetes en la red
  • Capture paquetes y analícelos
  • Inyectar paquetes en la red

Básicamente, scapy hace principalmente dos cosas: recibir respuestas y enviar paquetes . Usted define los paquetes, los envía, recibe respuestas, empareja solicitudes con respuestas y devuelve una lista de pares de paquetes y una lista de paquetes no coincidentes.

También puede manejar otras cosas, como el enrutamiento de rastreo, pruebas unitarias, ataques o descubrimiento de redes, desarrollo de nuevos protocolos, sondeos, etc.

Scapy nos permite escribir un script Python que nos permite realizar una tarea como enviar y recibir paquetes o rastrear paquetes. Por ejemplo, scapy puede olfatear el paquete de datos usando un script de Python. El comando para abrir el getdit ingresado en el editor

#gedit scapysniff.py#! / usr / bin / env pythondesde scapy.all import *a = olfatear (contar = 10)un resumen ()guardar y cambiar el modo del archivo a un formato ejecutable# chmod + x scapysniff.py# ./scaotsbuff.py

Olerá 10 paquetes y tan pronto como haya olfateado 10 paquetes imprimirá el resumen. Scapy también como una matriz de comando para enviar y recibir paquetes al mismo tiempo

Descarga Scapy

Herramientas de Wireshark para análisis

Herramientas utilizadas para las pruebas de protocolo: Wireshark. Permite capturar paquetes en tiempo real y mostrarlos en forma legible por humanos. Le permite profundizar en el tráfico de la red e inspeccionar paquetes individuales mediante codificación de colores y filtros.

Wireshark captura paquetes que ayudan a determinar cuándo se establece la sesión, cuándo se inició el viaje de datos exactos y cuántos datos se envían cada vez, etc.

Wireshark tiene un conjunto de características enriquecidas que incluye

  • Una inspección exhaustiva de cientos de protocolos, que se añaden más todo el tiempo
  • Captura en vivo y análisis fuera de línea
  • Análisis completo de VoIP
  • Navegador estándar de tres paneles
  • Se ejecuta en plataformas múltiples como Windows, Linux, OSX, etc.
  • Los datos de red capturados se pueden navegar a través de una GUI
  • El descifrado admite muchos protocolos como IPsec, ISAKMP, SSL / TLS
  • Los datos en vivo se pueden leer desde Ethernet, ATM, Bluetooth, USB, token, etc.
  • La salida se puede exportar a CSV, XML, texto sin formato, etc.

Descarga Wireshark

TTCN

TCCN es un lenguaje de prueba estándar para definir el escenario de prueba y su implementación para pruebas de protocolo. Un conjunto de pruebas de TCCN contiene muchos casos de prueba escritos en el lenguaje de programación TTCN y se utiliza para probar sistemas reactivos o pruebas de comportamiento .

Por ejemplo, una máquina expendedora de café que le da café al insertar una moneda de un dólar, pero no responde si se inserta algo menos de un dólar. Para programar tales máquinas se utiliza el lenguaje TCCN3. Para que la máquina de café responda al insertar una moneda, tenemos que escribir el componente TCCN-3 que se comporta como una máquina de café. Nos permite ejecutar nuestra prueba antes de que una máquina de café real esté disponible como producto. Una vez hecho esto, conectaremos la suite de pruebas TCCN3 con el dispositivo externo.

El sistema de prueba emite estímulos (moneda de un dólar) y recibe respuestas (café). El adaptador de estímulos obtiene los estímulos del sistema de prueba y los pasa al sistema bajo prueba. El adaptador de respuesta espera las respuestas del sistema bajo prueba y las pasa al sistema de prueba.

TCCN3 se puede utilizar en varios campos como

  • Comunicaciones móviles (LTE, WiMAX, 3G, etc.)
  • Tecnologías de banda ancha (ATM, DSL)
  • Plataformas de middleware (servicios web, CORBA, etc.)
  • Protocolo de Internet (SIP, IMS, IPv6)
  • Tarjetas inteligentes
  • Automotriz (AutoSAR, MOST, CAN)

En TCCN podemos definir

  • Suites de prueba
  • Casos de prueba
  • Pasos de prueba
  • Declarar variables
  • Declarar temporizadores
  • Cree PDU, etc.

TCCN se puede integrar con tipos de sistemas de otros lenguajes como ASN.1, XML, C / C ++. El lenguaje principal de TCCN3 existe en formato de texto además de otros formatos como tabular, gráfico y presentación.