Simulando Protocolos de Handover Suave Vera Nagamuta [email protected] Tópicos O problema do handover em redes sem fio Handover no Mobile IP: problemas e melhorias propostas HOPF – HandOver Protocol Framework Arquitetura Módulos canônicos Composição de protocolos Simulação de protocolos de handover Protocolo básico, Cellular IP, Muticast-based O problema do handover Handover ou handoff é o procedimento empregado em redes sem fio para tratar a transição de uma unidade móvel (UM) de uma célula para outra Objetivo: manter a conexão com uma UM permitindo a continuidade dos serviços e aplicações em execução Desafios: rápido e sem perdas de dados = handover suave (seamless) = migração transparente Handover em rede celular Rede fixa BD de localizações Estação Base (EB) Célula Etapas do handover Detecção do handover: quando e como a necessidade de handover é detectada Decisão /Início: escolha da nova estação base (EB), geração da nova conexão: autenticação /autorização, alocação de canais Atualização de contexto: notificação da nova localização, reconfiguração do caminho de roteamento de pacotes Problemas do handover Detecção e início do handover devem ser feitos antes da perda da conexão Como selecionar a “melhor” EB Handover pode não se completar pela falta de recursos na nova EB Tempo requerido pelo handover pode causar atrasos na entrega de pacotes e afetar o desempenho do TCP e aplicações de tempo real Handover no Mobile IP Mobile IP [1] trata mobilidade na camada de rede, é independente do meio físico => Solução global para mobilidade Mantém conexões ativas durante migrações Objetivo primordial: encaminhar pacotes a nós móveis Handover no Mobile IP Home Network CN UM Home Agent Internet Foreign Network Foreign Agent (4) (3) CoA (2) CoA UM (1) Agent Advertisement Binding Update Tunneling Problemas do handover no Mobile IP Solução na camada de rede: detecção do handover e identificação da nova EB através de Agent Advertisements Migrações freqüentes em pequenas áreas => atrasos na entrega de pacotes e perdas (HA distante) => handover não-suave Roteamento triangular Otimizações propostas para reduzir latência e perdas (Routing Optimization [2], Smooth Handoff [3]) Melhorias propostas ao Mobile IP Estratégia Redirecionar pacotes Hierarquias de FAs Soft-handover Multicasting Reconfiguração de caminhos Antecipação do handover Link layer handover Solução Mecanismo de buffer Mobile IP Hierárquico [4] Cellular IP [5] Multicast-based [7] HAWAII [6] Fast Handover [8] POLIMAND [9] CN HA Internet Gateway Domínio Gateway Domínio 2 1 Micro-mobilidade Macro-mobilidade HOPF – HandOver Protocol Framework Arcabouço para composição, teste e simulação de protocolos de handover Aplicações possuem diferentes requisitos de QoS Um conjunto de técnicas pode ser empregado em uma tarefa de handover para melhor satisfazer os requisitos da aplicação Padrão de mobilidade e características da rede também influenciam na escolha das técnicas Módulos canônicos: elementos estruturais básicos para a composição de protocolos HOPF Simulação /Testes Parametrização /Composição Requisitos de QoS Comp Comp Comp Module Selector Perfil de Mobilidade Características da rede SH Protocol Event Handler Canonical Modules Componente de Configuração MobiCS Controle de execução Módulos Canônicos Gerenc. de handover: módulos para detecção de handover, estabelecimento da nova conexão, atualização de contexto, otimizações Gerenc. de localização: como a localização da UM é mantida e como é atualizada Roteamento de pacotes: como os pacotes são encaminhados para Ums (Unicast, Multicast) Suporte à mobilidade: elementos de rede, estruturas de dados específicos (caches específicos, BD de localizações) Framework de Controle de Execução HOCtrlComp LocMangComp RoutMangComp QoSMangComp EventHandler EventHandler EventHandler EventHandler Controller Eventos internos EventHandler Eventos externos Protocol Simulation Tool (MobiCS) Componentes de protocolo HOCtrlComp: possui 4 sub-componentes (HODetectSComp, HOInitSComp, CxtUpdSComp, DataFlowSComp), tratam as tarefas do handover LocManagComp: mantém a localização da UM atualizada RoutingComp: trata o encaminhamento de pacotes em alguma forma de transmissão QoSComp: tarefas de reserva de recursos e monitoramento Fluxo de execução A seqüência de operações para cada tipo de evento depende do conjunto de módulos canônicos selecionados para cada componente de protocolo Podemos ter mais de um módulo para tratar uma mesma tarefa, queremos evitar modificações no Controller e componentes qdo trocamos de módulos Solução: Padrão Chain of Responsability Padrão Chain of Responsability Permite invocação uniforme de objetos na ocorrência de um evento Idéia básica: desacoplar o remetente de uma requisição de seu receptor, permitindo que mais de um objeto possa tratá-la Uma requisição é passada por uma corrente de objetos Vantagens: permite que um evento seja tratado por um ou mais módulos e evita modificações no Controller e componentes na troca de módulos Composição de protocolos Suporte à mobilidade: elementos de rede, caches específicos (LocMangComp) Forma de transmissão de pacotes (RoutComp) Detecção do handover (HODetectionComp) Tipo de handover: hard, soft, semi-soft (HOCtrlComp) Atualização de localização, caminho de roteamento (LocMangComp) Otimizações: buffer, atecipação do handover, replicação de pacotes (DataFlowComp, HOTecComp) Protocolos simulados Protocolo básico Cellular IP (hard handoff) Gerenciamento centralizado de localização no GW Roteamento de pacotes por tunelamento Gerenciamento distribuído de localização (roteadores específicos com caches soft-state) Multicast-based Micromobility (M&M) Gerenciamento distribuído de localização (grupo Multicast) Replicação de pacotes a todas Ebs vizinhas Protocolo básico LocationDB (4) Dereg (5) DeregAck (1) - msg Update é enviada para GW e ao recebê-la este GW atualiza a localização da UM - msg Dereg notifica a antiga (3) Update BS sobre a saída da UM e os recursos são liberados - pacotes para UM são enviadas para antiga EB até que GW receba Update => são perdidos (2) Greet Cellular IP Hard Handover GW Crossover Router (CR) (4) (1) - handover simples e rápido - reduz perda de pacotes pois msg RouteUpdate precisa chegar somente até CrossoverRouter (roteador na intersecção dos dois caminhos) (3) - não requer msg Dereg (2) RouteUpdate Multicast-based handover 8 2 7 9 3 10 1 6 - reduz latência e perdas - duplicação de pacotes - sobrecarga na rede 4 5 EB_resp EB Mensagens: Handover Join Leave Otimizações Foram implementadas duas otimizações para tratar o fluxo de pacotes durante o handover: Modo Semi-reliable: implementa um mecanismo de buffer nas EBs (BufferModule) para permitir o redirecionamento de msgs Modo Reliable: além do buffer, faz o controle de msgs recebidas (AckModule) e permite que a UM requisite os pacotes não recebidos (RetransmissionModule) Simulações Simulações usando MobiCS (estocástico) Objetivos: comparar o desempenho dos protocolos de handover com respeito ao número de mensagens perdidas e duplicadas variando-se o número de handovers e a taxa de envio de mensagens Prob. de migração: Pmig={0.3, 0.5, 0.7} Prob. de envio de msg: Psend={0.3, 0.5, 0.7} Taxa de geração de eventos: 1 /70 UTS (Unidade de Tempo Simulado) Simulações – Topologia da rede GW R3 Source R1 R2 R4 BS1 BS2 BS3 BS4 Resultados (msg perdidas) Psend = 0.5 – Modo Unreliable Resultados (msg perdidas) Psend = 0.5 – Modo Semi-reliable Comparação Modo Unreliable Modo Semi-reliable Resultados (msg perdidas) Psend=0.7 Modo Unreliable Modo Semi-reliable Resultados (msg duplicadas) Psend=0.5 – Modo Semi-reliable Resultados (msg duplicadas) Psend=0.5 – Modo Reliable Comparação Modo Semi-reliable Modo Reliable Resultados (msg duplicadas) Psend=0.7 Modo Semi-Reliable Modo Reliable Carga de mensagens Modo Reliable Carga de mensagens Psend=0.1 Psend=0.7 Conclusão Protocolos de micro-mobilidade oferecem soluções específicas, não oferecem suporte a QoS O desempenho do procedimento de handover depende de vários fatores, p.ex., gerenciam. de localização, roteamento de pacotes, características da rede, etc. HOPF permite composição de handover a partir de módulos canônicos para melhor se adaptar aos requisistos das aplicações e condições da rede Conclusão Próximas tarefas: Implementar e testar composição com outros módulos canônicos Identificar relações de dependência entre módulos canônicos Definir regras para seleção de módulos a partir de resultados de simulações Referências [1] RFC 3220: IP Mobility Support for IPv4, IETF, Jan. 2002. [2] C. Perkins et al., “Route Optmization in Mobile IP” Internet Draft, 2000. [3] E. Gustafsson et al., “Mobile IP Regional Registration”, Internet Draft, 2001. [4] H. Soliman et al., “Hierarchical Mobile IPv6 Mobility Management”, Internet Draft, 2002. [5] A. Campbell et al., "Design, implementation, and evaluation of Cellular IP", IEEE Personal Commun. Mag., 2000. [6] R. Ramjee et al, "HAWAII: A Domain-based Approach for Supporting Mobility in Wide-area Wireless Networks",Proc. International Conf. Network Protocols. [7] A. Helmy et al., "Efficient Micro-Mobility using Intra-domain Multicastbased Mechanism (M&M)", ACM SIGCOMM Computer Communications Review, 2002. [8] G. Dommety et al., “Fast Handovers for IPv6”, Internet Draft, IETF, 2002. [9] S. Aust et al., “Policy-based Mobile IPv6 Handover Decision (POLIMAND)”, Internet Draft, IETF, 2005.