SlideShare uma empresa Scribd logo
1 de 39
Baixar para ler offline
Centro Universidade Anhanguera
de Campo Grande – Unidade 1
Superint. CENTRO-OESTE
Tec. em Redes de Computadores
Aula 04 – Protocolos HTTP e FTP
Introdução ao protocolo HTTP
• A web consiste em milhões de clientes (usando browsers como o internet
explorer e o firefox) e servidores (rodando aplicações como o Apache,
Tomcat e JBoss), conectados através de redes com fio e wireless.
2
Arquitetura
• Hoje em dia, a WWW é um serviço cliente/servidor distribuído, no qual
um cliente, usando um browser, pode acessar um serviço hospedado em
um servidor. Entretanto, o serviço pode ser distribuído em muitas
localidades, denominadadas sites.
3
Arquitetura
4
Cliente (browser)
• Uma série de fornecedores oferece browsers comerciais, que interpretam e
exibem um documento Web e praticamente todos definem um mesmo tipo de
arquitetura. Cada browser, em geral, formado por três partes: um controlador,
programas cliente e interpretadores.
– O controlador recebe entradas do teclado ou do mouse e usa os programas
cliente para acessar o documento.
– Após o documento ter sido acessado, o controlador utiliza um dos
interpretadores disponíveis para exibir o documento na tela.
– O interpretador de comandos pode ser baseado em HTML, Java ou JavaScript,
dependendo do tipo de documento.
5
Browser - Navegador
6
Servidor
• Uma página web é hospedada em um servidor. Cada vez que chega uma
solicitação de um cliente, o documento correspondente é localizado e
transferido para ele. Para melhorar a eficiência, em geral os servidores
armazenam os arquivos já solicitado anteriormente em uma área de cache
na memória; a memória cache é muito mais rápida do que o disco rígido.
• Um servidor também pode se tornar mais eficiente .por meio da utilização
de técnicas de multitarefa baseada em threads ou em
multiprocessamento. Nesse caso, um servidor pode responder a mais de
uma solicitação.
7
Servidor
8
URL – Uniform Resource Locator
• Um cliente que deseja que a página Web precisa de seu endereço. Para
facilitar o acesso a documentos distribuídos ao redor do mundo, o
protocolo HTTP usa o conceito de localizadores.
• A URL (Uniform Resource Locator – localização de recursos uniformes) é
um padrão para a especificação de qualquer tipo de informação na
internet. Uma URL é constituída por quatro partes: protocolo, host, porta
e caminho (path).
9
URL – Uniform Resource Locator
• O protocolo é o programa cliente/servidor usado para acessar os documentos
diversos protocolos diferentes podem ser utilizados para acessar um documento;
entre estes temos o FTP, SMTP ou HTTP;
• O Host é o computador onde as informações estão hospedadas, embora ele possa
ser representado por um nome alternativo(alias);
• Uma Url pode também conter o número da porta. Se a porta for incluída, ela será
inserida entre o host e o Path;
10
Documentos Web
• Documentos Estáticos;
• Documentos Dinâmicos;
11
Documentos estáticos
• São aqueles que apresentam uma estrutura fixa, e que são criados e hospedados
em um servidor. O cliente pode obter apenas uma cópia do documento.
• O conteúdo do arquivo somente pode ser alterado no lado do servidor.
• Quando um cliente acessa o documento no servidor, apenas uma cópia do
documento é enviada ao cliente, sendo assim, seu conteúdo não poderá ser
alterado no lado do cliente.
12
Documentos estáticos
13
HTML
• Quando você desenvolve uma página, você usa o HTML para descrever que
aparência a página deve ter e como deve se comportar. O HTML possui várias tags
e atributos de tags. O objetivo do HTML é, a partir de um documento texto,
adicionar tags que dirão ao browser como formatá-lo.
14
15
Documentos Dinâmicos
• Um documento dinâmico é criado por um servidor web toda vez que um browser
solicita o documento. Quando chega uma solicitação, o servidor web roda um
programa aplicativo ou um script que cria o documento dinamicamente.
• O servidor retorna a saída do programa ou do script como resposta para o browser
que solicitou o documento.
• Como um novo documento é criado para cada solicitação, o documento dinâmico
pode variar de uma solicitação para outra.
16
Documentos Dinâmicos
17
Protocolo HTTP
• O HTTP é um protocolo usado principalmente para acessar dados na Web;
• Funciona como uma combinação de dois outros protocolo: FTP e SMTP;
• Ele é similar ao FTP, pois permite a transferência de arquivos e usa serviços TCP.
Entretanto é muito mais simples que o FTP pois usa uma única conexão TCP. Não existe
uma conexão de controle;
• O HTTP é similar ao SMTP porque os dados transferidos entre o cliente e o servidor se
parecem com mensagens SMTP;
• O HTTP utiliza os serviços do TCP na porta 80;
18
Transação HTTP
• A estrutura de uma transação HTTP entre um cliente e um servidor é uma
seqüência simples de Requisição HTTP/Resposta HTTP. Um browser solicita
e um servidor responde.
19
Transação HTTP
Informações que são enviadas na Requisição HTTP:
– O método HTTP (a ação que deve ser executada).
– O caminho (URL – Uniform Resource Locator) do recurso no servidor.
– Parâmetros do formulário (se houverem);
Informações que são enviadas na Resposta HTTP:
– Um código de status (informando se a requisição foi bem sucedida ou não).
– O tipo de conteúdo da resposta (texto, imagem, HTML, etc.) para o browser
saber exibi-la.
– O conteúdo solicitado (a página HTML solicitada, o arquivo de som, a imagem,
etc.).
20
Mensagens de solicitação e Resposta
21
Transação HTTP
• Quais as formas de gerar uma Requisição
HTTP?
– Digitando o endereço do recurso no servidor
diretamente no browser.
– Clicando em um link que aponte para algum
recurso no servidor.
– Enviando dados de um formulário.
22
A Requisição HTTP
• A primeira informação que encontramos na requisição é o método HTTP. O nome
do método informa ao servidor o tipo de solicitação que está sendo feita e como o
resto da mensagem de requisição será formatada.
• O protocolo HTTP possui diversos métodos, mas os que você usará com mais
freqüência são o GET e o POST.
23
Métodos HTTP
Método (Comando) Acão
GET Solicita um documento ao servidor
HEAD Solicita informações sobre um documento, mas
não o documento em si
POST Envia informações do cliente para servidor
PUT Envia um documento do servidor para o cliente
TRACE Ecoa uma solicitação que chega
CONNECT Reservado
OPTION Solicita detalhamento sobre opções disponíveis
24
Método GET
• O GET é o método mais simples do HTTP e seu principal trabalho é pedir ao
servidor que consiga um recurso (página HTML, um PDF, etc) e enviá-lo de volta.
Este método é mais usado quando a requisição é feita digitando-se a URL do
recurso ou clicando-se em um link.
• O GET também pode ser usado para enviar dados de um formulário, mas, como
veremos adiante, existem alguns problemas em usar o GET para enviar dados de
um formulário.
25
Transação GET
26
Requisição GET
27
Método POST
• O POST é uma solicitação mais poderosa. Com o POST você pode solicitar algo e,
ao mesmo, tempo, enviar os dados de um formulário para o servidor. É mais usado
para enviar dados de um formulário HTML.
• Em uma solicitação POST, os parâmetros são enviados no corpo da mensagem de
requisição e, portanto, não ficam limitados da maneira que ficariam quando se usa
um GET.
28
Diferenças entre o POST e o GET:
• A quantidade de dados que se pode passar no GET é limitada pelo servidor (256
bytes, em geral). Se o usuário digitar um texto extenso, o GET pode não funcionar.
• Os dados enviados via GET são exibidos na barra de endereços do browser (expõe
dados secretos, como senhas por exemplo). Já os dados enviados via POST ficam
ocultos do usuário.
• Não é possível marcar (adicionar aos favoritos) o resultado de um request que usa
o POST.
29
Requisição POST
30
Requisição POST
31
Resposta HTTP
• Agora que já vimos as solicitações do browser para o servidor, vamos dar uma
olhada no que o servidor envia de volta como resposta. Uma resposta HTTP é
composta de header e corpo. A informação do header informa ao browser o
protocolo que está sendo usado, se a solicitação obteve êxito e que tipo de
conteúdo (content-type) está incluido no corpo. O corpo possui o conteúdo (por
exemplo, HTML) que o browser exibirá.
32
Frase de Status
• Esse campo é usado em mensagens de resposta. Ele expande o código de
status apresentando informações mais detalhadas na forma de texto.
33
Código Frase Descrição
200 OK A solicitação foi bem sucedida
400 Bad Request Erro de sintaxe na solicitação
401 Unauthorized A solicitação não tem autorização
suficiente para ser executada.
403 Forbidden Serviço negado
404 Not Found O Documento não foi encontrado
500 Not implemented Há um erro, como um crash, por
exemplo, no servidor
503 Service
unavaibable
O serviço está temporariamente
indisponível mas poderá ser solicitado
no futuro
Exemplo de Acesso a um servidor Web
• O HTTP usa caracteres ASCII. Um cliente pode se conectar diretamente a um servidor
usando telnet, que registra na porta 80;
• As próximas três linhas mostram que a conexão é bem sucedida. Em seguida, escreve-
se três linhas.
– A primeira mostra a linha de solicitação (método GET), a segundo é o cabeçalho
(definir o host), a terceira é um espaço em branco, que encerra o pedido.
– A resposta do servidor é de sete linhas que começam com a linha de status.
– A linha em branco no final termina a resposta do servidor. O arquivo de 14.230
linhas é recebida após a linha em branco (não mostrado aqui). A última linha é a
saída pelo cliente.
34
Exemplo de Acesso a um servidor Web
35
Servidor Proxy
• O HTTP permite o uso de servidores proxy. Um servidor Proxy é um computador
que mantém cópia para respostas e solicitações recém-transmitidas.
• O cliente http envia uma solicitação para um servidor proxy. Este verifica seu
cache. Se a mensagem não estiver armazenada no cache, o servidor proxy
retransmite a solicitação para o servidor Web correspondente.
36
FTP
• O File Transfer Protocol (FTP) é outro protocolo da camada de Aplicação comumente
utilizado.
• O FTP foi desenvolvido para possibilitar transferências de arquivos entre um cliente e um
servidor. Um cliente FTP é uma aplicação que roda em um computador e utilizado para
carregar e baixar arquivos de um servidor que executa o daemon FTP (FTPd).
• Para transferir os arquivos com sucesso, o FTP precisa de duas conexões entre o cliente e o
servidor: uma para comandos e respostas e outra para a real transferência do arquivo.
• O cliente estabelece a primeira conexão com o servidor na porta TCP 21. Tal conexão é
utilizada para controlar o tráfego, consistindo de comandos do cliente e respostas do
servidor.
37
FTP
• O cliente estabelece a segunda conexão com o servidor pela porta TCP 20. Essa
conexão é para a transferência real de arquivo e criada toda vez que houver um
arquivo transferido.
• A transferência de arquivos pode acontecer em ambas as direções. O cliente pode
baixar um arquivo do servidor, ou o cliente pode fazer carregar um arquivo ao
servidor.
38
FTP
39

Mais conteúdo relacionado

Mais procurados

Desenvolvimento de Sistemas Web - Conceitos Básicos
Desenvolvimento de Sistemas Web - Conceitos BásicosDesenvolvimento de Sistemas Web - Conceitos Básicos
Desenvolvimento de Sistemas Web - Conceitos BásicosFabio Moura Pereira
 
Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01   Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01 Léo Dias
 
Introdução ao desenvolvimento Web
Introdução ao desenvolvimento WebIntrodução ao desenvolvimento Web
Introdução ao desenvolvimento WebSérgio Souza Costa
 
Redes de computadores
Redes de computadoresRedes de computadores
Redes de computadoresJakson Silva
 
Introdução sobre desenvolvimento web
Introdução sobre desenvolvimento webIntrodução sobre desenvolvimento web
Introdução sobre desenvolvimento webRodrigo Rodrigues
 
Apresentação HTML e CSS
Apresentação HTML e CSSApresentação HTML e CSS
Apresentação HTML e CSSledsifes
 
Aula 2 – Introdução a HTML - conceitos básicos e estrutura
Aula 2 – Introdução a HTML - conceitos básicos e estruturaAula 2 – Introdução a HTML - conceitos básicos e estrutura
Aula 2 – Introdução a HTML - conceitos básicos e estruturaAndré Constantino da Silva
 
Apresentação Sistemas Distribuídos - Conceito
Apresentação Sistemas Distribuídos - ConceitoApresentação Sistemas Distribuídos - Conceito
Apresentação Sistemas Distribuídos - ConceitoThiago Marinho
 
Aula 1 linguagem html (1)
Aula 1   linguagem html (1)Aula 1   linguagem html (1)
Aula 1 linguagem html (1)Kaoru Hatake
 

Mais procurados (20)

Protocolo TCP/IP
Protocolo TCP/IPProtocolo TCP/IP
Protocolo TCP/IP
 
Desenvolvimento de Sistemas Web - Conceitos Básicos
Desenvolvimento de Sistemas Web - Conceitos BásicosDesenvolvimento de Sistemas Web - Conceitos Básicos
Desenvolvimento de Sistemas Web - Conceitos Básicos
 
Modelo osi
Modelo osiModelo osi
Modelo osi
 
Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01   Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01
 
Criação de Sites web Tutorial
Criação de Sites web TutorialCriação de Sites web Tutorial
Criação de Sites web Tutorial
 
Introdução ao desenvolvimento Web
Introdução ao desenvolvimento WebIntrodução ao desenvolvimento Web
Introdução ao desenvolvimento Web
 
Camada de enlace parte1
Camada de enlace   parte1Camada de enlace   parte1
Camada de enlace parte1
 
Redes de computadores
Redes de computadoresRedes de computadores
Redes de computadores
 
Arquitetura de Redes de Computadores
 Arquitetura de Redes de Computadores Arquitetura de Redes de Computadores
Arquitetura de Redes de Computadores
 
Aula01-JavaScript
Aula01-JavaScriptAula01-JavaScript
Aula01-JavaScript
 
Introdução sobre desenvolvimento web
Introdução sobre desenvolvimento webIntrodução sobre desenvolvimento web
Introdução sobre desenvolvimento web
 
Curso de Desenvolvimento Web - Módulo 01 - HTML
Curso de Desenvolvimento Web - Módulo 01 - HTMLCurso de Desenvolvimento Web - Módulo 01 - HTML
Curso de Desenvolvimento Web - Módulo 01 - HTML
 
Introdução ao HTML
Introdução ao HTMLIntrodução ao HTML
Introdução ao HTML
 
Roteadores e roteamento
Roteadores e roteamentoRoteadores e roteamento
Roteadores e roteamento
 
Protocolos de Redes
Protocolos de RedesProtocolos de Redes
Protocolos de Redes
 
Apresentação HTML e CSS
Apresentação HTML e CSSApresentação HTML e CSS
Apresentação HTML e CSS
 
Aula 2 – Introdução a HTML - conceitos básicos e estrutura
Aula 2 – Introdução a HTML - conceitos básicos e estruturaAula 2 – Introdução a HTML - conceitos básicos e estrutura
Aula 2 – Introdução a HTML - conceitos básicos e estrutura
 
Curso de Desenvolvimento Web - Módulo 03 - JavaScript
Curso de Desenvolvimento Web - Módulo 03 - JavaScriptCurso de Desenvolvimento Web - Módulo 03 - JavaScript
Curso de Desenvolvimento Web - Módulo 03 - JavaScript
 
Apresentação Sistemas Distribuídos - Conceito
Apresentação Sistemas Distribuídos - ConceitoApresentação Sistemas Distribuídos - Conceito
Apresentação Sistemas Distribuídos - Conceito
 
Aula 1 linguagem html (1)
Aula 1   linguagem html (1)Aula 1   linguagem html (1)
Aula 1 linguagem html (1)
 

Destaque

Aula02 - protocolos de email
Aula02 -  protocolos de emailAula02 -  protocolos de email
Aula02 - protocolos de emailCarlos Veiga
 
Protocolos de comunicação HTTP
Protocolos de comunicação HTTPProtocolos de comunicação HTTP
Protocolos de comunicação HTTPTuesla Santos
 
PROTOCOLO FTP
PROTOCOLO FTPPROTOCOLO FTP
PROTOCOLO FTPRuby Mg
 
Aula04 – sistemas de proteção de dispositivos parte 01
Aula04 – sistemas de proteção de dispositivos   parte 01Aula04 – sistemas de proteção de dispositivos   parte 01
Aula04 – sistemas de proteção de dispositivos parte 01Carlos Veiga
 
Aula01 conceitos iniciais de infraestrura de redes
Aula01   conceitos iniciais de infraestrura de redesAula01   conceitos iniciais de infraestrura de redes
Aula01 conceitos iniciais de infraestrura de redesCarlos Veiga
 
Curso Básico de cabeamento estruturado
Curso Básico de cabeamento estruturadoCurso Básico de cabeamento estruturado
Curso Básico de cabeamento estruturadoJurandir Silva.'.
 
Protocolo DHCP - Noções básicas - Bóson Treinamentos
Protocolo DHCP - Noções básicas - Bóson TreinamentosProtocolo DHCP - Noções básicas - Bóson Treinamentos
Protocolo DHCP - Noções básicas - Bóson TreinamentosFábio dos Reis
 
Imagem Pessoal Vs Postura Profissional protocolo
Imagem Pessoal Vs Postura Profissional protocoloImagem Pessoal Vs Postura Profissional protocolo
Imagem Pessoal Vs Postura Profissional protocoloNuno Granada
 
instalação do expresso br
instalação do expresso brinstalação do expresso br
instalação do expresso brCarlos Veiga
 
Aula09 frame relay - pratica
Aula09   frame relay - praticaAula09   frame relay - pratica
Aula09 frame relay - praticaCarlos Veiga
 
Criptografia - Fernando Muller
Criptografia - Fernando MullerCriptografia - Fernando Muller
Criptografia - Fernando MullerCarlos Veiga
 
Aula04 - cabeamento estruturado - parte 01
Aula04 - cabeamento estruturado - parte 01Aula04 - cabeamento estruturado - parte 01
Aula04 - cabeamento estruturado - parte 01Carlos Veiga
 
Aula05 - cyrus imap
Aula05 -  cyrus imapAula05 -  cyrus imap
Aula05 - cyrus imapCarlos Veiga
 
Aula03 - protocolo ldap
Aula03 -  protocolo ldapAula03 -  protocolo ldap
Aula03 - protocolo ldapCarlos Veiga
 
Aula02 protocolos da camada 2
Aula02   protocolos da camada 2Aula02   protocolos da camada 2
Aula02 protocolos da camada 2Carlos Veiga
 
Imurl slides
Imurl slidesImurl slides
Imurl slidesPelo Siro
 
Aula08 - frame-relay
Aula08 -   frame-relayAula08 -   frame-relay
Aula08 - frame-relayCarlos Veiga
 

Destaque (20)

Aula02 - protocolos de email
Aula02 -  protocolos de emailAula02 -  protocolos de email
Aula02 - protocolos de email
 
Protocolos de comunicação HTTP
Protocolos de comunicação HTTPProtocolos de comunicação HTTP
Protocolos de comunicação HTTP
 
Http conceitos
Http   conceitosHttp   conceitos
Http conceitos
 
PROTOCOLO FTP
PROTOCOLO FTPPROTOCOLO FTP
PROTOCOLO FTP
 
Protocolo HTTP
Protocolo HTTPProtocolo HTTP
Protocolo HTTP
 
Aula04 – sistemas de proteção de dispositivos parte 01
Aula04 – sistemas de proteção de dispositivos   parte 01Aula04 – sistemas de proteção de dispositivos   parte 01
Aula04 – sistemas de proteção de dispositivos parte 01
 
Aula01 conceitos iniciais de infraestrura de redes
Aula01   conceitos iniciais de infraestrura de redesAula01   conceitos iniciais de infraestrura de redes
Aula01 conceitos iniciais de infraestrura de redes
 
Protocolo ftp
Protocolo ftpProtocolo ftp
Protocolo ftp
 
Curso Básico de cabeamento estruturado
Curso Básico de cabeamento estruturadoCurso Básico de cabeamento estruturado
Curso Básico de cabeamento estruturado
 
Protocolo DHCP - Noções básicas - Bóson Treinamentos
Protocolo DHCP - Noções básicas - Bóson TreinamentosProtocolo DHCP - Noções básicas - Bóson Treinamentos
Protocolo DHCP - Noções básicas - Bóson Treinamentos
 
Imagem Pessoal Vs Postura Profissional protocolo
Imagem Pessoal Vs Postura Profissional protocoloImagem Pessoal Vs Postura Profissional protocolo
Imagem Pessoal Vs Postura Profissional protocolo
 
instalação do expresso br
instalação do expresso brinstalação do expresso br
instalação do expresso br
 
Aula09 frame relay - pratica
Aula09   frame relay - praticaAula09   frame relay - pratica
Aula09 frame relay - pratica
 
Criptografia - Fernando Muller
Criptografia - Fernando MullerCriptografia - Fernando Muller
Criptografia - Fernando Muller
 
Aula04 - cabeamento estruturado - parte 01
Aula04 - cabeamento estruturado - parte 01Aula04 - cabeamento estruturado - parte 01
Aula04 - cabeamento estruturado - parte 01
 
Aula05 - cyrus imap
Aula05 -  cyrus imapAula05 -  cyrus imap
Aula05 - cyrus imap
 
Aula03 - protocolo ldap
Aula03 -  protocolo ldapAula03 -  protocolo ldap
Aula03 - protocolo ldap
 
Aula02 protocolos da camada 2
Aula02   protocolos da camada 2Aula02   protocolos da camada 2
Aula02 protocolos da camada 2
 
Imurl slides
Imurl slidesImurl slides
Imurl slides
 
Aula08 - frame-relay
Aula08 -   frame-relayAula08 -   frame-relay
Aula08 - frame-relay
 

Semelhante a Protocolo HTTP e FTP

2016-redes-E.pptx
2016-redes-E.pptx2016-redes-E.pptx
2016-redes-E.pptxssssssss23
 
Http (hyper text transfer protocol)
Http (hyper text transfer protocol)Http (hyper text transfer protocol)
Http (hyper text transfer protocol)Liliana Costa
 
Samba, Squid, FTP, DHCP1
Samba, Squid, FTP, DHCP1Samba, Squid, FTP, DHCP1
Samba, Squid, FTP, DHCP1SoftD Abreu
 
Protocolos HTTP e HTTPS
Protocolos HTTP e HTTPSProtocolos HTTP e HTTPS
Protocolos HTTP e HTTPSTrabalhosCVIGR
 
Conhecendo o Novo REST Framework
Conhecendo o Novo REST FrameworkConhecendo o Novo REST Framework
Conhecendo o Novo REST FrameworkMario Guedes
 
TÓPICOS AVANÇADOS EMENG. DE COMPUTAÇÃO II 2 semana.pdf
TÓPICOS AVANÇADOS EMENG. DE COMPUTAÇÃO II 2 semana.pdfTÓPICOS AVANÇADOS EMENG. DE COMPUTAÇÃO II 2 semana.pdf
TÓPICOS AVANÇADOS EMENG. DE COMPUTAÇÃO II 2 semana.pdfLeandrovilela19
 
Prog web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webProg web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webRegis Magalhães
 
Prog web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webProg web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webRegis Magalhães
 
5. Pesquisa AtravéS Dos Operadores Booleanos (14 04 09)
5. Pesquisa AtravéS Dos Operadores Booleanos (14 04 09)5. Pesquisa AtravéS Dos Operadores Booleanos (14 04 09)
5. Pesquisa AtravéS Dos Operadores Booleanos (14 04 09)susana12345
 

Semelhante a Protocolo HTTP e FTP (20)

Aplicações web parte 1
Aplicações web parte 1Aplicações web parte 1
Aplicações web parte 1
 
O get and post para etico hacker
O get and post para etico hackerO get and post para etico hacker
O get and post para etico hacker
 
Dawi o protocolo-http
Dawi o protocolo-httpDawi o protocolo-http
Dawi o protocolo-http
 
2016-redes-E.pptx
2016-redes-E.pptx2016-redes-E.pptx
2016-redes-E.pptx
 
Http (hyper text transfer protocol)
Http (hyper text transfer protocol)Http (hyper text transfer protocol)
Http (hyper text transfer protocol)
 
Samba, Squid, FTP, DHCP1
Samba, Squid, FTP, DHCP1Samba, Squid, FTP, DHCP1
Samba, Squid, FTP, DHCP1
 
Protocolos HTTP e HTTPS
Protocolos HTTP e HTTPSProtocolos HTTP e HTTPS
Protocolos HTTP e HTTPS
 
Aula 1
Aula 1Aula 1
Aula 1
 
Web service
Web serviceWeb service
Web service
 
Estudos Technocorp
Estudos TechnocorpEstudos Technocorp
Estudos Technocorp
 
Ferramentas Web 2.0
Ferramentas Web 2.0Ferramentas Web 2.0
Ferramentas Web 2.0
 
Conhecendo o Novo REST Framework
Conhecendo o Novo REST FrameworkConhecendo o Novo REST Framework
Conhecendo o Novo REST Framework
 
Ferramentas Web 2.0
Ferramentas Web 2.0Ferramentas Web 2.0
Ferramentas Web 2.0
 
Cap 02.pdf
Cap 02.pdfCap 02.pdf
Cap 02.pdf
 
Http mensagens
Http   mensagensHttp   mensagens
Http mensagens
 
TÓPICOS AVANÇADOS EMENG. DE COMPUTAÇÃO II 2 semana.pdf
TÓPICOS AVANÇADOS EMENG. DE COMPUTAÇÃO II 2 semana.pdfTÓPICOS AVANÇADOS EMENG. DE COMPUTAÇÃO II 2 semana.pdf
TÓPICOS AVANÇADOS EMENG. DE COMPUTAÇÃO II 2 semana.pdf
 
Vantagens__Desvantagens_Tipos_de_servidores
Vantagens__Desvantagens_Tipos_de_servidoresVantagens__Desvantagens_Tipos_de_servidores
Vantagens__Desvantagens_Tipos_de_servidores
 
Prog web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webProg web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_web
 
Prog web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webProg web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_web
 
5. Pesquisa AtravéS Dos Operadores Booleanos (14 04 09)
5. Pesquisa AtravéS Dos Operadores Booleanos (14 04 09)5. Pesquisa AtravéS Dos Operadores Booleanos (14 04 09)
5. Pesquisa AtravéS Dos Operadores Booleanos (14 04 09)
 

Mais de Carlos Veiga

Aula01 projeto de redes de computadores
Aula01   projeto de redes de computadoresAula01   projeto de redes de computadores
Aula01 projeto de redes de computadoresCarlos Veiga
 
Aula08 tecnologia atm
Aula08   tecnologia atmAula08   tecnologia atm
Aula08 tecnologia atmCarlos Veiga
 
Aula10 topologia extendida com roteamento
Aula10   topologia extendida com roteamentoAula10   topologia extendida com roteamento
Aula10 topologia extendida com roteamentoCarlos Veiga
 
Aula08 dispositivos wireless
Aula08   dispositivos wirelessAula08   dispositivos wireless
Aula08 dispositivos wirelessCarlos Veiga
 
Aula08 exercício01
Aula08   exercício01Aula08   exercício01
Aula08 exercício01Carlos Veiga
 
Aula 07 - topologias híbridas
Aula 07 -  topologias híbridasAula 07 -  topologias híbridas
Aula 07 - topologias híbridasCarlos Veiga
 
Aula06 - exercícios redes sem fio
Aula06 -  exercícios redes sem fioAula06 -  exercícios redes sem fio
Aula06 - exercícios redes sem fioCarlos Veiga
 
Aula06 - criação da topologia dsl
Aula06 -  criação da topologia dslAula06 -  criação da topologia dsl
Aula06 - criação da topologia dslCarlos Veiga
 
Aula05 - tecnologias dsl
Aula05 -  tecnologias dslAula05 -  tecnologias dsl
Aula05 - tecnologias dslCarlos Veiga
 
Aula04 - configuração da topologia ppp - resolvido
Aula04 -  configuração da topologia ppp - resolvidoAula04 -  configuração da topologia ppp - resolvido
Aula04 - configuração da topologia ppp - resolvidoCarlos Veiga
 
Aula05 padrões sem fio
Aula05   padrões sem fioAula05   padrões sem fio
Aula05 padrões sem fioCarlos Veiga
 
Aula04 roteadores wireless
Aula04   roteadores wirelessAula04   roteadores wireless
Aula04 roteadores wirelessCarlos Veiga
 
Aula 03 configuração da topologia ppp
Aula 03   configuração da topologia pppAula 03   configuração da topologia ppp
Aula 03 configuração da topologia pppCarlos Veiga
 
Aula01 introdução a camanda 2 do modelo osi
Aula01   introdução a camanda 2 do modelo osiAula01   introdução a camanda 2 do modelo osi
Aula01 introdução a camanda 2 do modelo osiCarlos Veiga
 
Aula03 transmissão de dados em redes wireless
Aula03   transmissão de dados em redes wirelessAula03   transmissão de dados em redes wireless
Aula03 transmissão de dados em redes wirelessCarlos Veiga
 
Aula02 lab01 - montagem de uma topologia simples
Aula02   lab01 - montagem de uma topologia simplesAula02   lab01 - montagem de uma topologia simples
Aula02 lab01 - montagem de uma topologia simplesCarlos Veiga
 
Aula 01 transmissão de dados em redes wireless
Aula 01   transmissão de dados em redes wirelessAula 01   transmissão de dados em redes wireless
Aula 01 transmissão de dados em redes wirelessCarlos Veiga
 
Prj interdisciplinar - protocolos
Prj   interdisciplinar - protocolosPrj   interdisciplinar - protocolos
Prj interdisciplinar - protocolosCarlos Veiga
 

Mais de Carlos Veiga (20)

Aula01 projeto de redes de computadores
Aula01   projeto de redes de computadoresAula01   projeto de redes de computadores
Aula01 projeto de redes de computadores
 
Aula01
Aula01Aula01
Aula01
 
Aula08 tecnologia atm
Aula08   tecnologia atmAula08   tecnologia atm
Aula08 tecnologia atm
 
Aula10 topologia extendida com roteamento
Aula10   topologia extendida com roteamentoAula10   topologia extendida com roteamento
Aula10 topologia extendida com roteamento
 
Aula08 dispositivos wireless
Aula08   dispositivos wirelessAula08   dispositivos wireless
Aula08 dispositivos wireless
 
Aula07 - desafio
Aula07 -  desafioAula07 -  desafio
Aula07 - desafio
 
Aula08 exercício01
Aula08   exercício01Aula08   exercício01
Aula08 exercício01
 
Aula 07 - topologias híbridas
Aula 07 -  topologias híbridasAula 07 -  topologias híbridas
Aula 07 - topologias híbridas
 
Aula06 - exercícios redes sem fio
Aula06 -  exercícios redes sem fioAula06 -  exercícios redes sem fio
Aula06 - exercícios redes sem fio
 
Aula06 - criação da topologia dsl
Aula06 -  criação da topologia dslAula06 -  criação da topologia dsl
Aula06 - criação da topologia dsl
 
Aula05 - tecnologias dsl
Aula05 -  tecnologias dslAula05 -  tecnologias dsl
Aula05 - tecnologias dsl
 
Aula04 - configuração da topologia ppp - resolvido
Aula04 -  configuração da topologia ppp - resolvidoAula04 -  configuração da topologia ppp - resolvido
Aula04 - configuração da topologia ppp - resolvido
 
Aula05 padrões sem fio
Aula05   padrões sem fioAula05   padrões sem fio
Aula05 padrões sem fio
 
Aula04 roteadores wireless
Aula04   roteadores wirelessAula04   roteadores wireless
Aula04 roteadores wireless
 
Aula 03 configuração da topologia ppp
Aula 03   configuração da topologia pppAula 03   configuração da topologia ppp
Aula 03 configuração da topologia ppp
 
Aula01 introdução a camanda 2 do modelo osi
Aula01   introdução a camanda 2 do modelo osiAula01   introdução a camanda 2 do modelo osi
Aula01 introdução a camanda 2 do modelo osi
 
Aula03 transmissão de dados em redes wireless
Aula03   transmissão de dados em redes wirelessAula03   transmissão de dados em redes wireless
Aula03 transmissão de dados em redes wireless
 
Aula02 lab01 - montagem de uma topologia simples
Aula02   lab01 - montagem de uma topologia simplesAula02   lab01 - montagem de uma topologia simples
Aula02 lab01 - montagem de uma topologia simples
 
Aula 01 transmissão de dados em redes wireless
Aula 01   transmissão de dados em redes wirelessAula 01   transmissão de dados em redes wireless
Aula 01 transmissão de dados em redes wireless
 
Prj interdisciplinar - protocolos
Prj   interdisciplinar - protocolosPrj   interdisciplinar - protocolos
Prj interdisciplinar - protocolos
 

Protocolo HTTP e FTP

  • 1. Centro Universidade Anhanguera de Campo Grande – Unidade 1 Superint. CENTRO-OESTE Tec. em Redes de Computadores Aula 04 – Protocolos HTTP e FTP
  • 2. Introdução ao protocolo HTTP • A web consiste em milhões de clientes (usando browsers como o internet explorer e o firefox) e servidores (rodando aplicações como o Apache, Tomcat e JBoss), conectados através de redes com fio e wireless. 2
  • 3. Arquitetura • Hoje em dia, a WWW é um serviço cliente/servidor distribuído, no qual um cliente, usando um browser, pode acessar um serviço hospedado em um servidor. Entretanto, o serviço pode ser distribuído em muitas localidades, denominadadas sites. 3
  • 5. Cliente (browser) • Uma série de fornecedores oferece browsers comerciais, que interpretam e exibem um documento Web e praticamente todos definem um mesmo tipo de arquitetura. Cada browser, em geral, formado por três partes: um controlador, programas cliente e interpretadores. – O controlador recebe entradas do teclado ou do mouse e usa os programas cliente para acessar o documento. – Após o documento ter sido acessado, o controlador utiliza um dos interpretadores disponíveis para exibir o documento na tela. – O interpretador de comandos pode ser baseado em HTML, Java ou JavaScript, dependendo do tipo de documento. 5
  • 7. Servidor • Uma página web é hospedada em um servidor. Cada vez que chega uma solicitação de um cliente, o documento correspondente é localizado e transferido para ele. Para melhorar a eficiência, em geral os servidores armazenam os arquivos já solicitado anteriormente em uma área de cache na memória; a memória cache é muito mais rápida do que o disco rígido. • Um servidor também pode se tornar mais eficiente .por meio da utilização de técnicas de multitarefa baseada em threads ou em multiprocessamento. Nesse caso, um servidor pode responder a mais de uma solicitação. 7
  • 9. URL – Uniform Resource Locator • Um cliente que deseja que a página Web precisa de seu endereço. Para facilitar o acesso a documentos distribuídos ao redor do mundo, o protocolo HTTP usa o conceito de localizadores. • A URL (Uniform Resource Locator – localização de recursos uniformes) é um padrão para a especificação de qualquer tipo de informação na internet. Uma URL é constituída por quatro partes: protocolo, host, porta e caminho (path). 9
  • 10. URL – Uniform Resource Locator • O protocolo é o programa cliente/servidor usado para acessar os documentos diversos protocolos diferentes podem ser utilizados para acessar um documento; entre estes temos o FTP, SMTP ou HTTP; • O Host é o computador onde as informações estão hospedadas, embora ele possa ser representado por um nome alternativo(alias); • Uma Url pode também conter o número da porta. Se a porta for incluída, ela será inserida entre o host e o Path; 10
  • 11. Documentos Web • Documentos Estáticos; • Documentos Dinâmicos; 11
  • 12. Documentos estáticos • São aqueles que apresentam uma estrutura fixa, e que são criados e hospedados em um servidor. O cliente pode obter apenas uma cópia do documento. • O conteúdo do arquivo somente pode ser alterado no lado do servidor. • Quando um cliente acessa o documento no servidor, apenas uma cópia do documento é enviada ao cliente, sendo assim, seu conteúdo não poderá ser alterado no lado do cliente. 12
  • 14. HTML • Quando você desenvolve uma página, você usa o HTML para descrever que aparência a página deve ter e como deve se comportar. O HTML possui várias tags e atributos de tags. O objetivo do HTML é, a partir de um documento texto, adicionar tags que dirão ao browser como formatá-lo. 14
  • 15. 15
  • 16. Documentos Dinâmicos • Um documento dinâmico é criado por um servidor web toda vez que um browser solicita o documento. Quando chega uma solicitação, o servidor web roda um programa aplicativo ou um script que cria o documento dinamicamente. • O servidor retorna a saída do programa ou do script como resposta para o browser que solicitou o documento. • Como um novo documento é criado para cada solicitação, o documento dinâmico pode variar de uma solicitação para outra. 16
  • 18. Protocolo HTTP • O HTTP é um protocolo usado principalmente para acessar dados na Web; • Funciona como uma combinação de dois outros protocolo: FTP e SMTP; • Ele é similar ao FTP, pois permite a transferência de arquivos e usa serviços TCP. Entretanto é muito mais simples que o FTP pois usa uma única conexão TCP. Não existe uma conexão de controle; • O HTTP é similar ao SMTP porque os dados transferidos entre o cliente e o servidor se parecem com mensagens SMTP; • O HTTP utiliza os serviços do TCP na porta 80; 18
  • 19. Transação HTTP • A estrutura de uma transação HTTP entre um cliente e um servidor é uma seqüência simples de Requisição HTTP/Resposta HTTP. Um browser solicita e um servidor responde. 19
  • 20. Transação HTTP Informações que são enviadas na Requisição HTTP: – O método HTTP (a ação que deve ser executada). – O caminho (URL – Uniform Resource Locator) do recurso no servidor. – Parâmetros do formulário (se houverem); Informações que são enviadas na Resposta HTTP: – Um código de status (informando se a requisição foi bem sucedida ou não). – O tipo de conteúdo da resposta (texto, imagem, HTML, etc.) para o browser saber exibi-la. – O conteúdo solicitado (a página HTML solicitada, o arquivo de som, a imagem, etc.). 20
  • 21. Mensagens de solicitação e Resposta 21
  • 22. Transação HTTP • Quais as formas de gerar uma Requisição HTTP? – Digitando o endereço do recurso no servidor diretamente no browser. – Clicando em um link que aponte para algum recurso no servidor. – Enviando dados de um formulário. 22
  • 23. A Requisição HTTP • A primeira informação que encontramos na requisição é o método HTTP. O nome do método informa ao servidor o tipo de solicitação que está sendo feita e como o resto da mensagem de requisição será formatada. • O protocolo HTTP possui diversos métodos, mas os que você usará com mais freqüência são o GET e o POST. 23
  • 24. Métodos HTTP Método (Comando) Acão GET Solicita um documento ao servidor HEAD Solicita informações sobre um documento, mas não o documento em si POST Envia informações do cliente para servidor PUT Envia um documento do servidor para o cliente TRACE Ecoa uma solicitação que chega CONNECT Reservado OPTION Solicita detalhamento sobre opções disponíveis 24
  • 25. Método GET • O GET é o método mais simples do HTTP e seu principal trabalho é pedir ao servidor que consiga um recurso (página HTML, um PDF, etc) e enviá-lo de volta. Este método é mais usado quando a requisição é feita digitando-se a URL do recurso ou clicando-se em um link. • O GET também pode ser usado para enviar dados de um formulário, mas, como veremos adiante, existem alguns problemas em usar o GET para enviar dados de um formulário. 25
  • 28. Método POST • O POST é uma solicitação mais poderosa. Com o POST você pode solicitar algo e, ao mesmo, tempo, enviar os dados de um formulário para o servidor. É mais usado para enviar dados de um formulário HTML. • Em uma solicitação POST, os parâmetros são enviados no corpo da mensagem de requisição e, portanto, não ficam limitados da maneira que ficariam quando se usa um GET. 28
  • 29. Diferenças entre o POST e o GET: • A quantidade de dados que se pode passar no GET é limitada pelo servidor (256 bytes, em geral). Se o usuário digitar um texto extenso, o GET pode não funcionar. • Os dados enviados via GET são exibidos na barra de endereços do browser (expõe dados secretos, como senhas por exemplo). Já os dados enviados via POST ficam ocultos do usuário. • Não é possível marcar (adicionar aos favoritos) o resultado de um request que usa o POST. 29
  • 32. Resposta HTTP • Agora que já vimos as solicitações do browser para o servidor, vamos dar uma olhada no que o servidor envia de volta como resposta. Uma resposta HTTP é composta de header e corpo. A informação do header informa ao browser o protocolo que está sendo usado, se a solicitação obteve êxito e que tipo de conteúdo (content-type) está incluido no corpo. O corpo possui o conteúdo (por exemplo, HTML) que o browser exibirá. 32
  • 33. Frase de Status • Esse campo é usado em mensagens de resposta. Ele expande o código de status apresentando informações mais detalhadas na forma de texto. 33 Código Frase Descrição 200 OK A solicitação foi bem sucedida 400 Bad Request Erro de sintaxe na solicitação 401 Unauthorized A solicitação não tem autorização suficiente para ser executada. 403 Forbidden Serviço negado 404 Not Found O Documento não foi encontrado 500 Not implemented Há um erro, como um crash, por exemplo, no servidor 503 Service unavaibable O serviço está temporariamente indisponível mas poderá ser solicitado no futuro
  • 34. Exemplo de Acesso a um servidor Web • O HTTP usa caracteres ASCII. Um cliente pode se conectar diretamente a um servidor usando telnet, que registra na porta 80; • As próximas três linhas mostram que a conexão é bem sucedida. Em seguida, escreve- se três linhas. – A primeira mostra a linha de solicitação (método GET), a segundo é o cabeçalho (definir o host), a terceira é um espaço em branco, que encerra o pedido. – A resposta do servidor é de sete linhas que começam com a linha de status. – A linha em branco no final termina a resposta do servidor. O arquivo de 14.230 linhas é recebida após a linha em branco (não mostrado aqui). A última linha é a saída pelo cliente. 34
  • 35. Exemplo de Acesso a um servidor Web 35
  • 36. Servidor Proxy • O HTTP permite o uso de servidores proxy. Um servidor Proxy é um computador que mantém cópia para respostas e solicitações recém-transmitidas. • O cliente http envia uma solicitação para um servidor proxy. Este verifica seu cache. Se a mensagem não estiver armazenada no cache, o servidor proxy retransmite a solicitação para o servidor Web correspondente. 36
  • 37. FTP • O File Transfer Protocol (FTP) é outro protocolo da camada de Aplicação comumente utilizado. • O FTP foi desenvolvido para possibilitar transferências de arquivos entre um cliente e um servidor. Um cliente FTP é uma aplicação que roda em um computador e utilizado para carregar e baixar arquivos de um servidor que executa o daemon FTP (FTPd). • Para transferir os arquivos com sucesso, o FTP precisa de duas conexões entre o cliente e o servidor: uma para comandos e respostas e outra para a real transferência do arquivo. • O cliente estabelece a primeira conexão com o servidor na porta TCP 21. Tal conexão é utilizada para controlar o tráfego, consistindo de comandos do cliente e respostas do servidor. 37
  • 38. FTP • O cliente estabelece a segunda conexão com o servidor pela porta TCP 20. Essa conexão é para a transferência real de arquivo e criada toda vez que houver um arquivo transferido. • A transferência de arquivos pode acontecer em ambas as direções. O cliente pode baixar um arquivo do servidor, ou o cliente pode fazer carregar um arquivo ao servidor. 38