Montando uma rede GSM

Essa guia fornecerá uma visão geral do projeto OpenBTS. O objetivo principal desse projeto é a apresentação de uma interface aérea GSM para realização de chamadas usando o PBX Asterisk. No final desse guia você poderá realizar chamadas entre telefones GSM ou qualquer outro dispositivo compatível com o Asterisk na sua própria rede GSM.

[ Hits: 93.260 ]

Por: Perfil removido em 02/06/2009


A rede GSM e o projeto OpenBTS



Obs.: Esse artigo tem fins educacionais. O uso do mesmo para outras atividades é de inteira responsabilidade de quem o fizer.

A rede GSM é um sistema complexo composto por vários componentes. A última milha desse sistema é chamada de BTS (Base Transceiver Station). A BTS é responsável por transmitir e receber sinais de RF (Rádio Frequência) para o usuário de terminais GSM (telefone celular, PDA, modem etc). As BTSs são controladas por uma BSC (Base Station Controller), que é conectada ao MSC/VLR (Mobile Switching Center/Visitor Location Register). Basicamente, o MSC/VLR é responsável pela autenticação do usuário no banco de dados (HLR - Home Location Register, AuC - Authentication Center).
Linux: Montando uma rede GSM
O projeto OpenBTS é um esforço para construir uma aplicação de código aberto usando um hardware de baixo custo, chamado USRP (Universal Software Radio Peripheral), para apresentar uma interface aérea GSM ("Um") para equipamentos compatíveis, usando o PBX Asterisk para conectar as chamadas.

O OpenBTS usa o hardware USRP para receber e transmitir a sinalização GSM. Isso é feito usando o framework GNU Radio. O Asterisk é usado para fazer a interface entre as chamadas dos terminais GSM sobre a rede do OpenBTS. Qualquer outro dispositivo que possa ser conectado ao Asterisk também pode ser utilizado para fazer e receber chamadas.
Linux: Montando uma rede GSM
O GNU Radio é uma ferramenta livre para desenvolvimento que fornece um "runtime" de processamento de sinais para implementação de sistemas de rádio baseados em software usando hardware de RF de baixo custo (nesse caso o USRP).

O USRP (Universal Software Radio Peripheral) é um hardware desenvolvido pela Ettus Research que permite a computadores funcionarem com rádios de alta largura de banda. Na essência, ele funciona com um circuito de banda básica e FI (Frequência Intermediária) de um sistema de radiocomunicação. Existem modelos de placas de RF que podem ser usadas com o USRP. No nosso caso, podemos usar a RFX900 para cobertura das bandas de 850 e 900 MHz ou a RFX1800 para cobertura das bandas de 1800 e 1900 MHz.

    Próxima página

Páginas do artigo
   1. A rede GSM e o projeto OpenBTS
   2. Requisitos e instalação
   3. Configuração do OpenBTS
   4. Exemplo de arquivo de configuração
   5. Configuração do Asterisk
   6. Teste e conclusão
Outros artigos deste autor

Introdução ao Protocolo Internet - IP

Instalando o Fedora Core 5 para iniciantes

Compiz no Debian Etch

Os Mistérios da Fonte Wingdings do Windows

Uso de terminologia imprópria com software livre

Leitura recomendada

GNU/Linux de Bolso como Ferramenta Anti-Vírus

Screensaver para todos

A mágica do dc

Software livre e o Windows

Linux 100% virtual em modo gráfico

  
Comentários
[1] Comentário enviado por gesousa em 02/06/2009 - 16:56h

Muito bom seu artigo. Um dos mais interessantes que vi ultimamente.

Vi que utilizou para testes, mas você está utilizando o seu hardware para alguma aplicação especifica, como uma rede interna ??

Pois queria saber se com está configuração de hardware, qual seria a distancia do sinal e quantos telefones este equipamento conseguiria mantes conectado ?


Outra questão queria saber é a parte legal da utilização da banda GSM para uso particular, pois na empresa onde trabalho, ainda utilizamos um sistema de radio frequência para a comunicação com obras onde outro meios de comunicação como celular e telefone físico não alcança, para a utilização da faixa para uso amador a uma taxa anual a ser paga ao ministério da comunicação. MAs acho que a GSM como é utilizada comercialmente deve ser proibido a utilização...

[2] Comentário enviado por removido em 02/06/2009 - 22:06h

Oi gesousa, obrigado!
Respondendo suas perguntas:
- Montei o setup para fins de aprendizado, mas teria como utilizar como uma rede interna GSM. Um dos problemas nesse caso seria "forçar" o telefone escolher a sua rede ao invés da rede da operadora, o qual o mesmo foi programado para operar. Como o explicado no artigo, alguns SIM cards permitem mudar as redes preferencias (PLMN). Mesmo colocando sua rede como a preferencial, você teria que reiniciar o telefone para que ele tente se registrar na sua rede. Não teria como fazer a troca automaticamente.
- Para banda baixa (850 ou 900 MHZ) a potência máxima do HW é de 200mW, e para banda alta (1800 e 1900 MHz) a potência máxima é de 100mW. Considerando isso, mais as antenas indicadas no artigo, você conseguiria manter uma ligação num raio de aprox. 100 metros da base em campo aberto. Com um jogo de antenas com um ganho maior, daria para alcançar em torno de 500 metros ou até mais.
- Até onde eu sei, equipamentos de telecomunicações para uso comercial devem ser homologados pela Anatel. Até access points Wi-Fi são homologados. Nessa faixa de potência (de 100 à 200 mW) para uso não comercial acredito que não seja necessário nenhum tipo de homologação, já que mesmo que você quisesse interferir nas operações de uma operadora, não seria possível. Os autores do projeto fizeram um teste em campo http://www.kestrelsp.com/FieldTest/index.html com autorização do FCC (orgão similar a Anatel), mas eles estão utilizando amplificadores para elevar a potência e consequentemente a área de cobertura da rede.

[3] Comentário enviado por julianoys em 04/06/2009 - 17:01h

Artigo realmente interessante... sempre imaginei se isso não era possível... uma rede GSM "doméstica"
Atualmente estou estudando sobre redes GSM e fiquei com uma dúvida cuja resposta não encontrei nas referências do artigo... me corrija se estiver errado, mas, normalmente, ao ligar o aparelho, é feito o registro do assinante junto à operadora. Existe todo um processo para estabelecimento do canal codificado envolvendo o MSC, HLR e AuC... e como parte do processo, a chave Ki (além do RAND e SRES) é utilizada para estabelecer a autenticação e o cyphering da conexão através do algoritmo A5. Essa chave a princípio é armazenada no SIM card e no AuC e nunca é transmitida na interface aérea (Um). Como é obtido essa chave nesse projeto?

[4] Comentário enviado por removido em 04/06/2009 - 17:35h

Oi julianoys,
O projeto OpenBTS faz a autenticação simples do terminal usando o IMSI. Segundo o próprio manual, eles não podem utilizar porque os algoritmos usado no GSM são distribuídos somente com NDA: "Unfortunately, we probably cannot legally support authentication and encryption in an open source system because the algorithms used in GSM are distributed only under non-disclosure agreements. While there have been unauthorized disclosures of these algorithms, we do not want to taint this project with material that would jeopardize its distribution status. Certainly, any private development project is free to integrate these features into controlled distributions given proper agreements
with ETSI."
O A5 que você comentou é usado após o registro do terminal para ciphering da comunicação. No processo de registro são utilizados o A3 e o A8.

[5] Comentário enviado por reinaldocf em 05/06/2009 - 10:14h

Olá loula.

Ótimo artigo. Era justamente o que estava procurando.

Uma dúvida, poderia utilizar essa mesma rede para trafegar dados, usando os modems GSM?

Atenciosamente,
Reinaldocf

[6] Comentário enviado por removido em 05/06/2009 - 10:55h

Oi reinaldocf, obrigado!
Não é possível trafegar dados ainda, o projeto só cobre GSM. Existe a previsão para implementação de GPRS e EDGE, o que permitiria o tráfego de dados.

[7] Comentário enviado por marquinhos1875 em 06/06/2009 - 19:37h

Cara, artigo muito massa
Ja havia feito algumas pesquisas sobre isso e nao tive sulcesso.
Onde posso encontrar os hardwares especiais para montar esse laboratorio?
Parabens pela riquesa do artigo

[8] Comentário enviado por removido em 07/06/2009 - 19:20h

Oi marquinhos, obrigado!
No próprio site do fabricante do HW USRP, a Ettus Research, eles fazem a venda: http://www.ettus.com/sales

[9] Comentário enviado por thiagorp7 em 08/06/2009 - 16:44h

Cara, adorei o artigo ...
Na minha opinião o setor do governo q é mais lerdo e ruim é a Anatel... oque ela regulamenta sobre esta utilização ?
Realizando este processo e com algumas modificações vc pode criar uma operadora Caseira, certo ?

[10] Comentário enviado por removido em 09/06/2009 - 09:19h

Oi thiagorp7, obrigado!
Os responsáveis pelo projeto OpenBTS já fizeram um teste em campo, e estão programando outro para esse ano. Acho que um orgão regulamentador, no nosso caso a Anatel, é importante para evitar problemas (ex: rádios piratas). É certo que as vezes esperamos decisões mais rápidas, mas precisamos entender que existe burocracia em todos os setores.
Apenas com o sistema descrito no artigo você já teria uma operadora doméstica de GSM. Com o uso de amplificadores de RF, torre e antena com certeza você conseguiria cobrir uma área maior, tornando-se um "mini-operadora". Lógico que o HW USRP têm suas limitações, mas não podemos comparar um sistema de custa no máximo USD 2K com uma BTS profissional.

[11] Comentário enviado por talma em 29/09/2009 - 16:12h

Desculpe a minha ignorância se estiver perguntando bobagem...
É possivel fazer esta rede gsm numa zona rural e ela retransmitir o sinal de uma BTS que chega fraco neste local, sendo insuficiente para fazer chamadas? A BTS mais proxima transmitia sinal TDMA, que só era possivel captar através de uma atena externa, porém apenas com uma barra de sinal, mas ainda dava para fazer ou receber ligações eventualmente. Agora o sinal TDMA foi desligado e não chega sinal gsm para ser captado por uma antena externa.

[12] Comentário enviado por malvesmarques em 07/04/2010 - 11:36h

Muito bom artigo.

minha dúvida é se mesmo o celular não identificando a rede como primeira opção, se a rede "encherga" o imsi do celular próximo? estarei iniciando a montagem da minha rede até junho e gostaria de contar com sua ajuda para eventuais esclarecimentos, ok? abc marcelo

[13] Comentário enviado por removido em 07/04/2010 - 15:03h

Oi Marcelo,

O clock original da USRP não é muito preciso, o que acaba dificultando o registro de alguns modelos de telefone. Uma solução para melhorar isso é usar uma fonte mais precisa de clock. Vou testar com um gerador externo em breve: http://students.ee.sun.ac.za/~gshmaritz/?p=152
Quanto às eventuais dúvida, no que eu puder ajudar pode contar comigo.

[14] Comentário enviado por albf em 17/04/2010 - 18:52h

Alessandro,

Parabéns pelo artigo! É muito interessante ver o que este projeto de SDR (Software-Defined Radio) USRP + GNU Radio tem oferecido de possibilidades, como por exemplo o OpenBTS.

Agora estou bastante curioso, além da questão do algoritmo A5/8 ser restrito (como você colocou de forma correta) sendo fornecido apenas mediante NDA pelo ETSI, portanto incompatível com Open Source. Para sessões GPRS é necessário autenticar os vetores RAND, SRES e GPRS-Kc sendo fundamental conhecer a chave Ki do SIM Card, entendo que uma alternativa seria utilizar SIM Cards com perfil para operar com o OpenBTS, porém os SIM Vendors tem restrições (na maioria dos países) que só os permitem fornecer para carriers homologadas com MNC único; para evitar problemas de interoperabilidade entre outros.

Para voz é possível operar com A0, mas para GPRS não, então, como o pessoal do projeto pretende driblar estas situações?


[15] Comentário enviado por removido em 19/04/2010 - 11:49h

Oi Albf,

Até onde eu acompanhei, o OpenBTS não suportava dados (GPRS / EDGE), somente voz (GSM). Acho que o próprio HW USRP teria limitações para modular e demodular sinais em GPRS e EDGE, teriam que usar o USRP2.

Obrigado!

[16] Comentário enviado por albf em 02/05/2010 - 20:13h

Alessandro,

Após ver sua mensagem, fui pesquisar um pouco sobre as questões de restrição de modulação e demodulação do USRP e realmente é inviável trabalhar com a USRP. Só a USRP2, porém pelo que pesquisei as restrições que eu já comentei é algo que está impedindo a evolução do projeto.

Valeu!


[17] Comentário enviado por balakubaco em 24/05/2010 - 17:51h

Boa tarde Alexsander Loula,

Gostei muito do seu tutorial (me parece perfeito) e estou pensando em fazer alguns testes, mas antes surgiram algumas dúvidas que não sei se você poderia me ajudar.
Seguem:
Referente ao tutorial, qual a limitacão de conexões simultâneas com o hardware utilizado?
Será que vou ter muita dificuldade pra colocar isso tudo funcionando, seguindo o tutorial? Já tenho bastante experiência com Asterisk.
Obrigado pela atencão!


[18] Comentário enviado por removido em 25/05/2010 - 15:23h

Um canal GSM (ARFCN) têm 8 slots (TS0 ~ TS7). O OpenBTS usa o TS0 como BCCH/CCCH + SDCCH/4 (Broacast Control Channels + Common Control Channel + 4 dedicated sub
channels), sobram 7 slots para voz (chamada). Não podemos esquecer do processamento do lado do computador, recomendo um Dual Core no mínimo e o USRP com clock externo para diminuir a carga na CPU.

[19] Comentário enviado por AndreGio em 20/07/2010 - 09:25h

Oi Alex!!
Somos estudantes de Telecom e achamos muito interessante o projeto que vc montou!!
Vc adquiriu o USRP para vc ou o implementou em alguma empresa?
Será que tem como marcar para vermos o mesmo funcionando? Vc fica em SP?
Abraços!!

[20] Comentário enviado por removido em 02/08/2010 - 10:01h

Oi Andre,

A empresa que eu trabalho comprou para testes internos, mas atualmente o HW está emprestado. No Youtube têm uns videos do OpenBTS.

Grato,
Alex

[21] Comentário enviado por malvesmarques em 04/09/2010 - 11:09h

Alex, Bom dia.

Já perguntei anteriormente se vc poderia auxiliar e vc já se prontificou.

Gostaria de conversar com vc por email particular. Abç Marcelo


[22] Comentário enviado por removido em 08/09/2010 - 09:23h

Oi Marcelo,

Meu email é: alex.loula@gmail.com


[23] Comentário enviado por lmanuelferr em 30/09/2010 - 18:27h

boa noite Alex,

Temos um projecto para o desenvolvimento de uma rede gsm numa provincia de um estado em Africa.

Eventualmente podemos desenvolver outro projecto de um internet server provider e voip recebendo via satelite e transmitindo em wireless e, usando as infraestruturas da base station da rede gsm.

Pergunto estará interessado e disponivel em conversarmos para a sua eventual colaboração para a montagem da rede gsm e de um wisp em asterick?

Obrigado
L.Manuel Ferreira

[24] Comentário enviado por removido em 01/10/2010 - 10:13h

Oi Manuel,

Posso ajudá-lo, favor envie-me um email direto.


[25] Comentário enviado por marcos.m2007 em 04/02/2011 - 08:05h

Olá Loula, sou iniciante em teleco, e gostaria de saber como faço para montar um labs e mais ou menos o custo da montagem, de um laboratório.
Pois a empresa é fora do brasil, tem como adquirir esses equipamentos no brasil ????

Desde já agradeço .


At. Marcos M.

[26] Comentário enviado por marcos.m2007 em 04/02/2011 - 13:46h

Loula, estou aguardando, ancioso seu contato, caso queria me mandar algo, pode ser no meu email pessoal : marcos.medeiros2007@hotmail.com

Que também é meu MSN .


Aguardo atentamente.


Marcos M.

[27] Comentário enviado por wlsa em 12/07/2011 - 14:40h

Boa tarde Loula

Seu artigo é show de bola, gostaria de saber como faço para entrar em contato com vc.
Montei uma rede, parece que está tudo certinho, tudo instalado como manda o figurino.
Porém, nenhum celular consegue entrar na rede. Será que pode ser o problema com o clock,
li em outro artigo que sem um overclock é quese impossível de um celular reconhecer a rede, só se eu tiver muita sorte mesmo.
Vc já houviu falar sobre ter que setar o clck em 52Mhz, vc sabe como se faz isso ?
A útima dúvida é como se compila o smqueue no ubuntu 11.4 ?


antecipadamente obrigado pela ajuda


Pow

[28] Comentário enviado por removido em 10/01/2013 - 16:21h

Adorei o artigo, rico em conteúdo, ótima linguagem, o melhor que vejo em bastante tempo.

Gostaria de saber se você conhece alguém que tenha esses requisitos de Hardware para vender que já esteja no Brasil?

[29] Comentário enviado por kaioyudi2014 em 08/07/2014 - 09:44h

rapaz achei muito interessante seu post, ja havia deparado com o asterisk, e o elastix para criar rede de voz via wifi por aplicativos voip utilizados em celulares android, mas o seu achei muito mais pratico visto que o alcance wireless de aparelhos celulares é bastante limitado.

Enfim,

Tenho uma duvida, é possível conectar este GSM base station à internet, e permitir o acesso à internet para os celulares atraves do padrão gsm?

[30] Comentário enviado por mgruzz em 21/04/2015 - 18:13h

Ola pessoal quando eu digito ./configure --prefix=$BOOST_PREFIX --with-libraries=thread, date_time, program_option
Aparece
Building Boost.Jam with toolset gcc... tools/jam/src/bin.linuxx86_64/bjam
Unicode/ICU support for Boost.Regex?... not found.
Generating Boost.Build configuration in user-config.jam...
Generating Makefile...

Como posso reverter este error?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor HostGator.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Viva o Android

Tópicos

Top 10 do mês

Scripts