Vodič za testiranje protokola: L2 & L3

Sadržaj:

Anonim

Prije nego što naučimo o testiranju protokola, shvatimo:

Što je protokol?

Kada računalo međusobno komunicira, postoji zajednički skup pravila i uvjeta koje se svako računalo mora pridržavati. Drugim riječima, protokoli određuju kako se podaci prenose između računalnih uređaja i preko mreža.

Ispitivanje protokola

Testiranje protokola metoda je provjere komunikacijskih protokola u domenama Switching, Wireless, VoIP, Routing, itd. Primarni cilj testiranja protokola je provjera strukture paketa koji se šalju mrežom pomoću alata za testiranje protokola. Usmjerivači i prekidači koriste se tijekom ispitivanja za oblikovanje dijelova uređaja i proizvoda koji se ispituju.

Usmjereni i usmjeravajući protokoli

Protokoli su klasificirani u dvije kategorije usmjereni protokoli i protokoli usmjeravanja

  • Usmjereni protokoli : usmjereni protokoli mogu se koristiti za slanje korisničkih podataka s jedne mreže na drugu mrežu. Prenosi korisnički promet poput e-pošte, web prometa, prijenosa datoteka itd. Usmjereni protokoli su IP, IPX i AppleTalk.
  • Routing Protocols : Routing Protocols su mrežni protokoli koji određuju rute usmjerivača. Koristi se samo između usmjerivača. Na primjer RIP, IGRP, EIGRP itd.

Jednostavno rečeno, usmjerivač je poput sabirnice koja se koristi za prijevoz, dok su protokoli usmjeravanja signali na cesti.

Na temelju vrste komunikacije koriste se različiti protokoli. Tvrtke poput CISCO, JUNIPER, ALCATEL proizvode mrežne uređaje poput usmjerivača, modema, bežičnih pristupnih točaka itd. Koji koriste različite protokole za komunikaciju, na primjer, Cisco koristi EIGRP, OSPF itd. Testiranje protokola nije ništa drugo nego provjeravanje je li EIGRP (Enhanced Interior) Gateway Routing Protocol) ili OSPF (Open First Shortest Path First) ili bilo koji drugi protokol radi prema odgovarajućem standardu.

Vrste računalnih protokola

Vrste protokola Svrha protokola
TCP / IP Koristi se za slanje informacija u malim paketima putem Interneta
UDP / ICMP Koristi se za slanje male količine podataka u paketima podataka putem Interneta
POP3 i SMTP Koristi se za slanje i primanje pošte
Protokol za prijenos hiperteksta Koristi se za prijenos HTML stranice u šifriranom obliku radi osiguranja sigurnosti osjetljivih podataka
FTP Koristi se za prijenos datoteka mrežom s jednog čvora na drugi

* TCP / IP - protokol kontrole prijenosa / internetski protokol, UDP / ICMP - protokol korisničkog datagrama / protokol internetske kontrole poruka, POP3 / SMTP - protokol pošte / protokol jednostavnog prijenosa pošte, HTTP - protokol prijenosa hiperteksta, FTP - protokol prijenosa datoteka

Različite vrste mrežnih protokola (L2 i L3)

OSI model ima ukupno 7 slojeva mrežne komunikacije, pri čemu su sloj 2 i sloj 3 presudni.

  • Sloj 2 : To je sloj podatkovne veze. Mac adresa, Ethernet, Token Ring i Frame Relay svi su primjeri sloja podatkovne veze.
  • Sloj 3 : To je mrežni sloj koji određuje najbolju dostupnu stazu u mreži za komunikaciju. IP adresa je primjer sloja3.

Kako se vrši testiranje protokola

  • Za testiranje protokola potreban vam je analizator protokola i simulator
  • Analizator protokola osigurava pravilno dekodiranje uz analizu poziva i sesije. Dok simulator simulira različite cjeline mrežnog elementa
  • TUT se obično testira na drugim uređajima poput prekidača i usmjerivača i u njemu se konfigurira protokol
  • Nakon toga provjera strukture paketa paketa koje uređaji šalju
  • Provjerava skalabilnost, izvedbu, algoritam protokola itd. Uređaja pomoću alata poput lxNetworks, Scapy i Wireshark

Vrste ispitivanja za ispitivanje protokolom

Testiranje protokola uključuje testiranje funkcionalnosti, performansi, steka protokola, interoperabilnosti itd. Tijekom testiranja protokola u osnovi se rade tri provjere.

  • Ispravnost : Primamo li paket X kada smo očekivali
  • Latencija : Koliko treba paketu za tranzit sustava
  • Širina pojasa : Koliko paketa možemo poslati u sekundi

Testiranje protokola može se podijeliti u dvije kategorije. Ispitivanja naprezanja i pouzdanosti te funkcionalna ispitivanja. Testovi naprezanja i pouzdanosti obuhvaćaju ispitivanje opterećenja, ispitivanje naprezanjem, ispitivanje performansi itd. Dok funkcionalno ispitivanje uključuje negativno ispitivanje, ispitivanje usklađenosti, ispitivanje interoperabilnosti itd.

  • Ispitivanje sukladnosti : Protokoli implementirani na proizvodima testiraju se na usklađenost poput IEEE, RFC itd.
  • Ispitivanje interoperabilnosti : Testira se interoperabilnost različitih dobavljača. Ovo se ispitivanje vrši nakon što se na odgovarajućoj platformi izvrši ispitivanje usklađenosti
  • Ispitivanje mrežnih značajki: Značajke mrežnih proizvoda testiraju se na funkcionalnost s obzirom na projektni dokument. Na primjer, značajke mogu biti zaštita porta na prekidaču, ACL na usmjerivaču itd.

Primjeri testnih slučajeva za ispitivanje protokola mrežnih uređaja

Evo primjera testnog slučaja za usmjerivače

Naziv testa Ispitni slučajevi
  1. Jedan VLAN na jednom prekidaču
  • Izgradite dva različita VLAN-a. Provjerite vidljivost između hostova na različitim VLAN-ovima
  1. Tri simetrična VLAN-a na jednom prekidaču
  • Stvorite tri različita asimetrična VLAN-a. Provjerite vidljivost između domaćina
  1. Rasprostranjeno stablo: varijacija cijene korijenskog puta
  • Testirajte kako se cijena korijenskog puta mijenja nakon promjene topologije
  1. Rasprostranjeno stablo: blokiranje priključaka
  • Provjerite kako protokol obuhvaćajućeg stabla izbjegava stvaranje ciklusa u mreži, blokirajući suvišne veze, uz prisustvo VLAN-ova
  1. Različiti korijenski most za različite MSTI
  • Pokažite da svaki MSTI može imati različit korijenski most
  1. Vidljivost između različitih STP regija
  • S istim VLAN-ovima provjeravajte vidljivost između različitih STP regija
  1. Izvedba telefonske sklopke
  • Generirajte 1000 telefonskih poziva i provjerite radi li telefonska sklopka i dalje ili se njene performanse pogoršavaju
  1. Negativni test za uređaj
  • Unesite netočan ključ i provjerite ima li autentičnosti korisnika. Korisniku ne smije dopustiti pristup
  1. Brzina linije
  • Provjerite radi li uređaj brzinom od 10 Gbps, koristeći svu dostupnu propusnost za rukovanje dolaznim prometom
  1. Stopa razgovora protokola
  • Pratite TCP razgovor između dva uređaja i provjerite je li svaki uređaj imao ispravno ponašanje
  1. Vrijeme odziva na pokretanje sesije
  • Izmjerite vrijeme odziva uređaja na poziv za poziv za pokretanje sesije

Alati za ispitivanje protokola

Razmotrimo najvažnije alate za testiranje koji se koriste za provjeru protokola

Scapy za izradu paketa

Scapy je moćan interaktivni program za manipulaciju paketima. Omogućuje vam

  • Stvorite pakete
  • Dekodiranje paketa na mreži
  • Hvatajte pakete i analizirajte ih
  • Ubrizgajte pakete u mrežu

U osnovi, scapy uglavnom radi dvije stvari: primanje odgovora i slanje paketa . Vi definirate pakete, on ih šalje, prima odgovore, podudara zahtjeve s odgovorima i vraća popis paketa paketa i popis neusporedivih paketa.

Također se može nositi s drugim stvarima, kao što su usmjeravanje tragova, jedinični testovi, napadi ili otkrivanje mreže, razvoj novih protokola, ispitivanje itd.

Scapy nam omogućuje pisanje Python skripte koja nam omogućuje izvršavanje zadatka poput slanja i primanja paketa ili njuškanja paketa. Na primjer, scapy može njuškati podatkovni paket pomoću Python skripte. Naredba za otvaranje getdita upisana u editoru

#gedit scapysniff.py#! / usr / bin / env pythoniz scapy.all uvoz *a = šmrkanje (brojanje = 10)a.nsummary ()spremite i promijenite način datoteke u izvršni oblik# chmod + x scapysniff.py# ./scaotsbuff.py

Njušit će 10 paketa, a čim nanjuši 10 paketa, ispisat će sažetak. Scapy također kao niz naredbi za istovremeno slanje i primanje paketa

Preuzmite Scapy

Alati za analizu Wireshark

Alati koji se koriste za testiranje protokola - Wireshark. Omogućuje snimanje paketa u stvarnom vremenu i prikaz u čitljivom obliku. Omogućuje vam kopanje duboko u mrežni promet i pregled pojedinačnih paketa pomoću kodiranja u boji i filtara.

Wireshark hvata pakete koji pomažu odrediti kada se uspostavlja sesija, kada je pokrenuto točno kretanje podataka i koliko se podataka šalje svaki put itd.

Wireshark ima niz bogatih značajki koje uključuju

  • Temeljita inspekcija stotina protokola, koji su se stalno dodavali
  • Snimanje uživo i izvanmrežna analiza
  • Bogata VoIP analiza
  • Standardni preglednik s tri okna
  • Radi na više platformi poput Windows, Linux, OSX i tako dalje
  • Snimljeni mrežni podaci mogu se pregledavati putem GUI-ja
  • Dešifriranje podržava mnoge protokole poput IPsec, ISAKMP, SSL / TLS
  • Podaci uživo mogu se čitati s Etherneta, bankomata, Bluetootha, USB-a, tokena itd.
  • Izlaz se može izvesti u CSV, XML, običan tekst itd.

Preuzmite Wireshark

TTCN

TCCN je standardni jezik za testiranje za definiranje scenarija ispitivanja i njihovu primjenu za testiranje protokola. TCCN ispitni paket sadrži mnoge ispitne slučajeve napisane u programskom jeziku TTCN i koristi se za testiranje reaktivnih sustava ili bihevioralno testiranje .

Na primjer, automat za kavu koji vam daje kavu nakon umetanja novčića za dolar, ali ne reagira ako je u njega umetnuto nešto manje od jednog dolara. Za programiranje takvih strojeva koristi se jezik TCCN3. Da bi aparat za kavu reagirao prilikom umetanja novčića, moramo napisati TCCN-3 komponentu koja se ponaša kao aparat za kavu. Omogućuje nam da izvršimo test prije nego što stvarni aparat za kavu postane dostupan. Nakon što završimo, spojit ćemo TCCN3 testni paket s vanjskim uređajem.

Test sustav emitira podražaje (novčić u dolarima) i prima odgovore (kava). Adapter za podražaj dobiva podražaje iz ispitnog sustava i prosljeđuje ih ispitnom sustavu. Adapter za odgovor čeka na odgovore sustava koji se ispituje i prosljeđuje ih ispitnom sustavu.

TCCN3 se može koristiti u raznim poljima poput

  • Mobilne komunikacije (LTE, WiMAX, 3G itd.)
  • Širokopojasne tehnologije (ATM, DSL)
  • Platforme Middleware (web usluge, CORBA itd.)
  • Internetski protokol (SIP, IMS, IPv6)
  • Pametne kartice
  • Automobilska industrija (AutoSAR, MOST, CAN)

U TCCN možemo definirati

  • Probni apartmani
  • Ispitni slučajevi
  • Ispitni koraci
  • Deklarirajte varijable
  • Izjavite odbrojavanje vremena
  • Stvorite PDU-ove itd.

TCCN se može integrirati s vrstama sustava drugih jezika poput ASN.1, XML, C / C ++. Osnovni jezik TCCN3 postoji u tekstualnom formatu, osim ostalih formata poput tabelarnog, grafičkog i prezentacijskog.