Difference between revisions of "About Repro"

From reSIProcate
Jump to navigation Jump to search
(7 intermediate revisions by the same user not shown)
Line 2: Line 2:
 
=== What is repro? ===
 
=== What is repro? ===
  
repro is an open-source, free SIP server.
+
repro is an open-source, free SIP server.  
 
+
SIP is changing the way people communicate using the Internet. It is not only about making phone calls over the Net.
 +
The sIP protocol and its extensions defines the way of establishing, modifying and ending interactive sessions, no matter if they are voice, video, IM or a combination of them.
 +
At the heart of SIP architecture, there are certain services which needs to be provided at some place of the network.
 
repro provides SIP proxy, registrar, redirect, and identity services. These services are the foundation
 
repro provides SIP proxy, registrar, redirect, and identity services. These services are the foundation
 
needed to run a SIP service.
 
needed to run a SIP service.
Line 20: Line 22:
 
* focuses on large-scale operation, including high availability
 
* focuses on large-scale operation, including high availability
 
* pays careful attention to both provider and subscriber security issues
 
* pays careful attention to both provider and subscriber security issues
 +
 +
=== History ===
 +
 +
repro officially born with this [http://list.sipfoundry.org/archive/resiprocate-devel/msg01599.html message from Cullen]   
 +
It is the most recent project under [http://www.sipfoundry.org Sipfoundry], but its foundation is based in the very stable and widely used [http://www.resiprocate.org resiprocate stack] and Dialog Usage Manager (DUM) application interface.
 +
 +
=== Project Team ===
 +
 +
Although repro is an open-source project and thus several people is contributing to its development effort, there is a very talented and well reconignized project team leading this effort.
 +
Belonging to this team are:
 +
 +
* Adam Roach
 +
* Rohan Mahy
 +
* Jason Fischl
 +
* Derek MacDonald
 +
* Cullen Jennings
 +
* Robert Sparks
 +
 +
=== Licensing ===
 +
 +
repro is distributed under the [http://opensource.org/licenses/vovidapl.php Vovida Software License v1.0 (Vovida)]
  
 
=== Key Features ===
 
=== Key Features ===
Line 27: Line 50:
 
* Rigorous security mechanisms, including the newest SIP Security IETF efforts
 
* Rigorous security mechanisms, including the newest SIP Security IETF efforts
 
* Simple user management through an embedded configuration web server
 
* Simple user management through an embedded configuration web server
* Use of readily available databases (currently Berkeley DB) to store user data.
+
* Use of readily available databases (currently Berkeley DB and MySQL) to store user data.
 
* Extendable to support provider enhanced features while processing requests
 
* Extendable to support provider enhanced features while processing requests
  
 
=== Upcoming Features ===
 
=== Upcoming Features ===
* MySQL or Postgres storage of user data
+
* Support for Postgres
 
* Being an Event Server
 
* Being an Event Server
 
** Presence Server
 
** Presence Server
** SIP Dialog Package Server
+
** SIP Dialog Package Server  
 +
  (note several people think this is a bad idea)
  
 
=== Support ===
 
=== Support ===
  
 +
The repro users can discuss with other users about their doubts/questions to the [http://list.sipfoundry.org/mailman/listinfo/repro-users repro users mailing list].
 
Several companies are in the process of putting together commercial support plans for repro, reSIProcate and DUM that are targeted at application developers and service providers. More detail to follow.
 
Several companies are in the process of putting together commercial support plans for repro, reSIProcate and DUM that are targeted at application developers and service providers. More detail to follow.
  
 
=== How to Participate ===
 
=== How to Participate ===
 +
 +
You can discuss repro ongoing development at [repro developer mailing list http://list.sipfoundry.org/mailman/listinfo/repro-devel].
 +
Currently repro is held as a subtree of the reSIProcate source base at http://scm.sipfoundry.org/rep/resiprocate/.
 +
You can read how to use subversion with reSIProcate at [[Quick Subversion Checkout and Compilation HOWTO]]
  
 
== Project Details ==
 
== Project Details ==

Revision as of 06:43, 15 September 2005

Overview

What is repro?

repro is an open-source, free SIP server. SIP is changing the way people communicate using the Internet. It is not only about making phone calls over the Net. The sIP protocol and its extensions defines the way of establishing, modifying and ending interactive sessions, no matter if they are voice, video, IM or a combination of them. At the heart of SIP architecture, there are certain services which needs to be provided at some place of the network. repro provides SIP proxy, registrar, redirect, and identity services. These services are the foundation needed to run a SIP service.

Where can repro be used?

  • As the central rendezvous service for peer-to-peer voice, IM, and presence services
  • As the core of large scale internet telephony services
  • As a tool to enforce policy at the boundary between networks or domains

What makes repro unique and valuable?

  • closely tracks the evolving standardization efforts
  • focuses on large-scale operation, including high availability
  • pays careful attention to both provider and subscriber security issues

History

repro officially born with this message from Cullen It is the most recent project under Sipfoundry, but its foundation is based in the very stable and widely used resiprocate stack and Dialog Usage Manager (DUM) application interface.

Project Team

Although repro is an open-source project and thus several people is contributing to its development effort, there is a very talented and well reconignized project team leading this effort. Belonging to this team are:

  • Adam Roach
  • Rohan Mahy
  • Jason Fischl
  • Derek MacDonald
  • Cullen Jennings
  • Robert Sparks

Licensing

repro is distributed under the Vovida Software License v1.0 (Vovida)

Key Features

  • Correct and comprehensive implementation of the relevant standards from the SIP working groups
  • Support for multiple transport protocols over both IPv4 and IPv6
  • Rigorous security mechanisms, including the newest SIP Security IETF efforts
  • Simple user management through an embedded configuration web server
  • Use of readily available databases (currently Berkeley DB and MySQL) to store user data.
  • Extendable to support provider enhanced features while processing requests

Upcoming Features

  • Support for Postgres
  • Being an Event Server
    • Presence Server
    • SIP Dialog Package Server
  (note several people think this is a bad idea)

Support

The repro users can discuss with other users about their doubts/questions to the repro users mailing list. Several companies are in the process of putting together commercial support plans for repro, reSIProcate and DUM that are targeted at application developers and service providers. More detail to follow.

How to Participate

You can discuss repro ongoing development at [repro developer mailing list http://list.sipfoundry.org/mailman/listinfo/repro-devel]. Currently repro is held as a subtree of the reSIProcate source base at http://scm.sipfoundry.org/rep/resiprocate/. You can read how to use subversion with reSIProcate at Quick Subversion Checkout and Compilation HOWTO

Project Details

Current Features

  • Transports: UDP, TCP, TLS (v4 and v6)
  • Platforms: Win32, Linux, Mac OS X
  • RFC 3261 compliant proxy and registrar
  • RFC 3263 compliant: NAPTR, SRV, A, AAAA
  • Extendable features
  • In-memory location server
  • Embedded web server and user database for basic administration
  • Full support for draft-ietf-sip-identity-04
  • IPv6

Roadmap

Goals for 0.1 release (beginning of May)

  • source tar ball available
  • binaries available for Windows (exe), Linux (rpm), MacOSX (dmg)
  • allow web admin to modify and delete users and static routes
  • add access lists for devices that don't need to authenticate (like gateways)
  • tested according to test plan

Goals for 0.2 release

  • high availability (distribution of user database and registrations across a geographically diverse server farm)
  • call forwarding
  • certificate/credential service (draft-ietf-sipping-certs-01.txt)

Goals for 0.3 release

  • support for the GRUU extension and outbound-only connections

Test Plan

Basic Calling Scenarios

  • REGISTER/401 REGISTER/200 un-REGISTER/200
  • INVITE/180 200/ACK BYE/200 both directions
  • INVITE/180 CANCEL/200/487/ACK both directions
  • INVITE/180 4xx/ACK as caller
  • Make / receive basic call behind a NAT (with UDP)

Devices

  • Sipura SPA-2000
  • Cisco 7960
  • Xten eyeBeam
  • snom 190
  • Cisco 3600 gateway
  • SER proxy (running at iptel.org)
  • Grandstream Bugetone
  • sipXphone
  • Vegastream phone
  • Jasomi B2BUA
  • M5T proxy server

Scenario tests

  • Make a call with TCP
  • Make a call with TLS
  • Forking test
  • Spiral test
  • Loop test
  • Basic load test - create 1000 test users, register them at certain rate, make basic calls at certain rate, specify average call duration before sending BYE.