You are here: CSP Developers Guide: Internet Protocols > 5 Call Agent > Overview
Calls with or without Bearer Path
The Call Agent feature enables the CSP to connect VoIP calls with or without bearer paths through the CSP. In the current release, only SIP software uses the Call Agent functionality. The CSP can accept requests from SIP clients for a specific host-based voice service and then establish a SIP signaling connection for the requested service.
The Call Agent feature supports calls in the following two modes, on a call-by-call basis:
bearer mode
bearer-free mode
In bearer mode, the RTP stream passes through the VDAC-ONE or IP Network Interface Series 2 card. Bearer-free mode avoids "hairpinning" the call because the RTP stream does not have to pass through the CSP via the VDAC-ONE or IP Network Interface Series 2 card.
In addition, you can have a call channel transition between the two modes during a call. This dual switching scenario is especially applicable to pre-paid applications. See Dual Switching Scenario.
In both modes, call control exists on the Matrix Controller.
Figure 5-1 Bearer and Bearer-Free Mode
The benefits of the Call Agent mode include the following:
Lower CODEC costs
Lower port costs
Higher Quality of Service (fewer IP-TDM-IP transitions and lower delay)
Increased scaling beyond CSP physical channel capacity
Ability for host applications to use media resources separate from the CSP.
Reduced bandwidth requirements, because no bearer packets go through the CSP.
Virtual and Physical Span/Channels
With the Call Agent feature, there is a clear separation between virtual and physical span/channels.
The virtual span/channels provide the context for call processing only. The physical span/channels support bearer switching and call processing.
The Call Agent feature is optimized to offer maximum Busy Hour Call Attempt (BHCA) throughput when the total number of virtual span/channel resources are divided into smaller resource groups within the internal router database.
Example: If there are 10,000 virtual span/channels provisioned in the CSP, you should configure the internal router database with ten (or more) resource groups with 1024 (or less)
span/channels to get maximum BHCA rate.
Host-to-CSP API
The Route Control message and PPL Download message support a criteria type named Virtual VoIP. During host-initiated routing, the host uses the Route Control message to hunt for a virtual VoIP channel and returns a virtual span/channel to the host.
Call Agent switching is characterized by the absence of bearer resources, and therefore the absence of physical switching service, within the CSP. In Call Agent switching, Layer 4 (L4) and host applications are exposed to more network signaling data than in traditional switching, where only Layer 3 Plus (L3P) is exposed to this data. Call Agent switching propagates B-side media parameters to the A-side by sending a new PPL Event Indication message to host applications.
Some host applications that use bearer-free mode still need access to DTMF events. RFC 2833 meets this requirement.
The CSP can receive DTMF digit events from an endpoint and pass them to a host application. The CSP does this by requesting the RTP terminal to multi-unicast the RFC 2833 telephony event stream to the CSP and remote endpoint. The CSP does the following:
1. Terminates this stream on the Matrix Controller.
2. Interprets the RFC 2833 stream.
3. Processes the events as requested by the host.
4. Passes the digit strings up to the host in the Call Processing Event (0x002E) message.
At this point the host can act on the event.
The CSP also supports the Subscribe and Notify method. Refer to SUBSCRIBE and NOTIFY Method for DTMF Detection.
The following API Messages support the Call Agent feature. They are documented in the API Reference.
Connect With Data (0x0005)
PPL Event Indication (0x0043)
PPL Table Download (0x00D6)
Route Control (0x00E8)
VoIP Protocol Configure (0x00EE)
VoIP Protocol Query (0x00EF)
DSP Service Request (0x00BD)
DSP Service Cancel (0x00BE)
Virtual Card Configure (0x00E0) (supports virtual VDAC card for Call Agent)
Call Processing Event (0x002E)
The following TLVs support the Call Agent feature. They are documented in Tag Length Value Blocks chapter of the API Reference.
0x0065 Physical VoIP Channel
0x0071 Virtual VoIP Channel
0x0115 Call Agent Mode
0x0116 Channel Service TLV
0x0119 Media Offer Stage
0x01ED RFC 2833 Jitter Buffer Size
0x01EE Invalid Packet Alarm Threshold
0x01EF Initial UDP Port Number
0x01F0 Number of UDP Ports
0x01F1 Dynamic Payload Type
0x01 Add Virtual Card (supports virtual VDAC card for call agent)
0x02 Remove Virtual Card (supports virtual VDAC card for call agent)
0x011A Call Agent Physical Channel ID
0x2954 SIP Request URI User Name
0x2A00 Media Remote End Point Information
0x2A01 Media Per Stream Information
0x2A02 Media Per Codec Information
0x2A03 Media Type
0x2A07 Media Port
0x2A08 Media Payload Type
0x2A09 Media Payload Description
0x2A0A Media Payload Size
0x2A0B Media Clock Rate
0x2A0E Media Connection Address
0x2A13 Media Flow Direction
Atomic Functions numbers 225-234 support the Call Agent feature. They are documented in Layer 4 Atomic Functions in the Developers Guide: Programmable Protocol Language.