Laboratorio
di Elettronica e
Telecomunicazioni - Semi-modulo di analisi di reti 802.11
Prove di laboratorio (a.a. 2006-07)
I risultati delle seguenti prove
devono essere inviati per email all'indirizzo alef@teoriadeisegnali.it,
completi di nome e cognome, inserendo come oggetto, la frase "verifica
labsoftel - numero di prova".
Per ogni risposta, indicare il numero della domanda a cui si riferisce; si
suggerisce di partire da questo file preimpostato.
Prima prova
Aprire il programma Wireshark, e caricare questo file di capture,
ottenuto presso un computer con IP 151.100.122.171, configurato con una
netmask di 24 bit.
- 1. qual'è l'indirizzo IP di destinazione del pacchetto numero 12?
chiamiamolo Ip0
- 2. qual'è l'indirizzo Ethernet di destinazione dello stesso ?
Chiamiamolo Et1
- 3. di quanti byte è
costituita l'intestazione ethernet? e quella IP?
- 4. qual'è il protocollo di trasporto incapsulato nel pacchetto 12 ?
- 5. qual'è indirizzo di trasporto del mittente del pacchetto 12? e
quello del destinatario?
Risalendo all'indietro con i numeri di pacchetto, trovare il primo
pacchetto che presenta come indirizzo Ethernet di sorgente, lo stesso
indirizzo Ethernet (Et1)
individuato come destinazione, nella domanda 2.
- 6. di che pacchetto si tratta?
- 7. qual'è l'indirizzo IP dell'host che ha indirizzo ethernet Et1?
Chiamiamolo Ip1
- 8. Ip0 ed Ip1
sono uguali o diversi ? Perchè, se il pacchetto 12 era destinato ad Ip0, è stato inviato al
computer che ha Ip1? Che
tipo di dispositivo pensi che sia, quello con IP pari ad Ip1
?
Ordinare ora il traffico in base all'indirizzo di sorgente, e
posizionarsi all'altezza dei pacchetti che hanno Ip1
come IP di origine
- 9. cosa si trova scritto alla colonna protocollo,
per questi pacchettti?
- 10. posizionarsi sulla finestra intermedia, sopra il nome del
protocollo appena trovato, cliccare con il tasto destro del mouse,
e selezionare Wiki protocol page.
Cosa appare ? Trascrivere il nome del protocollo, e chiudere la
nuova finestra che si è aperta.
- 11. posizionarsi ora sulla riga del protocollo più esterno
(IP), aprirne il dissettore dei campi, ed individuare il numero di
protocollo incapsulato da questi pacchetti.
proviamo ora a seguire ciò che accade quando si richiede una pagina web
- 12. cosa rappresentano i pacchetti 14, 15 e 16? qual'è il loro scopo?
- 13. che dimensione ha l'intestazione di un pacchetto TCP? come si
confronta con quella dell'UDP ?
cliccando con il tasto destro sul pacchetto n. 14, e richiedendo Follow
TCP Stream, generare il filtro di visualizzazione che mostra solo
il traffico della pagina richiesta. Cliccando su Statistics/Summary,
con il display filter attivo, notare
- 14. quanto tempo passa tra il primo pacchetto di apertura TCP, e
quello della sua chiusura
- 15. la velocità media di questa connessione
- 16. il numero totale di bytes scambiati in questa conessione
- 17. il numero totale di bytes diretti nella sola direzione del
client (suggerimento: modificare il display filter selezionando anche
l'IP di destinazione, e ripetere il comando Statistics/Summary
Ora però, affrontiamo delle misure di latenza. Eseguiamo un traceroute
grafico verso un computer posto in Thailandia, mediante il comando
mtr lpn254.pacific.net.th,
e confrontiamo il risultato con quello mostrato dal comando (eseguito in una
altra finestra terminale) tcptraceroute lpn254.pacific.net.th,
e con il risultato ottenibile da lì verso di noi, andando presso il sito http://corporate.pacific.net.th/cgi-bin/tools/tools.pl,
ed inserendo l'indirizzo che otteniamo impartendo il comando ip
addr | grep 151.
- 18. otteniamo gli stessi risultati ? Il percorso rilevato, è lo stesso
? In cosa è differente ?
Verifichiamo ora la latenza verso la destinazione finale, eseguendo il
comando ping, e lasciandolo
girare per almeno 40 secondi; prima di lanciare ping,
però, attiviamo il capture di Wireshark (ricordiamoci di aprirlo come
root, con sudo wireshark).
Quindi, arrestiamo il comando ping,
digitando control-c, e
poi, arrestiamo il capture.
- 19. che ritardo medio osserviamo ?
posizioniamoci su di un pacchetto di Risposta ICMP.
- 20. apriamo l'intestazione Ethernet, ed individuiamo il valore del
campo Type
- 21. apriamo l'intestazione IP, ed individuiamo il valore del campo Protocol
- 22. apriamo l'intestazione ICMP, ed individuiamo il valore del campo Type e del campo Code
selezionando ora Statistics/Protocol
Hierarcy,
- 23. quanti bytes complessivi sono relativi al traffico ICMP ?
- 24. ancora dalla Protocol Hierarcy,
quali sono i 4 protocolli che sono responsabili della maggior parte di
volume di traffico (ossia, di bytes?) (es: nfs,
arp, icmp, stp, smb...). Quanti bytes risultano intestati ad
ognuno ?
Selezioniamo ora Statistics/IO Graphs,
e scegliamo una risoluzione temporale di 0.1 secondo per tick.
- 25. possiamo individuare un intervallo temporale con un picco di
traffico? dove si colloca, nel tempo ?
- 26. qual'è la velocità di picco in questa fase ? (esprimerla in
Bytes/0.1 sec)
- 27. se torniamo alla finestra con il traffico catturato, possiamo
individuare il protocollo responsabile del picco di traffico?
Torniamo alla finestra IO Graphs.
Applichiamo un diverso filtro di visualizzazione, per ognuno dei 4
protocolli più importanti individuati prima.
- 28. possiamo individuare qualche periodicità, in qualcuno di loro ?
Oppure, andamenti costanti?
- 29. scrivere il valore di velocità di picco per ognuno di essi,
accanto al volume totale di traffico
Accediamo ora alle informazioni ottenibili come Statystics/Conversation
List/IPv4
- 30. quali sono le due coppie di IP che si scambiano la maggiore
quantità di bytes?
Considerando che una estremità delle due coppie, siamo noi
stessi, proviamo ad investigare nei confronti del computer con cui
discutiamo di più, ed è nella nostra
stessa rete 151.100.8.0/24.
- 31. eseguiamo il comando nmap
ip_computer_con_cui_chiacchero. Quali servizi trovo aperti ?
ripetiamo il comando, tenendo ora aperto wireshark.
- 32. quanti pacchetto ho generato?
- 33. con che velocità di picco ?
- 34. qual'è ora la dimensione di pacchetto in assoluto più frequente ?
Seconda prova
Il file iso.beacon-v.ods
contiene una prima colonna, con il numero di pacchetto delle trame
beacon di un AP, una seconda colonna con i tempi di arrivo delle stesse
trame, ed una terza colonna, in cui è calcolata la
differenza di tempo di arrivo, tra quello della trama successiva, ed il
tempo di quella attuale (es c1=b2-b1). Inoltre, è graficato
l'andamento degli intertempi, mostrando una deviazione rispetto al
valore atteso di 102,4 milisecondi.
- 1. a partire dal file iso.pcap,
generare un filtro di visualizzazione che mostri solo le trame beacon
con SSID USR5450
- 2. esportare il risultato (con solo le trame visualizzate) in formato
.csv (comma separated value),
con nome iso.beacon.csv
- 3. tentare di aprire iso.beacon.csv
con
OpenOffice. Verificare il successo, e riferirlo nelle risposte. Se poi
non riconosce il punto come separatore decimale, non fa niente.
- 4. torniamo a iso.beacon-v.ods.
Qual'è la massima deviazione, in millisecondi, dell'intertempo,
rispetto al valore atteso? sia in positivo, che in negativo?
- 5. a quale evento si possono attribuire le deviazioni positive?
- 6. cosa si possono attribuire le deviazioni negative ? ci
può essere una ragione, perchè le deviazioni negative,
non avvengono quasi mai in modo isolato, ma a coppie, o più ?
- 7. tentiamo ora di calcolare media e deviazione standard della
colonna C. Che risultato otteniamo ? (suggerimento: i comandi sono
MEDIA(C1:C83), e DEV.ST(C1:C83); inoltre, può essere necessario
impostare il formato numerico, con 6 cifre dopo la virgola
- 8. qual'è il numero di pacchetto (NMR), ed il suo istante
di arrivo (TMR), per cui si verifica il massimo ritardo rispetto al
valore atteso ? (si ricordi che i ritardi mostrati, sono quelli del
beacon successivo)
- 9. quale sarebbe dovuto essere, l'istante di arrivo (TA) di questo
beacon con il ritardo massimo ?
tornare al file iso.pcap, e rimuoviamo
il filtro di visualizzazione.
- 10. perchè il pacchetto NMR, anzichè
essere ricevuto all'istante TA, è arrivato solo in TMR ? cosa stava
succedendo in TA? e perché la risorsa risorsa radio è rimasta
impegnata
per tutto quel tempo, prima della trasmissione del Beacon ?
- 11. tentiamo di determinare il valore di DIFS. Intanto, cos'è il DIFS
?
- 12. prendiamo un pacchetto di 802.11 Ack, seguito da uno di RTS
(ad esempio, 937 e 938, oppure 1021 e 1022). Considerando che per
trasmettere un pacchetto di questo tipo, sono necessari circa 0.2 msec,
e che i due pacchetti dovrebbero essere separati, appunto, di almeno un
DIFS, allora, quanto vale un DIFS, più o meno?
apriamo ora la finestra Statistics/IOGraphs
- 13. cerchiamo di confrontare il grafico della velocità di
trasmissione, con quello degli intertempi dei beacon. Cosa notiamo ?
- creiamo dei filtri di visualizzazione, che mostrano solo
- (a) gli Ack 802.11, i RTS, ed i CTS (assieme) (suggerimento:
usare "prepare a filter"
anzichè "Apply as a filer", aggiungere
le regole in OR, e solo alla fine, premere Apply);
- (b) gli ack TCP nella sola direzione verso 193.206.140.37.
- 14. che espressione hanno questi filtri ?
- 15. qual'è il numero di bytes scambiati nei due casi ?
- 16. qual'è la dimensione media di pacchetto nei due casi?
- 17. qual'è il numero di bytes, e la dimensione media, per tutto
il traffico nel suo complesso ?
- 18. impostando i filtri nella finestra di Statistics/IOGraphs,
cosa possiamo notare?
prendiamo ora in considerazione i pacchetti numero 165, 166 e 167
- 19. di che tipo di trame 802.11 si tratta?
- 20. cosa noti di diverso, nell'incapsulamento su 802.11 dei pacchetti
165 e 167?
osservando un header radiotap, indicare:
- 21. il canale e la frequenza su cui si effettua la trasmissione
- 22. la potenza ricevuta
- 23. la velocità di trasmissione
Esercitazione Intermedia
- Rispondiamo alle prime 9 domande della seconda
prova dell'anno scorso
- Eseguire l'analisi dei programmi server in ascolto sul proprio
computer, mediante i comandi netstat e
fuser
- Aprire con wireshark il file di capture orinoco-frag.pcap,
- chi sono i computer sorgente e destinazione del pacchetto numero 49?
- in base ai dati presenti nell'header radiotap dello stesso
pacchetto, possiamo sapere il canale, la velocità e la
potenza ricevuta, di questa trasmissione?
- confrontando i tempi di arrivo (in secondi) ed i valori dei
campi duration dei pacchetti 77 e 78, possiamo dire quale sia
l'unità di misura del campo duration ?
- in quanti frammenti è suddivisa la trama 802.11 che inizia
al pacchetto 79?
- in quanti segmenti è suddivisa la SDU HTTP che inizia alla pacchetto
81?
- chi sono i computer mittente e destinazione del pacchetto
89? qual'è la sua funzione ?