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
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.
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.
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.