REDES DE COMPUTADORES 09/2013 Cap.3 Protocolo TCP e a Camada de Transporte
2 Esclarecimentos Esse material é de apoio para as aulas da disciplina e não substitui a leitura da bibliografia básica. Os professores da disciplina irão focar alguns dos tópicos da bibliografia assim como poderão adicionar alguns detalhes não presentes na bibliografia, com base em suas experiências profissionais. O conteúdo de slides com o título Comentário seguido de um texto, se refere a comentários adicionais ao slide cujo texto indica e tem por objetivo incluir alguma informação adicional aos conteúdo do slide correspondente. Bibliografia básica: KUROSE, James F.; ROSS, Keith. Redes de Computadores e a INTERNET - Uma nova abordagem. Pearson. :, 2001.
3 Camada de Transporte Fornecem comunicação lógica entre processos de aplicação em diferentes hospedeiros. Os protocolos de transporte são executados nos sistemas finais: Lado emissor: quebra as mensagens da aplicação em segmentos e envia para a camada de. Lado receptor: remonta os segmentos em mensagens e passa para a camada de aplicação. Há mais de um protocolo de transporte disponível para as aplicações: aplicação transporte aplicação transporte Internet: TCP e UDP.
4 Protocolos da Camada de Transporte da Internet TCP: Confiável, garante ordem de entrega. Controle de congestionamento. Controle de fluxo. Orientado à conexão. UDP: Datagrama. Não confiável, sem ordem de entrega. Extensão do melhor esforço do IP. Sem garantia a atrasos. Sem garantia de banda. aplicação transporte aplicação transporte
5 Introdução ao TCP/IP Transmission Control Protocol/Internet Protocol (TCP/IP) é um conjunto de protocolos de comunicação utilizados para a troca de dados entre computadores em ambientes de s locais ou remotas. As especificações dos protocolos TCP/IP são públicas e genéricas, o que permite sua implementação por diversos fabricantes. O Transmission Control Protocol / Internet Protocol (TCP/IP) utiliza-se de dois diferentes protocolos: TCP: camada de transporte. IP: camada de. O modelo TCP/IP é similar ao modelo OSI.
6 Protocolo TCP/IP Modelo TCP / IP Modelo OSI TCP IP
7 Protocolo TCP/IP Camada 1 Acesso à Rede A camada de Acesso à Rede ou Interface de Rede, consiste dos processos de acesso à. Esta camada interage com o hardware, permitindo que as demais camadas do modelo TCP/IP sejam independentes do meio físico ou do hardware utilizado na comunicação.
8 Protocolo TCP/IP Camada 2 Internet A camada de Internet ou camada de Rede, é responsável pelo endereçamento dos equipamentos envolvidos na comunicação de e pelo roteamento dos dados pelas diversas s que eles atravessarão. O IP Internet Protocol é o principal protocolo dessa camada.
9 Protocolo TCP/IP Camada 3 Transporte A camada de Transporte fornece serviços de entrega de dados ponto a ponto. São dois os protocolos desta camada: TCP Transmission Control Protocol: é um protocolo orientado a conexão e garante a entrega dos dados, corretos e na mesma sequência em que foram transmitidos. UDP User Datagram Protocol: não é orientado a conexão, não garante a entrega dos dados, mas gera menos sobrecarga (overhead) que o TCP.
10 Protocolo TCP/IP Camada 4 Aplicação A camada de Aplicação fornece serviços as aplicações e processos que utilizam a. Qualquer usuário pode criar suas aplicações, pois o TCP/IP é uma arquitetura aberta. Exemplos de protocolos de aplicação são: HTTP Hyper Text Transfer Protocol, Protocolo de Transferência de Hipertexto, Internet. FTP File Transfer Protocol, Transferência de Arquivos. SMTP e-mail, Simple Mail Transfer Protocol, Protocolo de Transferência de Mail. POP e-mail, Post Office Protocol, Protocolo de Correio.
11 TCP: visão geral RFCs: 793, 1122, 1323, 2018, 2581 Fim-a-fim. Confiável. Dados full-duplex: Transmissão bidirecional na mesma conexão. MSS: maximum segment size. Orientado à conexão: Apresentação (troca de mensagens de controle) inicia o estado do transmissor e do receptor antes da troca de dados. Controle de fluxo: Transmissor não esgota a capacidade do receptor.
12 Portas TCP - Conceitos O uso do conceito de portas permite que vários programas estejam em funcionamento, ao mesmo tempo, no mesmo computador, trocando informações com um ou mais serviços/servidores. As portas TCP são identificadas entre 1 a 65536. Cada porta pode ser usada por um programa ou serviço diferente. Portanto, teoricamente seria possível ter até 65536 serviços diferentes ativos simultaneamente em um mesmo servidor, usando um endereço IP válido. As portas TCP de 1 a 1024 são reservadas para serviços mais conhecidos e utilizados. Além do endereço IP, qualquer pacote que circula na Internet precisa conter também a porta TCP a que se destina. É isso que faz com que um pacote chegue até o servidor Web e não ao servidor FTP instalado na mesma máquina.
13 Portas UDP Além das 65536 portas TCP, temos o mesmo número de portas UDP. Embora seja um protocolo menos usado que o TCP, o UDP continua presente nas s atuais pois oferece uma forma alternativa de envio de dados, onde ao invés da confiabilidade é privilegiada velocidade e simplicidade. Vale lembrar que, tanto o TCP, quanto o UDP, trabalham na camada 4 do modelo OSI. Ambos trabalham em conjunto com o IP, que cuida do endereçamento de.
14 Portas UDP O conceito de porta UDP é idêntico ao conceito de portas TCP, embora tecnicamente, existam diferenças na maneira como as portas são utilizadas em cada protocolo. A idéia é a mesma, por exemplo, se um usuário estiver utilizando vários programas baseados em UDP, ao mesmo tempo, no seu computador, é através do uso de portas, que o sistema operacional sabe a qual programa se destina cada pacote UDP que chega. O lado do servidor de cada programa que usa UDP escuta as mensagens que chegam no seu número de porta conhecido. Todos os números de porta de servidor UDP menores que 1.024 (e alguns números mais altos) são reservados e registrados pela Internet Assigned Numbers Authority (IANA, autoridade de números atribuídos da Internet).
15 TCP versus UDP UDP TCP Serviço sem conexão; nenhuma sessão é estabelecida entre os hosts. Serviço orientado por conexão; uma sessão é estabelecida entre os hosts. UDP não garante ou confirma a entrega ou seqüência os dados. TCP garante a entrega através do uso de confirmações e entrega seqüenciada dos dados. Os programas que usam UDP são responsáveis por oferecer a confiabilidade necessária ao transporte de dados. Os programas que usam TCP têm garantia de transporte confiável de dados. UDP é rápido, gera menor sobrecarga que o TCP e pode oferecer suporte à comunicação ponto a ponto e ponto a vários pontos. TCP é mais lento, gera maior sobrecarga que o UDP e pode oferecer suporte apenas à comunicação ponto a ponto.
16 Segmento TCP
17 Segmento UDP
18 Comentário: Estrutura do segmento TCP URG: dados urgentes (pouco usados) ACK: campo de ACK é válido PSH: produz envio de dados (pouco usado) RST, SYN, FIN: estabelec. de conexão (comandos de criação e término) contagem por bytes de dados (não segmentos!) número de bytes (receptor está pronto para Aceitar) Internet checksum (como no UDP)
19 Comentário: Exemplo de Portas TCP padronizadas Número de porta TCP Descrição 20 Servidor FTP (File Transfer Protocol, protocolo de transferência de arquivo) (canal de dados) 21 Servidor FTP (canal de controle) 23 Servidor Telnet 53 Transferências de zona DNS (Domain Name System, sistema de nomes de domínios) 80 Servidor da Web (HTTP, Hypertext Transfer Protocol, protocolo de transferência de hipertexto) 139 Serviço de sessão de NetBIOS
20 Comentário: Exemplo de Portas UDP padronizadas Número de porta UDP Descrição 53 Consultas de nomes DNS (Domain Name System, sistema de nomes de domínios) 69 Trivial File Transfer Protocol (TFTP) 137 Serviço de nomes de NetBIOS 138 Serviço de datagrama de NetBIOS 161 Simple Network Management Protocol (SNMP) 520 Routing Information Protocol (RIP, protocolo de informações de roteamento)