Tutoriel de test de protocole: L2 & L3

Table des matières:

Anonim

Avant d'en apprendre davantage sur les tests de protocole, comprenons:

Qu'est-ce que le protocole?

Lorsqu'un ordinateur communique entre eux, il existe un ensemble commun de règles et de conditions que chaque ordinateur doit respecter. En d'autres termes, les protocoles déterminent la manière dont les données sont transmises entre les appareils informatiques et sur les réseaux.

Test de protocole

Le test de protocole est une méthode de vérification des protocoles de communication dans les domaines de la commutation, du sans fil, de la VoIP, du routage, etc. L'objectif principal des tests de protocole est de vérifier la structure des paquets envoyés sur un réseau à l'aide d'outils de test de protocole. Les routeurs et les commutateurs sont utilisés pendant le test pour former des parties d'appareils et de produits en cours de test.

Protocoles de routage et de routage

Les protocoles sont classés en deux catégories: protocoles routés et protocoles de routage

  • Protocoles routés : les protocoles routés peuvent être utilisés pour envoyer les données utilisateur d'un réseau à un autre réseau. Il transporte le trafic utilisateur comme les e-mails, le trafic Web, les transferts de fichiers, etc. Les protocoles routés sont IP, IPX et AppleTalk.
  • Protocoles de routage : les protocoles de routage sont des protocoles réseau qui déterminent les routes des routeurs. Il n'est utilisé qu'entre les routeurs. Par exemple RIP, IGRP, EIGRP, etc.

En termes simples, un routeur est comme un bus utilisé pour le transport tandis que les protocoles de routage sont des signaux sur la route.

En fonction du type de communication, différents protocoles sont utilisés. Des entreprises comme CISCO, JUNIPER, ALCATEL produisent des périphériques réseau tels que des routeurs, des modems, des points d'accès sans fil, etc. qui utilisent différents protocoles de communication, par exemple, Cisco utilise EIGRP, OSPF, etc. Gateway Routing Protocol) ou OSPF (Open Shortest Path First) ou tout autre protocole fonctionne selon la norme respective.

Types de protocoles informatiques

Types de protocoles Objectif des protocoles
TCP / IP Il est utilisé pour envoyer des informations par petits paquets sur Internet
UDP / ICMP Il est utilisé pour envoyer une petite quantité d'informations dans des paquets de données sur Internet
POP3 et SMTP Il est utilisé pour envoyer et recevoir du courrier
Protocole de transfert hypertexte Il est utilisé pour transférer la page HTML sous forme cryptée pour assurer la sécurité des données sensibles
FTP Il est utilisé pour transporter des fichiers sur un réseau d'un nœud à un autre

* TCP / IP - Transmission Control Protocol / Internet Protocol, UDP / ICMP - User Datagram Protocol / Internet Control Message Protocol, POP3 / SMTP - Post Office Protocol / Simple Mail Transfer Protocol, HTTP - Hyper Text Transfer Protocol, FTP - File Transfer Protocol

Différents types de protocoles réseau (L2 et L3)

Le modèle OSI a un total de 7 couches de communication réseau, dans lesquelles la couche 2 et la couche 3 sont très cruciales.

  • Couche 2 : C'est une couche de liaison de données. L'adresse Mac, Ethernet, Token Ring et Frame Relay sont tous des exemples de couche de liaison de données.
  • Couche 3 : c'est une couche réseau qui détermine le meilleur chemin disponible dans le réseau pour la communication. Une adresse IP est un exemple de layer3.

Comment faire des tests de protocole

  • Pour les tests de protocole, vous avez besoin d'un analyseur et d'un simulateur de protocole
  • L'analyseur de protocole garantit un décodage approprié ainsi qu'une analyse des appels et des sessions. Alors que le simulateur simule diverses entités de l'élément de réseau
  • Habituellement, un test de protocole est effectué par DUT (appareil sous test) sur d'autres appareils tels que des commutateurs et des routeurs et en configurant le protocole.
  • Vérifier ensuite la structure des paquets des paquets envoyés par les appareils
  • Il vérifie l'évolutivité, les performances, l'algorithme de protocole, etc. de l'appareil en utilisant des outils tels que lxNetworks, Scapy et Wireshark

Types de test pour les tests de protocole

Les tests de protocole comprennent les tests de fonctionnalité, de performances, de pile de protocoles, d'interopérabilité, etc. Au cours des tests de protocole, trois vérifications sont effectuées.

  • Exactitude : recevons-nous le paquet X quand nous nous attendions
  • Latence : combien de temps faut-il à un paquet pour transiter par le système
  • Bande passante : combien de paquets nous pouvons envoyer par seconde

Les tests de protocole peuvent être séparés en deux catégories. Tests de stress et de fiabilité et tests fonctionnels. Les tests de résistance et de fiabilité couvrent les tests de charge, les tests de résistance, les tests de performance, etc.

  • Test de conformité : les protocoles mis en œuvre sur les produits sont testés pour leur conformité comme IEEE, RFC, etc.
  • Test d'interopérabilité : l'interopérabilité pour différents fournisseurs est testée. Ce test est effectué après que le test de conformité est effectué sur la plate-forme appropriée
  • Test des fonctionnalités réseau: les fonctionnalités des produits réseau sont testées pour la fonctionnalité en référence au document de conception. Par exemple, les fonctionnalités peuvent être la sécurité des ports sur un commutateur, l'ACL sur un routeur, etc.

Exemples de cas de test pour les tests de protocole des périphériques réseau

Voici l'exemple de cas de test pour les routeurs

Nom du test Cas de test
  1. Un VLAN sur un commutateur
  • Créez deux VLAN différents. Vérifiez la visibilité entre les hôtes sur différents VLAN
  1. Trois VLAN symétriques sur un commutateur
  • Créez trois VLAN asymétriques différents. Vérifier la visibilité entre les hôtes
  1. Spanning Tree: Variation du coût du chemin racine
  • Tester comment le coût du chemin racine change après une variation de topologie
  1. Spanning Tree: blocage de port
  • Vérifiez comment le protocole Spanning Tree évite la formation de cycles dans le réseau, bloquant les liaisons redondantes, en présence de VLAN également
  1. Pont racine différent pour différents MSTI
  • Montrer que chaque MSTI peut avoir un pont racine différent
  1. Visibilité entre les différentes régions STP
  • Avec les mêmes VLAN, vérifiez la visibilité entre les différentes régions STP
  1. Interrupteur téléphonique Performance
  • Générez 1000 appels téléphoniques et vérifiez si le commutateur téléphonique fonctionne toujours ou si ses performances se dégradent
  1. Test négatif pour l'appareil
  • Entrez la clé incorrecte et vérifiez l'authentification de l'utilisateur. Il ne doit pas permettre à un utilisateur d'accéder
  1. Vitesse de la ligne
  • Vérifiez que l'appareil fonctionne à une vitesse de 10 Gbps, en utilisant toute la bande passante disponible pour gérer le trafic entrant
  1. Taux de conversation du protocole
  • Suivre une conversation TCP entre deux appareils et vérifier que chaque appareil s'est engagé dans un comportement correct
  1. Temps de réponse pour le lancement de la session
  • Mesurer le temps de réponse d'un appareil à une demande d'invitation pour l'ouverture de session

Outils de test de protocole

Discutons des outils de test les plus importants utilisés pour vérifier les protocoles

Scapy pour la fabrication de paquets

Scapy est un puissant programme interactif de manipulation de paquets. Cela vous permet de

  • Créer des paquets
  • Décoder les paquets sur le réseau
  • Capturez des paquets et analysez-les
  • Injecter des paquets dans le réseau

Donc, fondamentalement, scapy fait principalement deux choses: recevoir des réponses et envoyer des paquets . Vous définissez les paquets, il les envoie, reçoit les réponses, associe les demandes aux réponses et renvoie une liste de couples de paquets et une liste de paquets sans correspondance.

Il peut également gérer d'autres choses comme le routage de trace, les tests unitaires, les attaques ou la découverte de réseau, le développement de nouveaux protocoles, le sondage, etc.

Scapy nous permet d'écrire un script Python qui nous permet d'effectuer une tâche comme l'envoi et la réception de paquets ou le reniflement de paquets. Par exemple, scapy peut renifler le paquet de données à l'aide d'un script Python. La commande pour ouvrir le getdit entrée dans l'éditeur

#gedit scapysniff.py#! / usr / bin / env pythondepuis scapy.all import *a = renifler (nombre = 10)a.nsummary ()enregistrer et changer le mode du fichier sous une forme exécutable# chmod + x scapysniff.py# ./scaotsbuff.py

Il reniflera 10 paquets et dès qu'il aura reniflé 10 paquets, il imprimera le résumé. Scapy également comme un tableau de commande pour envoyer et recevoir des paquets en même temps

Télécharger Scapy

Outils Wireshark pour l'analyse

Outils utilisés pour les tests de protocole - Wireshark. Il permet de capturer des paquets en temps réel et de les afficher sous une forme lisible par l'homme. Il vous permet de creuser profondément dans le trafic réseau et d'inspecter les paquets individuels en utilisant un code couleur et des filtres.

Wireshark capture les paquets qui aident à déterminer quand la session est établie, quand le voyage exact des données a été lancé et combien de données sont envoyées à chaque fois, etc.

Wireshark dispose d'un ensemble de fonctionnalités riches qui comprend

  • Une inspection approfondie de centaines de protocoles, d'autres étant ajoutés tout le temps
  • Capture en direct et analyse hors ligne
  • Analyse VoIP riche
  • Navigateur standard à trois volets
  • Fonctionne sur plusieurs plates-formes telles que Windows, Linux, OSX, etc.
  • Les données réseau capturées peuvent être parcourues via une interface graphique
  • Le décryptage prend en charge de nombreux protocoles tels que IPsec, ISAKMP, SSL / TLS
  • Les données en direct peuvent être lues à partir d'Ethernet, ATM, Bluetooth, USB, jeton, etc.
  • La sortie peut être exportée au format CSV, XML, texte brut, etc.

Télécharger Wireshark

TTCN

TCCN est un langage de test standard pour définir le scénario de test et leur implémentation pour le test de protocole. Une suite de tests TCCN contient de nombreux cas de test écrits dans le langage de programmation TTCN et elle est utilisée pour tester des systèmes réactifs ou des tests comportementaux .

Par exemple, un distributeur automatique de café qui vous donne du café en insérant une pièce d'un dollar mais ne répond pas si quelque chose de moins d'un dollar y est inséré. Pour programmer de telles machines, le langage TCCN3 est utilisé. Afin que la machine à café réponde lors de l'insertion d'une pièce de monnaie, nous devons écrire un composant TCCN-3 qui se comporte comme une machine à café. Cela nous permet d'effectuer notre test avant qu'une machine à café réelle ne soit disponible en tant que produit. Une fois cela fait, nous connecterons la suite de tests TCCN3 au périphérique externe.

Le système de test émet des stimuli (pièce d'un dollar) et reçoit des réponses (café). L'adaptateur de stimuli obtient des stimuli du système de test et les transmet au système sous test. L'adaptateur de réponse attend les réponses du système testé et les transmet au système de test.

TCCN3 peut être utilisé dans divers domaines comme

  • Communications mobiles (LTE, WiMAX, 3G, etc.)
  • Technologies à large bande (ATM, DSL)
  • Plateformes middleware (Webservices, CORBA, etc.)
  • Protocole Internet (SIP, IMS, IPv6)
  • Carte à puce
  • Automobile (AutoSAR, MOST, CAN)

Dans TCCN, nous pouvons définir

  • Suites de test
  • Cas de test
  • Étapes du test
  • Déclarer des variables
  • Déclarer les minuteries
  • Créez des PDU, etc.

TCCN peut être intégré à des types de systèmes d'autres langages comme ASN.1, XML, C / C ++. Le langage de base TCCN3 existe au format texte en dehors d'autres formats tels que tabulaire, graphique et présentation.