WEB Y HTTP Al comienzo de los 90 Prodigy, america online, compuserve, redes de datos nacionales, x.25, framerelay Télefono – 1870, radio/televisión broadcast- 1920, 1930, Web Web: Forms, javascript, java applets, active X HTTP: Hypertext Transfer Protocol [RFC 1945] [RFC 2616] Web Page URL (Uniform/Universal Resource Identifier) Hasta 1997: Tanto browsers como servidores usaban HTTP/1.0 Desde 1998: Empezaron algunos a utilizar HTTP/1.1 TCP como protocolo de transporte HTTP: Protocolo “Stateless” 1 Conexiones Persistentes y no persistentes http puede usar cualquiera de las 2 http/1.0 Conexiones no persistentes: Solo un objeto web es transferido sobre la conexión TCP. http/1.1 Conexión persistente por defecto: Múltiples objetos web pueden ser transferidos durante el tiempo de vida de una sola conexión. Conexiones no persistentes: www.udg.es/eps/index.html.. 11 objetos 1. Cliente http inicia una conexión TCP al servidor www.udg.es sobre el puerto 80. 2. El cliente http envía un mensaje http de “request” al servidor via socket. El mensaje incluye el pathname /eps/index.html. 3. El servidor http recibe el mensaje “request” via socket, recupera el objeto /eps/index.html de la RAM o del disco, encapsula el objeto en un mensaje http de “respuesta” y lo envía al cliente via socket. 4. El servidor http le dice al TCP que cierre su conexión. 5. El cliente http recibe el mensaje de respuesta. Termina la conexión TCP. El mensaje indica que el objeto encapsulado es un archivo HTML. El cliente extrae el fichero del mensaje respuesta, examina el archivo HTML, y encuentra referencia a 10 objetos JPG... 6. Los primeros 4 pasos son repetidos por cada uno delos JPG referenciados. 11 conexiones TCP generadas... paralelas o serie? Tiempo? RTT: round-trip time 2 Conexiones persistentes La conexión TCP continua abierta después de enviar una respuesta Los siguietes requests y repuestas entre el mismo cliente puede ser enviado en la misma comunicación. Tipicamente el servidor cierra la conexión cuando no es usada por cierto tiempo. Formato del mensaje http Request: GET /somedir/page.html HTTP/1.1 Host: www.someschool.edu User-agent: Mozilla/4.0 Connection: close Accept-language:fr Response: HTTP/1.1 200 OK Connection close Date: Thu, 06 Aug 1998 12:00:15 GMT Server: Apache/1.3.0 (Unix) Last-Modified: Mon, 22 Jun 1998 …... Content-Length: 6821 Content-Type: text/html data data data data data ... 3 Interacción Usuario-Servidor Autorización Cookies Contenido HTTP Objetos HTML, jpeg, java applet XML VoiceXML WML (WAP) Como protocolo de transferencia de ficheros (P2P file sharing) 4 FTP 2 Conexiones paralelas Control (21) – Datos (20) State Comandos y “replies” FTP: sent as ASCII text over control channel USER username PASS password LIST return list of file in current directory RETR filename retrieves (gets) file STOR filename stores (puts) file onto remote host status code and phrase (as in HTTP)❒ 331 Username OK, password required 125 data connection already open; transfer starting 425 Can’t open data connection 452 Error writing file 5 CORREO ELECTRONICO EN INTERNET SMTP: Simple Mail Transfer protocol S: 220 hamburger.edu C: HELO crepes.fr S: 250 Hello crepes.fr, pleased to meet you C: MAIL FROM: <[email protected]> S: 250 [email protected]... Sender ok C: RCPT TO: <[email protected]> S: 250 [email protected] ... Recipient ok C: DATA S: 354 Enter mail, end with "." on a line by itself C: Do you like ketchup? C: How about pickles? C: . 6 S: 250 Message accepted for delivery C: QUIT S: 221 hamburger.edu closing connection Formatos de los mensajes mail MIME: Multipurpose Internet Mail Extensions Protocolos de Acceso de MAIL POP3 IMAP HTTP 7 Servicio de Directorio de Internet – DNS Base de datos distribuída implementada en una jerarquia de servidores de nombre Protocolo de la capa de aplicación que permite a hosts y servidores de nombre comunicarse para brindar el servicio de traduccíón. Name Servers Unix software Berkeley Internet Name Domain (BIND) Es usado por HTTP, SMTP, FTP Otros Servicios: o Host Aliasing o Mail Server Aliasing o Load distribution Ejemplo: 8