Vous êtes sur la page 1sur 61

Camada de Transporte

Prof Fbio Eder

Camada de Transporte
Fornecem comunicao lgica entre processos de aplicao executando em diferentes hospedeiros os protocolos de transporte so executados nos sistemas finais, ex: Transmissor: quebra as mensagens da aplicao em segmentos, repassa-os para a camada de rede; Receptor: remonta as mensagens a partir dos segmentos, repassa-as para a camada de aplicao; Os protocolos mais importantes desta camada e que tratam das aplicaes de Internet so: TCP e UDP

aplicao transporte rede enlace fsica rede enlace fsica

rede enlace fsica

rede enlace fsica rede enlace fsica rede enlace fsica

aplicao Transporte rede enlace fsica

Fonte: Redes de Computadores e a Internet Kurose, 2010

Camada de Transporte X Camada de Rede


Camada de rede: comunicao lgica entre hospedeiros (hosts); Camada de transporte: comunicao lgica entre os processos; Depende e estende servios da camada de rede.

Camada de Transporte X Camada de Rede


Analogia domstica: 12 crianas enviando cartas para 12 crianas processos = crianas msg da aplicao = cartas em envelopes hospedeiros = casas protocolo de transporte = Ana e Joo protocolo da camada de rede = servio postal

Camada de Transporte na Internet


1 - Entrega confivel, ordenada : TCP controle de congestionamento controle de fluxo estabelecimento de conexo (setup) 2 - Entrega no confivel, no ordenada: UDP extenso sem frescuras do melhor esforo do IP 3 - Servios no disponveis: garantias de atraso mximo garantias de largura de banda mnima

Camada de Transporte na Internet


A camada de REDE na Internet: Protocolo IP como principal protocolo, que prov a comunicao lgica entre hospedeiros; IP oferece servio de melhor esforo para levar os segmentos entre os hospedeiros comunicantes, mas sem garantia;

Camada de Transporte na Internet


A responsabilidade fundamental dos protocolos TCP e UDP ampliar o servio de entrega entre dois processos que rodam nos sistemas finais; A ampliao da entrega de processos entre os ns finais denominada multiplexao e demultiplexao de camada de transporte; Estes dois servios mnimos de camada de transporte so os nicos que o UDP fornece; O UDP, como o IP no so servios confiveis, uma vez que no garantem que os dados enviados por um processo cheguem.

Camada de Transporte na Internet


O TCP oferece vrios servios adicionais s aplicaes; Ele oferece um servio de transferncia confivel de dados; Utiliza controle de fluxo, nmeros de sequncia, reconhecimentos e temporizadores; Este protocolo assegura que os dados sejam entregues do processo remetente ao processo destinatrio corretamente e em ordem.

Camada de Transporte na Internet


Assim, o TCP converte o servio no confivel do IP entre sistemas finais em um servio confivel de transporte de dados entre processos; Ele tambm fornece controle de congestionamento, evitando que qualquer outra conexo TCP inunde os enlaces e comutadores; Em princpio, o TCP permite que suas conexes em um ambiente congestionado, mantenham-se em p de igualdade a largura de banda.

Segmento TCP
0 7 8 15 16 23 24 31

Porta de origem Nmero de seqncia Nmero do reconhecimento


URG ACK PSH SYN RST

Porta de destino

TC

Reservado Checksum

FIN

Tamanho da janela Ponteiro de urgncia

Opes Dados (opcionais)

Datagrama UDP

15 16

23 24

31

Porta de origem Tamanho do datagrama Dados (opcionais)

Porta de destino Checksum

Multiplexao e Demultiplexao
Socket: um elemento de software que prov uma interface de rede para a aplicao; So portas pelas quais os dados passam da rede para o processo e vice-versa (Kurose, 2010) Atravs de um socket podemos realizar vrias operaes, como exemplo: Estabelecer conexes entre mquinas; Enviar e receber dados; Encerrar conexes; Esperar por conexes em determinada porta.

Multiplexao/Demultiplexao
Demultiplexao no receptor: Entrega dos segmentos recebidos ao socket correto Multiplexao no transm.: rene dados de muitos sockets, envelopa os dados com o cabealho (usado posteriormente para a demultiplexao)

3: Camada de Transporte Fonte: Redes de Computadores e a Internet Kurose, 2010

Como funciona a demultiplexao


Computador recebe os datagramas IP cada datagrama possui os 32 bits endereos IP da origem e do porta remetente porta receptor destino cada datagrama transporta 1 outros campos segmento da camada de do cabealho transporte cada segmento possui nmeros das portas origem e destino dados da (lembre: nmeros de portas bem aplicao conhecidas para aplicaes (mensagem) especficas) O hospedeiro usa os endereos IP e os nmeros das portas para formato de segmento TCP/UDP direcionar o segmento ao socket apropriado
Fonte: Redes de Computadores e a Internet Kurose, 2010

Portas
Cada nmero de porta um nmero de 16 bits na faixa de 0 a 65535; As portas com valores entre 0 e 1023 so denominadas portas baixas, que so restritas e reservadas por protocolos da camada de aplicao como: http-80; ftp21; telnet-23; https-443; Definidas pela pela RFC 1700 e atualizada pela RFC-3232 www.iana.org; Varredura de porta com o comando nmap

NMap
NMAP Sintaxe: nmap <parmetros> <alvo> -p <portas> O alvo = endereo IP do host ou rede que se deseja escanear;

A opo -p = especifica as portas ou faixas de portas para anlise;

NMap
Os parmetros so ajustados de acordo com o que se deseja obter, os principais so: -sT - Com esse parmetro feito um escaneamento atravs de tentativas de conexo TCP. Essa forma muito fcil de ser identificada por firewalls e IDS; -sS Assim, a tentativa ser com pacotes TCP com a flag SYN ligada, ou seja, como apenas uma requisio de conexo. Essa tcnica dificulta um pouco a deteco;

NMap
Os parmetros so ajustados de acordo com o que se deseja obter, os principais so: -sP - Com essa opo o escaneamento ser feito atravs de pacotes ICMP echo request. Verifica apenas se o host est ativo;

-sU - Envia pacotes UDP com 0 byte para determinar o estado dessas portas;

NMap
Os parmetros so ajustados de acordo com o que se deseja obter, os principais so: -sO - usado para tentar determinar os protocolos suportados pelo host; -O - Com esse parmetro feito uma tentativa de determinar o sistema operacional atravs de uma tcnica conhecida como Active FingerPrint.

NMap
Vamos a prtica: Teste de pacotes SYN - sincronizao, nas portas de 1 a 100:

nmap -sS [endereo IP] -p 1-100

NMap
Agora, vamos mapear um endereo de rede para determinar servios ativos em mais de um host, basta informar o endereo da rede, como no exemplo:

nmap -sS [endereo ip]/24 -p 1-150

NMap
Podemos tambm identificar o Sistema OperacionalAgora, vamos mapear um endereo de rede para determinar servios ativos em mais de um host, basta informar o endereo da rede, como no exemplo: nmap -sS [endereo ip]/24 -p 1-150

UDP: User Datagram Protocol

CARACTERSTICAS - UDP

Simples; Menor; Mais rpido; Utiliza portas para a troca de informaes;

UDP: User Datagram Protocol [RFC 768]


Protocolo de transporte da Internet mnimo, sem gorduras, Servio melhor esforo, segmentos UDP podem ser: perdidos entregues aplicao fora de ordem sem conexo: no h setup UDP entre remetente, receptor tratamento independente de cada segmento UDP

Por qu existe um UDP?


elimina estabelecimento de conexo (o que pode causar retardo) simples: no se mantm estado da conexo nem no remetente, nem no receptor cabealho de segmento reduzido No h controle de congestionamento: UDP pode transmitir to rpido quanto desejado

Mais sobre UDP


muito utilizado para apls. de meios contnuos (voz, vdeo) tolerantes a perdas sensveis taxa de transmisso Comprimento em bytes do segmento UDP, incluindo cabealho 32 bits porta origem comprimento porta dest. soma de verificao

outros usos de UDP (por qu?):


DNS (nomes) SNMP (gerenciamento) transferncia confivel com UDP: acrescentar confiabilidade na camada de aplicao recuperao de erro especfica aplicao!

checksum

Dados de aplicao (mensagem) Formato do segmento UDP

PROTOCOLO DE COMUNICAO UDP

Permite comunicao entre aplicaes; No orientado conexo; No fornece garantia de entrega e nem verificao de dados;. Alternativa eficiente tratando-se de dados que necessitam de certa velocidade como udio e vdeo.

APLICAES DO PROTOCOLO UDP

Fluxo de dados em tempo real vdeo e voz; Jogos de computadores; Mensagens com constante retransmisso; Modelos Pergunta Resposta;

EXEMPLO: MONITORAO REMOTA

FRAGILIDADES APRESENTADAS PELO UDP Servio NFS (compartilhamento de discos remotos) Invasor com IP falso pode ter acesso ao servidor; Protocolo RIP (utilizado por roteadores para detectar melhor caminho) As informaes no so checadas portanto um invasor pode enviar informaes falsas e gravar os pacotes enviados.

TIPOS DE ATAQUES MAIS COMUNS COM UDP


IP Spoofing troca do IP de origem; SYN Flood processo que sobrecarrega a mquina; Fraggle chuva de pacotes atravs de broadcast; New Teardrop travamento das mquinas pois falsifica tamanho do pacote; WORM W32.SQLEXP ataque de negao de servio.

CONCLUSO

O protocolo UDP, apesar de simples, faz a entrega de mensagens independentes, designadas por datagramas, entre aplicaes ou processos em sistemas host, onde a rapidez na transmisso prioridade.

PROTOCOLOS:

UDP
Servio sem conexo

TCP
Servio orientado por conexo

No garante a entrega dos dados

Entrega garantida atravs de confirmaes Os programas que usam TCP tm garantia de transporte confivel de dados.

A confiabilidade necessria ao transporte de dados oferecida pelas aplicaes.

Rpido

Lento devido a quantidade de informaes necessrias

PORTAS DE COMUNICAO

Conceito idntico ao conceito de portas TCP. Permite a um processo de aplicao se associar a uma porta atravs do uso de portas que o Sistema Operacional sabe a qual programa se destina cada pacote UDP.

PROTOCOLOS QUE UTILIZAM UDP

PORTAS DE COMUNICAO

PORTAS DE COMUNICAO

TCP: Transmission Control Protocol

Protocolo TCP
Full-duplex; Orientado por conexo; Transmisso confivel de dados; Garantia de transmisso de dados corretos e na ordem adequada; Deteco e correo de erros; Retransmisso de dados; Garantia de no-duplicao.

Introduo
Protocolos de aplicao que usam o TCP:
Telnet; FTP; SMTP; IMAP; POP.

Cabealho TCP

Cabealho TCP

Cabealho TCP
Porta origem e destino = TCP Nmero de Seqncia
A partir do primeiro byte de dados transmitido; Usado para que o processo TCP no destino possa guardar os segmentos recebidos na ordem correta; Quando a conexo estabelecida existe um tempo de sincronismo para informao do nmero do pacote; Necessrios pq o TCP no foi projetado para entregar dados como pacotes independentes; TCP entrega dados como fluxo contnuo de bytes;

Cabealho TCP
Nmero de confirmao de recebimento:
Verificar o recebimento dos dados corretos; Confirmao positiva com retransmisso; Se ocorrer timeout, a origem considera que o pacote no chegou e retransmite; Nmero neste campo o nmero do prximo dado que o destino espera receber; Se este campo usado o bit ACK do campo de controle ajustado.

Cabealho TCP
Controle
Offset: Especifica o tamanho do cabealho TCP mnimo 20 bytes; Campo com 4 bits; Reservado: Para uso futuro; Campo com 6 bits.

Cabealho TCP
6 flags (1 bit cada)
URG dados urgentes, devem ser processados pelo destino o quanto antes; ACK segmento contm dados no campo de confirmao; PSH inicializado por um processo da camada superior e interpretado como Transfira todos os dados da fila ao destino imediatamente; RST reset, usado quando um evento causa uma desconexo indesejada. Termine a conexo imediatamente; SYN segmento contm dados no campo de nmero de seqncia; FIN terminar a conexo TCP.

Cabealho TCP
Janela Nmero mximo de bytes que o destino capaz de aceitar; Campo de 2 bytes; Controle de fluxo fim-a-fim; Habilita o destinatrio a controlar o fluxo de bytes do remetente; Pode ser mudado a qualquer momento durante a conexo Janela = 0, remetente para de transmitir; Remetente e destinatrio podem prover informaes de controle de fluxo via campo Janela

Cabealho TCP
Checagem de soma Checar se o segmento transmitido vlido;

Campo de 2 bytes;
Cabealho do TCP + dados;

Cabealho TCP
Apontador de urgncia
Solicita ao destino informar ao programa de aplicao destino que a informao que est sendo enviada precisa ser processada; Finalizao de sesses Telnet; 2 bytes; Usado junto com a flag URG;

Opes e apoio
Opes: Quais so requeridas por um processo TCP; Tamanho mximo do segmento Apoio: Preencher os bits restantes de um campo com 0s para que sejam mltiplos de 32

Conexo TCP
TCP orientado conexo
Conexo lgica deve ser estabelecida a priori entre os ns, antes da transmisso dos dados;

Para tal, TCP usa um protocolo conhecido como 3-way handshake


Cliente requere conexo; Servidor aceita; Cliente confirma.

Finalizao da Conexo TCP


Finalizada quando uma mquina no possui mais nada a ser transmitido; TCP full-duplex
Conexo pode ser finalizada em uma direo e permanecer aberta em outra direo; A termina conexo, porm B continua transmitindo.

Confiabilidade
Nmeros de seqncia e confirmao Sempre que uma mquina recebe um segmento TCP vlido, ela envia uma confirmao como parte da resposta; Se um segmento vlido no recebido, nenhuma confirmao enviada.

Confiabilidade
TCP do tipo confirmao positiva com retransmisso; O uso dos nmeros de seqncia tambm possibilita a remontagem dos segmentos de dados na ordem correta quando estes no chegam em seqncia.

Controle de Fluxo
Uso do campo Janela; Controle de fluxo fim-a-fim:
Em cada extremidade do link, o TCP mantm buffers para envio e recebimento Buffer de envio contm:
Dados a ser transmitidos; Dados que foram transmitidos mas no confirmados;

Buffer de recebimento contm:


Dados recebidos na ordem correta, mas ainda no processados; Dados que chegaram fora de ordem, reordenar.

Controle de Fluxo
Atravs do campo Janela o receptor avisa o tamanho da janela; Menor ou igual ao tamanho do buffer disponvel;

No lado do receptor deve-se levar em considerao a quantidade de dados que ocupa o buffer a cada momento.

Controle de Fluxo
Na origem deve-se calcular um tamanho de janela que limita a quantidade de dados a ser enviada; Em funo do tamanho de janela enviado pelo receptor e a diferena entre a quantidade de dados enviada e a quantidade de dados j confirmada.

Controle de Fluxo
Exemplo:
Janela do receptor = 1000 bytes; Dados j transmitidos = 700 bytes; 500 bytes j confirmados; Tamanho da janela a ser enviada :
1000 (700 500) = 800 bytes; Emissor pode continuar enviando desde que o nmero total de bytes no exceda 800; Emissor deve cuidar para que a aplicao no gere mais dados a serem transmitidos do que suporta o buffer;

Controle de Fluxo
O buffer dinmico; Quando o buffer do receptor est cheio, ele adverte para um tamanho menor; Quando existe mais espao, ele adverte para um tamanho maior de janela; Durante todo o tempo, o emissor calcula o tamanho da janela a ser transmitida.

Controle de Fluxo
Se emissor advertido de janela com tamnho 0, est proibido de enviar dados; TCP ir bloquear a aplicao de gerar mais dados, at que haja o aviso de uma janela de tamanho diferente de 0;

Concluso
TCP mais confivel e oferece maior garantia; Por conta do estabelecimento da comunicao, pode apresentar lentido; Ao contrrio do UDP, o protocolo TCP prioriza a garantia de entrega e no a velocidade que os pacotes sero entregues.

Vous aimerez peut-être aussi