Title: DeployingWireless Networks with Beeps
1DeployingWireless Networks with Beeps
- Celso de Oliveira
- Universidade Federal de Minas Gerais (UFMG)
2Wireless Network
- Muitos projetos de redes se baseiam em vários
pressupostos - Conhecimento sobre o ambiente de implantação.
- Capacidades de comunicação dos dispositivos.
- Conhecimento sobre seus vizinhos.
- Algum conhecimento sobre a estrutura da rede.
- Sincronização de relógios.
- Utiliza troca de mensagens para comunicação.
- Os dados são modulados numa portadora e
transmitidos via RF. - Detecção de colisão.
- Facilitam os projetos de algoritmos
distribuídos
- Modelos repletos de detalhes dificultam o
projeto de algoritmos tornando mais complicado
provar sua eficiência e o quanto é correto.
3Wireless Network with Beeps ( Pressupostos )
- Se baseia em poucos pressupostos
- Nenhum conhecimento do ambiente de implantação.
- Dispositivos com baixa capacidades de
comunicação. - Nenhum conhecimento sobre seus vizinhos.
- Nenhum conhecimento sobre a estrutura da rede.
- Sem sincronização de relógios.
- Sem detecção de colisão.
- Os nós são despertados por seus pares.
- Utilizam somente a detecção e emissão da
portadora. - Por consequência, baixo consumo de energia.
- Existe um período T conhecido para captura dos
sinais.
4Wireless Network with Beeps ( Modulação )
- Mesmo sendo um modelo fraco permite o projeto
de algoritmos distribuídos para tarefas não
triviais. - Requer uma pequena demanda sobre os dispositivos.
- O modelo de comunicação por Beep se baseia na
detecção da portadora onde os nós da rede são
capazes de diferenciar o silêncio e a presença do
sinal de interferência portadora.
5Wireless Network with Beeps ( Problema de
Coloração )
- O problema pode ser modelado como Problema de
Coloração de intervalos. - Dado um conjunto de recursos, o objetivo da
coloração de intervalo é atribuir a cada nó uma
fração contínua significativa dos recursos de tal
forma que nós vizinhos não utilizem os mesmos
recursos. - Uma K-coloração de intervalo é aquela onde cada
nó tem pelo menos uma fração de 1/k dos recursos
em um slot de tempo - A coloração de intervalo é um bloco de
construção, sendo útil para construção de MAC
Medium Access Layer (MAC). - Pode ser utilizado para o calculo do tempo ou
acesso múltiplo por divisão de freqüência (FDMA
ou TDMA). Evitam o conflito entre nós que
potencialmente podem se interferir.
6Wireless Network with Beeps ( Problema de
Coloração )
- Um intervalo pode representar vários slots ou
frequências enquanto na coloração de vértices
para cada nó é atribuída uma única cor. - Baseando-se exclusivamente na detecção de
portadora, torna-se bem adaptado para as tarefas
de coordenação em redes sem fio. - A maioria dos projetos assumem a troca de
mensagens confiáveis. Se for usado como um bloco
de construção, por exemplo, calcular um
escalonamento de TDMA, estes algoritmos sofrem do
problema do ovo e da galinha Colorações não
podem ser calculadas sem uma camada MAC
confiável, porém para atingir uma camada MAC
confiável é preciso primeiro calcular uma
coloração. - Do ponto de vista do consumo de energia, a
detecção de portadora pode ser usada para
comunicar de forma mais eficiente para distâncias
maiores do que para transmissão de mensagens
normalmente.
7Wireless Network with Beeps ( Problema de
Coloração )
- A 802.11 e o Bluetooth compartilham o mesmo
espectro de frequência mas a modulação e a
codificação são incompatíveis. O modelo baseado
em Beep pode equacionar o compartilhamento de
recursos.
8Wireless Network with Beeps ( Modelagem )
- Modelo de rede primitivo.
- Os nós não trocam mensagens entre si.
- Os nós podem estar na condição de Listen ou de
Beeping. - No modo de Listen ele detecta o silêncio ou o
sinal da portadora. - Não há codificação nem detecção de colisão.
- Um Beep transmite menos informação que um BIT.
- Os nós despertam de forma assíncrona e não
possuem nenhuma informação sobre a rede Tamanho,
Vizinhança, Sem ID. - Os nós possuem um relógio LOCAL que avança na
mesma proporção de unidades de tempo sem estarem
sincronizados. - Os relógios dos nós não possuem Jitter,
permanecendo cadenciados entre si.
9Wireless Network with Beeps ( Modelagem )
- A rede pode ser modelada como um grafo não
direcionado. - G ( V , E ) Onde
- V é o conjunto de dispositivos.
- n V o número de dispositivos.
- u,v ? E sse, u,v ? V e u escuta v e
vice-versa. - ? u ? V, N(u)v ? V u,v? E
- d(u) N(u)
- ? max v?V d(v)
- tu representa o tempo de ocorrência de algum
evento em relação ao nó u. - Os nós ficam em modo Listen ou modo Beeping.
- FASE é uma referência temporal utilizada para
capturar o momento em que os Beeps são escutados
em relação ao relogio LOCAL onde - É um ponto no tempo para o modelo contínuo
- É um slot te tempo no modelo discreto.
10Wireless Network with Beeps ( Modelo Discreto )
- No modelo discreto o tempo é divido unidades
slots que representam os recursos que serão
alocados sendo também onde os eventos ocorrem. - Os Slots de tempo duração ?
- Q representa o número de slots por período T
Q?, representando também o número de recursos
disponíveis. - Todos os nós iniciam os Slots ao mesmo tempo, os
limites dos Slots são sincronizados. - Em cada Slot os nós podem escutar ou enviar Beeps
durante ? unidades de tempo.
11Wireless Network with Beeps ( Modelo Continuo )
- No modelo continuo existe período de duração T
onde os eventos ocorrem. - Num período T um Beep pode ser emitido por um nó
u com uma duração ? ltlt T. - O modo Listen(?) coloca um nó u escuta em ?
unidades de tempo e retorna o conjunto de pontos
tu que um Beep foi escutado por u.
12Wireless Network with Beeps ( Coloração de
intervalo )
- Dado um conjunto ordenado de recursos, uma
coloração de intervalo atribui a cada nó um
intervalo (fração continua) desses recursos que
os nós vizinhos não compartilham. - Uma k-coloração de intervalo é aquela onde cada
nó tem pelo menos 1/k fração dos recursos, sendo
o tempo o recurso compartilhado. - No modelo discreto a falta de relógios
sincronizados implica que os períodos dos
diferentes nós não estejam alinhados. - Os nós concordam entre si sobre o conjunto de
recursos a serem compartilhados mas não concordam
sobre uma ordenação desses recursos. - Para contornar esse problema, é modelado uma
coloração de intervalo para gerar uma tupla lt
pv,Ivgt para cada no v, onde pv é o deslocamento
em relação ao início do período de v, e Iv é o
comprimento do intervalo. - ? u,v ? E, e
são disjuntos em todo o período.
13Wireless Network with Beeps ( Coloração Int.
Contínua )
- Os nós emitem Beeps num intervalo aleatório
entre 0, T, os Beeps colidem com probabilidade
zero devido a probabilidade de que duas amostras
de uma distribuição contínua uniforme serem
iguais é zero. - O algoritmo BEEPFIRST pesquisa pelo primeiro
tempo disponível que um nó pode emitir um Beep,
respeitando um buffer de tamanho bv em torno dos
Beeps existentes. - Para garantir que nenhum dois nós escolham emitir
um Beep ao mesmo tempo, o tamanho do buffer e o
tempo de inicio são aleatórios. - O parâmetro ? ? (0,1) que afeta o tamanho dos
intervalos resultantes. - No estado de inicialização, cada nó v define o
seu comprimento de intervalo, o momento de início
é aleatório e define seu comprimento de buffer. - No estado de busca, os nós escutam por um período
T armazenando as fases em que Beeps foram
ouvidos. - Se um nó não escuta nenhum Beep no seu primeiro
período, ele define pv 0 e vai para o estado
estável. Do contrário os nós pesquisam pela
primeira fase pv tal que, no período anterior
nenhum outro nó Emitiu um Beep no intervalo e no
período analisado outro nó emite um Beep. - Sendo uma fase encontrada, os nós emitem Beep
para reservá-la e escutam o que resta do período,
mudando para o estado estável. - Quando um nó se torna estável, mantém-se estável
depois, emitindo um Beep na mesma fase de cada
período.
14Wireless Network with Beeps ( Coloração Int.
Contínua )
15Wireless Network with Beeps ( Coloração Int.
Contínua )
- Para cada nó v no estado busca, o intervalo
entre Beeps ouvidos é no máximo 2bv do contrário
ele teria saído do estado de busca. - Suponha que em um período o nó v escuta, no
máximo um Beep de cada vizinho, assim o nó v ouve
no máximo d(v) Beeps em um período - Isto significa que após o tempo de d(v)2bv lt T
no estado de procura o nó v encontra uma fase
adequada para emitir seu Beep e entra no estado
estável.
16Wireless Network with Beeps ( Coloração Int.
Discreta )
- A coloração de intervalo discreta é um modelo
mais realista onde os Beeps ocorrem em momentos
distintos e têm uma duração mínima, assim, as
distribuições de probabilidade envolvidas são
distintas e finitas. - É utilizado o algoritmo de Las Vegas aleatório
para O(?)-Coloração de intervalo, que termina com
alta probabilidade em O(logn) períodos. - Isto requer Q ? ? em particular assumimos Q k?
onde k é uma constante grande o suficiente, K
3/?. - O algoritmo JITTERANDJUMP se baseia em tres
idéias chaves - O número de Beeps escutados por um nó é uma boa
estimativa de seu grau. - Pela adição de pequenos atrasos aleatória a cada
Beep, os nós vizinhos que emitem Beeps num
mesmoslot podem detectar uma colisão com
probabilidade constante. - Se um nó salta para um slot aleatório que é
cercado "suficientemente" por espaços vazios, ele
encontra um Slot sem sobreposição de atribuição
com probabilidade constante.
17Wireless Network with Beeps ( Coloração Int.
Discreta )
- Todos os nós são inicializados sem cor, se
tornando coloridos quando acreditam ter
encontrado um intervalo sem sobreposição. - Exceto para o primeiro período (onde todos nós
ouvem sem emitir Beeps), todos nós emitem Beep
uma vez por período. - Em um único período um nó pode ouvir no máximo
dois Beeps por vizinho, então se dv é o número de
Beeps detectados por nó v durante um período,
então - As colisões são resolvidas inserindo um atraso
Jetter ? 0,...,1 e emite o Beep no instante
pv Jitterv. - Se um nó colorido detecta um Beep de um Slot
antes, ou dois Slots após a seu próprio Beep ele
se torna sem cor. - Cada nó v define o tamanho do buffer
e ? 1/16. - Utilizando a informação recolhida no período
anterior, o nó v calcula um conjunto de slots
livres Fv, onde s ? Fv se nenhum Beep foi
escutado nos bv2 slots anteriores e os bv1
posterior.
18Wireless Network with Beeps ( Coloração Int.
Discreta )
- Um nó v sem cor seleciona aleatoriamente um Slot
pv para emitir um de um conjunto Fv Slots livres. - Se após emitir um Beep o nó v verifica que nenhum
outro nó está no intervalo pv-bv,pv ele se
torna colorido. - Dois nós vizinhos estão em colisão se seus Beeps
estão no mesmo Slot. - Em todo período, cada nó escolhe aleatoriamente
de forma independente um Jitter que afeta onde
serão emitidos os Beeps. - É possível mostrar que em dois nós que colidiram
detectarão a colisão e se tornarão sem cor, com
uma probabilidade constante.
19Wireless Network with Beeps ( Coloração Int.
Discreta )
20Wireless Network with Beeps ( Grafos dinâmicos )
- Grafos dinâmicos são aqueles onde nós e arestas
são adicionadas e removidas aleatoriamente. - Adicionar nós ou arestas pode ser tratado como
acordar sendo tratado em JITTERANDJUMP. - Para retiradas de nós e arestas, uma vez que o
algoritmo tenha estabilizado para um
O(?)-Coloração de intervalo, não há garantias que
o intervalo de cada nó aumente, mesmo que muitos
nós saiam e o novo grau máximo ? se torne ?ltlt
?. - Uma solução seria voltar ao um estado sem cor
quando a estimativa do grau cai abaixo de um
certo limite. - Nós em colisão podem causar que a estimativa de
grau caia artificialmente, mesmo quando nenhum nó
ou aresta sejam retirado. - Em alguns casos, os nós em colisão não estão
cientes entre si podendo permanecer em colisão,
apesar dos Jitter.
21Wireless Network with Beeps ( Grafos dinâmicos )
- Independentemente do estado, cada nó v escolhe
aleatoriamente uma segunda fase pv a partir dos
Slots livres s ? Fv. o nó v emitirá um Beep no
Slot pv jitter , e em pv também. - Sv(i) é um conjunto de Slots onde o nó v escuta
um Beep no período i. - Definimos dv(i)max j?( i r,i Sv(i) o
número máximo de Beeps sobre uma janela que se
desloca nos últimos r períodos, atualizando d(i)
no período i e - Finalmente, se ,
e v é redefinido como não colorido.
22Referências
DeployingWireless Networks with Beeps Alejandro
Cornejo Massachusetts Institute of Technology
MIT Fabian Kuhn University of Lugano