hypertext transfer protocol equipe: alan josé de moura silva filho (ajmsf) cyrus dias da silva...
TRANSCRIPT
![Page 1: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/1.jpg)
Hypertext Transfer Protocol
Equipe:Alan José de Moura Silva Filho (ajmsf)Cyrus Dias da Silva (cds)Dayse Danielle Soares da Rocha(ddsr)Elton Renan Magalhães Alves (erma)Marcelo Costa Melo de Andrade (mcma)
![Page 2: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/2.jpg)
RoteiroVisão GeralConexõesVersõesFormato de mensagensMétodosCódigos de statusHTTPS
![Page 3: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/3.jpg)
Visão GeralProtocolo da camada de aplicação
Tipos mensagensSintaxe das mensagensSemântica das mensagens Regras de quando e como os processos enviam
as mensagens
![Page 4: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/4.jpg)
Visão GeralWeb e http
Jargões Páginas web consistem em objetos Um objeto é qualquer coisa que tenha uma
URL( Universal Resourse Locator)
www.folha.uol.com.br/folha/dinheiro/ult91u448619.shtml
host caminho
![Page 5: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/5.jpg)
Visão GeralCliente
user agent
Servidor
http response
http request
http responsehttp request
Modelo Cliente Servidor
![Page 6: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/6.jpg)
Visão GeralUsa TCP
Porta 80Stateless – o servidor não mantém estado
sobre requisições passadas de clientes
![Page 7: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/7.jpg)
ConexõesNão-persistentePersistente
![Page 8: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/8.jpg)
Não-persistenteNo máximo um objeto é enviado pela conexão
TCP
HTTP/1.0 usa HTTP não-persistente como padrão
2 RTT – round trip time - para cada objeto
Abre sempre uma nova conexão para cada objeto
![Page 9: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/9.jpg)
Não persistente
Abre conexão para cada objeto
RTT
RTT
Abre conexão
OBJETOTransmissão do objeto
![Page 10: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/10.jpg)
PersistenteVarios objetos podem ser enviados em uma
mesma conexão TCP entre o cliente e o servidor.
HTTP 1.1 usa como padrão
Implementa pipeline
A conexão fecha quando sinalizada no header “Connection ” das mensagens HTTP
![Page 11: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/11.jpg)
VantagensAbre menos conexões TCP.
É possível implementar um pipeline sobre requisições e respostas
O congestionamento da rede é reduzido com a redução do número de pacotes para abrir as conexões
Latencia em requisições seguintes diminui, já que não será necessário abrir novas conexões
![Page 12: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/12.jpg)
Sem pipelineSó envia próxima requisição quando a
anterior tiver sido recebida.1 RTT para cada objeto
![Page 13: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/13.jpg)
Sem pipeline
Vários objetos na mesma conexão
RTT
RTT
OBJETO
OBJETO
![Page 14: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/14.jpg)
Com pipelinePadrão do HTTP 1.1Cliente envia requisições sem esperar pela
resposta de cada requisiçãoGasta um pouco mais que 1RTT para todos os
objetosNão deve enviar em pipeline métodos que
não são idempotentes. Deve esperar pela resposta
![Page 15: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/15.jpg)
Com pipeline
Vários objetos solicitados ao mesmo tempo
RTT OBJETOS
![Page 16: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/16.jpg)
VersõesHTTP 0.9 – só o GETHTTP 1.0 – RFC 1945HTTP 1.1 – RFC 2616
![Page 17: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/17.jpg)
HTTP 1.01996 – RFC 1945Usa conexão não-persistente Possibilidade de transmissão de mensagens
do tipo MIME44 (Multipurpose Internet Mail Extension)
Implementa os métodos de requisição POST e HEAD
Ainda é um protocolo bastante utilizado
![Page 18: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/18.jpg)
HTTP 1.11999 – RFC 2616Habilita conexão persistente com ou sem
pipelineImplementa os métodos GET, POST, HEAD,
PUT, DELETE, TRACE, OPTIONS e CONNECT
Servidores Proxys, entre outras características
![Page 19: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/19.jpg)
PerguntaHá incompatibilidade entre o HTTP1.0 e o HTTP1.1?
![Page 20: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/20.jpg)
Formato das Mensagens•Mensagens do HTTP 1.1•Especificadas em ASCII•Formato geral de uma request mensage
![Page 21: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/21.jpg)
Formato das MensagensExemplo de request mensage:
GET /~if738 HTTP 1.1Host: www.cin.ufpe.br User-agent: Mozilla/4.0Connection: closeAccept-language: pt-br
![Page 22: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/22.jpg)
Formato das Mensagens
Version code sentence
•Mensagens do HTTP 1.1•Formato geral de uma reponse mensage
![Page 23: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/23.jpg)
Formato das MensagensExemplo de response mensage:
HTTP/1.1 301 Moved PermanentlyDate: Thu, 23 Sep 2008 23:27:20 GMTServer: ApacheLocation: http://www.cin.ufpe.br/~if738/Content-Length: 303Connection: closeContent-Type: text/html; charset=iso-8859-1
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"><html><head> <title>301 Moved Permanently</title> </head><body> <h1>Moved Permanently</h1> <p>The document has moved <a href="http://www.cin.ufpe.br/~if738/">here</a>.</p> <hr> <address>Apache Server at www.cin.ufpe.br Port 80</address></body></html>
![Page 24: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/24.jpg)
MétodosMétodos Seguros:
Get, HeadMétodos idempotentes:
Put, Delete, Options, Trace, Get e Head
Post e Connect não respeitam essas propriedades
![Page 25: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/25.jpg)
MétodosGET
Qualquer requisição de dados especificada por uma URL
Sempre retorna entidadeconditional GETpartial GET
HEADIdêntico ao GET, porém sem corpo. Pode ser
usado para validar hyperlink. Retorna metadados
![Page 26: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/26.jpg)
MétodosPOST
Enviar dados a serem processados no servidor.
PUTEnvia dados que serão armazenados no servidor. Caso a operação não seja realizada o servidor
não pode deixar de retorno uma mensagem da causa
HTTP1.1 não define como esse método afeta o estado do servido
![Page 27: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/27.jpg)
MétodosDELETE
Deleta dados no servidorAs mensagem de resposta podem não ser o que
parece.TRACE
Ecoa o caminho feito pela requisiçãoOPTIONS
Retorna informação sobre as opções de conexão entre as partes da conexão
CONNECTConverte a conexão para TCP/Tunnel transparente.
Facilita o uso do criptografia SSL
![Page 28: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/28.jpg)
Diferença entre POST e PUTA principal diferença entre o POST e o
PUT está no significado do URI - Identificador Uniforme de Recursos - da requisição.
POST – identifica um recurso que irá manipular o objeto enviado
PUT – identifica o próprio objeto enviado
![Page 29: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/29.jpg)
Códigos de Resposta
Ao responder uma requisição do cliente, o servidor envia um código de resposta
Constituído por numeros
Segue um padrão
![Page 30: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/30.jpg)
Padrão de resposta1XX – informativo2XX – sucesso3XX – redirecionamento4XX – erros no cliente5XX – erros no servidor
![Page 31: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/31.jpg)
Exemplos200 OK
A resposta segue com o objeto requisitado
302 FoundCliente pega o campo “Location” do header
que informa a URI para o qual o recurso foi direcionado
301 Moved PermanentlyRedirecionamento permanente de URI
![Page 32: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/32.jpg)
Exemplos304 Not Modified
Para uso de caching. Informa que não teve alteração desde a ultima requisição
401 Unauthourizedé possível acessar o recurso apenas por meio de
autenticação
403 ForbiddenNão é possível acessar o recurso, mesmo usando
autenticação
![Page 33: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/33.jpg)
Exemplos404 Not Found
O recurso está temporariamente indisponível ou realmente não exista
500 Internal Server ErrorAlgo inesperado aconteceu no servidor (???)
503 Service UnavailableTemporariamente indisponível. Manutenção ou
sobrecarga
![Page 34: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/34.jpg)
HTTPSImplementação de HTTP sobre uma camada
SSLUsado no comércio online/operações
bancárias e clientes de emailPermite que os dados sejam transmitidos por
uma conexão criptografadaVerifica autenticidade usando certificados
digitais
![Page 35: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/35.jpg)
HTTPS
![Page 36: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/36.jpg)
SSL HANDSHAKE
![Page 37: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/37.jpg)
Referencias Redes De Computadores E A Internet - James
F Kurose
http://www.w3.org/Protocols/
www.UFRJ.br
![Page 38: Hypertext Transfer Protocol Equipe: Alan José de Moura Silva Filho (ajmsf) Cyrus Dias da Silva (cds) Dayse Danielle Soares da Rocha(ddsr) Elton Renan Magalhães](https://reader035.vdocuments.pub/reader035/viewer/2022062312/552fc180497959413d8f1942/html5/thumbnails/38.jpg)
?