Protokoll tesztelési oktatóanyag: L2 & L3

Mielőtt megismernénk a protokolltesztelést, értsük meg:

Mi az a Protokoll?

Amikor egy számítógép kommunikál egymással, vannak közös szabályok és feltételek, amelyeket minden számítógépnek be kell tartania. Más szavakkal, a protokollok határozzák meg, hogyan továbbítják az adatokat a számítástechnikai eszközök között és a hálózatokon keresztül.

Protokoll tesztelése

Protokoll tesztelése egy módszer a kommunikációs protokollok ellenőrzésére a Switching, Wireless, VoIP, Routing stb. tartományokban. A protokollteszt elsődleges célja a hálózaton küldött csomagok szerkezetének ellenőrzése protokolltesztelő eszközök segítségével. Routereket és kapcsolókat használnak a teszt során, hogy a tesztelés alatt álló eszközök és termékek részeit képezzék.

Routed és Routing Protocols

A protokollokat két kategóriába sorolják irányított protokollok és a útválasztási protokollok

  • Útirányított protokollok: Az irányított protokollok használhatók a felhasználói adatok egyik hálózatból a másik hálózatba való küldésére. Felhasználói forgalmat szállít, például e-maileket, webforgalmat, fájlátvitelt stb. Az irányított protokollok az IP, IPX és AppleTalk.
  • Útválasztási protokollok: Az útválasztási protokollok olyan hálózati protokollok, amelyek meghatározzák az útválasztók útvonalait. Csak routerek között használatos. Például RIP, IGRP, EIGRP stb.

Egyszerűen, a router olyan, mint egy közlekedésre használt busz, míg az útválasztási protokollok jelek az úton.

A kommunikáció típusától függően különböző protokollokat használnak. Az olyan cégek, mint a CISCO, JUNIPER, ALCATEL olyan hálózati eszközöket gyártanak, mint például útválasztók, modemek, vezeték nélküli hozzáférési pontok stb., amelyek különböző protokollokat használnak a kommunikációhoz, pl. Cisco EIGRP-t, OSPF-et stb. használ. A protokollteszt nem más, mint annak ellenőrzése, hogy az EIGRP (Enhanced Interior Gateway Routing Protocol) vagy az OSPF (Open Shortest Path First) vagy bármely más protokoll a megfelelő szabvány szerint működik-e.

A számítógépes protokollok típusai

A protokollok típusai A jegyzőkönyvek célja
TCP / IP Arra használják, hogy információkat küldjenek kis csomagokban az interneten keresztül
UDP/ICMP Kis mennyiségű információ elküldésére szolgál adatcsomagokban az interneten keresztül
POP3 és SMTP Levelek küldésére és fogadására szolgál
Hypertext Transfer Protocol HTML oldal titkosított formában történő átvitelére szolgál, hogy biztonságot nyújtson az érzékeny adatok számára
FTP Fájlok hálózaton keresztüli szállítására szolgál egyik csomópontból a másikba

* TCP / IP- Transmission Control Protocol/Internet Protocol, UDP / ICMP– User Datagram Protocol/Internet Control Message Protocol, POP3 / SMTP– Posta protokoll / Egyszerű Mail Átviteli protokoll, HTTP- Hyper Text Transfer Protocol, FTP– Fájlátviteli protokoll

Különböző típusú hálózati protokollok (L2 és L3)

Az OSI modellnek összesen 7 hálózati kommunikációs rétege van, amelyekben a 2. és 3. réteg nagyon fontos.

  • Réteg 2: Ez egy adatkapcsolati réteg. A Mac-cím, az Ethernet, a Token Ring és a Frame Relay mind példák az adatkapcsolati rétegre.
  • Réteg 3: Ez egy hálózati réteg, amely meghatározza a hálózatban elérhető legjobb kommunikációs útvonalat. Az IP-cím egy példa a layer3-ra.

A protokolltesztelés módja

  • A protokoll teszteléséhez szüksége van protokollelemző és szimulátor
  • A protokollanalizátor biztosítja a megfelelő dekódolást a hívás- és munkamenet-elemzéssel együtt. Míg a szimulátor a hálózati elem különböző entitásait szimulálja
  • Általában a protokolltesztelést a DUT (teszt alatti eszköz) végzi el más eszközökön, például kapcsolókon és útválasztókon, valamint a protokollok konfigurálásában.
  • Ezt követően az eszközök által küldött csomagok csomagszerkezetének ellenőrzése
  • Ellenőrzi az eszköz méretezhetőségét, teljesítményét, protokollalgoritmusát stb. olyan eszközök segítségével, mint az lxNetworks, Scapy és a Wireshark

Tesztelési típusok a protokoll teszteléséhez

A protokolltesztelés magában foglalja a funkcionalitás, a teljesítmény, a protokollverem, az interoperabilitás stb. tesztelését. A protokollteszt során alapvetően három ellenőrzést végeznek.

  • helyessége: Akkor kapjuk-e az X csomagot, amikor vártuk?
  • Késleltetés: Mennyi ideig tart egy csomag továbbítása a rendszeren
  • Sávszélesség: Hány csomagot tudunk küldeni másodpercenként

A protokolltesztelés két kategóriába sorolható. Stressz- és megbízhatósági tesztek és funkcionális tesztek. A stressz- és megbízhatósági tesztek kiterjednek Terhelésvizsgálat, Stressz tesztelés, Teljesítményfelmérésstb. Míg Funkcionális tesztelés magában foglalja a negatív tesztelést, a megfelelőségi tesztelést, az interoperabilitás tesztelését stb.

  • Megfelelőségi vizsgálat: A termékeken megvalósított protokollok megfelelőségét tesztelik, mint például az IEEE, RFC stb.
  • Együttműködési tesztelés: A különböző szállítók együttműködési képességét tesztelték. Ezt a tesztelést a megfelelő platformon végzett megfelelőségi vizsgálat után kell elvégezni
  • Hálózati funkciók tesztelése: A hálózati termékek funkcióinak működőképességét a tervdokumentum alapján tesztelik. Például a szolgáltatások lehetnek portbiztonság egy switchen, ACL egy útválasztón stb.

Tesztesetek minta hálózati eszközök protokolltesztéhez

Íme az útválasztók tesztesete

Teszt neve Tesztsorozat
Egy VLAN egy kapcsolón Építsen két különböző VLAN-t. Ellenőrizze a különböző VLAN-okon lévő gazdagépek közötti láthatóságot
Három szimmetrikus VLAN egy kapcsolón Hozzon létre három különböző aszimmetrikus VLAN-t. Ellenőrizze a gazdagépek közötti láthatóságot
Átfogó fa: A gyökérút költségváltoztatása Tesztelje, hogyan változik a gyökérút költsége egy topológiaváltoztatás után
Átfogó fa: Portblokkolás Ellenőrizze, hogy a feszítőfa protokoll hogyan kerüli el a ciklusok kialakulását a hálózatban, amelyek blokkolják a redundáns kapcsolatokat VLAN is
Különböző gyökérhíd különböző MSTI-hez Mutassuk meg, hogy minden MSTI-nek különböző gyökérhídja lehet
Láthatóság a különböző STP régiók között Ugyanazokkal a VLAN-okkal ellenőrizze a láthatóságot a különböző STP régiók között
Telefon kapcsoló Teljesítmény Generáljon 1000 telefonhívást, és ellenőrizze, hogy a telefonkapcsoló továbbra is működik-e, vagy a teljesítménye romlik
Negatív teszt az eszközre Írja be a helytelen kulcsot, és ellenőrizze a felhasználó hitelesítését. Nem engedheti meg a felhasználó számára a hozzáférést
Vonalra engedélyezett sebesség Ellenőrizze, hogy az eszköz 10 Gbps sebességgel működik, kihasználva az összes rendelkezésre álló sávszélességet a bejövő forgalom kezelésére
Protokoll beszélgetési sebesség Kövesse nyomon a két eszköz közötti TCP-beszélgetést, és ellenőrizze, hogy mindegyik eszköz helyesen viselkedik-e
Válaszidő a munkamenet indításához Mérje meg az eszköz válaszidejét a munkamenet-kezdeményezés meghívási kérelmére

Protokolltesztelési eszközök

Beszéljük meg a protokollok ellenőrzésére használt legfontosabb tesztelési eszközöket

1) Scapy Csomagkészítéshez

Scapy egy hatékony interaktív csomagkezelő program. Lehetővé teszi, hogy

  • Csomagok létrehozása
  • Csomagok dekódolása a hálózaton
  • Csomagok rögzítése és elemzése
  • Csomagok beszúrása a hálózatba

Tehát a scapy alapvetően két dolgot csinál: válaszok fogadása és csomagok küldése. Ön határozza meg a csomagokat, elküldi őket, fogadja a válaszokat, egyezteti a kéréseket a válaszokkal, és visszaadja a csomagpárok listáját és a páratlan csomagok listáját.

Más dolgokat is tud kezelni, például nyomkövetést, egységteszteket, támadásokat vagy hálózatfelderítést, új protokollok fejlesztését, tesztelést stb.

Scapy lehetővé teszi számunkra, hogy a Python szkript, amely lehetővé teszi számunkra, hogy olyan feladatokat hajtsunk végre, mint például csomagok küldése és fogadása vagy csomagok szippantása. Például a scapy beszippanthatja az adatcsomagot az a Python forgatókönyv. A szerkesztőbe beírt parancs a getdit megnyitásához

#gedit scapysniff.py
#!/usr/bin/env python
from scapy.all import*

a= sniff(count=10)
a.nsummary()

save, and change the mode of the file into an executable form
#chmod+x scapysniff.py
# ./scaotsbuff.py

10 csomagot szippant be, és amint 10 csomagot szippantott, kinyomtatja az összefoglalót. Scapy parancstömbként is csomagok egyidejű küldésére és fogadására

Letöltés Scapy

2) Wireshark Eszközök az elemzéshez

A protokoll teszteléséhez használt eszközök- Wireshark. Lehetővé teszi a csomagok valós idejű rögzítését és ember által olvasható formában történő megjelenítését. Lehetővé teszi, hogy mélyen beleásson a hálózati forgalomba, és színkódolás és szűrők használatával megvizsgálja az egyes csomagokat.

Wireshark olyan csomagokat rögzít, amelyek segítenek meghatározni, hogy mikor jön létre a munkamenet, mikor indult el a pontos adatutazás, és mennyi adatot küldenek minden alkalommal stb.

Wireshark gazdag funkciókkal rendelkezik, amelyek magukban foglalják

  • Több száz protokoll alapos vizsgálata, és folyamatosan újabbak kerülnek hozzáadásra
  • Élő rögzítés és offline elemzés
  • Gazdag VoIP elemzés
  • Szabványos három ablaktáblás csomagolt böngésző
  • Több platformon fut, mint pl Windows, Linux, OSX és így tovább
  • A rögzített hálózati adatok grafikus felhasználói felületen keresztül böngészhetők
  • A visszafejtés számos protokollt támogat, mint például az IPsec, ISAKMP, SSL/TLS
  • Élő adatok olvashatók Ethernetről, ATM-ről, Bluetooth-ról, USB-ről, tokenről stb.
  • A kimenet exportálható CSV-be, XML-be, egyszerű szövegbe stb.

Letöltés Wireshark

TTCN

A TCCN egy szabványos tesztelési nyelv a meghatározásához Teszt forgatókönyv és azok megvalósítása a protokoll teszteléséhez. A TCCN tesztcsomag sok tesztesetet tartalmaz, amelyek a TTCN programozási nyelven vannak megírva, és erre használják tesztelés reaktív rendszerek vagy viselkedési tesztelés.

Például egy kávéautomata, amely kávét ad, ha behelyez egy dollárérmét, de nem reagál, ha egy dollárnál kevesebbet helyeznek bele. Az ilyen gépek programozásához TCCN3 nyelvet használnak. Ahhoz, hogy a kávégép reagáljon az érme behelyezésére, meg kell írnunk a TCCN-3 komponenst, amely kávégépként viselkedik. Lehetővé teszi számunkra, hogy tesztünket még azelőtt lefuttathassuk, mielőtt egy tényleges kávéfőző termékként elérhető lenne. Miután ez megtörtént, csatlakoztatjuk a TCCN3 tesztcsomagot a külső eszközhöz.

TTCN

A tesztrendszer ingereket bocsát ki (dollár érme) és válaszokat kap (kávé). Az ingeradapter ingereket kap a tesztrendszertől, és továbbítja azokat a vizsgált rendszernek. A válaszadapter megvárja a tesztelt rendszer válaszait, és továbbítja azokat a tesztrendszernek.

A TCCN3 különféle területeken használható, mint pl

  • Mobil kommunikáció (LTE, WiMAX, 3G stb.)
  • Szélessávú technológiák (ATM, DSL)
  • Köztes szoftverplatformok (webszolgáltatások, CORBA stb.)
  • Internet Protokoll (SIP, IMS, IPv6)
  • Intelligens kártyák
  • Autóipar (AutoSAR, MOST, CAN)

A TCCN-ben meg tudjuk határozni

  • Teszt lakosztályok
  • Tesztsorozat
  • Tesztlépések
  • Változók deklarálása
  • Időzítők deklarálása
  • PDU-k létrehozása stb.

A TCCN integrálható más nyelvű rendszerekkel, mint például az ASN.1, XML, C/C++. A TCCN3 alapnyelv szöveges formátumban létezik, eltekintve más formátumoktól, például táblázatos, grafikus és prezentációs formátumoktól.