Ricardo Augusto Rabelo Oliveira. Uma API para Integração e Gerenciamento de Redes Wi-Fi e Bluetooth. de Minas Gerais, como requisito parcial para a

Tamanho: px
Começar a partir da página:

Download "Ricardo Augusto Rabelo Oliveira. Uma API para Integração e Gerenciamento de Redes Wi-Fi e Bluetooth. de Minas Gerais, como requisito parcial para a"

Transcrição

1 Ricardo Augusto Rabelo Oliveira Uma API para Integração e Gerenciamento de Redes Wi-Fi e Bluetooth Dissertação apresentada ao curso de Pós-Graduação em Ciência da Computação da Universidade Federal de Minas Gerais, como requisito parcial para a obtenção do grau de Mestre em Ciência da Computação. Instituto de Ciências Exatas Universidade Federal de Minas Gerais Belo Horizonte 28 de abril de 2004

2 Da minha aldeia vejo quanto da terra se pode ver no Universo... Por isso a minha aldeia é tão grande como outra terra qualquer Porque eu sou do tamanho do que vejo E não do tamanho da minha altura... Fernando Pessoa

3 i Resumo A redução do tempo de desenvolvimento é uma das características mais importantes na criação de software. Uma das estratégias com essa finalidade é o uso de uma interface de programação, API, Application Programming Interface, cujo objetivo é descrever como ocorre a interação entre as diversas partes de um sistema. O objetivo deste trabalho é desenvolver uma API para monitoramento e análise de duas das principais tecnologias de redes sem fio usadas na computação móvel: as WLANs, com o IEEE , e as WPANs, com o Bluetooth. A API proposta acessa as informações das interfaces de um dispositivo, assim como possibilita a sua reconfiguração de acordo com as necessidades da aplicação. Nesta dissertação são apresentados a especificação, projeto, implementação e foi desenvolvida uma aplicação para a avaliação desta API. Abstract An important trend in software development is to reduce its development time. An important strategy employed by programmers with this aim is the use of APIs, Application Programming Interface, which are sets of protocols, routines and tools for building software applications. In this work we present an API for monitoring and analyzing two of the most important wireless network technologies: for WLANs Wireless Local Area Networks, and Bluetooth for WPANs Wireless Personal Area Networks. The proposed API can access information in both communication interfaces and can configure them in order to attend specific application needs.

4 A Deus, à minha família e a todos que me acompanharam nessa jornada... ii

5 iii Agradecimentos Tento registrar aqui, em poucas linhas, os meus agradecimentos, mesmo sabendo que não são suficientes para expressar a importância de todos nessa minha jornada. Agradeço a todos que contribuíram direta, ou indiretamente, para a concretização deste trabalho: A Deus, pelos desafios do dia-a-dia e, principalmente, pela força para enfrentá-los; Aos meus pais, Saul e Gorette, pelo apoio incondicional, pelo carinho e compreensão e por tudo; Aos meus irmãos, Marcelo e Marina, pela amizade e o incentivo em todas as horas; Aos meus amigos da lista Hellmans: Dlaivison, Erico, Eliziane, Marcelo, Leonardo, Miriam, Naiara, André, Juliana e José Roberto, pelos incentivos, pela atenção e carinho dispensados desde o ínicio dessa jornada. E também pela companhia e pelas viagens na maionese; Aos meus amigos, em especial, Fernando Augusto, Leo Claudino, Cristiane Oliveira Cotta, Ana Elisa Ribeiro pelos incentivos em todos os momentos, pelas conversas e apoios, e, principalmente, pela amizade; À minha namorada, Kariny, pelo apoio e compreensão em diversos momentos mais difíceis, e por tornar os bons momentos ainda mais felizes; A todos os amigos e colegas da UFMG - a turma 972, em especial: Patricia Correa, Juliano Palmieri, Rainer, pelas conversas e pelo incentivo; Aos meus amigos e colegas do SIAM; Aos professores da UFMG pela oportunidade de conviver e aprender um pouco mais, dentro e fora das salas de aula; Ao meu orientador, o Professor Antônio Alfredo Ferreira Loureiro, por sua orientação e ter confiado no meu potencial; À SISMED, pelo apoio durante o inicio do mestrado; Ao CNPq, agência financiadora deste trabalho; A vocês, meu Muito obrigado.

6 Sumário 1 Introdução APIs para Computação Móvel Tecnologias de redes sem fio: WPANs e WLANs Motivação Trabalhos Relacionados Organização do Documento Interfaces de redes sem fio Camada Física Direct Sequence Frequency Hopping Modulação Propagação Camada de Enlace Caracterização dos Protocolos da Camada de Acesso ao Meio Descrição dos protocolos de acesso ao meio iv

7 SUMÁRIO v Comparação de desempenho entre diferentes protocolos MAC Informações da camada de enlace Contexto de Rede Mobilidade e Conectividade Wi-Fi Descrição Camada Física Camada de Enlace Procedimento de Acesso ao Meio Retransmissão Nó Escondido Virtual Carrier Sense Tipos de quadro e fragmentação Gerenciamento da camada de enlace Funções de Gerenciamento Sincronização Gerência da conexão Gerenciamento de Energia Parâmetros para Ajuste de Desempenho Padrões IEEE Interfaces no Linux

8 SUMÁRIO vi Orinoco Bluetooth Introdução IEEE Pilha de Protocolos Rádio Baseband Link Manager Protocol - LMP Host Controller Interface - HCI Logical Link Control and Adaptation Protocol - L2CAP Service Discovery Protocol - SDP Perfis de Funcionamento Bluetooth no Linux Kits Bluetooth Interface de programação para o Bluetooth Implementação Arquitetura da API Gerenciamento Implementação Estruturas de Dados Funções

9 SUMÁRIO vii 6 Testes e Resultados Experimentos Análise da Interferência Análise da mobilidade Conclusões e Trabalhos Futuros Conclusões Trabalhos Futuros

10 Lista de Figuras 1.1 Conjuntos de dispositivos formando WPANs Posicionamento das tecnologias sem fio, WPAN e WLAN Diagrama Funcional da interface sem fio Modos de funcionamento do IEEE Infra-estruturado e ad hoc Organização da pilha do IEEE CSMA/CA Nó Escondido: Mecanismo de RTS/CTS Virtual Carrier Sense Etapa de escolha e associação com pontos de acesso Dados relativos ao cartão PCMCIA da interface Wi-Fi Pilha de Protocolos do Bluetooth As maneiras de comunicação no Bluetooth. [1] Pacote de um slot de 625 µs Exemplo de pacotes multi-slots. [1] Estrutura do pacote. [1] viii

11 LISTA DE FIGURAS ix 4.6 Máquina de Estados da Baseband Esquema do funcionamento do HCI Perfis de Funcionamento do Bluetooth. [1] Blocos de acesso do Affix. [2] Golden Range do receptor Bluetooth. [1] Arquitetura Funcional da API Informações da Interface Bluetooth Informações da Interface Wi-Fi Qualidade dos canais Bluetooth (pacote DH1 e tráfego CBR) e (taxa de transmissão de 1MB e tráfego FTP) Distribuição acumulada da qualidade dos canais Bluetooth e (taxa de transmissão de 1MB) Força do sinal nos canais Bluetooth e (taxa de transmissão de 1MB) Qualidade do link (interferência Bluetooth com pacote DH5) Largura de banda do link para FTP sem interferência e com interferência do Bluetooth com pacote DH Qualidade dos canais durante uma queda de conexão do canal (interferência do Bluetooth com pacote DH1) Força do sinai dos canais durante uma queda de conexão do canal (interferência do Bluetooth com pacote DH1) Qualidade dos links Bluetooth e afastando-se do ponto de comunicação Força do sinal dos canais Bluetooth e afastando-se do ponto de comunicação Qualidade dos links Bluetooth e aproximando-se do ponto de comunicação. 89

12 LISTA DE FIGURAS x 6.13 Força sinal Bluetooth e aproximando-se do ponto de comunicação Qualidade dos canais Bluetooth e movimentando-se a esquerda do ponto de comunicação Força sinal Bluetooth e movimentando-se a esquerda do ponto de comunicação Qualidade dos canais Bluetooth e movimentando-se a direita do ponto de comunicação Força sinal Bluetooth e movimentando-se a direita do ponto de comunicação Qualidade do link Bluetooth afastando-se do ponto de comunicação para os 6 tipos de pacotes

13 Lista de Tabelas 3.1 Consumo de energia de uma interface IEEE b Operações básicas efetuadas no driver através do ioctl Operações de desempenho efetuadas no driver através do ioctl Operações de vinculação ao Ponto de Acesso no driver através do ioctl Operações de segurança e do chipset efetuadas no driver através do ioctl Operações de estatística do driver através do ioctl Classe de dispositivos suportados pelo Bluetooth Classe de dispositivos Bluetooth. [1] Tipos de pacotes do Bluetooth Velocidade e capacidade dos pacotes do Bluetooth Tempos usados no estabelecimento de conexão Consumo de energia do Bluetooth, medidas do chipset da Ericsson, R0K [3] Alguns comandos do HCI Nomenclatura utilizada xi

14 Capítulo 1 Introdução 1.1 APIs para Computação Móvel A redução do tempo de desenvolvimento é uma das características mais importantes na criação de software. Uma das estratégias com essa finalidade é o uso de uma interface de programação, API, Application Programming Interface, que consiste de um conjunto de rotinas, protocolos e ferramentas que disponibiliza todos os elementos básicos necessários à programação de um sistema. Durante o desenvolvimento de um software, muitas de suas partes necessitam usar os recursos dos dispositivos a seu dispor, de forma que os programadores precisam saber como acessá-los, um fator que tem um alto custo, se for proporcional a complexidade de aprendizado. Dessa maneira, uma API diminui o tempo de aprendizado, através da definição do acesso e uso dos recursos e funcionalidades de um sistema, simplificando sua programação e aumentando a produtividade no seu período de implementação. Como exemplos mais comuns de APIs, estão as de comunicação através de interfaces de rede como Sockets, que abstraem o conceito de comunicação da rede, através de descritores de arquivos, e RPC, Remote Procedure Call, que possibilita chamadas a procedimentos remotos, sem a necessidade de acessar diretamente a interface de rede. Existem alguns tipos de aplicações nas quais diversos recursos são escassos, uma situação muito comum no ambiente de computação móvel. Este é conhecido por ter dispositivos de pequena capacidade computacional que utilizam interfaces sem fio para a comunicação. A computação móvel tem seus conceitos relacionados com a mobilidade de software, hardware e dados num ambiente computacional. Essa mobilidade introduz restrições que eram inexistentes no ambiente de computação tradicional. Algumas destas são geradas durante a comunicação entre as unidades, como a variação da velocidade do canal, interferências do ambiente, questões relativas a localização da estação 1

15 CAPÍTULO 1. INTRODUÇÃO 2 móvel e a duração da bateria. A desconexão do dispositivo móvel, comum neste cenário, pode ocorrer de forma voluntária ou ser devida a variações na qualidade do canal e energia disponível na bateria, entre outras. As características do computador móvel, como peso e tamanho, limitam a disponibilidade de recursos como memória e capacidade de processamento. Dentre as aplicações criadas para esse ambiente, algumas necessitam de uma maior adaptabilidade aos dispositivos que as executam. Essa adaptabilidade pode estar direcionada tanto ao conteúdo no qual a aplicação trabalha, como vídeo, voz e dados, quanto ao acesso a diversos tipos de informações, como a capacidade dos dispositivos, localização e posicionamento, dados de extrema relevância para a computação móvel. Uma API para a computação móvel deve contemplar esses requisitos de adaptabilidade, oferecendo as opções para tal. Nesse ambiente, é possível identificar dois grupos de aplicações: no primeiro grupo, as informações sobre o canal de comunicação sem fio e as capacidades dos dispositivos são vistas de maneira transparente, independentes da aplicação. Neste caso, uma infra-estrutura é utilizada como uma interface para o sistema, servindo como suporte à aplicação no computador móvel. Este tipo de infra-estrutura também é conhecido como middleware, que esconde os detalhes das camadas inferiores ao próprio middleware e do sistema operacional. Os desenvolvedores dessas aplicações podem escrever códigos para aplicações centralizadas, sem se preocupar com as distribuições na rede, escalonamento, etc, de maneira que as aplicações desenvolvidas sobre o middleware são facilmente portáveis. Um exemplo desta classe de interface são as plataformas de desenvolvimento.net [4], da Microsoft [5], e o J2ME [6], da SUN [7], onde uma camada de software cria um ambiente isolado para os dispositivos e suas aplicações. O desenvolvimento de aplicações e a distribuição é feita de maneira transparente, e muitas vezes o desenvolvedor não precisa se preocupar com os detalhes dos computadores que serão utilizados. No segundo grupo estão as aplicações que necessitam de informações para seu funcionamento. Neste grupo, a aplicação é integrada ao hardware, com uma utilização menos generalizada dos recursos disponíveis. Esta integração possibilita um controle mais robusto pela aplicação, diminuindo a abstração gerada pela quantidade de camadas de software entre a aplicação e o hardware envolvido. O acesso a essas informações permite que a aplicação seja desenvolvida de maneira a otimizar o uso dos recursos envolvidos. Por exemplo, aplicações que criam um fluxo multimídia, como vídeo/voz, podem ter medidas de qualidade de serviço e um melhor provimento dos dados, através da escolha de protocolos e métodos de transmissão mais eficientes, por conhecer a largura de banda disponível. Aplicações de agendas e navegação a Internet podem adaptar o conteúdo a ser mostrado e armazenado localmente, de acordo com as informações de capacidades de vídeo e memória. Outro exemplo deste tipo de aplicação são os sistemas de gerência e sensoreamento remotos. Os sistemas de gerência são responsáveis pela informação e possibilidade de manutenção da rede de comunicação, coletando o status das estações, e reportando diversas caraterísticas e alterações no seu funcionamento. Nas redes sem fio, onde os dispositivos de baixa capacidade podem ser a maioria na comunicação envolvida, os parâmetros de suas interfaces de comunicação e das capa-

16 CAPÍTULO 1. INTRODUÇÃO 3 cidades locais são vitais. Através destas interfaces, também é possível coletar os níveis de qualidade da comunicação entre os elementos, um tipo de informação que possibilita que softwares de gerência possam ter informações sobre a presença dos elementos nas redes, identificando padrões de mobilidade, conectividade dos elementos e até mesmo casos de interferências ou destruição de componentes. Uma característica importante das aplicações de gerência é que estas podem atuar de maneira ativa sobre as interfaces das estações da rede sem fio, alterando alguns dos seus paramêtros de funcionamento, como valores de transmissão e paramêtros dos temporizadores internos. Já as aplicações de sensoreamento remotos, muito conhecidas por trabalharem com ambientes de computacionais com severas restrições de energia, necessitam dessas informações para que o funcionamento do dispositivo seja prolongado. 1.2 Tecnologias de redes sem fio: WPANs e WLANs O enfoque deste trabalho cobre duas das principais tecnologias de redes sem fio usadas na computação móvel: a Wireless Personal Area Network, WPAN [8], rede de acesso pessoal sem fio, e a Wireless Local Area Network, WLAN [9], a rede de acesso local sem fio. Os dois tipos de redes foram desenvolvidos com objetivos específicos e atendem a diferentes tipos de dispositivos. As WPANs são redes sem fio com elementos comunicantes próximos do usuário, sendo muitos deles de uso pessoal. Neste tipo de rede é possível uma integração dos dispositivos que estejam ao alcance pessoal, de forma que possam atuar diretamente uns com os outros. As principais características deste tipo de dispositivo são possuir baixa capacidade computacional, pouca capacidade de energia e serem de uma implementação mais simples. Essas características tornam proibitivo o uso dos outros padrões de comunicação sem fio que visam atender redes sem fio mais dispendiosas, como as WLANs. Um dos cenários mais comuns previstos nas WPANs são as redes estabelecidas entre os dispositivos de um usuário, como celulares, PDAs, relógios e fones de ouvido, permitindo um acesso condizente com as características destes, tanto de seus dados como os diferentes tipos de serviços oferecidos. Um PDA pode utilizar o serviço de telefone do celular para acessar a Internet através do acesso discado, enquanto utiliza o fone de ouvido para tocar os sons de músicas armazenadas e ainda sincroniza com um notebook, repassando todas as informações utilizadas, numa configuração semelhante a mostrada na figura 1.1. Cada um dos dispositivos fornece um serviço que é compatível com suas características, como por exemplo o fone de ouvido, que atende a serviços de áudio, e pode atender ao celular e a qualquer outro que gere um trâfego de aúdio. As WPANs são caracterizadas por terem menores capacidades de transmissão, menor mobilidade entre os dispositivos e menores distâncias.

17 CAPÍTULO 1. INTRODUÇÃO 4 Figura 1.1: Conjuntos de dispositivos formando WPANs As WLANs são conhecidas como a extensão das redes de acesso local sem fio. A maior motivação para a sua criação foi permitir a mobilidade de usuários das redes conhecidas como LANs, onde os usuários da rede podem se mover com certas restrições e acessar as redes fixas e as infra-estruturas existentes e sem necessidade de modificações nas instalações. Outro fator foi a possibilidade de diversos dispositivos poderem ter um acesso também irrestrito, sem a necessidade de cabos ou uma infra-estrutura de suporte, criando redes ad hoc. Em comparação com outros métodos de comunicação sem fio, como a rede celular, e por terem seu funcionamento inspirado nas LANS, as WLANs possuem aspectos únicos. Por exemplo, diferente da comunicação de uma rede celular, em que as freqüências e os canais de comunicação são alocados de acordo com a necessidade dos usuários e disponibilidade de recursos na rede, nas WLANs a comunicação de dados é feita através de troca de quadros, em um meio de comunicação sem compartilhamento prévio, também conhecido como contenção do canal. Nesta regra de comunicação, as estações necessitam alocar todo o canal de comunicação para si, antes e durante o envio dos dados. Apesar da não existência de canais previamente alocados, os dispositivos na rede WLAN tendem a ter mais flexibilidade de uso, maior as velocidades de comunicação, além de ser um tipo de rede de infra-estrutura e manutenção mais baratos. Com relação as WPANs, elas privilegiam o acesso rápido a rede, em detrimento do consumo de recursos. A figura 1.2 mostra seu posicionamento com outras tecnologias, no que se refere as suas capacidades de comunicação, taxas de transmissão e mobilidade entre os dispositivos.

18 CAPÍTULO 1. INTRODUÇÃO 5 Figura 1.2: Posicionamento das tecnologias sem fio, WPAN e WLAN 1.3 Motivação As diferentes tecnologias para a comunicação sem fio se distinguem por suas capacidades de transmissão, qualidade de recepção e a maneira como utilizam os recursos disponíveis. As interfaces sem fio possuem diversas aplicações e objetivos, indo desde comunicações celulares de longo alcance até a comunicação entre sensores. Das diversas tecnologias sem fio mais difundidas, este trabalho enfoca duas que mais se destacam, por serem financiadas por várias empresas de grande porte e terem finalidades distintas: Wi-Fi [9], e Bluetooth [10]. O Wi-Fi, do padrão IEEE , é voltado para as Wireless LANs, com alcance de até 300 metros e largura de banda de 2 a 54 Mbps. Seu funcionamento é muito semelhante ao das redes Ethernet tradicionais, sendo muito utilizado para comunicação de médio alcance, como por exemplo em escritórios e prédios. O Bluetooth foi criado inicialmente para substituir cabos de periféricos e, em seguida, foi englobado pelas definições da WPAN. Com taxas de transmissão de até 1 Mbps e alcance de 10 metros, o Bluetooth foi planejado para trabalhar com dispositivos de capacidades variadas, desde fone de ouvido até computadores pessoais, adaptando o seu método de funcionamento de acordo com os diferentes tipos de dispositivos envolvidos. A adaptabilidade das aplicações para estes dois padrões de comunicação são fontes de diversos estudos. Em [11], é analisado o desempenho de transmissão de vídeo em redes Wi-Fi e, são definidas as diretrizes para o desenvolvimento de algoritmos adaptativos dessa classe de aplicação, que são baseadas na variação de diversos parâmetros da interface de comunicação. O

19 CAPÍTULO 1. INTRODUÇÃO 6 estudo descrito em [12] analisa a degradação da taxa de transmissão nas redes Wi-Fi de acordo com a mobilidade das estações, também variando os parâmetros de funcionamento das interfaces de radio-comunicação. Para que as aplicações possam dispor do uso destes recursos, é necessária uma API de acesso a estes parametros. A própria informação das possibilidades de trabalho com esses paramêtros é vital para a aplicação, uma vez que muitos destes não estão presentes em todas as interfaces. Por contemplarem cenários complementares, os protocolos Wi-Fi e Bluetooth também podem trabalhar em conjunto, atendendo as disponibilidades da aplicação e maximizando a comunicação. Em [13] é proposta uma arquitetura de interoperabilidade entre as duas interfaces, para uso em redes domésticas. Cenários mesclados são normalmente utilizados para acompanhar a disponibilidade de uma ou outra infra-estrutura de comunicação ou para o tipo de serviço e dados que a aplicação utiliza. Estudos destes tipos de cenário envolvem o handoff vertical, no qual as pilhas de protocolos são trocadas de acordo com as necessidades da aplicação. Por exemplo, em [14] é mostrado um sistema em que as interfaces Bluetooth e Wi-Fi são utilizadas em momentos diferentes e atendem de maneira transparente as aplicações envolvidas. Um estudo de utilização em conjunto de diferentes padrões é feito em [15], no qual o uso de uma interface de infra-vermelho com Wi-Fi economiza o consumo de energia das estações. Um estudo semelhante é feito, usando as duas tecnologias, no qual as etapas de comunicação e os dados que são utilizados são diferenciados para cada aplicação [16]. Em aplicações em que os recursos de energia são muito limitados, como no caso das redes de sensores sem fio, a transmissão de dados deve ser bem avaliada. Apesar de muitas aplicações de redes de sensores necessitarem de interfaces de rede sem fio especializadas e desenvolvidas especialmente para elas, algumas outras podem utilizar estes padrões de comunicação. Neste ponto, apesar de não atenderem a todos os requisitos das aplicações de sensoreamento, o Wi-Fi e o Bluetooth têm sido avaliados como interfaces de comunicação para redes de sensores. O projeto Smart-Its [3] propõe o uso do Bluetooth em algumas aplicações de sensoreamento remoto [17], avaliando o tempo de conexão, consumo de energia e viabilidades de desenvolvimento. Variações do modo de funcionamento do IEEE são propostas na criação de novos protocolos para a camada de enlace, como por exemplo o SMAC-Sensor Medium Access Protocol [18]. Este trabalho tem como objetivo especificar, projetar, implementar e avaliar uma API para utilizar os recursos das duas tecnologias de maneira integrada, permitindo que as aplicações disponham de acesso transparente ao controle das duas interfaces sem fio. A API proposta acessa as informações de seus dispositivos e de outros que estejam comunicando, assim como possibilita a reconfiguração do dispositivo de acordo com as necessidades da aplicação. O contexto em que as aplicações trabalham deve ser considerado, pois influencia fortemente o funcionamento da rede e dos nós. Um exemplo de utilização dessa API é no roteamento de redes ad hoc e na formação de topologias de redes sem fio. Estes dois problemas são importantes em redes, nos quais os nós

20 CAPÍTULO 1. INTRODUÇÃO 7 comunicam entre si sem o uso de uma infra-estrutura de apoio, como estações base, ou coordenadores de celulas de comunicação. Vários algoritmos de roteamento ad hoc [19, 20, 21, 22] foram desenvolvidos com o objetivo de coordenar a formação destas redes, atendendo a demandas de aplicações e funcionando de maneira transparente. O desenvolvimento desse tipo de algoritmo deve levar em consideração o tipo de interface que utiliza. Normalmente o desenvolvimento de um algoritmo de roteamento não leva em consideração certas funcionalidades e recursos presentes nas interfaces sem fio, desenvolvidas exatamente para lidar com as dificuldades desse meio. No caso do Bluetooth, os algoritmos de roteamento ad hoc são específicos para a formação de um tipo de rede denominado scatternet, enquanto que no Wi-Fi apesar da formação ser mais livre, algumas características da rede possibilitam alterações no funcionamento dos algoritmos citados. A formação das scatternets e algoritmos que façam isso de forma eficiente é uma área de pesquisa muito abordada em diversos estudos [23, 24, 25, 26, 27, 28]. Devido a constante perda e renovação de conexões, os algoritmos ad hoc precisam ter a noção de como os nós estão atuando na rede e também informações de suas próprias capacidades. O interfaceamento com a camada MAC é vital para o melhor funcionamento dos algoritmos. Através da API desenvolvida neste trabalho, as aplicações podem acessar as informações sobre o uso do dispositivo local e consumo de recursos e gerenciar a qualidade da transmissão e as conexões. Esta API tem como objetivo possibilitar a integração das duas tecnologias, definindo um gerenciamento comum entre elas. Este trabalho descreve os principais pontos para a criação dessa API. Para o estudo do funcionamento das interfaces e o desenvolvimento da API, foi utilizado o sistema operacional Linux, com o kernel na versão A escolha do Linux se deve à facilidade de acesso ao código de funcionamento dos drivers das interfaces e a possibilidade de alterações e desenvolvimento. As características de configuração e portabilidade do Linux também permitem que a API seja utilizada em dispositivos como notebooks, Palms e outros que suportem versões do Linux Embutido. Informações sobre a rede são mantidas em uma base de dados usando XML [29], que possui uma descrição dos tipos de tecnologias usadas na camada de acesso ao meio e as principais distinções entre elas. Nesta base também são apontados os detalhes importantes sobre o comportamento dos dispositivos e da rede e como eles contribuem para as aplicações envolvidas. 1.4 Trabalhos Relacionados O estudo e criação de APIs voltadas para a comunicação sem fio têm crescido recentemente devido a propostas de protocolos de rotamento para redes ad hoc e aplicações em sistemas embutidos e de gerência. Em [30], é descrito um ambiente de teste de algorimos de roteamento ad hoc, chamado APE

21 CAPÍTULO 1. INTRODUÇÃO 8 - Ad Hoc Protocol Evaluation testbed, utilizando o sistema operacional Linux. Uma API para a interface Wi-Fi é fornecida como ferramenta de coleta de informações de conectividade na rede ad hoc formada. Com estas informações, mais as estatísticas de perdas de pacotes e atrasos de transmissão, os protocolos ad hoc podem ter informações mais reais com relação às conexões envolvidas. Em [31], é proposta uma API de comunicação, que estende algumas funcionalidades do APE, sendo possível a implementação de suas funcionalidades nos sistemas operacionais Windows e Windows CE. A proposta deste trabalho é a mais genérica possível, possibilitando uma programação multiplataforma, sem extrair muitas informações das interfaces de comunicação sem fio. Em [32], foi desenvolvida uma API integrada para o Bluetooth, definida BlipNet, no qual um elemento definido como BlipServer, está conectado a rede Ethernet e a diversos elementos BlipNodes. Estes elementos possuem interfaces Bluetooth e coletam as informações sobre os elementos que desejam conectar a eles. O BlipServer coleta informações sobre estes dispositivos e fornece uma API de programação, usando J2ME, para que as aplicações controlem as conexões vindas pelos BlipNodes. Dessa maneira as aplicações podem coordenar o acesso destes elementos a rede fixa, fornecendo os serviços da Internet para esses dispositivos, de acordo com suas características. Esta implementação foi feita tanto para Linux quanto para Windows. 1.5 Organização do Documento O restante da dissertação está organizado conforme a descrição a seguir. No Capítulo 2 são apresentados os princípios básicos e a estrutura de funcionamento de uma interface para redes sem fio, sendo o ponto de partida para o projeto da API. É mostrada uma descrição geral para interfaces deste tipo, onde são levantados os requisitos básicos e as características de funcionamento. São enumerados os tipos de camada física e os detalhes da camada de enlance, mostrando as diferenças e as possíveis utilizações desse tipo de interface. Também são mostradas as informações relevantes para as aplicações que utilizam essa interface comunicação. Nos Capítulos 3 e 4 são apresentados, respectivamente, o Wi-Fi e o Bluetooth, seus princípios de funcionamento básicos e suas principais características. São identificados os diversos padrões de comunicações envolvidos e as informações relevantes para a comunicação das WLANs e das WPANs. Também são identificados os modos de funcionamento e as técnicas de acesso as suas informações no sistema Operacional Linux e os pontos básicos para a sua programação. No Capítulo 5 é apresentada a arquitetura da API e as funções de acesso as interfaces. O

22 CAPÍTULO 1. INTRODUÇÃO 9 projeto é construído baseado na descrição do funcionamento básico das duas interfaces e a maneira de acesso aos seus dados. No Capítulo 6 é apresentada uma aplicação que efetua alguns testes sobre as funcionalidades fornecidas pela API. Por fim, no Capítulo 7 são apresentadas as conclusões e as descrições de possíveis trabalhos futuros.

23 Capítulo 2 Interfaces de redes sem fio Na descrição do modelo OSI da ISO [33], a interface para a comunicação sem fio encontra se nas duas primeiras camadas, a camada física e a de enlace, divididas, respectivamente, no modem de rádio transmissão, responsável por enviar e receber os dados, e o controlador de acesso ao meio, que coordena o tráfego de dados. A figura 2.1 mostra como é a estrutura de uma interface de comunicação sem fio e sua visão interna. Figura 2.1: Diagrama Funcional da interface sem fio As principais características do modem de rádio são o controle da freqüência de transmissão, a taxa de sinalização, a modulação e a potência de transmissão. A parte digital, responsável pelo controle dessas funcionalidades, se encontra na Bandabase, que funciona como a interface com a camada de enlace, fornecendo essas informações para o controlador de acesso ao meio. No modem, encontra-se a parte analógica da comunicação, onde é feita a modulação dos dados para a transmissão. 10

24 CAPÍTULO 2. INTERFACES DE REDES SEM FIO 11 A camada de controle de acesso ao meio, MAC, é responsável por executar o protocolo de acesso ao meio. Ela coordena o espaço de memória limitado para os buffers e os dados de configuração e estatísticas, é responsável pelo formato e definição dos quadros, pelo controle de acesso ao meio e algumas características de gerenciamento de rede. O host interface provê a comunicação entre o software, normalmente o driver da placa, com o MAC. 2.1 Camada Física A camada física das interfaces sem fio podem utilizar tanto a comunicação através de radiofreqüência, como dispositivos óticos, como comunicação em infra-vermelho. Este trabalho é focado na primeira classe. As interfaces de rádio utilizam para a comunicação a banda conhecida como ISM (Industrial, Scientific and Medical), sendo utilizadas as faixas de freqüência de 900 MHz a 2.4GHz. Essa banda é liberada para esse tipo de tráfego, sendo não licenciadas para o uso. Mas as empresas que produzem produtos para elas estão sobre certas regras, que determinam limites de potências de transmissão e técnicas de envio de dados. A técnica definida para o uso é o Spread Spectrum, que possui uma maior confiabiliadade na transmissão. O Spread Spectrum utiliza mais largura de banda para transmitir do que é realmente necessário, reduzindo o impacto das interferências localizadas. Na banda de 2.4GHz, a regulamentação especifica que os sistemas devem utilizar dois tipos de técnicas de transmissão: Direct Sequence e Frequency Hopping Direct Sequence O princípio de funcionamento do Direct Sequence consiste em espalhar o sinal sobre uma banda de transmissão, multiplexando o sinal com uma assinatura de identificação. Cada bit é modulado por um código que cobre grande parte do canal de transmissão. Para uma taxa de 2Mb/s, normalmente utilizada na WLAN, o sinal é espalhado sobre 22MHz da banda. Dessa maneira, interferências em determinados canais são minimizadas, e a demodulação consegue restaurar os sinais recebidos. O Direct Sequence permite uma modulação rápida, mas a implementação do seu rádio modem é mais complicada. Em contrapartida, o uso de um canal fixo de transmissão faz com que as camadas superiores não precisem gerenciar a utilização desses canais, como acontece com o Frequency Hopping. Por usar canais muito largos, os sistemas desse tipo utilizam poucos canais presentes na banda, (no caso do Wi-Fi apenas três, em freqüências totalmente diferentes). Esses canais são totalmente separados, de forma que não geram interferência uns com os outros.

25 CAPÍTULO 2. INTERFACES DE REDES SEM FIO Frequency Hopping O Frequency Hopping (FH) utiliza um conjunto de canais de largura pequena e transmite a cada momento em um deles, seguindo uma seqüência. No caso da banda ISM de 2.4GHz, ela é dividida em 79 canais de 1 MHz. Periodicamente, num intervalo entre 20 a 400 ms, o sistema efetua um salto para um canal diferente, a partir de um padrão pré-determinado, evitando assim as interferências, pois permanece pouco tempo no mesmo canal. A principal vantagem desse funcionamento, com relação ao Direct Sequence é que uma interferência localizada em determinado canal de freqüência é prontamente evitado pela utilização de outros canais livres. Assim, diversos sistemas de FH podem comunicar sem se sobrepor, mesmo estando a um curto alcance de transmissão. O Bluetooth permite que até 79 elementos possam se comunicar diretamente, a uma curta distância, e sem degradar a qualidade da comunicação, enquanto que no DS, a taxa de transmissão degrada devido às colisões. Quando a comunicação chega ao limite, as colisões começam acontecer, porque diversos sistemas utilizam os mesmos canais ao mesmo tempo interferindo uns com os outros. Estes casos diminuem consideravelmente a vazão do sistema, pois a falha não é recuperada. Se a recepção do sinal tiver muito ruído em diferentes canais, o modem que utiliza o FH não tem a capacidade de reconstrução do sinal como no DS. Existem diversos casos de interferência entre os dois padrões. Alguns estudos analisam a interferência entre o Wi-Fi e o Bluetooth [34], em cenários onde duas ou mais redes Bluetooth interferem fortemente na comunicação de elementos Wi-Fi. E outros em que uma certa quantidade de elementos Wi-Fi comunicam em presença de uma piconet interferindo na comunicação. Uma das soluções encontradas, para evitar a interferência entre os dois padrões [8], é o uso de um método FH adaptativo ao ruído, onde os canais mais ruidosos são descartados das seqüências de saltos. Outra desvantagem, é o nível de complexidade que o uso do FH impõe a camada de enlace. O procedimento de localização de busca da rede no momento da inicialização, a sincronização entre os nós e a gerência dos saltos de freqüência. Essa complexidade influência diretamente no desempenho, tanto devido ao overhead desse controle, quanto ao tempo perdido a cada salto de freqüência. O modem que trabalha com o FH é relativamente mais simples que o que usa o DS, sendo seu custo de implementação mais barato, compensando o custo de uma camada de enlace mais robusta.

26 CAPÍTULO 2. INTERFACES DE REDES SEM FIO Modulação Para a modulação da transmissão, existe uma troca entre a velocidade de modulação e a qualidade do sinal recebido. Quanto mais rápido for o sistema de modulação, mais forte deve ser o sinal recebido. Para compensar essas flutuações, os sistemas normalmente trabalham com as duas abordagens mescladas, trocando para taxas menores caso o sinal recebido tenha um nível mais fraco Propagação A propagação do sinal é influenciada por diversos fatores, desde absorção do sinal por obstáculos até interferências por diversos tipos de ruído. Dessa maneira é díficil prever, com precisão, o comportamento das transmissões em diferentes cenários. Não existe um padrão, ou método conhecido para medir o alcance da propagação de maneira correta. As melhores métricas para definir a qualidade da propagação do sinal são relativas a potência de transmissão e a sensibilidade do sinal recebido. A potência de transmissão define a força das emissões dos sinais. Valores maiores implicam em sinais que são mais fortes que a interferência, apesar de consumirem significativamente mais bateria. E sinais de grande potência podem interferir em outros canais de freqüência próximos interferindo na sua comunicação. A sensibilidade é a medida do sinal mais fraco que pode ser corretamente recebido pelo modem. Ele indica o desempenho da parte de recepção do modem, e quanto menor o valor, melhor a qualidade do receptor. Com esses dois valores é possível calcular a atenuação do sinal, medida a cada recepção dos pacotes, sendo essa a diferença do valor do sinal transmitido pelo recebido. Outro fator diretamente relacionado com a recepção é a razão Signal to Noise Ratio (SNR), que define a diferença da potência de um sinal e um ruído, no momento da recepção. Dessa forma valores pequenos de SNR significam uma melhor sensibilidade a recepção. 2.2 Camada de Enlace Presentes na camada de enlace, encontram-se os protocolos de acesso ao meio. Eles são implementados pelo módulo de controle de acesso ao meio e controlam todo o funcionamento da interface de rede. Os protocolos de acesso ao meio, para redes sem fio, foram desenvolvidos visando cobrir os requisitos de diferentes tipos de aplicações e dispositivos. Desta forma, cada

27 CAPÍTULO 2. INTERFACES DE REDES SEM FIO 14 protocolo possui características próprias que levam em consideração os diversos fatores das redes sem fio de maneira diferenciada Caracterização dos Protocolos da Camada de Acesso ao Meio Em [35], é feita uma caracterização qualitativa de diversos protocolos da camada de acesso ao meio, explorando os pontos em comum entre eles. A primeira classificação é com relação as arquiteturas que podem ser formadas, e em seguida com relação aos modos de operação e acesso ao meio sem fio. Tal metologia foi aplicada na comparação das duas camadas. Basicamente, existem dois tipos de arquiteturas para as redes sem fio: distribuídas e centralizadas. As redes sem fio distribuídas, também conhecidas como redes ad hoc, não possuem nenhum tipo de administração central e, portanto, todos os terminais podem se comunicar diretamente entre si. Sendo assim, como não existe nenhum nó especial para traduzir transmissões de uma freqüência para outra, qualquer transmissão ou recepção de dados devem estar na mesma banda de freqüência. Por este motivo, todas redes sem fio distribuídas operam com Time Division Duplex, (TDD). As redes sem fio centralizadas, também conhecidas como redes last-hop, são geralmente extensões das redes cabeadas. Estas redes possuem um estação base (EB) que atua como uma interface de comunicação entre a rede cabeada e a rede sem fio. A existência desta EB permite uma grande flexibilidade no projeto de protocolos MAC, uma vez que o papel de controlar o acesso ao meio pode ser totalmente realizado pela EB. Uma primeira caracterização destes protocolos é descrita a seguir: Acesso aleatório: os nós fazem a contenção na hora de efetuar o acesso ao meio. Quando apenas um nó tenta efetuar a transmissão, ela ocorre com sucesso. Mas no momento em que mais de um tenta acessar o meio, ocorre uma colisão e os protocolos de acesso aleatório tentam resolver este problema com um conjunto de regras de acesso ao meio ordenado; Acesso garantido: neste caso os nós acessam o meio de maneira ordenada, usualmente em round robin. Existem duas maneiras de efetuar essa transmissão: a primeira é através da configuração mestre-escravo, no qual o mestre nomeia os nós que irão transmitir, e estes retornam os dados necessários. A segunda é através de tokens, na qual somente a estação possuidora do token efetua a transmissão; Acesso híbrido: é feita uma mistura das duas técnicas. Um nó efetua um processo de requisição para transmissão de dados. Este processo é feito de maneira aleatória. Em seguida, o outro analisa as capacidades necessárias vindas na requisição, retornando uma

28 CAPÍTULO 2. INTERFACES DE REDES SEM FIO 15 confirmação para iniciar a transmissão de dados. Neste momento, todos os recursos necessários a essa transmissão já foram reservados pelo transmissor, sendo liberados de acordo com padrões pré-determinados de QoS ou mesmo de maneira aleatória Descrição dos protocolos de acesso ao meio O funcionamento de protocolos da camada de acesso ao meio em redes sem fio, seja através de transmissão via rádio ou infravemelho, deve considerar diversos fatores que as diferenciam das redes fixas. Abaixo segue uma breve descrição dessas diferenças: Operação em Half-duplex: quando um nó transmite os dados, uma fração da energia do sinal interfere com o sistema de recepção, efeito denominado auto-interferência. Isto ocorre porque os níveis de energia para transmissão e recepção podem diferir em diversas ordens de magnitude. A transmissão do sinal é tipicamente muito maior do que o sinal recebido, impossibilitando efetuar a recepção do sinal no momento da transmissão. Dessa forma fica impossivel a aplicação do Full Duplex, caso a freqüência de recepção e transmissão seja a mesma; Canal variante no tempo: os sinais de rádio propagam de acordo com três mecanismos: reflexão, difração e dispersão. O sinal recebido pelo nó é a superposição de diferentes e atenuadas versões do sinal transmitido, muitas vezes refletidas em diversos obstáculos. Como resultado, a potência do sinal recebido varia como função do tempo. Este fenômeno é chamado de propagação multipath. Para verificar o canal normalmente é usada uma técnica de handshaking que verifica a qualidade do enlace. Quando dois nós querem comunicar entre si, eles trocam pequenas mensagens para testar o canal e, em caso de sucesso, o processo normal de comunicação ocorre; Erros em rajada: Como conseqüência da variação do canal no tempo e da variação da energia do sinal, os erros surgem em rajadas devido ao distanciamento dos nós, uma vez que a qualidade do canal entre eles decai. A perda de pacotes devido a rajadas de erros pode ser minimizada através do uso das seguintes técnicas: Pacotes pequenos Códigos FEC para correção de erros Métodos de retransmissão sendo este último método o mais usado, através de quadros de confirmação usados para detectar os erros; Detecção do canal: A sensibilidade do canal de transmissão é uma função da posição do nó em relação ao transmissor. Esta característica acarreta as seguintes dificuldades no momento da transmissão:

29 CAPÍTULO 2. INTERFACES DE REDES SEM FIO 16 Nós escondidos(hidden node): é um nó que se encontra mais próximo do nó de destino, mas fora do alcance do nó de origem. Dessa forma esse terceiro elemento não percebe a transmissão que está ocorrendo e começa a transmitir, interferindo no processo; Nós expostos: neste caso o nó se encontra próximo do nó transmissor, mas fora do alcance do destino. Assim o terceiro elemento detecta o inicio da transmissão, mas não efetua a sua transmissão, apesar de não atrapalhar na recepção do primeiro. Dessa forma a banda fica subutilizada; Captura: a captura ocorre quando um receptor recebe claramente a transmissão simultânea de dois nós, e a captura do sinal ocorre no que possuir maior potencia. Os protocolos da camada MAC devem ser ajustados para controlar essa percepção do sinal. Além destes fatores, os protocolos MAC geralmente tratam também de outros aspectos, como segurança e gerenciamento de energia, de forma a garantir que os serviços ofertados pelos sistemas sem fio sejam tão confiáveis e eficientes quantos os ofertados pelos sistemas cabeados Comparação de desempenho entre diferentes protocolos MAC Uma vez que os protocolos da camada MAC sem fio são desenvolvidos com diferentes objetivos e voltados para diferentes aplicações, uma comparação dos pontos comuns é necessária para descrevê-los em um mesmo grupo. E suas diferentes implementações implicam em comportamentos diferenciados para cada aplicação. Abaixo é feita uma enumeração dessas métricas: Atraso: o atraso é definido como o tempo médio dispendido por um quadro na fila da camada MAC, a partir do momento que é enfileirado até a sua transmissão completa. Suas características são devidas ao tráfego e ao protocolo utilizado. Dessa forma a comparação do atraso deve ser feita sob as mesmas condições de tráfego. Vazão: usado para medir a fração do canal usada para transmissão de dados. O objetivo do protocolo da camada MAC é maximizar a taxa de transferência enquanto minimiza o atraso do acesso, produzindo um valor de vazão aceitável para as aplicações Se o tamanho médio de uma mensagem é de P bits, o tempo de transmissão de cada pacote é T segundos e C bps é a capacidade do canal, a vazão é dada por P/TC; Justiça (Fairness): o protocolo MAC deve apresentar condições de preferência de escolha de canal no momento que mais de um nó decide transmitir no canal, caso contrário ocorre o mau uso da banda passante. Quando o tráfego multimídia é suportado, ele deve apresentar uma política diferenciada de acesso;

30 CAPÍTULO 2. INTERFACES DE REDES SEM FIO 17 Estabilidade: devido ao overhead no protocolo, o sistema deve ser habilitado para controlar cargas que são muito menores que a capacidade de transmissão do canal; Robustez: o meio de comunicação sem fio é muito propenso a erros, e o sinal de transmissão é muito variante, de forma que um protocolo da camada MAC deve ter políticas de tratamento destes comportamentos instáveis; Consumo de energia: a maioria dos dispositivos sem fio possuem capacidade de armazenamento de energia limitada, os protocolos da camada MAC tem o suporte a diferentes métodos de economia de energia, sendo que eles podem influenciar nas características do tráfego gerado; Suporte para dados multimídia: este tipo de suporte é caracterizado por mecanismos que tratam os pacotes de várias aplicações, a partir de restrições associados ao atraso de transmissão. Duas políticas comuns nestes casos são a prioridades de acesso e o escalonamento. As prioridades de acesso proveêm um serviço diferenciado permitindo que certos nós tenham acesso aos serviços de rede com maior probabilidade do que outros. O escalonamento efetua o controle do acesso ao meio de maneira ordenada, alocando os recursos preferencialmente para os pacotes multimídia. 2.3 Informações da camada de enlace Como mostrado neste capítulo, as funções de transmissão e recepção do controle de acesso ao meio comunicam diretamente com a interface de rádio. Todo o controle feito pelo protocolo MAC ao meio sem fio fornece o ferramental para o gerencimento e configuração desse tipo de informação, de forma que diminui a abstração existente entre as camadas de software. O primeiro ponto é com relação às informações locais, como a identificação do hardware do dispositivo, as freqüências de funcionamento, capacidades de armazenamento, entre outros. Neste caso, aplicações com utilidade de gerência e segurança podem dispor de todos os detalhes dos elementos envolvidos na conexão e verificar se a informação é coerente. Informações detalhadas sobre o padrão de comunicação utilizado e os detalhes do fabricante da placa são relevates para aplicações de sistemas embutidos e de alto desempenho. Em camadas de acesso ao meio onde a qualidade de serviço é uma funcionalidade intrinseca, a aplicação pode trabalhar controlar o funcionamento deste de maneira direta, e programar o tipo de acesso. Através da informação da qualidade do canal de comunicação, a aplicação pode estipular o comportamento da rede e dos seus elementos vizinhos. Variações bruscas na qualidade do sinal podem significar interferências entre os elementos ou então o distanciamento entre eles. Com essa medida, associada a cada elemento que o nó estiver trocando mensagem, é possível que a aplicação estipule um nível de stress em cada conexão, trabalhando e prevendo a sua

31 CAPÍTULO 2. INTERFACES DE REDES SEM FIO 18 perda. Normalmente as camadas MAC já fornecem o controle de erro de transmissão, mas existem situações, como de interferência entre diferentes tecnologias, mobilidade em redes ad hoc, desligamento de determinados elementos, que essa informação é vital para a aplicação Contexto de Rede A informação obtida através do contexto de rede é a descrição que as aplicações e algoritmos possuem sobre o ambiente de rede em que estão executando, relativas a comunicação direta com seus vizinhos. No caso da comunicação sem fio, são os dados relativos as constantes mudanças que ocorrem durante a comunicação, abrangendo os cenários das redes infra-estruturadas e das ad hoc. Como descrito em [30], onde foi desenvolvido uma plataforma de testes de algoritmos de roteamento ad hoc, a avaliação do funcionamento de aplicações e algoritmos nesse ambiente deve identificar as métricas quantitativas e qualitativas, sendo que estas são fortemente influenciadas pelo contexto de rede. Este pode ser descrito a partir de alguns parâmetros, definidos em [36]: Tamanho da rede. Medida em número de elementos. Mobilidade. Esse fator pode ter influência direta na mudança da topologia e na conectividade dos elementos da rede Conectividade da rede. Mede a densidade da rede, baseada na quantidade média de vizinhos por nó. Capacidade do canal. bits/segundo. A capacidade de transmissão do canal sem fio, medida em As camadas de enlace sem fio fornecem o ferramental para se extrair os dados necessários para estes parâmetros, a partir das medidas do nível de sinal ruído, os níveis de potência de transmissão e a recepção dos pacotes. Estes possuem uma influência diretamente na qualidade da comunicação. Através dessa informação da qualidade, mais a quantidade de perdas e retransmissões de pacotes, permitem que a aplicação determine se o canal é viável, e possa tomar providências, como uma fragmentação dos pacotes, aumento da sensibilidade de recepção, ou se for possível, variações na potência de transmissão Mobilidade e Conectividade A mobilidade dos elementos na rede pode ser interpretada através de determinados padrões nas flutuações do sinal recebido em cada nó. Mas essas alterações nos valores do sinal recebido

32 CAPÍTULO 2. INTERFACES DE REDES SEM FIO 19 podem ser devido a interferências, absorção de sinais por obstáculos, e não necessariamente ligada a mudança de posição com relação ao transmissor. Assim é necessário uma métrica para determinar se os padrões de flutuações descrevem aproximadamente a mobilidade dos elementos. Cada tipo de rede, WLAN e WPAN, utiliza um tipo próprio de amostragem, sendo necessário soluções especificas para cada uma. No caso das WLANs, alguns estudos de mobilidades no cenário ad hoc tem sido feitos, principalmente para a avaliação de algoritmos de roteamento. Em [37], é desenvolvido um modelo de mobilidade adhoc, onde um estudo probabilístico define padrão de movimentação dos elementos numa rede Wi-Fi. Em [30], essa mobilidade é dada pelas flutuações dos valores de SNR e qualidade do sinal através de um determinado tempo. A razão entre a distância e a atenuação do sinal é dada pela equação 2.1: D j (node j ) = xQ j (node j ) 33 (2.1) onde Q é o valor da qualidade do sinal em db, D é o valor da distância em metros, e node j o identificador do nó que está transmitindo. A partir de diversas amostragens em determinados intervalos de tempo, é possível determinar as variações e o comportamento do nó, se está ocorrendo um distanciamento ou aproximação deste. Com essa informação é possível estipular o posicionamento relativo dos elementos na rede, através de determinadas referências, mas este posicionamento pode ser afetado pela presença de obstáculos em determinados pontos. No caso do Bluetooth, alguns trabalhos [38, 39, 40] estudam a possibilidade de criação de sistemas de posicionamento e descrição de mobilidades a partir das medidas da qualidade do sinal. Apesar de trabalhar com uma baixa resolução da amostragem do sinal, de 8 bits, a delimitação das regiões é útil para determinar as melhores fontes de comunicação e estipular uma localização aproximada. A princípio, a conectividade de um elemento na rede é dada pela quantidade de elementos com que ele comunica diretamente. Considerando a topologia de uma rede fixa como um grafo, seria a quantidade de vértices que saem de um nó. Numa rede sem fio, a comunicação ocorre somente se os elementos estão no alcance de transmissão uns dos outros, e a camada de enlace permite uma comunicação entre eles. Dessa forma, a conectividade de um elemento na rede é dada pelo número de elementos que estão no seu alcance de transmissão. Mas em alguns casos, a rede sem fio contempla a mobilidade, o que acaba interferindo nos valores de conectividade, fazendo com que estes sejam dinâmicos. Para uma primeira análise da conectividade, a mobilidade não deve ser considerada. Dessa forma, a conectividade pode ser considerada nesses três casos: o melhor, onde valor da conectividade é máximo quando todos os elementos estão próximos o suficiente uns dos outros, ou seja comunicação com os outros n1 nós da rede; o pior, onde apenas um elemento no alcance de comunicação; e o caso médio, onde é

33 CAPÍTULO 2. INTERFACES DE REDES SEM FIO 20 necessário estabelecer um padrão de mobilidade e distribuição dos elementos para que esta seja descrita como uma função de probabilidade. Em cenários onde ocorre a mobilidade dos nós, a probabilidade do nó se encontrar dentro da área de alcance varia com o tempo. A conectividade em uma rede propicia uma visão local das conexões envolvidas, permitindo uma visão qualitativa de suas conectividade com os elementos vizinhos. As medidas da qualidade do sinal descrevem a conectividade do nó com relação aos seus vizinhos, sendo possível determinar se este elemento esta se afastando da rede, ou perdendo a conexão devido a alguma fonte de ruído próxima. Assim se um nó tem as informações de mobilidade de seus vizinhos, é possível descrever o comportamento da conectividade de cada um.

34 Capítulo 3 Wi-Fi O grupo de trabalho do IEEE [9] é responsável pelo desenvolvimento de um padrão de comunicação de WLAN (Wireless Local Area Network), também conhecido como Wi-Fi.O padrão IEEE foi criado em 1989 e no final da década de 90 começou a se destacar no mercado. Diversas empresas se associaram na produção das placas de rede, criando a designação Wi-Fi [41], dada aos produtos que implementam o IEEE b, sendo este uma extensão do padrão original, com capacidade de transmissão de 11Mbps. O principal objetivo desse grupo é homologar a conformidade da implementação destas interfaces com a especificação criada pelo IEEE. 3.1 Descrição A especificação do IEEE define uma camada MAC e diversas camadas físicas, possibilitando uma variedade de características de acesso ao meio. Basicamente ele trabalha em duas configurações, como mostrado na figura 3.1: Independente (ad hoc): as estações comunicam diretamente umas com as outras, sem infra-estrutura de suporte, formando as redes ad hoc. Neste modo eles efetuam a comunicação ponto a ponto com os elementos que se encontram mais próximos do alcance da antena. Infra-estruturada: as estações comunicam via pontos de acesso, os quais são parte de um sistema de distribuição de comunicação, cobrindo uma área maior. Os pontos de acesso coordenam o funcionamento e a comunicação com as estações, controlando a autenticação, o acesso e a troca de acessos. 21

35 CAPÍTULO 3. WI-FI 22 A comunicação básica de diversos nós é denominada Basic Service Set, (BSS), onde é definido que um determinado grupo de estações podem comunicar umas com as outras. A comunicação independente é definida como Independent Basic Service Set, (IBSS) e a infraestruturada é Infrastructure BSS. A interconexão de um ou mais BSS, através de um outro meio, como a rede fixa forma o Extented Service Set, (ESS). Cada BSS é identificada pelo seu número de endereço, definido como network id (NWID). Figura 3.1: Modos de funcionamento do IEEE Infra-estruturado e ad hoc O protocolo cobre a camada de enlace e a camada física, sendo definida uma camada de enlace sobre três camadas físicas, como pode ser visto na figura 3.2 Figura 3.2: Organização da pilha do IEEE Camada Física Para a comunicação são definidos três tipos de modem de rádio, dois usando rádio transmissão, através do spread spectrum, sobre a banda ISM, e um usando infravermelho. A seguir, uma breve descrição dos três:

36 CAPÍTULO 3. WI-FI 23 Frequency Hop Spread Spectrum (FHSS): Trabalha sobre a banda ISM, na faixa de comunicação de 2400 a GHz, sobre 79 canais de frequência com largura de banda de 1 Mhz, permitindo até 26 redes sobrepostas. A modulação utilizada é a Gaussianshaped Frequency Shift Keying, (GFSK) níveis 2 e 4, onde atinge taxas de transmissão de 1 e 2Mbps. Devido a modulação GF SK nível 4 a taxa de transmissão é maior, mas em contrapartida é mais sensível a erros; Direct Sequence Spread Spectrum (DSSS): Também sobre a banda ISM, em múltiplos canais, de 2.4 a GHz, com uma separação entre os canais de 30MHz. Essa configuração permite até três redes comunicando em proximidade umas com as outras sem interferências maiores. Ele atinge a taxa de transmissão de 1 e 2Mbps, utilizando a modulação DQPSK e DBPSK e a potência de transmissão é de 1000mW, com possibilidades de ajuste até valores de 100mW. Uma extensão a esse padrão, chamado de High-Rate Direct Sequence Spread Spectrum, (HR/DSSS), que utiliza o Complementary Code Keying(CCK), permite valores de conexões que vão de 5.5 a 11 Mbps. Essa extensão também é conhecida como b, e é a mais utilizada atualmente no mercado; Infravermelho (IR): Infravermelho difuso, usando transmissão de 1 e 2Mbps. A modulação é por posição de pulso (PPM) Pulse Position Modulation, 16-PPM e 4-PPM. Como descrito na seção 2.1, a deteriorização da comunicação devido ao aumento da distância ou a diversos fatores de ruído e absorção de sinal, as modulações utilizadas podem variar para condições mais robustas, necessárias para sinais de baixa intensidade, mas implicando conseqüentemente numa diminuição da taxa de transmissão. Assim, interfaces que implementam o modo de funcionamento do IEEE b, variam suas taxas de transmissão de 11Mbps, nas melhores condições de transmissão, a 1Mbps, onde o sinal recebido é consideravelmente de baixa intensidade. Um fator a ser levado em conta é que o desempenho da rede como um todo é fortemente influenciado pela posicionamento das estações, e como será mostrado adiante, o IEEE não prevê a diferenciação de serviços. Um estudo da degradação da taxa de transmissão e da diferenciação de serviços é feito em [12]. De acordo com esse trabalho, a diminuição da taxa de transmissão em função da distância pode levar a perdas de informações de serviços de alta prioridade, sem nenhum tipo de distinção entre os tráfegos utilizados. Este é um ponto que será ressaltado novamente, mais ao final do capítulo. 3.3 Camada de Enlace A camada de acesso ao meio descrita pelo possui diversas funcionalidades de fragmentação de quadros, retransmissão e controle de confirmação. Ela provê dois mecanismos

37 CAPÍTULO 3. WI-FI 24 de acesso básico, o Distributed Coordination Function, (DCF), onde existe o compartilhamento eficiente do meio de acesso usando contenção do canal, e o, Point Coordination Function, (PCF), um método de acesso de polling, onde um coordenador seleciona qual elemento tem o direito de transmissão. O modo de uso do PCF é opcional e estabelece um método de acesso ao meio sem contenção Procedimento de Acesso ao Meio O procedimento de acesso ao meio usando o DCF é conhecido como o Carrier Sense Multiple Access with Collision Avoidance,(CSMA/CA), [42]. O CSMA também é utilizado na Ethernet, definida pelo padrão IEEE 802.3, onde a estação que deseja mandar alguma mensagem detecta se o meio está livre, senão espera por um tempo definido, para novamente tentar efetuar a transmissão. No caso da Ethernet, o CSMA é usado com um sistema de detecção de colisão, Collision Detection, formando o CSMA/CD. A detecção de colisão é inviável na transmissão de rádio, pois a transmissão influência na recepção do sinal, e nem todas as estações podem ouvir umas as outras. No caso do CSMA/CA, quando vai começar a transmitir, a estação escuta o canal para detectar se existe alguma outra estação transmitindo. Se o meio está sem desocupado por um tempo maior que o DCF InterFrame Space, (DIFS), a estação começa a transmitir. Caso contrário, a transmissão é atrasada até que ele esteja liberado. Este controle é feito através de um temporizador denominado backoff timer, sendo iniciado com um intervalo aleatório, definido como backoff interval. Ele é decrementado a medida que a estação percebe que o canal está liberado, e quando estiver zerado, ela transmite. Se ocorrer alguma transmissão durante o descrescimo, este é parado e reativado se o canal estiver liberado de novo após um tempo maior que o DIFS. A variação dos tempos utilizados no intervalos entre os frames muda o nível de prioridade da transmissão, dando preferência para alguns tipos de trafego. O DIFS, usado no DCF, é o tempo mínimo para a transmissão de serviços baseados em conteção, onde as estações têm acesso livre após o seu término. Os outros tempos são o Short InterFrame Space (SIFS), para as transmissões de alta prioridade como os quadros de ack e a seqüência RTS/CTS, o Point-coordination Function Interframe Space, (PIFS), usado no modo PCF durante a operação de liberação de contenção, e o Extended Interframe Space, (EIFS), o maior de todos e usado apenas quando os frames recebidos pelo MAC possuem algum tipo de erro, permitindo um tempo para a correção destes. A figura 3.3 mostra o esquema temporal dos intervalos. O DCF adota uma técnica chamada slotted binary exponential backoff. A estação pode transmitir apenas no inicio de cada slot de tempo, cujo valor é igual ao tempo necessário para qualquer estação detectar alguma transmissão no meio. O backoff timer é escolhido uniforme-

38 CAPÍTULO 3. WI-FI 25 Figura 3.3: CSMA/CA mente no intervalo (0,CW-1) definido como Backoff Window (Contention Window). Na primeira tentativa de transmissão, CW = CW min, e é dobrado a cada tentativa até um valor CW max. Este algoritmo reduz a probabilidade de colisões e mantém a estabilidade da transmissão quando a carga de transmissão está muito alta Retransmissão Cada quadro enviado possui dois contadores associado a ele, sendo essa associação em função do seu tamanho. Caso o quadro seja menor que um limite determinado, chamado de RTS Threshold, o contador short retry count é associado, caso contrário é o long retry count. Quando a transmissão falha, os contadores são incrementados, e o quadro retransmitido. Assim que os contadores atingem um determinado limite, o quadro é considerado descartado e a camada superior é notificada da perda. Caso chegue alguma confirmação, os contadores são resetados. Para cada contador existe um caso especifico em que eles são zerados. No short retry quando ocorre a recepção de um quadro CTS, e no long retry com a chegada da confirmação de um quadro maior que o RTS Threshold. O uso de dois contadores é devido ao ajuste de desempenho da rede, como será descrito mais adiante Nó Escondido O problema da impossibilidade dos nós não ouvirem uns aos outros, o hidden node, surge do fato que a atenuação entre alguns elementos é forte o suficiente para diminuir a comunicação en-

39 CAPÍTULO 3. WI-FI 26 tre eles. Mas isso, somado com a comunicação deles com um terceiro elemento, que se encontra numa posição intermediária, pode causar uma interferência entre as transmissões. Isso acontece por que os nós só possuem informações locais sobre o canal estar livre, impossibilitando a transmissão para um nó em um local em comum. Para contornar esse problema é utilizado um mecanismo de handshaking, chamado RTS/CTS. Neste processo são trocadas duas mensagens entre os nós comunicantes, Request To Send, (RTS) e Clear To Send, (CTS). Ambos os quadros informam o tamanho da transmissão, onde os outros elementos da rede sabem por quanto tempo o canal será utilizado. Quando o canal está liberado, um quadro de controle RTS é enviado, anunciando que a estação deseja transmitir. Este quadro é respondido com um quadro CTS, indicador da estação receptora, informando que está preparada para receber os dados. A figura 3.4 ilustra o esquema de funcionamento, considerando dois nós efetuando uma transmissão para uma estação base. Figura 3.4: Nó Escondido: Mecanismo de RTS/CTS Virtual Carrier Sense O Carrier Sensing é o método no qual as estações determinam se o canal está livre para a transmissão. O utiliza dois tipos de detecção do canal: um fisico e um virtual. O físico escuta o meio e através do sinal recebido informa sobre a possibilidade de transmissão dos dados. Mas devido ao problema do hidden node, essa solução não é completa. Nesse caso entra o outro tipo de detecção, onde é utilizado um mecanismo de transmissão chamado Virtual Carrier Sense, através do uso de uma tabela de alocação de tempo, chamada de Network Allocation Vector, NAV. O NAV é um temporizador que indica quanto tempo o meio de comunicação estará reservado. No momento que uma estação vai enviar um dado, ela seta seu NAV para o tempo necessário para o envio, enquanto as outras esperam por esse mesmo tempo, decrementando o valor de seus NAV. Quando zera, o meio de transmissão é considerado livre.

40 CAPÍTULO 3. WI-FI 27 Através do uso do NAV, operações atômicas podem acontecer sem serem interrompidas, como no caso do RTS/CTS. O envio do CTS atinge a todas as estações no alcance, de forma que os outros elementos recebem e atualizam suas informações sobre a transmissão dos nós no NAV. Assim os nós que recebem o RTS e o CTS entram em modo de espera, determinado no NAV. Caso mais de um nó envie o RTS ao mesmo tempo, ocorrerá a colisão dos quadros, não acontecerá o envio do CTS, interrompendo o resto da transmissão. A figura 3.5 mostra os intervalos de tempo dos envios dos RTS/CTS e a atualização dos NAV dos outros nós na proximidade. Figura 3.5: Virtual Carrier Sense Tipos de quadro e fragmentação São três tipos de quadros definidos nesse padrão, todos diferenciados pelos cabeçalhos de controle e pelo tamanho: quadros de dados, controle e gerência. Os canais sem fio possuem características que limitam o envio dos quadros. O controlador MAC efetua a fragmentação dos quadros de dados, enviando-os em diferentes segmentos. Cada segmento enviado em rajada tem a sua confirmação de envio efetuada. Dessa forma, para cada quadro de acknowledge não enviado, é feito o random backoff e a retransmissão deste quadro. 3.4 Gerenciamento da camada de enlace Devido as dificuldades e características do meio de transmissão, na camada de enlace do padrão foram definidas algumas funções de gerenciamento de sua utilização. O uso destas informações e funcionalidades definidas formam a base para o desenvolvimento da API proposta, considerando a interface Wi-Fi. Como será descrito no decorrer desta seção, diversas destas características auxiliam a avaliar e controlar a comunicação que está acontecendo.

41 CAPÍTULO 3. WI-FI Funções de Gerenciamento As funções de gerenciamento são divididas em três grupos: Sincronização: funções de informação das carecterísticas do funcionamento das redes e de sincronização do relógio entre as estações; Gerência da conexão: o estabelecimento e controle da conexão envolve os processos de roaming e associação, que tratam da movimentação da área de cobertura de um BSS para a área de outro, sem que aconteça perdas de conexão. Também tratam da localização de BSS que estejam no alcance e com qualidade de sinal aceitável. A associação trata deste último caso, sendo responsável pela escolha de pontos de acesso de melhor qualidade. Controle de energia: funções de controle e economia de energia, como desligamento periódico e armazenamento de dados; Parte desse gerenciamento é feito através do uso de quadros de sinalização. Apesar do overhead substancial causado pelo seu envio, eles fornecem muitas informações importantes para o funcionamento e gerenciamento da WLAN, como por exemplo no momento em que os pontos de acesso enviam os dados para o reconhecimento de outras estações. As interfaces de rede das estações ficam em modo de escuta em diversos canais, e quando recebem esse quadro, as informações necessárias para a comunicação com o ponto de acesso são atualizadas. Os quadros de sinalização tem cinco bytes e possuem o endereço de destino setado para broadcast, de maneira que todas as estações no alcance o recebam. As funções de controle a as informações estão organizadas dentro do seu cabeçalho da seguinte maneira: Intervalo: representa o intervalo entre as transmissões dos quadros de sinalização. Ele também informa as funções de gerenciamento de energia o momento em que as estações devem ser ativadas para efetuar a sincronização; Timestamp: é o valor utilizado pelas estações para atualizar seus relógios com o ponto de acesso ou outras estações; Service Set Id (SSID): este é o identificador da BSS que está funcionando de maneira ativa. Por exemplo, antes de comunicarem com o ponto de acesso, as estações devem possuir o seu SSID. Assim, por default, os pontos de acesso incluem o valor do SSID nos quadros de sinalização, de forma que as estações detectem estes valores e atualizem suas interfaces de rede. A utilização dessa opção não é padrão devido aos riscos de segurança envolvidos, como o identificador do BSS sendo divulgado indiscriminadamente;

42 CAPÍTULO 3. WI-FI 29 Taxas suportadas: os valores das taxas que as estações e pontos de acesso suportam e estão utilizando. Com essa informação, as estações podem avaliar quais os pontos de acesso podem ser utilizados para a comunicação, de acordo com a performance desejada; Parâmetros de transmissão: este campo identifica qual a parte da especificação da camada física está sendo utilizado (DS, FH, etc.). Caso seja o FH, ele informa qual o padrão de saltos utilizado e o tempo para o acesso; Capacidade de Informação: representa quais os requerimentos necessários para as estações participarem da comunicação com a LAN, como por exemplo o uso de informações de segurança; Traffic Indication Map (TIM): informação enviada periodicamente pelo ponto de acesso para as estações, indicando entre as que estão em modo de economia de energia as que possuem dados armazendos nos buffers. Em resposta aos quadros de sinalização, as estações enviam quadros do mesmo tipo, com as informações desejadas. Em muitos casos, este tipo de quadro pode ser utilizado para acessar as informações de pontos de acesso, como no caso dos sniffers de rede [43]. Os outros quadros do gerenciamento são relativos a associação e autenticação das estações na rede, usados para o estabelecimento da conexão entre os nós e os pontos de acesso Sincronização A sincronização é fundamental para a comunicação entre as estações, sendo através dela que é efetuado o seu reconhecimento. Estando elas na mesma região, esta etapa coordena o envio e recepção da mensagem, assim como os eventos envolvidos, através da sincronização dos relógios das camadas de enlace. No momento do estabelecimento da conexão, essa sincronização atualiza as capacidades das redes envolvidas, como os métodos e taxas de transmissão utilizados, os identificadores da rede e os relógios das estações. Para manter os relógios da camada de enlace sincronizados, as estações utilizam as transmissões periódicas de sinalizadores para calibrá-los. Cada BSS possui um timestamp pré-determinado, que é distribuído entre as estações. No caso das redes infra-estruturadas, os pontos de acesso enviam sinalizadores com as informações de seus relógios, atualizando todos as estações que participam da BSS. Estes quadros de sinalização são escalonados com um intervalo de tempo pré-determinado, mas que pode ser atrasado devido ao CSMA. Dessa forma, após o envio de alguns sinalizadores, a sincronia do escalonamento é renegociada. Intervalos muito grandes entre os sinalizadores diminuem o overhead, mas diminuem o tempo de sincronização, aumentando a chance das estações perderem a conexão. Em contrapartida um tempo maior, além de aumentar o overhead de envio, possibilita o aumento

43 CAPÍTULO 3. WI-FI 30 do consumo de energia, diminuindo o tempo de espera que as estações permanecem desligadas. Normalmente esse intervalo é setado para 100ms. Nas redes ad hoc, como não há pontos de acesso, uma das estações envolvidas assume o identificador SSID da rede e envia o sinalizador. Depois de receberem o quadro de sinalização, as estações esperam pelo tempo determinado no intervalo, e caso não recebam outro sinalizador, assumem a função e enviam o seu sinalizador. Scanning Para que uma estação comece a comunicação em uma IBSS ou com um ponto de acesso numa BSS é necessário fazer o processo de Scanning, que pode ser ativo ou passivo. O passivo consiste em ouvir os tráfegos de outras estações o que minimiza o consumo de energia, mas tem um gasto de tempo maior. Neste processo a estação escuta periodicamente os canais disponíveis para detectar a presença de sinalizadores, extraindo as informações sobre cada BSS que percebem, e em função da qualidade do sinal de cada recepção, decide qual será conectado. No modo ativo as estações enviam sinalizadores através dos canais disponíveis e esperam pela resposta. Após receberem as respostas, eles enviam de novo, com o valor do SSID do ponto de acesso ou da estação ad hoc. Caso algum ponto de acesso possua o valor de SSID semelhante, ele retorna um quadro com a informação para a conexão Gerência da conexão O processo de conexão no IEEE envolve etapas de autenticação, associação e roaming. A autenticação é o procedimento que permite a identificação entre as estações e uma WLAN, e apesar de poder ser utilizada entre quaisquer duas estações, ela apresenta um fator de segurança na conexão com os pontos de acesso. São utilizados dois algoritmos para a autenticação. Open System Authentication, onde nenhuma verificação é feita, e as estações começam a comunicar assim que entram em contato, e o Shared Key Authentication, que usa a criptografia WEP, onde através da troca de mensagens de identificação usando uma chave WEP as estações são autenticadas. Atualmente este sistema de segurança é conhecido como falho, pois outras estações podem utilizar as informações do SSID, que são trocados entre os pontos de acesso e as estações móveis durante a sinalização, e com isso ganhar acesso aos dados da rede. A associação é o mecanismo que provê uma mobilidade transparente para as estações, e ocorre após a autenticação. O padrão não descreve politicas de como as estações podem escolher quais os melhores pontos de acesso para associarem. A figura 3.6 mostra como normalmente é estabalecida associação entre a estação móvel e os pontos de acesso. A associação é restrita a

44 CAPÍTULO 3. WI-FI 31 apenas um ponto de acesso, sendo logicamente semelhante a conexão de um cabo. De forma que também não é previsto seu uso no modo ad hoc. Mas como será mostrado nas próximas seções, a extração da informação de qualidade do canal pode ser de alta relevância para as aplicações no modo ad hoc. Normalmente, o processo usado é o seguinte: a estação, usando as informações do Receiver Signal Strength Indicator, RSSI, do Carrier Sense e consumo de energia, através da potência utilizada, detecta se o sinal da comunicação com o ponto de acesso está fraco e decide procurar outro. Nesse ponto é feito roaming da estação. Figura 3.6: Etapa de escolha e associação com pontos de acesso O roaming entre diferentes células é definido de forma superficial no padrão, deixando para cada fabricante os detalhes de implementação. Desta forma, para tornar possível a interoperabilidade do roaming entre equipamentos de diferentes fabricantes, foi definido o Inter-Access Point Protocol, (IAPP), adotado por um grupo de empresas. Comparando com o que é feito em redes de telefonia celular a principal diferença é que por ser um sistema de comunicação que usa quadros, as perdas de conexão e retransmissão dos quadros devem ser tratados pelos protocolos das camadas superiores, de maneira que afeta o desempenho da comunicação Gerenciamento de Energia O IEEE define quatros estados de funcionamento, e dois destes são voltados para minimizar o uso de energia da estação. Não é definido qual o momento em que a mudança entre os estados de nível de energia mais baixos devem ocorrer, e sim as regras para a mudança. Todos os estados são relacionados aos modos de transmissão e recepção dos dados, sendo estes:

45 CAPÍTULO 3. WI-FI 32 Estado de dormência (Sleep): a interface está parcialmente desligada; Estado ocioso (Idle): a interface utiliza o carrier sense para detectar se alguma transmissão de sinal está ocorrendo na região; Estado de recepção (Rx): a recepção e reconstrução do sinal é efetuada; Estado de transmissão (T x): os dados são transmitidos; A tabela 3.1 mostra a relação de consumo de energia médio de cada estado, para o padrão Wi-Fi (IEEE b). Placas da Lucent, chipset PrismII. Estado Potência (mw) Dormência 50 Ocioso 740 Rx 900 Tx 1350 Tabela 3.1: Consumo de energia de uma interface IEEE b No estado de dormência, a interface mantém suas funcionalidades de recepção e transmissão de dados desligadas, sendo este o modo de funcionamento mais econômico, apesar de possuir algumas restrições de utilização. A transição para os outros estados de maior consumo de energia é custoso, devido a ativação dos amplificadores e os circuitos do modem de rádio. Mas o fator principal é a necessidade de um elemento que efetue uma gerência externa, coordenando o momento em que ocorrerá essa transição entre os modos de energia. Seu funcionamento é melhor organizado no caso do acesso infra-estruturado, por causa da presença do ponto de acesso. Este controla as estações através do uso dos quadros de sinalização, pois após um intervalo pré-determinado, as estações voltam ao modo ocioso e escutam o canal, recebendo as informações através destes quadros de sinalização. Quando os pontos de acesso necessitam encaminhar quadros para as estações que estão em modo de dormência, eles armazenam estes quadros em buffers internos, e no envio do próximo sinalizador, reportam às estações a existência dessas pendências. Assim essas vão aos modos necessários para a recepção dos dados. Caso não exista nenhuma pendência, continuam no modo de economia máxima. No acesso ad hoc, as estações não possuem um elemento coordenador de funcionamento, sendo necessário que os nós vizinhos sejam responsáveis por armazenar os quadros destinados a outros que estejam em estado de dormência. Esta é uma situação ineficiente neste cenário de comunicação, sendo só possível com a ajuda de mecanismos de controle, não previstos na especificação. Em [44] é analisado um método de economia de energia em redes ad hoc através da dormência, sendo melhor aplicada em redes nas quais a aplicação fica sem trocar informação

46 CAPÍTULO 3. WI-FI 33 por um tempo considerável. Neste caso, o custo do uso de um mecanismo de controle é minimizado pelos ganhos do consumo de energia. Mas de maneira geral, o modo de dormencia não é explicitamente utilizado, sendo considerado o estado ocioso como o de maior economia de energia. O estado ocioso gasta valores de energia aproximados ao de recepção por estar ouvindo o canal a todo momento, a espera de novos quadros. No modo de recepção, o aumento de consumo de energia é caracterizado pela demodulação do sinal, onde a interface processa os sinais recebidos, verificando se é um quadro, e demodulando a informação para a construção dos quadros. Devido aos amplificadores de potência e a necessidade de minimizar a atenuação do sinal, o modo de transmissão é o que possui o maior consumo de energia. Algumas interfaces permitem o ajuste destes valores de potência de transmissão, pois quando as estações estão relativamente próximas, o nível de ruído é baixo de maneira que a atenuação do canal não é acentuada, a energia gasta na transmissão do sinal pode ser economizada significativamente, diminuindo também problemas de interferências devido a sinais muito fortes. Mais a frente será discutida a utilização destas características do modo de gerenciamento de energia no desenvolvimento da API. 3.5 Parâmetros para Ajuste de Desempenho Um dos pontos principais das redes Wi-Fi é serem configurávéis, permitindo um ajuste no desempenho do seu funcionamento. Este fator é vital, pois devido às questões de mobilidade e dificuldade de comunicação, certas características são essencias para a sintonia do funcionamento. Alguns trabalhos de avaliação de desempenho usam esses paramêtros [11, 12], propondo maneiras de melhorar a qualidade da comunicação e do serviço oferecido. A acessibilidade a esses paramêtros é um dos focos de uso da API. Alguns desses paramêtros são: Fragmentação: A fragmentação de mensagens em quadros é controlada pelo parâmetro Fragmentation Threshold, cujo valor padrão é 2346 bytes. Seu valor influencia diretamente na perda de quadros, pois quanto maior for, maior será a chance de colisões e interferências; Requisição do canal: Este paramêtro define o tamanho máximo de um quadro sem que seja executada alguma autorização prévia. Dessa forma, se quadros maiores que RTS Threshold forem enviados, a unidade irá trocar as mensagens RTS/CTS, evitando as colisões, e só após enviar o quadro. O valor default é de 2347 bytes, e quanto menor for seu valor, maior será a utilização do mecanismo RTS/CTS, que reduz o aproveitamento da rede, apesar de evitar a perda de quadros devido a colisão;

47 CAPÍTULO 3. WI-FI 34 Retransmissão: o reenvio de quadros acontece antes sem que ele seja dado como perdido. Assim ele é reenviado um número de vezes antes de retornar para a camada superior como quadro perdido. Os valores de controle são vinculados ao RTS Threshold, onde são relacionados dois paramêtros, o Short Retry Limit, para quadros menores que o RTS Threshold e o Long Retry Limit para os maiores, sendo seus valores default 4 e 7 vezes respectivamente; Potência de transmissão: o padrão prevê diversos níveis de potência para uma mesma interface, mas nem todas as interfaces permitem esse ajuste. Pouca potência implica em redes mais densas e menos consumo de energia, enquanto um valor maior permite um alcance mais ajustado; Sensibilidade ao canal: as interfaces sem fio possibilitam um ajuste aos níves de identificação do sinal recebido possibilitando a recepção de sinais com fraca energia. Em contrapartida a sensibilidade aos ruídos aumetna consideravelmente. O acesso a estes parâmetros depende da implementação dos chipsets das interfaces, de acordo com o grau de conformidade com a especificação. É interessante notar que as diferentes implementações, muitas vezes com características únicas do fabricante, podem ter influência no desempenho [11]. 3.6 Padrões IEEE O padrão contempla um grupo de subpadrões com o objetivo de estender algumas funcionalidades do padrão original, com relação a segurança, velocidade e QoS a: a camada física prevê o funcionamento na faixa de 5 GHz, com oitos canais de freqüência, um fator que diminui a interferência de outros elementos. A taxa máxima do canal é de 54 Mbps. Padrão finalizado em 1999; b: definição da camada física para funcionamento na faixa de 2.4 GHz, com três canais de freqüência. A taxa máxima do canal é 11 Mbps. Em redes com muitos elementos ativos a velocidade tende a cair, e os três canais podem ter níveis de interferência entre si. Padrão finalizado em 1999 e é a versão que é mais difundida no mercado atualmente; d: Trecho suplementar do padrão da camada de enlace, onde define regras de funcionamento em países com restrições no uso do canal de comunicações. Os padrões do não podem funcionar legalmente em alguns países e o d define as restrições e alguns recursos. Desenvolvimento em andamento;

48 CAPÍTULO 3. WI-FI e: parte suplementar para a camada MAC que provê suporte a QoS para diversas aplicações, permitindo classes de serviço diferenciadas e níveis de gerência para diferentes tipos de dados. Ele será utilizado com os padrões da camada física definidos nos a,b e g. Padrão finalizado em 2002; f: um documento que define as regras de funcionamento de pontos de acesso de diferentes fabricantes, fazendo com que os pontos de acesso possam trocar informações sobre as estações que estão fazendo handover entre eles. Esta especificação serve para minimizar os problemas entre produtos de diferentes fabricantes. Padrão em finalização; g: Uma definição para a camada física nas WLANs que operam em ambos canais, 2.4GHz e 5 GHz, com o uso de três canais de rádio. A taxa máxima é de 54 Mbps, para ambas as freqüências. Ele utiliza modulação OFDM, e por questões de compatibilidade suporta a CCK, usada no b, que atinge as taxas de 11 Mbps. Para as taxas mais rápidas, ele trabalha com o P acket Binary Convolutional Coding (PBCC). É um padrão mais complexo, por trabalhar com três tipos de modulação, mas com o custo compensatório se considerar para produtos que planejam suportar os dois modos. Padrão finalizado em 2002; h: Este padrão é suplementar a camada de enlace com regras de uso para as WLANs que trabalham na faixa de freqüência de 5 GHz. Este padrão segue as regras europeias de uso, que requer que os produtos nessa faixa de freqüência tenham controle da transmissão de potência (TPC) e seleção dinâmica do uso da freqüência (DFS). O TPC limita a potência do sinal transmitido para o valor mínimo que alcance o usuário mais próximo. O DFS seleciona o canal de freqüência que possua menos interferência com outros sistemas. padrão finalizado em 2003; i: Suplementar à camada de enlace, com objetivo de aumentar a segurança. Ele se aplica aos padrões a,b e g, provendo alternaticas ao WEP com novos métodos de autenticação e criptografia. A segurança é um dos pontos mais fracos do padrão , inclusive afetando sua expansão no mercado, atualmente. As atualizações do i preveêm atualização em diversos níveis de segurança das WLANs, como por exemplo o uso do T emporalkeyintegrityp rotocol, (TKIP) x: Um f ramework para regular o controle do acesso das estações clientes através de métodos de autenticação, sendo uma importante parte para aumentar a segurança. Aplicável aos padrões a, b e g. 3.7 Interfaces no Linux O desenvolvimento de drivers para as interfaces no Linux faz parte do projeto Linux Wavelan IEEE driver, criado no inicio da década de 90, e é desenvolvido sobre as regras GPL

49 CAPÍTULO 3. WI-FI 36 [45] de projetos open-source. Seu objetivo é a criação de drivers para as diversas interfaces do padrão e suas diferentes implementações, que por vezes possuem detalhes próprios do fabricante e um certo grau de conformidade com o padrão. Por ter contribuições de diversas empresas e entusiastas, o seu desenvolvimento é orientado a maior transparência possível, fator essencial para o estudo e desenvolvimento deste trabalho. Como de praxe no desenvolvimento de drivers para Linux, quanto mais informações sobre o hardware envolvido, mais detalhes do funcionamento serão possíveis. Uma lista contendo quais as placas e seus f irmwares é divulgada pelos desenvolvedores do projeto, uma vez que nem todas as interfaces de WLANs tem o suporte no Linux. Atualmente, os dois dos principais chipsets, que contém as definições do controlador MAC, são o PrismII da Intersil [46] e o Hermes da Agere(Lucent)[47]. Um ponto importante a ser ressaltado que a API deste trabalho foi desenvolvida sobre os drivers das estações e não dos pontos de acesso, os quais tem como principal função atuarem como Bridges para as LANs e/ou outros tipos de redes. Para o chipset da Intersil, existe um quadro linux-wlan-ng desenvolvido pela empresa Absolute Value Systems [48], responsável pelo driver e por ferramentas de configuração do acesso. O seu principal driver é o prism2 cs para a comunicação PCMCIA, e o wlancfg para alterar as configurações da interface e acessar a base de informações desta. Sua distribuição e funcionamento estão nos kernel 2.0 e 2.2, mas não fazia parte integral do Linux. Para este trabalho foi escolhido o driver da Orinoco/Lucent que possui um alto grau de compatibilidade com o chipset Prism2. Este driver possui mais funcionalidades e será descrito a seguir Orinoco A partir da versão 2.4 do kernel, os drivers e o suporte a configuração das WLANs fizeram parte integral do sistema operacional. Por sua implementação ser leve e sem muito consumo de recursos, sua portabilidade para versões do Linux para sistemas embutidos é relativamente fácil. Diversos projetos como o Intimate Linux [49], respectivamente voltados para roteadores de baixa capacidade computacional e dispositivos como Palm s e PocketPCs, utilizam suas funcionalidades. As interfaces Wi-Fi deste trabalho usam o barramento PCMCIA, cujo suporte também já está integrado ao kernel do Linux a partir da versão 2.4. Seu sistema de controle é responsável por identificar a interface e carregar o driver apropriado. Os modelos de cartão PCMCIA utilizados foram os Intersil PrismI LinkSYS e o Lucent Wavelan-IEEE/Orinoco, compatíveis com o IEEE b, mas sem todas as funcionalidades, como um modo ad hoc de funcionamento não totalmente compatível com a especificação. A descrição do perfil de uma das placas podem ser vistas na figura 3.7 abaixo, informações como versão do chipset (vers 1 1.0), velocidades alcançadas (lan speed) e endereço MAC (lan node id), foram extraídas através do comando de gerência do barramento PCMCIA, dump cis.

50 CAPÍTULO 3. WI-FI 37 Figura 3.7: Dados relativos ao cartão PCMCIA da interface Wi-Fi A implementação do chipset nas placas influencia diretamente na escolha do driver, pois muitas vezes o chipset pode não ser compatível com o padrão, como nas primeiras placas que implementavam parcialmente o protocolo MAC. Vale ressaltar que os fabricantes lançam algumas atualizações constantes dos firmwares dos chipsets, sendo que algumas funções de acesso são modificadas, devido a maior integração do circuito como também uma regularização com a especificação, ou mesmo devido às funcionalidades específicas dos fabricantes. Isto acarreta um cenário em que é relativamente comum placas de diferentes fabricantes não comunicarem entre si. Neste caso entra o grupo Wi-Fi, que verifica a conformidade dos chipsets com a especificação e garante a comunicação entre estas. O chipset utilizado é o Hermes da Lucent, que possui algumas diferenças em algumas características de diferentes versões, o que altera o acesso às funcionalidades do driver, mas não interfere na comunicação com outras interfaces. O driver utilizado foi o Orinoco, da série de placas Wavelan IEEE/Orinoco, que além de ser compatível com as placas Wi-Fi utilizadas, é um dos mais comuns e robustos atualmente. O Linux possui três drivers distintos que conseguem utilizar os recursos dessa placa: wavelan2 cs: criado com base no wavelan cs, um dos primeiros drivers, feito para as primeiras placas que implementavam uma rádio LAN, com um suporte básico ao padrão Possui diversas funcionalidades e é mantido pela Lucent, que não disponibiliza todo o seu código de funcionamento. É considerado um avanço do wavelan cs, cujo suporte foi descontinuado a partir do kernel ;

51 CAPÍTULO 3. WI-FI 38 wlan cs: este driver foi o primeiro a oferecer total suporte ao b, sendo compatível com o chipset Hermes da Lucent, que oferece toda a implementação do protocolo da camada de enlace, com uso opcional do RTS/CTS, fragmentação, roaming, escolha de taxa de transmissão automática, e suporte aos funcionamentos estruturados e ad hoc. Por ter sido originalmente desenvolvido pela Lucent, que não disponibiliza todo o seu código, e ter caracteristicas legadas com o wavelan cs, parte de seus desenvolvedores o descontinuaram em favor do orinoco cs; orinoco cs: considerado o driver mais robusto, atendendo as funcionalidades da especificação do b. É mantido por diversos entusiatas e membros de diferentes empresas possuindo o código totalmente aberto e faz parte do kernel do Linux desde a versão Também é um dos poucos que possibilita o suporte a medida de qualidade de sinal no modo ad hoc, caso previsto na especificação apenas para o modo infra-estruturado. Ele trabalha com diferentes tipos de dispositivos, que possuem o mesmo controlador MAC, como os dispositivo Lucent Wavelan-IEEE/Orinoco, e o Intersil PrismI. Configurações A configuração das interfaces Wi-Fi é feita através de ferramentas, executadas na linha de comando, que acessam os drivers e executam comandos sobre estes, modificando alguns de seus parâmetros, ou recuperando informações desejadas. O funcionamento dessas ferramentas é a base para o desenvolvimento da API, de forma que as aplicações possam executar esses comandos. O método utilizado no Linux, para acessar os parâmetros de uma interface de rede é através da função ioctl, uma chamada de sistema que trabalha sobre um descritor de arquivo, um socket associado a essa interface. Os drivers de cada dispositivo definem as operações que podem ser executadas, através de constantes específicas para o acesso. Assim, na chamada da função ioctl são definidas as operações que são efetuadas sobre o dispositivo. Dessas operações podem ser agrupadas as seguintes: Operações básicas: modos básicos de configuração e funcionamento, como definições de parâmetros da interface, como nome e modo de operação. Descritos na tabela 3.2;

52 CAPÍTULO 3. WI-FI 39 Constantes SIOCSIWFREQ SIOCGIWNWID SIOCSIWMODE SIOCSIWSENS SIOCSIWAP SIOCSIWESSID SIOCSIWNICKN Definição define o canal de freqüência (Hz) define o network id define o modo de operação (Ad Hoc, Managed) define o nível de sensibilidade ao canal (dbm) obtém o endereço do ponto de acesso próximo obtém o SSID da rede seta o nickname do nó Tabela 3.2: Operações básicas efetuadas no driver através do ioctl Operações de desempenho: acesso aos parâmetros descritos na seção 3.5, setados através do driver. Descritos na tabela 3.3; Constantes SIOCSIWRATE SIOCSIWRTS SIOCSIWFRAG SIOCSIWTXPOW SIOCSIWRETRY SIOCSIWPOWER Definição define a taxa utilizada (bps) define o valor do RTS Threshold define o valor do Fragmentation Threshold define o valor da potência de transmissão define os valores para a retransmissão parâmetros do gerenciamento de energia Tabela 3.3: Operações de desempenho efetuadas no driver através do ioctl Operações do modo infra-estruturado: seqüências de operações que possibilitam o scanning de novos pontos de acesso, e informações para a associação da estação com eles. Descritos na tabela 3.4; Constantes SIOCGIWAP SIOCGIWAPLIST SIOCGIWSCAN Definição define o endereço MAC do ponto de acesso define o novo ponto de acesso encontrado no scanning lista e define os resultados do scanning Tabela 3.4: Operações de vinculação ao Ponto de Acesso no driver através do ioctl Operações de segurança e proprietárias: essas operaçõs definem o modo de autenticação em que a interface trabalha, e definem operações específicas de cada chipset. Descritos na tabela 3.5

53 CAPÍTULO 3. WI-FI 40 Constantes SIOCSIWENCODE SIOCIWFIRSTPRIV SIOCIWLASTPRIV Definição define o modo de autenticação e codificação executa comandos específicos do chipset executa comandos específicos do chipset Tabela 3.5: Operações de segurança e do chipset efetuadas no driver através do ioctl Operações de estatística e segurança: operações que permitem a análise da qualidade da recepção de quadros e do sinal recebido, possibilitando observar o comportamento de determinado canal de comunicação. Na tabela 3.6; Constantes SIOCGIWSTATS SIOCGIWSPY Definição obtém as estatisticas no /proc/net/wireless define o modo de observação de outros nós Tabela 3.6: Operações de estatística do driver através do ioctl Dessa forma, basicamente o funcionamento do Wireless Extensions mescla o uso de chamadas da função ioctl, com os parâmetros de configuração dos drivers e as informações estatisticas no diretório /proc/net/wireless. A pilha de rede do Linux utiliza uma estrutura (struct device) que mantém as informações sobre o funcionamento do dispositivo no sistema, como os parâmetros de endereços de I/O, endereço IP, buffers, e os callbacks do dispositivo, como as funções de envio de quadro e de inicialização. A implementação do driver orinoco contempla um callback get wireless stats para pegar as estatísticas armazenadas no /proc/net/wireless, retornando uma estrutura (struct iw statistics) que contém todos os campos definidos na entrada /proc da interface. O modo espião funciona para as estações no ad hoc, mas necessitam antes fazer uma consulta a tabela arp local, permitindo identificar o endereço MAC das unidades. Caso contrário, a adição do endereço é manual.

54 Capítulo 4 Bluetooth 4.1 Introdução O Bluetooth é uma tecnologia que permite a comunicação de voz e dados através de um enlace de rádio de baixo consumo de energia e curto alcance. Essa tecnologia foi desenvolvida pela Ericsson, em 1994, com o objetivo inicial de substituição dos cabos associados a dispositivos periféricos, sendo focada para atender os requisitos de uma comunicação segura, robusta e barata. Desde então sua abordagem tem sido estendida, de forma que pudesse atender diferentes tipos de dispositivos, entrando no conceito das Wireless Personal Area Network, WPANs. Em 1999, diversas empresas de computação e telecomunicações criaram um grupo de interesse, o SIG, [10], e a partir dele definiram as funcionalidades do Bluetooth, de maneira mais abrangente. Como seu projeto teve como objetivo atender dispositivos de baixa capacidade, o seu custo de produção e sua simplicidade de implementação foram os principais focos. A especificação do Bluetooth [1] define um sistema completo a partir da camada de enlace até a camada de aplicação, sendo a pilha de protocolos implementada parcialmente em hardware e software, como mostrado na figura 4.1. O seu núcleo é formado pela Baseband, que controla o enlace de rádio-freqüência (RF), o Link Manager Protocol (LMP), responsável pela configuração do enlace estabelecido e os modos de economia de energia e os estados operacionais dos dispositivos, o Logical Link Control and Adaptation Protocol (L2CAP), responsável pela adaptação dos dados provenientes das camadas superiores da pilha de protocolos de forma que possam ser manipulados pelas camadas inferiores, e o Service Discovery Protocol (SDP), que gerência os serviços oferecidos pela interface, informando aos outros elementos sobre as capacidades do dispositivo. No decorrer deste capítulo serão mostrados os detalhes da pilha de protocolos e a maneira que interagem entre si. 41

55 CAPÍTULO 4. BLUETOOTH 42 Figura 4.1: Pilha de Protocolos do Bluetooth Em sua configuração básica, o Bluetooth forma pequenas redes, definidas como piconets. Uma piconet pode ser descrita como uma rede onde um nó central, denominado mestre, se comunica ativamente com os outros nós, chamados de escravos, formando uma topologia em estrela. Segundo a especificação, é possível ter no máximo oito elementos ativos dentro de uma piconet, incluindo o mestre. Dentro de uma piconet apenas nós considerados mestres podem comunicar com os nós considerados escravos. Caso algum escravo precise comunicar diretamente com outro escravo, será necessário criar uma outra piconet onde um dos dois será o mestre. As piconets possuem as características de uma rede ad hoc, uma vez que o mestre não precisa estar associado a uma infra-estrutura, e qualquer elemento pode se tornar mestre de uma piconet. A especificação também prevê a intercomunicação dessas piconets, atravês de elementos em comum, criando uma scatternet. A figura 4.2 mostra algumas das configurações possíveis das piconets: (a) piconet com um único escravo (b) piconet multi-escravo (c) scatternet. Figura 4.2: As maneiras de comunicação no Bluetooth. [1]

56 CAPÍTULO 4. BLUETOOTH 43 Como descrito anteriormente, o foco do Bluetooth são os usuários, de forma que os serviços dos dispositivos atendam as suas necessidades. Cada um dos dispositivos, presente numa piconet, fornece um serviço que é compatível com suas características, como por exemplo o fone de ouvido, que atende a serviços de som. Assim, a cada interface Bluetooth é associado um identificador da classe dos dispositivo, de forma que durante os procedimentos de criação da piconet, o mestre já saiba das capacidades possíveis dos escravos antes que estes estejam conectados. A nomenclatura da classe é definida num grupo maior, que define os tipos de dispositivos, como computadores ou fones de ouvido, e dentre estes, as subclasses, como desktops ou handheld. E cada uma das classes de dispositivos possui um conjunto de serviços associados. A Tabela 4.1 mostra os identificadores e os tipos de dispositivos envolvidos Identificador Maior Menor Tipo de dispositivos computer, phone, audio desktop, laptop, handheld, server Tabela 4.1: Classe de dispositivos suportados pelo Bluetooth 4.2 IEEE Em 1998, o IEEE criou o grupo de estudos do WPAN (WPAN-SG), para investigar a necessidade da criação de um padrão de comunicação que focasse no consumo de energia significativamente pequeno, de pouca complexidade que permitisse uma conectividade no nível Personal Operating Space (POS). Este é um espaço que envolve uma distância de 10 metros a partir de um indivíduo, cobrindo assim todos os dispositivos utilizados, sejam estes carregados ou próximos a ele. Em março de 1999 foi proposta a criação do , que organizou uma nova especificação sobre a versão da WPAN proposta pelo Bluetooth, corrigindo alguns problemas e propondo novas soluções, de acordo com as classes e objetivos dos dispositivos. O IEEE é dividido em alguns subgrupos de trabalho responsáveis pelo desenvolvimento do padrão. São os seguintes: Task Group 1 (TG1): responsável por rever e adapar o padrão Bluetooth, versão 1.1, de acordo com os modelos do IEEE. Esta padronização também inclui um teste de verificação para a implementação do protocolo, provendo uma descrição da especificação na linguagem SDL. Os resultados desde grupo de trabalho foram reutilizados pelas empresas desenvolvedoras do Bluetooth, sendo que o documento principal do padrão já está finalizado; Task Group 2 (TG2): este grupo de trabalho é responsável pela coexistência entre os padrões das WPANs e as WLANs. O grupo está desenvolvendo um modelo de coexistência que permite quantificar a interferência mútua entre os dois padrões, e a partir

57 CAPÍTULO 4. BLUETOOTH 44 disso desenvolver os mecanismos para impedir as interferências. Um dos métodos desenvolvidos pelo padrão, o adaptative frequency hopping já está sendo adotado em novos chipsets Bluetooth; Task Group 3 (TG3): desenvolve o conceito da WPAN High Rate, que permite taxas de transmissão acima dos 20Mbps, mas provendo baixo custo e baixo consumo de energia, sendo voltado para as aplicações multimídias de dispositivos portáteis, como streamming de video, voz e imagens; Task Group 4 (TG4): este grupo é responsável pelo desenvolvimento de WPAN Low Rate, com o foco voltado para aumentar o tempo de vida das baterias para meses ou anos, sendo uma solução mais simplificada. Este padrão define duas camadas fisicas, nas faixas de 900Mhz, com taxas de 20kbps e a de 2.4Ghz, com taxas de 250kbps, ambas utilizando o DSSS. Sua aplicação principal são as redes de sensores e automação. 4.3 Pilha de Protocolos A especificação do Bluetooth, versão 1.1, define uma pilha de protocolos que descreve o funcionamento e as comunicações dos seus dispositivos, como pode ser visto na figura 4.1. Devido ao seu projeto ser inicialmente para a substituição de cabos, alguns elementos da sua pilha são voltados para a emulação do funcionamento destes, como por exemplo as definições da RF COMM, que permite a emulação de uma porta serial e a comunicação de aúdio feita de maneira direta. Durante a sua criação optou-se por reutilizar ao máximo os protocolos já existentes nas camadas mais altas, provendo uma reutilização e adaptação as aplicações já existentes. É segundo este modelo que as aplicações devem ser desenvolvidas, mas sem necessariamente utilizar todas as camadas, executando algumas fatias verticais dessa pilha. No restante dessa seção serão descritas as características das camadas inferiores da pilha, responsáveis pelo seu funcionamento básico e que são implementadas nas interfaces Bluetooth Rádio O rádio do Bluetooth opera na faixa de freqüência de 2.4 GHz, utilizando o FH com 79 canais de 1 MHz, a partir de 2.402GHz até o 2.480GHz. Em alguns países, como França e Japão, devido às legislações locais, esse conjunto de canais é reduzido para 23. A taxa de saltos de freqüência é de 1600 hops/seg no modo conectado e 3200 hops/seg no modo de procura/sincronização. Esse esquema completo é chamado de Frequency Hoppping Code Division Multiple Access, FHCDMA.

58 CAPÍTULO 4. BLUETOOTH 45 No que se refere a potência de transmissão e alcance, cada dispositivo é classificado dentro de três classes de potência, mostrados na Tabela 4.2. Classe Potência (dbm) Alcance (m) Tabela 4.2: Classe de dispositivos Bluetooth. [1] Um transmissor que seja capaz de efetuar o controle de potência do sinal deve medir a sua capacidade de recepção, através do RSSI. A partir disso, ele pode gerar comandos que controlem a potência do sinal, através da camada LMP. A precisão do RSSI prevista na especificação é de aproximadamente ± 6dB. Para a modulação o rádio utiliza o Gaussian Frequency Shift Keying (GFSK), onde os valores binários são representados por desvios positivos e negativos dos valores da freqüência, permitindo uma acuracia de 75kHz Baseband A Baseband define o núcleo de comunicações do Bluetooth. Como descrito na seção 2.1.2, a camada de enlace usada em um sistema de FH é mais complexa, uma vez que as freqüências utilizadas necessitam de sincronização e controle para permitir o acesso e a Baseband é responsável por essa coordenação, estabelecendo a conexão entre os elementos e definindo as regras de uso do canal. A seqüência do FH é definida pelo endereço da interface de rede do mestre e pelo valor do seu relógio. Estes dois parâmetros são utilizados numa função que gera a seqüência de freqüências utilizadas, de maneira pseudo aleatória. Como um dos focos da transmissão é a robustez, é feito um espaçamento entre as freqüências adjacentes, com o objetivo de minimizar o uso de possíveis freqüências ruidosas. Durante a comunicação, é utilizado o Time Division Duplex (TDD), que possibilita o suporte a comunicação duplex. Para cada um dos canais é definido um slot temporal de 625 µs, numerado de acordo com o valor de relógio do mestre. Os pacotes enviados cobrem cada slot, de forma que o mestre e os escravos comunicam de maneira alternada. A figura 4.3 mostra a comunicação entre um mestre e um escravo, onde o primeiro canal f k é usado pelo mestre para o envio do pacote, e o f k+1 é usado pelo escravo.

59 CAPÍTULO 4. BLUETOOTH 46 Figura 4.3: Pacote de um slot de 625 µs Também são previstos pacotes que ocupam mais de um slot de tempo. Neste caso, quando estes pacotes são transmitidos, não acontece o salto para a próxima freqüência, sendo o canal alocado até o final do último slot e ao fim da transmissão, o canal é alterado para o que estava previsto. Este esquema permite que a vazão de comunicação aumente, pois o tempo para efetuar o salto de freqüências é minimizado, mas em contrapartida as chances de perdas de pacotes aumenta, uma vez que o canal de freqüência no pacote multi-slot tem mais probabilidade de sofrer interferência. A figura 4.4 mostra a utilização de 1, 3 e 5 slots. Figura 4.4: Exemplo de pacotes multi-slots. [1] Canais Lógicos Durante a comunicação do Bluetooth, são definidos alguns tipos de canais lógicos, para controle e transmissão de dados, sendo entre eles os mais importantes, um orientado a conexão o

60 CAPÍTULO 4. BLUETOOTH 47 Synchronous Connection Oriented (SCO), usado exclusivamente para comunicação de voz e outro orientado a pacote Asynchronous Connectionless (ACL), usado para transmissão de dados. O canal SCO é um canal ponto a ponto entre um mestre e um escravo, estabelecido pela reserva de slots duplex durante intervalos regulares. O canal ACL é um canal ponto a multiponto que é alocado dinamicamente de acordo com a demanda. A versão 1.2 da especificação determina um tipo de canal esco, que funciona como uma versão extendida do SCO, permitindo uma transmissão dos dados de voz de maneira mais eficiente. Tipos de pacotes O formato dos pacotes no Bluetooth seguem a seguinte estrutura mostrada na figura 4.5: Figura 4.5: Estrutura do pacote. [1] Access Code: Os access code são utilizados para a sincronização temporal e nos processos de descoberta e sincronização. Exitem três tipos: o Channel Access Code (CAC), responsável por identificar uma única piconet, o Device Access Code (DAC), usado no procedimento de sincronização (paging) e suas respostas, e o Inquiry Access Code (IAC), utilizado durante a descoberta de novos dispositivos, no procedimento de Inquiry; Header: o cabeçalho contém as informações de reconhecimento/aceitação do pacote, a numeração utilizada para a ordenação, o controle de fluxo, o endereço do escravo e o crc; Payload: A carga contém as informações do usuário, como voz e/ou dados. No caso dos dados e dos tipo de pacote, ele também possui um cabeçalho próprio. Os tipos de pacotes numa piconet são relacionados aos canais lógicos, podendo ser utilizados de acordo com as necessidades do tráfego. A Tabela 4.3 mostra a utilização dos pacotes em cada tipo de canal.

61 CAPÍTULO 4. BLUETOOTH 48 Nome Número de Slots Canal ACL Canal SCO ID NULL 1 X X POLL 1 X X FHS 1 X X DM1 1 X X DH1 1 X - HV1 1 - X HV2 1 - X HV3 1 - X DV 1 - X DM3 3 X - DH3 3 X - DM5 5 X - DH5 5 X - Tabela 4.3: Tipos de pacotes do Bluetooth Estes pacotes podem ser agrupados em três conjuntos: Controle: os pacotes que são utilizados em todos os canais lógicos são: ID, FHS, NULL, POLL e DM1. O ID e o FHS são utilizados durante os procedimentos de estabelecimento de conexão, e contêm as informações necessárias às etapas de sincronização. Os pacotes NULL e POLL não possuem payload e são usados durante o modo conectado para os nós manterem a sincronia do mestre com o escravo. Os pacotes do estilo DM1 são usados para as mensagens de controle e dados possuindo um bit indicador de sua natureza e prioridade; Dados: são os pacotes usados no canal ACL, transmitidos de forma assincrona e contendo informações de dados e controle. São os pacotes DM1, DH1, DM3, DH3, DM5 e DH5. Os pacotes DM são os Data Medium Rate e contém um código de correção 2/3 FEC. Os pacotes DH são os Data High Rate e não possuem o código FEC, permitindo a transmissão de mais dados. Os pacotes DM1 e DH1 usam um slot, os DH3 e DM3 usam três slots, e os DM5 e DH5 usam 5 slots. A vazão máxima, de 752kbps, é alcançada quando utiliza o pacote DH5. Aúdio: os pacotes HV e DV são utilizados para o transporte síncrono de dados do canal SCO, normalmente para uma velocidade de 64kbps para a transmissão de voz. Os pacotes HV contém apenas aúdio, não possuem CRC e nunca são retransmitidos, sendo divididos em três subtipos, o HV1, com 10 bytes de informação, HV2, com 20 bytes e HV3, com 30 bytes. O pacote DV contém voz e dados em campos separados e a parte de dados contém um CRC, podendo ser retransmitida.

62 CAPÍTULO 4. BLUETOOTH 49 Na Tabela 4.4 é mostrado o tamanho pacotes, a sua utilização dos slots e a prioridade de transmissão define o uso da banda passante. Os payloads dos pacotes de dados variam de zero até o tamanho máximo de cada tipo. Como citado anteriormente, os pacotes de maior uso de slots propiciam as melhores taxas, mas são mais sensíveis a falhas e ruídos. Nome Payload (bytes) FEC Taxa max. Simétrica (kbps) Taxa max. Assimétrica (kbps) ID na na na na NULL na na na na POLL na na na na FHS 18 2/3 na na DM / DH DM / DH DM / DH HV1 10 1/ HV2 20 2/ HV DV 10+(0-9) 2/ (dados) - Tabela 4.4: Velocidade e capacidade dos pacotes do Bluetooth Estabelecimento da Conexão Como os dispositivos da rede Bluetooth assumem regras distintas, um mestre e os outros escravos, o estabelecimento de conexão deve envolver etapas de reconhecimento e sincronização, descritos na figura 4.6:

63 CAPÍTULO 4. BLUETOOTH 50 Figura 4.6: Máquina de Estados da Baseband Todos os estados que envolvem os processos de Inquiry, Page e Connection podem voltar ao estado de Standby, onde não ocorre comunicação efetiva. Estas transições possibilitam a unidade uma flexibilidade de estabelecer conexão com uma piconet, e tentar encontrar e sincronizar com outras unidades na região. Standby: neste estado a unidade não está comunicando efetivamente com nenhuma piconet, e nenhum nó; Inquiry: o procedimento de inquiry habilita um dispositivo a descobrir quais outros estão a seu alcance, descobrindo seus endereços e informações adicionais, como o clock e o número identificador do dispositivo. É dividido nos estados Inquiry, executado pelo mestre, e Inquiry Scan, Inquiry Response pelo escravo; Page: no procedimento de paging, apenas o endereço do dispositivo Bluetooth é requerido para fazer a conexão. As informações sobre o clock aceleram o processo de iniciação. No paging os nós mestre e escravo passam pelos estados Page e PageScan respecitvamente. Após a primeira identificação, eles vão para os estados Master Response e Slave Response; Connection: estado onde ocorre a troca de informações das aplicações envolvidas. Neste estado o frequency hopping acontece sobre 73 canais, a uma velocidade de 1600 saltos

64 CAPÍTULO 4. BLUETOOTH 51 por segundo, e a seqüência é pseudo-aleatória, gerada a partir do número identificador do mestre da piconet. Inicialmente todos os nós usam um conjunto fixo de freqüências para comunicação, sendo as seqüências determinadas pelo seu clock local. No sistema que trabalha com 79 freqüências, este conjunto possui 32. Um nó, que se encontra no estado inquiry, faz o broadcast de pacotes de inquiry e a cada transmissão, espera por respostas no slot de recepção. Para que elas ocorram, nas imediações devem existir nós que se encontrem no estado inquiry scan e respondam o inquiry. Eles também usam o mesmo conjunto de freqüências, mas com a seqüência também definida pelo seu clock local. Dessa forma, até que aconteça a recepção do pacote, surge uma fase de incerteza, que dura até que as freqüências se coincidam. Para minimizar este problema os nós fazem o hop de freqüência em diferentes velocidades, onde o nó em inquiry scan usa uma taxa de variação de freqüências menor, 1600 hops/s e o em inquiry, que está a 3200 hops/s. O nó mestre sai do inquiry caso o tempo de procura, T inquiryto, esgote ou obtenha um número de respostas desejado. O que se encontra no inquiry scan sai deste estado quando a janela de tempo de inquiry scan, T winqscan termina, ou recebe uma mensagem de inquiry. A figura 4.6 mostra a máquina de estados usada para o processo de estabelecimento de conexão. Com isso surge um atraso no estabelecimento de conexão, pois após receber uma mensagem, o escravo espera durante um tempo aleatório, evitando o problema de colisões. Após este intervalo muda para o estado inquiry response, e espera por outra mensagem do mestre. Caso ela chegue antes do período de timeout, ele envia um pacote contendo um identificador de inquiry, chamado de Inquiry Access Code (IAC) e o valor de seu clock. Do contrário, ele volta para o standby. Ao receber a resposta, o nó que se encontra em inquiry muda para o estado page, enquanto os que se encontravam em inquiry scan mudam para page scan. Nesses estados os nós estabelecem a sincronização. Utilizando a informação do clock, os nós tentam estimar qual é a fase do outro nó. Caso esse procedimento ocorra imediatamente após o inquiry, a sincronização é imediata. Do contrário, ela só ocorrer após um atraso até que seja estimada qual a freqüência do nó que se encontra em page/page scan. Os principais tempos usados nos estabelecimentos de conexão são descritos na tabela 4.5

65 CAPÍTULO 4. BLUETOOTH 52 Parâmetro T inquiryto T inquiryscan T winqscan T inqrespto T pageto T pagescan T wpagescan T pagerespto T holdto Descrição N. máximo de slots que o estado inquiry espera Tempo de intervalo entre os estados de inquiry scan N. máximo de slots que o estado inquiry scan pode esperar N. máximo de slots que o inquiry scan pode perder, após o Random Backoff N. máximo de slots que o estado page pode esperar Tempo entre o começo de dois page scans consecutivos N. máximo de slots que o page scan espera N. de slots em espera pelo pacote FHS, no estado slave response Tempo em que o escravo pode ficar no modo Hold Tabela 4.5: Tempos usados no estabelecimento de conexão De acordo com [50], o atraso existente no processo de inquiry entre dois nós pode ser aproximado por: Atraso = 2SF + RB Sincronização da freqüência, SF, tempo necessário para que os nós estejam trabalhando sobre a mesma freqüência Random Backoff, RB, tempo de espera para o envio da resposta onde RB é uma variável aleatória distribuída em [0, r max ], e r max assume um valor de 1024 slots de tempo, aproximadamente 639 ms. SF também é uma variável aleatória distribuída em [0, T ], onde T, segundo [50], no sistema de 32 freqüências, assume valores em torno de 20 ms. Dessa forma, em um ambiente sem interferências e erros, este atraso poderia assumir no máximo 659 ms. Se, logo após a descoberta, os dois nós passam para os estados de page e page scan a conexão pode ser estabelecida quase imediatamente. Mas, caso não ocorra, o atraso existente no paging também será somado. O procedimento de paging é semelhante ao de inquiry, com a diferença de em vez de efetuar o broadcast dos pacotes para todos os nós, ele os envia diretamente ao futuro escravo. Ele também trabalha sobre o mesmo conjunto de freqüências, mas usa os valores do clock e do identificador do escravo, para aumentar as chances de sincronização. São apresentados em [51] alguns problemas com relação aos valores de temporização nos estados de inquiry e page, definidos na especificação. Se o T inquiryto, definido em 1,28 s, ocorra

66 CAPÍTULO 4. BLUETOOTH 53 antes que o escravo comece o inquiry scan, de 2,56 s, eles não irão se sobrepor. Caso T inquiryto seja no mínimo de 2,56 s, isto não ocorre. Outro é que pode ocorrer um timeout no page antes do escravo iniciar o page scan. Para evitar isso, o T pageto deve ser maior do que o tempo de page scan. Se ainda houver algum escravo pendente para entrar no paging, o mestre não inicializa a comunicação efetiva com este nó e volta para o processo de paging para estabelecer comunicação com os outros. Se não houver sucesso na localização, ele volta ao modo ativo e passa o controle da conexão para as camadas superiores. Estados da conexão Quando um dispositivo Bluetooth se encontra no estado connection, ele é capaz de efetuar o gerenciamento dos canais de comunicação que está utilizando. O modo Active estabelece o uso completo do canal, no Sniff apenas o mestre manda mensagens para o escravo em tempos regulares, enquanto estes funcionam em modo de baixa energia, e no Park o escravo retira-se da piconet, mas ainda mantém sincronizado e pode retornar caso existam canais liberados. No modo Hold, o escravo ainda é um membro ativo da piconet, mas não estabelce nenhum tipo de comunicação. Como o modo Hold permite com que o escravo se desligue da piconet original, sem perder as informações do mestre desta, ele é usado no momento que o escravo for efetuar a conexão com outras piconets, pois pode voltar a conectar ativamente com a piconet original, formando a scatternet. Consumo de energia no Bluetooth O estado default do Bluetooth é o standby, onde parte dos componentes internos, exceto o relógio interno, está desligada. Os modos de economia de energia apresentam um trade-off entre o consumo de energia e o tempo de resposta dos elementos. Como esses modos sempre são negociados com o mestre, eles são aplicáveis quando a aplicação lê/recebe dados de maneira periódica. Caso a geração de dados seja espontânea, os nós Bluetooth devem sempre manter a comunicação ativa. O primeiro estudo feito sobre o Bluetooth para avaliar seu uso em redes de sensores foi desenvolvido no projeto SmartIts [3]. Nesse projeto, foi criado um dispositivo dotado de sensores e um processador acoplados a um módulo de comunicações Bluetooth da Ericsson. Essa solução é fechada, e implementa toda a pilha, com funcionalidades mais básicas, como a formação de piconets, mas sem ter o gerenciamento de energia e a formação de scatternets.

67 CAPÍTULO 4. BLUETOOTH 54 O consumo de energia dos dispositivos Bluetooth da Ericsson pode ser visto na tabela 4.6. Estado Potência (mw) Standby 20 Inquiry Scan 100 Inquiry 160 Modo ativo transmitindo 86 Modo ativo recebendo 86 Tabela 4.6: Consumo de energia do Bluetooth, medidas do chipset da Ericsson, R0K [3] O procedimento de inquiry é caro, em questão de consumo de energia, por utilizar um envio de pacotes mais intenso e devido ao grande delay durante o processo de sincronização, por causa do frequency hopping e diferenças no relógio dos elementos envolvidos. Segurança A segurança no Bluetooth é consideravelmente robusta, caso comparada com a oferecida pelo Wi-Fi. Com a taxa de FH a 1600 saltos por segundo, o uso de sniffers para capturar pacotes do canal de comunicação é dificil, sendo considerado praticamente seguro contra o uso de tal técnica. E mesmo se o hardware envolvido for capaz de efetuar a captura dos pacotes em tempo real, o Bluetooth oferece serviços de autenticação e autorização através de troca de chave de números identificadores e uso de chaves de criptografias de 128 bits. Apesar do valor da chave não ser muito grande, os dispositivos podem trocá-lo durante a sessão de comunicação. Na Baseband também é possível configurar os dispositivos de maneira que a descoberta e a conexão entre eles pode ser desabilitada. A conexão pode ser feita de maneira seletiva, através da escolha da classe do dispositivo que está comunicando, e os serviços podem ser habilitados apenas para determinado tipo de dispositivo. Scatternets Um dos tipos de conexões previstos no Bluetooth, é a conexão interpiconet, denominada scatternet. A scatternet pode prover conectividade entre os dispositivos ao longo de distâncias ainda maiores que o alcance dos rádios. Devido ao fato de o Bluetooth mesclar o TDD com o FHCDMA, a comunicação interpiconet trás diversas peculiariedades como a necessidade de sincronização e descobrimento entre as piconets vizinhas. A comunicação interpiconets é feita utilizando-se os modos de economia de energia, onde os elementos que pertencem a mais de uma piconet negociam os intervalos de conexão ativa entre elas. Apesar de serem previstas na

68 CAPÍTULO 4. BLUETOOTH 55 especificação, esta não define nenhum método de organização ou formação das scatternets, sendo uma área de pesquisa em aberto. A formação das scatternets pode ser caracterizada de duas formas: (i) como um evento controlado, onde uma aplicação, utilizando funcionalidades de diversas piconets conhecidas, cria uma scatternet para fazer acesso a elas, ou (ii) de maneira ad hoc, onde algum tipo de serviço é requerido e não se encontra em nenhuma piconet conhecida. O último caso requer duas funcionalidades: a roteação, onde os nós possuem a capacidade de encaminhamento de pacotes entre diferentes piconets e a descoberta de serviços, onde é necessário verificar as capacidades e funcionalidades dos nós comunicáveis entre as diferentes piconets. Um dos pontos principais na formação das scatternets são as topologias, uma vez que os dispositivos passam por procedimentos de descoberta e formação de enlaces ponto-a-ponto de maneira explícita. E a sincronização entre esses elementos é necessária para o controle do uso da banda passante Link Manager Protocol - LMP O Link Manager Protocol, (LMP) é usado para controlar e negociar todos os aspectos da operação de conexão entre dois elementos no Bluetooth. Isto inclui a inicialização e o controle dos canais lógicos e físicos e se aplicam apenas ao mestre e escravo que estão se comunicando diretamente. Em cada dispositivo existe um módulo denominado Link Manager, LM que utiliza as mensagens e regras definidas no LMP. O LM recebe todas essas mensagens e as trata diretamente, sem propagar para outras camadas. Os pacotes do LMP trafegam sobre o canal ACL, e para a maior eficiência, e por serem pacotes de controle, eles possuem uma prioridade maior do que os outros da Baseband. Através da LMP, as camadas superiores coordenam as funcionalidades da Baseband. Os conjuntos de funções da LMP são as seguintes: Propriedades dos dispositivos: descrevem as funcionalidades da especificação que a interface Bluetooth implementa, como suporte ao canal lógico SCO, capacidade de efetuar o RSSI, tipos de pacotes suportados, capacidades de transmissão multi-slot, controle de potência de transmissão, suporte aos modos de economia de energia; Controle da Conexão: coordena a conexão entre as unidades, efetuando diversas operações sobre esta, como: a criação, que ocorre após o processo de paging, a finalização, o controle da potência de transmissão das unidades envolvidas, a supervisão da comunicação, que detecta falhas na comunicação devido a distanciamento entre as unidades, capacidade de ajuste do tipo de pacote à qualidade do canal de transmissão e suporte a QoS;

69 CAPÍTULO 4. BLUETOOTH 56 Segurança: descreve as funções de controle de segurança da unidade: autenticação, criptografia, controle de chave por canal, pairing das chaves; Informações Remotas: suporte a troca de informações das propriedades dos dispositivos; Host Controller Interface - HCI O Host Controller Interface, HCI, cria uma interface de comandos para a Baseband e o LM, possibilitando o acesso ao status do hardware e registros de controle. Essencialmente essa interface provê um método uniforme de acesso as funcionalidades da Baseband e da LM, de forma a deixar seu acesso transparente para os drivers e aplicações que a estejam acessando. A tabela 4.7 mostra alguns dos comandos interpretados pelo HCI. Comando HCI reset HCI create connection HCI read BD ADDR HCI disconnect HCI inquiry HCI HoldMode Descrição Reinicia o dispositivos Cria uma conexão ACL Lê o endereço do dispositivo Desconecta o canal Efetua o Inquiry Entra em modo Hold Tabela 4.7: Alguns comandos do HCI A implementação do HCI se encontrar em três partes da unidade Bluetooth: no firmware, onde acessa as funções da Baseband e do LMP, além dos registros de eventos e controle, no driver de acesso, implementado no driver do dispositivo e responsável por notificar a aplicação se algum evento relacionado as camadas inferiores acontece, e por fim o Host Controller Transport Layer, responsável pela comunicação entre os dois. Este último é necessário, uma vez que entre o hardware da interface Bluetooth e seu driver podem existir outras interfaces, como USB, PCMCIA e UART. Essa propriedade foi considerada, uma vez que os dispositivos Bluetooth podem utilizar dessas interfaces para serem conectados em quaisquer tipos de máquinas. A figura 4.7 mostra como é estruturada a implementação do HCI nos dispositivos.

70 CAPÍTULO 4. BLUETOOTH 57 Figura 4.7: Esquema do funcionamento do HCI Logical Link Control and Adaptation Protocol - L2CAP O Logical Link Control and Adaptation Protocol, L2CAP, é responsável por controlar os fluxo de dados das camadas superiores, provendo serviços orientados a conexão e a pacotes. Ele utiliza apenas os canais lógicos ACL, sobre os quais cria seus próprios canais para a transmissão, suportando capacidades de multiplexação, segmentação e remontagem dos dados que trafegam. O L2CAP não possui suporte para os canais SCO. O L2CAP cria uma interface entre a camada da Baseband e os outros protocolos de comunicação, como o Bluetooth Service Discovery Protocol (SDP), RFCOMM e o Telephony Control (TCS), permite que esses possam transmitir massas de dados acima de 64kb, e habilita um controle de fluxo e retransmissão de dados por cada canal de dados criado. Ele também permite um nível de segurança, onde os dados oriundos de outras fontes não identificadas são descartadas, impedindo ataques de interceptação e mudança dos dados.

71 CAPÍTULO 4. BLUETOOTH Service Discovery Protocol - SDP As etapas envolvidas no descobrimento de serviços no Bluetooth, onde o conjunto de serviços são disponíveis de acordo a proximidade e mobilidade dos dispositivos, são diferentes do descobrimento de serviços usados nos ambientes de redes tradicionais. O Service Discovery Protocol (SDP) atende o descobrimento de serviços voltado específicamente para o ambiente de funcionamento do Bluetooth, sendo otimizado para a natureza de comunicação dinâmica. O SDP foca na descoberta dos serviços disponíveis nos dispositivos Bluetooth, e informando quais as características disponíveis nestes serviços. Mas não define nenhum método de acesso, sendo que, uma vez descobertos, eles podem ser acessados de maneira dependente do tipo de serviço, incluindo o uso de outros tipos de descoberta de serviço. 4.4 Perfis de Funcionamento Desde seu projeto inicial, o Bluetooth foi criado para atender um certo número de dispositivos diferenciados por suas capacidades computacional e de armazenamento, consumo de energia e funcionalidades oferecidas. Dessa forma, ele pode ser configurado para ter um perfil de funcionamento se estiver sendo considerado uma comunicação de aúdio em um fone de ouvido e um outro se estiver efetuando troca de arquivos entre um PDA e um notebook. Cada um desses perfis descreve a maneira que os elementos da pilha do Bluetooth devem funcionar, a quantidade de memória alocada e a coordenação dos canais de comunicação. Esses perfis de funcionamento podem estar implementados tanto nas aplicações, quanto no sistema operacional, deixando o Bluetooth como uma interface de acesso aos periféricos desses. As aplicações envolvidas diretamente com o Bluetooth devem trabalhar com esses perfis de funcionamento, caracterizando os dispositivos envolvidos e as suas capacidades de transmissão. O principal perfil de funcionamento é o Generic Access Profile, GAP, responsável pelas regras do estabelecimento de conexão entre dois elementos. A partir dele, os outros perfis tem a sua base de funcionamento, como por exemplo o perfil de acesso a comunicação serial, Serial Port Profile, SPP, que após estabelecida a conexão, inicia o emulador de comunicação RS-232, o RFCOMM e cria uma porta serial sobre a comunicação Bluetooth. Caso for iniciado o perfil de comunicação a acesso discado, o Dial-Up Networking Profile, DUN, ele utiliza a conexão estabelecida pelo SPP e inicializa um serviço de conexão a Internet. A figura 4.8 mostra todos os perfis previstos na especificação. Como alguns dispositivos Bluetooth não atendem a todos os perfis descritos, como os fones de ouvido, a implementação do hardware dessas interfaces não precisa conter todos os elementos da pilha, no que se refere as camadas superiores, diminuindo assim ainda mais o tamanho e consumo de energia dessas interfaces.

72 CAPÍTULO 4. BLUETOOTH 59 Figura 4.8: Perfis de Funcionamento do Bluetooth. [1] 4.5 Bluetooth no Linux Muitas implementações de interfaces Bluetooth para o uso e desenvolvimento estão disponíveis no mercado, mas muitas delas são soluções fechadas e de alto custo. Por ser uma tecnologia muito recente, alguns dos problemas dessas implementações é não estarem integradas a muitos produtos, onde os softwares de diversas empresas não reconhecem hardwares de outras empresas. Nesse caso, as soluções de software de código aberto são mais eficientes, pois permitem um desenvolvimento comum das diferentes tecnologias, e a GPL permite o desenvolvimento de novas aplicações de maneira livre. Atualmente existem quatro projetos de código aberto de desenvolvimento de pilhas Bluetooth para o Linux. Estes projetos são paralelos, apesar de diversas funcionalidades são reaproveitadas entre alguns: The AXIS OpenBT Bluetooth IBM BlueDrekar Bluetooth BlueZ Bluetooth[52] Affix Bluetooth Protocol Stack for Linux[2] A seguir, é feita uma breve descrição de cada um, e as definições da escolha de qual foi utilizado neste trabalho.

73 CAPÍTULO 4. BLUETOOTH 60 The AXIS OpenBT Bluetooth Esta pilha do procotolo Bluetooth foi a primeira a aderir ao software de código aberto. Foi originalmente desenvolvida pela empresa AXIS Communications, sendo desenvolvida para atender aos produtos de hardware desenvolvidos pela empresa, como pontos de acesso e interfaces para acesso a periféricos. Dentre suas características estão: suporte a versão 1.0b da especificação; suporte básico ao L2CAP, SDP e RFCOMM; suporte aos perfis de porta serial e acesso discado; sem suporte para o canal SCO Apesar de ser a primeira de todas, é a menos robusta, com diversos problemas de programação e está com seu desenvolvimento interrompido desde IBM BlueDrekar Bluetooth Esta pilha do protocolo foi desenvolvida pela IBM, com o propósito original de criar uma implementação de referência para diversos outros dispositivos Bluetooth. Ela possui suporte para a versão 1.1 da especificação, mas trabalha somente com os módulos Bluetooth que utilizam a comunicação UART. Em abril de 2002, seu desenvolvimento foi interrompido pela IBM. BlueZ Bluetooth Stack O BlueZ [52] é a pilha oficial do Linux, sendo incluída no Kernel do Linux. Originalmente desenvolvida pela Qualcomm, ela faz parte do kernel oficial desde a versão 2.4. Ela é composta de diversos módulos que permitem um funcionamento fléxivel. Algumas de suas principais características: suporte a todas as camadas do protocolo Bluetooth; implementação flexível e modular; suporte a diversos tipos de dispositivos Bluetooth;

74 CAPÍTULO 4. BLUETOOTH 61 suporte para o L2CAP, SCO, RFCOMM e SDP; suporte a diversos perfis de funcionamento: GAP, DUN, LAN, PAN e Head-Set. possui um emulador de dispositivo, sobre o HCI, um módulode detecção de funcionamento e teste; Por ser considerada a pilha oficial, o seu desenvolvimento é bem ativo, com desenvolvedores atuando, sendo uma das que mais evolui. Em seu projeto, esta pilha trata a interface Bluetooth como um dispositivo periférico, como um USB sem fio, onde as comunicações com as aplicações é feita através desse acesso aos dispositivos perfiféricos do sistema operacional. Ela fornece um conjunto de ferramentas e bibliotecas que possibilitam o acesso total a interface Bluetooth, permitindo sua configuração e ajuste. Affix Bluetooth Protocol Stack for Linux O Affix [2] foi inicialmente desenvolvido pelo centro de pesquisa da Nokia, e atende a diversos tipos de dispositivos Bluetooth, possuindo diversas características semelhantes ao BlueZ. Sua principal diferença é o projeto considerar que a interface Bluetooth é um dispositivo de acesso a rede, ao invés de um acesso a periféricos. Dessa maneira, sua arquitetura provê um as funcionalidades de comunicação semelhantes a de outras interfaces de redes, como o uso de sockets para as diversas camadas de comunicação, e ferramentas de controle e análise de interfaces de redes, como o Ethereal [53]. A sua documentação é bem detalhada, facilitando consideravelmente seu uso. O seu desenvolvimento ocorre de maneira ativa, mas com menos desenvolvedores envolvidos, como no caso do BlueZ. A sua instalação pode entrar em conflito com as funcionalidades do BlueZ, sendo necessário desativá-lo para que o Affix funcione corretamente. Algumas das suas principais características são: suporte a todas as funcionalidades das camadas HCI, L2CAP, RFCOMM, SDP; suporte ao canal SCO; interface de Socket para a L2CAP, RFCOMM e o canal SCO; independente de plataforma: i386,arm, PowerPC, Sparc; independente do hardware do módulo Bluetooth, possibilitando seu uso em interfaces UART, USB, PCI e PCMCIA.

75 CAPÍTULO 4. BLUETOOTH 62 Devido as essas características, e principalmente, pela sua arquitetura considerar a interface Bluetooth como um dispositivo de rede, o Affix foi escolhido como plataforma base neste trabalho. O uso desse suporte permite o desenvolvimento de aplicações que desejam utilizar o Bluetooth como interface de rede, sem tanta transparência, como a oferecida no BlueZ. O uso do suporte de rede do Affix facilita parte do desenvolvimento da API, possibilitando diversos tipos de testes e comunicações com as interfaces. Mas como desenvolvimento da API não utiliza todas as funcionalidades específicas do Affix, trabalhando diretamente na sua interface do HCI, sendo assim também portável, com algumas modificações, para a pilha oficial do Linux, o BlueZ. 4.6 Kits Bluetooth Neste trabalho foram utilizados alguns dispositivos de diferentes fabricantes e chipsets. Entre estes dispositivos, dois deles são produtos comerciais, um ponto de acesso Bluetooth para uma rede do tipo LAN, da WidComm, e uma interface Bluetooth-USB da TDK, que permite conectar a interface Bluetooth numa porta USB de um PC, e os outros são partes integrantes do kit de desenvolvimento da Ericsson, o Ericsson Bluetooth Application Toolkit. Este kit é constituído de quatro elementos Bluetooth, que possuem interfaces de comunicação USB e UART. Eles utilizam os chipsets R0K [54], que implementa a versão 1.1 da especificação, e é capaz de comunicações com até quatro elementos, e o ROK [55], que por sua vez implementa a versão 1.0b da especificação, e com capacidade de comunicação com apenas um elemento. Este último módulo não contempla toda a especificação, versão 1.0b, possuindo apenas as funcionalidades básicas da especificação [56]. A interface Bluetooth-USB e o ponto de acesso utilizam o chipset BlueCore, da CSR [57], que implementa a versão 1.1, com diversas funcionalidades, apesar de permitir apenas uma conexão por vez. Os kits de desenvolvimento comerciais possuem módulos de software para o uso no Windows, mas grande parte do seu código é fechado, sendo voltados para o desenvolvimento de aplicações mais alto nível. Dessa maneira, todos os elementos Bluetooth trabalharam com a pilha do Affix, que consegue acessar todas as funcionalidades dos chipsets utilizados Interface de programação para o Bluetooth O desenvolvimento da API sobre o Bluetooth utiliza as funcionalidades básicas implementadas pelo Affix. Este é responsável por identificar o dispositivo na sua interface com o sistema (USB, UART, PCMCIA) e carregar os drivers respectivos do HCI e as camadas de acesso. A figura 4.9 mostra o funcionamento dos módulos da pilha Affix.

76 CAPÍTULO 4. BLUETOOTH 63 Através destas camadas, a API acessa as funções do driver HCI, como as bibliotecas que se encontram no espaço do usuário que acessam a HCI Socket Interface, de maneira que possibilita o acesso a essas informações no espaço do usuário, possibilitando a programação e os acessos a interface Bluetooth. Figura 4.9: Blocos de acesso do Affix. [2] A comunicação com o driver Bluetooth é feita de maneira semelhante a do Wi-Fi, descrita na seção 3.7.1, através do uso das função ioctl e as constantes que definem as funções da HCI. Como cada função utiliza um conjunto de parâmetros, estes são agrupados de acordo com as características destas, como por exemplo a função HCI Inquiry, que recebe como parâmetros o tempo máximo de inquiry e uma lista que será preenchida com os endereços das unidades encontradas na região. As informações do contexto da rede, descritas na seção 2.3.1, são feitas a partir de um conjunto de funções que possibilitam a coleta de informações do canal de comunicações, as quais são:

77 CAPÍTULO 4. BLUETOOTH 64 Leitura do nível da potência de transmissão, (HCI ReadTransmitPowerLevel): retorna a potência de transmissão entre os dois elementos comunicantes; Qualidade do canal de comunicação, (HCI ReadQualityInfo): este comando retorna a qualidade do canal entre o módulo local e o dispositivo remoto, sendo este valor entre 0 e 255. O calculo desta métrica é específica do fabricante do hardware, podendo ser baseada na vazão dos dados, na taxa; Nível de RSSI, (HCI ReadRSSI): o Bluetooth trabalha com um conceito de região de alcance, onde, se os elementos se encontram numa região definida com Golden Range, a função de medida do RSSI retorna 0. Se estiver fora desse alcance, ela retorna valores entre -1 e -127, e se estiver muito próximo da estação emissora, ou acontecer algum tipo de sobrecarga na recepção, ela retorna valores entre 1 e 128. Dessa maneira, nesse tipo de interface, é possível determinar as regiões de mobilidade. A figura 4.10 mostra os valores, em db da região do Golden Range. Figura 4.10: Golden Range do receptor Bluetooth. [1]

78 Capítulo 5 Implementação Este capítulo descreve a implementação da API proposta no trabalho. A seção 5.1 descreve a arquitetura projetada, a seção 5.2 discute as questões de gerenciamento com a API e a seção 5.3 apresenta a implementação da API. 5.1 Arquitetura da API As principais operações sobre essas interfaces podem ser agrupadas em funções de leituras do desempenho e de ajuste da configuração. Entretanto, é necessário o uso de funções auxiliares, pois as especificações das interfaces da WPANs e WLANs determinam diversas funcionalidades de controle e gerência, cuja implementação pode ser opcional e nem sempre são adotadas pelos fabricantes. Sendo assim foi definido um conjunto de funções que descreve as caraterísticas da implementação da interface utilizada. Sobre as informações do contexto da rede foram criados mais dois grupos de funções: as que medem os parâmetros e estatísticas locais e as que avaliam a qualidade do canal. As funções do primeiro grupo são relativas ao funcionamento da interface local, e passíveis de reconfiguração, onde os seus valores influenciam em fatores como vazão dos dados e números de retransmissões. O segundo grupo avalia o comportamento dos nós vizinhos, verificando a qualidade das conexões através das medidas do RSSI e do nível de ruído do sinal, fornecidos pelo modem de rádio, sendo possível estabelecer o nível de conectividade e mobilidade. Para a gerência das informações, foram definidas funções que criam arquivos no padrão XML, a partir das estruturas de dados criadas para a manipulação das interfaces. Dessa maneira, as funções foram agrupadas em blocos, de acordo com as suas definições. A Figura

79 CAPÍTULO 5. IMPLEMENTAÇÃO 66 mostra a divisão desses blocos da API. Figura 5.1: Arquitetura Funcional da API Informações do Dispositivo: identifica as operações existentes nos drivers das interfaces e as funcionalidades implementadas nestas. Nas interfaces Wi-Fi, identifica quais as características de controle são acessíveis, a versão e o fabricante do chipset e quais parâmetros podem ser configurados. Nas interfaces Bluetooth, informa o fabricante, a versão da especificação utilizada, quais as operações HCI são acessiveis e as configurações do rádio modem; Configuração: este bloco acessa todas as configurações da interface, desde as que permitem seu funcionamento básico, até o ajuste de parâmetros para otimizar o desempenho. Tanto no Wi-Fi quanto no Bluetooth são informações de ajuste dos temporizadores utilizados, dos pacotes e das medidas de potência de sinal transmitido e a sensibilidade da interface; Contexto de Rede: este bloco de funções acessa os dados referentes ao contexto de comunicação da rede, sendo o ponto de partida para a inferência do comportamento do dispositivo na rede. Ele foi divido em dois subblocos: Qualidade do Canal: coleta as medidas da qualidades dos canais de comunicação, através de amostragens temporais das medidas do RSSI, do nível de qualidade do canal e da potência de transmissão da interface. A partir desses valores é possivel determinar o nível de conectividade e mobilidade do dispositivo, e num conjunto de amostragens temporais desses valores criar um histórico desses parâmetros. Por meio disso, é possível estipular um determinado comportamento da qualidade da conexão, uma vez que a análise desse histórico é baseada em estudos estatísticos de primeira

Redes sem Fio Redes Locais Wireless (WLANs) Ricardo Kléber. Ricardo Kléber

Redes sem Fio Redes Locais Wireless (WLANs) Ricardo Kléber. Ricardo Kléber Redes sem Fio 2016.1 Redes Locais Wireless (WLANs) 802.11 Curso Superior de Tecnologia em Sistemas para Internet Turma: TEC.SIS.5M Redes sem Fio Conteúdo Programático Sistemas de comunicação wireless Redes

Leia mais

Palestra sobre Wireless

Palestra sobre Wireless Palestra sobre Wireless LUIZ HENRIQUE COLETTO e-mail: henrique@cirp.usp.br Seção Técnica de Manutenção Apresentação Os avanços da comunicação nos últimos anos, possibilitaram o surgimento de várias tecnologias,

Leia mais

Arquitetura de Redes de Computadores e Tecnologia de Implementação de Redes. Personal Area Networks)

Arquitetura de Redes de Computadores e Tecnologia de Implementação de Redes. Personal Area Networks) Arquitetura de Redes de Computadores e Tecnologia de Implementação de Redes 2016.2 Camada Física Tecnologias Alternativas de Meios Físicos * WPANs (Wireless( Personal Area Networks) Curso Técnico Integrado

Leia mais

Uma Introdução à Tecnologia Bluetooth

Uma Introdução à Tecnologia Bluetooth Uma Introdução à Tecnologia Bluetooth Caso de Uso 1: Headset genérico Caso de Uso 2: Conexão de periféricos Objetivos do Bluetooth Originalmente: substituto para cabeamento entre dispositivos Solução wireless

Leia mais

FUNDAMENTOS DE REDES DE COMPUTADORES AULA 5: REDE DE ACESSO CAMADA ENLACE. Prof. LUIZ LEÃO

FUNDAMENTOS DE REDES DE COMPUTADORES AULA 5: REDE DE ACESSO CAMADA ENLACE. Prof. LUIZ LEÃO AULA 5: REDE DE ACESSO CAMADA ENLACE Prof. LUIZ LEÃO Conteúdo Desta Aula FLUXO DE TRANSMISSÃO TOPOLOGIA FÍSICA PROTOCOLOS DE CONTROLO DE ACESSO 1 2 3 4 5 LINHAS DE COMUNICAÇÃO MÉTODOS DE CONTROLE DE ACESSO

Leia mais

Redes sem Fio WPANs (IEEE ) Wireless Personal Area Networks. Ricardo Kléber. Ricardo Kléber

Redes sem Fio WPANs (IEEE ) Wireless Personal Area Networks. Ricardo Kléber. Ricardo Kléber Redes sem Fio 2016.1 WPANs (IEEE 802.15) Wireless Personal Area Networks Curso Superior de Tecnologia em Sistemas para Internet Turma: TEC.SIS.5M Redes sem Fio Onde Estamos? Sistemas de comunicação wireless

Leia mais

AULA 8 -BLUETOOTH. Prof. Pedro Braconnot Velloso

AULA 8 -BLUETOOTH. Prof. Pedro Braconnot Velloso AULA 8 -BLUETOOTH Prof. Pedro Braconnot Velloso Resumo da aula anterior Camada enlace Protocolos de controle de acesso ao meio Divisão de canal Acesso aleatório CSMA Revezamento Padrões para redes sem

Leia mais

Redes Sem Fio. Alberto Felipe Friderichs Barros https://albertofelipeblog.wordpress.com

Redes Sem Fio. Alberto Felipe Friderichs Barros https://albertofelipeblog.wordpress.com Redes Sem Fio Alberto Felipe Friderichs Barros alberto.barros@ifsc.edu.br https://albertofelipeblog.wordpress.com Introdução Uma rede sem fio é uma infraestrutura das comunicações sem fio que permite a

Leia mais

Redes de Computadores I REDES AD HOC. Seminário Novas Tecnologias em Redes. Katharine Schaeffer Fertig Kristhine Schaeffer Fertig

Redes de Computadores I REDES AD HOC. Seminário Novas Tecnologias em Redes. Katharine Schaeffer Fertig Kristhine Schaeffer Fertig Redes de Computadores I Seminário Novas Tecnologias em Redes REDES AD HOC Katharine Schaeffer Fertig Kristhine Schaeffer Fertig Introdução Ad Hoc: como o conceito é possível? Equipamentos poderosos, maior

Leia mais

Telecomunicações. Prof. MSc André Y. Kusumoto

Telecomunicações. Prof. MSc André Y. Kusumoto Telecomunicações Prof. MSc André Y. Kusumoto andrekusumoto.unip@gmail.com Conceitos de Rede Sem Fio A comunicação sem fios é uma das tecnologias que mais tem crescido nos últimos anos. Atualmente, as LANs

Leia mais

A subcamada de controle de acesso ao meio. LANs sem fios Pontes entre LANs

A subcamada de controle de acesso ao meio. LANs sem fios Pontes entre LANs A subcamada de controle de acesso ao meio LANs sem fios Pontes entre LANs LANs sem fios Tipo de rede que mais se populariza Pode operar de duas formas: com ponto de acesso e sem ponto de acesso Descrita

Leia mais

Redes Locais (LANs): PRINCÍPIOS

Redes Locais (LANs): PRINCÍPIOS Redes Locais (LANs): PRINCÍPIOS Aplicações de LANs Para computadores pessoais Baixo custo Taxas de transmissão limitadas Para conexão de redes Interconexão de sistemas maiores (grandes servidores e dispositivos

Leia mais

Padrão IEEE PROJETO DE REDES SEM FIO Prof. Dr. Andrei Piccinini Legg. Bruno Lucena Raissa Monego

Padrão IEEE PROJETO DE REDES SEM FIO Prof. Dr. Andrei Piccinini Legg. Bruno Lucena Raissa Monego PROJETO DE REDES SEM FIO Prof. Dr. Andrei Piccinini Legg Bruno Lucena Raissa Monego Histórico O primeiro sistema de computadores que empregou as técnicas de radiodifusão em vez de cabos ponto a ponto foi

Leia mais

Bluetooth e IEEE Alunos: Elmano R. P. Filho Rossini A. M. Bezerra Sérgio França de Pinho

Bluetooth e IEEE Alunos: Elmano R. P. Filho Rossini A. M. Bezerra Sérgio França de Pinho Bluetooth e IEEE 802.15 Alunos: Elmano R. P. Filho Rossini A. M. Bezerra Sérgio França de Pinho Rio, 2 de Julho de 2003 Tópicos Abordados Tecnologias Sem-fio IEEE 802.15 e Bluetooth Funcionamento do Bluetooth

Leia mais

Definição Rede Computadores

Definição Rede Computadores Definição Rede Computadores Uma rede de computadores consiste na interconexão entre dois ou mais computadores e dispositivos complementares acoplados através de recursos de comunicação, geograficamente

Leia mais

WIRELESS (WI-FI) REDES E SR1 ETER-FAETEC. Rio de Janeiro - RJ ETER-FAETEC

WIRELESS (WI-FI) REDES E SR1 ETER-FAETEC. Rio de Janeiro - RJ ETER-FAETEC WIRELESS (WI-FI) REDES E SR1 Rio de Janeiro - RJ INTRODUÇÃO O termo wireless significa sem fio. Toda tecnologia de transmissão de dados que tem como característica a ausência de fios e cabos na transmissão

Leia mais

Atualmente trabalha como Engenheiro de Aplicação na Freescale Semicondutores.

Atualmente trabalha como Engenheiro de Aplicação na Freescale Semicondutores. ZigBee Este tutorial apresenta o protocolo ZigBee, desenvolvido para para permitir comunicação sem fio confiável, com baixo consumo de energia e baixas taxas de transmissão para aplicações de monitoramento

Leia mais

Wi-Fi: LANs ou WLANs

Wi-Fi: LANs ou WLANs Wi-Fi: LANs ou WLANs Introdução O desenvolvimento de padrões (protocolos) é um método para garantir que todos os dispositivos se comuniquem entre si por uma mesma tecnologia. No caso das redes Wi-Fi, isso

Leia mais

Redes de Computadores

Redes de Computadores Redes de Computadores Camada de Transporte Antonio Alfredo Ferreira Loureiro loureiro@dcc.ufmg.br Departamento de Ciência da Computação Universidade Federal de Minas Gerais UFMG/DCC Redes de Computadores

Leia mais

Componente de aplicação. Figura 1 - Elementos funcionais de uma aplicação sendo executados de forma distribuída

Componente de aplicação. Figura 1 - Elementos funcionais de uma aplicação sendo executados de forma distribuída 11 1 Introdução Recentes avanços em redes de computadores impulsionaram a busca e o desenvolvimento de meios para facilitar e acelerar o desenvolvimento de aplicações em sistemas distribuídos, tornando

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS CUP Disk Memoey CUP Memoey Disk Network CUP Memoey Disk Introdução aos Sistemas Distribuídos 1 Sumário Evolução Problema/Contexto O que é um Sistema Distribuído? Vantagens e Desvantagens

Leia mais

Redes de Computadores.

Redes de Computadores. Redes de Computadores www.profjvidal.com REDES PONTO-A-PONTO E CLIENTE-SERVIDOR REDES DE COMPUTADORES Uma rede de computadores é formada por um conjunto de módulos processadores capazes de trocar informações

Leia mais

Meios de Comunicação de Dados.

Meios de Comunicação de Dados. Meios de Comunicação de Dados www.profjvidal.com Redes sem Fio: - Com infraestrutura - Sem infraestrutura ou AD-HOC Introdução As redes de computadores vieram para revolucionar a forma como nos comunicamos

Leia mais

Redes Móveis. Redes sem fio e redes móveis Introdução. Prof. Jó Ueyama Agosto/2010 SSC

Redes Móveis. Redes sem fio e redes móveis Introdução. Prof. Jó Ueyama Agosto/2010 SSC Redes Móveis Redes sem fio e redes móveis Introdução Prof. Jó Ueyama Agosto/2010 SSC0548 2010 1 Baseado no Capítulo 6 do 6.1 Introdução Redes Sem fio 6.2 Enlaces sem fio, características 6.3 IEEE 802.11

Leia mais

RCO2 WLAN: IEEE

RCO2 WLAN: IEEE RCO2 : IEEE 802.11 1 : Wireless Local Area Network Redes locais sem-fio Grande demanda por comunicação sem-fio: Elimina necessidade de cabeamento Provê o acesso à rede em qualquer localização Provê acesso

Leia mais

Aula 4 Hardware de Comunicação sem-fio

Aula 4 Hardware de Comunicação sem-fio Comunicação Sem Fio (Wireless) Aula 4 Hardware de Comunicação sem-fio Prof. Fred Sauer email: fsauer@gmail.com http://www.fredsauer.com.br 1/22 Estações (Stations STA): Componentes de Hardware são as estações

Leia mais

Tecnologias e Componentes de Redes

Tecnologias e Componentes de Redes Tecnologias e Componentes de Redes Material de apoio Redes sem fio Cap.13 19/01/2012 2 Esclarecimentos Esse material é de apoio para as aulas da disciplina e não substitui a leitura da bibliografia básica.

Leia mais

Redes sem Fio Redes Locais Wireless (WLANs) Ricardo Kléber. Ricardo Kléber

Redes sem Fio Redes Locais Wireless (WLANs) Ricardo Kléber. Ricardo Kléber Redes sem Fio 2016.1 Redes Locais Wireless (WLANs) 802.11 Curso Superior de Tecnologia em Sistemas para Internet Turma: TEC.SIS.5M Redes sem Fio Conteúdo Programático Sistemas de comunicação wireless Redes

Leia mais

2 Padrão Histórico

2 Padrão Histórico 2 Padrão 802.11 2.1. Histórico As primeiras tecnologias sem fio surgiram em 1990 utilizando a frequência de 900 Mhz e oferecendo uma taxa de transmissão de 1 Mb/s. Posteriormente, em 1992 vieram implementações

Leia mais

Redes de Computadores

Redes de Computadores Redes de Computadores Introdução Rede O que é?? 1 O que é uma rede É a conexão de duas ou mais máquinas com o objetivo de compartilhar recursos entre uma máquina e outra. Recursos Podem ser físicos ou

Leia mais

Agenda Camada de Enlace

Agenda Camada de Enlace Infraestrutura de Redes de Computadores Turma : TMS 20171.3.01112.1M Camada de Enlace Parte I Prof. Thiago Dutra Agenda Camada de Enlace nintrodução nprotocolos de Acesso Múltiplo

Leia mais

Meios de Comunicação de Dados.

Meios de Comunicação de Dados. Meios de Comunicação de Dados www.profjvidal.com Redes sem Fio: - Com infraestrutura - Sem infraestrutura ou AD-HOC Introdução As redes de computadores vieram para revolucionar a forma como nos comunicamos

Leia mais

Telecomunicações. Prof. MSc André Y. Kusumoto

Telecomunicações. Prof. MSc André Y. Kusumoto Telecomunicações Prof. MSc André Y. Kusumoto andrekusumoto.unip@gmail.com Conceitos de Rede Sem Fio A comunicação sem fios é uma das tecnologias que mais tem crescido nos últimos anos. Atualmente, as LANs

Leia mais

Redes de Comunicação de Dados

Redes de Comunicação de Dados Redes de Comunicação de Dados 1 - Objetivo O grande objetivo é a formação geral de um especialista capaz de projetar redes de computadores, tanto sob o aspecto de software quanto de hardware, a partir

Leia mais

Sis i te t mas a O perac a i c o i nai a s um p ouco c d a a h is i tó t ria i. a... SO His i t s ó t r ó ic i o

Sis i te t mas a O perac a i c o i nai a s um p ouco c d a a h is i tó t ria i. a... SO His i t s ó t r ó ic i o Sistemas Operacionais um pouco da história... - Evolução dos SO s através do tempo - Novas técnicas não são assimiladas simultaneamente por todos - Década de 40, não existia SO - O programador é o faz

Leia mais

Redes TCP/IP sobre espectro espalhado

Redes TCP/IP sobre espectro espalhado Redes TCP/IP sobre espectro espalhado Ethy Henriques Brito Danton Nunes setembro de 2002 Quem somos Provedor de acesso à Internet para empresas (desde 1995). Primeira rede sem fio no Vale do Paraíba e

Leia mais

Prof. Samuel Henrique Bucke Brito

Prof. Samuel Henrique Bucke Brito Introdução às Redes de Computadores www.labcisco.com.br ::: shbbrito@labcisco.com.br Prof. Samuel Henrique Bucke Brito Introdução Com os computadores conectados através da Internet a informação é disseminada

Leia mais

Informática I. Aula 20. Aula 20-26/06/06 1

Informática I. Aula 20.  Aula 20-26/06/06 1 Informática I Aula 20 http://www.ic.uff.br/~bianca/informatica1/ Aula 20-26/06/06 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação

Leia mais

Redes de Computadores

Redes de Computadores Redes de Computadores Prof. Marcelo Gonçalves Rubinstein Programa de Pós-Graduação em Engenharia Eletrônica Faculdade de Engenharia Universidade do Estado do Rio de Janeiro Ementa Introdução a Redes de

Leia mais

Camada física. Responsável por. Sugestão de uso da banda ISM na faixa de 915 MHz

Camada física. Responsável por. Sugestão de uso da banda ISM na faixa de 915 MHz Camada física Responsável por Seleção de frequência Geração de portadora Detecção de sinal Modulação Criptografia Sugestão de uso da banda ISM na faixa de 915 MHz Industrial, Scientific, and Medical WINS

Leia mais

PTC Aula Introdução 3.2 Enlaces sem fio, características 3.3 WiFi: LANs Sem fio (Kurose, p ) (Peterson, p.

PTC Aula Introdução 3.2 Enlaces sem fio, características 3.3 WiFi: LANs Sem fio (Kurose, p ) (Peterson, p. PTC 2550 - Aula 11 3.1 Introdução 3.2 Enlaces sem fio, características 3.3 WiFi: LANs Sem fio 802.11 (Kurose, p. 362-389) (Peterson, p. 79-91) 03/05/2017 Muitos slides adaptados com autorização de J.F

Leia mais

Técnicas de Acesso Múltiplo: FDMA e TDMA. CMS Bruno William Wisintainer

Técnicas de Acesso Múltiplo: FDMA e TDMA. CMS Bruno William Wisintainer Técnicas de Acesso Múltiplo: FDMA e TDMA CMS 60808 2016-1 Bruno William Wisintainer bruno.wisintainer@ifsc.edu.br Histórico Buscando uma maior eficiência do uso do espectro disponível aos serviços de rádio

Leia mais

Sistemas de Comunicações sem Fio. Redes sem Fio

Sistemas de Comunicações sem Fio. Redes sem Fio Sistemas de Comunicações sem Fio Redes sem Fio Histórico Comunicação entre computadores sem fio teve inicio no fim da década de 70 Laboratórios da IBM na Suíça: uso de infravermelho para não ter interferência

Leia mais

Redes de Computadores

Redes de Computadores Instituto Superior Politécnico de Ciências e Tecnologia Redes de Computadores Prof Pedro Vunge I Semestre de 2017 SUMÁRIO I - Introdução às Redes de Computadores 1.1 Considerações iniciais 1.2 O surgimento

Leia mais

Matéria: Redes de Computadores/ Telemática REDES SEM FIO. Prof. Esp. Patricia Peixoto. 2 Bimestre

Matéria: Redes de Computadores/ Telemática REDES SEM FIO. Prof. Esp. Patricia Peixoto. 2 Bimestre Matéria: Redes de Computadores/ Telemática REDES SEM FIO Prof. Esp. Patricia Peixoto 2 Bimestre WIRELESS O termo wireless, significa sem fio, possui alguns sinônimos tais como: Rede sem fio Comunicação

Leia mais

MONTES RELATÓRIO FINAL DE PROJETO MEIO DE TRANAMISSÃO

MONTES RELATÓRIO FINAL DE PROJETO MEIO DE TRANAMISSÃO Serviço Nacional de Aprendizagem Comercial E.E.P. Senac Pelotas Centro Histórico Programa Nacional de Acesso ao Ensino Técnico e Emprego Curso Técnico em Informática SANDI MONTES RELATÓRIO FINAL DE PROJETO

Leia mais

Técnicas de acesso múltiplo Aloha. O Nível de Enlace nas Redes Locais. Aloha. Aloha. Aloha. Multiple. Sense. Access) CSMA (Carrier(

Técnicas de acesso múltiplo Aloha. O Nível de Enlace nas Redes Locais. Aloha. Aloha. Aloha. Multiple. Sense. Access) CSMA (Carrier( O Nível de Enlace nas Redes Locais Como já foi visto, o nível de enlace deve fornecer uma interface de serviço bem definida para o nível de rede. deve determinar como os bits do nível físico serão agrupados

Leia mais

AULA 4 - REDES. Prof. Pedro Braconnot Velloso

AULA 4 - REDES. Prof. Pedro Braconnot Velloso AULA 4 - REDES Prof. Pedro Braconnot Velloso Resumo da última aula Camada aplicação Serviços Requisitos das aplicações Camada transporte Serviços TCP UDP Arquitetura TCP/IP APLICAÇÃO TRANSPORTE TH AH mensagem

Leia mais

Sistemas Distribuídos Aula 19

Sistemas Distribuídos Aula 19 Sistemas Distribuídos Aula 19 Aula passada Eleição de líder Algoritmo do valentão Algoritmo em anel Aula de hoje Redes sem fio Coordenando acesso Eleição em redes sem fio Redes sem Fio Dispositivos formando

Leia mais

Prof. Samuel Henrique Bucke Brito

Prof. Samuel Henrique Bucke Brito Princípios de Comunicação (Sinal) www.labcisco.com.br ::: shbbrito@labcisco.com.br Prof. Samuel Henrique Bucke Brito Modelo Geral de Comunicação A informação é gerada na fonte é transformada (modulada

Leia mais

REDES LOCAIS. Quando você precisar ir além do computador em cima de sua mesa, esta na hora de instalar uma rede local.

REDES LOCAIS. Quando você precisar ir além do computador em cima de sua mesa, esta na hora de instalar uma rede local. 1. Introdução 1.1. - Conceitos REDES LOCAIS Quando você precisar ir além do computador em cima de sua mesa, esta na hora de instalar uma rede local. 1 1.2. Tipos de Aplicações As Redes Locais têm em geral

Leia mais

Roteamento e Roteadores. Conceitos Diversos

Roteamento e Roteadores. Conceitos Diversos e Roteadores Conceitos Diversos Um roteador é um dispositivo que provê a comunicação entre duas ou mais LAN s, gerencia o tráfego de uma rede local e controla o acesso aos seus dados, de acordo com as

Leia mais

Redes de Computadores

Redes de Computadores Redes de Computadores Endereçamento e Ethernet Prof. Jó Ueyama Junho/2013 1 slide 1 Redes Locais LAN: Local Area Network concentrada em uma área geográfica, como um prédio ou um campus. 2 slide 2 Tecnologias

Leia mais

Redes de Computadores. Prof. MSc André Y. Kusumoto

Redes de Computadores. Prof. MSc André Y. Kusumoto Redes de Computadores Prof. MSc André Y. Kusumoto andrekusumoto.unip@gmail.com Nível de Rede Comunicação entre dispositivos de uma mesma rede ocorrem de forma direta. Quando a origem e o destino estão

Leia mais

Aula 2 Topologias de rede

Aula 2 Topologias de rede Aula 2 Topologias de rede Redes e Comunicação de Dados Prof. Mayk Choji UniSALESIANO Araçatuba 13 de agosto de 2016 Sumário 1. Topologias de Rede 2. Topologias Físicas Ponto-a-Ponto Barramento BUS Anel

Leia mais

CURSO TÉCNICO EM INFORMÁTICA

CURSO TÉCNICO EM INFORMÁTICA 1. O modelo de referência OSI (Open Systems Interconnection) baseia-se no conceito de camadas sobrepostas, onde cada camada executa um conjunto bem definido de funções. Relacione cada uma das camadas do

Leia mais

CURSO TÉCNICO EM INFORMÁTICA

CURSO TÉCNICO EM INFORMÁTICA 1. O modelo de referência OSI (Open Systems Interconnection) baseia-se no conceito de camadas sobrepostas, onde cada camada executa um conjunto bem definido de funções. Relacione cada uma das camadas do

Leia mais

DCC130 Computação Móvel, Ubíqua e Pervasiva Redes Móveis: Padrões Eduardo Barrére DCC / UFJF

DCC130 Computação Móvel, Ubíqua e Pervasiva Redes Móveis: Padrões Eduardo Barrére DCC / UFJF DCC130 Computação Móvel, Ubíqua e Pervasiva ----- Redes Móveis: Padrões ----- Eduardo Barrére DCC / UFJF IEEE Redes sem Fio no IEEE O IEEE 802 possui três grupos de trabalhos (Working Groups ou WGs) dedicados

Leia mais

O Nível de Enlace nas Redes Locais. Técnicas de acesso múltiplo Aloha. Aloha

O Nível de Enlace nas Redes Locais. Técnicas de acesso múltiplo Aloha. Aloha O Nível de Enlace nas Redes Locais Como já foi visto, o nível de enlace deve fornecer uma interface de serviço bem definida para o nível de rede. deve determinar como os bits do nível físico serão agrupados

Leia mais

ÍNDICE CAPÍTULO 1 INTRODUÇÃO... 6 O QUE É UMA REDE E PARA QUE SERVE?... 7 O PORQUE DE UMA REDE... 9

ÍNDICE CAPÍTULO 1 INTRODUÇÃO... 6 O QUE É UMA REDE E PARA QUE SERVE?... 7 O PORQUE DE UMA REDE... 9 Redes -1- ÍNDICE CAPÍTULO 1 INTRODUÇÃO... 6 O QUE É UMA REDE E PARA QUE SERVE?... 7 O PORQUE DE UMA REDE... 9 CAPÍTULO 2 ARQUITETURAS... 12 MEIOS DE TRANSMISSÃO... 12 TIPOS DE TRANSMISSÃO... 14 CAPÍTULO

Leia mais

Exercícios de Revisão Redes de Computadores Edgard Jamhour. Sistemas Autônomos, Roteamento e WiFi

Exercícios de Revisão Redes de Computadores Edgard Jamhour. Sistemas Autônomos, Roteamento e WiFi Exercícios de Revisão Redes de Computadores Edgard Jamhour Sistemas Autônomos, Roteamento e WiFi Exercício 1: Relacione - Protocolos de Roteamento Característica ( ) Protocolo de Estado de Enlace ( ) Protocolo

Leia mais

FUNDAMENTOS DE REDES DE COMPUTADORES TP1

FUNDAMENTOS DE REDES DE COMPUTADORES TP1 LEIA COM ATENÇÃO AS INSTRUÇÕES ABAIXO Em sala de aula foram distribuídos pontos em exercícios e atividades extraclasse Número de Questões Total da Avaliação 5 Pontos 10 5 Pontos Cada questão tem peso 0,5

Leia mais

Fundamentos de Redes de Computadores. Redes Wireless. Conceitos

Fundamentos de Redes de Computadores. Redes Wireless. Conceitos Redes Wireless Conceitos Prof. Airton Ribeiro de Sousa airton.ribeiro@faciplac.edu.br 2016-2 1 O termo WIRELESS significa SEM FIO. Alguns sinônimos foram atribuídos à forma de comunicação que se dá por

Leia mais

Noções de Ethernet (enlace) Endereçamento Físico Dispositivos de Rede. Introdução às Redes de Computadores

Noções de Ethernet (enlace) Endereçamento Físico Dispositivos de Rede. Introdução às Redes de Computadores Noções de Ethernet (enlace) Endereçamento Físico Dispositivos de Rede Nível de enlace Enlace Físico Delimitação da informação Detecção de erros de transmissão Controle de acesso ao Meio Físico Endereçamento

Leia mais

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO CONCEITO DE REDE DE COMPUTADORES PROFESSOR CARLOS MUNIZ

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO CONCEITO DE REDE DE COMPUTADORES PROFESSOR CARLOS MUNIZ INTRODUÇÃO À TECNOLOGIA DA CONCEITO DE REDE DE COMPUTADORES PROFESSOR CARLOS MUNIZ INTRODUÇÃO Redes de computadores são estruturas físicas (equipamentos) e lógicas (programas, protocolos) que permitem

Leia mais

Bluetooth e Multimídia

Bluetooth e Multimídia Bluetooth e Multimídia Ricardo Augusto Rabelo Oliveira rabelo@dcc.ufmg.br Resumo. Criado por um consórcio das maiores empresas de telecomunicações e computação do mundo, o Bluetooth foi inicialmente projetado

Leia mais

Curso Técnico em Informática Redes TCP/IP 2 o Módulo. Prof. Cristiano da Silveira Colombo

Curso Técnico em Informática Redes TCP/IP 2 o Módulo. Prof. Cristiano da Silveira Colombo Curso Técnico em Informática Redes TCP/IP 2 o Módulo Prof. Cristiano da Silveira Colombo Objetivos da Aula Apresentar os conceitos de tecnologias e padrões de redes de computadores. Agenda da Aula Padronização

Leia mais

Capítulo 5: A camada de enlace

Capítulo 5: A camada de enlace Capítulo 5: A camada de enlace Objetivos do capítulo: entender os princípios por trás dos serviços da camada de enlace de dados: detecção e correção de erro Compartilhamento de um canal de broadcast: acesso

Leia mais

- Curso: ANÁLISE E DESENVOLVIMENTO DE SISTEMAS Redes de Computadores Lista de Exercício I

- Curso: ANÁLISE E DESENVOLVIMENTO DE SISTEMAS Redes de Computadores Lista de Exercício I 1- Um dos componentes de um a Rede de Teleprocessamento que tem a função de compatibilizar o sinal digital de dados ao sinal analógico para uso da Rede Pública de Telefonia é: a) UNIDADE CONTROLADORA DE

Leia mais

Redes de Computadores. Prof. André Y. Kusumoto

Redes de Computadores. Prof. André Y. Kusumoto Redes de Computadores Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com 2/16 Nível de Rede Comunicação entre dispositivos de uma mesma rede ocorrem de forma direta. Quando a origem e o destino estão

Leia mais

Preparação AV3 Fundamentos de Redes de Computadores

Preparação AV3 Fundamentos de Redes de Computadores Preparação AV3 Fundamentos de Redes de Computadores 1 - Em uma rede de computadores existem dispositivos responsáveis por distribuir as informações por toda a rede. Quando falamos de dispositivos que atuam

Leia mais

Modelo de Camadas. Redes de Computadores

Modelo de Camadas. Redes de Computadores Modelo de Camadas Redes de Computadores Sumário Visão Geral de uma Rede de Computadores Protocolos Modelo de Camadas Porque utilizar Tipos de Modelos de Referência Modelo de Referência ISO/OSI Histórico

Leia mais

Camada de banda base - segurança

Camada de banda base - segurança Camada de banda base - segurança Autenticação Privacidade Criptografia Gerenciamento de chaves Camada de banda base - privacidade Criptografia usada na carga útil dos dados Carga útil encriptada após a

Leia mais

Computadores Digitais II

Computadores Digitais II Computadores Digitais II Prof. Marcelo Gonçalves Rubinstein Departamento de Eletrônica e Telecomunicações Faculdade de Engenharia Universidade do Estado do Rio de Janeiro Ementa Introdução a Redes de Computadores

Leia mais

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores Disciplina Redes de Banda Larga Prof. Andrey Halysson Lima Barbosa Aula 1 Conceitos básicos de comunicação Sumário Técnicas de transmissão

Leia mais

Capítulo 8. a) Em uma exposição de informática, na qual não existe infraestrutura pronta para um cabeamento normal.

Capítulo 8. a) Em uma exposição de informática, na qual não existe infraestrutura pronta para um cabeamento normal. Redes sem fio Capítulo 8 Aplicações das redes sem fio Redes sem fio (wireless) utilizam ondas de rádio, luz infravermelha ou a laser para transmitir dados pelo ar. É difícil dizer com certeza absoluta

Leia mais

CURSO DE SISTEMAS DE INFORMAÇÃO/ PROCESSAMENTO DE DADOS DISCIPLINA: ADM e PROJETO DE REDES PROFESSOR: Msc Walter Augusto Varella

CURSO DE SISTEMAS DE INFORMAÇÃO/ PROCESSAMENTO DE DADOS DISCIPLINA: ADM e PROJETO DE REDES PROFESSOR: Msc Walter Augusto Varella CURSO DE SISTEMAS DE INFORMAÇÃO/ PROCESSAMENTO DE DADOS DISCIPLINA: ADM e PROJETO DE REDES PROFESSOR: Msc Walter Augusto Varella Lista de Exercícios 1 1. Diga com suas palavras o que vem a ser uma rede

Leia mais

O que é um sistema distribuído?

O que é um sistema distribuído? Disciplina: Engenharia de Software 4 Bimestre Aula 1: ENGENHARIA DE SOFTWARE DISTRIBUÍDO O que é um sistema distribuído? Segundo Tanenbaum e Steen (2007) um sistema distribuído é uma coleção de computadores

Leia mais

Atividade de Participação de Aula 02 (Individual) Aluno: Data: 17/08/2017

Atividade de Participação de Aula 02 (Individual) Aluno: Data: 17/08/2017 Atividade de Participação de Aula 02 (Individual) Aluno: Data: 17/08/2017 Curso: Engenharia Elétrica Período: 1. O que é uma rede Industrial? Sistema de Comunicação bidirecional em tempo real que permite

Leia mais

FUNDAMENTOS DE REDES DE COMPUTADORES TP2

FUNDAMENTOS DE REDES DE COMPUTADORES TP2 LEIA COM ATENÇÃO AS INSTRUÇÕES ABAIXO Em sala de aula foram distribuídos pontos em exercícios e atividades extraclasse Número de Questões Total da Avaliação 5 Pontos 10 5 Pontos Cada questão tem peso 0,5

Leia mais

INTRODUÇÃO A SISTEMAS OPERACIONAIS

INTRODUÇÃO A SISTEMAS OPERACIONAIS INTRODUÇÃO A SISTEMAS OPERACIONAIS Prof. Me. Hélio Esperidião DEFINIÇÃO DE SISTEMA OPERACIONAL. O sistema operacional é uma camada de software colocada sobre o hardware para gerenciar todos os componentes

Leia mais

Redes de Computadores sem Fio

Redes de Computadores sem Fio Redes de Computadores sem Fio Prof. Marcelo Gonçalves Rubinstein Programa de Pós-Graduação em Engenharia Eletrônica Faculdade de Engenharia Universidade do Estado do Rio de Janeiro Programa Introdução

Leia mais

Redes Locais sem Fio. O Padrão IEEE

Redes Locais sem Fio. O Padrão IEEE Redes Locais sem Fio (Wireless LANs) O Padrão IEEE 802.11 Um pouco de História 1985 a FCC (Federal Communications Commission) impulsionou o desenvolvimento comercial de componentes wireless LAN, autorizando

Leia mais

Sistema Operacional. Prof. Leonardo Barreto Campos. 1/30

Sistema Operacional. Prof. Leonardo Barreto Campos.   1/30 Sistema Operacional Prof. Leonardo Barreto Campos 1/30 Sumário Introdução Middleware e SO de Rede SO de Rede Processos e Threads Leitura Complementar Bibliografia 2/30 Introdução A tarefa de qualquer sistema

Leia mais

Comunicação. capítulo

Comunicação. capítulo Comunicação capítulo 4 Camadas de protocolos: Modelo OSI Camadas de protocolos: Mensagem Protocolos de baixo nível Estas camadas implementam as funções básicas que envolvem uma rede de computadores: Física:

Leia mais

Prof. Antonio P. Nascimento Filho. Tecnologias de rede. Ethernet e IEEE Token ring ATM FDDI Frame relay. Uni Sant Anna Teleprocessamento e Redes

Prof. Antonio P. Nascimento Filho. Tecnologias de rede. Ethernet e IEEE Token ring ATM FDDI Frame relay. Uni Sant Anna Teleprocessamento e Redes Tecnologias de rede Ethernet e IEEE 802.3 Token ring ATM FDDI Frame relay Ethernet A Ethernet é uma tecnologia de broadcast de meios compartilhados. Entretanto, nem todos os dispositivos da rede processam

Leia mais

CLASSIFICAÇÃO DE REDES-

CLASSIFICAÇÃO DE REDES- CLASSIFICAÇÃO DE REDES- MEIO DE TRANSMISSÃO PARTE 2 Prof. Msc. Hélio Esperidião CLASSIFICAÇÃO SEGUNDO O MEIO DE TRANSMISSÃO: Rede por cabo Serial db15 db 25. FireWire. USB. Por ondas eletromagnéticas.

Leia mais

Laboratório de Redes I. 1º Semestre Aula 05. Hubs e Switches. Prof. Nataniel Vieira

Laboratório de Redes I. 1º Semestre Aula 05. Hubs e Switches. Prof. Nataniel Vieira Laboratório de Redes I 1º Semestre Aula 05 Hubs e Switches Prof. Nataniel Vieira nataniel.vieira@gmail.com Objetivos Identificar as características básicas e técnicas para emprego de Hubs e switches em

Leia mais

Redes de Computadores. Tecnologias de Redes de Área Local

Redes de Computadores. Tecnologias de Redes de Área Local Redes de Computadores Tecnologias de Redes de Área Local Tecnologias de redes locais! Arquitecturas específicas para redes locais abrange os dois níveis inferiores do modelo OSI! Normalizadas: IEEE ISO

Leia mais

Segurança da Informação

Segurança da Informação INF-108 Segurança da Informação Segurança em Redes Sem Fio Prof. João Henrique Kleinschmidt Redes sem fio modo de infraestrutura estação-base conecta hospedeiros móveis à rede com fio infraestrutura de

Leia mais

ENGENHARIA ELÉTRICA Redes Industriais e Supervisório. Utilização de sistemas Wireless em redes industriais

ENGENHARIA ELÉTRICA Redes Industriais e Supervisório. Utilização de sistemas Wireless em redes industriais Utilização de sistemas Wireless em redes industriais Utilização de sistemas Wireless em redes industriais Nos últimos anos, a tecnologia de redes sem fio vem sofrendo grandes avanços tecnológicos, o que

Leia mais

A subcamada de controle de acesso ao meio

A subcamada de controle de acesso ao meio A subcamada de controle de acesso ao meio Introdução Iremos abordar redes de difusão e seus protocolos. A questão fundamental é determinar quem tem direito de usar o canal quando há uma disputa por ele

Leia mais

AULA 6 - ENLACE SEM FIO. Prof. Pedro Braconnot Velloso

AULA 6 - ENLACE SEM FIO. Prof. Pedro Braconnot Velloso AULA 6 - ENLACE SEM FIO Prof. Pedro Braconnot Velloso Resumo da aula anterior Redes sem fio Categorias Infraestrutura Ad hoc Vantagens/desvantagens Camada Física Principais características Camada de Enlace

Leia mais

Claudivan C. Lopes

Claudivan C. Lopes Claudivan C. Lopes claudivan@ifpb.edu.br Padrão IEEE 802.11 Camadas do padrão IEEE 802.11 Outras tecnologias sem fio IFPB/Patos - Prof. Claudivan 2 É o padrão mais usado para redes locais sem fio (também

Leia mais

Informática. Transferência de Arquivos e Dados. Professor Márcio Hunecke.

Informática. Transferência de Arquivos e Dados. Professor Márcio Hunecke. Informática Transferência de Arquivos e Dados Professor Márcio Hunecke www.acasadoconcurseiro.com.br Informática TRANSFERÊNCIA DE ARQUIVOS E DADOS Upload e Download Em tecnologia, os termos download e

Leia mais

Aulas 13 & 14. Acesso Múltiplo a Pacote: Protocolo Aloha. Eytan Modiano MIT

Aulas 13 & 14. Acesso Múltiplo a Pacote: Protocolo Aloha. Eytan Modiano MIT Aulas 13 & 14 Acesso Múltiplo a Pacote: Protocolo Aloha Eytan Modiano MIT 1 Acesso Múltiplo Meio de transmissão compartilhado: um receptor pode escutar vários transmissores; um transmissor pode ser escutado

Leia mais

Redes de Computadores

Redes de Computadores Instituto Superior Politécnico de Ciências e Tecnologia Redes de Computadores Prof Pedro Vunge I Semestre de 2017 SUMÁRIO I - Introdução às Redes de Computadores 1.4 Principais componentes de uma rede

Leia mais