Você está na página 1de 6

Instituto Federal do Rio Grande do Norte – IFRN

Curso de Sistemas para Internet

Disciplina: Aplicações em redes de computadores

Professor: Allan Garcia

Aluno: Pedro Henrique Lopes Galvão

Data: 21/12/12

Tanenbaum | Wetherall, Redes de Computadores. P. 310 a 338.

A camada de Transporte

Baseia-se na camada de rede para oferecer transporte de dados de um


processo em uma máquina origem a um processo em uma máquina de destino
com um nível de confiabilidade desejada independentemente das redes físicas
em uso no momento. Sem a camada de transporte, todo o conceito de
protocolos em camada faria pouco sentido.

6.1 O serviço de Transporte

6.1.1 Serviços oferecidos às camadas superiores

O principal objetivo da camada de transporte é oferecer um serviço


confiável, eficiente e econômico a seus usuários, que, em geral, são processos
presentes na camada de aplicação. Para atingir esse objetivo a camada de
transporte utiliza vários serviços da camada de rede. O hardware/software da
cama de transporte que executa o trabalho é chamado de entidade de
transporte, que está localizada no núcleo do sistema operacional, em um
pacote de biblioteca vinculado às aplicações em redes.

Existem dois tipos de serviços de transporte, o serviço de transporte


orientado a conexões, semelhante ao serviço de rede orientado a conexões,
em ambos os casos a conexão têm três fases: estabelecimento, a transferência
de dados e o encerramento. Contraparte existe o serviço de transporte não
orientado a conexões que é semelhante ao serviço de rede não orientado a
conexões, porem pode ser difícil oferecer um serviço de transporte não
orientado a conexões sobre um serviço de rede orientado a conexões, pois é
ineficaz estabelecer uma conexão para enviar um único pacote e encerra-lo
imediatamente depois.

O serviço de transporte mesmo sendo semelhante ao serviço da camada


de rede existe uma diferença, pós o código de transporte funciona inteiramente
nas máquinas dos usuários, mas a camada de rede funciona principalmente
nos roteadores, cuja operação é de responsabilidade da concessionária de
comunicações (pelo menos no caso de uma rede geograficamente distribuída).

Se em uma rede não orientada a conexões, pacotes forem perdidos ou


danificados, a entidade de transporte pode detectar o problema e compensá-lo
usando retransmissões. Se, em uma rede orientada a conexões, uma entidade
de transporte for informada no meio de uma longa transmissão de que sua
conexão de rede foi encerrada de forma abrupta, sem nenhuma indicação do
que ocorreu com os dados que estavam sendo transferida, ela poderá enviar
uma consulta à entidade remota para saber quais dados chegaram e quais não
chegaram, e depois retomar a transmissão a partir da interrupção.

Em síntese, a existência de uma camada de transporte torna o serviço


de transporte, mas confiável que o serviço de rede subjacente. Além disso, as
primitivas de serviços de transporte podem ser implementadas sob a forma de
chamadas a procedimento de biblioteca, a fim de tornálas independentes das
primitivas de serviço de rede.

6.1.2 Primitivas do serviço de transporte

As primitivas de serviço de transporte permitem que os usuários de


transporte tenham acesso ao serviço de transporte. Cada serviço de transporte
tem suas próprias primitivas de acesso.O serviço de transporte é semelhante
ao serviço de rede, mas existem diferenças importantes entre eles. A principal
delas é que o serviço de rede representa o modelo oferecido pelas redes
reais,com todos os atributos. Como as redes reais podem perder pacotes, o
serviço de rede, em geral, nãoé confiável.O serviço de transporte (orientado à
conexão), ao contrário, é confiável. É função da camada de transporte oferecer
um serviço confiável acima de uma rede não confiável. A tabela abaixo
mostra cinco primitivas de transporte. Essa interface de transporte é
uma estrutura básica, mas mostra o que uma interface de transporte orientada
à conexão deve fazer.

Primitiva TPDU enviada Significado


Listen Bloqueia até algum
processo tentar
conectar
Connect Connection Req. Tenta ativamente
estabelecer uma
conexão
Send Data Envia informação
Receive Bloqueia até que o
pacote de dados
chegue
Disconnect Disconnection Req. Solicita uma liberação
da conexão
As TPDUs(Transport Protocol Data Unit – Unidade de Dados do Protocolo de
Transporte) são informações trocadas pela camada de transporte e são
enviadas dentro de pacotes (intercambiados pela camada de rede).
Os pacotes, por sua vez, ficam contidos em quadros (intercambiados pela
camada de enlace de dados).Quando um quadro chega, a camada de
enlace de dados processa seu cabeçalho e transmite o conteúdo do
campo de carga útil do quadro para a entidade de rede. Em seguida, a
entidade de rede processa o cabeçalho do pacote e envia o conteúdo da carga
útil do pacote à entidade de transporte.
Cabe observar que, na camada de transporte, até mesmo uma troca de
dados simples é unidirecional e nas complexa do que na camada de rede.
Cada pacote de dados enviado também será confirmado (ao final). Os pacotes
que transportam segmentos de controle também são confirmados, de forma
explícita. Essas confirmações são gerenciadas por entidades de transporte que
utilizam o protocolo da camada de rede e não são visíveis para os usuários de
transporte. Da mesma forma, as entidades de transporte têm de lidar com os
timers e retransmissões.
6.2 Elementos dos protocolos de transporte

O serviço de transporte é implementado por um protocolo de


transporte que é usado entre duas entidades de transporte. Os
protocolos de transporte, em alguns aspectos lembram os protocolos
de enlace de dados. Ambos têm de lidar com o controle de erros, com
a definição de sequências e com o controle de fluxo, entre outra
coisa.
Mas existem diferenças significativas entre eles. Na cam
ada de enlace de dados, dois roteadores se comunicam
diretamente através de uma camada física, enquanto que na
camada de transporte, esse canal físico é substituído pela
sub-rede.
Na camada de enlace de dados o roteador n ã o p r e c i s a e s p e c i f i c a r
com que outro roteador deseja se comunicar enquanto na
c a m a d a d e transporte, é necessário explicitar os endereços de destino. O
processo de estabelecimento de uma conexão através de um cabo é simples,
enquanto na camada de transporte o estabelecimento inicial da conexão é
mais complicado. Outra diferença é a possível existência de capacidade
de armazenamento na sub-rede. Se a sub-rede utilizar data gramas e
um roteamento adaptativo, haverá uma probabilidade significativa deque um
pacote possa ficar armazenado por alguns segundos e ser entregue depois. As
consequências podem ser desastrosas e exigir o uso de protocolos especiais.

6.2.1 Endereçamento
Quando uma aplicação deseja se comunicar com uma apl
i c a ç ã o r e m o t a , é n e c e s s á r i o especificar a aplicação com qual ele
irá se conectar. O método normalmente usado é definir os endereços
de transporte que os processos podem ouvir para receber solicitações,
chamados TSAPs(Transporte Service Access Point).
6.2.2 Estabelecimento de conexões

Estabelecer uma conexão é um procedimento complicado


não basta uma entidade de transporte enviar uma TPDU
CONNECTION REQUEST ao destino e aguardar uma resposta
CONNECTION ACCEPTED. O problema é que a rede pode perder armazenar
e duplicar pacotes, provocando duplicações atrasadas.
Tal problema pode ser combatido de várias maneiras. Uma forma é
atribuir a cada conexão um identificador (um número de sequência
incrementado a cada conexão estabelecida) escolhido pelo lado que inicia a
conexão e colocado em cada TPDU, inclusive na que solicitou a conexão.
Outra forma é não permitir que os pacotes permaneçam na sub-rede
eternamente, criando um mecanismo para destruir os pacotes velhos que ainda
apareçam nela. O tempo de vida de um pacote pode ser restringido através de
uma das seguintes técnicas: 1 Usando-se um contador de hops em cada
pacote.2.Usando-se um time stamp em cada pacote.O primeiro método
consiste em ter um contador de hops, incrementado a cada vez que
o pacote passa por um nó intermediário da rede. Em seguida, o protocolo desc
arta qualquer pacotecujo contador de hops exceda um determinado valor.
O segundo método exige que cada pacote seja associado ao horário em que
foi criado, com a concordância dos roteadores em descartar qualquer pacote
anterior a um determinado horário. Esse último método exige que os relógios
dos roteadores estejam sincronizados, o que não é uma tarefa fácil. Um bom
mecanismo para estabelecimento de conexões é conhecido por
three way handshake,e será estudado adiante, juntamente com o protocolo
TCP.

6.2.3 Encerramento de conexões

Encerrar uma conexão é mais fácil do que estabelecê-la.


N o e n t a n t o , p r o b l e m a s p o d e m ocorrer. O encerramento assimétrico
é abrupto e pode resultar na perda de dados. Se durante uma conexão
o host 1 envia uma TPDU, e o host 2 envia uma primitiva DISCONNECT antes
da TPDU chegar, a conexão será encerrada antes que os dados enviados pelo
host 1 cheguem, provocando a perda de dados.Uma estratégia melhor é adotar
o encerramento simétrico, no qual cada direção da conexão é liberada
de forma independente. Nesse caso, um host pode continuar a
transmitir dados mesmo depois de ter recebido uma TPDU
DISCONNECT.

6.2.4 Controle de erro e controle de fluxo

Controle de erro é garantir que os dados sejam entregues com um nível


de confiabilidade desejado, normalmente que todos os dados sejam entregues
sem nenhum erro. Controle de fluxo e impedir que um transmissor rápido
sobrecarregue um receptor lento.
Dado que os protocolos de transporte geralmente usam janelas
deslizante maiores, assim a questão de buffering de dados é muito importante.
Como um host pode ter muitas conexões, cada uma trata separadamente, ele
pode precisar de uma quantidade substancial de buffering para as janelas
deslizantes. Os buffers são necessários no transmissor e no receptor. São
necessários no transmissor para manter todos os segmentos transmitido mas
ainda não confirmados, são necessários lá porque esses segmentos podem ser
perdidos e precisam ser retransmitidos.

6.2.5 Multiplexação

A multiplexação, ou compartilhamento de várias conversações em


conexões, circuitos virtuais e enlaces físicos, tem um papel importante em
diversas camadas da arquitetura de rede, na camada de transporte, a
necessidade da multiplexação pode surgi em diversas formas. Por exemplo, se
houver apenas um endereço de rede disponível em um host, todas as
conexões de transporte nessa máquina terão de utilizá-los.

6.2.6 Recuperação de falhas

Se o host e roteadores estiverem sujeitos a interrupções em seu


funcionamento ou se as conexões tiverem longa vida (por exemplo, download
grande de software ou multimídia), a recuperação dessas panes se tornará uma
questão importante. Se a entidade de transporte estiver inteiramente contida
nos hosts, a recuperação de falhas na rede ou no roteador será simples. As
entidades de transporte esperam segmentos perdidos o tempo todo e sabem
como lidar com eles usando retransmissões.

Esse problema nos leva à questão do que significa de fato a chamada


confirmação fim a fim, pois não é encadeado como as camadas inferiores.

6.3 Controle de congestionamento

Se as entidades de transporte em muitas máquinas enviarem muitos


pacotes para a rede com muita rapidez, a rede ficará congestionada, com o
desempenho degradado enquanto os pacotes são atrasados e perdidos.
Controlar o congestionamento para evitar esse problema é responsabilidade
conjunta das camadas de rede e transporte.

6.3.1 Alocação desejável de largura de banda

Uma boa alocação de banda oferecerá um bom desempenho, pois usa


toda a largura de banda disponível mas evita congestionamento, será justa
entre entidades de transporte concorrentes e rastreará rapidamente as
mudanças nas demandas de tráfego.

Eficiência e Potência
Uma alocação eficiente de largura de banda por entidades de transporte
usará toda a capacidade da rede que se encontra disponível. Porem, não é
muito certo pensar que, se existe um enlace de 100mbps, cinco entidades de
transporte deverão receber 20mbps cada uma. Elas normalmente deverão
receber menos de 20mbps para que aja um bom desempenho, o motivo é que
o tráfego normalmente é feito por rajada.
Imparcialidade Max-Min

Convergência
É a unificação entre duas ou mais redes de comunicação distintas numa
única rede capaz de prover os serviços antes prestados pelas diversas redes.
Um dos primeiros exemplos é a convergência entre redes de voz e dados,
inicialmente através de tecnologia RDSI e, mais recentemente, pela
tecnologia xDSL. Outro exemplo de convergência a ser considerado seria
entre voz e fax, ainda anterior, que começou a ser empregue em escala
comercial na década de 1970. Todavia, é questionável se se trata de
verdadeira convergência, já que o fax, como o conhecemos hoje, sempre se
utilizou da rede de telefonia, ao contrário das redes de dados que tiveram uma
origem independente.
Ultimamente, aos serviços de voz e dados tem incluído serviços
de vídeo e/ou multimédia. Muitos desses serviços não existiam antes de se
começar a falar em convergência de redes, por isso pode-se dizer que já
"nasceram convergentes", como IPTV (que, a despeito do nome, é diferente de
simplesmente enviar a transmissão da televisão analógica tradicional por
protocolo IP). A oferta combinada de serviços de voz, Internet banda larga e
televisão recebe o nome de Triple play, embora esse termo tenha origem no
marketing e seja um modelo de negócios para comercialização dos produtos e
não uma solução ou padronização tecnológica.

6.3.2 Regulando a velocidade de envio

Você também pode gostar