Para conseguir que sólo una parte du un fichero remoto sea enviado, vamos a utilizar PHP (Personal home page tools Hypertext Pre-processor) para crear una página Web (dinámica) que haga dicho trabajo. Para ello instalaremos el correspondiente módulo en apache y escribiremos un pequeño programa en PHP que muestre el contenido del fichero en la forma en que nosotros deseamos. Nótese que en este caso es el servidor el que genera un objeto Web dinámico que contiene el fichero y que, por tanto, la mayor parte del trabajo se realiza en el host remoto (el servidor). Esto es importante tenerlo en cuenta si el número de clientes va a ser muy alto porque este esquema no escala.
Una vez que todo parece ir correctamente, creamos el script en PHP que sirve el fichero. Descargue el script (http://www.ace.ual.es/\~vruiz/redes_industriales/read_data.php):
y almacenelo en como el fichero /var/www/read_data.php en remote_host.
Taller 1: Usando Wireshark, compruebe que el servidor Web sólo envía los 10 últimos bytes de texto del fichero remoto.
Ejercicio 1: Mejore el script PHP anterior para que el servidor sea capaz de enviar al cliente un determinado número de líneas de texto, número que el cliente especifica al servidor como un argumento. Dese cuenta de que el script actual trabaja a nivel de bytes (no de líneas) y no acepta ningún argumento externo. Puede encontrar un buen manual de PHP en Internet que le ayude con la tarea de la manipulación de líneas de texto, buscando en Google “PHP manual”, y aunque probablemente encuentre además en el anterior manual cómo se pasa un argumento a un script en PHP, también puede buscar en Google “passing argument to PHP script”.