Protokolo testavimo pamoka: L2 & L3

Turinys:

Anonim

Prieš sužinodami apie protokolo testavimą, supraskime:

Kas yra protokolas?

Kai kompiuteris bendrauja tarpusavyje, yra bendras taisyklių ir sąlygų rinkinys, kurio turi laikytis kiekvienas kompiuteris. Kitaip tariant, protokolai nustato, kaip duomenys perduodami tarp skaičiavimo įrenginių ir tinklais.

Protokolo testavimas

Protokolo testavimas yra ryšio protokolų tikrinimo būdas perjungimo, belaidžio ryšio, VoIP, maršruto parinkimo ir kt. Srityse. Pagrindinis protokolų testavimo tikslas yra patikrinti tinklų siunčiamų paketų struktūrą naudojant protokolo testavimo įrankius. Maršrutizatoriai ir jungikliai bandymo metu naudojami sudarant bandomų prietaisų ir gaminių dalis.

Maršruto ir maršruto protokolai

Protokolai skirstomi į dvi kategorijas nukreipti protokolai ir maršruto parinkimo protokolai

  • Maršrutiniai protokolai : Maršrutiniai protokolai gali būti naudojami vartotojo duomenims siųsti iš vieno tinklo į kitą tinklą. Jis perduoda vartotojų srautą, pvz., El. Laiškus, žiniatinklio srautą, failų perkėlimą ir kt. Maršrutiniai protokolai yra IP, IPX ir AppleTalk.
  • Maršrutizavimo protokolai : Maršrutizavimo protokolai yra tinklo protokolai, kurie nustato maršrutizatorių maršrutus. Jis naudojamas tik tarp maršrutizatorių. Pavyzdžiui, RIP, IGRP, EIGRP ir kt.

Paprasčiau tariant, maršrutizatorius yra tarsi autobusas, naudojamas transportavimui, o maršruto parinkimo protokolai yra signalai kelyje.

Atsižvelgiant į ryšio tipą, naudojami skirtingi protokolai. Tokios kompanijos kaip CISCO, JUNIPER, ALCATEL gamina tinklo įrenginius, tokius kaip maršrutizatoriai, modemai, belaidžiai prieigos taškai ir kt., Kurie naudoja skirtingus protokolus ryšiui, pavyzdžiui, „Cisco“ naudoja EIGRP, OSPF ir kt. „Gateway Routing Protocol“) arba OSPF („Open Shortest Path First“) arba bet kuris kitas protokolas veikia pagal atitinkamus standartus.

Kompiuterių protokolų tipai

Protokolų rūšys Protokolų paskirtis
TCP / IP Jis naudojamas informacijos siuntimui mažais paketais internetu
UDP / ICMP Jis naudojamas nedideliam informacijos kiekiui duomenų paketuose siųsti internetu
POP3 ir SMTP Jis naudojamas laiškams siųsti ir gauti
Hiperteksto perdavimo protokolas Jis naudojamas perkeliant HTML puslapį užšifruota forma, kad būtų užtikrinta neskelbtinų duomenų apsauga
FTP Jis naudojamas failams per tinklą perkelti iš vieno mazgo į kitą

* TCP / IP - perdavimo valdymo protokolas / interneto protokolas, UDP / ICMP - vartotojo duomenų „Instagram“ protokolas / interneto valdymo pranešimų protokolas, POP3 / SMTP - pašto skyriaus protokolas / paprastas pašto perdavimo protokolas, HTTP - „Hyper Text Transfer Protocol“, FTP - failų perdavimo protokolas

Skirtingi tinklo protokolų tipai (L2 ir L3)

OSI modelyje yra iš viso 7 tinklo ryšio sluoksniai, kuriuose labai svarbus yra 2 ir 3 sluoksniai.

  • 2 sluoksnis : tai duomenų ryšio sluoksnis. „Mac“ adresas, „Ethernet“, „Token Ring“ ir „Frame Relay“ yra duomenų ryšio sluoksnio pavyzdžiai.
  • 3 sluoksnis : Tai tinklo sluoksnis, kuris nustato geriausią prieinamą tinklo kelią komunikacijai. IP adresas yra „layer3“ pavyzdys.

Kaip atlikti protokolo testavimą

  • Norint išbandyti protokolą, jums reikia protokolo analizatoriaus ir treniruoklio
  • Protokolo analizatorius užtikrina tinkamą dekodavimą kartu su skambučių ir sesijų analize. Simuliatorius imituoja įvairius tinklo elemento objektus
  • Paprastai protokolą bando DUT (bandomasis įrenginys) kitiems įrenginiams, pvz., Jungikliams ir maršrutizatoriams, ir jame konfigūruoja protokolą
  • Po to patikrinkite prietaisų siunčiamų paketų paketų struktūrą
  • Jis patikrina prietaiso mastelį, našumą, protokolo algoritmą ir kt., Naudodamas tokias priemones kaip „lxNetworks“, „Scapy“ ir „Wireshark“.

Testavimo tipai protokolo testavimui

Protokolo testavimas apima funkcionalumo, našumo, protokolo kaupimo, sąveikumo ir kt. Testavimą. Protokolo testavimo metu iš esmės atliekami trys patikrinimai.

  • Teisingumas : ar gauname X paketą, kai tikėjomės
  • Delsos laikas : kiek laiko paketas perkelia sistemą
  • Pralaidumas : Kiek paketų galime išsiųsti per sekundę

Protokolo testavimą galima suskirstyti į dvi kategorijas. Streso ir patikimumo testai bei funkciniai testai. Įtempimo ir patikimumo testai apima apkrovos testavimą, įtempių testavimą, eksploatacinių savybių testavimą ir kt. Nors funkcinis testavimas apima neigiamą testavimą, atitikties testavimą, sąveikos testavimą ir kt.

  • Atitikties testavimas : Produktams pritaikytų protokolų tikrinama, ar laikomasi IEEE, RFC ir kt.
  • Sąveikumo testavimas : išbandoma skirtingų tiekėjų sąveika. Šis bandymas atliekamas atlikus atitikties patikrinimą atitinkamoje platformoje
  • Tinklo funkcijų testavimas: Tinklo produktų funkcijų funkcionalumas tikrinamas atsižvelgiant į projektavimo dokumentą. Pvz., Funkcijos gali būti jungiklio sauga, kelvedžio ACL ir kt.

Tinklo įrenginių protokolinių bandymų bandymų atvejų pavyzdžiai

Čia yra maršrutizatorių bandymo atvejo pavyzdys

Testo pavadinimas Bandymo atvejai
  1. Vienas VLAN ant vieno jungiklio
  • Sukurkite du skirtingus VLAN. Patikrinkite skirtingų VLAN kompiuterių matomumą
  1. Trys simetriški VLAN viename jungiklyje
  • Sukurkite tris skirtingus asimetrinius VLAN. Patikrinkite matomumą tarp kompiuterių
  1. Platus medis: šaknies kelio kainos kitimas
  • Išbandykite, kaip keičiasi šaknies kelio kaina po topologijos variantų
  1. Platus medis: uosto blokavimas
  • Patikrinkite, kaip naudojant medžio protokolą išvengiama ciklų susidarymo tinkle, blokuojant nereikalingas nuorodas, esant VLAN
  1. Skirtingas šaknų tiltas skirtingoms MSTI
  • Parodykite, kad kiekvienas MSTI gali turėti skirtingą šaknų tiltą
  1. Matomumas tarp skirtingų STP regionų
  • Tais pačiais VLAN patikrinkite matomumą tarp skirtingų STP regionų
  1. Telefono jungiklio našumas
  • Sukurkite 1000 telefono skambučių ir patikrinkite, ar telefono jungiklis vis dar veikia, ar blogėja jo veikimas
  1. Neigiamas prietaiso bandymas
  • Įveskite neteisingą raktą ir patikrinkite, ar vartotojas nėra autentifikuotas. Tai neturėtų leisti vartotojui pasiekti
  1. Linijos greitis
  • Patikrinkite įrenginį, veikiantį 10 Gbps greičiu, naudodami visą turimą pralaidumą, kad galėtumėte tvarkyti gaunamą srautą
  1. Protokolo pokalbio dažnis
  • Stebėkite TCP pokalbį tarp dviejų įrenginių ir patikrinkite, ar kiekvienas įrenginys elgėsi teisingai
  1. Atsakymo laikas už sesijos inicijavimą
  • Išmatuokite įrenginio atsakymo į kvietimo užklausą dėl sesijos inicijavimo laiką

Protokolo testavimo įrankiai

Aptarkime svarbiausius bandymų įrankius, naudojamus protokolams patikrinti

Pakuotė rankdarbiams

Scapy yra galinga interaktyvi paketų manipuliavimo programa. Tai leidžia jums

  • Kurkite paketus
  • Dekoduokite paketus tinkle
  • Užfiksuokite ir analizuokite paketus
  • Įveskite paketus į tinklą

Taigi iš esmės scapy daugiausia daro du dalykus: gauna atsakymus ir siunčia paketus . Apibrėžiate paketus, jie juos siunčia, gauna atsakymus, suderina užklausas su atsakymais ir pateikia paketų porų sąrašą ir nesuderintų paketų sąrašą.

Jis taip pat gali tvarkyti kitus dalykus, tokius kaip maršruto nustatymas, vieneto bandymai, atakos ar tinklo atradimas, naujų protokolų kūrimas, zondavimas ir kt.

„Scapy“ leidžia mums parašyti „Python“ scenarijų, kuris leidžia mums atlikti užduotis, pvz., Siųsti ir priimti paketus ar uostyti paketus. Pavyzdžiui, „scapy“ gali užuosti duomenų paketą naudodamas „Python“ scenarijų. Į redaktorių įvesta komanda atidaryti „getdit“

#gedit scapysniff.py#! / usr / bin / env pythoniš scapy.all importuoti *a = uostyti (skaičius = 10)a. santrauka ()išsaugokite ir pakeiskite failo režimą į vykdomąją formą# chmod + x scapysniff.py# ./scaotsbuff.py

Jis užuostys 10 paketų ir, kai tik užuostys 10 paketų, atspausdins santrauką. Scapy taip pat kaip komandų masyvas, skirtas vienu metu siųsti ir priimti paketus

Parsisiųsti Scapy

„Wireshark“ analizės įrankiai

Protokolo testavimui naudojamos priemonės - „Wireshark“. Tai leidžia užfiksuoti paketus realiu laiku ir pateikti juos žmonėms suprantama forma. Tai leidžia jums gilintis į tinklo srautą ir tikrinti atskirus paketus naudojant spalvų kodavimą ir filtrus.

„Wireshark“ fiksuoja paketus, kurie padeda nustatyti, kada seansas įsitvirtina, kada buvo pradėta tiksli duomenų kelionė ir kiek duomenų siunčiama kiekvieną kartą ir pan.

„Wireshark“ turi daugybę funkcijų, įskaitant:

  • Kruopštus šimtų protokolų patikrinimas, jų vis pridedama
  • Tiesioginis fiksavimas ir analizė neprisijungus
  • Turtinga VoIP analizė
  • Standartinė trijų sričių naršyklė
  • Veikia keliose platformose, tokiose kaip „Windows“, „Linux“, OSX ir pan
  • Užfiksuotus tinklo duomenis galima naršyti per GUI
  • Iššifravimas palaiko daugelį protokolų, pvz., „IPsec“, ISAKMP, SSL / TLS
  • Tiesioginius duomenis galima nuskaityti iš Ethernet, ATM, „Bluetooth“, USB, žetonų ir kt.
  • Išvestį galima eksportuoti į CSV, XML, paprastą tekstą ir kt.

Atsisiųskite „Wireshark“

TTCN

TCCN yra standartinė testavimo kalba, skirta apibrėžti bandymo scenarijų ir jų įgyvendinimą protokolo testavimui. TCCN testų rinkinyje yra daug bandymų atvejų, parašytų TTCN programavimo kalba, ir jis naudojamas reaktyviųjų sistemų arba elgsenos testavimui .

Pvz., Kavos automatas, kuris duoda kavos įdėjus dolerio monetą, bet nereaguoja, jei į ją įdedama kas mažiau nei doleris. Tokioms mašinoms programuoti naudojama TCCN3 kalba. Kad kavos aparatas reaguotų įmetant monetą, turime parašyti TCCN-3 komponentą, kuris veikia kaip kavos aparatas. Tai leidžia mums atlikti bandymą, kol tikrasis kavos aparatas bus parduodamas kaip produktas. Kai tai bus padaryta, mes sujungsime TCCN3 testų rinkinį su išoriniu įrenginiu.

Tyrimo sistema skleidžia dirgiklius (dolerio moneta) ir gauna atsakymus (kava). Dirgiklių adapteris gauna stimulus iš bandomosios sistemos ir perduoda juos į bandomą sistemą. Atsakymo adapteris laukia bandomos sistemos atsakymų ir perduoda juos bandymo sistemai.

TCCN3 gali būti naudojamas įvairiose srityse, tokiose kaip

  • Mobilusis ryšys (LTE, WiMAX, 3G ir kt.)
  • Plačiajuosčio ryšio technologijos (ATM, DSL)
  • Tarpinės programinės įrangos platformos (interneto paslaugos, CORBA ir kt.)
  • Interneto protokolas (SIP, IMS, IPv6)
  • Išmaniosios kortelės
  • Automobiliai („AutoSAR“, „MOST“, „CAN“)

TCCN galime apibrėžti

  • „Test Suites“
  • Bandymo atvejai
  • Bandymo žingsniai
  • Deklaruoti kintamuosius
  • Paskelbti laikmačius
  • Kurkite PDU ir kt.

TCCN gali būti integruotas į kitų kalbų sistemų tipus, pvz., ASN.1, XML, C / C ++. TCCN3 pagrindinė kalba egzistuoja teksto formatu, išskyrus kitus, pavyzdžiui, lentelių, grafinius ir pateikimo formatus.