Diameter Sochi 2011 120131093201 Phpapp02

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 18

Mobicents

 Diameter  
Progress,  Use  Cases  and  Roadmap  
 
Alexandre  Mendonça  &  Bartosz  Baranowski  
8th  December  2011  @  Sochi,  RU  
Agenda  
•  Overview  
•  IntroducKon  to  Diameter  
•  Architecture  
•  Use  Cases  
•  Roadmap  
•  2010/2011  Roadmap  Review  
•  Community  
•  Overview  
•  Releases  
•  Roadmap  
•  2011/2012  Roadmap  Preview  
•  Releases  
 
Introduction  to  Diameter  
•  Born  as  the  Next  GeneraKon  AAA  Protocol  to  replace  RADIUS  
•  ..but  much  more  than  just  that,  being  widely  used  for  several  
other  purposes  
•  Base  protocol  defines  the  message  format,  peer  connecKon  
related  operaKons  and  basics  for  AccounKng  and  
AuthenKcaKon/AuthorizaKon  
•  Base  (or  any  other  ApplicaKon)  is  easily  extended  by  adding  
new  messages  and/or  AVPs  
•  So  easy  everybody  is  having  their  own  customized  ApplicaKons,  
with  barely  no  standard  ApplicaKons  usage  
•  Byte-­‐oriented  messages,  consisKng  of  header  and  payload  
(AXribute-­‐Value-­‐Pair,  AVPs)  
Architecture:  Overview  
Architecture:  HA/FT  
Node  1   Node  2  
…  
Supports  X  &  Y   Supports  Y  

Cache  
Session-­‐Id:  1   Session-­‐Id:  2     Session-­‐Id:  3  
Type:  X   Type:  Y     Type:  X   …  
…Data…   …Data…     …Data…  
 
Architecture:  HA/FT  
•  Selected  Session  Data  is  replicated  to  cache  a_er  processing  
the  received  iniKal  Request  
•  At  any  Kme,  any  node  can  pick  and  resume  any  session,  by  
invoking  proper  method  in  stack  for  reconstrucKng  session  
locally  
•  Ideally  allow  by  configuraKon  to  prefer  to  choose  the  node(s)  
which  already  have  session  locally  
•  Once  session  is  reconstructed,  session  data  is  kept  locally  to  
avoid  the  overhead  of  recreaKng  it  every  Kme  
•  Once  session  is  terminated,  all  nodes  are  noKfied  and  clear  
their  local  session  data  
Use  Cases:  Online  Charging  
Roadmap:  2010/11  Review  
•  “Improve  Stability  and  Performance”  
•  Jenkins  soak  test  job  running  weekly  at  750  requests/second  for  
2.5  hours  in  Mobicents  JAIN  SLEE  
•  Total  of  7.000.000  Requests,  usually  with  no  missed  requests.  
•  Last  year  Performance  goal  was  set  to  1000  requests/second.  Got  
up  to  9000  requests/second  !  
•  Using  an  iMac  Core  2  Duo  @  3.06  GHz  /  4GB  RAM,  no  special  setup.  
•  Eventually  with  a  beXer  setup,  the  numbers  may  go  quite  higher.    

10000   9000  

2009  
5000  
2010  
150   800  
2011  
0  
Requests/s  
Roadmap:  2010/11  Review  
•  “Support  more  applicaKons,  by  request”  
•  Added  support  for  Gx,  Gq’,  Rx,  S6a  ApplicaKons  
•  ContribuKons  included  Diameter  Stack  support  and  JAIN  SLEE  
Resource  Adaptors  as  well  
•  All  of  them  were  contributed  by  community  users  
•  Some  were  only  parKally  developed,  to  fit  the  users  needs…  we  
implemented  the  remaining  
•  Gx  was  a  collaboraKve  contribuKon  between  two  different  users,  
from  Free  Mobile  and  Smilescom  
•  Great  to  see  community  work  together!  
•  All  were  reviewed,  fixed  and,  when  possible,  sent  back  to  the  
authors  for  validaKon  in  their  working  environment  
Roadmap:  2010/11  Review  
•  “Support  of  other  funcKonal  nodes  besides  client  and  server:  
Redirect,  Relay  and  Proxy”  
•  Redirect  and  Relay  support  integrated  into  stack  
•  Proxy  support  through  applicaKon  
•  Already  tested  and  used  (with  bugs  found)  by  community  users  
(from  Free  Mobile)  

•  “Extend  testsuite”  
•  Greatly  increased  the  testsuite  for  both  Diameter  Stack,  Diameter  
RAs  and  funcKonal  tests  for  replicaKon  scenarios  
•  Currently  Diameter  Testsuite  contains  594  JUnit  tests,  and  
increase  of  100%  from  last  year.  
Roadmap:  2010/11  Review  
•  Some  shortcomings:  
•  Missed  the  goal  to  support  TLS  /  IPSec  
•  Failed  the  “More  Examples”  target  
•  Mainly,  no  B2BUA  integraKon  example  with  JAIN  SLEE  or  SIP  Servlets  
•  Projected  Roadmap  not  followed  
•  More  1.3.x  releases,  less  1.4.x  releases  
•  Haven’t  yet  reached  the  1.4.0.FINAL  release  
•  No  pluggable  Diameter  Load  Balancing  algorithms  and  no  
integraKon  with  Mobicents  Load  Balancer  
•  No  improvement  on  DocumentaKon  regarding  development  with  
stack  
•  No  progress  on  JAIN  SLEE  HSS  work  or  SIP  Presence  integraKon  
Diameter  Charging  Server  
•  Standalone  applicaKon,  started  as  a  test  project  for  our  own  
tesKng,  Diameter  Charging  Server  Simulator  
•  Made  source  and  binary  available  to  public  for  using  with  
Mobicents  SIP  Servlets  Ro  (Online  Charging)  Example  
•  600  Downloads  for  the  first  version  (since  May  2010).  It’s  now  
deprecated  and  not  available  for  download  
•  Updated  at  May  2011  with  some  scenario  improvements  and  
some  fixes  requested  by  community  
•  300  Downloads  for  the  new  version  so  far  
•  Migrated  to  JAIN  SLEE  as  for  a  requested  customized  
development,  but  with  public  availability  in  mind  
•  Not  yet  available  for  public.  To  be  soon.  
Community:  Overview  
•  Growing  User  Base  
•  Increasing  traffic  on  public  mailing  list  
•  Over  40  User  Reported  Issues  from  11  different  users/companies  
•  Last  year  we  had  12  issues  reported  by  2  users  
•  Many  small  patches  submiXed  by  users  

•  Several  users/companies  using  Mobicents  Diameter  for  


Interoperability  TesKng  (IOT)  successfully  and  contribuKng  
components  (not  all  complete):  
•  Rx  ApplicaKon  Stack  Support  and  Resource  Adaptors  
•  Gx  ApplicaKon  Stack  Support  and  Resource  Adaptors  
•  Gq’  ApplicaKon  Stack  Support  and  Resource  Adaptors  
•  S6a  ApplicaKon  Stack  Support  and  Resource  Adaptors  
Community:  Releases  

Rx  
7x  
Gq’  PAA
pplicaKon  
• Compliance,  
Performance  
erformance  
pplicaKon  SSupport  
Performance  
Improvement:  
Improvement:  
upport  &  Stability  
~8500  
7000+  
ER
nhancements  
equests/second  
Requests/second  
 
Improved  
Gx  
•  Diameter   ApplicaKon  
ApplicaKon  
AO
Cgent  
luster   Session  
nline/Offline  
Support  
Support  
Support   MG
Charging  
(Fine   anagement  
raining  
API   Replicated  Data)  
1000+  
DicKonary/Validator  
Reworked  
•  Extended   requests/second  
DicKonary/Validator  
testsuite   available  
(100+   JUnit  tTo  
Fests  
ormat  
applicaKons  
added)  
Community:  Overview  
•  2300  downloads  since  last  year  

1.4.0.BETA1  
1.3.2.FINAL  

1.4.0.BETA2  

1.4.0.CR1  
1.3.3.FINAL  
Roadmap:  2011/12  Preview  
•  No  major  concerns  with  stack  performance,  good  enough!  
•  Try  to  improve  the  performance  os  SLEE  RAs,  which  is  not  so  
good  
•  Support  TLS  and  IPSec  security  
•  Integrate  with  Mobicents  Load  Balancer  
•  Create  integraKon  example  with  B2BUA  both  for  JAIN  SLEE  
and  MSS,  in  single  node  and  clustered  environment  
•  Improve  Agent  support,  integraKng  proxy  as  stack  feature  
instead  of  support  through  applicaKon  
•  Support  SCTP  transport  
Roadmap:  Releases  
•  1.4.0.CR2  _  December  2011  
•  Diameter  S6a  Support  (Stack  and  JAIN  SLEE)  
•  Diameter  Agent  ConfiguraKon  
•  1.4.0.FINAL  _  March  2012  
•  IPSec/TLS  Support  
•  Stack  Development  DocumentaKon  
•  1.4.1.FINAL  _  June  2012  
•  Integrate  with  Mobicents  Load  Balancer  
•  IntegraKon  with  JAIN  SLEE  B2BUA  (eventually  MSS  too)  
•  1.4.2.FINAL  _  September  2012  
•  Pluggable  Diameter  Load  Balancing  algorithms  
•  HSS  
Questions?  

You might also like