TesteUser1 (discussão | contribs)
TesteUser1 (discussão | contribs)
 
Linha 11: Linha 11:
== Objetivos  ==
== Objetivos  ==
Na fase inicial, o objetivo do projeto foi estudar a ferramenta para entender qual o papel do openSIPS no Session Router. Dessa forma, a partir desse estudo, seria possível concluir se a ferramenta abrangeria os requisitos do projeto.  
Na fase inicial, o objetivo do projeto foi estudar a ferramenta para entender qual o papel do openSIPS no Session Router. Dessa forma, a partir desse estudo, seria possível concluir se a ferramenta abrangeria os requisitos do projeto.  
Concluída a fase inicial, a ideia seria utilizar o OpenSIPS para compor um proxy stateless para o projeto do Session Router. Dessa forma, toda chamada deveria ser feita para o OpenSIPS que trataria da segurança da aplicação e, posteriormente, o OpenSIPS passava essa call adiante para os SBC.


<br>
<br>

Edição atual tal como às 12h48min de 26 de fevereiro de 2019

Fase I - Estudo


Título da Idéia

  • OpenSIPS


Objetivos

Na fase inicial, o objetivo do projeto foi estudar a ferramenta para entender qual o papel do openSIPS no Session Router. Dessa forma, a partir desse estudo, seria possível concluir se a ferramenta abrangeria os requisitos do projeto. Concluída a fase inicial, a ideia seria utilizar o OpenSIPS para compor um proxy stateless para o projeto do Session Router. Dessa forma, toda chamada deveria ser feita para o OpenSIPS que trataria da segurança da aplicação e, posteriormente, o OpenSIPS passava essa call adiante para os SBC.


Conceito


Derivado do projeto OpenSER (Kamailio) o OpenSIPS é um proxy/servidor Open Source SIP para voz, vídeo, mensagens instantâneas e quaisquer outras extensões SIP. Sendo um software Open Source toda a comunidade pode compilar e editar seu código fonte, tendo então bastante contribuição no desenvolvimento do projeto. O OpenSIPS é um servidor SIP de sinalização multifuncional e bidirecional e pode atuar como roteador/comutador SIP, registrador SIP, servidor de aplicativos, SBC( Session Border Controller), balanceador de cargas e quaisquer outros tipos de cenários/serviços SIP. As principais utilidades dessa ferramenta é a possibilidade de realizar várias chamadas simultâneas, a flexibilidade de roteamento e integração e a efetividade no desenvolvimento de aplicacões por meio dos vários módulos disponíveis no openSIPS.



Características 


O arquivo de configuração do openSIPs, denominado “opensips.cfg”, é responsável pelas configurações feitas no servidor. A linguagem utilizada é semelhante ao C e com ela é possível implementar laços condicionais, laços de repetição, entre outros. Além disso, o OpenSIPs possui um pacote vasto de módulos para permitir a configuração do servidor. Dentre eles estão o pacote “PYTHON” que possui alguns scripts dessa linguagem, o “REST$\_$CLIENT” que permite a implementação de um cliente HTTP e o “NATHELPER”, o qual auxilia a travessia NAT.




Estudo Dirigido




Fase II - Ensino


Conteúdo

Conteúdo recomendado para estudo da ferramenta:

  • Documentação OpenSIPS
  • Livro Building Telephony Systems with OpenSIPS 1.6 (autor: Flavio E.Goncalves)
  • Arquitetura de redes e protocolos de rede (TCP, UDP, SIP, etc)
  • Leitura da ETSI


Metodologia


A metodologia usada para o desenvolvimento do projeto foi SCRUM.

Fase III - Exemplo de Caso de Negócio


Benefícios para quem for oferecer esta solução

Com o desenvolvimento do Session Router, uma camada adicional seria acrescentada na rede da Algar, a qual pode ser utilizada como uma camada extra de segurança para a rede.


Benefícios para o usuário

O usuário usufruiria de um serviço mais seguro.

Barreiras encontradas


Quadro
Quadro
  • Comunicação entre a VM e o Softphone:
    • Um dos problemas enfrentados pelo squad responsável pelo Session Router é a comunicação entre a VM e o Softphone. Quando o Softphone (instalado em um notebook da Algar) tenta fazer um registro ou até mesmo uma ligação para o OpenSIPS há um problema: o servidor do OpenSIPS recebe a requisição, contudo, quando o OpenSIPS tenta enviar a resposta para o Softphone ocorre um erro indicando "Destionation Unreacheable (Port Unreacheable)".


Cronograma Macro


Histórico



Pesquisadores

  • Bianca Cristina da Silva