Redes TCPIP Protocolos de Transporte e Aplicao Edgard

  • Slides: 21
Download presentation
Redes TCP/IP Protocolos de Transporte e Aplicação Edgard Jamhour

Redes TCP/IP Protocolos de Transporte e Aplicação Edgard Jamhour

Pilha de Protocolos Aplicação Seqüência de empacotamento Camada de Aplicação HTTP, FTP, SMTP, etc

Pilha de Protocolos Aplicação Seqüência de empacotamento Camada de Aplicação HTTP, FTP, SMTP, etc Interface Sockets Camada de Transporte TCP, UDP mensagem segmento/datagrama S. O. Camada de Rede IP Interface de Rede Camada de Enlace e Fisica pacote quadro Edgard Jamhour

Endereçamento por Portas Dispositivo B Dispositivo A Processo B Processo 1024 Processo 1025 Porta

Endereçamento por Portas Dispositivo B Dispositivo A Processo B Processo 1024 Processo 1025 Porta TCP Porta UDP 80 80 TCP UDP Endereço IP IP IP End. MAC Ethernet barramento 1024 80 Dados Edgard Jamhour

TCP X UDP TCP Orientado a Conexão Identifica uma seqüência de pacotes com pertencentes

TCP X UDP TCP Orientado a Conexão Identifica uma seqüência de pacotes com pertencentes a uma mesma transmissão Transmissão por Fluxo Segmentação e Remontagem feita pelo S. O. Transmissão Confiável Confirma recebimento e retransmite pacotes perdidos UDP Não Orientado a Conexão Cada pacote é uma transmissão independente Transmissão por Datagramas: Segmentação e Remontagem feita pela aplicação. Não confiável Cabe a aplicação implementar os mecanismos de retransmissão Edgard Jamhour

Orientado (TCP) vs Não-Orientado (UDP) a Conexão ABERTURA DE CONEXÃO THREE WAY HANDSHAKE TRANSMISSÃO

Orientado (TCP) vs Não-Orientado (UDP) a Conexão ABERTURA DE CONEXÃO THREE WAY HANDSHAKE TRANSMISSÃO DE DADOS. . . FIM DE CONEXÃO DE DADOS O TCP USA PACOTES DE CONTROLE PARA CRIAR E ENCERRAR CONEXÕES O CONTEÚDO TRANSPORTADO PELOS PACOTES NO INTERIOR DA CONEXÃO É NUMERADO 4 PACOTES PARA FECHAR A CONEXÃO TRANSMISSÃO DE DADOS O UDP NÃO USA PACOTES DE CONTROLE OS PACOTES UDP SÃO INDEPENDENTES Edgard Jamhour

Transmissão por Fluxo (TCP) vs Datagrama (UDP) Aplicação write(buffer) fluxo contínuo de bytes (stream)

Transmissão por Fluxo (TCP) vs Datagrama (UDP) Aplicação write(buffer) fluxo contínuo de bytes (stream) NA TRANSMISSÃO POR FLUXO A APLICAÇ O NÃO CONTROLA O TAMANHO DO PACOTE read(buffer) TCP segmentos IP IP pacotes Aplicação sendto(buffer) socket recvfrom(buffer) UDP datagramas IP OS DADOS RECEBIDOS SÃO VISTOS PELA APLICAÇÃO RECEPTORA COMO UM FLUXO CONTÍNUO DE BYTES pacotes IP NA TRANSMISSÃO POR DATAGRAMA A APLICAÇÃO DEFINE O TAMANHO DOS PACOTES A MENSAGEM RECEBIDA É LIDA POR INTEIRO (recvfrom) Edgard Jamhour

Transmissão Confiável (TCP) DADOS SEGMENTO B X TCP APLICAÇÃO ACK A SEGMENTO C SEGMENTO

Transmissão Confiável (TCP) DADOS SEGMENTO B X TCP APLICAÇÃO ACK A SEGMENTO C SEGMENTO B ACK B e C APLICAÇ O SEGMENTO A DADOS O MODO DE COMUNICAÇÃO CONFIÁVEL DO TCP É RETRANSMISSÃO POR AUSÊNCIA DE CONFIRMAÇÃO A APLICAÇÃO RECEBE APENAS DADOS QUE CHEGAREM NA ORDEM CORRETA DE TRANSMISSÃO DADOS Edgard Jamhour

TCP X UDP TCP UDP Controle de Fluxo Controle de Congestionamento Sem controle Somente

TCP X UDP TCP UDP Controle de Fluxo Controle de Congestionamento Sem controle Somente Unicast, Multicast ou Broad. Cast Indicado para transferir grandes quantidades de dados em modo confiável Indicado para transmissões rápidas (poucos dados) ou que não admitam grande atraso (tempo-real) Edgard Jamhour

Controle de Congestionamento e Fluxo DADOS SEGMENTO A DADOS ACK A DADOS SEGMENTO B

Controle de Congestionamento e Fluxo DADOS SEGMENTO A DADOS ACK A DADOS SEGMENTO B SEGMENTO C ACK B e C DADOS ACK D (BUFFER LIVRE) DADOS APLICAÇ O DADOS TCP ACK D (BUFFER CHEIO) DADOS TCP APLICAÇÃO SEGMENTO D SEGMENTO E SEGMENTO F SEGMENTO G X SEGMENTO H ACK E Edgard Jamhour

Protocolo TCP 0 4 8 Byte 1 12 16 Byte 2 24 20 Byte

Protocolo TCP 0 4 8 Byte 1 12 16 Byte 2 24 20 Byte 3 Porta de Origem 28 31 Byte 4 Porta de Destino Número de Seqüência Número de Confirmação HLEN Reservado Flags Janela de Recepção Checksum Ponteiro de Urgência Opções Dados. . FLAGS: ACK, SYN, FIN, RST, URG, CWR, ECN, PUSH Edgard Jamhour

Segmentação e Remontagem Início da Conexão Fim da Conexão Fluxo Contínuo de Bytes 0

Segmentação e Remontagem Início da Conexão Fim da Conexão Fluxo Contínuo de Bytes 0 200 NIS + 0 Dados SEGMENTO 500 NIS + 200 Dados SEGMENTO 800 NIS + 800 bytes Dados SEGMENTO Edgard Jamhour

Comunicação Confiável segmento 1 segmento 2 1000 - 1499 1500 - 1799 segmento A

Comunicação Confiável segmento 1 segmento 2 1000 - 1499 1500 - 1799 segmento A segmento B 2000 - 2099 2100 - 2989 cliente servidor seq=1000, conf=2000, dados=500 bytes seq=2000, conf=1500, dados=100 bytes seq=1500, conf=2100, dados=300 seq=2100, conf=1800, dados=890 bytes tempo Edgard Jamhour

Recomendações RFC 1122 e 2581 EVENTO • Chegada de um segmento na ordem. •

Recomendações RFC 1122 e 2581 EVENTO • Chegada de um segmento na ordem. • Chegada de um segmento fora de ordem (número mais alto que o esperado). • Chegada de um segmento que preenche a lacuna. AÇÃO TCP DESTINATÁRIO • Aguarda 500 ms. Se outro segmento não chegar, confirma o segmento. Se outro segmento vier, confirma os dois com um único ACK. • Envia imediatamente o ACK duplicado com o número do byte aguardado (isto é, repete o último ACK de ordem correta). • Envia imediatamente o ACK (se o preechimento foi na parte contigua baixa da lacuna). Edgard Jamhour

Conexão TCP cliente abertura de conexão seq=C_NIS, ACK=0, SYN=1 servidor seq=S_NIS, conf=C_NIS+1, ACK=1, SYN=1

Conexão TCP cliente abertura de conexão seq=C_NIS, ACK=0, SYN=1 servidor seq=S_NIS, conf=C_NIS+1, ACK=1, SYN=1 seq=C_NIS+1, conf=S_NIS+1, ACK=1, SYN=0 transmissão dos dados . . . FIN=1 ACK=1 encerramento de conexão FIN=1 ACK=1 tempo Edgard Jamhour

Controle de Fluxo S. O. 3000 Rcv. Buffer 2000 Last. Byte. Rcvd 1000 0

Controle de Fluxo S. O. 3000 Rcv. Buffer 2000 Last. Byte. Rcvd 1000 0 A Transmissor conf=1000 Rcv. Window=1000 aplicação Last. Byte. Read B Receptor Edgard Jamhour

Controle de Congestionamento MSS congwindow evento de falha crescimento exponencial prevenção de congestionamento Threshold

Controle de Congestionamento MSS congwindow evento de falha crescimento exponencial prevenção de congestionamento Threshold t RTT A RTT RTT RTT B envio RTT confirmação Edgard Jamhour

Congestionamento X Controle de Fluxo Dados a Serem Trasmitidos tempo 2000 Rcv. Window 1800

Congestionamento X Controle de Fluxo Dados a Serem Trasmitidos tempo 2000 Rcv. Window 1800 Cong. Window 1500 Last. Byte. Sent 1000 Last. Byte. Acked 0 A B envio RTT confirmação Edgard Jamhour

Protocolo UDP 0 4 8 Byte 1 12 16 Byte 2 24 20 Byte

Protocolo UDP 0 4 8 Byte 1 12 16 Byte 2 24 20 Byte 3 28 31 Byte 4 Porta de Origem Porta de Destino Ponteiro de Urgência Checksum Dados. . Edgard Jamhour

Protocolos de Aplicação Camada de Transporte Camada de Rede HTTP FTP SMTP NFS TCP

Protocolos de Aplicação Camada de Transporte Camada de Rede HTTP FTP SMTP NFS TCP DNS DHCP UDP IP Edgard Jamhour

Portas bem Conhecidas httpd 80 >1023 wget ftp control 21 ftpd >1023 20 servido

Portas bem Conhecidas httpd 80 >1023 wget ftp control 21 ftpd >1023 20 servido r ftp data >1023 cliente smtp smptd 25 >1023 firefox nfsd 2049 >1023 nfs client dns named 53 >1023 dig >1023 dhclient dhcpd 67 Edgard Jamhour

Conclusão Protocolos de Transporte e Aplicação Edgard Jamhour

Conclusão Protocolos de Transporte e Aplicação Edgard Jamhour