Para hacer la prueba se implemento wireshark para hacer el sniffing de los paquetes, una vez teniéndolos, filtrarlos y obtener los paquetes que buscamos y así procesar los datos como la demóra, tamaño de éstos, perdida, entre otros.
Proceso:
Con wireshark se hizo el sniffing y se pasó a csv para filtrarlo. Para filtrar lo que se hizo fue tomar la ip de origen, la ip de destino y el protocolo a usarse, en mi caso fue:
- ip: 192.168.1.98
- ip2: 74.125.1.127
- protocolo: UDP
Código que se empleo para el filtrado:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import csv | |
def readDocument(fileName, ip, ip2, protocol): | |
reader = csv.reader(open(fileName, 'rb')) | |
''' | |
fila[0]: No | |
fila[1]: Time | |
fila[2]: Source | |
fila[3]: Destination | |
fila[4]: Protocol | |
fila[5]: Length | |
fila[6]: Info | |
''' | |
n = 1 | |
start = 0.0 | |
agrupar = [] | |
for index, fila in enumerate(reader): | |
if(index > 0 and fila[4] == protocol): #evitamos la primera linea y leemos que sea protocolo udp | |
if(fila[2] == ip or fila[2] == ip2 or fila[3] == ip or fila[3] == ip2): #filtramos unicamente las ip proporcionadas | |
#tiempo | |
end = float(fila[1]) | |
tiempo = end - start | |
#print tiempo | |
start = end | |
agrupar.append(int(fila[5])) | |
n += 1 | |
lista_T = total2(agrupar) | |
for i, j in lista_T: | |
print i, j | |
def total(lista): | |
nl = [] | |
for i in range(1, max(lista)): | |
nl.append((i, lista.count(i))) | |
return nl | |
def main(): | |
readDocument('pruebaHangout', '192.168.1.98', '74.125.1.127', 'UDP') | |
main() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
set yrange[0.0:0.06] | |
plot 'demoraTPaquete.txt' with lines, 'demoraTPaquete.txt' smooth bezier with lines |
El tiempo de demora entre los paquetes enviados y recibidos.
Paquetes perdidos:
Alternativa:
Otra de las alternativas donde podemos filtrar y es más fácil su uso es la herramienta de estadísticas de parte de wireshark.
[la frecuencia de transferencia de los archivos udp]
[tiempo que tarda en responder al request]
Conclusiones:
Donde podemos concluir que la mayoría de los paquetes enviados son entre 20 y 200 bytes, la demora de transferencia es muy variable y no se comporta del todo bien, como se muestra en la figura dos. ya que la primera tiene un pico y luego se comporta igual, para nuevamente tener picos.
La perdida de paquetes es mínima 8 paquetes perdidos de un total de 18296
"la demóra, tamaño de éstos, perdida, entre otros" - midiste pura demora... 7 pts.
ResponderEliminar