Objetivos: En esta tarea usted aplicará: comunicación entre procesos remotos usando TCP, uso de túnel con ssh, Medición de anchos de banda promedios y peaks.
Introducción
En la tarea pasada su grupo midió tasas de recepción y transmisión de datos en capa enlace de datos. En esta tarea usted estudiará las tasas a nivel de la capa aplicación para una conexión específica.
El protocolo TCP posee un mecanismo de control de congestión que cambia la ventana de transmisión basado en la ventana de congestión, que es un indicador de la capacidad de tráfico que la red puede transportar, y la ventana de recepción, que es una indicación de la capacidad disponible en el receptor para almacenar los datos enviados. Si la aplicación receptora lee los datos desde la capa de transporte tan pronto llegan datos, la ventana del transmisor estará limitada sólo por la ventana de congestión. Es así como usted podrá estudiar el comportamiento de esta ventana observando la tasa de transferencia en este escenario.
Por otro lado es sabido que los proveedores de acceso a Internet dimensionan sus sistemas (caso usuario domiciliario) asimétricamente. Es decir, dan mayor ancho de banda de bajada que de subida.
Las situaciones previas hacen recomendable (tema memoria, magister?) que según el resultado de esta tarea se propongan formas para controlar la congestión de TCP que consideren los mecanismos usados por los ISP para limitar el tráfico (hay que hacer búsqueda).
Por otro lado UDP no posee control de congestión, luego a través de éste es posible estudiar los mecanismos usados por los ISPs para limitar el tráfico entrante y saliente (no será usado en esta tarea)
En esta tarea su grupo sólo procura medir y observar, no se le pide hacer modelos o explicar lo observado.
Nombres:
tt_server, tt_client: Traffic test server y Traffic test
client. Observación de ventana de congestión para tráfico entrante y
saliente.
tunnel: Túnel TCP vía conexión ssh.
Sintaxis: tt_server <port> <size> <base_tiempo>
tt_client <port> <size> <base_tiempo>
tunnel <port> <host> <hostport>
/-------------------------------\Con túnel:
| Una máquina |
| tt_client |----\
| | |
| tt_server |<---/
\------------------------------ /
/-------------------------------\ /-------------------------------\O alternativamente:
| Máquina Local | | Máquina Remota |
| Home tt_client |----\ /-->| tt_server ELO/aragon |
| | | | | |
| ssh port |<---/ | | |
| | Tráfico vía túnel \---| |
| ssh |------------------------------->| sshd |
\----------------------------- / \-------------------------------/
/-------------------------------\ /--------------------\ /------------------\
| Máquina Local | | Máquina Remota | | host |
| Home tt_client |----\ | aragon | |Laboratorio |
| | | | | | |
| ssh port |<---/ | | | |
| | Tráfico vía túnel | / - >|----->|hostport tt_server|
| ssh |--------------------------->| sshd - - - - / | | |
\----------------------------- / \--------------------/ \------------------/