Camada de Transporte
Por: DricaOliveira • 6/11/2015 • Relatório de pesquisa • 2.665 Palavras (11 Páginas) • 458 Visualizações
CAMADA DE TRANSPORTE
Serviços e protocolos de transporte • oferecem comunicação lógica entre processos de aplicação rodando em hospedeiros diferentes.
Protocolos de transporte rodam em sistemas finais. • lado remetente: divide as msgs da aplicação em segmentos, passa à camada de rede • lado destinatário: remonta os segmentos em msgs, passa à camada de aplicação
Mais de um protocolo de transporte disponível às aplicações. Internet: TCP e UDP
Camada de rede: comunicação lógica entre hosts •uso de datagramas •Executada em roteadores e hosts (endereçamento)
Camada de transporte: comunicação lógica entre processos •amplia os serviços da camada de rede •Converte os dados recebidos da camada de aplicação em segmentos •Executada somente nos hosts
Protocolos da camada de transporte • remessa confiável e em ordem (TCP) • controle de congestionamento • Não direcionado à aplicação solicitante, mas à Internet como um todo. • controle de fluxo • estabelecimento da conexão Ex: Transferencia de arquivos, email, serviços web, utilzam esse protocolo.• remessa não confiável e desordenada: UDP extensão sem luxo do IP pelo “melhor esforço” . EX: Gerência remota, endereçamento dinâmico.
Sockets: portas por onde os dados passam da rede para o processo e do processo para a rede. Mecanismo básico de comunicação sobre IP. •Representação interna do S.O. para um ponto de comunicação
Multiplexação no host emissor: Coleta dados de múltiplos sockets, envelopa os dados com cabeçalho (usado depois para demultiplexação)
Demultiplexação no receptor: Entrega os segmentos recebidos ao socket correto
Como funciona a demultiplexação •host recebe datagramas IP: cada datagrama tem end. IP de origem, endereço IP de destino; cada datagrama carrega 1 segmento da camada de transporte; cada segmento tem número de porta de origem, destino. •host usa end. IP e nº de porta para direcionar segmento ao socket apropriado.
Demultiplexação TCP (orientada a conexão) •socket TCP identificado por tupla de 4 elementos:
•endereço IP de origem •número de porta de origem •endereço IP de destino •número de porta de destino •hospedeiro destinatário usa todos os quatro valores para direcionar segmento ao socket apropriado •hospedeiro servidor pode admitir muitos sockets TCP simultâneos: •cada socket identificado por usa própria tupla de 4 •servidores Web têm diferentes sockets para cada cliente conectando •HTTP não persistente terá diferentes sockets para cada requisição
Varredura de portas •Processo servidor espera pacientemente em um porta aberta para contato por um cliente remoto. •É possível mapear as portas abertas em servidores e hosts. Técnica utilizada para invasão e para análise de vulnerabilidades.
UDP: User Datagram Protocol [RFC 768] Projetado para ser um protocolo + simples e básico possível . Protocolo de transporte da Internet “sem luxo”, básico •serviço de “melhor esforço”, segmentos UDP podem ser: •Perdidos; •entregues à aplicação fora da ordem. Por que existe um UDP? •sem estabelecimento de conexão (que pode gerar atraso) •simples: sem estado de conexão no remetente, destinatário •cabeçalho de segmento pequeno •sem controle de congestionamento: UDP pode transmitir o mais rápido possível
Soma de verificação UDP: detectar erros (ex: bits invertidos) no segmento transmitido.
É possível que uma aplicação tenha transferência confiável de dados usando UDP?• Sim, desde que a confiabilidade esteja embutida na aplicação.• Assim as aplicações podem se comunicar de maneira confiável sem ter de se sujeitar às limitações da taxa de transmissão impostas pelo mecanismo de controle de congestionamento do TCP.
Princípios de transferência confiável de dados: Controle de erros: •Têm por objetivo assegurar a retransmissão de dados não corretamente recebidas (após a detecção do erro);•O método automático que os sistemas “pedem” a retransmissão dos dados ao emissor é chamado ARQ – Automatic repeat request; •Controle de congestionamento:•É necessário assegurar que o emissor não sobrecarrega o receptor com quantidade de dados superior à que este consegue suportar;
Transmissão Confiável:Estratégia que implementa a entrega confiável: ARQ - Automatic Repeat Request (Solicitação automática de repetição)• técnica mais utilizada;• exige detecção de erro (CRC, p. ex.);• retransmite o quadro que deu problema;• combina confirmação (ACK - acknowledgment) e temporização (timeout).
Paralelismo: remetente permite múltiplos pacotes “no ar”, ainda a serem reconhecidos•intervalo de números de sequência deve ser aumentado•buffering no remetente e/ou destinatário
ACK(M) : confirma a recepção dos pacotes com um nº de sequência inferior ou igual a M;
Timeout(M) : permite a retransmissão de todos os pacotes que são superior a M e na “sending-windows”;
ARQ “Janela Deslizante” (Sliding Window) (emissor): Funcionamento do algoritmo de janela deslizante:• Emissor atribui um nº de sequência a cada quadro (NumSeq) -> Emissor mantém 3 variáveis( Tamanho da janela de envio (TJE) – nº de quadros não confirmados que o emissor pode transmitir, Última confirmação recebida (UCR),Último quadro enviado (UQE)) -> Quando uma confirmação chega, o emissor move UCR para direita, permitindo assim que o emissor transmita outro quadro. Quando ocorre um timeout, quantidade de dados em trânsito diminui, pois emissor é incapaz de avançar sua janela, até um quadro x seja confirmado. O tam. janela de envio é selecionado de acordo com o nº de quadros que pode-se ter pendentes no enlace.
...