Arquitetura de Redes de Computadores e Tecnologia de Implementação de Redes 2016.1 Camada de Transporte Protocolos TCP e UDP Curso Técnico Integrado em Informática Turma: INT.INF.3M
Arquitetura de Redes de Computadores Conteúdo Programático (1 o Bimestre) Comunicação de dados Visão geral da arquitetura OSI Visão geral da arquitetura TCP/IP Visão geral de LANs e WANs Camada de aplicação da arquitetura TCP/IP Camada de transporte da arquitetura TCP/IP TCP e UDP Camada interface de rede da arquitetura TCP/IP ARP Endereçamento da arquitetura TCP/IP Camada Internet da arquitetura TCP/IP IP Camada Física
Protocolos da Camada de Transporte Deficiências do protocolo IP Os endereços definidos pelo protocolo IP são eficientes em rotular os milhões de computadores ligados à Internet de maneira que os dados cheguem até o endereço desejado. Entretanto, o protocolo IP não dispõe de meios para garantir a entrega dos dados com integridade e no tempo desejado. Exemplo: Os pacotes IP carregam consigo números de checagem de integridade (checksum). O receptor verifica os dados, e se o checksum não for igual, simplesmente descarta as informações.
Protocolos da Camada de Transporte TCP+IP Para resolver problemas do IP como: Dados que não chegam ao destino; Dados que chegam deteriorados (necessidade de retransmissão) Incerteza se a informação percorreu com sucesso o caminho entre o emissor e o transmissor...... São utilizados os protocolos da camada de transporte. Esta dupla de protocolos é um dos pilares da Internet.
Protocolos da Camada de Transporte Opções de protocolos (transporte) Na família TCP/IP, existem dois protocolos de transporte, o TCP e o UDP. O protocolo TCP oferece um serviço de entrega de pacotes do tipo orientado à conexão (confiável). O UDP oferece o mesmo serviço de entrega de pacotes só que não orientado à conexão (não confiável).
Protocolos da Camada de Transporte O Segmento de Transporte 32 bits porta origem porta destino outros campos de cabeçalho TCP ou UDP dados de aplicação (mensagem)
Protocolos da Camada de Transporte Portas de Acesso Os protocolos de transporte (TCP e UDP) disponibilizam 65.536 (2 16 ) portas para estabelecimento de conexão Servidores (uso de portas 1024) Serviços específicos Portas Específicas FTP = 21/TCP DNS = 53/TCP e 53/UDP Telnet = 23/TCP HTTP = 80/TCP SMTP = 25/TCP POP3 = 110/TCP Clientes (uso de portas > 1024)
Protocolos da Camada de Transporte Portas de Acesso A maioria dos aplicativos associa por padrão serviços específicos a portas específicas (necessidade de ajuste para utilização de portas não convencionais) Os próprios sistemas operacionais guardam essas informações: Linux/Unix = arquivo /etc/services Windows = arquivo..\windows\system32\drivers\etc\services
Protocolos da Camada de Transporte O Segmento UDP 32 bits Tamanho, em bytes do segmento UDP, Incluindo cabeçalho porta origem tamanho porta destino checksum Dados de Aplicação (mensagem)
Protocolos da Camada de Transporte O Segmento TCP URG: dados urgentes ACK: campo de ACK é válido PSH: força o envio imediato de dados RST, SYN, FIN: estabelec. de conexão (flags de criação e término) Internet checksum (como no UDP) tam. porta origem não usado 32 bits número de seqüência porta destino número de reconhecimento janela de recep. checksum U A P R S F dados urgentes Opções (tamanho variável) dados de aplicação (tamanho variável) sincronização transmissão/ recepção número de bytes receptor está pronto para aceitar
Protocolos da Camada de Transporte (Principais) Características do UDP O UDP (User Datagram Protocol) é uma alternativa econômica ao TCP. Oferece um serviço de entrega de dados não orientado à conexão. (não há a necessidade de abertura de conexão para a entrega de pacotes de um ponto a outro) Não utiliza técnicas para detecção de erros na transmissão (além do checksum, quando habilitado) Pressupõe que o hardware de rede envolvido entre o transmissor e o receptor está livre de erros (ou não se importa se houverem erros) Mais rápido que o TCP (não existe o custo de estabelecimento e controle da conexão)
Protocolos da Camada de Transporte EHA (Principais) Características do TCP Do ponto de vista de um programa aplicativo, o serviço oferecido pelo TCP tem as seguintes características: Orientado à conexão: O TCP fornece serviço orientado à conexão em que um aplicativo deve primeiro solicitar uma conexão com um destino, e então usar a conexão para transmitir dados. Comunicação ponto a ponto: Cada conexão TCP tem exatamente duas extremidades. Certificado de entrega: O TCP garante que os dados enviados através de uma conexão serão entregues exatamente como enviados, sem dados faltando ou fora de ordem. Comunicação Full Duplex. O TCP pode armazenar nos buffers dados que partem e que chegam em ambas as direções.
Protocolos da Camada de Transporte (Principais) Características do TCP (cont.) Sequenciamento controlado de pacotes Divisão, numeração e reorganização (no destino) dos pacotes Não entrega pacotes fora de ordem Não entrega pacotes sem que todos tenham chegado e sido organizados (a menos que receba uma ordem = PUSH) Controle de recebimento (envio de confirmação = ACK) Retransmissão em caso de perda comprovada Descarte de pacotes duplicados Controle de fluxo!!!
Protocolo de Transporte TCP Three Way Handshake cliente servidor Passo 1: Cliente envia TCP SYN ao servidor especifica número de seqüência inicial Passo 2: Servidor que recebe o SYN, responde com segmento SYN/ACK reconhece o SYN recebido aloca buffers especifica o número de seqüência inicial do servidor Passo 3: o sistema final cliente reconhece o SYN/ACK (enviando um ACK) SYN ACK, SYN ACK conexão estabelecida
Protocolo de Transporte TCP Encerramento de conexão cliente servidor Passo 1: o cliente envia o segmento TCP FIN ao servidor Passo 2: servidor recebe FIN, responde com ACK. Fecha a conexão, envia FIN. Passo 3: cliente recebe FIN, responde com ACK. A conexão está terminada ACK FIN ACK conexão fechada
Protocolo de Transporte TCP Identificando portas abertas Cliente envia pacote TCP com flag SYN a uma porta específica do servidor Servidor responde com flags ACK / SYN se a porta estiver aberta Servidor responde com flag RST se a porta estiver fechada Cliente não recebe respostas se: O Servidor estiver desligado :) Algum filtro/firewall no meio do caminho bloquear a consulta Diversas técnicas de exploração/sondagem (em ataques a redes, monitoramento e/ou pentests) utilizam essas informações para identificação de alvos potenciais
Protocolo de Transporte TCP Sessão = Sockets (TCP + IP) Conjunto de informações que caracterizam cada pacote como único (base para identificação de sessões no TCP/IP): Endereço IP de Origem / Porta de Origem Endereço IP de Destino / Porta de Destino Protocolo OBS1.: Os dados Endereço IP de Origem, Endereço de Destino e Protocolo são retirados do cabeçalho IP OBS2.: Os dados Porta de Origem e Porta de Destino são retirados do cabeçalho TCP
Protocolo de Transporte TCP Sessão = Sockets (TCP + IP) Cabeçalho IP version (4) header length (4) TOS (8) total length (16) Cabeçalho TCP identification (16) flags (3) fragment offset (13) TTL (8) protocol (8) header checksum (16) source address (32) destination address (32) options (if any) source port (16) destination port (16) sequence number (32) acknowledgment number (32) header length (4) reserved (6) flags (6) window size (16) TCP checksum (16) urgent pointer (16) options (if any)
Questões para Fixação Quais os dois principais protocolos da pilha utilizada na maioria das redes locais e na Internet? A. ARP e ICMP B. ARP e RARP C. TCP e UDP D. IP e TCP
Questões para Fixação Quantas portas cada protocolo de transporte (UDP ou TCP) tem disponível para utilização? A. 01 (uma) porta por vez B. 256 (2 8 ) C. 65.536 (2 16 ) D. 4.294.967.296 (2 32 )
Questões para Fixação Que portas, por padrão, utilizam respectivamente os serviços SMTP, DNS (consultas) e HTTP? A. 25/TCP, 53/TCP e 80/TCP B. 25/UDP, 53/TCP e 80/TCP C. 25/TCP, 53/UDP e 80/TCP D. 25/UDP, 53/UDP e 80/UDP
Questões para Fixação Que resposta um host cliente espera de um servidor ao enviar uma requisição TCP (pacote com flag SYN) a uma porta aberta? A. RST B. FIN C. ACK D. PSH
Questões para Fixação Que resposta um host cliente espera de um servidor ao enviar uma requisição TCP (pacote com flag SYN) a uma porta fechada? A. RST B. FIN C. ACK D. PSH
Questões para Fixação Que flag TCP deve ser enviada por uma aplicação informando que abre mão da reorganização de segmentos antes da entrega (envio de segmentos TCP à camada de aplicação sem reordenação e sem a garantia de que todos os segmentos foram entregues)? A. RST B. FIN C. ACK D. PSH
Questões para Fixação Qual o nome do arquivo disponível na maioria dos sistemas operacionais (Windows e Linux, por exemplo) com o mapeamento dos principais serviços de rede e suas respectivas portas padrões)? A. hosts B. ports C. services D. maps
Questões para Fixação Qual o nome do procedimento de estabelecimento de conexões TCP? A. 2-Way-Handshake B. 3-Way-Handshake C. 4-Way-Handshake D. O TCP não estabelece conexões
Questões para Fixação Qual o nome do procedimento de estabelecimento de conexões UDP? A. 2-Way-Handshake B. 3-Way-Handshake C. 4-Way-Handshake D. O UDP não estabelece conexões