Arquitetura TCP/IP Nível de Aplicação (HTTP, SMTP, FTP & DNS) Prof. Helber Silva

Documentos relacionados
Redes de Computadores I

Correio eletrônico. Sistema de correio da Internet composto de

Capítulo 2. Camada de aplicação

Redes de Computadores

Estruturas de Comunicação de Dados Aula 3 Camadas de Aplicação e Transporte

Redes de Computadores e Aplicações Camada de aplicação IGOR ALVES

PTC Aula Web e HTTP 2.3 Correio eletrônico na Internet 2.4 DNS O serviço de diretório da Internet

DNS. Usa o UDP e a porta 53. Não é uma aplicação com a qual o usuário interage diretamente Complexidade nas bordas da rede

Redes de Computadores RES 12502

Camada de Aplicação Protocolo FTP e Correio Eletrônico

Redes de Computadores

Redes de Computadores. Protocolos de Internet

Correio eletrônico. Sistema de correio da Internet composto de

Servidor de s e Protocolo SMTP. Prof. MSc. Alaor José da Silva Junior

Mônica Oliveira Primo de Lima Edervan Soares Oliveira TRABALHO SOBRE PROTOCOLO HTTP

Redes de Computadores I. Sockets e Arquitetura HTTP

Redes de Computadores

Construção de Sites. Introdução ao Universo Web. Prof. Nícolas Trigo

SMTP Simple Mail Transport Protocol

Redes de Computadores

Redes de Computadores

Redes de Computadores

Redes de Computadores

REDES DE COMPUTADORES II. TÁSSIO JOSÉ GONÇALVES GOMES

Redes de Computadores

Transferência de arquivos (FTP)

Redes de Computadores. Profa. Kalinka Castelo Branco. Junho de Universidade de São Paulo. Camadas de Aplicação. Profa.

Camada de Aplicação. Redes Industriais Prof. Rone Ilídio

Redes de Computadores

Redes de Computadores I

INTRODUÇÃO À INTERNET E À WORLD WIDE WEB

Redes de Computadores

Transferência de Arquivo: Protocolo FTP

Protocolos da camada aplicação

FTP: protocolo de transferência de arquivos

REDES DE COMPUTADORES

Introdução. Página web. Tipos de documentos web. HyperText Transfer Protocol. Rd Redes de Computadores. Aula 27

Capítulo 7. A camada de aplicação

Redes de Computadores

Web. Até a década de 1990, a Internet era utilizada. por pesquisadores, acadêmicos e universitários, para troca de arquivos e para correio eletrônico.

Capítulo 2 Camada de Aplicação

Introdução. Caixa postal (mailbox) Componentes do sistema de correio eletrônico. Correio eletrônico (SMTP, POP e IMAP)

Disciplina: Redes de Computadores. Nível de Aplicação DNS, Correio Eletrônico, WWW

Protocolo HTTP. Eduardo Ferreira dos Santos. Fevereiro, Ciência da Computação Centro Universitário de Brasília UniCEUB 1 / 22

FUNDAMENTOS DE REDES DE COMPUTADORES Unidade 5 Camada de Transporte e Aplicação. Luiz Leão

Universidade Federal do Espírito Santo CCA UFES. Centro de Ciências Agrárias CCA UFES Departamento de Computação. Programação WEB

SMTP x POP3, TCP X UDP, FTP, HTTP RESUMO

Servidor de s e Protocolo SMTP. Professor: João Paulo de Brito Gonçalves Disciplina: Serviços de Redes

Camada de Aplicação da Arquitetura TCP/IP

ATENÇÃO O TCP/IP não é um protocolo. TCP/IP é um conjunto de diversos protocolos em 04 camadas próprias que se relaciona com o modelo OSI.

Correio Eletrônico e os protocolos SMTP, POP3 e IMAP

INTERNET. A figura mostra os inúmeros backbones existentes. São cabos de conexão de altíssima largura de banda que unem o planeta em uma rede mundial.

INTERNET P R O F. M A R C O A N T Ô N I O PROF. MARCO ANTÔNIO

REDES DE COMPUTADORES. Prof. Evandro Cantú

HYPERTEXT TRANSFER PROTOCOL

PTC Aula A Web e o HTTP. (Kurose, p ) (Peterson, p ) 24/03/2017

CENTRAL DE CURSOS 29/05/2014

INTRODUÇÃO ÀS REDES DE COMPUTADORES

Arquitetura da Internet TCP/IP

Protocolos e Serviços de Redes

2Arquitetura cliente-servidor

Capítulo 7. A camada de aplicação

Arquitetura de Rede. Universidade Católica de Pelotas Curso de Engenharia da Computação Disciplina: Redes de Computadores I

Aula 6. Disciplina: IF66B Redes de Computadores 2018/1 Universidade Tecnológica Federal do Paraná Câmpus Curitiba. Aula 6. Prof. Daniel F.

DNS Domain Name System

Protocolos e Serviços de Redes

Aplicação de rede. GA-027 Redes de Computadores. Camada de Aplicação. Artur Ziviani LNCC/MCT. Execução nos sistemas finais com comunicação via rede

Comunicação entre processos

Funcionalidade e Protocolos da Camada de Aplicação

Redes de Computadores Camada de Aplicação. Prof. MSc. Hugo Souza

Redes de Computadores

Capítulo 11 Sumário. Serviço de Correio Eletrônico - SMTP e POP3. Serviço de Páginas - Protocolo HTTP, Linguagem HTML

Arquitetura e Protocolos de Rede TCP/IP

PTC Aula Princípios das aplicações de rede 2.2 A Web e o HTTP. (Kurose, p ) (Peterson, p ) 21/03/2017

Redes de Computadores. Prof. MSc André Y. Kusumoto

Introdução à Computação

Protocolo HTTP. - Características. - Modelo Requisição/Resposta. - Common Gateway Interface (CGI)

Redes de Computadores e Aplicações

Servidor de s e Protocolo SMTP

Arquiteturas de Protocolos. Aplicação. Redes. Aplicações cliente-servidor. Aplicações peer-to-peer

Capítulo 2: Camada de Aplicação

CCT0298 ANALISE DE REDES Aula : Trafego HTTP

10/07/2013. Camadas. Principais Aplicações da Internet. Camada de Aplicação. World Wide Web. World Wide Web NOÇÕES DE REDE: CAMADA DE APLICAÇÃO

Redes de Computadores I Internet - Conceitos

AULA 3 - REDES. Prof. Pedro Braconnot Velloso

REDES DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar

REDES DE COMPUTADORES

Fernando M. V. Ramos, RC (LEI), TP02. HTTP. Redes de Computadores

Protocolos de Rede. Protocolos em camadas

Redes de Computadores e a Internet Kurose. Prof. Rone Ilídio da Silva DTECH-CAP-UFSJ

Teleprocessamento e Redes

Estruturas básicas de redes Internet Padronização e Protocolos

DNS: Sistema de Nomes de Domínio

Arquiteturas de Redes de Computadores Os Modelos RM-OSI e TCP/IP. Prof. M.e Helber Wagner da Silva

Níkolas Timóteo Paulino da Silva Redes de Computadores I ADS 2ºTermo

AULA 2 - INTERNET. Prof. Pedro Braconnot Velloso

Protocolo HTTP. Professor Leonardo Larback

Internet - Navegação. Conceitos. 1 Marco Soares


Transcrição:

Arquitetura TCP/IP Nível de Aplicação (HTTP, SMTP, FTP & DNS) Prof. Helber Silva 1

Roteiro Introdução Protocolo HTTP Protocolo SMTP Protocolo FTP Protocolo DNS Conclusão 2

Introdução Desenvolvimento de aplicações é uma motivação para o uso de redes Aplicação de rede representa um par de processos que enviam mensagens entre si usando uma rede Correio eletrônico, bate-papo, e a maior de todas: a World Wide Web (WWW), conhecida apenas por Web A Web permite o acesso a documentos de hipertexto (texto em formato digital) espalhados mundo afora Compara-se, em importância, a invenções como o telefone, o rádio e a TV. Diferentemente dos dois últimos, porém, a Web funciona sob demanda 3

Arquiteturas de Aplicação de Rede Determina como a aplicação é organizada nos sistemas finais (máquinas que executam as aplicações) Independe da arquitetura da rede, i.e, assume-se uma infraestrutura que provê serviços à aplicação Arquiteturas de aplicação de rede conhecidas Cliente-servidor Par a par (peer to peer ou P2P) 4

Arquiteturas de Aplicação de Rede Arquitetura Cliente-Servidor Uma máquina, chamada servidor, atende a requisições de (possivelmente) muitas outras máquinas, chamadas clientes Exemplo: um servidor Web (aplicação servidor) atende requisições de páginas de navegadores (aplicação cliente) instalados em outras máquinas Servidores Web conhecidos: Apache e Microsoft Internet Information Server 5

Objetos Web Conteúdo da Web é estruturado em objetos Web 6

Objetos Web Acesso via URL (Universal Resource Locator) Exemplo: www.ifrn.edu.br/docente/alguem.jpg www.ifrn.edu.br nome do host (hospedeiro) /docente/alguem.jpg caminho do objeto 7

Protocolos do nível de aplicação Responsáveis pela definição de: Tipos de mensagens trocadas pelos processos Sintaxe (estrutura) das mensagens Semântica (significado) das mensagens Regras de envio, recepção e resposta de mensagens 8

Protocolo HTTP HTTP é acrônimo de HyperText Transfer Protocol Usado na transferência de objetos Web Cliente A (Firefox) Cliente B (Chrome) Servidor Web (Apache) 9

Protocolo HTTP Processo de requisição-resposta no modelo cliente servidor Cliente (p. ex, navegador) envia mensagem de requisição de objetos web Servidor envia mensagem de resposta, possivelmente com os objetos web requisitados pelo cliente Usa os serviços de entrega do protocolo TCP (Transmission Control Protocol) no nível de transporte TCP garante a entrega dos dados entre as aplicações Servidor HTTP usa a porta 80 do TCP Porta: identifica o ponto final de comunicação no sistema operacional de um computador 10

Protocolo HTTP Há atualmente duas versões: o HTTP/1.0 (RFC 1945) e o HTTP/1.1 (RFC 2616) RFC (Request For Comments) descreve os padrões de cada protocolo da Internet A diferença entre o HTTP/1.0 e o HTTP/1.1 é que o primeiro usa conexões TCP transientes, enquanto o último faz uso de conexões TCP persistentes 11

Conexões Transientes x Persistentes 12

Requisição HTTP Exemplo típico GET /somedir/page.html HTTP/1.1 Host: www.someschool.edu Connection: close User-agent: Mozilla/4.0 Accept-language: fr 13

Formato da Requisição HTTP 14

Resposta HTTP Exemplo típico 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 09:23:24 GMT Content-Length: 6821 Content-Type: text/html (data data data data data data...) 15

Formato de Resposta HTTP 16

Códigos de Status de Respostas HTTP 1xx: informação. Ex.: 100 Continue o servidor concorda em atender a requisição do cliente 2xx: sucesso. Ex.: 200 OK requisição bemsucedida; 204 No Content sem conteúdo 3xx: redirecionamento. Ex.: 301 Moved Permanently a página foi removida 4xx: erro do cliente. Ex.: 404 Not Found página não encontrada 5xx: erro no servidor. Ex.: 500 Internal Server Error erro interno no servidor; 503 Service Temporarily Unavailable tente mais tarde 17

Protocolo HTTP É considerado um protocolo sem estado Não mantém informações prévias de requisições HTTP Respostas HTTP são enviadas tantas vezes forem recebidas requisições HTTP de um mesmo cliente 18

Cookies Os famosos biscoitinhos... Arquivos gravados no hospedeiro do cliente HTTP para armazenar a informação de clientes (persistência de comunicações usando o protocolo HTTP) Tamanho: 4KB (pequeno); quantidade de campos: até 5 Exemplo toms-casino.com / CostumerID=457793521 15-10-02 17:10 Yes 19

Funcionamento dos Cookies 1. Cliente HTTP (navegador) envia uma mensagem de requisição HTTP a um servidor HTTP (servidor web) 2. Servidor HTTP envia uma mensagem de resposta HTTP (com o cookie atribuído) para o cliente HTTP 3. Cliente HTTP envia nova requisição HTTP juntamente com o cookie recebido 20

Funcionamento dos Cookies 21

Cache Web Grande parte do tráfego de dados (pacotes) na Internet é proveniente da Web Cache Web é uma estratégia para reduzir o tráfego de dados (e o tempo de resposta para os clientes) devido acesso à Web Tipicamente instalado por um ISP (p. ex., em universidades ou ambientes residenciais) Pode ser implementada de duas formas: No Cliente HTTP (navegador) Usando GET Condicional Na rede Usando um servidor proxy web 22

GET Condicional (If-modified-since) 23

Servidor Proxy Web 24

Correio Eletrônico 25

Correio Eletrônico 26

Correio Eletrônico Modo de comunicação assíncrono Componentes do sistema de correio eletrônico UAs (User Agents Agentes de Usuário) MTAs (Message Transfer Agents Agentes de Transferência de Mensagens) Exemplos de UAs Interface gráfica (Outlook, Thunderbird) Interface texto (mail, pipe) MTA é o Servidor de Correio Eletrônico 27

Protocolo SMTP Simple Mail Transfer Protocol Especificado na RFC 821 (1982) Trata-se de um protocolo para envio de informações Utiliza o TCP (porta 25) como protocolo (do Nível) de Transporte Restringe as mensagens ao formato ASCII, de 7 bits American Standard Code for Information Interchange No endereço nome@dominio.com.br: nome representa uma caixa de correio dominio.com.br representa o computador onde a caixa postal está localizada 28

Funcionamento do SMTP Uma mensagem de correio eletrônico de Alice para Bob: 1. Alice usa seu UA para redigir a mensagem para Bob 2. UA de Alice envia a mensagem para seu MTA (enfileiramento) 3. Cliente SMTP (no MTA de Alice) abre uma conexão TCP (porta 25) para um Servidor SMTP (no MTA de Bob) 4. Após alguma apresentação, Cliente SMTP envia a mensagem de Alice na conexão TCP 5. No MTA de Bob, o Servidor SMTP recebe a mensagem e a coloca na caixa postal dele 6. Bob chama seu UA para ler a mensagem (quando conveniente), usando um protocolo de acesso ao correio, como POP3, IMAP ou HTTP (nos navegadores) 29

Funcionamento do SMTP Uma mensagem de correio eletrônico de Alice para Bob (graficamente): 30

Características do SMTP Múltiplos destinatários em um mesmo servidor Explodidor de mensagens de correio 31

Formato das Mensagens SMTP Formato básico das mensagens de correio é definido na RFC 822 Conteúdo era restrito (inicialmente) a mensagens codificadas em ASCII Exemplo de mensagem de correio: From: alice@alpha.fr To: bob@bravo.edu Subject: Quadro de Monet. 32

Exemplo de Troca de Mensagens Cliente SMTP (C:) no MTA (alpha.fr) de Alice envia dados para Servidor SMTP (S:) no MTA (bravo.edu) de Bob S: 220 bravo.edu C: HELO alpha.fr S: 250 Hello alpha.fr, pleased to meet you C: MAIL FROM: <alice@alpha.fr> S: 250 alice@alpha.fr... Sender ok C: RCPT TO: <bob@bravo.edu> S: 250 bob@bravo.edu... Recipient ok C: DATA S: 354 Enter mail, end with "." on a line by itself C: Bom dia, Bob. Tudo bem contigo? C:. S: 250 Message accepted for delivery C: QUIT S: 221 bravo.edu closing connection 33

Cabeçalhos MIME MIME (Multi purpose Internet Mail Extensions) Cabeçalhos definidos nas RFCs 2045 e 2046 Usados em mensagens multimídia ou mensagens não codificadas em ASCII Exemplo: From: alice@alpha.fr To: bob@bravo.edu Subject: Quadro de Monet. MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Type: image/jpeg (dados codificados em base64.........(dados codificados em base64) 34

Entrega final da mensagem de correio Considera o modo de comunicação assíncrono (conectividade sob demanda dos usuários) Protocolos usados na entrega final POP3 (Post Office Protocol version 3) IMAP (Internet Message Access Protocol) 35

Protocolo POP3 Definido na RFC 1939 Usa o TCP como protocolo (do nível) de transporte Porta 110 TCP UAs descarregam usualmente todas as mensagens e esvaziam a caixa de correio 36

POP3: Exemplo de Troca de Mensagens 37

Protocolo IMAP Definido na RFC 2060 Usa o TCP como protocolo (do nível) de transporte Porta 143 TCP Assume que as mensagens permanecerão indefinidamente no servidor Permite criar, destruir e manipular várias caixas de correio no servidor 38

Webmail UA é o navegador do cliente Exemplos de serviços Webmail Hotmail, Yahoo! Mail, Gmail, etc. Mensagens são enviadas para os servidores de email e retiradas deles usando o protocolo HTTP Os servidores (MTAs), contudo, continuam a se comunicar entre si usando o protocolo SMTP 39

Transferência de arquivos 40

Transferência de Arquivos FTP (File Transfer Protocol) Especifica a transferência de arquivos de um hospedeiro local para um servidor remoto Definido na RFC 959 41

Transferência de Arquivos Alice quer transferir arquivo do seu hospedeiro local para um servidor remoto: 1. Alice interage com o FTP usando agente de usuário FTP, fornecendo nome do hospedeiro remoto 2. Cliente FTP do hospedeiro local estabelece conexão TCP com o servidor FTP (remoto) 3. Alice fornece sua identificação e senha (via conexão TCP já aberta com o servidor) 4. Após autorizado pelo servidor, Alice copia um ou mais arquivos armazenados no sistema de arquivo local para o sistema de arquivo remoto (ou viceversa) 42

Transferência de Arquivos Protocolo FTP usa dois tipos de conexão TCP: Uma conexão de controle (TCP persistente, porta 21) durante toda a sessão FTP Uma conexão de dados (TCP transiente, porta 20) para cada transferência de arquivo Conexão de controle separada da conexão de dados (mensagens de controle fora da banda ) 43

Modos de Operação FTP Modo de operação corresponde ao comportamento do Servidor FTP na abertura da conexão de dados Pode ser ativo (padrão) ou passivo No modo ativo, o Servidor FTP abre a conexão de dados TCP com o cliente FTP No modo passivo, o Cliente FTP abre a conexão de dados com o servidor FTP O FTP mantém o estado do cliente Monitora o diretório corrente do usuário no diretório remoto no servidor 44

FTP: Modo Ativo 45

FTP: Modo Passivo 46

Endereçamento de máquinas 47

Endereçamento de máquinas Endereços IP Usados pelo protocolo IP (Internet Protocol) no nível de rede para realizar o serviço de roteamento Possuem comprimento fixo e são estruturados hierarquicamente Humanos preferem nomes, enquanto equipamentos intermediários na rede (roteadores) preferem endereços IP Como acomodar essas preferências? 48

Serviço DNS DNS (Domain Name Service Sistema de Nomes de Domínio) Serviço de diretório que mapeia hostnames para endereços IP na Internet Especificado nas RFCs 1034 e 1035 Representa um banco de dados distribuído, seguindo uma hierarquia de servidores de nomes (servidores DNS), e um protocolo de nível de aplicação que permite que hospedeiros consultem o banco de dados distribuído Protocolo DNS usa a porta 53 do protocolo UDP (User Datagram Protocol) no nível de transporte 49

Funcionamento do DNS Usado por outros protocolos de nível de aplicação (p. ex., HTTP, SMTP, FTP) Exemplo: navegador www.ifrn.edu.br requisita o URL 1. Hospedeiro do usuário executa lado cliente do DNS 2. Navegador (cliente HTTP) extrai URL (hostname) da requisição HTTP e o repassa ao lado cliente da aplicação DNS 3. Cliente DNS envia consulta contendo o hostname ao servidor DNS 4. Servidor DNS envia resposta ao cliente DNS contendo o endereço IP associado ao hostname 5. Cliente DNS repassa o endereço IP ao navegador, que pode então abrir uma conexão TCP com o servidor HTTP localizado naquele endereço IP 50

Funcionamento do DNS Note que o uso do DNS acrescenta atraso (devido tráfego de mais mensagens de controle) em uma sessão HTTP Passos 3 e 4 do exemplo anterior 51

Conclusão Protocolo HTTP é usado na transferência de objetos Web Mensagens: Requisição HTTP e Resposta HTTP Cache Web busca reduzir o tráfego de dados GET Condicional (no cliente HTTP) Servidor Proxy (na rede) Protocolo SMTP: correio eletrônico Protocolo FTP: transferência de arquivos Protocolo DNS: tradução de endereços para nomes 52

Perguntas? helber.silva@ifrn.edu.br 53