Baixe o app para aproveitar ainda mais
Prévia do material em texto
Protocolos de Redes e de Computadores AULA 02 CCT0300 – PROTOCOLOS DE REDES E DE COMPUTADORES Aula 02 Protocolos de Redes e de Computadores AULA 02 Objetivos • Conceituar e diferenciar uma arquitetura cliente servidor e uma arquitetura ponto a ponto; • Compreender os principais serviços de rede existentes na Internet; • Entender o conceito de multiplexação e demultiplexação de serviços em uma rede; • Compreender a importância das portas e endereços; • Descrever as principais características dos serviços de transporte TCP e UDP; • Compreender a relação entre as aplicações e os serviços de transporte; • Definir em algumas aplicações qual serviço de transporte é mais adequado; • Conhecer comando para descobrir portas e protocolos em utilização na estação. O aluno deverá ser capaz de: Protocolos de Redes e de Computadores AULA 02 Conteúdo 2.1 Conceitos de arquitetura cliente-servidor e ponto a ponto (P2P); 2.2 Conceitos gerais dos serviços de rede: Telnet, SMTP, HTTP, FTP, DNS, SMNP, SIP etc.; 2.3 Conceitos do protocolo de transporte; 2.4 Relação entre as camadas de transporte e de redes; 2.5 Multiplexação e demultiplexação; 2.6 Conceito de portas e endereços; 2.7 Protocolo de entrega confiável e orientados a conexão (TCP); 2.8 Protocolo de melhor esforço e não orientado a conexão (UDP); 2.9 Princípios de controle de congestionamento. Protocolos de Redes e de Computadores AULA 02 Camada de Aplicação – Funcionalidades e Protocolos Applicação: A Interface entre as Redes Protocolos de Redes e de Computadores AULA 02 Camada de Aplicação- Modelos OSI e TCP/IP Camada superior dos modelos OSI e TCP/IP Fornece a interface entre as aplicações que utilizamos para comunicação e a rede subjacente pela qual nossas mensagens são transmitidas Os protocolos da camada de aplicação são utilizados para troca de dados entre programas executados nos hosts de origem e de destino Protocolos de Redes e de Computadores AULA 02 • Dois importantes conceitos: Camada de Aplicação: o O primeiro passo para transferir dados na rede Camada de Aplicação- Modelos OSI e TCP/IP • Software de Aplicação: o O programa usado para a comunicação através da rede • Por exemplo: Quando uma página web é exibida: o A camada de Aplicação usa o Potocolo HTTP o O Software da Aplicação é o seu browser. Protocolos de Redes e de Computadores AULA 02 Camada de Aplicação- Modelos OSI e TCP/IP A funcionalidade dos protocolos da camada de aplicação TCP/IP se ajusta à estrutura das três camadas superiores do modelo OSI A maioria dos protocolos da camada de Aplicação TCP/IP foi desenvolvida antes do surgimento de computadores pessoais, interfaces gráficas de usuário e objetos multimídia o Implementam muito pouco da funcionalidade especificada nas camadas de Apresentação e Sessão do modelo OSI Protocolos de Redes e de Computadores AULA 02 Camada de Aplicação- Modelos OSI e TCP/IP Funções da camada de Apresentação Codificação e conversão de dados da camada de Aplicação Compressão Formatos de compressão e codificação: GIF, JPG, TIF Criptografia Protocolos de Redes e de Computadores AULA 02 Camada de Aplicação- Modelos OSI e TCP/IP Funções da Camada de Sessão: Criar e manter diálogos entre as aplicações de origem e destino Lida com a troca de informações para iniciar diálogos, mantê-los ativos e reiniciar sessões interrompidas ou ociosas por um longo período de tempo Incorporado pela maioria das aplicações (e.g. Web Browser) Protocolos de Redes e de Computadores AULA 02 Camada de Aplicação- Modelos OSI e TCP/IP DNS (Domain Name System): Resolve nomes de Internet (URLs) em endereços IP APLICAÇÕES Protocolos de Redes e de Computadores AULA 02 Camada de Aplicação- Modelos OSI e TCP/IP Telnet: Simulador de Terminal - fornece acesso remoto a servidores e dispositivos de rede APLICAÇÕES Protocolos de Redes e de Computadores AULA 02 Camada de Aplicação- Modelos OSI e TCP/IP SMTP (Simple Mail Transfer Protocol): Transfere mensagens de email e anexos APLICAÇÕES Protocolos de Redes e de Computadores AULA 02 Camada de Aplicação- Modelos OSI e TCP/IP DHCP (Dynamic Host Configuration Protocol): Atribui endereços IP e outros parâmetros aos hosts APLICAÇÕES Protocolos de Redes e de Computadores AULA 02 Camada de Aplicação- Modelos OSI e TCP/IP HTTP (Hypertext Transfer Protocol): Transfere arquivos que são construídos pelas páginas web APLICAÇÕES Protocolos de Redes e de Computadores AULA 02 Camada de Aplicação- Modelos OSI e TCP/IP FTP (File Transfer Protocol): Transfere arquivos entre sistemas APLICAÇÕES Protocolos de Redes e de Computadores AULA 02 Camada de Aplicação- Modelos OSI e TCP/IP Normalmente, um único servidor funcionará como um servidor para multiplos protocolos da Aplicação APLICAÇÕES Protocolos de Redes e de Computadores AULA 02 Software da Camada de Aplicação Dentro da camada de Aplicação, há duas formas de programa de software ou processo que fornecem acesso à rede: Aplicações Serviços Protocolos de Redes e de Computadores AULA 02 Software da Camada de Aplicação Aplicações que detectam redes: • Programas de software usados por pessoas para se comunicarem pela rede • Implementam os protocolos da camada de Aplicação e conseguem se comunicar diretamente com as camadas inferiores da pilha de protocolos Exemplos • Email Clients • Web Browsers Protocolos de Redes e de Computadores AULA 02 Software da Camada de Aplicação Serviços da Camada de Aplicação: • Alguns programas podem precisar da assistência dos serviços da camada de Aplicação para utilizar recursos de rede, por exemplo • Transferência de arquivos • Spooling de impressão em rede • Esses serviços são os programas que fazem interface com a rede e preparam os dados para transferência Protocolos de Redes e de Computadores AULA 02 Software da Camada de Aplicação A Camada de Aplicação utiliza protocolos implementados dentro de aplicações e serviços o Aplicações oferecem uma maneira de criar mensagens o Serviços da camada de aplicação estabelecem uma interface com a rede o Protocolos fornecem as regras e formatos que regem como os dados são tratados. Protocolos de Redes e de Computadores AULA 02 Software da Camada de Aplicação Os protocolos da camada de Aplicação são utilizados pelos dispositivos de origem e destino durante uma sessão de comunicação Os protocolos da camada de aplicação implementados nos hosts de origem e destino devem corresponder Protocolos de Redes e de Computadores AULA 02 Software da Camada de Aplicação Estabelecem regras coerentes para troca de dados entre aplicações e serviços carregados nos dispositivos participantes Especificam como os dados dentro das mensagens são estruturados e os tipos de mensagens enviados entre origem e destino Definem diálogos de mensagem, garantindo que uma mensagem enviada seja conhecida pela resposta esperada Protocolos de Redes e de Computadores AULA 02 Funcionalidade e Protocolos da Camada de Aplicação Protocolos de Redes e de Computadores AULA 02 Introdução Ao acessar informações em dispositivos conectados a uma rede, os dados podem não estar fisicamente armazenados neles Se este for o caso, uma solicitação para acessar tais informações deve ser feita ao dispositivo onde os dados estão Há três métodos: Modelo Cliente/Servidor Aplicações de Rede Peer-to-Peer (P2P) Hibrido Protocolos de Redes e de Computadores AULA 02 Modelo Cliente/Servidor Recursos são armazenados no servidor Arquivos são carregados para o cliente Arquivos são carregados para o servidorClientes – combinação de hardware/software que os usuários usam diretamente Protocolos de Redes e de Computadores AULA 02 Modelo Cliente/Servidor O servidor responde com um ou mais streams de dados Pode exigir informações de controle, como autenticação de usuário e identificação de um arquivo de dados a ser transferido. O cliente inicia a troca solicitando dados do servidor Clientes – combinação de hardware/software que os usuários usam diretamente Recursos são armazenados no servidor Protocolos de Redes e de Computadores AULA 02 Modelo Cliente/Servidor A maior vantagem do modelo cliente/servidor é a centralização dos recursos User Names and Senhas, Arquivos, Banco de dados Protocolos de Redes e de Computadores AULA 02 Servidores o Web Server o FTP Server o Database Server Servidores são repositórios de informações Processos no servidor controlam a entrega da informação ao cliente A informação é normalmente compartilhada com múltiplos clientes Protocolos de Redes e de Computadores AULA 02 Servidores Alguns servidores podem exigir a autenticação dos usuários para acessar os dados ou a rede Servidor FTP: Pode requerer uma conta e senha antes de permitir uma transferência Servidor de Dominio: Exigirá um usuário e senha para acesso a rede Protocolos de Redes e de Computadores AULA 02 Servidores O servidor executa um serviço, ou processo, às vezes chamado de daemon de servidor Daemons (como outros serviços): Executados em segundo plano Não estão sob o controle direto de um usuário final São descritos como "ouvintes" de uma solicitação de um cliente programados para responder sempre que o servidor recebe uma solicitação para o serviço fornecido pelo daemon Quando um daemon "ouve" uma solicitação de um cliente: Troca as mensagens correspondentes com o cliente Envia os dados solicitados ao cliente no formato adequado Protocolos de Redes e de Computadores AULA 02 Protocolos e Serviços da camada de Aplicação Servidores normalmente têm diversos clientes solicitando informações ao mesmo tempo Exemplo: servidor Telnet O daemon Telnet ouve as requisições que são recebidas na porta 23 Protocolos de Redes e de Computadores AULA 02 Redes Peer-to-Peer (P2P) Dois ou mais computadores são conectados via rede e podem compartilhar recursos (como impressoras e arquivos) sem ter um servidor dedicado Cada dispositivo final conectado (conhecido como par (peer)) pode funcionar como cliente ou servidor Protocolos de Redes e de Computadores AULA 02 Redes Peer-to-Peer (P2P) Desvantagem o Recursos da rede descentralizados o Segurança - as contas de usuário e direitos de acesso devem ser definidos individualmente em cada dispositivo. Protocolos de Redes e de Computadores AULA 02 Redes Peer-to-Peer (P2P) Permite que um dispositivo atue como cliente e servidor na mesma comunicação Ambos podem iniciar uma comunicação e são considerados iguais no processo de comunicação cada cliente é um servidor e cada servidor é um cliente Protocolos de Redes e de Computadores AULA 02 Exemplos de Serviços e Protocolos da Camada de Aplicação Protocolos de Redes e de Computadores AULA 02 Introdução Protocolos específicos usados comumente: IP Header TCP Header HTTP Header Data o A camada de transporte utiliza um esquema de endereçamento chamado número de porta. o Os números de porta identificam aplicações e serviços da camada de Aplicação que são a origem e o destino dos dados o Programas de servidor geralmente utilizam números de porta pré-definidos comumente conhecidos por clientes o À medida que examinarmos os diferentes protocolos e serviços da camada de Aplicação TCP/IP, falaremos dos números de porta TCP e UDP normalmente associados a tais serviços Protocolos de Redes e de Computadores AULA 02 Introdução IP Header TCP Header HTTP Header Data Application / Service Acronym Port Domain Name System DNS 53 Hypertext Transfer Protocol HTTP 80 Simple Mail Transfer Protocol SMTP 25 Post Office Protocol POP3 110 Telnet Telnet 23 Dynamic Host Configuration Protocol DHCP 67 File Transfer Protocol FTP 20, 21 Protocolos de Redes e de Computadores AULA 02 Serviços e Protocolos da Camada de Aplicação Domain Name System DNS Protocolos de Redes e de Computadores AULA 02 Resolução de Endereços (DNS) Protocolos de Redes e de Computadores AULA 02 Resolução de Endereços (DNS) O protocolo DNS define um serviço automatizado que alia os nomes de recursos com o endereço de rede numérico necessário DNS é um serviço cliente/servidor. Entretanto, ao inves dos outros serviços que utilizam um cliente que é uma aplicação (navegador Web, cliente de e-mail), o cliente DNS é executado como um serviço O cliente DNS (resolvedor DNS) suporta a resolução de nome para outras aplicações de rede e outros serviços que precisam dele Protocolos de Redes e de Computadores AULA 02 Resolução de Endereços (DNS) Ao configurar um dispositivo de rede, geralmente fornecemos um ou mais endereços de Servidor DNS que o cliente DNS pode utilizar para resolução de nome. IP Address 192.168.25.25 Subnet Mask 255.255.255.0 Default Gateway 192.168.25.1 DNS Server 208.67.222.222 Protocolos de Redes e de Computadores AULA 02 Resolução de Endereços (DNS) DNS e o Browser: 1. Primeiro, um nome ou URL é dado como entrada no campo de endereço do browser. O browser passa o nome para o resolvedor DNS Protocolos de Redes e de Computadores AULA 02 Resolução de Endereços (DNS) DNS e o Browser: 2. O resolvedor de DNS envia uma requisição de DNS para o servidor de DNS 3. O servidor então procura em seus registros e resolve o nome com o endereço IP correspondente 2 - www.estacio.br 3 - www.estacio.br = 200.16.152.71 Protocolos de Redes e de Computadores AULA 02 Resolução de Endereços (DNS) DNS e o Browser: 4. O servidor DNS então envia o endereço IP de volta ao cliente que fez a requisição. O endereço IP será usado no processo de encapsulamento, como o endereço de destino para o pacote enviado para novaoi.oi.com.br 2 - www.estacio.br 3 - www.estacio.br = 200.16.152.71 4 - 200.16.152.71 1 Protocolos de Redes e de Computadores AULA 02 Resolução de Endereços (DNS) Utilitário - nslookup: o Sistema Operacional Windows fornece o utilitário nslookup o Permite que o usuário consulte manualmente os servidores de nome para decidir um nome de host o Usado para corrigir problemas de resolução de nome e verificar o status atual dos servidores de nome Protocolos de Redes e de Computadores AULA 02 Resolução de Endereços (DNS) Sistema hierárquico para criar um banco de dados de nomes para fornecer resolução do nome Protocolos de Redes e de Computadores AULA 02 Resolução de Endereços (DNS) Os servidores raiz mantêm registros sobre como chegar aos servidores de domínio de nível superior Os servidores de nível superior têm registros que levam aos servidores de domínio de nível secundário, e assim por diante ... Protocolos de Redes e de Computadores AULA 02 Resolução de Endereços (DNS) Os servidores DNS armazenam diferentes tipos de registro de recurso utilizados para definir nomes Esses registros contêm o nome, endereço e tipo de registro. A - endereço do dispositivo final NS - servidor de nome confiável CNAME - nome canônico (ou Nome de Domínio Completo) para um codinome; utilizado quando vários serviços têm um único endereço de rede, mas cada serviço tem sua própria entrada no DNS MX - registro de troca de correspondência; mapeia umnome de domínio para uma lista de servidores de troca de e-mail para tal domínio Protocolos de Redes e de Computadores AULA 02 Resolução de Endereços (DNS) ? www.site.com ? www.site.com www.site.com = 202.2.2.2 Armazena em cache, Envia ao cliente www.site.com = 202.2.2.2 ….Armazena em cache Um servidor DNS fornece a resolução de nome utilizando o daemon do nome, chamado de named (name dee). www.site.com = 202.2.2.2 Protocolos de Redes e de Computadores AULA 02 Resolução de Endereços (DNS) Utilitário: ipconfig /flushdns Limpa o conteúdo da cache do PC ipconfig /displaydns Mostra o conteúdo da cache do PC Protocolos de Redes e de Computadores AULA 02 Serviço WWW e Hypertext Transfer Protocol HTTP Protocolos de Redes e de Computadores AULA 02 Serviço WWW e HTTP Os navegadores Web são as aplicações cliente que nossos computadores utilizam para se conectar à World Wide Web e acessar recursos armazenados em um servidor Web Protocolo Navegador Protocolos de Redes e de Computadores AULA 02 Serviço WWW e HTTP HTTP é utilizado na World Wide Web para transferência de dados HTTP especifica um protocolo de solicitação/resposta Quando um cliente solicita uma página web, o protocolo HTTP define o tipo de mensagem que será trocada, por exemplo: o GET - Solicitação de cliente para dados o PUT e POST - são utilizados para enviar mensagens que fazem upload de dados ao servidor Web Protocolos de Redes e de Computadores AULA 02 Serviço WWW e HTTP O servidor responde ou com: o O objeto solicitado o Uma mensagem de erro, se for o caso o Ou outra mensagem de status Protocolos de Redes e de Computadores AULA 02 Códigos de status das respostas 200 OK Requisição bem-sucedida, informação é entregue c/ resposta 301 Moved Permanently objeto requisitado foi removido permanentemente; nova localização é especificada no cabeçalho Location:. O cliente recupera automaticamente a nova URL 400 Bad Request mensagem de requisição não foi entendida pelo servidor 404 Not Found o documento requisitado não existe no servidor 505 HTTP Version Not Supported Protocolos de Redes e de Computadores AULA 02 Códigos de status das respostas Para comunicação segura pela Internet, o protocolo HTTP Seguro (HTTPS) é utilizado: Permite que servidores e clientes troquem informações com segurança pela Internet Pode utilizar autenticação e criptografia para proteger os dados Especifica regras adicionais para a passagem de dados entre a camada de Aplicação e a de Transporte. Protocolos de Redes e de Computadores AULA 02 Serviços de E-Mail e Protocolos SMTP/POP Revolucionou a forma como as pessoas se comunicam Aplicações e Serviços o Simple Mail Transfer Protocol (SMTP) o Post Office Protocol (POP and POP3) o Internet Message Access Protocol (IMAP) Protocolos de Redes e de Computadores AULA 02 Serviços de E-Mail e Protocolos SMTP/POP Mail User Agent (MUA) é usado para compor mensagens o Também conhecida como cliente de e-mail o MUA permite que mensagens sejam enviadas e recebidas o Mensagens são colocadas na caixa de correio do cliente Recebidas usando POP3 or IMAP Enviadas usando SMTP Protocolos de Redes e de Computadores AULA 02 Protocolos de Acesso ao Correio agente usuário servidor de correio da origem agente usuário SMTP SMTP POP3, IMAP,HTTP servidor de correio do destino • SMTP: entrega e armazenamento no servidor do destino • Protocolos de acesso: recuperação de mensagens do servidor o POP: Post Office Protocol [RFC 1939] autorização (agente <-->servidor) e descarga (download) o IMAP: Internet Mail Access Protocol [RFC 1730] mais recursos (mais complexo) manipulação de mensagens armazenadas no servidor o HTTP: Hotmail , Yahoo! Mail, Gmail, etc. Protocolos de Redes e de Computadores AULA 02 Processos de Servidor de e-mail: MTA and MDA Servidor de e-mail opera dois processos separados: Mail Transfer Agent (MTA): o utilizado para encaminhar e-mail. o recebe mensagens do MUA ou de outro MTA o Com base no cabeçalho da mensagem, ele determina como uma mensagem tem de ser encaminhada para chegar a seu destino Mail Transfer Agent (MTA): o Recebe as correspondências do MTA e as coloca nas caixas de correio dos usuários adequados Protocolos de Redes e de Computadores AULA 02 Processos de Servidor de e-mail: MTA and MDA Cliente envia uma mensagem para o MTA usando SMTP O destinatário está na minha lista? Não……Encaminhe para outro servidor O destinatário está na minha lista? Sim……Coloque o e-mail na caixa de correio do destinatário Cliente recebe mensagens usando POP3 ou IMAP Protocolos de Redes e de Computadores AULA 02 File Transfer Protocol FTP Protocolos de Redes e de Computadores AULA 02 File Transfer Protocol (FTP) FTP foi desenvolvido para possibilitar transferências de arquivos entre um cliente e um servidor Utilizado para carregar e baixar arquivos de um servidor que executa o daemon FTP (FTPd) Protocolos de Redes e de Computadores AULA 02 File Transfer Protocol (FTP) Conexão de controle Username and password… Para cada arquivo transferido, o TCP abre e fecha a conexão de dados na Porta 20 21 21 Protocolos de Redes e de Computadores AULA 02 Serviços e Protocolos da Camada de Aplicação Dynamic Host Configuration Protocol DHCP Protocolos de Redes e de Computadores AULA 02 Dynamic Host Configuration Protocol (DHCP) Endereço IP e outras configurações podem ser obtidas dinamicamente Protocolos de Redes e de Computadores AULA 02 Dynamic Host Configuration Protocol (DHCP) Endereço IP Mascara de sub-rede Default Gateway Nome de Dominio Servidor DNS Outros …. Servidores DHCP podem estar em uma LAN, em um roteador ou um ISP Protocolos de Redes e de Computadores AULA 02 Dynamic Host Configuration Protocol (DHCP) DHCP é um processo de quatro passos 1. Cliente transmite um pacote DHCP DISCOVER para identificar qualquer servidor DHCP disponível na rede. Pode ter mais que um disponível Protocolos de Redes e de Computadores AULA 02 Dynamic Host Configuration Protocol (DHCP) DHCP é um processo de quatro passos 2. Um servidor DHCP responde com um DHCP OFFER (mensagem de oferta de aluguel) com informações de endereço IP atribuído, máscara de sub-rede, servidor DNS e gateway padrão, além da duração do aluguel Protocolos de Redes e de Computadores AULA 02 Dynamic Host Configuration Protocol (DHCP) DHCP é um processo de quatro passos 3. Responde com um DHCP REQUEST que identifique o servidor explícito e a oferta de aluguel que o cliente está aceitando Protocolos de Redes e de Computadores AULA 02 Dynamic Host Configuration Protocol (DHCP) DHCP é um processo de quatro passos 4. Se a oferta estiver válida, o servidor retornará uma mensagem DHCP ACK que confirma ao cliente que o aluguel foi finalizado. Se a oferta não for mais válida o servidor selecionado responderá com uma mensagem DHCP NAK Protocolos de Redes e de Computadores AULA 02 Compartilhamento de arquivos P2P Protocolos de Redes e de Computadores AULA 02 Protocolo Gnutella e Serviços P2P Aplicações Peer-to-peer são responsáveis pela maior parte do tráfego total (50 a 90%) da Internet Protocolos de Redes e de Computadores AULA 02 Protocolo Gnutella e Serviços P2P Aplicações Peer-to-peer são responsáveis pela maior parte do tráfego total (50 a 90%) da Internet Protocolos de Redes e de Computadores AULA 02 Protocolo Gnutella e Serviços P2P Aplicações Peer-to-peer são responsáveis pela maior partedo tráfego total (50 a 90%) da Internet Protocolos de Redes e de Computadores AULA 02 Compartilhamento de arquivos P2P: diretório centralizado Projeto original do Napster • 1) quando um par se conecta, ele informa ao servidor central: • IP • Conteúdo • 2) Alice consulta por “Hey Jude” • 3) Alice requisita o arquivo de Bob centralized directory server peers Alice Bob 1 1 1 12 3 Protocolos de Redes e de Computadores AULA 02 P2P: problemas com diretórios centralizados Ponto único de falha Gargalo de desempenho Violação dos direitos de cópia (Copyright) transferência de arquivos: descentralizada localização de conteúdo: centralizada Protocolos de Redes e de Computadores AULA 02 Protocolo Gnutella e Serviços P2P Pares (hosts) atuam como cliente e servidor Não há um servidor centralizado As transferências de arquivos reais geralmente usam serviços HTTP Protocolos de Redes e de Computadores AULA 02 Telnet Serviços e Protocolos da Camada de Aplicação Protocolos de Redes e de Computadores AULA 02 Protocolos e Serviços Telnet Telnet Desenvolvido para atender pessoas que precisavam de uma maneira de acessar remotamente os sistemas de computação da mesma forma que faziam com os terminais diretamente acoplados Protocolos de Redes e de Computadores AULA 02 Protocolos e Serviços Telnet Fornece um método padrão de simulação de dispositivos de terminal com base em texto na rede de dados Permite ao usuário acessar remotamente outro dispositivo (host, router, switch) Uma conexão que utiliza Telnet é chamada de sessão de Terminal Virtual (VTY) Protocolos de Redes e de Computadores AULA 02 Protocolos e Serviços Telnet Telnet utiliza software para criar um dispositivo virtual que forneça os mesmos recursos de uma sessão de terminal com acesso à interface de linha de comando (CLI) do servidor Clientes Telnet: Putty, Teraterm, HyperTerminal Protocolos de Redes e de Computadores AULA 02 Protocolos e Serviços Telnet o Autenticação forte, criptografia de dados Telnet suporta autenticação do usuário , mas não dados criptografados (texto claro) Secure Shell (SSH) – protocolo que oferece um método seguro para acessar servidores Protocolos de Redes e de Computadores AULA 02 Serviços e Protocolos de Transporte aplicação transporte rede enlace física rede enlace física rede enlace física rede enlace física rede enlace física rede enlace física aplicação transporte rede enlace física Protocolos de Redes e de Computadores AULA 02 Serviço de Transporte vs Rede Camada de rede: o Comunicação lógica entre hospedeiros Camada de transporte: o comunicação lógica entre processos o utiliza e aprimora os serviços oferecidos pela camada de rede Protocolos de Redes e de Computadores AULA 02 Serviços de Transporte da Internet TCP: Entrega unicast, sequencial e confiável - Estabelecimento de conexão - Controle de fluxo - Controle de congestionamento UDP: Entrega unicast ou multicast, não confiável (best-effort) e não seqüencial Não disponíveis: - Garantia de retardo - Garantia de banda - Multicast confiável Protocolos de Redes e de Computadores AULA 02 Papel da Camada de Transporte Responsável pela transferência fim-a-fim geral de dados de aplicação Encapsulamento de dados de aplicação para uso pela camada de Rede Habilita a comunicação de múltiplas aplicações na rede ao mesmo tempo em um único dispositivo Assegura que, se necessário, todos os dados sejam recebidos confiavelmente e em ordem pela aplicação correta. Emprega mecanismos de tratamento de erros Protocolos de Redes e de Computadores AULA 02 Separação de Múltiplas Comunicações Qualquer host pode ter múltiplas aplicações que se comunicam através da rede A camada de Transporte mantem esses fluxos separados o Por exemplo, o texto de uma mensagem instantânea não aparece em um e-mail Protocolos de Redes e de Computadores AULA 02 Segmentação dos Dados A camada de transporte divide esse fluxo em partes menores, chamados segmentos. A camada de aplicação envia um fluxo completo (tamanho grande) Protocolos de Redes e de Computadores AULA 02 Segmentação dos Dados Segmentação permite a multiplexação dos dados de todas as sessões Multiplexação permite aplicações multiplas e concorrentes Protocolos de Redes e de Computadores AULA 02 Reagrupamento dos Segmentos Numeração dos segmentos permite o reagrupamento dos dados na ordem apropriada Protocolos de Redes e de Computadores AULA 02 Reagrupamento dos Segmentos Quando criado, cada segmento é atribuido a um único identificador da aplicação (número de porta) Após o reagrupamento, o número de porta é usado para passar o dado à aplicação correta 25 25 80 Protocolos de Redes e de Computadores AULA 02 Controle de Fluxo Hosts de Rede tem recursos limitados (Memória, Largura de Banda) Controle de Fluxo – Regula a quantidade de dados que pode ser transmitida ou recebida Protocolos de Redes e de Computadores AULA 02 Entrega Confiável É possível que parte dos dados sejam corrompidos ou perdidos Protocolos da camada de transporte podem solicitar retransmissão Protocolos de Redes e de Computadores AULA 02 Orientado a conexão A camada de transporte fornece serviço orientado a conexão Permite aos dados serem gerenciados de perto Protocolos de Redes e de Computadores AULA 02 Suporte à Comunicação Confiável UDP TCP Relembre – Principal função da camada de Transporte é gerenciar os dados da aplicação para as conversações entre os hosts Diferentes aplicações têm diferentes necessidades para seus dados Diferentes protocolos de Transporte têm sido desenvolvidos para satisfazer estas necessidades Protocolos de Redes e de Computadores AULA 02 Camada de Transporte TCP e UDP Protocolos de Redes e de Computadores AULA 02 TCP e UDP Protocolos da camada de transporte mais comuns Protocolos de Redes e de Computadores AULA 02 User Datagram Protocol (UDP) Sem-conexão Entrega de melhor esforço (Best Effort) Baixo overhead Exemplos de Aplicação Domain Name System (DNS) Jogos online Voice over IP (VoIP) Dynamic Host Configuration Protocol (DHCP) Trivial File Transfer Protocol (TFTP) Protocolos de Redes e de Computadores AULA 02 Transmission Control Protocol (TCP) Orientado a conexão Entrega confiável Checagem de erro Controle de Erro Exemplos de Aplicações Hypertext Transfer Protocol (HTTP) File Transfer Protocol (FTP) Telnet Simple Message Transfer Protocol (SMTP) Protocolos de Redes e de Computadores AULA 02 Camada de Transporte Endereçamento de Porta Protocolos de Redes e de Computadores AULA 02 Identificação das Conversações TCP e UDP usam números de porta para passar a informação as camadas superiores Socket - combinação do número de porta e do endereço IP Identifica exclusivamente um processo particular sendo executado em um dispositivo de host específico e.g. 207.134.65.2:80 referencia um socket HTTP Protocolos de Redes e de Computadores AULA 02 Identificação de Conversações Protocolos de Redes e de Computadores AULA 02 Tipos de Endereço de Porta IANA - órgão de padrões responsável pela designação de vários padrões de endereçamento o Designa números de porta Protocolos de Redes e de Computadores AULA 02 Tipos de Endereço de Porta Portas Conhecidas: o Reservados para serviços e aplicações comuns 21 – FTP Control 23 – Telnet20 – FTP Data 25 – SMTP 194 – IRC 110 – POP3 443 – HTTPS 520 – RIP 69 – TFTP Protocolos de Redes e de Computadores AULA 02 Tipos de Endereço de Porta Portas Registradas: o Aplicações e processos do usuário (opcional) 1863 – MSN Messenger 8008 – Alternate HTTP 8080 – Alternate HTTP 2000 – Cisco VoIP 1812 – RADIUS 5004 – RTP 5060 – SIP (VoIP) Protocolos de Redes e de Computadores AULA 02 Tipos de Endereço de Porta Portas Dinamicas: o Atribuida dinamicamente a aplicações de cliente quando se inicia uma conexão Protocolos de Redes e de Computadores AULA 02 Tipos de Endereço de Porta Utilização do TCP e do UDP : o Algumas aplicações podem usar tanto TCP como UDP o Por exemplo, o baixo overhead (sobrecarga) do UDP habilita ao DNS servir a muitas solicitações de clientes muito rapidamente As vezes, no entanto, o envio da informação solicitada pode exigir a confiabilidade do TCP. Neste caso, o número 53 de porta conhecida é usado por ambos os protocolos com este serviço Protocolos de Redes e de Computadores AULA 02 As vezes é necessário conhecer quais conexões TCP ativas estão abertas e sendo executadas em um host de rede Ferramentas Connection State netstat –a –n command TCP/UDP Source IP Source Port Destination IP Destination Port Source Socket Destination Socket Protocolos de Redes e de Computadores AULA 02 Camada de Transporte Comunicação TCP confiável Protocolos de Redes e de Computadores AULA 02 Transmission Control Protocol (TCP) Orientado a conexão Entrega confiável Checagem de erro Controle de Erro Exemplos de Aplicações Hypertext Transfer Protocol (HTTP) File Transfer Protocol (FTP) Telnet Simple Message Transfer Protocol (SMTP) Protocolos de Redes e de Computadores AULA 02 Tipos de Endereço de Porta A distinção principal entre o TCP e o UDP está na confiabilidade. TCP usa sessões orientadas à conexão o Antes de algum dado ser trocado, a camada de Transporte inicia um processo para criar uma conexão com o destino o Esta conexão habilita o rastreamento de uma sessão Números de sequência Reconhecimento o Overhead do TCP - Tráfego de rede gerado por confirmações e retransmissões o Confiabilidade é alcançada através de campos com funções específicas no segmento TCP Protocolos de Redes e de Computadores AULA 02 Tornando as Conversações Confiáveis Sessão TCP que abriu uma conexão. Normalmente um valor aleatório até 1023 Aplicação da camada superior no destino remoto Número do último octeto (byte) no segmento Número do próximo octeto (byte) esperado pelo receptor Protocolos de Redes e de Computadores AULA 02 Tornando as Conversações Confiáveis Tamanho do cabeçalho do segmento em bytes Campo de 1 bit, usado na sessão de gerenciamento Controle de fluxo Se o Flag urgente é setado, o dado é alocado como urgente Checagem de erro no cabeçalho Protocolos de Redes e de Computadores AULA 02 Processo TCP em Servidores Servidor responde com a página web o Configura a porta fonte para 80 e usa a porta de origem do cliente como a porta de destino Source = 80 Destination = 49650 Protocolos de Redes e de Computadores AULA 02 Processo TCP em Servidores Note como as portas de origem e destino são usadas Source = 80 Destination = 49650 Source = 80 Destination = 49650 Source = 49650 Destination = 80 Protocolos de Redes e de Computadores AULA 02 Processo TCP em Servidores Como a camada de transporte separa os fluxos? o Socket (IP Address:Port) 172.16.230.5 207.22.146.33 172.16.230.5:49650 172.16.230.5:49655 207.22.146.33:49650 207.22.146.33:49655 Source = 49650 Destination = 80 Source = 80 Destination = 49650 Source = 49655 Destination = 80 Source = 80 Destination = 49655 Protocolos de Redes e de Computadores AULA 02 Camada de Transporte Estabelecimento e Encerramento de ConexãoTCP Protocolos de Redes e de Computadores AULA 02 Para uma conexão ser estabelecida, as duas estações finais devem sincronizar os numeros de sequencias iniciais (ISNs) O ISN é um valor sequencial inicial usado quando uma conexão TCP é estabelecida Handshake Triplo do TCP Protocolos de Redes e de Computadores AULA 02 Números de sequencia são usados para rastrear a ordem dos segmentos e assegurar que não houve perda de segmentos na transmissão Os campos Flag são usados para identificar o tipo e segmento Handshake Triplo do TCP Protocolos de Redes e de Computadores AULA 02 Handshake Triplo do TCP 1 Eu quero me conectar e aqui está o primeiro número de sequência Protocolos de Redes e de Computadores AULA 02 Handshake Triplo do TCP 1 2 OK….Aqui está meu primeiro número de sequência; Adicionei 1 ao seu ISN como um reconhecimento. Espararei que esse seja seu próximo número de sequência Protocolos de Redes e de Computadores AULA 02 Handshake Triplo do TCP 3 OK….Aqui está o próximo segmento com o número de sequência esperado. Adicionei 1 ao seu ISN como um reconhecimento. Esperarei que esse seja seu próximo númeor de sequência Protocolos de Redes e de Computadores AULA 02 1 2 3 Apenas parte dos cabeçalhos são mostrados … Handshake Triplo do TCP Protocolos de Redes e de Computadores AULA 02 Processo de quatro passos usando os campos Flag e número de sequência Término da Sessão TCP Protocolos de Redes e de Computadores AULA 02 Camada de Transporte Reconhecimento e Janelamento TCP Protocolos de Redes e de Computadores AULA 02 Reagrupamento de Segmentos TCP Lembre-se que a camada de transporte deve reagrupar os segmentos na ordem correta Protocolos de Redes e de Computadores AULA 02 Confirmação TCP com Janelamento Usados juntos para confirmar o recebimento da mensagem Protocolos de Redes e de Computadores AULA 02 Confirmação TCP com Janelamento ACK = ISN + 1 Confirmação Esperada Protocolos de Redes e de Computadores AULA 02 Com uma janela de tamanho 10, cada segmento carrega apenas 10 bytes de dados e deve aguardar pela confirmação de recebimento antes de outro segmento ser transmitido Confirmação TCP com Janelamento Tamanho da Janela: o Quantidade de dados que pode ser enviado antes que uma confirmação seja recebida o Determinado pelo campo no cabeçalho TCP Protocolos de Redes e de Computadores AULA 02 Um serviço de host de destino usando TCP geralmente reconhece os dados apenas para bytes sequênciais contíguos Se estiver faltando um ou mais segmentos, apenas os dados nos segmentos que completam o fluxo serão confirmados Retransmissão TCP Protocolos de Redes e de Computadores AULA 02 Controle de Fluxo TCP Protocolos de Redes e de Computadores AULA 02 Controle de Fluxo TCP O tamanho da janela inicial é determinado durante o handshake triplo Quantidade de dados que pode ser enviado antes de um reconhecimento Protocolos de Redes e de Computadores AULA 02 Tamanho Dinamico da Janela TCP Serviço TCP é Full-duplex: o Significa que dados podem trafegar em cada direção, simultaneamente o Tamanhos de janela, número de sequência e número de reconhecimento são independentes de cada fluxo de dados O host de recebimento envia o valor do tamanho de janela ao remetente para indicar o número de bytes que ele está preparado para receber como parte desta sessão o Se o destino precisar diminuir a velocidade da taxa de comunicação, ele pode enviar um valor de tamanho de janela pequeno para a origem como parte de uma confirmação o Se não há restrição(nem perda), o tamanho de janela continuará a aumentar Protocolos de Redes e de Computadores AULA 02 Tamanho da Janela Dinâmica Tamanho de janela Inicial Protocolos de Redes e de Computadores AULA 02 Tamanho da Janela Dinâmica Tamanho de janela Inicial Protocolos de Redes e de Computadores AULA 02 Camada de Transporte UDP - Comunicação com Baixo Overhead Protocolos de Redes e de Computadores AULA 02 User Datagram Protocol (UDP) Sem-conexão Entrega de melhor esforço (Best Effort) Baixo overhead Exemplos de Aplicações Domain Name System (DNS) Jogos online Voice over IP (VoIP) Dynamic Host Configuration Protocol (DHCP) Trivial File Transfer Protocol (TFTP) Sem Handshake triplo Protocolos de Redes e de Computadores AULA 02 User Datagram Protocol (UDP) Baixo Overhead: o Sem-Conexão: Sem estabelecimento de conexão, como o TCP o Não confiável ou entrega de “Melhor Esforço”: o Sem detecção de erro o Sem controle de Fluxo o Sem controle de congestionamento o Sem número de sequência para entrega ordenada o Quando uma aplicação tem dado a enviar, ela simplesmente envia o dado Protocolos de Redes e de Computadores AULA 02 User Datagram Protocol (UDP) Quando múltiplos datagramas são enviados a um destino, eles podem tomar diferentes caminhos e chegar na ordem errada. O UDP não rastreia os números de sequência da forma que o TCP faz. O UDP não tem um modo para reordenar os datagramas na sua ordem de transmissão. UDP simplesmente reagrupa os dados na ordem que eles foram recebidos e os encaminha para a aplicação Protocolos de Redes e de Computadores AULA 02 Resumo: Número de Portas Port Number Application Layer 4 Protocol Description 20 FTP TCP File Transfer Protocol – Data 21 FTP TCP File Transfer Protocol – Control Commands 23 TELNET TCP Terminal connection 25 SMTP TCP Simple Mail Transfer Protocol - Email 53 DNS UDP Domain Name System 67,68 DHCP UDP Dynamic Host Configuration Protocol 69 TFTP UDP Trivial File Transfer Protocol 80 HTTP TCP Hypertext Transfer Protocol
Compartilhar