SlideShare uma empresa Scribd logo
1 de 5
Baixar para ler offline
As notas de aulas são referências para estudo. Portanto não devem ser adotadas como material didático absoluto!
Versão 0.1 – 30/08/2008
Romildo Martins Bezerra
CEFET/BA
Redes de Computadores II
Funções da Camada de Transporte............................................................... 2
Controle de conexão............................................................................. 2
Fragmentação..................................................................................... 2
Endereçamento ................................................................................... 2
Confiabilidade .................................................................................... 2
TCP (Transmission Control Protocol)............................................................. 2
Confiabilidade do TCP.............................................................................. 3
UDP – User Datagram Protocol .................................................................... 4
Pesquise .............................................................................................. 5
Temas para trabalhos .............................................................................. 5
Bibliografia........................................................................................... 5
A Camada de Transporte
Romildo Martins Bezerra
2
Funções da Camada de Transporte
Os serviços oferecidos pelo protocolo IP não oferecem confiabilidade. Problemas comuns como
congestionamento, perda ou ordenação de pacotes não são tratados. Entretanto as aplicações (HTTP, FTP
e SMTP, por exemplo) necessitam prover um serviço de qualidade para o usuário. A camada de transporte
pode oferecer um serviço confiável de entrega de dados das aplicações utilizando um serviço não
confiável prestado pela camada de rede.
Os principais serviços oferecidos pela camada de transporte são:
Controle de conexão
A camada de transporte possui protocolos que oferecem serviços orientados a conexão e não
orientados a conexão. Os serviços não orientados a conexão tem conceito semelhante ao funcionamento
do protocolo IP. Já o serviço orientado a conexão, primeiramente estabelece uma comunicação entre
usuários finais e só depois começa a transmissão.
Fragmentação
Esta função é similar a camada de rede, mas a fragmentação é feita apenas no transmissor e
receptor, pois os dispositivos de rede em geral não entendem a camada de transporte. Esta fragmentação
não está relacionada com a feita pela camada de rede.
Para exemplificar, imagine um email (SMTP) enviado apenas com um texto simples como:
“Prezada Fulana, vamos sair hoje? Beijos, Fulano”. Agora pense num e-mail com todas as fotos de um
passeio ou com três arquivos de MP3. Nota-se que uma mensagem SMTP pode conter de alguns bytes até
dezenas de megabytes. Logo é necessário fragmentar tais informações em pacotes de tamanhos menores
para serem encapsulados pela camada de rede.
Endereçamento
Conhecemos o endereçamento IP e sabemos que a identificação de um host na Internet é única.
Mas imagine duas situações:
• Um servidor web (HTTP) também é servidor de transferência de arquivos (FTP);
• Você abre duas janelas do Firefox acessando dois links diferentes de um mesmo site.
Como identificar dois serviços num mesmo host? Como identificar duas sessões diferentes entre
uma estação e um servidor web?
Para resolver estas perguntas a camada de transporte oferece à camada de aplicação a função de
endereçamento, onde os serviços são identificados pela sua porta (HTTP–80, FTP–20/21, SMTP–25, DNS–
53...) e uma conexão entre sua estação e outro host é feita através de um socket1
(IP+porta).
Confiabilidade
Para garantir a confiabilidade, a camada de transporte oferece:
• Controle de fluxo;
• Controle de erros;
• Controle de congestionamento e Qualidade de Serviço
Estudaremos durante o curso estes pontos, alguns deles ainda neste documento.
TCP (Transmission Control Protocol)
O TCP é o protocolo da camada de transporte da arquitetura Internet responsável em oferecer
confiabilidade na transmissão. Alguns autores consideram-no como a chave do sucesso da Internet [1]. O
TCP fornece um serviço orientado a conexão, confiável e full-duplex para os serviços de aplicação. Para
isso:
1
É uma abstração que mapeia diretamente a uma porta de transporte (TCP ou UDP) e mais um endereço de rede. Com esse conceito
é possível identificar unicamente um aplicativo ou servidor na rede de comunicação IP.
Romildo Martins Bezerra
3
• O TCP é orientado a conexão – Para ter o controle dos
pacotes enviados e conseguir efetuar a fragmentação,
o TCP precisa que os usuários finais tenham o
controle do que está sendo enviado. O protocolo TCP
especifica três fases durante uma conexão:
estabelecimento da ligação, transferência e término
de ligação. Para estabelecimento da conexão o TCP
necessita que: “O cliente inicia a ligação enviando um
pacote TCP com a flag SYN activa e espera-se que o
servidor aceite a ligação enviando um pacote
SYN+ACK. Se, durante um determinado espaço de
tempo, esse pacote não for recebido ocorre um
timeout e o pacote SYN é reenviado. O
estabelecimento da ligação é concluído por parte do
cliente, confirmando a aceitação do servidor
respondendo-lhe com um pacote ACK” - Wikipedia.
• Efetua desconexão “suave” (Graceful Connection
Shutdown) – O TCP só encerra a conexão depois de
entregar os dados ao receptor. A desconexão é feita
conforme visto na figura 02.
• O TCP é Full-duplex - É possível a transferência
simultânea nas duas direções durante a sessão.
• Utiliza o conceito de stream – O TCP envia uma
sequencia limitada e contínua de bytes sem noão dos
registros ou quantidade de pacotes que serão
recebidos.
• Enxerga a rede como uma conexão ponto-a-ponto – O protocolo TCP fornece uma conexão diretamente
entre aplicativos dos hosts. Tal conexão é denominada conexão virtual ponto-a-ponto, pois entre o
transmissor e o receptor, os dispositivos de rede (roteadores) não enxergam a camada de transporte
(Figura 03). O TCP permite a camada de aplicação enxergar a rede como uma conexão virtual.
Figura 03. Ilustração da conexão TCP
Confiabilidade do TCP
São destacados nesta sessão alguns mecanismos que garantem a confiabilidade do protocolo IP,
vamos estudar estes pontos através de exemplos. È sugerido fortemente a leitura dos capítulos
relacionados à camada de transporte dos livros da bibliografia.
• Perda de Pacote e Retransmissão – Quando o TCP envia os dados, ele inicializa um mecanismo
de timeout (temporizador) para receber a confirmação de recebimento. Caso a confirmação
Roteador 2
Host B
Roteador 1
Host A
Aplicação
Transporte
Rede
Enlace
Física
Aplicação
Transporte
Rede
Enlace
Física
Rede
Enlace
Física
Rede
Enlace
Física
Figura 01. Estabelecimento de conexão TCP
(Three-Way Handshake)
Figura 02. Encerramento de conexão TCP
Romildo Martins Bezerra
4
não seja recebida ele retransmite o pacote. A retransmissão é a base do sucesso do TCP.
Reflita sobre a retransmissão no atraso de entrega.
• Retransmissão adaptativa e Controle de Tempo – O TCP monitora o atraso do envio dos pacotes
e adapta seu temporizador. Mas como ele pode fazer isso se os relógios não são sincronizados?
Será que esta técnica é eficiente?
• Controle de Fluxo (buffers e janelas de transmissão) – Um problema no mundo das redes é
garantir o controle de fluxo entre usuários finais. A imprevisibilidade do tráfego é o maior
problema. Imagine o resultado do vestibular do CEFET publicado na internet. Diversos usuários
irão fazer requisições em pouco tempo podendo ser mais rápido do que a entrega do servidor
web. Assim diversas requisições serão novamente realizadas, gerando ainda mais tráfego e
pacotes duplicados. Daí o TCP utiliza o conceito de buffers (armazenamento de pedidos e
respostas) e janelas deslizantes:
Janela deslizante é uma característica de alguns protocolos que permite que o
remetente transmita mais que um pacote de dados antes de receber uma
confirmação. Depois de recebê-lo para o primeiro pacote enviado, o remetente
desliza a janela do pacote e manda outra confirmação. O número de pacotes
transmitidos sem confirmação é conhecido como o tamanho da janela;
aumentando o tamanho da janela melhora-se a vazão.
• Controle de Congestionamento - Fica como pesquisa de leitura.
UDP – User Datagram Protocol
O UDp é um protocolo da camada de transporte não confiável e não orientado a conexão. Fornece
apenas os serviços de endereçamento e fragmentação, não provendo confiabilidade (controle de fluxo,
erro, congestionamento). Isso indica que o UDP não adiciona serviços ao protocolo IP. O que nos leva
então a utilizar o UDP?
O UDP por ser mais simples possui um cabeçalho menor gerando um menor overhead. Ideal para
algumas aplicações onde a velocidade é mais útil que a confiabilidade como aplicações multimídia. Afinal
não faz sentido algum receber um trecho de um arquivo música que já passou.
Além de aplicações multimídia, o UDP é utilizado também pelo TFTP (Trivial File Transfer
Protocol), RIP (Routing Information Protocol), SNMP (Simple Network Management Protocol) e DNS
(Domain Name System).
Figura 04. Mostra a retransmissão (701-800), buffer, janela deslizante e recebimento fora de ordem.
Romildo Martins Bezerra
5
Pesquise
1. As portas reservadas para os serviços web e que protocolos de transporte utilizam.
2. Para que serve o round-trip delay?
3. Relacione janelas-deslizantes e algoritmo do início lento.
4. Síndrome da “Janela Boba”.
5. Verifique o funcionamento do controle de congestionamento.
6. Compare os cabeçalhos do TCP e UDP.
7. Porque o TFTP não precisa de confiabilidade?
8. Pesquise se existem outros protocolos de transporte na arquitetura TCP/IP.
Temas para trabalhos
1. Programação de Servidor Web [2]
2. Programação de Algoritmo de janelas deslizantes.
Bibliografia
[1] FOROUZAN, B.A. Comunicação de Dados e Redes de Computadores. 3ª Edição. Bookman. 2006
[2] KUROSE, J. Redes de Computadores e a Internet. 3ª Edição. Addison-Wesley, 2006.
[3] COMER, D. E. Redes de Computadores e a Internet. 4ª Edição. Bookman. 2007.

Mais conteúdo relacionado

Mais procurados

Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...
Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...
Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...Felipe Alex
 
Protocolos TCP IP UDP
Protocolos TCP IP UDPProtocolos TCP IP UDP
Protocolos TCP IP UDPAndré Nobre
 
Metodos de transmissao_contencao
Metodos de transmissao_contencaoMetodos de transmissao_contencao
Metodos de transmissao_contencaoAndressa Silveira
 
Análise de Tráfego TCP/IP
Análise de Tráfego TCP/IPAnálise de Tráfego TCP/IP
Análise de Tráfego TCP/IPThiago Finardi
 
RC - SL03 - Camada de Transporte
RC - SL03 - Camada de TransporteRC - SL03 - Camada de Transporte
RC - SL03 - Camada de TransporteUFPB
 
RC - SL05 - Camada de Enlace e Redes Locais
RC - SL05 - Camada de Enlace e Redes LocaisRC - SL05 - Camada de Enlace e Redes Locais
RC - SL05 - Camada de Enlace e Redes LocaisUFPB
 
Camada de transporte capitulo 3
Camada de transporte   capitulo 3Camada de transporte   capitulo 3
Camada de transporte capitulo 3fernandao777
 
Redes de computadores II - 6.Noções de Controle de Congestionamento e QoS
Redes de computadores II - 6.Noções de Controle de Congestionamento e QoSRedes de computadores II - 6.Noções de Controle de Congestionamento e QoS
Redes de computadores II - 6.Noções de Controle de Congestionamento e QoSMauro Tapajós
 
Redes - Camada de Transporte
Redes - Camada de TransporteRedes - Camada de Transporte
Redes - Camada de TransporteLuiz Arthur
 
Redes I - 4. Camada de Enlace de Dados MAC
Redes I - 4. Camada de Enlace de Dados MACRedes I - 4. Camada de Enlace de Dados MAC
Redes I - 4. Camada de Enlace de Dados MACMauro Tapajós
 
Camada de Transporte Redes Tanenbaum
Camada de Transporte Redes TanenbaumCamada de Transporte Redes Tanenbaum
Camada de Transporte Redes TanenbaumWellington Oliveira
 
FAST TCP e Checksum no IPV6
FAST TCP e Checksum no IPV6FAST TCP e Checksum no IPV6
FAST TCP e Checksum no IPV6Matheus Girardi
 
Quality of Service and Linux
Quality of Service and LinuxQuality of Service and Linux
Quality of Service and Linuxhome
 

Mais procurados (20)

Congestionamento
CongestionamentoCongestionamento
Congestionamento
 
Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...
Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...
Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...
 
Protocolos TCP IP UDP
Protocolos TCP IP UDPProtocolos TCP IP UDP
Protocolos TCP IP UDP
 
Metodos de transmissao_contencao
Metodos de transmissao_contencaoMetodos de transmissao_contencao
Metodos de transmissao_contencao
 
Análise de Tráfego TCP/IP
Análise de Tráfego TCP/IPAnálise de Tráfego TCP/IP
Análise de Tráfego TCP/IP
 
Capítulo 2 modelos de redes
Capítulo 2   modelos de redesCapítulo 2   modelos de redes
Capítulo 2 modelos de redes
 
Redes de Comunicacao-Camada de transporte
Redes de Comunicacao-Camada de transporte Redes de Comunicacao-Camada de transporte
Redes de Comunicacao-Camada de transporte
 
Aula 1
Aula 1Aula 1
Aula 1
 
RC - SL03 - Camada de Transporte
RC - SL03 - Camada de TransporteRC - SL03 - Camada de Transporte
RC - SL03 - Camada de Transporte
 
RC - SL05 - Camada de Enlace e Redes Locais
RC - SL05 - Camada de Enlace e Redes LocaisRC - SL05 - Camada de Enlace e Redes Locais
RC - SL05 - Camada de Enlace e Redes Locais
 
Camada de transporte capitulo 3
Camada de transporte   capitulo 3Camada de transporte   capitulo 3
Camada de transporte capitulo 3
 
Redes de computadores II - 6.Noções de Controle de Congestionamento e QoS
Redes de computadores II - 6.Noções de Controle de Congestionamento e QoSRedes de computadores II - 6.Noções de Controle de Congestionamento e QoS
Redes de computadores II - 6.Noções de Controle de Congestionamento e QoS
 
Aula10
Aula10Aula10
Aula10
 
Exercicio rossana
Exercicio rossanaExercicio rossana
Exercicio rossana
 
Redes - Camada de Transporte
Redes - Camada de TransporteRedes - Camada de Transporte
Redes - Camada de Transporte
 
Redes I - 4. Camada de Enlace de Dados MAC
Redes I - 4. Camada de Enlace de Dados MACRedes I - 4. Camada de Enlace de Dados MAC
Redes I - 4. Camada de Enlace de Dados MAC
 
Camada de enlace parte1
Camada de enlace   parte1Camada de enlace   parte1
Camada de enlace parte1
 
Camada de Transporte Redes Tanenbaum
Camada de Transporte Redes TanenbaumCamada de Transporte Redes Tanenbaum
Camada de Transporte Redes Tanenbaum
 
FAST TCP e Checksum no IPV6
FAST TCP e Checksum no IPV6FAST TCP e Checksum no IPV6
FAST TCP e Checksum no IPV6
 
Quality of Service and Linux
Quality of Service and LinuxQuality of Service and Linux
Quality of Service and Linux
 

Semelhante a Funções da Camada de Transporte

Redes de Computadores Capítulo 6 - Camada de Transporte
Redes de Computadores Capítulo 6 - Camada de TransporteRedes de Computadores Capítulo 6 - Camada de Transporte
Redes de Computadores Capítulo 6 - Camada de TransporteWellington Oliveira
 
02 - Aplicação-Transporte.pdf
02 - Aplicação-Transporte.pdf02 - Aplicação-Transporte.pdf
02 - Aplicação-Transporte.pdfedsonjcg
 
Camada de Transporte - TADS/REC 2014/2
Camada de Transporte - TADS/REC 2014/2Camada de Transporte - TADS/REC 2014/2
Camada de Transporte - TADS/REC 2014/2Caio Miranda
 
Protocolos De Transporte Para Redes Sem Fio
Protocolos De Transporte Para Redes Sem FioProtocolos De Transporte Para Redes Sem Fio
Protocolos De Transporte Para Redes Sem FioJaguaraci Silva
 
Lista 03 respostas
Lista 03 respostasLista 03 respostas
Lista 03 respostasForça Tauá
 
Protocolos De Transporte Para Redes Sem Fio
Protocolos De Transporte Para Redes Sem FioProtocolos De Transporte Para Redes Sem Fio
Protocolos De Transporte Para Redes Sem FioJaguaraci Silva
 
Modelo ozil camada de transporte
Modelo ozil camada de transporteModelo ozil camada de transporte
Modelo ozil camada de transporte2lindos
 
Modelo ozil camada de transporte
Modelo ozil camada de transporteModelo ozil camada de transporte
Modelo ozil camada de transporte2lindos
 
Fundamentos a rede de compuradores
Fundamentos a rede de compuradoresFundamentos a rede de compuradores
Fundamentos a rede de compuradoresJairo Sousa
 
slides Keven protocol.pptx
slides Keven protocol.pptxslides Keven protocol.pptx
slides Keven protocol.pptxKevenUlisses
 
TradeTech Brazil 2011 - O Desafio Da Latencia
TradeTech Brazil 2011 - O Desafio Da LatenciaTradeTech Brazil 2011 - O Desafio Da Latencia
TradeTech Brazil 2011 - O Desafio Da LatenciaJose Ricardo Maia Moraes
 
Ac m4 -_tarefa_video_-_petro
Ac m4 -_tarefa_video_-_petroAc m4 -_tarefa_video_-_petro
Ac m4 -_tarefa_video_-_petrokamatozza
 
Segurança na Interoperabilidade de Redes TCP IP
Segurança na  Interoperabilidade de Redes TCP IPSegurança na  Interoperabilidade de Redes TCP IP
Segurança na Interoperabilidade de Redes TCP IPBruno Milani
 

Semelhante a Funções da Camada de Transporte (20)

Redes de Computadores Capítulo 6 - Camada de Transporte
Redes de Computadores Capítulo 6 - Camada de TransporteRedes de Computadores Capítulo 6 - Camada de Transporte
Redes de Computadores Capítulo 6 - Camada de Transporte
 
02 - Aplicação-Transporte.pdf
02 - Aplicação-Transporte.pdf02 - Aplicação-Transporte.pdf
02 - Aplicação-Transporte.pdf
 
Protocolos
ProtocolosProtocolos
Protocolos
 
Intro_redes.pdf
Intro_redes.pdfIntro_redes.pdf
Intro_redes.pdf
 
Camada de Transporte - TADS/REC 2014/2
Camada de Transporte - TADS/REC 2014/2Camada de Transporte - TADS/REC 2014/2
Camada de Transporte - TADS/REC 2014/2
 
Protocolos De Transporte Para Redes Sem Fio
Protocolos De Transporte Para Redes Sem FioProtocolos De Transporte Para Redes Sem Fio
Protocolos De Transporte Para Redes Sem Fio
 
Lista 03 respostas
Lista 03 respostasLista 03 respostas
Lista 03 respostas
 
Protocolos De Transporte Para Redes Sem Fio
Protocolos De Transporte Para Redes Sem FioProtocolos De Transporte Para Redes Sem Fio
Protocolos De Transporte Para Redes Sem Fio
 
Modelo ozil camada de transporte
Modelo ozil camada de transporteModelo ozil camada de transporte
Modelo ozil camada de transporte
 
Modelo ozil camada de transporte
Modelo ozil camada de transporteModelo ozil camada de transporte
Modelo ozil camada de transporte
 
Fundamentos a rede de compuradores
Fundamentos a rede de compuradoresFundamentos a rede de compuradores
Fundamentos a rede de compuradores
 
Frame Relay
Frame RelayFrame Relay
Frame Relay
 
Rede
Rede Rede
Rede
 
Redes tcp udp
Redes tcp udpRedes tcp udp
Redes tcp udp
 
Exercícios
ExercíciosExercícios
Exercícios
 
slides Keven protocol.pptx
slides Keven protocol.pptxslides Keven protocol.pptx
slides Keven protocol.pptx
 
TradeTech Brazil 2011 - O Desafio Da Latencia
TradeTech Brazil 2011 - O Desafio Da LatenciaTradeTech Brazil 2011 - O Desafio Da Latencia
TradeTech Brazil 2011 - O Desafio Da Latencia
 
Ac m4 -_tarefa_video_-_petro
Ac m4 -_tarefa_video_-_petroAc m4 -_tarefa_video_-_petro
Ac m4 -_tarefa_video_-_petro
 
Protocolo UDP
Protocolo UDPProtocolo UDP
Protocolo UDP
 
Segurança na Interoperabilidade de Redes TCP IP
Segurança na  Interoperabilidade de Redes TCP IPSegurança na  Interoperabilidade de Redes TCP IP
Segurança na Interoperabilidade de Redes TCP IP
 

Funções da Camada de Transporte

  • 1. As notas de aulas são referências para estudo. Portanto não devem ser adotadas como material didático absoluto! Versão 0.1 – 30/08/2008 Romildo Martins Bezerra CEFET/BA Redes de Computadores II Funções da Camada de Transporte............................................................... 2 Controle de conexão............................................................................. 2 Fragmentação..................................................................................... 2 Endereçamento ................................................................................... 2 Confiabilidade .................................................................................... 2 TCP (Transmission Control Protocol)............................................................. 2 Confiabilidade do TCP.............................................................................. 3 UDP – User Datagram Protocol .................................................................... 4 Pesquise .............................................................................................. 5 Temas para trabalhos .............................................................................. 5 Bibliografia........................................................................................... 5 A Camada de Transporte
  • 2. Romildo Martins Bezerra 2 Funções da Camada de Transporte Os serviços oferecidos pelo protocolo IP não oferecem confiabilidade. Problemas comuns como congestionamento, perda ou ordenação de pacotes não são tratados. Entretanto as aplicações (HTTP, FTP e SMTP, por exemplo) necessitam prover um serviço de qualidade para o usuário. A camada de transporte pode oferecer um serviço confiável de entrega de dados das aplicações utilizando um serviço não confiável prestado pela camada de rede. Os principais serviços oferecidos pela camada de transporte são: Controle de conexão A camada de transporte possui protocolos que oferecem serviços orientados a conexão e não orientados a conexão. Os serviços não orientados a conexão tem conceito semelhante ao funcionamento do protocolo IP. Já o serviço orientado a conexão, primeiramente estabelece uma comunicação entre usuários finais e só depois começa a transmissão. Fragmentação Esta função é similar a camada de rede, mas a fragmentação é feita apenas no transmissor e receptor, pois os dispositivos de rede em geral não entendem a camada de transporte. Esta fragmentação não está relacionada com a feita pela camada de rede. Para exemplificar, imagine um email (SMTP) enviado apenas com um texto simples como: “Prezada Fulana, vamos sair hoje? Beijos, Fulano”. Agora pense num e-mail com todas as fotos de um passeio ou com três arquivos de MP3. Nota-se que uma mensagem SMTP pode conter de alguns bytes até dezenas de megabytes. Logo é necessário fragmentar tais informações em pacotes de tamanhos menores para serem encapsulados pela camada de rede. Endereçamento Conhecemos o endereçamento IP e sabemos que a identificação de um host na Internet é única. Mas imagine duas situações: • Um servidor web (HTTP) também é servidor de transferência de arquivos (FTP); • Você abre duas janelas do Firefox acessando dois links diferentes de um mesmo site. Como identificar dois serviços num mesmo host? Como identificar duas sessões diferentes entre uma estação e um servidor web? Para resolver estas perguntas a camada de transporte oferece à camada de aplicação a função de endereçamento, onde os serviços são identificados pela sua porta (HTTP–80, FTP–20/21, SMTP–25, DNS– 53...) e uma conexão entre sua estação e outro host é feita através de um socket1 (IP+porta). Confiabilidade Para garantir a confiabilidade, a camada de transporte oferece: • Controle de fluxo; • Controle de erros; • Controle de congestionamento e Qualidade de Serviço Estudaremos durante o curso estes pontos, alguns deles ainda neste documento. TCP (Transmission Control Protocol) O TCP é o protocolo da camada de transporte da arquitetura Internet responsável em oferecer confiabilidade na transmissão. Alguns autores consideram-no como a chave do sucesso da Internet [1]. O TCP fornece um serviço orientado a conexão, confiável e full-duplex para os serviços de aplicação. Para isso: 1 É uma abstração que mapeia diretamente a uma porta de transporte (TCP ou UDP) e mais um endereço de rede. Com esse conceito é possível identificar unicamente um aplicativo ou servidor na rede de comunicação IP.
  • 3. Romildo Martins Bezerra 3 • O TCP é orientado a conexão – Para ter o controle dos pacotes enviados e conseguir efetuar a fragmentação, o TCP precisa que os usuários finais tenham o controle do que está sendo enviado. O protocolo TCP especifica três fases durante uma conexão: estabelecimento da ligação, transferência e término de ligação. Para estabelecimento da conexão o TCP necessita que: “O cliente inicia a ligação enviando um pacote TCP com a flag SYN activa e espera-se que o servidor aceite a ligação enviando um pacote SYN+ACK. Se, durante um determinado espaço de tempo, esse pacote não for recebido ocorre um timeout e o pacote SYN é reenviado. O estabelecimento da ligação é concluído por parte do cliente, confirmando a aceitação do servidor respondendo-lhe com um pacote ACK” - Wikipedia. • Efetua desconexão “suave” (Graceful Connection Shutdown) – O TCP só encerra a conexão depois de entregar os dados ao receptor. A desconexão é feita conforme visto na figura 02. • O TCP é Full-duplex - É possível a transferência simultânea nas duas direções durante a sessão. • Utiliza o conceito de stream – O TCP envia uma sequencia limitada e contínua de bytes sem noão dos registros ou quantidade de pacotes que serão recebidos. • Enxerga a rede como uma conexão ponto-a-ponto – O protocolo TCP fornece uma conexão diretamente entre aplicativos dos hosts. Tal conexão é denominada conexão virtual ponto-a-ponto, pois entre o transmissor e o receptor, os dispositivos de rede (roteadores) não enxergam a camada de transporte (Figura 03). O TCP permite a camada de aplicação enxergar a rede como uma conexão virtual. Figura 03. Ilustração da conexão TCP Confiabilidade do TCP São destacados nesta sessão alguns mecanismos que garantem a confiabilidade do protocolo IP, vamos estudar estes pontos através de exemplos. È sugerido fortemente a leitura dos capítulos relacionados à camada de transporte dos livros da bibliografia. • Perda de Pacote e Retransmissão – Quando o TCP envia os dados, ele inicializa um mecanismo de timeout (temporizador) para receber a confirmação de recebimento. Caso a confirmação Roteador 2 Host B Roteador 1 Host A Aplicação Transporte Rede Enlace Física Aplicação Transporte Rede Enlace Física Rede Enlace Física Rede Enlace Física Figura 01. Estabelecimento de conexão TCP (Three-Way Handshake) Figura 02. Encerramento de conexão TCP
  • 4. Romildo Martins Bezerra 4 não seja recebida ele retransmite o pacote. A retransmissão é a base do sucesso do TCP. Reflita sobre a retransmissão no atraso de entrega. • Retransmissão adaptativa e Controle de Tempo – O TCP monitora o atraso do envio dos pacotes e adapta seu temporizador. Mas como ele pode fazer isso se os relógios não são sincronizados? Será que esta técnica é eficiente? • Controle de Fluxo (buffers e janelas de transmissão) – Um problema no mundo das redes é garantir o controle de fluxo entre usuários finais. A imprevisibilidade do tráfego é o maior problema. Imagine o resultado do vestibular do CEFET publicado na internet. Diversos usuários irão fazer requisições em pouco tempo podendo ser mais rápido do que a entrega do servidor web. Assim diversas requisições serão novamente realizadas, gerando ainda mais tráfego e pacotes duplicados. Daí o TCP utiliza o conceito de buffers (armazenamento de pedidos e respostas) e janelas deslizantes: Janela deslizante é uma característica de alguns protocolos que permite que o remetente transmita mais que um pacote de dados antes de receber uma confirmação. Depois de recebê-lo para o primeiro pacote enviado, o remetente desliza a janela do pacote e manda outra confirmação. O número de pacotes transmitidos sem confirmação é conhecido como o tamanho da janela; aumentando o tamanho da janela melhora-se a vazão. • Controle de Congestionamento - Fica como pesquisa de leitura. UDP – User Datagram Protocol O UDp é um protocolo da camada de transporte não confiável e não orientado a conexão. Fornece apenas os serviços de endereçamento e fragmentação, não provendo confiabilidade (controle de fluxo, erro, congestionamento). Isso indica que o UDP não adiciona serviços ao protocolo IP. O que nos leva então a utilizar o UDP? O UDP por ser mais simples possui um cabeçalho menor gerando um menor overhead. Ideal para algumas aplicações onde a velocidade é mais útil que a confiabilidade como aplicações multimídia. Afinal não faz sentido algum receber um trecho de um arquivo música que já passou. Além de aplicações multimídia, o UDP é utilizado também pelo TFTP (Trivial File Transfer Protocol), RIP (Routing Information Protocol), SNMP (Simple Network Management Protocol) e DNS (Domain Name System). Figura 04. Mostra a retransmissão (701-800), buffer, janela deslizante e recebimento fora de ordem.
  • 5. Romildo Martins Bezerra 5 Pesquise 1. As portas reservadas para os serviços web e que protocolos de transporte utilizam. 2. Para que serve o round-trip delay? 3. Relacione janelas-deslizantes e algoritmo do início lento. 4. Síndrome da “Janela Boba”. 5. Verifique o funcionamento do controle de congestionamento. 6. Compare os cabeçalhos do TCP e UDP. 7. Porque o TFTP não precisa de confiabilidade? 8. Pesquise se existem outros protocolos de transporte na arquitetura TCP/IP. Temas para trabalhos 1. Programação de Servidor Web [2] 2. Programação de Algoritmo de janelas deslizantes. Bibliografia [1] FOROUZAN, B.A. Comunicação de Dados e Redes de Computadores. 3ª Edição. Bookman. 2006 [2] KUROSE, J. Redes de Computadores e a Internet. 3ª Edição. Addison-Wesley, 2006. [3] COMER, D. E. Redes de Computadores e a Internet. 4ª Edição. Bookman. 2007.