Em teoria, os protocolos da camada de transporte devem ser independentes dos protocolos das camadas de rede inferiores. Na prática, a maior parte das implementações do protocolo TCP foram feitas com suposições que ocorrem e são cumpridas nas redes com fio, mas não nas redes sem fio [2]. As propriedades dos meios sem fio diferem notavelmente, já que possuem altas BERs e perdas aleatórias por desconexões momentâneas, variações da intensidade do sinal e também por ruído.
Uma das suposições em meios com fio é que o vencimento de um temporizador ocorre pelo congestionamento no meio e não por uma perda ocasional. O prejuízo na taxa de transmissão que apresenta o protocolo TCP sobre enlaces sem fio se deve a essa má interpretação. Uma solução a esse problema é modificar o protocolo TCP para identificar quando o protocolo TCP está sendo executado sobre um enlace sem fio, tal que ele possa se adaptar adequadamente.
Capítulo 4
Melhorias para o Protocolo TCP Sem
Fio
Nos últimos anos as redes sem fio se tem convertido em um meio de acesso muito popular no mundo das telecomunicações, compartilhando informação através de várias infraestruturas sem fio. Como foi apresentado na Capítulo 1, um dos principais desafios nas redes de hoje é prover acesso à Internet sem fio aos aplicativos que dependem do protocolo TCP para sua correta comunicação. Porém, como mencionado no capítulo anterior, o protocolo TCP possui falhas em seu planejamento que impedem a sua adequação para o transporte de segmentos sobre um ambiente sem fio.
A seguir, são descritas algumas melhorias e optimizações propostas na literatura para solucionar o problema do protocolo TCP sem fio. São classificadas em quatro grupos principais, segundo o tipo de mecanismos utilizados e a camada de rede na qual atuam. A classificação é a seguinte: conexão-dividida, camada de enlace, notificação explícita e protocolos de ponto-a-ponto.
4.1
Protocolos de Conexão-Dividida
A abordagem dos protocolos de conexão dividida consiste em dividir uma conexão TCP em duas conexões em um ponto intermediário da rede. O primeiro segmento engloba as redes com fio desde o Host Fixo (HF) à Estação Rádio-Base (ERB), o outro consiste na rede sem fio desde a ERB ao Host Móvel (HM). A Fig. 4.1 mostra o esquema deste tipo de protocolo.
A subdivisão dos segmentos oferece algumas vantagens. As características de transmissão no enlace sem fio, como a alta probabilidade de erro e desconexões por sombreamento e handoffs, afetam somente ao segmento sem fio. Com a divisão dos segmentos é possível esconder os efeitos do canal sem fio das entidades TCP que utilizam a rede com fio. Aliás, permite a utilização de diferentes protocolos de transporte nos segmentos distintos. Porém, as conexões TCP são executadas na ERB e são necessários buffers de dados fixos, em que toda a informação da conexão TCP deve ser armazenada na ERB em um esquema de conexão-dividida. O tamanho desses buffers podem ser fixos ou especificados durante uma conexão TCP.
32 Capítulo 4. Melhorias para o Protocolo TCP Sem Fio
HF ERB HM
Rede sem fio Rede com fio confiável
Conexão TCP HF-ERB Conexão TCP ERB-HM
Figura 4.1: Conexão TCP Dividida em Conexões Diferentes.
4.1.1
TCP Indireto
O protocolo TCP Indireto (I-TCP) [21] é uma solução de conexão-dividida que utiliza suporte móvel MSR como ERBs para outorgar comunicação entre usuários móveis e fixos na camada de transporte. Sobre o enlace sem fio é utilizado o protocolo TCP padrão que tenta separar as perdas do enlace sem fio do enlace por cabo. Seu objetivo consiste de que os erros e atrasos produzidos na parte não confiável da rede não ativem os mecanismos de controle do protocolo TCP, eliminando a retransmissão de dados no segmento HF-ERB. Experimentos realizados em [22] mostram que a escolha do protocolo TCP no enlace sem fio resulta em uma utilização ineficiente da capacidade do enlace e cria sobrecarga na ERB.
4.1.2
Protocolo de Conexão-Dividida com Repetição Seletiva
Proposto em [23], os autores sugerem a criação de um novo protocolo na camada de sessão para compensar as características do enlace sem fio. O protocolo foi projetado para aproveitar todas as características que puderem ser conhecidas no enlace sem fio e compensar por situações imprevisíveis entre os usuários e a estação rádio base. O agente intermediário na ERB atua dirigindo a sessão e reenvia os dados recebidos ao usuário móvel. São utilizados dois protocolos no enlace sem fio: o protocolo TCP padrão e o Protocolo de Repetição Seletiva (SRP).
O protocolo SRP implementa seus próprios mecanismos de fluxo e controle de erros, projetados e otimizados especificamente para combater os efeitos dos enlaces sem fio. Utiliza um algoritmo de repetição seletiva que responde com uma confirmação seletiva, SACK, quando um segmento fora de ordem é recebido. O segmento SACK especifica os segmentos perdidos e que inclui o número de sequência do último segmento transmitido e o último segmento recebido. Esta abordagem permite a recuperação de várias perdas simultâneas em uma mesma janela de transmissão.
Capítulo 4. Melhorias para o Protocolo TCP Sem Fio 33
4.1.3
Protocolo de Transporte Ponto-Móvel
O protocolo de transporte ponto-móvel (METP) apresentado em [24] é uma solução que eli- mina a pilha de protocolos TCP/IP dos host móveis. Os cabeçalhos da camada de transporte e da camada de rede no segmento sem fio são substituídos por cabeçalhos que contém chaves de- multiplexadas e endereços IP da fonte e do destino. O protocolo METP considera o segmento sem fio como se fosse um nó final no caminho da transferência de dados e prescinde da camada transporte nos usuários móveis. Todas as conexões TCP são processadas na estação base pelo protocolo METP em lugar do HM, que é encarregado de estabelecer ou fechar as conexões TCP. Na chegada de um segmento TCP para algum dos usuários móveis, o protocolo METP armazena os dados da conexão e responde com um segmento ACK ao transmissor TCP. Desse modo, o controle de congestionamento trabalha unicamente no segmento de rede com fio para o qual foi projetado. Dado que a conexão TCP não consegue passar do segmento com fio, o protocolo METP deve garantir o envio da informação no enlace sem fio. Para conseguir isso são necessários mais recursos de processamento e maior espaço de armazenamento na ERB, tornando o usuário móvel mais de- pendente da ERB. Aliás, a chegada de um segmento TCP na ERB ocasiona o envio da confirmação desse segmento por parte da ERB indicando que foi recebido com sucesso. Porém, se a ERB não consegue transmitir a informação contida no segmento TCP para o HM, essa informação não será recebida novamente.
4.1.4
TCP-Móvel
Proposto em [25], o protocolo TCP-Móvel realiza uma compressão do cabeçalho para reduzir a quantidade de informação de controle transmitida no enlace sem fio. Leva em consideração que todos os segmentos passam previamente pela estação rádio base e portanto, não é necessária uma comunicação TCP completa entre o transmissor TCP e o HM. No estabelecimento da conexão, os endereços de cada segmento são associados com uma identificação de conexão (CID) para sua futura transmissão no enlace sem fio. O CID contém informações mínimas para garantir a comunicação, como os endereços IP de origem e destino e os números das portas utilizadas no protocolo TCP. Quando um usuário móvel necessita transmitir informação sobre a rede, os cabeçalhos TCP são mapeados a seu correspondente CID e são transmitidos pelo enlace sem fio. Ao chegar na ERB, as informações da CID são mapeadas novamente no cabeçalho TCP/IP correspondente. O processo se repete de forma inversa quando o HF envia os dados solicitados. Os segmentos TCP são confirmados pela estação rádio base apenas quando chegaram com sucesso no HM.
4.1.5
Protocolo de Transporte Móvel de Conexão-Dividida
O protocolo de transporte móvel de conexão-dividida (SCMTP) [26] propõe um esquema similar ao descrito no Protocolo de Transporte Ponto-Móvel. O protocolo SCMTP utiliza o protocolo TCP no segmento de rede com fio e um protocolo de transporte mais leve no segmento de rede sem fio. A diferença consiste no uso do protocolo requisição automática de repetição (ARQ) para solucionar os problemas produzidos pelos erros do canal sem fio. Multiplexação por divisão de tempo é utilizada
34 Capítulo 4. Melhorias para o Protocolo TCP Sem Fio no enlace direto da ERB à HM para atribuir a capacidade de cada usuário. Acesso múltiplo por divisão de tempo é empregado pelos hosts móveis no enlace reverso. Algoritmos implementados na estação rádio base controlam o tráfego entre a ERB e o HM, além do compartilhamento dos enlaces direto e reverso.
4.1.6
Resumo
Os esquemas apresentados tentam melhorar o desempenho do protocolo TCP em ambientes sem fio ao isolar o transmissor TCP dos efeitos do canal sem fio. Nenhum dos esquemas propostos permite informar ao transmissor que o segmento foi perdido por congestionamento ou erros no canal. As retransmissões dos segmentos continuam da mesma forma, impedindo manter a vazão de dados em níveis altos devido às características de um ambiente que favorece a introdução de erros. Em alguns casos, os protocolos propostos violam a semântica ponto-a-ponto do protocolo TCP.