NetBoy Suite

 

Pachetul NetBoy Suite („The Boys”) include un set de patru aplicații în timp real, utile în managementul rețelelor Intranet/Internet: PacketBoy (analiza și monitorizarea protocoalelor vehiculate prin rețea), WebBoy (vizualizarea și raportarea traficului WWW), EtherBoy (monitorizarea activității din rețea într-un mediu multiprotocol) și GeoBoy (urmărirea „geografic㔠a unei rute către un host aflat la distanță).

PacketBoy

PacketBoy e un puternic utilitar de management a pachetelor ce tranzitează mediul rețelei, cu posibilități de decodare și analiză a celor mai cunoscute protocoale. PacketBoy oferă module configurabile de filtrare a protocoalelor și mecanisme de tip trigger utilizabile la captura automată a pachetelor. Aceste mecanisme pot fi generate de anumite evenimente: accesul la un host sau la o rețea particulară, utilizarea unui anumit protocol, depășirea statisticilor de rețea relativ la o limită prestabilită. La apariția unui astfel de eveniment, programul capturează pachetele automat și le salvează pe disc pentru analize ulterioare.

Funcțiile principale ale utilitarului realizează monitorizarea în timp real a rețelei (gradul de încărcare, procentajul lățimii de bandă disponibile), captura pachetelor și afișarea rezultatelor prin intermediul unei interfețe grafice numită Capture Console.

Din Capture Console se pot selecta submeniurile: butoanele de control (Record Button - inițializarea unei noi capturi, Pause Button - stoparea momentană a unui proces de captură activ, Stop Button - oprirea capturării pachetelor, Abort Button - stoparea procesului și ignorarea pachetelor deja capturate), statistici generale (numărul total de pachete capturate din rețea, numărul pachetelor pierdute, numărul pachetelor filtrate și al celor ignorate), configurarea aplicației de filtrare și a mecanismelor de tip trigger, facilități asupra cărora vom insista in continuare.

Utilizatorul are posibilitatea de a modifica anumiți parametri de funcționare ai programului. PacketBoy examinează întregul trafic și recunoaște protocoalele prin intermediul fișierului root.pdl scris în limbajul proprietar Protocol Definition Language (PDL). Limbajul definește două tipuri de declarații: primitive (atribuirea unui tag la o valoare în cadrul protocolului: primitive tag_name: tag_value "string") și protocol (definirea protocoalelor și furnizarea unor reguli de clasificare a pachetelor:

protocol tag_name: tag_value "string" header_size
 	    {
 	    byte | word: location_value tag_name
 	    ...
 	    }). 

Primitivele sînt utilizate, în principal, pentru definirea tag-urilor folosite în individualizarea protocolului. În exemplul următor: primitive TELNET: 23 "Telnet" tag-ul este TELNET, iar valoarea acestui tag e 23 (numărul de port pentru telnet). Putem continua cu alte câteva exemple:

primitive ARP: 0x806 "ARP"
primitive EII_IPX: 0x8037 "EII IPX"
primitive ICMP: 1 "ICMP"
primitive FTP: 20, 21 "FTP"
primitive SMTP: 25 "Mail"
primitive SPX: 5 "SPX"
primitive NCP: 11 "NCP" . 	  

În cazul declarației de protocol, tag-ul este utilizat pentru identificarea protocolului, iar tag_value specifică un simbol sau o valoare prin care va fi „găsit” protocolul respectiv în cadrul pachetului de date. Opțiunea string permite identificarea protocolului de către utilizator, iar header_size furnizează o condiție de verificare pentru analizorul de pachete:

protocol IP: 0x800 "IP" 20
 	    {
 	    byte: 9 ICMP
 	    byte: 9 IGMP
 	    byte: 9 TCP
 	    byte: 9 UDP
 	    }

În acest caz, tag-ul este IP și are asociată valoarea 0x800. Șirul de identificare este „IP”, iar dimensiunea header-ului 20 bytes. În interiorul header-ului IP există subprotocoalele și primitivele ICMP, IGMP, TCP și UDP. Acestea vor avea fiecare definite protocoale și primitive prin setarea unor valori tag_value care vor detecta subprotocoalele conținute înăuntrul fiecărui pachet IP. Valoarea tag-ului pentru subprotocoalele precizate poate fi găsită la offset-ul primar 9 în cadrul header-ului IP (se caută byte-ul ce conține valoarea respectivă).

Specificațiile complete ale limbajului PDL se află în fișierul protocol.pdl.

PacketBoy include un mecanism de filtrare a protocoalelor, oferind un grad sporit de flexibilitate în procesul decodării acestora. Astfel, există posibilitatea monitorizării unui protocol specific care tranzitează un anumit host identificat prin adresa IP sau prin adresa MAC (Media Access Control).

Folosirea corespunzătoare a mecanismelor trigger amintite la început pot ajuta la menținerea performanțelor rețelei în parametri doriți, cu posibilități de îmbunătățire a configurației și a securității. Când ar fi necesară activarea unui asemenea mecanism care să impună startarea capturii pachetelor? Un răspuns simplu: activarea unui host particular, gradul de încărcare a rețelei peste un anumit procent, utilizarea unei legături distincte între două noduri, detectarea unui transfer ftp etc.

Rezultate
În fereastra Display Window, activă după oprirea unui proces de captură, sînt afișate, în ordine cronologică, toate pachetele „prinse” (informații generale de tipul: durata capturii, dimensiunea pachetului, numele sursei și al destinației, protocoalele incluse în pachet) și, în plus, poate fi urmărită în amănunțime structura fiecărui pachet, conținutul său în formă hexazecimală și caracterele ascii care corespund acestor valori.

WebBoy

WebBoy permite managementul și monitorizarea în timp real a traficului IP, furnizând un set complet de date privitoare la comunicația Internet/Intranet.

Programul construiește harta rețelei prin intermediul unei intuitive interfețe grafice. Rețeaua e afișată sub forma unor cercuri ce conțin host-urile. Dimensiunea unui nod e direct proporțională cu traficul vehiculat. Liniile ce conectează nodurile reprezintă legăturile dintre host-uri, iar culoarea liniilor e funcție de protocoalele dominante pe traseele respective.

În aceeași fereastră e contorizat gradul de încărcare a rețelei, periodic actualizat (procentul lățimii de bandă disponibilă). Programul monitorizează, într-o manieră asemănătoare, numărul URL-urilor accesate pe secundă. Mai jos, apare lista protocoalelor afișate pe baza unui cod al culorilor (Protocol Key). La același nivel, pot fi consultate statistici generale (Statistics): runtime (timpul total de operare al utilitarului), proxy (numărul URL-urilor furnizate de către un server proxy), total URLs (numărul URL-urilor accesate), peak load (gradul maxim de încărcare a rețelei pentru timpul total de rulare), average load (gradul mediu de încărcare a rețelei).

Panoul Controls, accesibil tot din fereastra principală, permite optimizările: Node Scale: dimensiunea afișării nodurilor active, Link Scale: dimensiunea legăturii dintre nodurile care comunică, Max Node Radius: limitarea mărimii unui host pe display, Max Link Width: limitarea lățimii unei legături, Node Time-out: timpul de vizibilitate a unui nod după ieșirea sa din trafic, Link Time-out: timpul de vizibilitate a unei legături după încetarea comunicației, Font Scale: dimensiunea fonturilor utilizate în mesajele de tip text, Network Scale: dimensiunea rețelei, Update Frequency: rata de scanare și actualizare a topologiei rețelei.

Prin funcția Zoom Control utilizatorul poate selecta și mări o zonă dorită din imaginea rețelei. Fereastra Alarms afișează și atenționează apariția unor evenimente. „Alarmele” reprezintă mesaje și semnale sonore asociate unor stări anume.

În ultimul tablou din fereastra principală se derulează lista URL-urilor accesate: timpul contactării, host-ul sursă care solicită URL-ul respectiv și URL-ul cerut. Selectarea explicită a unui URL accesat poate oferi detalii: Source Hosts Traffic - lista host-urilor către care nodul sursă a trimis pachete, protocoale utilizate, Source Hosts Accessed URLs - lista host-urilor accesate de sursă, Source Hosts Served URLs - lista URL-urilor „servite” de host-ul sursă, Destination Hosts Traffic - lista host-urilor către care host-ul destinație a trimis pachete, protocoale utilizate, Destination Hosts Accessed URLs - lista URL-urilor accesate de către host-ul destinație, Destination Hosts Served URLs - lista URL-urilor „servite” de host-ul destinație, Browse the URL - selectarea browser-ului implicit.

Optimizări, configurări
WebBoy examinează traficul IP, iar recunoașterea protocoalelor se realizează prin consultarea fișierului root.pdl scris în PDL (Protocol Definition Language). Am explicat în secțiunea dedicată modulului PacketBoy tipul și sintaxa declarațiilor introduse de PDL. Prin acest limbaj se poate urmări utilizarea unei aplicații de rețea: se editează fișierul protocol.pdl cu scopul de a include detaliile aplicației. Astfel, WebBoy va fi capabil să monitorizeze și să culeagă setul de date referitoare la programul specificat.

Trebuie precizat faptul că încorporarea unor protocoale noi (definite în fișierul protocol.pdl), care nu fac parte din stiva TCP/IP, nu va avea nici un rol în funcționarea programului, ele fiind automat ignorate.

WebBoy permite configurarea modului de afișare și identificare a protocoalelor pe baza unui cod al culorilor. Funcția Focus Builder deschide o fereastră împărțită în trei regiuni: Focus Dictionary - protocoalele definite, Focus Editor - construirea asocierilor protocol-culoare, Protocol Tree - protocoalele obținute din fișierul protocol.pdl ce pot fi incluse în procesul generat de Focus Builder.

Sistemul de alarmare (semnale sonore, mesaje, declanșare de comenzi) poate fi activat în momentul accesării anumitor host-uri, la utilizarea unor protocoale specifice sau în situația creșterii traficului peste o limită prestabilită. Întregul mecanism ajută la optimizarea performanțelor rețelei și la sporirea gradului de securitate (semnalizarea firewall-urilor străpunse, incorectitudini în configurarea software-ului de blocare a unor URL-uri, gestionarea accesului preferențial la paginile Intranet-ului).

Meniuri, opțiuni, rezultate

Meniurile puse la dispoziția utilizatorului activează funcții avansate de urmărire a traficului:

Host Menu furnizează informații despre un host (nume, adresă IP) și structura rețelei din care se poate selecta și analiza activitatea unui calculator;

Statistics Menu conține opțiuni care afectează dinamica imaginilor: Dynamic Hosts - depășirea unei perioade de timp fără producerea nici unui trafic determină dispariția host-ului respectiv din display (conform time-out-ului specificat), Dynamic Links - dispariția unei legături pe care nu se comunică, Cumulative Hosts - afișarea nodurilor din trafic în momentul scanării curente a rețelei, Cumulative Links - afișarea legăturilor existente între host-urile detectate;

Traffic Summaries Menu poate oferi informațiile: Top URLs - caracterizarea celor mai accesate URL-uri, Top Hosts - date despre host-urile cu cea mai intensă activitate, Top Alarms - evenimentele care au produs cele mai multe „declanșări” ale sistemului de alarmă, Top Clients - nodurile care au inițiat cele mai multe cereri URL, Top Servers - topul serverelor care au răspuns unor cereri URL;

Traffic Reports Menu permite consultarea bazei de date a rezultatelor salvate, după dorință, sub formă ASCII, HTML sau RTF (Rich Text Format): URLs Report - URL-uri accesate (în plus, host-ul care a făcut cererea, data cererii), Hosts Report - host-uri monitorizate (identificarea participanților la trafic, protocoale utilizate, număr de biți și de pachete vehiculate, Stats Report - statistici culese în timpul rulării programului (Top URLs, Top Hosts, Top Alarms, Top Clients, Top Servers), Alarm Report - tipul, motivul și numărul alarmelor activate într-un ciclu de funcționare al utilitarului, Site Diagnostic Report - informații privind modul de configurare și administrare al unui site (informații care ar putea furniza detalii despre posibilele probleme existente pe site-ul respectiv).

WebBoy operează pe un segment de rețea conform standardului Ethernet la 10 MB. Dacă acest segment este atașat la un switch, doar o parte redusă a traficului va fi monitorizată. Pentru a fi util, stația pe care rulează programul trebuie să fie plasată într-un segment distribuit.

EtherBoy

EtherBoy completează mecanismul monitorizării și al managementului unui LAN. Lansat în execuție, programul construiește imaginea rețelei, oferind funcții de control și seturi de date statistice și informative accesibile din fereastra principală: Network Load - gradul de încărcare a rețelei (procentajul lărgimii de bandă disponibile), Protocol Key - protocoalele vehiculate (identificarea lor pe baza unui cod al culorilor), Statistics - timpul de rulare al utilitarului, gradul de încărcare medie a comunicației, gradul maxim de încărcare atins, rata pachetelor pe secundă, rata biților pe secundă, numărul pachetelor pierdute, Controls - butoanele ce controlează modul de prezentare a elementelor pe ecran: Node Scale, Link Scale, Maxe Node Radius, Max Link Width, Node Time-out, Link Time-out, Font Scale (au fost explicate în cadrul prezentării aplicației WebBoy), Zoom Control - selectarea unei zone din harta rețelei pentru analize detaliate, Alarms - semnalele sonore și mesajele de atenționare asociate evenimentelor deosebite apărute în rețea.

Meniurile puse la dispoziție:

Hosts Menu - gestionează modalitatea de identificare a host-urilor pe display: Ethernet Address (adresa MAC - Media Access Control), Local Name (numele local prin căutarea fișierelor ethers), Manufacturer (numele producătorului device-ului Ethernet, în cazul în care e disponibilă o asemenea informație), Host List (prezentarea dinamică a nodurilor implicate în trafic);

Statistics Menu - conține opțiuni ce afectează dinamica afișării: Dynamic (host-ul sau legătura care nu vehiculează pachete o perioadă de timp prestabilită (time-out) vor fi șterse automat de pe ecran), Cumulative (monitorizarea întregului trafic pe toată perioada rulării programului);

Traffic menu - controlează modul de reprezentare a traficului: Packets (trafic prin pachete), Bytes (trafic prin bytes);

Traffic Summaries Menu - tabloul rezultatelor monitorizării (Top Hosts, Top Links;

Traffic Reports Menu - salvarea rezultatelor sub formă ASCII, RTF.

Utilizarea limbajului PDL (Protocol Definition Language) și optimizarea mecanismului de alarmare au fost prezentate și nu mai insistăm asupra lor.

EtherBoy a fost construit cu scopul declarat de a rezolva un număr de probleme curente ce apar într-o rețea: pachete pierdute, trafic saturat, configurări incorecte de device-uri sau atașarea celor interzise la topologia LAN-ului, management defectuos de rețea. Rapiditatea procesării datelor culese poate fi influențată doar de puterea stației pe care rulează programul, de viteza sau de topologia rețelei.

Utilitarul încearcă să nu perturbe procesele care folosesc protocoale specifice de management (SNMP) și nici să afecteze performanțele rețelei.

EtherBoy realizează o monitorizare pasivă. Astfel, datele pot fi accesate doar pe segmentul local și nu există posibilitatea de a solicita informații de la rețea (facilități oferite de SNMP), iar statisticile furnizate corespund doar device-urilor active.

GeoBoy

NDG Software își denumește produsul: „the world's first 3D geographical Internet tracing tool”. Utilitarul urmărește o rută Internet între două adrese, indicând și nodurile intermediare (implementarea grafică a binecunoscutei comenzi UNIX traceroute). Interfața grafică e extrem de intuitivă; adresele sursă, destinație și cele intermediare sînt punctate pe imaginea 3D a globului, care poate fi mărit, micșorat, poziționat după preferințe. Harta afișată conține diferite atribute: orașe, râuri, linii de coastă, granițe politice (date înregistrate în fișiere cache editabile de tip: cities.files, map.bdy, map.cil, map.riv). Într-un tabel alăturat (Textual Trace Output) sînt memorate informațiile: numerele și numele IP intermediare (hops), localizarea lor geografică și timpul de parcurs dus-întors până la host-ul respectiv. Localizarea geografică e rezolvată prin asocierile existente într-un fișier cache configurabil: IP name - latitudine – longitudine.

GeoBoy utilizează protocolul ICMP pentru rezolvarea unei rute. În cazul apariției firewall-urilor, acestea trebuie să permită traficul ICMP în ambele sensuri. Programul nu funcționează însă alături de serverele proxy Wingate.

Ultima precizare: NetBoy Suite a fost finalist la categoria „Best All-Around Application” la Comdex, Las Vegas, 1997.


BYTE România - mai 1998


(C) Copyright Computer Press Agora