Customer Login

InterWorking Labs

SIP Print E-mail

Maxwell, Testing SIP Implementations

The Session Initiation Protocol is fast becoming a foundation technology to modern life. SIP is used in VoIP telephones, video conference systems, firewalls, instant messaging, PDAs, and many more devices.

Modern communication will soon depend on reliable and robust SIP implementations.

How do product developers, implementers and testers make sure that their SIP implementations can withstand real-world networks? With pre-deployment testing.

However, pre-deployment testing is often carried out using highly conformant network implementations, while production environments are less than perfect. A mix of critical infrastructure components, load stress, unexpected applications behavior, and malicious hacking will expose vulnerabilities typically not found in the lab or beta testing.

To address these issues, the Maxwell® SIP Test Environment helps ensure that products and applications have implemented SIP properly by testing for vulnerabilities in the device, and modifying packets in real-time to see if the malformed packet is handled properly by the receiving device.

 

sipwproxy

As a result, the tester can check for correct SIP operation to make sure he has a solid implementation that can withstand the rigors of any network environment.

With the SIP Test Environment the tester can modify, distort, and corrupt the SIP packets in the protocol exchange, and even change the protocol exchange itself, to see how the SIP devices behave.

Maxwell is in the network acting like a layer 2 device, so it is invisible to the SIP devices in the network.

Maxwell intercepts the SIP protocol exchange between devices, examines and modifies each packet before the packet reaches the destination device. The destination device should process the packet correctly.

The tester can control the interception and packet modification directly, or use Maxwell’s plug-in set of exercises to determine precisely how the receiving SIP device responds. This provides maximum flexibility to drill down and create more tests for problem areas.

SIP Test Areas

The Maxwell SIP Test Environment includes scenarios and exercises for ensuring compliant and complete SIP implementations.

 

sipmaxinmiddle

 

1A. Maxwell intercepts and modifies the contents of the INVITE packet.
2A. Maxwell intercepts and modifies the contents of the 180 Ringing packets.
3A. Maxwell intercepts and modifies the contents of the 200 OK packet.
...

Areas include, but are not limited to:
  • Basic Framing
  • Line Termination
  • Basic Character Set Issues
  • UTF-8 Issues
  • SIP Fields
  • SDP Issues

Each area contains a set of tests that are controlled from the graphical user interface or the command line.

This approach to exercising the SIP implementation is highly maintainable and flexible. Since Maxwell uses real SIP transactions, and not artificially constructed ones, there is no need to simulate multiple SIP phones or artificially generate SIP messages.

Features:

  • All SIP devices and applications can be tested (e.g. soft phones, proxy servers, IM clients)
  • Standard impairments (drop, jitter, duplication, etc.) can be added to the scenarios
  • Multiple flows of SIP impairments between different source and destination devices can be utilized concurrently.
  • Performance testing can be done through timing parameters
  • SIP syntax, interoperability, and negative testing are accomplished automatically with the scenarios and exercises
  • Users may vary and alter the scenarios and exercises as they desire

Maxwell introduces both SIP protocol impairments and conventional packet impairments during a voice or video session. This helps determine if the devices under test can properly handle the unusual and/or illegal conditions. If a device fails, Maxwell helps pinpoint the problem so the software developer can fix the bug.

The multiple phone and table diagram provides a realistic example of three VoIP phones communicating with a conference phone. The voice traffic is bidirectional and represents multiple, concurrent network flows.

The tester can define any number of network flows, applying any type of network, protocol, and/or packet impairments. The individual VoIP phones on the left have established a session with the conference phone on the right. Maxwell will impair each session according to the criteria specified by the tester.

 

multiple_phone_sip

 

Flow 0:
The flow from VoIP Phone A travels through Maxwell to the Conference Phone (on the right); Maxwell will introduce 20 ms of jitter over a bell curve along with an extra carriage return/line feed in the SIP 180 Ringing Packet. This represents two impairments. The objective: determine if the Conference Phone handles the two impairments correctly.

Flow 1:
The flow from VoIP Phone B travels through Maxwell to the Conference Phone; Maxwell will introduce 5 ms of delay with a 10% probability. This means that any packet in the network flow has a 10% chance of being delayed by 5 ms.

Flows 2-4 are described in the table.

The tester can thoroughly test the resilience and reliability of each network device. Before customers suffer through unexpected behavior such as crashes, hangs, or reboots, the SIP Test Environment can help proactively test and uncover potential issues.

The Maxwell SIP Test Environment is a component of a larger infrastructure that includes protocol and packet impairments for related protocol families. This includes TCP/IP impairments as well as RTP and RTCP impairments.

 
Terms of Use -  Privacy Policy -  Trademarks
©1995 - 2008 InterWorking Labs, Inc. ALL RIGHTS RESERVED.