Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha



Artigo

Montando uma rede GSM
Linux user
loula
02/06/2009
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.
Por: Alexsander Loula
[ Hits: 39379 ]
Conceito: 10.0   5 voto(s)5 voto(s)5 voto(s)5 voto(s)5 voto(s) + quero dar nota ao artigo

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

Leitura recomendada

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 loula 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 loula 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 loula 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 loula 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 loula 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 loula 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 loula 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 loula 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 loula 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 loula 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 loula 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


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.