Enne kui saame teada protokollide testimisest, mõistame järgmist:
Mis on protokoll?
Kui arvuti omavahel suhtleb, on olemas ühtsed reeglid ja tingimused, mida iga arvuti peab järgima. Teisisõnu määravad protokollid, kuidas andmeid edastatakse arvutiseadmete vahel ja võrkude kaudu.
Protokolli testimine
Protokollide testimine on meetod kommunikatsiooniprotokollide kontrollimiseks kommutatsiooni, traadita ühenduse, VoIP, marsruutimise jne valdkondades. Protokollide testimise peamine eesmärk on kontrollida võrgu kaudu protokolliproovimise tööriistade abil saadetud pakettide struktuuri. Ruutereid ja lüliteid kasutatakse katse ajal testitavate seadmete ja toodete osade moodustamiseks.
Marsruudi ja marsruudi protokollid
Protokollid liigitatakse kahte kategooriasse marsruutitud protokollid ja marsruutimisprotokollid
- Marsruutprotokollid : marsruutitud protokolle saab kasutada kasutajaandmete saatmiseks ühest võrgust teise võrku. See kannab kasutajaliiklust nagu e-kirjad, veebiliiklus, failiedastused jne. Suunatud protokollid on IP, IPX ja AppleTalk.
- Marsruutimisprotokollid : marsruutimisprotokollid on võrguprotokollid, mis määravad marsruuterite marsruudid. Seda kasutatakse ainult ruuterite vahel. Näiteks RIP, IGRP, EIGRP jne.
Lihtsamalt öeldes on ruuter nagu buss, mida kasutatakse transpordiks, samas kui marsruutimisprotokollid on teel signaalid.
Suhtlustüübi põhjal kasutatakse erinevaid protokolle. Sellised ettevõtted nagu CISCO, JUNIPER, ALCATEL toodavad võrguseadmeid nagu ruuterid, modemid, traadita pöörduspunktid jne, mis kasutavad suhtlemiseks erinevaid protokolle, näiteks Cisco kasutab EIGRP, OSPF jne. Protokollide testimine pole midagi muud, kui kontrollida, kas EIGRP (Enhanced Interior Gateway Routing Protocol) või OSPF (Open Shortest Path First) või mõni muu protokoll töötab vastavalt vastavale standardile.
Arvutiprotokollide tüübid
Protokollide tüübid | Protokollide eesmärk |
---|---|
TCP / IP | Seda kasutatakse teabe edastamiseks Interneti kaudu väikestes pakettides |
UDP / ICMP | Seda kasutatakse väikese koguse teabe edastamiseks andmepakettides Interneti kaudu |
POP3 ja SMTP | Seda kasutatakse kirjade saatmiseks ja vastuvõtmiseks |
Hüperteksti edastamise protokoll | Seda kasutatakse HTML-lehe edastamiseks krüptitud kujul, et tagada tundlike andmete turvalisus |
FTP | Seda kasutatakse failide transportimiseks üle võrgu ühest sõlmest teise |
* TCP / IP - edastuse juhtimisprotokoll / Interneti-protokoll, UDP / ICMP - kasutaja Datagrammi protokoll / Interneti-juhtimise teateprotokoll, POP3 / SMTP - postkontori protokoll / lihtne postiedastuse protokoll, HTTP - hüpertekstiprotokoll, FTP - failiedastusprotokoll
Erinevat tüüpi võrguprotokollid (L2 ja L3)
OSI-mudelil on kokku 7 kihti võrgusidet, milles kihid 2 ja 3 on väga olulised.
- 2. kiht : see on andmeside kiht. Maci aadress, Ethernet, Token Ring ja Frame Relay on kõik andmesidekihi näited.
- 3. kiht : see on võrgukiht, mis määrab võrgu parima võimaliku tee suhtlemiseks. IP-aadress on kihi 3 näide.
Kuidas teha protokollide testimist
- Protokolli testimiseks vajate protokollianalüsaatorit ja simulaatorit
- Protokollianalüsaator tagab korraliku dekodeerimise koos kõne ja seansi analüüsiga. Simulaator simuleerib võrguelemendi erinevaid üksusi
- Tavaliselt teostab DUT (testitav seade) protokolli testimise teistele seadmetele nagu lülitid ja ruuterid ning selles oleva protokolli konfigureerimine
- Seejärel kontrollige seadmete saadetud pakettide struktuuri
- See kontrollib seadme mastaapsust, jõudlust, protokolli algoritmi jne, kasutades selliseid tööriistu nagu lxNetworks, Scapy ja Wireshark
Protokollide testimise tüübid
Protokollide testimine hõlmab funktsionaalsuse, jõudluse, protokollivirna, koostalitlusvõime jms testimist. Protokollide testimise käigus tehakse põhimõtteliselt kolm kontrolli.
- Korrektsus : kas pakett X saabub siis, kui ootasime
- Latentsus : kui kaua võtab pakett süsteemi transiidiks
- Ribalaius : mitu paketti saame sekundis saata
Protokollide testimist saab jagada kahte kategooriasse. Stressi- ja töökindlustestid ning funktsionaalsed testid. Pinge- ja töökindlustestid hõlmavad koormustestimist, stressitestimist, jõudluskontrolli jne. Funktsionaalne testimine hõlmab negatiivseid teste, vastavuskontrolli, koostalitlusvõime testimist jne.
- Vastavustestimine : Toodetele rakendatud protokollide vastavust testitakse nagu IEEE, RFC jne.
- Koostalitlusvõime testimine : testitakse erinevate tootjate koostalitlusvõimet. See testimine tehakse pärast vastavuskontrolli tegemist vastaval platvormil
- Võrgufunktsioonide testimine: võrgutoodete funktsioonide funktsionaalsust testitakse viitega disainidokumendile. Näiteks võivad funktsioonid olla sadama turvalisus lülitil, ACL ruuteril jne.
Võrguseadmete protokollide testimise näidisjuhtumid
Siin on ruuterite proovitesti juhtum
Testi nimi | Katsejuhtumid |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Tööriistad protokollide testimiseks
Arutame läbi protokollide kontrollimiseks kasutatavad kõige olulisemad testimisvahendid
Scapy pakettide meisterdamiseks
Scapy on võimas interaktiivne pakettidega manipuleerimise programm. See võimaldab teil seda teha
- Looge pakette
- Dekodeerige võrgus olevad paketid
- Jäädvustage pakette ja analüüsige neid
- Süstige pakette võrku
Põhimõtteliselt teeb scapy peamiselt kahte asja: saabub vastuseid ja saadetakse pakette . Te määratlete paketid, see saadab need, võtab vastu vastuseid, sobitab päringud vastustega ja tagastab pakettpaaride loendi ja sobitamata pakettide loendi.
See saab hakkama ka muude asjadega, nagu jälje marsruutimine, üksustestid, rünnakud või võrgu avastamine, uute protokollide väljatöötamine, sondeerimine jne.
Scapy võimaldab meil kirjutada Pythoni skripti, mis võimaldab meil teha sellist ülesannet nagu pakettide saatmine ja vastuvõtmine või pakettide nuusutamine. Näiteks võib scapy Pythoni skripti abil andmepaketti nuusutada. Redaktorisse sisestatud käsk getdit avamiseks
#gedit scapysniff.py#! / usr / bin / env pythonsaidilt scapy.all import *a = nuuskama (loend = 10)a. kokkuvõte ()salvestage ja muutke faili režiim käivitatavaks vormiks# chmod + x scapysniff.py# ./scaotsbuff.py
See nuusutab 10 paketti ja kohe, kui on nuusutanud 10 paketti, prindib see kokkuvõtte. Scapy ka käskude massiivina pakettide samaaegseks saatmiseks ja vastuvõtmiseks
Laadige alla Scapy
Wiresharki tööriistad analüüsimiseks
Protokolli testimiseks kasutatavad tööriistad - Wireshark. See võimaldab jäädvustada pakette reaalajas ja kuvada neid inimesele loetaval kujul. See võimaldab teil värvikoodide ja filtrite abil süveneda võrguliiklusse ja kontrollida üksikuid pakette.
Wireshark haarab pakette, mis aitavad kindlaks teha, millal seanss sisse seatakse, millal täpset andmesidet alustati ja kui palju andmeid iga kord saadeti jne.
Wiresharkil on hulk rikkalikke funktsioone, mis hõlmavad järgmist
- Sadade protokollide põhjalik kontrollimine, neid lisandub kogu aeg
- Reaalajas jäädvustamine ja võrguühenduseta analüüs
- Rikkalik VoIP-analüüs
- Tavaline kolme paneeliga pakitud brauser
- Töötab mitmel platvormil nagu Windows, Linux, OSX ja nii edasi
- Jäädvustatud võrguandmeid saab sirvida graafilise kasutajaliidese kaudu
- Dekrüpteerimine toetab paljusid protokolle nagu IPsec, ISAKMP, SSL / TLS
- Reaalajas olevaid andmeid saab lugeda Ethernetist, sularahaautomaadist, Bluetoothist, USB-st, märgist jne.
- Väljundit saab eksportida CSV-vormingusse, XML-i, lihtteksti jne.
Laadige alla Wireshark
TTCN
TCCN on standardne testkeel teststsenaariumi ja nende rakendamise määratlemiseks protokollide testimiseks. TCCN-testipakett sisaldab palju TTCN-i programmeerimiskeeles kirjutatud testjuhtumeid ja seda kasutatakse reaktiivsete süsteemide või käitumuslike testide testimiseks .
Näiteks kohvimasin, mis annab teile dollari mündi sisestamisel kohvi, kuid ei reageeri, kui sinna on sisestatud midagi vähem kui dollar. Selliste masinate programmeerimiseks kasutatakse TCCN3 keelt. Selleks, et kohvimasin reageeriks mündi sisestamisel, peame kirjutama TCCN-3 komponendi, mis käitub kohvimasinana. See võimaldab meil oma testi läbi viia enne, kui tegelik kohvimasin on tootena saadaval. Kui see on tehtud, ühendame TCCN3 testimissüsteemi välise seadmega.
Testisüsteem kiirgab stiimuleid (dollarimünt) ja saab vastuseid (kohv). Stiimuliadapter saab katsesüsteemist ärritusi ja edastab need testitavasse süsteemi. Reageerimisadapter ootab testitava süsteemi vastuseid ja edastab need testimissüsteemile.
TCCN3 saab kasutada erinevates valdkondades, näiteks
- Mobiilside (LTE, WiMAX, 3G jne)
- Lairibatehnoloogiad (ATM, DSL)
- Vahevara platvormid (veebiteenused, CORBA jne)
- Interneti-protokoll (SIP, IMS, IPv6)
- Kiipkaardid
- Autotööstus (AutoSAR, MOST, CAN)
TCCN-is saame seda määratleda
- Testi sviidid
- Katsejuhtumid
- Testi sammud
- Deklareerige muutujad
- Deklareeri taimerid
- Loo PDU-d jne
TCCN-i saab integreerida teiste keeltega süsteemide tüüpidega, näiteks ASN.1, XML, C / C ++. TCCN3 põhikeel eksisteerib tekstivormingus, välja arvatud muud vormingud, näiteks tabel, graafika ja esitlus.