| (11 revisões intermediárias por 2 usuários não estão sendo mostradas) | |||
| Linha 1: | Linha 1: | ||
Estudo do Codigo OpenBsc | Estudo do Codigo OpenBsc | ||
= open\openbsc\openbsc\src = | |||
= | == LibCommon == | ||
= | |||
#bsc_version <br> contém a versão e os direitos reservados do código <br><br> | #bsc_version <br> contém a versão e os direitos reservados do código <br><br> | ||
| Linha 18: | Linha 9: | ||
#socket <br> código da porta OpenBSC, tirado do driver de entrada da Abis <br><br> | #socket <br> código da porta OpenBSC, tirado do driver de entrada da Abis <br><br> | ||
= Osmo-bsc_nat = | == Osmo-bsc_nat == | ||
#bsc_filter <br> multiplexador BSC para NAT <br><br> | #bsc_filter <br> multiplexador BSC para NAT <br><br> | ||
| Linha 28: | Linha 19: | ||
#bsc_ussd <br> código de filtro USSD <br><br> | #bsc_ussd <br> código de filtro USSD <br><br> | ||
= Osmo-nitb = | == Osmo-nitb == | ||
#bsc_hack <br> implementação minimalista hacker da BSC (+MSC +HLR) <br><br> | #bsc_hack <br> implementação minimalista hacker da BSC (+MSC +HLR) <br><br> | ||
= IpAcess = | == IpAcess == | ||
# ipaccess-config.c <br> Realiza a | # ipaccess-config.c <br> Realiza a conexão com a nanoBTS, verificando falhas ao tentar faze-lo e realiza feedback para saber se algo indesejado foi feito.<br><br> | ||
# ipaccess-find.c <br> Localiza a BTS<br><br> | # ipaccess-find.c <br> Localiza a BTS<br><br> | ||
# ipaccess-firmware.c <br><br><br> | # ipaccess-firmware.c <br><br><br> | ||
| Linha 40: | Linha 31: | ||
# network_listen.c <br><br><br> | # network_listen.c <br><br><br> | ||
== LibBsc == | |||
= LibBsc = | |||
# abis_nm.c <br>comunicação BSC/BTS<br><br> | # abis_nm.c <br>comunicação BSC/BTS<br><br> | ||
# abis_nm_ipaccess.c <br>lista de atributos incorporadorados da IP Acess<br><br> | # abis_nm_ipaccess.c <br>lista de atributos incorporadorados da IP Acess<br><br> | ||
| Linha 72: | Linha 62: | ||
# system_information.c <br>Informações do sistema de codificação e decodificação<br><br> | # system_information.c <br>Informações do sistema de codificação e decodificação<br><br> | ||
= LibMsc = | == LibMsc == | ||
#auth - <br>Funcoes de autenticacao<br><br> | #auth - <br>Funcoes de autenticacao<br><br> | ||
#db - <br><br><br> | #db - <br><br><br> | ||
| Linha 91: | Linha 81: | ||
#vty_interface_layer3 -<br><br><br> | #vty_interface_layer3 -<br><br><br> | ||
= LibTrau = | == LibTrau == | ||
#rtp_proxy - <br>Proxy da nano-BTS<br><br> | #rtp_proxy - <br>Proxy da nano-BTS<br><br> | ||
#trau_mux - <br>Rotear as chamadas de voz<br><br> | #trau_mux - <br>Rotear as chamadas de voz<br><br> | ||
#trau_upqueue -<br><br><br> | #trau_upqueue -<br><br><br> | ||
= Osmo-Bsc = | == Osmo-Bsc == | ||
#osmo_bsc_api - <br><br><br> | #osmo_bsc_api - <br><br><br> | ||
#osmo_bsc_audio - <br>manipulação de áudio<br><br> | #osmo_bsc_audio - <br>manipulação de áudio<br><br> | ||
| Linha 108: | Linha 98: | ||
#osmo_bsc_vty - <br>Configuração Osmo BSC VTY<br><br> | #osmo_bsc_vty - <br>Configuração Osmo BSC VTY<br><br> | ||
= Utils = | == Utils == | ||
#bs11_config - <br>Siemens BS-11 ferramenta de configuração microBTS<br><br> | #bs11_config - <br>Siemens BS-11 ferramenta de configuração microBTS<br><br> | ||
#isdnsync -<br> | #isdnsync -<br> | ||
<br><br> | <br><br> | ||
= open\openbsc\openbsc\tests = | |||
= Bsc-Nat = | == Bsc-Nat == | ||
#bsc_data - <br>Dados de teste entre BSC - MSC<br><br> | #bsc_data - <br>Dados de teste entre BSC - MSC<br><br> | ||
#bsc_nat_test - <br>Varias tentativas de conectividade -ANALISE IMCOMPLETA<br><br> | #bsc_nat_test - <br>Varias tentativas de conectividade -ANALISE IMCOMPLETA<br><br> | ||
= Channel = | == Channel == | ||
#channel_test - <br>Testando conectividade assinante-canal<br><br> | #channel_test - <br>Testando conectividade assinante-canal<br><br> | ||
= Db = | == Db == | ||
#db_test - <br>testando o código do banco de dados de assinantes<br><br> | #db_test - <br>testando o código do banco de dados de assinantes<br><br> | ||
= Debug = | == Debug == | ||
#debug_test - <br>tentativa de identificacao de falhas<br><br> | #debug_test - <br>tentativa de identificacao de falhas<br><br> | ||
= Gsm0408 = | == Gsm0408 == | ||
#gsm0408_test - <br>teste de localidade de area e funcionalidade<br><br> | #gsm0408_test - <br>teste de localidade de area e funcionalidade<br><br> | ||
= open\openbsc\openbsc\include\openbsc = | |||
#abis_nm.h - <br> Modulos da rede GSM que gerenciam mensagens na A-bis.<br>Modulos que auxiliam a interface entre BSC e MSC.<br>Especificações de modulos (bibliotecas) para controle das nanoBTS Siemens e Ip.access.<br><br> | |||
#abis_om2000.h - <br> Modulos para conexão e comunicações com a A-bis.<br><br> | |||
#abis_rsl.h - <br> Modulos especificos para BTS Ipaccess, Siemens e Nokia.<br>GSM Rádio, mensagens de link na interface A-bis.<br><br> | |||
#auth.h - <br> Modulos para autenticacao e cifragem na A-bis.<br><br> | |||
#bsc_api.h - <br> Modulos de trocas de mensagens BTS, MSC, MS. Trocas de mensagens A-bis.<br><br> | |||
#bsc_msc.h - <br> Rotinas para falar com o MSC usando o protocolo IPA.<br><br> | |||
#bsc_nat.h - <br> Modulos da BSC NAT.<br>Modulos para A-bis; MSC->BSC;<br>Rotinas para uma conexão.<br><br> | |||
#bsc_nat_sccp.h - <br> Utilitários NAT usando tipos SCCP.<br><br> | |||
#bsc_rll.h <br><br> | |||
#bss.h - <br> Modulos para iniciar e finalizar uma conexão de rede.<br><br> | |||
#chan_alloc.h - <br> Funções de gestão para alocar / libertar struct gsm_lchan.<br><br> | |||
#control_cmd.h <br><br> | |||
#control_if.h <br><br> | |||
#crc24.h <br><br> | |||
#db.h <br><br> | |||
#debug.h - <br> Áreas de depuração do código.<br><br> | |||
#e1_config.h - <br> Modulos de configuração BTS.<br><br> | |||
#gsm_04_08.h - <br> Função para converter um número de telefone e chamar o controle ASCII-BCD.<br><br> | |||
#gsm_04_08_gprs.h - <br><br> | |||
#gsm_04_11.h <br><br> | |||
#gsm_data.h - <br> Rotinas para identificação de dados na rede gsm.<br><br> | |||
#gsm_data_shared.h - <br> Rotinas para compartilhamento de dados. <br><br> | |||
#gsm_subscriber.h - <br> Rotinas para mobile subscriber. Identificação da MSIN na rede gsm.<br><br> | |||
#handover.h <br><br> | |||
#handover_decision.h <br><br> | |||
#ipaccess.h - <br> Rotinas para nano-Bts Ipaccess.<br><br> | |||
#meas_rep.h - <br> Relatórios meas.<br><br> | |||
#misdn.h <br><br> | |||
#mncc.h <br><br> | |||
#network_listen.h - <br> Start a Network test.<br><br> | |||
#openbscdefines.h <br><br> | |||
#osmo_bsc.h <br><br> | |||
#osmo_bsc_grace.h <br><br> | |||
#osmo_bsc_rf.h <br><br> | |||
#osmo_msc <br> routina para manipulação da MSC <br><br> | |||
#osmo_msc_data <br> dados para bsc real <br><br> | |||
#paging <br> manipulador de paginação <br><br> | |||
#rtp_proxy <br> manipulador de proxy RTP para a nanoBTS do ip.access <br><br> | |||
#signal <br> infraestrutura genérica de sinalização e notificação <br><br> | |||
#trau_mux <br> refletor de quadro TRAU para rotear chamadas de voz <br><br> | |||
#ussd <br> função de manipulação de mensagens USSD originadas de aparelhos móveis <br><br> | |||
= Pesquisadores = | = Pesquisadores = | ||
Edição atual tal como às 19h02min de 27 de julho de 2012
Estudo do Codigo OpenBsc
open\openbsc\openbsc\src
LibCommon
- bsc_version
contém a versão e os direitos reservados do código - debug
código de suporte à depuração e registro da OpenBSC - gsm_data
código para criação da estrutura de dados para o gsm - socket
código da porta OpenBSC, tirado do driver de entrada da Abis
Osmo-bsc_nat
- bsc_filter
multiplexador BSC para NAT - bsc_mgcp_utils
utilitários do media gateway control protocol para openbsc - bsc_nat
multiplexador BSC para NAT - bsc_nat_utils
utilitários para multiplexador BSC para NAT - bsc_nat_vty
interface NAT BSC para VTY quagga - bsc_sccp
rotinas de manuseio e empacotamento SCCP - bsc_ussd
código de filtro USSD
Osmo-nitb
- bsc_hack
implementação minimalista hacker da BSC (+MSC +HLR)
IpAcess
- ipaccess-config.c
Realiza a conexão com a nanoBTS, verificando falhas ao tentar faze-lo e realiza feedback para saber se algo indesejado foi feito. - ipaccess-find.c
Localiza a BTS - ipaccess-firmware.c
- ipaccess-proxy.c
Informa dados requisitados pelo usuario, como IP da BTS,versao do codigo, - network_listen.c
LibBsc
- abis_nm.c
comunicação BSC/BTS - abis_nm_ipaccess.c
lista de atributos incorporadorados da IP Acess - abis_nm_vty.c
- - abis_om2000.c
- - abis_om2000_vty.c
- - abis_rsl.c
Sinalização de mensagem na interface A-bis - bsc_api.c
API para o openBSC , ponte entre MSC e BSC - bsc_init.c
implementação de uma BSC minima - bsc_msc.c
Rotinas para falar com o MSC usando o protocolo IPA - bsc_rll.c
- - bsc_vty.c
"Interface de OpenBSC para VTY quagga" - bts_ericsson_rbs2000.c
configurações da ericsson RBS2000 BTS - bts_hsl_femtocell.c
Código de suporte para OpenBSC HSL Femtocell - bts_init.c
inicializa a BTS - bts_ipaccess_nanobts.c
configurações da nanoBTS - bts_nokia_site.c
Configuração padrao da Nokia BTS - bts_siemens_bs11.c
Configuração padrao da Siemens BS11 BTS - bts_unknown.c
Configuração de uma BTS generica - chan_alloc.c
Rotina de alocação de canal - e1_config.c
"OpenBSC código de entrada E1" - gsm_04_08_utils.c
- - gsm_subscriber_base.c
visão do assinante pela bts - handover_decision.c
verifica a necessidade do handover
- handover_logic.c
realiza o handover - meas_proc.c
analisa se há uma BTS com melhor sinal - meas_rep.c
Tratamento de relatorios - paging.c
gerenciamento do paging - rest_octets.c
- - system_information.c
Informações do sistema de codificação e decodificação
LibMsc
- auth -
Funcoes de autenticacao - db -
- gsm_04_08 -
- gsm_04_11 -
Tentativa de mandar SMS - gsm_04_80 -
Igual ao do gsm_04_08 - gsm_subscriber -
Conceitos e funcionalidades do assinante - mncc -
Rotinas de utilidades entre o API MNCC e o 04_08 - mncc_builtin -
Funcionalidades e caracteristicas de uma ligacao - mncc_sock -
- osmo_msc -
Codigo de gerenciamento da MSC - rrlp -
tentativas de localizacao do assinante - silent_call -
Opcao de ligacao silenciosa - sms_queue -
Tentativa de mandar SMS - token_auth -
parte das autorizacoes - transaction -
Manipulacao de transicoes - ussd -
- vty_interface_layer3 -
LibTrau
- rtp_proxy -
Proxy da nano-BTS - trau_mux -
Rotear as chamadas de voz - trau_upqueue -
Osmo-Bsc
- osmo_bsc_api -
- osmo_bsc_audio -
manipulação de áudio - osmo_bsc_bssap -
manuseio do BSSMAP - osmo_bsc_filter -
verificar uma mensagem para a funcionalidade extra do BSC - osmo_bsc_grace -
- osmo_bsc_main -
- osmo_bsc_msc -
Lidar com a conexão com a MSC - osmo_bsc_rf -
- osmo_bsc_sccp -
Interação com o subsistema SCCP - osmo_bsc_vty -
Configuração Osmo BSC VTY
Utils
- bs11_config -
Siemens BS-11 ferramenta de configuração microBTS - isdnsync -
open\openbsc\openbsc\tests
Bsc-Nat
- bsc_data -
Dados de teste entre BSC - MSC - bsc_nat_test -
Varias tentativas de conectividade -ANALISE IMCOMPLETA
Channel
- channel_test -
Testando conectividade assinante-canal
Db
- db_test -
testando o código do banco de dados de assinantes
Debug
- debug_test -
tentativa de identificacao de falhas
Gsm0408
- gsm0408_test -
teste de localidade de area e funcionalidade
open\openbsc\openbsc\include\openbsc
- abis_nm.h -
Modulos da rede GSM que gerenciam mensagens na A-bis.
Modulos que auxiliam a interface entre BSC e MSC.
Especificações de modulos (bibliotecas) para controle das nanoBTS Siemens e Ip.access. - abis_om2000.h -
Modulos para conexão e comunicações com a A-bis. - abis_rsl.h -
Modulos especificos para BTS Ipaccess, Siemens e Nokia.
GSM Rádio, mensagens de link na interface A-bis. - auth.h -
Modulos para autenticacao e cifragem na A-bis. - bsc_api.h -
Modulos de trocas de mensagens BTS, MSC, MS. Trocas de mensagens A-bis. - bsc_msc.h -
Rotinas para falar com o MSC usando o protocolo IPA. - bsc_nat.h -
Modulos da BSC NAT.
Modulos para A-bis; MSC->BSC;
Rotinas para uma conexão. - bsc_nat_sccp.h -
Utilitários NAT usando tipos SCCP. - bsc_rll.h
- bss.h -
Modulos para iniciar e finalizar uma conexão de rede. - chan_alloc.h -
Funções de gestão para alocar / libertar struct gsm_lchan. - control_cmd.h
- control_if.h
- crc24.h
- db.h
- debug.h -
Áreas de depuração do código. - e1_config.h -
Modulos de configuração BTS. - gsm_04_08.h -
Função para converter um número de telefone e chamar o controle ASCII-BCD. - gsm_04_08_gprs.h -
- gsm_04_11.h
- gsm_data.h -
Rotinas para identificação de dados na rede gsm. - gsm_data_shared.h -
Rotinas para compartilhamento de dados. - gsm_subscriber.h -
Rotinas para mobile subscriber. Identificação da MSIN na rede gsm. - handover.h
- handover_decision.h
- ipaccess.h -
Rotinas para nano-Bts Ipaccess. - meas_rep.h -
Relatórios meas. - misdn.h
- mncc.h
- network_listen.h -
Start a Network test. - openbscdefines.h
- osmo_bsc.h
- osmo_bsc_grace.h
- osmo_bsc_rf.h
- osmo_msc
routina para manipulação da MSC - osmo_msc_data
dados para bsc real - paging
manipulador de paginação - rtp_proxy
manipulador de proxy RTP para a nanoBTS do ip.access - signal
infraestrutura genérica de sinalização e notificação - trau_mux
refletor de quadro TRAU para rotear chamadas de voz - ussd
função de manipulação de mensagens USSD originadas de aparelhos móveis
Pesquisadores
- Saulo Garcez Santos
- Vinicius Ramos
- Estevão Strini Magro
- Felipe Leite