rct 15 - camada de transporte

6
GESTÃO DE SISTEMAS DE REDE 1(6) TGSI/FMR Prof. Moreira Anotações da aula 13 (03 e 06/05/2005) CAMADA DE TRANSPORTE A camada de transporte, tanto no modelo OSI quanto no modelo TCP/IP, é a camada responsável pela transferência eficiente, confiável e econômica dos dados entre a máquina de origem e a máquina de destino, independente do tipo, topologia ou configuração das redes físicas existentes entre elas, garantindo ainda que os dados cheguem sem erros e na seqüência correta. A camada de transporte é uma camada fim-a-fim, isto é, uma entidade (hardware/software) desta camada só se comunica com a sua entidade semelhante do host destinatário. A camada de transporte provê mecanismos que possibilitam a troca de dados fim-a-fim, ou seja, a camada de transporte não se comunica com máquinas intermediárias na rede, como pode ocorrer com as camadas inferiores. Entidade de transporte é o nome dado ao hardware/software que executa as funções da camada de transporte. Este hardware e ou software podem estar no núcleo do sistema operacional, em algum outro processo vindo de camadas superiores, em um pacote de biblioteca vinculado a aplicações de rede ou mesmo na placa de interface de rede. Todo o procedimento de transporte funciona inteiramente na máquina do usuário, isto é, está sob seu controle, diferentemente dos procedimentos das camadas inferiores que, muitas vezes, dependem de concessionárias de serviços de comunicações, portanto fora do domínio e controle do usuário. Camada física Camada física Camada de enlace Camada de enlace Meio Físico Camada de rede Camada de rede Camada de transporte Camada de transporte

Upload: universalorgmx

Post on 09-Jul-2015

785 views

Category:

Technology


3 download

TRANSCRIPT

Page 1: Rct   15 - camada de transporte

GESTÃO DE SISTEMAS DE REDE 1(6)

TGSI/FMR Prof. Moreira Anotações da aula 13 (03 e 06/05/2005)

CAMADA DE TRANSPORTE

A camada de transporte, tanto no modelo OSI quanto no modelo TCP/IP, é a camada responsável pela transferência eficiente, confiável e econômica dos dados entre a máquina de origem e a máquina de destino, independente do tipo, topologia ou configuração das redes físicas existentes entre elas, garantindo ainda que os dados cheguem sem erros e na seqüência correta. A camada de transporte é uma camada fim-a-fim, isto é, uma entidade (hardware/software) desta camada só se comunica com a sua entidade semelhante do host destinatário. A camada de transporte provê mecanismos que possibilitam a troca de dados fim-a-fim, ou seja, a camada de transporte não se comunica com máquinas intermediárias na rede, como pode ocorrer com as camadas inferiores. Entidade de transporte é o nome dado ao hardware/software que executa as funções da camada de transporte. Este hardware e ou software podem estar no núcleo do sistema operacional, em algum outro processo vindo de camadas superiores, em um pacote de biblioteca vinculado a aplicações de rede ou mesmo na placa de interface de rede. Todo o procedimento de transporte funciona inteiramente na máquina do usuário, isto é, está sob seu controle, diferentemente dos procedimentos das camadas inferiores que, muitas vezes, dependem de concessionárias de serviços de comunicações, portanto fora do domínio e controle do usuário.

Camada física

Camada física

Camada de enlace

Camada de enlace

Meio Físico

Camada de rede

Camada de rede

Camada de transporte

Camada de transporte

Page 2: Rct   15 - camada de transporte

GESTÃO DE SISTEMAS DE REDE 2(6)

TGSI/FMR Prof. Moreira Anotações da aula 13 (03 e 06/05/2005)

Principais funções : � Transferência de dados — Através de mensagens de tamanho variável em full-duplex,

oferecendo tanto o serviço com conexão (circuito virtual) quanto o serviço sem conexão (datagrama) ;

� Transferência de dados urgentes — Dados podem ser transferidos com prioridade maior que os demais, normalmente informações de controle, sinalização e transmissão de interrupções;

� Estabelecimento e liberação de conexão — Antes e depois das transferências de dados. Para se estabelecer a conexão, devem ser negociadas a classe de protocolo a ser utilizada, o tamanho máximo das unidades de dados de protocolo, a utilização ou não do serviço de transferência de dados expressos, parâmetros de qualidade de serviço (throughput, atraso de trânsito, prioridade, taxa de erro residual, etc). Para se evitar perda de dados, muitas vezes é usada uma técnica conhecida como three-way handshake.

� Multiplexação — As mensagens de aplicações simultâneas são multiplexadas para reduzir custo do tempo de utilização da rede ou para melhor aproveitamento da largura de banda disponível. Ao chegar ao destino, as mensagens são demultiplexadas para as aplicações destinatárias;

� Segmentação, blocagem e concatenação — Quando o tamanho do pacote IP não suporta o tamanho do dado a ser transmitido, o TCP segmenta (mantendo a ordem) para posterior remontagem na máquina destinatária;

� Controle do fluxo — Através de um sistema de buferização denominada janela deslizante, o TCP envia uma série de pacotes sem aguardar o reconhecimento de cada um deles. Na medida em que recebe o reconhecimento de cada bloco enviado, atualiza o buffer (caso reconhecimento positivo) ou reenvia (caso reconhecimento negativo ou não reconhecimento após um timeout);

� Controle de seqüência e controle de erros — Além da numeração dos segmentos transmitidos, vai junto com o header uma soma verificadora dos dados transmitidos (checksum). Assim o destinatário verifica a soma efetuando o cálculo dos dados recebidos, a fim de evitar perdas, duplicação ou entrega fora de ordem;

� monitoração da qualidade do serviço: a monitoração da qualidade de serviço deve ser constante, caso contrário, deve ser gerada uma notificação à camada de sessão. As funções implementadas pela camada de transporte dependem da qualidade de serviço desejada.

� Precedência e segurança — Os níveis de segurança e precedência são utilizados para tratamento de dados durante a transmissão.

A técnica do three-way handshake busca solucionar um problema que pode surgir quando do estabelecimento de uma conexão: por exemplo, em uma conexão aberta é feita uma transferência eletrônica de dinheiro e é pedido o encerramento da conexão. Entretanto, por problemas de congestionamento da rede, foi necessário reenviar o pedido de transferência e novo pedido de desconexão. Após a máquina de origem ter se desconectado, chega à máquina de destino o novo pedido de transferência que é aceito, antes da desconexão da máquina destino, duplicando a transferência, sem que o cliente perceba. A técnica exige que os pedidos e as confirmações sejam numerados seqüencialmente e que a mesma seqüência não possa aparecer mais de uma vez na transmissão. Se houver repetição, a máquina destino rejeitará esta duplicidade. (Ver figura a seguir)

Page 3: Rct   15 - camada de transporte

GESTÃO DE SISTEMAS DE REDE 3(6)

TGSI/FMR Prof. Moreira Anotações da aula 13 (03 e 06/05/2005)

PORTAS O acesso das aplicações à camada de transporte é feito através de portas que recebem um número inteiro para cada tipo de aplicação, podendo também tais portas serem criadas à medida que novas necessidades vão surgindo com o desenvolvimento de novas aplicações. As portas mais comumente utilizadas tem números pré-definidos e são chamadas de portas-bem-conhecidas, como algumas mostradas na tabela abaixo:

H1 H2

PC (seq = x)

CC(seq=y ,ACK=x)

D(seq=x,ACK=y)

H1 H2

PC (seq = x)

CC(seq=y,ACK=x)

REJEITA(ACK=y)

H1 H2

PC (seq = x)

CC(seq=y,ACK=x)

REJEITA(ACK=y)

D(seq=x,ACK=y)

PC = pedido de conexão

D = dados

Seq = sequência

ACK = confirmação

CC = confirmação de conexão

PORTA PROTOCOLO USO

21 FTP Transferência de arquivos

23 TELNET Login remoto

25 SMTP Correio eletrônico

80 HTTP World Wide Web

110 POP-3 Acesso remoto a correio eletrônico

PORTA PROTOCOLO USO

21 FTP Transferência de arquivos

23 TELNET Login remoto

25 SMTP Correio eletrônico

80 HTTP World Wide Web

110 POP-3 Acesso remoto a correio eletrônico

Page 4: Rct   15 - camada de transporte

GESTÃO DE SISTEMAS DE REDE 4(6)

TGSI/FMR Prof. Moreira Anotações da aula 13 (03 e 06/05/2005)

A maneira como a camada de transporte transmite dados das várias aplicações simultâneas é por intermédio da multiplexação , onde várias mensagens são repassadas para a camada de rede (especificamente ao protocolo IP) que se encarregará de empacotá-las e mandar para uma ou mais interface de rede. Chegando ao destinatário o protocolo IP repassa os dados para a camada de transporte que faz a demultiplexação para as portas (aplicações) específicas. PROTOCOLOS TCP E UDP A camada de transporte utiliza dois protocolos: o TCP e o UDP. O primeiro é orientado à conexão e o segundo é não orientado à conexão. Ambos os protocolos podem servir a mais de uma aplicação simultaneamente. TCP (Transmission Control Protocol) – Protocolo de Controle de Transmissão – É o protocolo TCP que faz a comunicação fim-a-fim da rede. É orientado à conexão e altamente confiável independente da qualidade de serviços das sub-redes que lhe servem de caminho. Para a confiabilidade de transmissão, garante a entrega das informações na seqüência em que lhe foram fornecidas, sem perda nem duplicação. Significado dos campos do cabeçalho do segmento TCP O cabeçalho do segmento TCP tem um formato inicial fixo de 20 bytes, seguidos ou não por opções de cabeçalho. Após as opções pode haver até 65.535 - 20 - 20 = 65.495 bytes de dados, onde o primeiro valor 20 corresponde ao cabeçalho IP e o segundo, ao cabeçalho TCP. Pode haver segmentos sem quaisquer dados e que são usados para confirmações e mensagens de controle. � Porta de Origem e Porta de Destino -> Contém os números das portas TCP definidos para

programas aplicativos. Uma porta e o endereço IP de seu host formam um único ponto terminal de 48 bits, que vai identificar a conexão;

o Portas de 0 a 1023: reservadas para aplicações de domínio público (well known ports = portas bem conhecidas);

o Portas de 1024 a 49151: reservadas para aplicações comerciais registradas; o Portas de 49152 a 65535: portas dinâmicas ou privadas.

� Número de seqüência -> Corresponde à sequência do segmento anteriormente transmitido, somado ao nº de bytes transmitidos;

� Número de confirmação -> Corresponde à sequência do segmento que está sendo confirmado, somado ao nº de bytes recebidos;

� Offset de dado s-> Tamanho do cabeçalho do TCP (termina onde os dados começam); � Reservado-> Sem utilização; � URG (Urgent) -> Indica envio de dados urgentes; � ACK (Acknowledgement) ->Confirmação dos dados enviados anteriormente; � PSH (Push) ->Envia rapidamente os dados depois que lê o segmento;

Page 5: Rct   15 - camada de transporte

GESTÃO DE SISTEMAS DE REDE 5(6)

TGSI/FMR Prof. Moreira Anotações da aula 13 (03 e 06/05/2005)

� RST (Reset) ->Reset de conexão; � SYN (Synchronous) ->Inicia uma conexão; � FIN (Finnal) ->Finaliza uma conexão; � Janela ->Indica os buffers (memória) disponíveis no receptor, para controle de fluxo; � Soma de verificação -> Inclui o cabeçalho TCP, os dados e um pseudo-cabeçalho para

permitir a máxima confiabilidade; � Indicação de urgência -> indica, a partir do número de seqüência atual, a quantos bytes

se encontram os dados urgentes; � Opções ->Para recursos não previstos originalmente. UDP (User Datagram Protocol) – Protocolo de Datagra ma do Usuário - O UDP é um protocolo mais rápido do que o TCP, pelo fato de não verificar o reconhecimento das mensagens enviadas. Por este mesmo motivo, não é confiável como o TCP. O protocolo é não-orientado à conexão, e não provê muitas funções: não controla o fluxo, podendo os datagramas chegar fora de seqüência ou até mesmo não chegar ao destinatário. Contém identificação das portas de origem e destino, iguais às do TCP. Também contém os campos tamanho (UDP length) e soma de verificação (UDP checksum), sendo que os datagramas que não consistem estes campos, ao chegar no destino, são descartados, cabendo à camada de aplicação recuperá-los.

Page 6: Rct   15 - camada de transporte

GESTÃO DE SISTEMAS DE REDE 6(6)

TGSI/FMR Prof. Moreira Anotações da aula 13 (03 e 06/05/2005)

O UDP funciona como uma extensão do protocolo IP, já visto na camada de rede. Os pedidos de transmissão de mensagens vindos das camadas superiores são encaminhados ao IP que é o responsável pela transmissão dos datagramas. A principal função do protocolo UDP é multiplexar na origem e demultiplexar no destino os vários datagramas transmitidos.