_
Home
Features
News
Download
Roadmap
Management
Contributions
License
Links
Contact Us
Related
EVENTS
VoIP Events
Past Events
SUPPORT
Documentation
Wiki
Mailing lists
Install
Forum
VoIP Info
IRC Channel
DEVELOPMENT
SVN
Tracker
Project Page
Doxygen

OpenSER v1.2.x Release Notes Print

OpenSER v1.2.0

March 12, 2007

Time for a new major release arrived. It happened to be again about 8 months since the last major release, with about 6.5 months of development and 1.5 of extensive testing. This version brings a lot of new features and improvements to existing code. Can be defined as the biggest improvement between releases so far. Configuration script has new directives while some of the old one were removed or replaced with a new form. You should pay attention while updating configuration.

Dokuwiki page has been created to track these changes and to ease the migration:

http://openser.org/dokuwiki/doku.php/install:1.1.x-to-1.2.x

The range of use cases was largely increased, important achievements toward SIP Application Server were added by seas and perl modules, which allow writing Java SIP Servlet extensions and Perl Applications for OpenSER. Meanwhile, the old core components were improved, using OpenSER as SIP proxy, registrar or simple router for load balancing or least cost routing being more flexible.

We would like to thank for the work, suggestions and contributions to this release to all people supporting the project. Special thanks go to:

Bogdan-Andrei Iancu - development, testing, documentation and package generation
Daniel-Constantin Mierla - development, testing, documentation and package generation
Juha Heinanen - development, testing, documentation
Elena-Ramona Modroiu - development, testing, documentation
Klaus Darilion - development, testing
Cesc Santasusana - development, documentation
Jesus Rodriguez - testing, package generation
Norman Brandinger - testing, documentation
Di-Shi Sun - development, documentation
Dan Pascu - development, documentation
Andreas Granig - development, documentation
Anca Vamanu - development, documentation
Lavinia Andrei - development, documentation
Jeffrey Magder - development, documentation
Bastian Friedrich - development, documentation
Julien Blache - Debian packages maintenance
Ovidiu Sas - testing and patches

Packages

The sources, binaries and packages for different OS distributions and architectures can be downloaded from:

The packages will be uploaded as soon as they are submitted by public contributors. So, check the site from time to time if you are looking for a special distro or architecture. Check the download page for more details:

The documentation for modules has been deployed online in html format:
Other documentation resources in documentation page.

Important changes

FIFO server is now implemented in mi_fifo module. Core parameters specific for FIFO became module parameters.

What is new?

New in OpenSER core

  • script variables - $var(abc) defines a variable that can be used to store integer or string values. They can be used anywhere a pseudo-variable can be used
  • pseudo-variables can be used directly in configuration file - string and integer operations can be done directly in the config script via assignment
    • $avp(i:23) = "OpenSER"; # - set the value of avp "i:23"
    • $var(abc) = $avp(i:23) + " 1.2.0"; # - set value for variable "abc"
    • $ruri = "sip:" + $from.user + ":" + $to.domain; # set R-URI based on From username and To domain
    • $var(xyz) = (1+2)*3; # arithmetic operations
  • pseudo-variable transformations - functions that can be used to return different values depending on a pseudo-variables. See http://openser.org/dokuwiki/doku.php/transformations:1.2.x . They can pe used to get the length of a string, to extract substrings, elements from lists, and many more other operations. Some examples:
    • $(ruri{uri.user}) - return username part of R-URI
    • $var(abc) = "a,b,c"; $(var(abc){s.select,1,,}) - return 'b'
  • better timer accuracy and performance - timer accuracy can now be set to milisecond. Retransmission timers from TM follow RFC more accurate.
  • DNS failover - OpenSER 1.2.0 has ability to do DNS failover based on NAPTR and SRV records
  • IP blacklists - a low level filtering engine for the outgoing requests to prevent sending untrusted requests to critical IPs (like GWs), or sending to destinations known to be unavailable
  • automatic error handling - parsing errors trigger executions of error_route to allow administrator to decide what should be done with the SIP request
  • new management interface(MI) - a new abstract layer for OpenSER management interface was developed. Old FIFO server was removed and FIFO became a transport for the new MI, in addition XMLRPC transport was included.
  • flags system extended - there are now three classes of flags in OpenSER now: message (transaction) flags - the old ones, branch flags - specific per each branch, and script flags - specific per routing script.
  • VIA branch respects RFC3261 - a unique (across time and space) branch parameter for VIA is now generated in stateless forwarding also.
  • parsers for new headers - build in parsers were added to process new types of headers

New OpenSER modules

  • domainpolicy - policies to connect federations in a secure and trust able fashion
  • imc - IRC like instant messaging conferencing
  • mi_fifo - FIFO transport for new management interface
  • mi_xmlrpc - XMLRPC transport for new management interface
  • perl - Perl programming API - you can extend OpenSER functionality by writing Perl applications to be executed embedded in configuration file
  • presence - SIMPLE Presence server implementing client-server presence model
  • pua - Presence User Agent client implementation - common API
  • pua_mi - MI extension for PUA - one can publish SIMPLE presence status via OpenSER's management interface
  • pua_usrloc - USRLOC extension for PUA - publish basic presence status (online/offline) for registered records in user location table
  • seas - connector to WeSIP Java SIP Servlet Application Server - allow writing extensions in Java, offering tight integration of SIP and HTTP Servlet containers
  • snmpstats - SNMP interface for OpenSER
  • sst - SIP Session Timer functionality for OpenSER
  • xmpp - SIMPLE-XMPP instant messaging gateway

New in OpenSER modules

  • acc
    • major cleanup and improved flexibility. Only basic details are recorded by default, extra fields can be recorded using log_extra/db_extra/radius_extra parameter
  • avpops
    • avp_write() has been removed since same functionality is given by assignment operation is configuration file
    • AVPs can be used not in onreply_route. Depending on TM configuration, can be accessed transaction's AVPs or let use of SIP reply message's AVPs
  • cpl-c
    • database columns can be given as module parameters
    • reuse parameters of usrloc instead of exporting by itself
  • dialog
    • improved control ans accuracy over dialog state (races elimintated)
  • enum
    • the module has support for infrastructure ENUM
  • lcr
    • full DB cache support added for speed improvment reasons
  • msilo
    • ability to set a threshold of stored messages to avoid filling database up
  • mysql
    • DB fetch support - allow loading data in chunks to fit in private memory
  • postgres
    • DB fetch support
    • use OpenSER's memory manager
    • support for connection pool
  • sl
    • sl_send_reply() can be used in error_route
    • sl_send_reply() can get pseudo-variables as parameters
    • export of internal API to be used across modules
  • tm
    • retransmission timer accuracy has been improved to follow closely the RFC
    • timer lists have been redesigned to increase performances with dynamic timer values
    • improved transaction matching for Cancel and end2end ACKs
    • fixed transaction matching in spiral scenarios (pre-RFC3261 matching)
    • AVP support in onreply routes
  • usrloc
    • significant performance improvements
    • locking is per hash entry
    • load of records is done in child #1 to let the other children processing SIP traffic
    • use DB fetch feature to get rid of insufficient private memory issue at startup

New in DataBase support

  • table defintion - all tables use as primary key an autoincrement integer column; this make easier logical cross-refereneces across tables (usually in DB provisioning application)
  • table creation - by default only, standard table are created; additionally, serweb related, presence related and rearly used tables (extra) can be created -> better DB table management
  • DB migration - new support for migrating openser DB from 1.1.x to 1.20 with no risks and losses
Project achievements

During the time after the previous major release, OpenSER project organized its first summit, November 7-8, in Berlin Germany, with a great participation of OpenSER community: details here .

There are 20 registered developers and package maintainers, gathering together over 140 contributors to code, documentations and architecture. See contributions page .

The project is widely used now in production by major players in VoIP and academic institutes (e.g., see some news - OpenSER getting CISCO's vote of confidence ).

Raw changelog
For those willing to get a deeper feeling about changes, please see the raw ChangeLog file:
Release notes from previous versions:
FLASHNEWS

2010-03-03
- Present and Future of SIP Routing, London, UK, March 9, 2010 - dedicated event focused on Kamailio (OpenSER) and SIP Router projects

Read more...

2010-03-01
- meet Kamailio (OpenSER) and SIP Router representatives at VoIP events in March 2010 - Hannover, London and Berlin

Read more...

2010-02-23
- many new features made their way in development branch during last month, since Kamailio 3.0.0 release

Read more...

2010-02-02
- Kamailio v1.5.4 is out - a minor release of the branch 1.5, including fixes since v1.5.3 - configuration file and database compatibility is preserved...

Read more...

2010-02-02
- Kamailio v1.4.5 is out - a minor release of the branch 1.4, including fixes since v1.4.4 - configuration file and database compatibility is preserved...

Read more...

2010-01-29
- presentation and social networking meeting at Fosdem 2010, Feb 6-7, Brussels

Read more...

2010-01-18
- Siremis v1.0.0 is out - web management interface for Kamailio (OpenSER) 3.0.0

Read more...

 


© .::Kamailio Project::.