Sei sulla pagina 1di 4

TP5 - Anlise de interaes http

1. Fazer telnet (comando) para o servidor Web: telnet marco.uminho.pt 80

2. Digitar um pedido HTTP GET: GET http://marco.uminho.pt/index.html

HTTP/1.0

A arquitetura cliente-servidor constituda por um hospedeiro, denominado servidor,


que atende a requisies de muitos outros hospedeiros, denominados clientes. O HTTP
Protocolo de Transferncia de Hipertexto (HyperText Transfer Protocol) , o
protocolo da camada de aplicao da Web, est no corao da Web e executado em dois
programas: um cliente e outro servidor. Os dois, executados em sistemas finais diferentes,
conversam entre si por meio da troca de mensagens HTTP. O objetivo do protocolo HTTP
permitir uma transferncia de arquivos (essencialmente no formato HTML) localizados
graas a uma cadeia de caracteres chamada URL entre um navegador (o cliente) e o
servidor Web.
()

O HTTP define como os clientes requisitam pginas aos servidores e como eles
as transferem aos clientes. Quando um usurio requisita uma pagina Web, o navegador
envia ao servidor mensagens de requisio HTTP para os objetos da pagina. O servidor
recebe as requisies e responde com mensagens de resposta HTTP que contem os
objetos.

A Requisio e a Resposta HTTP

Para definir a estrutura das mensagens e o modo como o cliente e o servidor as


trocam o HTTP usa o TCP como seu protocolo de transporte subjacente. O cliente HTTP
primeiro inicia uma conexo TCP com o servidor. Uma vez estabelecida, os processos do
navegador e do servidor acessam o TCP por meio de suas interfaces de socket. O cliente
envia mensagens de requisio HTTP para a sua interface socket e recebe mensagens de
resposta HTTP de sua interface socket. De maneira semelhante, o servidor HTTP recebe
mensagens de requisio de sua interface socket e envia mensagens de resposta para sua
interface socket. Assim que o cliente envia uma mensagem para sua interface socket, a
mensagem sai de suas mos e passa a estar nas mos do TCP.
precisamente este o processo usado para o browser receber informaes e
estabelecer ligao a www.marco.uminho.pt:
1. O processo cliente HTTP inicia uma conexo TCP para o servidor
www.marco.uminho.pt na porta nmero 80, que o nmero de porta default para
o HTTP. Como referido, associados conexo TCP, haver um socket no cliente
e um socket no servidor.
2. Estabelecida a conexo, o cliente HTTP envia uma mensagem de requisio
HTTP ao servidor atravs do seu socket. Essa mensagem inclui agora mais
informao, nomeadamente o nome de caminho /index.html HTTP/1.0.

Atendendo em particular ao contedo da mensagem de requisio, possvel concluir que ela


est escrita em texto ASCII comum. O pedido HTTP normalmente constitudo por um conjunto
de linhas enviado ao servidor pelo navegador. Ele compreende uma linha de pedido/requisio,
que especifica o tipo de documento solicitado, o mtodo a ser aplicado e a verso do protocolo
utilizada. O campo do mtodo pode assumir vrios valores diferentes, entre eles GET, POST,
HEAD, PUT e DELETE. A grande maioria das mensagens de requisio HTTP emprega o
mtodo GET, o qual e usado quando o navegador requisita um objeto e este e identificado no
campo do URL. Na presente demonstrao, o navegador esta requisitando o objeto /index.html.
e executa a verso HTTP/1.0.

Tambm fazem parte do pedido HTTP os campos de cabealho do pedido, um conjunto de


linhas facultativas que permitem dar informaes adicionais sobre o pedido e/ou o cliente
(navegador, sistema operacional, etc.). A linha de cabealho Host:www.marco.uminho.pt
especifica o hospedeiro no qual o objeto reside.

Por fim, h o corpo do pedido, conjunto de linhas opcionais que devem ser separadas das linhas
precedentes por uma linha vazia e que permite, por exemplo, um envio de dados com um comando
POST durante a comunicao com o servidor, atravs de um formulrio.

3. Enviada a mensagem de requisio HTTP, o processo servidor HTTP recebe a


mensagem de requisio por meio de seu socket, extrai o objeto /index.html do
seu armazenamento (RAM ou disco), converte-o numa mensagem de resposta
HTTP e a envia ao cliente pelo socket.
4. O cliente HTTP recebe a mensagem de resposta e a conexo TCP encerrada. A
mensagem indica que o objeto um arquivo HTML. O cliente extrai o arquivo
da mensagem de resposta, analisa a informao em HTML do ficheiro
/index.html e encontra referencias aos vrios objetos.

Uma mensagem de resposta apresenta trs seces: uma linha inicial ou linha de estado, seis
linhas de cabealho e, em seguida, o corpo da entidade, que a parte principal da mensagem
contem o objeto solicitado. A linha de estado tem trs campos: o de verso do protocolo, um
cdigo de estado e uma mensagem de estado correspondente.

Na conexo em anlise, a mensagem descreve que o servidor usou o HTTP/1.1 e que a


requisio foi bem sucedida, isto , o servidor encontrou e enviou o objeto solicitado (200 OK).
Nas linhas de cabealho, o servidor usa Connection: close para informar ao cliente que fechar a
conexo TCP aps enviar a mensagem. A linha de cabealho Date: indica a hora e a data em que
a resposta HTTP foi criada e enviada pelo servidor, ou seja, a hora em que o servidor extraiu o
objeto de seu sistema de arquivos, inseriu-o na mensagem de resposta e a enviou. A linha de
cabealho Server: mostra que a mensagem foi gerada por um servidor Web Apache. A linha de
cabecalho Last-Modified: indica a hora e a data em que o objeto foi criado ou sofreu a ltima
modificao (03 de Julho de 2012). A linha de cabealho Content-Length: indica o formato do
ficheiro, isto , o numero de bytes do objeto que esta sendo enviado e a linha Content-Type: mostra
que o objeto presente no corpo da mensagem e um texto HTML (1483 bytes).

3. Fazer download da figura UMEnglogo.jpg, uma imagem que aparece

referenciada no ficheiro index.html anterior

Potrebbero piacerti anche