Guest

Cisco IOS Software Releases 12.4 Mainline

Voice Service Advertisement Framework Feature Guide

  • Viewing Options

  • PDF (1.2 MB)
  • Feedback
Voice Service Advertisement Framework Feature

Table Of Contents

Voice Service Advertisement Framework Feature

About the Voice Service Advertisement Framework Feature

Contents

Related Documents

Supported Platforms

Restrictions for SAF

Memory Requirements

About SAF

SAF and Cisco IOS Service Advertisement Framework

SAF Clients and Forwarders

Voice SAF Key Benefits

How Voice SAF Works

SAF Autonomous System

Voice SAF Channel

Client Registration to the SAF Forwarder

Call Control Service

Call Pattern Prefix

SAF Client as a Publisher

SAF Client as a Subscriber

Service Instances and Types of Services

Subscribing to Fully Qualified Instance

Subscribing to Hosted DN Services

Explicit Withdrawal of DN Services

Discovering Call Control Agents

Cisco Unified CME Branch Deployments and Assignment of Site Codes

Auto Discovery of branch offices Cisco Unified CME

Hosted DN

DN Block

Subscribing to Hosted DN Services

Subscribing to Fully Qualified Instance

Notification of Hosted DN Service

About Trunk Route

SAF Plug-in Dial Peer

Automatic Alternate Routing

SAF Publisher

SAF Subscriber

About Voice SAF, Cisco Unified Communications Manager, and Cisco Unified CME

Collocated Cisco Unified CME and Gateway

Cisco Unified CME Gateway using Static VoIP Dial Peer

Router in Gateway Mode

Auto Discovery of TDM Gateways

SAF Routing in Toll Bypass TDM Gateway Networks

About Cisco Unified SRST Using Voice SAF

About Cisco Unified Border Element Using Voice SAF

Configuring Voice SAF

Enabling the Cisco SAF Service Family

Configuring DN Block

Grammar for DN Blocks Valid Patterns

Configuring Trunk Route

Configuring the Call Control Services

Configuring the Voice SAF Channel

Configuring to Publish a Service on an SAF Channel

Configuring to Subscribe for a Service on an SAF Channel

Configuring the Call Pattern Prefix for SAF

Configuring SAF Plug-in Dial Peers

Command Reference

channel

call

debug voice saf all

debug voice saf api

debug voice saf cc

debug voice saf db

debug voice saf error

debug voice saf events

debug voice saf info

debug voice saf inout

debug voice saf xml

description (dn-service)

dial-peer voice

dn-block (dn-service)

dn-service (profile callcontrol)

pattern prefix (call)

pattern (profile dn-block)

prefix (pattern prefix)

profile callcontrol

profile dn-block

profile trunk-route

publish callcontrol (channel)

session protocol h323 (trunk-route)

session protocol sip (trunk-route)

site-code (dn-service)

show voice saf channel detail

show voice saf channel summary

show voice saf client

show voice saf dndb all

show voice saf dndb detail

show voice saf dndb summary

show voice saf trunk-route all

show voice saf trunk-route detail

show voice saf trunk-route summary

show voice saf dial-peer outbound

shutdown (channel)

subscribe callcontrol (channel)

timer aar-ageout (call)

trunk-route (dn-service)

voice dnis-map load

voice saf publish channel

voice service saf

Glossary

Additional References

Standards

MIBs

RFCs

Technical Assistance


Voice Service Advertisement Framework Feature


First Published: June 16, 2010

Last Updated: June 6, 2011

About the Voice Service Advertisement Framework Feature

Providing timely and reliable voice services play a prominent role in growing IP telephony deployments. As the network and related services grow, the complexity of device integration—where existing devices must be updated and capable of learning and utilizing new telephony services—becomes a significant challenge for network administrators.

The Voice Services Advertisement Framework (Voice SAF) feature is a mechanism by which various Cisco Unified Communications devices can dynamically learn and adapt to changes in a network topology, allowing these devices to discover the existence, location, and configuration of networked resources within networks.

As networks grow, the services offered on these networks also grow. Voice SAF provides timely and reliable awareness of these additional services by leveraging the dynamic properties of routing protocols and providing a dynamic, plug-and-play environment for services within a network. In the most simple terms, Voice SAF enables applications to advertise and discover services.

Audience

This technical document is intended for people who are implementing Cisco Unified Communications IP telephony systems. It provides descriptions and scenarios for system administrators, network managers, and other users who are familiar with Cisco Unified Communications applications.

The Cisco IOS software documentation set is intended primarily for users who configure and maintain Cisco networking devices (such as routers and switches) but who may not be familiar with the tasks, the relationship between tasks, or the Cisco IOS software commands necessary to perform particular tasks. The Cisco IOS software documentation set is also intended for those users experienced with Cisco IOS software who need to know about new features, new configuration options, and new software characteristics in the current Cisco IOS software release.

Finding Support Information for Platforms and Cisco IOS and Catalyst OS Software Images

Use Cisco Feature Navigator to find information about platform support and Cisco IOS and Catalyst OS software image support. To access Cisco Feature Navigator, go to http://www.cisco.com/go/cfn. An account on Cisco.com is not required.

Contents

Related Documents

Supported Platforms

Restrictions for SAF

Memory Requirements

About SAF

Voice SAF Key Benefits

How Voice SAF Works

Discovering Call Control Agents

Auto Discovery of branch offices Cisco Unified CME

About Voice SAF, Cisco Unified Communications Manager, and Cisco Unified CME

About Cisco Unified SRST Using Voice SAF

About Cisco Unified Border Element Using Voice SAF

Configuring Voice SAF

Command Reference

Glossary

Additional References

Related Documents

Related Topic
Document Title

Cisco SAF commands: complete command syntax, command mode, defaults, usage guidelines, and examples

Cisco IOS Service Advertisement Framework Command Reference

Cisco SAF configuration

Service Advertisement Framework Configuration Guide, Cisco IOS Release 15.1M&T

All other Cisco IOS Command Reference guides

Various titles located at http://www.cisco.com/en/US/customer/products/ps6350/prod_command_reference_list.html

Cisco Unified Communications Manager (CallManager) Documentation

Cisco Unified Communications Manager (CallManager) Documentation Roadmaps

Routers Support Resources

Technical Support and Documentation for Routers


Supported Platforms

Before configuring Voice SAF, ensure that you have the correct platform to support this feature and that the Voice SAF plug-in dial peer works in dual-session mode. Voice SAF is supported on the following Cisco platforms:

Cisco 1861

Cisco 1900

2600XM

2691

3700

2800

2801

2900

3800

3900

AS5350XM

AS5400XM

Restrictions for SAF

General restrictions for SAF include:

Only IPv4 is supported.

When enabled, SAF uses large amounts of memory. Be aware of the memory usage implications of enabling this feature.

Memory Requirements

About SAF

Service Advertisement Framework (SAF) provides a dynamic, plug-and-play environment for services within a network, enabling applications to advertise and discover services. The elements that make up the framework include SAF Clients, SAF Forwarders, forwarder nodes, transit forwarder nodes, and transparent nodes.

This section describes the following topics:

SAF and Cisco IOS Service Advertisement Framework

SAF Clients and Forwarders

SAF and Cisco IOS Service Advertisement Framework

Voice SAF is a subset of Cisco IOS Service Advertisement Framework. Before Voice service SAF is configured, it must first be enabled and configured as a Cisco IOS SAF service family to initiate the SAF service-discovery process. Additionally, interface-specific commands must be configured under service-family for Cisco SAF.

SAF Clients and Forwarders

The SAF network service is any information that an SAF Client application wants to advertise and can then be used by other SAF Client applications for routing services. The SAF Client learns and advertises the services. For applications that want to advertise to the network or request a service from the network, or both, use the SAF Client and SAF Forwarder.

This includes the source of the advertisement, the advertising SAF node, the type of service, and the means to contact the advertised service. An SAF Client that requires a service first must establish a relationship with the forwarder node and request the type of services it requires. The forwarder node then sends current advertisements (header and opaque data) to the clients that were previously learned from other forwarders.

Any node in the network that does not understand SAF is considered a transparent or non-SAF node. These nodes are referred to as "dark nets." Because messages are required to traverse ISP networks, SAF messages are IP-based and pass through such networks unaffected.

SAF Forwarder neighbors are established on a LAN using dynamic discovery, which occurs automatically on all configured and operational interfaces. Neighbors can also be statically configured to enable them to traverse through dark nets.

Figure 1 shows how the SAF Forwarder nodes create relationships between SAF Clients and the framework. The SAF Forwarder node receives the service advertisement and keeps a copy before forwarding the advertisement to its neighbor SAF Forwarder nodes. The SAF Client and SAF Forwarder node relationship is designed to maintain the advertisement and, if an SAF Client removes a service or disconnects from the forwarder node, this node informs the remainder of the framework of those services that are no longer available.

Figure 1 Neighbors and SAF Forwarders

The SAF Forwarder propagates service information to other forwarders as well, without producing or consuming any services. The SAF Forwarder interacts with client proxies, receiving services advertised by clients and making services available for client use. The SAF Forwarder also propagates service advertisements to other forwarders, across LANs, campus networks, and "dark nets," such as WANs, ISPs, and the Internet.

A transit forwarder node is a node without connected clients. It is generally found within the network and provides connectivity between the forwarder nodes. Transit forwarder nodes are optional in small deployments because all nodes can be forwarder nodes with simple peering arrangements. When a transit node receives advertisements from a SAF peer, the node forwards a copy to all other peers and then discards the opaque data, retaining a copy of the header information. So that advertisements can be updated or flushed during topology changes, the transit forwarder node requires the header information. By using this header information, the entire framework ensures the integrity and connectivity of the available services is correctly maintained during connectivity changes. This allows the framework to become segmented, operating autonomously with only the reachable services being advertised. As connectivity is reestablished with the services, they become reachable and are again advertised.

SAF Clients connect to the SAF network in one of two ways:

SAF Clients can reside on the same router as an SAF Forwarder using an internal client API, such as Cisco Unified Communications Manager Express (Cisco Unified CME), to connect to the forwarder.

SAF Clients can be external to an SAF Forwarder and require a protocol interface.

A major service is advertised by a 16-bit service identifier (service ID) in the range of 1 to 65534, which is displayed as a decimal value. A minor service is advertised by a 16-bit subservice identifier (subservice ID) in the range of 1-65534, which is displayed as a decimal value.

The SAF advertisement provides sufficient information about the service, what is being offered by the service, and how to contact the service; it is not a method for sending or updating information between services.

Voice SAF Key Benefits

The following list describes salient features of Voice SAF:

Tighter integration with overlay technologies.

Reduction in configuration complexity as Voice SAF moves intelligence into the network as applications become network resources.

Increased services availability and self discovery. It is similar to propagating IP subnet reachability through routing protocols. In Voice SAF neighborhood relationships can be formed across multiple hops, accommodating a phased roll out. It does not employ periodic broadcast, which limits resource demands on the network.

Independent of call signaling protocols, such as H.323 voice and video conferencing and Session Initiation Protocol (SIP).

Improvement in network application resiliency. Distributed intelligence allows all features to work identically, even in the absence of network connectivity to a central site, or a routing element, such as a gatekeeper or proxy.

Scalability using Cisco Unified Communications Manager.

How Voice SAF Works

This section describes the following topics:

SAF Autonomous System

Voice SAF Channel

About Trunk Route

DN Block

Call Control Service

SAF Client as a Publisher

SAF Client as a Subscriber

SAF Autonomous System

Voice SAF is an internal client that provides the connectivity to talk to the SAF network for products such as Cisco Unified CME, Cisco Unified SRST, TDM gateway and Cisco Unified Border Element. The scalability features inherent in the routing module are passed on to Voice SAF. One of these scalability features is the autonomous system feature module to route service advertisements in a hierarchical manner. An autonomous system (AS) is a collection of networks under a common administration that share a common routing strategy. An AS, sometimes called a domain, can be logically subdivided into multiple areas.

Use the router eigrp and network commands to create a routing process (see the Cisco IOS Service Advertisement Framework Configuration Guide and the Cisco IOS Service Advertisement Framework Command Reference for details). This command requires an AS number. All routers within an AS must use the same AS number to exchange routing information with each other.

To run Voice SAF, you do not need to run base routing. For example, multiple services can share the same characteristics that exist in the current EIGRP routing configuration topology. The EIGRP command-line interface (CLI) infrastructure has been restructured to group several service families under a single service description, where each service is associated with a particular service family. Each defined service family is used by the application as a service channel from which to advertise and subscribe. Use the service-family command to define a service family (see the Cisco IOS Service Advertisement Framework Configuration Guide and the Cisco IOS Service Advertisement Framework Command Reference for details).

Voice SAF Channel

In the context of Voice SAF, as shown in Figure 2, a channel is the conduit through which the service advertisements are sent (published) and received (subscribed). The configured channel (identified by its channel ID) is registered and associated with a specific virtual router identified by its unique name and a specific autonomous system identified by its autonomous system number (see "Configuring the Voice SAF Channel" section). The virtual router consists of a virtual router name and a set of associated IP addresses across a common LAN.

After the channel is configured, parameters must be set for the channel to play the role of either publisher or subscriber. The publish parameter is associated with a service identified by its service instance (see "Configuring to Publish a Service on an SAF Channel" section). The subscribe parameter can be configured to subscribe to all instances (in a wildcard fashion) or to a specific instance identified by its explicit service instance ID (see "Configuring to Subscribe for a Service on an SAF Channel" section).

Client Registration to the SAF Forwarder

A Voice SAF Forwarder receives services advertised by SAF Clients, distributes the services reliably throughout the network, and makes services available for Voice SAF Clients to learn and advertise the services. It propagates service advertisements to other SAF Forwarders and across a LAN, campus network, WAN, or ISP.

A basic SAF Forwarder establishes the relationship between SAF Clients and the SAF framework. A SAF Forwarder is normally located at the edges or boundaries of a network and receives service advertisements, storing a copy before forwarding the advertisement to its neighbor SAF Forwarder nodes. The client and forwarder relationship sustains the advertisement and notifies the rest of the framework if services are no longer available when the SAF Client disconnects from the SAF Forwarder node. When the forwarder node receives advertisements from other forwarder nodes, it keeps a copy of the entire advertisement and forwards it to other SAF peers.

To allow for dynamic discovery of services at the interfaces running on a LAN, configure the SAF Forwarder for automatic discovery. To block interfaces from discovering services, configure static interfaces to prevent auto discovery. To allow the dynamic discovery of services for the SAF Forwarder across a Non-SAF node, configure the SAF Forwarder for auto discovery.

Before starting any Voice SAF operation, the SAF Forwarder and every appropriate parameter must be configured at the router EIGRP level using the Cisco IOS Service Advertisement Framework. A Voice SAF channel maps to the service family configuration in named router mode of the router eigrp command. Each service family defines the following parameters:

Virtual instance name

VRF name

Address family (IPv4 or IPv6)

Autonomous system number

Topology base

For details about configuring the service family, see the Cisco IOS Service Advertisement Framework Configuration Guide and the Cisco IOS Service Advertisement Framework Command Reference.

EIGRP configuration example

The following EIGRP configuration example defines three service families under the virtual router name "vrouter1." Each SAF channel can only define the virtual router name and autonomous system. There is currently no ability to set the VRF instance, address family, and topology for the voice SAF client. The VRF instance is set to "default," the address family is set to "IPv4." and topology is set to "base." Appropriate configurations need to exist at the service family level. The following examples show the service family configurations for AS 4453, AS 6345, and AS 7892,

router eigrp vrouter1
    service-family ipv4 autonomous-system 4453          
          sf-interface ethernet 0
          no shutdown
          authentication key-chain trees
          authentication mode md5
          topology base
    exit
    service-family ipv4 autonomous-system 6345       
          sf-interface ethernet 1
          no shutdown
          topology voice_topo_name2
     exit
    service-family ipv4 autonomous-system 7892     
          sf-interface  serial 0
          no shutdown
          topology base
    exit     

Registration creates the SAF Client and successful session for the Voice SAF service family profile (configured through the SAF channel) with the forwarder.

To register a Voice SAF Client, complete the following steps:

1. Choose which SAF channels to register by specifying the EIGRP Voice SAF virtual router name and autonomous system parameters to identify a specific SAF channel (see channel).

The forwarder registration service creates an SAF Client channel and a Voice SAF connection with the SAF Forwarder layer. The SAF client channel remains inactive until registration is complete and populated with the SAF Client provided by the forwarder.

2. The Voice SAF Forwarder returns the SAF Client upon successful registration.

3. The Voice SAF Forwarder makes the SAF Client channel active and available for other operations and inserts it into the SAF Client channel table.


Note If the Voice SAF channel is configured before the corresponding EIGRP service family is configured, the channel cannot be configured and an error is logged in the system log. You can also check the registration status using the appropriate show CLI commands.


Figure 2 Voice SAF Channel and Services

Call Control Service

Cisco Unified Communications Manager call control service decodes addressing information and routes telephone calls from one endpoint to another. It controls telephone and PBX functions and provides the signaling to establish, disconnect (tear down), and transfer the call.

The Voice SAF call control service is identified by a call control service tag, which defines the DN service by the DN service name, which can optionally be given a description. It is made up of the following optional parameters:

Unique site code number

Trunk route profile defined by its trunk route ID

One or more DN block IDs

Site codes are numbers administratively assigned to calling areas to create unique digits used for internal directory numbers. To manipulate the digits of the telephone numbers that come into and go out of the voice gateway, site codes might need to be removed for calls made within a site or add area codes and other digits to route calls through the PSTN (see Configuring the Call Control Services).

Call Pattern Prefix

The call pattern prefix specifies a prefix for a specific dial peer. It adds specific digits to the beginning of the dialed string before it is forwarded to the telephony interface by the dial peer. For outgoing calls sent to this dial peer, the prefix string value is first sent to the interface, before the telephone number, associated with the dial peer. To configure different prefixes for dialed numbers on the same interface, you need to configure different dial peers. Digit prefixing occurs after the outbound dial peer is matched and before any digits are sent out. The called number is manipulated using digit prefixing.

The call pattern prefix is configured as the default prefix pattern with either a global or local prefix string (see Configuring the Call Pattern Prefix for SAF)

SAF Client as a Publisher

A Voice SAF Client advertises (publishes) to the network or uses (subscribes) services from the network, or both. When a SAF Client sends a register message to a SAF Forwarder, it establishes a relationship with the SAF Forwarder. The SAF Forwarder uses this register message to obtain a unique identifier that distinctly identifies this SAF Client from others connected to it. Only after a Voice SAF Client registers, can it advertise (publish) to, or request (subscribe), services.

When advertising a service, an SAF Client publishes advertisements to the SAF Forwarder that contain information about the service it offers. The SAF Client can send multiple publish requests, each advertising a distinct service. The SAF Forwarder advertises all services published by the SAF Client.

The publisher service advertises the subservice profiles on the chosen SAF channel. The Voice SAF process can advertise the list of hosted DN patterns of endpoints that are local to the Cisco Unified CME as well as information needed to reach PSTN endpoints. The advertisements are sent as an XML document on the SAF framework. The publisher service builds data from a given subservice profile that is converted into an XML format and sent out to the SAF framework. Each subservice profile can result in two advertised SAF instances: one with trunk route advertising SIP signaling and another advertising H.323 signaling.

The patterns you configure are prepended with a site code before being advertised, creating an incoming dynamic dial peer with the translation rule to remove the site code from the dialed number.

For example:

site-code : 333
voice translation-rule 2000000001
rule 1 /^333\(...\)/ /\1/

A block of dial-peer tags in the range of 1073741824-2147483647 are used by Voice SAF. The static dial-peer tag range is lowered to 1-1073741823. The dynamic incoming dial peers described in the previous example are created using a tag in the Voice SAF range.

Only one incoming dial peer is created for a trunk route advertising SIP and H.323 signaling. Similarly, translation rule tags in the range of 1073741824-2147483647 are used for Voice SAF.

SAF Client as a Subscriber

When requesting a service, the SAF Client sends a request notification of services using a subscribe request. The subscribe request contains a set of services in which the SAF Client is interested. The SAF Forwarder sends the current set of services that match the needs of the SAF Client, in a series of notify requests in response to this request. To provide flow control, multiple notify requests are sent. The Voice SAF Client must, in turn, respond to each notify request before the SAF Forwarder sends the next request. As with a publish request, the SAF Client can generate multiple subscribe requests. The SAF Client can also generate an unsubscribe request, which removes one of its existing subscriptions.

The subscriber service subscribes remote advertisements on given service and subservice identifiers. The SAF Client registers a callback with the Voice SAF forwarder for getting notifications regarding the availability of specific services.

The EIGRP Voice SAF provides the mechanism for Voice SAF Clients to subscribe to advertisements from a specific client instance. The instance ID in the SAF header has a 128-bit value and is unique across the entire network for a given service and subservice. The SAF Forwarder on the router defines a 32-bit router identifier (router ID) that is unique across the network. The router ID is part of the instance ID on top of identities associated with each profile instance.

Service Instances and Types of Services

Each service advertised on the Voice SAF network has a unique instance identifier (instance ID). The SAF Client can choose to be notified of all instances of a subservice or only of a particular instance by providing its unique service instance identifier.

The use of multiple service instances enhances the ability to separate the resources associated with a given instance both within a router and across the network. Multiple instances of a service can coexist on the same network and on the same physical router. Instance IDs must be unique within the same routing domain (autonomous system).

When a specific voice client instance subscribes and is interested in all the advertisements from all the clients in that Voice SAF channel, it uses a wildcard as the instance ID.

Subscribing to Fully Qualified Instance

To selectively listen from a particular instance of a client, the instance ID is fully qualified and indicates the explicit identity of the party of interest.

Subscribing to Hosted DN Services

When you subscribe to hosted Directory Name (DN) services, the subscriber service creates a local context of the channel to which you are being subscribed. Subscription can be for every call control service or for a fully qualified instance. You can explicitly subscribe to multiple fully qualified instances.

In response to the subscription request, the Voice SAF Forwarder returns the SAF subscription handle, which can be used later to unsubscribe from the service. The subscriber service updates the SAF Client channel with the SAF subscription handle and local subscription context.

To apply Voice SAF to a larger scale deployment environment, a border protocol, such as Cisco UBE (see "About Cisco Unified Border Element Using Voice SAF" section) , must be defined. Cisco UBE enhances the existing EIGRP SAF functionality to add application DN aggregation and summarization capability.

Explicit Withdrawal of DN Services

After receiving a request to remove the publication of a service, the Voice SAF Publisher service deletes the locally stored information for that particular advertised service and initiates a request to the SAF Forwarder to withdraw that service. The SAF Forwarder then notifies every interested SAF Client that the service has been withdrawn.

Whenever there is a change to the advertised service because of events such as the modification or deletion of the profiles advertised, you must manually execute the publish command to initiate the generation of a new service advertisement.


Note Only changes explicitly made using the SAF command-line interface commands are advertised when the publish command is executed.


Shutting down the IP interface does not result in sending a service withdrawal message. You must modify the trunk route profile to remove the corresponding interface (that is, the session protocol) configuration, and then execute the publish command to send out the advertisement.

When you want to remove the publication of a service, use the following CLI command under the particular SAF channel:

no publish callcontrol 2

Where the service tag "2" must match a previously defined service.

Upon getting such a notification from the SAF Forwarder, the remote client deletes the DNs learned from that service advertisement and removes the associated dial peer trunk route information.

The following actions result in the withdrawal of a service by the SAF Client:

For profiles related to patterns

Deletion of all DN blocks associated with a service

Deletion of all patterns from all the DN blocks associated with a service

For profiles related to trunk routes

Deletion of the trunk routes associated with the service

Removal of all session protocols defined under the trunk route (if only one session protocol was removed, then the service is only withdrawn for that particular instance)

For profiles related to call control

Deletion of the call control service (deleted using the no dn-service command)

Deletion of the call control profile (deleted using the no profile callcontrol command)

For control commands

Use of the no publish service configuration command

Issuing a shutdown command for the Voice SAF channel

Deletion of the Voice SAF channel

Shutdown of the voice SAF service (deleted using the no voice saf command)


Note Only control commands result in automatic service withdrawal. All profile-related changes require an explicit EXEC level publish command to bring about the withdrawal, for example using the voice saf publish channel channel_id callcontrol service tag command.


In addition to a client initiated withdrawal, the SAF Forwarder can also send a service withdrawal advertisement on the channel when the corresponding service family configuration is deleted. In this case, the SAF Forwarder sends a "registration revoke" message to the SAF Client.

Discovering Call Control Agents

Voice SAF uses a general protocol framework for distributing service information using a mechanism similar to routing. The Voice SAF architecture supports various services and applications. With Voice SAF capability, Cisco Unified Communications products, such as Cisco Unified CME, Cisco Communications Manager (CCM), Customer Voice Portal (CVP), and Voice Gateway can easily discover and configure service routes in a distributed deployment environment. These service routes can also be maintained by Voice SAF without human intervention when network components and connections change. Additionally, no application layer effort is necessary for functions like keepalive transactions.

Services and applications are identified by major service identifiers (service IDs) and minor subservice identifiers (subservice IDs) within Voice SAF. For a specific service client, a unique 128-bit instance identifier (instance ID) is used to identify a particular client. These identifiers are carried within the Voice SAF header following the normal EIGRP header fields. Service-specific data is carried in opaque data following the Voice SAF header.

An SAF header has the following format:

SAF Header

Standard EIGRP header that includes metrics, protocol version, authentication, and so on

SAF Header Content

Service ID: 2 Bytes

Sub-Service ID: 2 Bytes

Port: 4 Bytes

Sequence Number: 4 Bytes

Priority: 1 byte

Flags: 2 Bytes

Reachability: IPV4/6 address of the client

Encoding: AFI/ address

Every Cisco Unified Communications application shares the same service ID of 1. The TDM gateway uses a subservice ID of 1, and hosted DNs use subservice ID of 2.

This section describes the following topics:

Cisco Unified CME Branch Deployments and Assignment of Site Codes

Hosted DN

About Trunk Route

SAF Plug-in Dial Peer

Automatic Alternate Routing

Cisco Unified CME Branch Deployments and Assignment of Site Codes

The supported Cisco Unified CME SAF topology is fully meshed. Figure 3 shows a typical Voice SAF deployment with small Cisco Unified CME clusters. Figure 4 shows a typical Hybrid Cisco Unified CME deployment with a Cisco Unified Communications Manager cluster.


Note Each Cisco Unified Communications Manager site requires an external SAF forwarder attached to it (see "About Cisco Unified Border Element Using Voice SAF" section).


Extension length is a new parameter that can be specified in the call control profile. If a site code is specified, then extension length must be configured such that it corresponds to the extension length for the configured DNs. The system does not check to ensure conformance with the local extension DNs configured under the profile. For example, in the following command sequence, the extension length parameter must be configured:

Router(conf-voi-serv-saf-cc)# dn-service    
Router(conf-voi-serv-saf-cc-dn)# site-code 333 ?
  extension-length Number of digits in the extension pattern
Router(conf-voi-serv-saf-cc-dn)# site-code 333 extension-length ?
  <1-1532> Number of extension digits.

Note Existing Cisco Unified CME extensions are fully qualified to E.164 format using the dialplan-pattern command. This command creates an outbound alias dial peer to every phone extension that registers to the Cisco Unified CME and the destination pattern in the E.164 format of the corresponding extension.


Figure 3 Cisco Unified CME Fully Meshed Topology Using Voice SAF

Figure 4 Hybrid Cisco Unified CME and Unified Communications Manager Topology Using Voice SAF

Auto Discovery of branch offices Cisco Unified CME

Hosted DN

The hosted DN service represents a VoIP trunk service that can be utilized to reach a collection of native IP endpoints hosted on a call agent. The hosted DN service is fundamentally a link between two pieces of information: the description of a VoIP trunk and the set of native endpoints reachable through that trunk.

DN Block

A DN block contains associated patterns, which represent regular expression patterns that comply with the grammar described for the dnGroup. The Voice SAF DN block allows the configuration of blocks of digits represented by digit patterns. The DN block is identified by a DN block identifier (DN block ID).

The DN pattern is the name of an element of the hosted DN service of the dnGroup type. The dnGroup type identifies a group of endpoints identifiable by phone numbers. SAF supports two types of numbers. One are global numbers, which are valid E.164 numbers, and the other are local numbers, which are not E.164 numbers, but are valid within the enterprise.

When learned at the remote endpoint, the DN block can be optionally configured to use alias digits or to strip all or a specific range of digits from a pattern of digits before any digits are sent out. An alias number is activated when a telephone registers that it has a phone number matching a configured alternate-number alias. Under that condition, an incoming call is rerouted to the alternate number. The alternate-number argument can be used in multiple alias commands, allowing you to reroute multiple different numbers to the same target number.

You can manipulate digits by adding or subtracting (stripping) digits from the original dialed number to conform to user dialing practices; digit manipulation involves adding, subtracting, and changing telephone numbers. The digit-strip subcommand, supported on plain old telephone service (POTS) dial peers only, is a dial peer command that strips off the matched digits in a destination pattern of a dial peer. You can configure the digit stripping to occur after the outbound dial peer is matched and before any digits are sent out. The called number is manipulated using digit stripping.

Voice SAF supports two types of patterns advertised by the call control service: extension patterns and global E.164 numbers. Local numbers, which are not E.164 numbers, but are still valid within the enterprise. Global numbers are valid E.164 numbers.

In a series of digit patterns, each pattern is identified by a pattern tag and can be either a global or extension type of pattern (see "Configuring DN Block" section).

Subscribing to Hosted DN Services

When you subscribe to hosted DN services, the subscriber service creates a local context in the scope of the channel to which you are being subscribed. The subscription can be for all call control services or for a fully qualified instance. You can explicitly subscribe to multiple fully qualified instances.

In response to the subscription request, the SAF Forwarder returns the SAF subscription handle. This SAF subscription handle can be used later to unsubscribe from the service.

Subscribing to Fully Qualified Instance

The EIGRP SAF provides the mechanism for SAF Clients to subscribe to advertisements from a specific client instance. The instance identifier (instance ID) in the SAF header has a 128-bit value and is unique across the entire network for a given service and subservice. The SAF Forwarder on the router defines a 32-bit router identifier (router ID) that is unique across the network. The router ID is part of the instance ID associated with each profile instance.

When a specific SAF Client instance subscribes to all the advertisements from all the clients in that channel, it uses a wildcard for the instance ID.

To selectively listen from a particular instance of a client, the instance ID is fully qualified and indicates the explicit identity of the party of interest.

Notification of Hosted DN Service

As notification updates are received from the SAF Forwarder for the subscribed service or subservice and related instances, the updates are given to the SAF Client in the scope of the registered subscription context.

The SAF DN database table is updated with the modified patterns. The DN pattern modification operation itself is basically to delete and add new entries. The new trunk route is associated to the added DN pattern entry.

If the XML advertisement is missing any required element or attribute, then that notification is dropped. The appropriate counters increment and this state is displayed after using the show voice service saf channel command.


Note While parsing the XML advertisement, any unknown attribute or element is ignored. No error is generated for this case.


About Trunk Route

The trunk route profile describes the signaling interface by which a remote client can reach the service described in the advertisement. Trunk route profile information is common to both hosted directory number (DN) and TDM gateway services. Each trunk route conveys the signaling protocol, an optional IP address, port and transport protocol, security protocol, and signaling protocol specific to trunk access techniques.

A Voice SAF trunk route profile is identified by a route identifier (trunk route ID). To configure the trunk route profile, the session protocol (SIP or H.323), the interface (interface ID), and the transport type (TCP, UDP, or TLS-TCP) must be configured (see "Configuring Trunk Route" section).


Note The Route element will not be advertised by Cisco Unified CME. However, if Cisco Unified Communications Manager publishes the route element, then it will include a route header containing this URI in the INVITE it sends to the CCM.


SAF Plug-in Dial Peer

SAF trunk route usage is transparent to the application modules. Existing operations and dial peer lookups during call routing and interfacing to the voice applications remain identical.

When the outbound dial peer match routines are called, the voice dial peer module matches all the static dial peers configured on the router, based on the destination pattern. To connect the querying the SAF module to available dynamic trunk routes, it is necessary to configure a special VoIP dial peer, called the SAF-Plug-in Dial-Peer, with the session target as keyword saf (see "Configuring SAF Plug-in Dial Peers" section).

For example:

SAF-Plugin Dial-Peer to query explicit dial pattern 333....
! 
dial-peer voice 333 voip
preference 1
destination-pattern 333....  <<< SAF query initiation for explicit site-code  - 333
 session target saf

SAF-Plugin Dial-Peer to query all dial patterns .T
!
dial-peer voice 7 voip
destination-pattern .T       <<< SAF Query initiation for all dialed-numbers - .T
 session target saf
!

The first SAF Plug-in dial peer (tag 333) in the previous example indicates an explicit preference to return the dynamic SAF trunk routes on top of any statically configured trunk routes for a dial string to match 333. The second peer (tag 7) is a wildcard plug-in dial peer that must be configured in order for any dialed numbers to use SAF routes. Additionally, the SAF query is completed only one time if applicable on the call of dpMatchPeersXXXX().

After the SAF module is called, it returns one or more SAF Peers based on the query result of the SAF DN Database.


Note The SAF Plug-in dial peer is treated like any other statically configured dial peer. All policies and configurations of the plug-in dial peer are inherited by the SAF peers. The plug-in dial peer tag value must be below 2048.


Automatic Alternate Routing

The Automatic Alternate Route (AAR) feature provides the functionality necessary to reach an extension hosted by the Cisco Unified CME by using an alternate PSTN number. When an IP router is unavailable, the AAR uses an alternate PSTN number. The publishing Cisco Unified CME can advertise alternate numbers for the DNs hosted in addition to the IP trunk routes. When the subscribing Cisco Unified CME routes a call, it dynamically learns the globally routable alias number. Figure 5 shows AAR routing within Voice SAF networks.

Figure 5 Automatic Alternative Routing Using Voice SAF

SAF Publisher

The SAF Publisher must be configured to provide the alternate or alias number. The alternate number can be specified at the DN block level (see "profile dn-block" section), which contains all the patterns that can use the same alternate number. When the patterns cannot use the same alternate number, then you can create the patterns under a different DN block.

In addition to the alternate number, you can also specify the strip field. This strip field determines the number of digits from the set of leading digits of the pattern that can be replaced by the alternate number. There can be two types of patterns advertised by the call control service: extension patterns and global E.164 numbers.

When a voice call is received, it chooses an outbound POTS dial peer by comparing the called number (the full E.164 telephone number) in the call information with the number configured as the destination pattern in the POTS dial peer. The router then strips off the left-justified digits that match the destination pattern. If you have configured a prefix, the prefix is added to the front of the remaining digits, creating a dial string, which the router then dials. If all numbers in the destination pattern are stripped out, the user receives a dial tone.

When the router matches a dial string to an outbound POTS dial peer, by default the router strips off the left-justified digits that explicitly match the destination pattern. Any remaining digits, called excess digits, are forwarded to the telephony interface, such as a PBX or the PSTN.

To advertise extension patterns, the site code is prepended to the pattern in the advertisement. When specifying the alternate number prefix and strip fields, be sure to take into consideration the number of digits used for the site code.

For example, if the DN patterns 3000, 3001, 3002 to 3099 have site code 444, then the advertised extension pattern in this case is 44430xx.

In another example, if these extension patterns have the same DID block prefix number 140855580xx, then you must configure the strip field to remove the four leading digits from the pattern and replace them with the alternate number prefix as follows:

//dn-block  profile id : 4 , strip 4 digits from extension pattern //(prepended with 
site-code) and replace with 14085558
dn-block 4 alias 14085558 strip length 4     
  pattern 20 extension 30xx 

SAF Subscriber

When the notification handler service receives a notification that contains an alias for a particular pattern, it updates the Directory Number (DN) database with both the DN pattern and the alternate number.

If a withdrawal notification is received, all the patterns advertised by that instance that do not contain alias numbers are removed from the DN database. The corresponding IP trunk route is also removed. Only those advertised DNs that have the corresponding alias number are stored in the DN database. The advertised DNs are stored in the DN database because the queries are based on the advertised DN pattern. The instance age-out counter increments each time the AAR timer increments. (The AAR timer is set internally to five minutes.) After the age-out counter for an instance reaches its configured timeout value, all remaining DNs and alias numbers for that instance are removed. If the remote entity republishes the service with the same instance ID, then the age-out counter for that instance is reset, and the database is refreshed. The default timeout value is one day (1440 minutes).

When the call control application queries for an outbound dial peer match, it reaches the SAF plug-in dial-peer by using the normal dial-peer lookup procedure. If a match is found in the DN database, it returns a list of IP peers and peers that contain the alias PSTN number. The peers containing the alias numbers are ordered such that they appear at the bottom of the peer list before returning the results to the dial peer module. The alternate number is then tried at the end after attempts to reach the destination from the IP side fail.

The alias number found in the DN database can be prefixed with a steering digit specified using the pattern prefix default subcommand under the call command. If the alias DN steering prefix is configured, the alias number is prepended with prefix digits before querying for a dial peer match of the alias number. This helps to steer the alias numbers to a specific VoIP or POTS dial peer.

The dial-plan pattern specifies a global prefix for the expansion of abbreviated extension numbers into fully qualified E.164 public switched telephone network (PSTN) numbers.

Translation rules allow the manipulation of called numbers, calling numbers, and number types. It can also be attached in such a way that it translates calls in only one direction, either incoming or outgoing.

The syntax for translation rules can be cryptic if you are unfamiliar with regular expressions, but these rules can provide a powerful facility to manipulate digits. Translation rules are not tied to Cisco Unified CME, so you can use it on any Cisco IOS voice-enabled router.

Here are some considerations when using the Cisco IOS voice translation rules feature:

These rules make for a very powerful overall feature that can do almost any translation of digits required, but using these rules can be complicated and, therefore, prone to errors for inexperienced implementers.

Being a generic Cisco IOS feature, the feature's rules apply to all calls that traverse the router. It can be applied at a global level, dial peers, and ephone-dns (Cisco Unified CME IP phones).

The digits are manipulated before dial peer matching and call termination.

Calling and/or called numbers can be manipulated on every call based on what is configured.

The rules can be applied to incoming or outgoing calls (or both directions).

When applying translation rules to ephone-dns, there is a side effect that if no rule is matched, an extra post-dial delay is incurred. As a workaround, create a dummy translation rule that acts as a pass-through. For example, if no rule is applied to extension-to-extension calls, and the extensions all start with 5, add a rule that "translates" 5 to 5, just to make sure that a rule is always matched, and the delay is not incurred.

For more information about voice translation rules, see the Voice Translation Rules (Doc ID: 16083) presented on Cisco.com.

You can use an E.164 PSTN phone number to route calls over VoIP between Cisco Unified CME sites. In this case, intersite callers use the PSTN area code and local prefix to route calls between Cisco Unified CME systems.

About Voice SAF, Cisco Unified Communications Manager, and Cisco Unified CME

Cisco Unified Communications Manager serves as the software-based call-processing component of the Cisco Unified Communications family of products. A wide range of Cisco Media Convergence Servers provides high-availability server platforms for Cisco Unified Communications Manager call processing, services, and applications. The Cisco Unified Communications Manager system extends enterprise telephony features and functions to packet telephony network devices such as IP Phones, media processing devices, voice-over-IP (VoIP) gateways, and multimedia applications.

Cisco Unified CME is a feature-rich entry-level IP telephony solution that is integrated directly into Cisco IOS software. Cisco Unified CME allows small business customers and autonomous small enterprise branch offices to deploy voice, data, and IP telephony on a single platform for small offices, thereby streamlining operations and lowering network costs. A Cisco Unified CME system is extremely flexible because it is modular. A Cisco Unified CME system consists of a router that serves as a gateway and one or more VLANs that connect IP phones and phone devices to the router.

Cisco devices such as Cisco Unified CME, Cisco Unified Communications Manager, Customer Voice Portal (CVP), and IOS-Gateway can easily discover and configure service routes in a distributed deployment environment. These service routes can also be maintained by Voice SAF without human intervention when network components and connectivity change. All services and applications are identified by a service or subservice identifier within Voice SAF. A unique 128-bit instance identifier is used to identify this particular client. These identifiers are carried within Voice SAF header after the standard EIGRP header fields. Service specific data is carried in opaque data following the Voice SAF header. Figure 6 shows an example of the Voice SAF call control topology of Cisco Unified Communications Manager, Cisco Unified CME, and the PSTN gateway.

To avoid certain problems, a dial plan pattern with the site code must be created for SIP and SCCP IP phones if configured using voice register global and telephony service commands on the publisher Cisco Unified CME when the call control profile is advertised. This dial plan pattern creates dial peers such that the destination patterns are qualified using the site code.

For example, if the SIP phones contain seven-digit extensions with an advertised site code of 567, then the following dial plan pattern must be created using the voice register global command.

dialplan-pattern 1 567....... extension-length 7 no-reg

This section describes the following topics:

Collocated Cisco Unified CME and Gateway

Cisco Unified CME Gateway using Static VoIP Dial Peer

Router in Gateway Mode

Auto Discovery of TDM Gateways

SAF Routing in Toll Bypass TDM Gateway Networks

Figure 6 Cisco Unified Communications Manager, Cisco Unified CME, and PSTN TDM Gateway Topology Using Voice SAF

Collocated Cisco Unified CME and Gateway

If the Cisco Unified CME and the Gateway are collocated on the same router, then the alias number can be routed to the PSTN network using an outgoing POTS dial peer. The alias-dn-steering prefix command can be configured to steer all the alias numbers to use a particular POTS dial peer.

Cisco Unified CME Gateway using Static VoIP Dial Peer

If the Gateway is not collocated with the Cisco Unified CME, then there could be a static VoIP dial peer on the Cisco Unified CME pointing to the Gateway. The alias-dn-steering prefix command can be configured to steer all the alias numbers to use a particular VoIP dial peer to reach the PSTN gateway.

Router in Gateway Mode

With the router in gateway mode, the IP Phones are registered with the Cisco Unified Communications Manager. The routers are in standby gateway mode. The Voice SAF DN database is populated with the patterns advertised by the Cisco Unified Communications Manager.

Cisco Unified CME Mode/Gateway Mode with SIP or H.323

Auto Discovery of TDM Gateways

TDM gateways convert time-division multiplexing (TDM) voice to packet voice. Discovery of Cisco Unified Communications Manager cluster elements and associated Unified Communications applications, phones, and gateways is automatic.

Cisco Unified Communications Manager automatically discovers the network and updates its knowledge base by identifying the role of every device and application in the Unified Communications network. It monitors the discovered network elements to detect faults using its built-in intelligence to immediately alert network managers through alerts and events. From alerts and event displays, network administrators can launch context-sensitive tools for each alert and event to troubleshoot the fault. The IP Phone status display, for example, can provide information about a phone's switch, switch port, serial number, application load, and so on, allowing administrators to locate the phone and further troubleshoot the problems.

The auto discovery feature determines which devices have already been added to the system so that the auto discovery feature does not attempt to discover the same device multiple times. All IP devices are grouped under their parent network (that is, it groups monitored objects in a network layout). This view provides a logical view of the network structure. For example, devices on the same subnet would be grouped together.

SAF Routing in Toll Bypass TDM Gateway Networks

Figure 7 illustrates setting up and connecting the TDM gateway call over the PSTN while still originating the transmission from a voice gateway router is known as toll bypass. The dial peer must be configured to automatically route an outgoing voice call over the PSTN in the event of a temporary IP network outage, The following configuration example shows how to configure a toll bypass.

As shown in Figure 7, you can create a toll bypass TDM gateway network by configuring the first gateway as a subscriber and second gateway as a publisher. Configure H.323 as trunk route and publish the DN service from the second gateway. The two TDM gateways should dynamically discover each other, allowing successful voice calls from the first PSTN gateway area 408 to be routed to the second PSTN gateway area 416 using SAF call routing. Use the show voice saf dnDb all command to verify that the DN service is learned by the subscriber gateway.

Figure 7 Toll Bypass Network Topology

About Cisco Unified SRST Using Voice SAF

Cisco Unified Survivable Remote Site Telephony (Cisco Unified SRST) provides basic IP telephony backup services. IP Phones can fall back to the router in local branch offices when they lose their keepalives messages to the Cisco Unified Communications Manager. Cisco Unified SRST routers can use the Voice SAF auto-discovery mechanism to learn PSTN prefixes along with the extensions they manage (in SRST mode) in routing interbranch office calls. The Cisco Unified SRST router currently performs IP telephony call processing for IP Phones, emergency 911 calls can be made through the PSTN, and data is dialed backup. Cisco IP Phones Models 7960 and 7940 displays indicate whenever there is fallback (CallManager Fallback Operating).

For calls to be routed between Directory Numbers (DNs) across two different branch offices in fallback SRST mode, the originating branch router must learn and configure appropriate translation rules and number expansion. The number expansion (num-exp) command is a global command that applies to all calls and initiates a match-and-replace operation to expand or deflate numbers. This command is typically used for short dials and site codes. Number expansion occurs prior to matching a dial peer. The called number is manipulated using number expansion.

In most corporate environments, the telephone network is configured so that you can reach a destination by dialing only a portion (an extension number) of the full E.164 telephone number. You can define an extension number as the destination pattern for a dial peer. The router can be configured to recognize the extension number and expand it into its full E.164 dialed number when the num-exp global configuration command is used with the destination-pattern dial-peer voice configuration command. This helps to convert speed-dials and extensions to fully qualified E.164 numbers to enable calls that can be routed over the PSTN. When a new branch office is added, it becomes necessary for all other branch office routers to be updated with the appropriate number expansion translation rules. For networks comprised of a very limited small number of branch offices, it does not pose a major challenge.

However, the challenge is for a large enterprise network made up of 100 to 1000 branch offices, where it becomes cumbersome and error-prone to configure new updates each branch office with the number expansion rules.

If Cisco Unified SRST routers auto-discover each other's PSTN prefixes along with the extensions they handle (in SRST mode) and the auto-discovered PSTN prefixes can be used while routing interbranch office calls. This makes the task easier and more resilient to topographic changes.

You can perform one-time configurations related to gateway in SRST mode, and leave the rest for the routers to learn how to reach each other.

As part of Voice SAF call control discovery service, the concept of automatic-alternate routing (AAR) is implemented. AAR enables advertising the primary DNs along with its globally routable E.164 prefixes. The same concept can be used while Cisco Unified Communications Manager advertises the CCD service.

When the user-dialed primary DN is unreachable through the IP network, its corresponding alternate number is tried in an attempt to reach the endpoint off-net over the PSTN.

Figure 8 shows a typical Cisco Unified SRST topology over SIP for both an SAF-enabled and a non-SAF scenario.

Figure 8 Cisco Unified SRST Topology with CUBE SAF and Non-SAF Using Voice SAF

About Cisco Unified Border Element Using Voice SAF

The Cisco Unified Border Element (Cisco UBE) is a session border controller, or IP-to-IP gateway, designed to provide easy and cost-effective connectivity between independent Cisco Unified Communications (including voice-over-IP and video-over-IP) networks. The Cisco UBE provides interconnection between incompatible applications within the enterprise network, between different enterprises for business-to-business applications, for enterprise connectivity to service provider SIP trunks, as well as between multiple independent service provider networks (peering).

The Cisco UBE provides session management capabilities, H.323 and SIP interworking functions, and network-to-network interface security and demarcation features. It performs most of the same functions of a public switched telephone network (PSTN)-to-IP gateway but joins two VoIP call legs. Media packets can either flow through (thus hiding the networks from each other) or flow around the Cisco UBE platform.

Cisco UBE allows SAF and non-SAF call control between Cisco Unified CME, Cisco Unified Communications Manager, Cisco Unified SRST, and TDM gateway networks. Figure 9 shows typical Cisco UBE deployments:

SAF-Enabled Cisco CME (Cisco Unified Communications Manager) Branch to Non-SAF Cisco CME Branch Using Cisco UBE

Figure 9 shows Cisco UBE connecting SAF and non-SAF networks, where SIP calls from SAF-enabled Cisco Unified CME (or Cisco Unified Communications Manager) branch are successfully made to non-SAF Cisco Unified CME branch using Cisco UBE.

Cisco UBE publishes DN database patterns on behalf of non-SAF Cisco Unified CME branch to the SAF-enabled Cisco Unified CME branch, which subscribes to Cisco UBE.

SAF-Enabled Cisco CME (Cisco Unified Communications Manager) Branch to Non-SAF Cisco Unified SRST Branch Using Cisco UBE

Figure 9 also shows Cisco UBE connecting SAF and non-SAF networks, where calls from SAF-enabled Cisco Unified CME (or Cisco Unified Communications Manager) branch are successfully made to non-SAF Cisco Unified SRST branch using Cisco UBE.

Cisco UBE publishes DN database patterns on behalf of non-SAF Cisco Unified SRST branch to the SAF-enabled Cisco Unified CME (Cisco Communications Manager) branch, which subscribes to Cisco UBE.

SAF-Enabled Cisco CME (Cisco Unified Communications Manager) Branch to Non-SAF TDM Gateway Branch Using Cisco UBE

Additionally, Figure 9 also shows Cisco UBE connecting SAF and non-SAF networks, where calls from SAF-enabled Cisco Unified CME (or Cisco Unified Communications Manager) branch are successfully made to non-SAF TDM gateway branch using Cisco UBE.

Cisco UBE publishes DN database patterns on behalf of non-SAF TDM gateway branch to the SAF-enabled Cisco Unified CME (Cisco Communications Manager) branch, which subscribes to Cisco UBE.

In this case, the call is made from an IP Phone on Cisco Unified CME (or Cisco Unified Communications Manager) and routed to a non-SAF TDM gateway using Cisco UBE to an analog FXS Phone.

Figure 9 Cisco Unified Border Element Using Topology Using Voice SAF

Configuring Voice SAF

The following sections describe the basic configuration of Voice SAF. Perform the following configurations in the order shown:

1. Enabling the Cisco SAF Service Family

2. Configuring DN Block

3. Configuring Trunk Route

4. Configuring the Call Control Services

5. Configuring the Voice SAF Channel

6. Configuring to Publish a Service on an SAF Channel

7. Configuring to Subscribe for a Service on an SAF Channel

8. Configuring the Call Pattern Prefix for SAF

9. Configuring SAF Plug-in Dial Peers

Enabling the Cisco SAF Service Family

To enable the Cisco SAF service family and configure a Cisco SAF Forwarder, follow the guidelines provided by the Cisco IOS Service Advertisement Framework Configuration Guide and the Cisco IOS Service Advertisement Framework Command Reference.

The following example enables a Cisco SAF service family for the specified autonomous system on the router:

Router(config-router)# service-family ipv4 autonomous-system 4453

Configuring DN Block

To configure Voice SAF directory number (DN) block, complete the following steps.

SUMMARY STEPS

1. voice service saf

2. profile dn-block dn-block-id [alias-prefix length num [strip length num]]

3. pattern tag type {global | extension} digits

4. exit

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

voice service saf

Example:

Router(conf-voi-serv-saf)#

Enters the voice services SAF configuration mode.

Step 2 

profile dn-block dn-block-id [alias-prefix digits [strip length num]]

Example:

Router(conf-voi-serv-saf)# profile dn-block 10 alias-prefix 408 strip length 4

Router(conf-voi-serv-saf-dnblk)#

Sets the voice services DN Block identifier as an integer in the range of 1 to 255.

Optionally sets the alias prefix digits (derived alternate DN's prefix).

Optionally sets the strip length number rule for removal of the leading number of digits, in the integer range of 0 to 16, while deriving alternate DN.

Note You can strip all numbers from the extension by entering a carriage return <cr> instead of using the alias-prefix option.

After the parameter values are set, it enters DN block configuration mode.

Default: strip digits: 0

Step 3 

pattern tag type {global | extension} pattern

Example:

Router(conf-voi-serv-saf-dnblk)# pattern 25 type extension 1408XXXXXXX

Router(conf-voi-serv-saf-dnblk)#


Router(conf-voi-serv-saf-dnblk)# no pattern 25


or

Router(conf-voi-serv-saf-dnblk)# pattern 10 type extension 1510XXXXXXX

Router(conf-voi-serv-saf-dnblk)#


Router(conf-voi-serv-saf-dnblk)# no pattern 10

Configures the regular expression patterns associated with this DN Block by entering the pattern identifier tag, the pattern type, and the sequence of digits.

For more detail, see "Grammar for DN Blocks Valid Patterns" section.

Use the no form of the submode command to negate it.

The pattern identifier tag is an integer in the range of 1 to 25.

Step 4 

exit

Example:

Router(conf-voi-serv-saf-dnblk)# exit

Router(conf-voi-serv-saf)#

Exits voice service DN block configuration mode.

Grammar for DN Blocks Valid Patterns

The grammar for valid patterns is as follows:

pattern

=

["+"] 1*rule [end-rule]

rule

=

match-one / match-any / match-set

match-one

=

"0" / "1" / "2" / "3" / "4" / "5" / "6" / "7" / "8" / "9" / "a"/ "b" / "c" / "d" / "*" / "#"

match-any

=

"x"

match-set

=

"[" [negation] ( (1*match-one) / (match-range) "]"

negation

=

"^"

match-range

=

start "-" stop

start

=

match-one

stop

=

match-one

end-rule

=

"!" / "%"


Table 1 shows examples of valid patterns.

Table 1 Examples of Valid Patterns 

Pattern
Meaning

1000

A single endpoint with the directory number 1000.

#44

A single endpoint with directory number #44.

55x

18 endpoints: 550, 551, .... 559.

55[0123]

4 endpoints: 550, 551, 552, and 553.

55[^0123]

14 endpoints: 554, 555, ... 559, 55a, 55b. ..., 55d, 55* and 55#.

55[0-3]

4 endpoints: 550, 551, 552, and 553

1408%

All E.164 endpoints in the 408 area code in the United States.


The syntax for digits is:

prepend-digits

=

0*16DIGIT

DIGIT

=

"1" / "2" / "3" / "4" / "5" / "6" / "7"/ "8" / "9" / "0"


Configuring Trunk Route

To configure Voice SAF trunk route, complete the following steps.

SUMMARY STEPS

1. profile trunk-route trunk-route_id

2. session protocol sip interface interface transport udp port port-num

and/or

session protocol h323 interface interface transport tcp port port-num

3. exit

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

profile trunk-route trunk-route_id

Example:

Router(conf-voi-serv-saf)# profile trunk-route 1

Router(conf-voi-serv-saf-tr)#

Sets the voice services trunk route identifier, an integer value in the range of 1 to 255, and enters voice services trunk route configuration mode. Use the no form of this command to negate the configuration.

Step 2 

session protocol sip interface interface transport {tcp | udp | tls-tcp} port port-num

session protocol h323 interface interface transport tcp | udp} port port-num

Example:

Router(conf-voi-serv-saf-tr)# session protocol sip interface gigabitethernet0/0 transport udp port 5060

Router(conf-voi-serv-saf-tr)#


and/or

Router(conf-voi-serv-saf-tr)# session protocol h323 interface gigabitethernet0/1 transport tcp port 1720

Configures the signalling session protocol, IP interface, transport type, and port number.

Use the no form of the submode command to negate the session protocol configuration.

Note The tls-tcp transport option only appears as an submode command option if a security (K9) image is installed.

Defaults:
SIP—TCP or UDP port: 5060; TLS port: 5061
H.323—TCP or UDP port: 1720

Step 3 

exit

Example:

Router(conf-voi-serv-saf-tr)# exit

Router(conf-voi-serv-saf)#

Exits voice service trunk route configuration mode.

Configuring the Call Control Services

To configure the call control services, complete the following steps:

SUMMARY STEPS

1. profile callcontrol tag

2. dn-service [name]

3. description line

4. dn-block dn-block-id

5. site-code digits extension-length num

6. trunk-route profile-id

7. exit

8. exit

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

profile callcontrol tag

Example:

Router(conf-voi-serv-saf)# profile callcontrol 5

Router(conf-voi-serv-saf-cc)#

Sets the profile call control identifier, an integer value in the range of 1 to 255, and enters voice service SAF call control configuration mode.

Step 2 

dn-service [name]

Example:

Router(conf-voi-serv-saf-cc)# dn-service test25

Router(conf-voi-serv-saf-cc-dn)#

Configures the hosted Directory Number (DN) service (specified service name is optional) and enters the voice service SAF call control hosted DN service configuration mode.

Step 3 

description line

Example:

Router(conf-voi-serv-saf-cc-dn)# description RTP Router(conf-voi-serv-saf-cc-dn)#

Sets the description of the hosted DN service.

Step 4 

dn-block dn-block-id

Example:

Router(conf-voi-serv-saf-cc-dn)# dn-block 10

Router(conf-voi-serv-saf-cc-dn)#

Sets the profile identifier, an integer value in the range of 1 to 255, for the DN block.

Step 5 

site-code digits extension-length num

Example:

Router(conf-voi-serv-saf-cc-dn)# site-code 415 extension-length 4

Router(conf-voi-serv-saf-cc-dn)#

Sets the site code, which is a string of digits representing the site code, and the number of extension digits in the range of 1 to 15.

Step 6 

trunk-route profile-id

Example:

Router(conf-voi-serv-saf-cc-dn)# trunk-route 1

Router(conf-voi-serv-saf-cc-dn)#

Sets the profile identifier for the trunk route.

Step 7 

exit

Example:

Router(conf-voi-serv-saf-cc-dn)# exit

Router(conf-voi-serv-saf-cc)

Exits voice service SAF call control DN service configuration mode.

Step 8 

exit

Example:

Router(conf-voi-serv-saf-cc)# exit

Router(conf-voi-serv-saf)#

Exits voice service SAF call control configuration mode.

Configuring the Voice SAF Channel

To configure the Voice SAF channel, complete the following steps:


Note The Voice SAF channel configuration must match that configured previously in Cisco SAF.


SUMMARY STEPS

1. channel channel-id [vrouter name asystem num]

2. shutdown
Or
no shutdown

3. exit

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

channel channel-id [vrouter name asystem num]

Example:

Router(config-router)# service-family ipv4 autonomous-system 4453

Router(conf-voi-serv-saf)# channel 2 vrouter virtual-name asystem 4453

Sets the channel identifier, an integer in the range of 1 to 255, and optionally the virtual router name, associating the autonomous system number, an integer in the range of 1 to 65535.

Enters the Voice SAF channel configuration mode.

Use the no form of the command to negate the channel configuration and eliminate the CLI submode configurations.

Step 2 

shutdown


or

no shutdown

Example:

Router(conf-voi-serv-saf)# shutdown

Use the no shutdown command to administratively enable or the shutdown command to administratively disable the channel.

Step 3 

exit

Example:

Router(conf-voi-serv-saf-chan)# exit

Router(conf-voi-serv-saf)#

Exits voice service SAF channel configuration mode.

Configuring to Publish a Service on an SAF Channel

To configure to publish a service on a preconfigured voice service SAF channel, complete the following steps:

SUMMARY STEPS

1. publish callcontroll tag

2. exit

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

publish callcontrol tag

Example:

Router(conf-voi-serv-saf-chan)# publish callcontrol 5

Router(conf-voi-serv-saf-chan)#

Activates publication for a server under the preconfigured channel. In this case, activates a call control publication for the call control profile identifier tag.

Step 2 

exit

Example:

Router(conf-voi-serv-saf-chan)# exit

Router(conf-voi-serv-saf)#

Exits voice service SAF channel publish call control configuration mode.

Configuring to Subscribe for a Service on an SAF Channel

To configure to subscribe for a given service on a preconfigured voice service SAF channel, complete the following steps:

SUMMARY STEPS

1. subscribe callcontrol {instance instance-id | wildcarded}

2. exit

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

subscribe callcontrol {instance instance-id | wildcarded}

Example:

Router(conf-voi-serv-saf-chan)# subscribe callcontrol wildcarded

Router(conf-voi-serv-saf-chan)#

Activates a subscription for a service under the channel. Subscribes to either:

An instance-id—a unique instance identifier advertisement of the service (see "Service Instances and Types of Services" section), or

Is wildcarded—every advertisement of the service

Step 2 

exit

Example:

Router(conf-voi-serv-saf-chan)# exit

Router(conf-voi-serv-saf)#

Exits voice service SAF channel subscribe call control configuration mode.

Configuring the Call Pattern Prefix for SAF

To configure call pattern prefix for SAF, complete the following steps:

SUMMARY STEPS

1. call

2. pattern prefix

3. prefix alias-dn-steering digits

4. prefix global digits

5. prefix local digits

6. exit

7. timer aar-ageout {mins | none}

8. exit

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

call

Example:

Router(conf-voi-serv-saf)#

Router(conf-voi-serv-saf-call)#

Enters voice service SAF call processing configuration mode.

Step 2 

pattern prefix

Example:

Router(conf-voi-serv-saf-call)# pattern prefix

Router(conf-voi-serv-saf-call-pattern)#

Configures the voice service SAF prefix pattern (see "Call Pattern Prefix" section.

Step 3 

prefix alias-dn-steering digits

Example:

Router(conf-voi-serv-saf-call-pattern)# prefix alias-dn-steering 1408

Router(conf-voi-serv-saf-call-pattern)#

Sets the alias DN steering prefix ranging from 0 to 7 digits.

Use the no form of the command to negate the configuration or return it to the default values.

Step 4 

prefix global digits

Example:

Router(conf-voi-serv-saf-call-pattern)# prefix global 1408

Router(conf-voi-serv-saf-call-pattern)#

Sets the prefix for the dialable global directory number ranging from 0 to 7 digits.

Use the no form of the command to negate the configuration or return it to the default values.

Step 5 

prefix local digits

Example:

Router(conf-voi-serv-saf-call-pattern)# prefix local 1510

Router(conf-voi-serv-saf-call-pattern)#

Sets the prefix for the dialable local directory number ranging from 0 to 7 digits.

Use the no form of the command to negate the configuration or return it to the default values.

Step 6 

exit

Example:

Router(conf-voi-serv-saf-call-pattern)# exit

Router(conf-voi-serv-saf-call)#

Exits voice service SAF call prefix pattern configuration mode.

Step 7 

timer aar-ageout {mins | none}

Example:

Router(conf-voi-serv-saf-call)# timer aar-ageout 15

Router(conf-voi-serv-saf-call)#

Sets the AAR timer aging period to the number of minutes for the timeout, where mins is the number of minutes in the range of 15 to 4294967295 minutes and none means there is no timeout. (For more information about why you need to set the AAR timer aging period, see "Automatic Alternate Routing" section.

Default: 1440 min (1 day)

Step 8 

exit

Example:

Router(conf-voi-serv-saf-call)# exit

Router(conf-voi-serv-saf)#

Exits voice service SAF call processing configuration mode.

Configuring SAF Plug-in Dial Peers

To configure SAF plug-in dial peers, complete the following steps.

SUMMARY STEPS

1. dial-peer voice tag voip

2. dtmf-relay sip cisco-rtp

dtmf-relay h323 cisco-rtp

3. exit

4. session target saf

5. voice-class saf tag

6. exit

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

dial-peer voice tag voip

Example:

Router(config)# dial-peer voice 333 voip

Router(config-dial-peer)#

Associates the voice class tag under the plug-in dial peer and enters dial peer configuration mode. For example, the following is an explicit SAF Plug-in Dial-Peer configuration:

SAF-Plugin Dial-Peer to query explicit dial pattern 333....

!

dial-peer voice 333 voip

preference 1

destination-pattern 333.... <<< SAF query initiation for explicit site-code - 333

session target saf

Step 2 

dtmf-relay sip cisco-rtp


dtmf-relay h323 cisco-rtp

Example:

Router(config-class)# dtmf-relay sip cisco-rtp dtmt-relay h323 cisco-rtp

Sets the DTMF relay option for either SIP or H.323, or both. Because DTMF relay options are specific to the type of session protocol used, a new voice class for SAF is available for SAF target dial peers to specify the DTMF relay options for SIP and H.323.

Step 3 

exit

Example:

Router(conf-class)# exit

Router(config)#

Exits SAF voice class configuration mode.

Step 4 

session target saf

Example:

Router(config-dial-peer)# session target saf

Router(config-dial-peer)#

Sets the plug-in dial peer target.

Step 5 

voice-class saf tag

Example:

Router(config-dial-peer)# voice-class saf 23

Router(config-dial-peer)#

Sets the SAF voice class tag. The tag used is an integer value in the range of 1 to 10000.

Step 6 

exit

Example:

Router(config-dial-peer) exit

Router(config)#

Exits dial peer configuration mode.

SAF Plug-in Dial Peer Restrictions

If the session target is set to SAF for the dial peer, the following dial peer parameters are not allowed to be configured:

destination-uri

max-conns

session -protocol

session transport

If any of the above parameters are configured before the session target is set to SAF, then these previous listed parameters are reset to their default values and using the show running-config command will not display their configured values.

Command Reference

This section documents only commands that are new or modified for the Voice SAF feature. For Cisco SAF-specific configuration information, see the Cisco IOS Service Advertisement Framework Configuration Guide and the Cisco IOS Service Advertisement Framework Command Reference.

channel

call

debug voice saf all

debug voice saf api

debug voice saf cc

debug voice saf db

debug voice saf error

debug voice saf events

debug voice saf info

debug voice saf inout

debug voice saf xml

description (dn-service)

dial-peer voice

dn-block (dn-service)

dn-service (profile callcontrol)

pattern prefix (call)

pattern (profile dn-block)

prefix (pattern prefix)

profile callcontrol

profile dn-block

profile trunk-route

publish callcontrol (channel)

session protocol h323 (trunk-route)

session protocol sip (trunk-route)

site-code (dn-service)

show voice saf channel detail

show voice saf channel summary

show voice saf client

show voice saf dndb all

show voice saf dndb detail

show voice saf dndb summary

show voice saf trunk-route all

show voice saf trunk-route detail

show voice saf trunk-route summary

show voice saf dial-peer outbound

shutdown (channel)

subscribe callcontrol (channel)

timer aar-ageout (call)

trunk-route (dn-service)

voice dnis-map load

voice saf publish channel

voice service saf

channel

To configure the service advertisement framework channel, use the channel command in voice service SAF configuration mode. After the profiles are configured, define the channels with the SAF Forwarders so that the services can be advertised on the voice SAF network. To remove the channel setting, use the no form of this command.

channel channel_id [vrouter vrouter-name asystem num]

no channel channel_id

Syntax Description

channel_id

Specifies voice SAF channel identifier (channel ID) as an integer value in the range of 1 to 255.

Vrouter

(Optional) Virtual router name.

vrouter-name

Specifies the name of the virtual router using a 32-character string without spaces.

asystem

(Optional) Autonomous System number for the voice SAF service.

num

Defines the Autonomous System number for voice SAF service as an integer value in the range of 1 to 65535.


Command Default

None

Command Modes

Voice Service SAF

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this command to configure the voice SAF service channels. Up to two voice SAF channels can be configured.

Examples

The following example is sample output of the channel command:

router(conf-voi-serv-saf)# channel 25 vrouter test asystem 1
router(conf-voi-serv-saf-chan)#
*Dec 15 17:41:18.127: %UC_SAF-6-VSAF_CHANNEL_REGISTER: Client channel id 25 is P

*Dec 15 17:41:18.127: %UC_SAF-3-COMM_FWDR_REG_ERR: SAF_ERR_BADVROUTERNAME, Bad ]
*Dec 15 17:41:18.127: %UC_SAF-6-VSAF_CHANNEL_REGISTER: Client channel id 25 is N




Related Commands

Command
Description

publish callcontrol (channel)

Publishes a call control profile on the selected voice service SAF channel.

subscribe callcontrol (channel)

Subscribes to all or a selected call control profile.

show voice saf channel detail

Displays detailed information for each channel.

show voice saf channel summary

Displays an information summary for all configured channels.


call

To enter the call processing command mode, use the call command in voice service SAF configuration mode.

call

no call

Syntax Description

This command has no arguments or keywords.

Command Default

None.

Command Modes

Voice Service SAF

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this command to enter the voice service SAF call processing configuration command mode.

Examples

The following example shows entering the call command mode to configure a pattern prefix and timer parameters.

Router# config terminal
Router(config)# voice service saf
Router(conf-voi-serv-saf)# call
Router(conf-voi-serv-saf-call)#?
VSAF call configuration commands:
  exit     Exit the call mode
  no       Negate a command or set its defaults
  pattern  Define a number prefix pattern
  timer    SAF client and call related timers

Related Commands

Command
Description

pattern prefix (call)

Enters the number prefix pattern configuration mode used when processing a call destination number lookup.

timer aar-ageout (call)

Configures the Automatic Alternate Route timer.

prefix (pattern prefix)

Configures the number pattern prefix parameters used when processing a call destination number lookup.


debug voice saf all

To enable all voice service SAF debug functions, use the debug voice saf all command in privileged EXEC mode. To disable debugging output, use the no form of this command.

debug voice saf all

no debug voice saf all

Syntax Description

This command has no arguments or keywords.

Command Default

Debugging for voice Voice SAF all is not enabled.

Command Modes

Privileged EXEC

Command History

Release
Modification

15.0(1)M

This command was introduced.


Examples

The following example shows output for the show voice saf all command.

Router# debug voice saf all
Voice service advertisement framework:
  API functions debugging is on
  Events debugging is on
  Error debugging is on
  Call Control debugging is on
  DN Database debugging is on
  XML doc parsing and generation debugging is on
  SAF publish, subscription, notification handling debugging is on
  Function entry & exit debugging is on

Table 2 describes the significant fields shown in the display.

Table 2 show voice saf all Field Descriptions 

Field
Description

API

Displays the application programming interface (API) debug status of the application functions.

Events

Displays the events debug status.

Call Control

Displays the call control debug status.

DN Database

Displays the DN database debug status.

XML

Displays the XML document parsing and generation debug status.

SAF

Displays the SAF publish, subscription, and notification handling debug status.


Related Commands

Command
Description

debug voice saf api

Enables the voice service SAF application debug function.

debug voice saf cc

Enables the voice service SAF call control debug function.

debug voice saf db

Enables the voice service SAF database debug function.

debug voice saf error

Enables the voice service SAF error debug function.

debug voice saf events

Enables the voice service SAF events debug function.

debug voice saf info

Enables the voice service SAF information debug function.

debug voice saf inout

Enables the voice service SAF function entry and exit debug function

debug voice saf xml 

Enables the voice service SAF XML document parsing and generation debug function.


debug voice saf api

To enable the voice service SAF API debug function, use the debug voice saf api command in privileged EXEC mode. To disable debugging output, use the no form of this command.

debug voice saf api

no debug voice saf api

Syntax Description

This command has no arguments or keywords.

Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

15.0(1)M

This command was introduced.


Examples

The following example displays the sample output for the show voice saf api command.

Router# debug voice saf api
API functions debugging is on

Related Commands

Command
Description

debug voice saf all

Enables all of voice service SAF debug function.

debug voice saf cc

Enables the voice service SAF call control debug function.

debug voice saf db

Enables the voice service SAF database debug function.

debug voice saf error

Enables the voice service SAF error debug function.

debug voice saf events

Enables the voice service SAF events debug function.

debug voice saf info

Enables the voice service SAF information debug function.

debug voice saf inout

Enables the voice service SAF function entry and exit debug function

debug voice saf xml 

Enables the voice service SAF XML document parsing and generation debug function.


debug voice saf cc

To enable the voice service SAF call control debug function, use the debug voice saf cc command in privileged EXEC mode. To disable debugging output, use the no form of this command.

debug voice saf cc

no debug voice saf cc

Syntax Description

This command has no arguments or keywords.

Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

15.0(1)M

This command was introduced.


Examples

The following example shows output for the show voice saf cc command.

Router# debug voice saf cc
Call Control debugging is on

Related Commands

Command
Description

debug voice saf all

Enables all of voice service SAF debug function.

debug voice saf api

Enables the voice service SAF application debug function.

debug voice saf db

Enables the voice service SAF database debug function.

debug voice saf error

Enables the voice service SAF error debug function.

debug voice saf events

Enables the voice service SAF events debug function.

debug voice saf info

Enables the voice service SAF information debug function.

debug voice saf inout

Enables the voice service SAF function entry and exit debug function

debug voice saf xml 

Enables the voice service SAF XML document parsing and generation debug function.


debug voice saf db

To enable the voice service SAF database debug function, use the debug voice saf db command in privileged EXEC mode. To disable debugging output, use the no form of this command.

debug voice saf db

no debug voice saf db

Syntax Description

This command has no arguments or keywords.

Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

15.0(1)M

This command was introduced.


Examples

The following example shows output for the show voice saf db command.

Router# debug voice saf db
DN Database debugging is on

Related Commands

Command
Description

debug voice saf all

Enables all of voice service SAF debug function.

debug voice saf api

Enables the voice service SAF application debug function.

debug voice saf cc

Enables the voice service SAF call control debug function.

debug voice saf error

Enables the voice service SAF error debug function.

debug voice saf events

Enables the voice service SAF events debug function.

debug voice saf info

Enables the voice service SAF information debug function.

debug voice saf inout

Enables the voice service SAF function entry and exit debug function

debug voice saf xml 

Enables the voice service SAF XML document parsing and generation debug function.


debug voice saf error

To enable the voice service SAF-related debug error function, use the debug voice saf error command in privileged EXEC mode. To disable debugging output, use the no form of this command.

debug voice saf error

no debug voice saf error

Syntax Description

This command has no arguments or keywords.

Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

15.0(1)M

This command was introduced.


Examples

The following example shows output for the show voice saf error command.

Router# debug voice saf error
Error debugging is on

Related Commands

Command
Description

debug voice saf all

Enables all of voice service SAF debug function.

debug voice saf api

Enables the voice service SAF application debug function.

debug voice saf cc

Enables the voice service SAF call control debug function.

debug voice saf db

Enables the voice service SAF database debug function.

debug voice saf events

Enables the voice service SAF events debug function.

debug voice saf info

Enables the voice service SAF information debug function.

debug voice saf inout

Enables the voice service SAF function entry and exit debug function

debug voice saf xml 

Enables the voice service SAF XML document parsing and generation debug function.


debug voice saf events

To enable the voice service SAF events debug function, use the debug voice saf events command in privileged EXEC mode. To disable debugging output, use the no form of this command.

debug voice saf events

no debug voice saf events

Syntax Description

This command has no arguments or keywords.

Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

15.0(1)M

This command was introduced.


Examples

The following example shows output for the show voice saf events command.

Router# debug voice saf events
Events debugging is on

Related Commands

Command
Description

debug voice saf all

Enables all of voice service SAF debug function.

debug voice saf api

Enables the voice service SAF application debug function.

debug voice saf cc

Enables the voice service SAF call control debug function.

debug voice saf db

Enables the voice service SAF database debug function.

debug voice saf error

Enables the voice service SAF error debug function.

debug voice saf info

Enables the voice service SAF information debug function.

debug voice saf inout

Enables the voice service SAF function entry and exit debug function

debug voice saf xml 

Enables the voice service SAF XML document parsing and generation debug function.


debug voice saf info

To enable voice service SAF publish, subscription, and notification handling debug functions, use the debug voice saf info command in privileged EXEC mode. To disable debugging output, use the no form of this command.

debug voice saf info

no debug voice saf info

Syntax Description

This command has no arguments or keywords.

Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

12.4(11)T

This command was introduced.


Examples

The following example shows output for the show voice saf info command.
Router# debug voice saf info
SAF publish, subscription, notification handling debugging is on

Related Commands

Command
Description

debug voice saf all

Enables all of voice service SAF debug function.

debug voice saf api

Enables the voice service SAF application debug function.

debug voice saf cc

Enables the voice service SAF call control debug function.

debug voice saf db

Enables the voice service SAF database debug function.

debug voice saf error

Enables the voice service SAF error debug function.

debug voice saf events

Enables the voice service SAF events debug function.

debug voice saf inout

Enables the voice service SAF function entry and exit debug function

debug voice saf xml 

Enables the voice service SAF XML document parsing and generation debug function.


debug voice saf inout

To enable the voice SAF entry and exit debug function, use the debug voice saf inout command in privileged EXEC mode. To disable debugging output, use the no form of this command.

debug voice saf inout

no debug voice saf inout

Syntax Description

This command has no arguments or keywords.

Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

12.4(11)T

This command was introduced.


Examples

The following example shows output for the show voice saf inout command.

Router# debug voice saf inout
Function entry & exit debugging is on

Related Commands

Command
Description

debug voice saf all

Enables all of voice service SAF debug function.

debug voice saf api

Enables the voice service SAF application debug function.

debug voice saf cc

Enables the voice service SAF call control debug function.

debug voice saf db

Enables the voice service SAF database debug function.

debug voice saf error

Enables the voice service SAF error debug function.

debug voice saf events

Enables the voice service SAF events debug function.

debug voice saf info

Enables the voice service SAF information debug function.

debug voice saf xml 

Enables the voice service SAF XML document parsing and generation debug function.


debug voice saf xml

To enable the voice service SAF XML document parsing and generation debug function, use the debug voice saf xml command in privileged EXEC mode. To disable debugging output, use the no form of this command.

debug voice saf xml

no debug voice saf xml

Syntax Description

This command has no arguments or keywords.

Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

12.4(11)T

This command was introduced.


Examples

The following example shows output for the show voice saf xml command.

Router# debug voice saf xml
XML doc parsing and generation debugging is on

Related Commands

Command
Description

debug voice saf all

Enables all of voice service SAF debug function.

debug voice saf api

Enables the voice service SAF application debug function.

debug voice saf cc

Enables the voice service SAF call control debug function.

debug voice saf db

Enables the voice service SAF database debug function.

debug voice saf error

Enables the voice service SAF error debug function.

debug voice saf events

Enables the voice service SAF events debug function.

debug voice saf info

Enables the voice service SAF information debug function.

debug voice saf inout

Enables the voice service SAF function entry and exit debug function


description (dn-service)

To add a hosted DN service description, use the description subcommand in voice service SAF DN service configuration mode. To remove the description, use the no form of this subcommand.

description line

no description

Syntax Description

line

Line that describes the hosted DN service of up to 64 characters.


Command Default

None

Command Modes

Voice Service Voice SAF DN Service

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this subcommand to add a description to the hosted DN service.

Examples

The following example shows how to configure a hosted DN service description.

Router(conf-voi-serv-saf-cc-dn)# description sanjose

Related Commands

Command
Description

profile callcontrol

Defines a call control instance.

dn-service (profile callcontrol)

Enables a hosted DN service.

dn-block (dn-service)

Adds a hosted DN service block profile identifier.

site-code (dn-service)

Adds a hosted DN service block site code prefix.

trunk-route (dn-service)

Adds a hosted DN service trunk route service profile.


dial-peer voice

To add a dial peer voice identifier, use the dial-peer voice command in global configuration mode. To remove the description, use the no form of this subcommand.

dial-peer voice tag

no dial-peer voice

Syntax Description

taf

Dial peer identifier.


Command Default

None

Command Modes

Global configuration

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this command to add the dial peer identifier.

Examples

The following example shows

Related Commands

Command
Description
   
   

dn-block (dn-service)

To add a hosted DN service block profile identifier, use the dn-block subcommand in voice service SAF DN service configuration mode. To remove the DN block identifier, use the no form of this subcommand.

dn-block profile-id

no dn-block profile-id

Syntax Description

profile-id

Profile identifier of the hosted DN in the integer range of 1 to 255.


Command Default

None

Command Modes

Voice Service Voice SAF DN Service

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this subcommand to add a DN block identifier to the hosted DN service.

Examples

The following example shows how to configure a hosted DN service DN block profile identifier.

Router(conf-voi-serv-saf-cc-dn)# dn-block 25

Related Commands

Command
Description

profile callcontrol

Defines a call control instance.

dn-service (profile callcontrol)

Enables a hosted DN service.

description (dn-service)

Adds a hosted DN service description.

site-code (dn-service)

Adds a hosted DN service block site code prefix.

trunk-route (dn-service)

Adds a hosted DN service trunk route service profile.


dn-service (profile callcontrol)

To enable a hosted DN service, use the dn-service command in voice service SAF configuration mode. To remove the command setting, use the no form of this command.

dn-service [name]

no dn-service

Syntax Description

name

(Optional) Defines the name for the hosted DN service.


Command Default

None

Command Modes

Voice Service SAF

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this command to enable DN service.

Examples

The following example shows how to configure DN service.

Router(conf-voi-serv-saf)# profile callcontrol 5

Router(conf-voi-serv-saf-cc)# dn-service test25

Router(conf-voi-serv-saf-cc-dn)

Related Commands

Command
Description

profile callcontrol

Defines a call control instance.

description (dn-service)

Adds a hosted DN service description.

dn-block (dn-service)

Adds a hosted DN service block profile identifier.

site-code (dn-service)

Adds a hosted DN service block site code prefix.

trunk-route (dn-service)

Adds a hosted DN service trunk route service profile.


pattern prefix (call)

To enter the number pattern prefix configuration mode used when processing a call destination number lookup, use the pattern prefix subcommand in voice service SAF call configuration mode.

pattern prefix

no pattern prefix

Syntax Description

This command has no arguments or keywords.

Command Default

None.

Command Modes

Voice Service SAF Call

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this subcommand to set a pattern for the alias numbers.

Examples

The following example shows the pattern command used to configure patterns.

Router# config terminal
Router(config)# voice service saf
Router(conf-voi-serv-saf)# call
Router(conf-voi-serv-saf-call)# pattern
Router(conf-voi-serv-saf-call-pattern)# ?
VSAF call pattern configuration commands:
  exit    Exit the pattern-prefix mode
  no      Negate a command or set its defaults
  prefix  Define prefix digits

Related Commands

Command
Description

call

Enters the call processing command mode.

prefix (pattern prefix)

Configures the number pattern prefix parameters used when processing a call destination number lookup.


pattern (profile dn-block)

To configure a pattern associated with a DN block profile, use the pattern subcommand in voice service SAF DN block configuration mode. To remove this setting, use the no form of this subcommand.

pattern tag type {global | extension} digits

no pattern tag

Syntax Description

tag

Defines the pattern identifier tag; an integer number in the range of 1 to 25.

type

Defines the pattern type.

global

Defines the global E.164 pattern.

extension

Defines the local extension pattern.

digits

A 16-character strong without spaces if extension submode is selected; otherwise, a 31-character string without spaces that complies with specific grammar rules.

Note The ampersand (&) end-rule grammar character is replaced by the percentage (%) character.


Command Default

None

Command Modes

Voice Service Voice SAF DN Block

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this subcommand to configure pattern associated with a DN block. There is no direct mapping for the DN block profile to the Unified Communications SAF XML schema. The DN block is designed for your convenience; a set of patterns with common attributes can be grouped together and configured once. While generating the XML advertisement, the patterns under the different DN blocks are created as children of the DN group element (as mandated by the schema), but it inherits the alias number from the DN block for which it was configured.

Examples

The following example shows how the pattern command is used.

Router(conf-voi-serv-saf-dnblk)# pattern 10 type  global text
Router(conf-voi-serv-saf-dnblk)#

Related Commands

Command
Description

profile dn-block

Configures hosted Directory Number (DN) block profile.


prefix (pattern prefix)

To configure the number pattern prefix parameters used when processing a call destination number lookup, use the prefix subcommand in Call pattern prefix configuration mode.

prefix {alias-dn-steering digits | global digits | local digits}

Syntax Description

alias-dn-steering

Configures the alias DN steering prefix.

global

Configures the prefix for global directory number.

local

Configures a local number prefix.

digits

A dialable prefix containing 1 to 7 numeric digits representing any prefixes a caller must dial before dialing the directory number.

Note You can specify whether the prefixes belong to a global directory number or a local extension. Only one local prefix can be configured.


Command Default

Uses prefixes for all channels.

Command Modes

Call pattern prefix

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this subcommand to set the pattern prefix for the alias numbers.

Examples

The following example shows the pattern prefix command used to configure a global prefix.

Router# config terminal
Router(config)# voice service saf
Router(conf-voi-serv-saf)# call
Router(conf-voi-serv-saf-call)# pattern
Router(conf-voi-serv-saf-call-pattern)# prefix alias-dn-steering 1408

Related Commands

Command
Description

pattern prefix (call)

Enters the number pattern prefix configuration mode used when processing a call destination number lookup.

call

Enters the call processing command mode.


profile callcontrol

To define a call control instance, use the profile callcontrol command in voice service SAF configuration mode. This command describes the DNs hosted by that instance as well as the trunk-route to reach those DNs. To remove the command setting, use the no form of this command.

profile callcontrol service-tag

no profile callcontrol

Syntax Description

service-tag

Specifies the service tag in the range of 1 to 255.


Command Default

None

Command Modes

Voice Service SAF

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this command to define the call control instance. This command describes the DNs hosted by that instance and the trunk route required to reach those DNs. You can configure up to two service profiles. Each call control service profile can specify multiple DN blocks and one associated trunk route.

Examples

The following example defines the call control instance.

Router#config terminal
Router(config)# voice service saf
Router(conf-voi-serv-saf)# profile callcontrol 25
Router(conf-voi-serv-saf-cc)#

Related Commands

Command
Description

dn-service (profile callcontrol)

Enables a hosted DN service.

description (dn-service)

Adds a hosted DN service description.

dn-block (dn-service)

Adds a hosted DN service block profile identifier.

site-code (dn-service)

Adds a hosted DN service block site code prefix.

trunk-route (dn-service)

Adds a hosted DN service trunk route service profile.


profile dn-block

To configure a hosted Directory Number (DN) block profile, use the profile dn-block command in voice service SAF configuration mode. To remove the command setting, use the no form of this command.

profile dn-block tag [alias digits [strip {all | digits num}]]

no profile dn-block

Syntax Description

tag

Specifies the DN block tag in the integer range of 1 to 255.

alias

(Optional) Specifies the alternate number prefix for pattern.

digits

A 16-character string without spaces.

strip

(Optional if alias is configured) The number of leading digits to strip from the set of leading digits of the pattern that can be replaced by the alternate number.

Note If these extension patterns have the same DID block prefix number, then you must configure the strip field to remove the four leading digits from the pattern and replace them with the alternate number prefix.

all

Strip all digits from the extension.

digits

Specifies the number of digits to strip.

num

Integer number of digits to strip in the range of 0 to 16.


Command Default

strip: 0

Command Modes

Voice Service SAF

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

There is no direct mapping for the DN block profile to the Unified Communications Manager SAF XML schema. The DN block can be configured with common attributes and grouped together. While generating the XML advertisement, the patterns under the different DN blocks are configured as children of the DN group element. It inherits the alias number from the DN block that was configured under DN group element.

Each DN block, in turn, holds multiple patterns and also defines the means to configure automatic alternate routing by specifying the alias number that applies to all the patterns specified in that block. Up to five DN block profiles can be configured. Each DN block can configure up to 25 patterns. A pattern can define two kinds of numbers: global numbers which are valid E.164 numbers and local numbers that are applicable for given site code.


Note Alias numbers are applicable only for local extensions and do not apply to global patterns. A maximum of 16 digits can be specified for the alias number and extension pattern.


Examples

The following example shows how the profile dn-block command is used.

Router#config terminal
Router(config)# voice service saf
Router(conf-voi-serv-saf)# profile dn-block 2 alias 14085278 strip digits 4
Router(conf-voi-serv-saf-dnblk)

Related Commands

Command
Description

pattern (profile dn-block)

Configures a pattern associated with a DN block profile.


profile trunk-route

To define the IP signaling interface that can be used to reach a service, use the profile trunk-route command in voice service SAF configuration mode. To remove the command setting, use the no form of this command.

profile trunk-route trunk-route_id

no profile trunk-route trunk-route_id

Syntax Description

trunk-route_id

Specifies the profile identifier integer in the range of 1 to 255.


Command Default

None

Command Modes

Voice Service SAF

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this command to define the IP signaling interface to reach a service. In voice service SAF trunk route configuration submode, this command defines the parameters such as the signaling protocol (SIP or H.323), IP interface, transport protocol, port number, and security SIP security. Only the signaling and interface options are the mandatory parameters; the remaining parameters assume their default values.

Examples

The following example shows how to configure profile trunk route.

Router#config terminal
Router(config)# voice service saf
Router(conf-voi-serv-saf)# profile trunk-route 15
Router(conf-voi-serv-saf-rte)#

Related Commands

Command
Description

session protocol h323 (trunk-route)

Configures a session protocol H.323 interface.

session protocol sip (trunk-route)

Configures a session protocol SIP interface


publish callcontrol (channel)

To publish a call control profile on the selected voice service SAF channel, use the publish callcontrol subcommand in voice service SAF channel configuration mode. To remove this setting, use the no form of this subcommand.

publish callcontrol tag

no publish callcontrol

Syntax Description

tag

Specifies the call control tag identifier in the range of 1 to 255 for the service to advertise.


Command Default

None

Command Modes

Voice Service SAF Channel

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this subcommand to publish a defined call control profile on a particular voice service SAF channel. You can be publish two services on a voice service SAF channel.

Examples

The following example shows the configuration of the publish call control subcommand used to configure tag 2. (Note that in this example tag identifier 2 has not yet been configured and results in an error message.)

Router(conf-voi-serv-saf-chan)# publish callcontrol 2
Invalid: CallControl service profile tag 2 does not exist

Related Commands

Command
Description

channel

Configures the service advertisement framework channel.

subscribe callcontrol (channel)

Subscribes callcontrol to a given subservice.


session protocol h323 (trunk-route)

To configure a session protocol H.323 interface, use the session protocol h323 subcommand in the voice service SAF trunk route configuration mode. To remove this setting, use the no form of this subcommand.

session protocol h323 interface interface transport {tcp | udp} [port num]

no session protocol h323 interface interface

Syntax Description

interface

IP interface name (for example, FastEthernet0/0) to be used.

transport

Specifies the transport protocol.

tcp

Transmission Control Protocol (TCP) transport protocol.

udp

User Datagram Protocol (UDP) transport protocol.

port

Specifies port number to be used.

num

Port number integer in the range of 1 to 49151.


Command Default

H.323 TCP or UDP port: 1720

Command Modes

Voice Service SAF Trunk Route

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this subcommand to configure the session protocol H.323 interface after a trunk route has been configured.

Examples

The following example shows the configuration of a H.323 session over the Fast Ethernet interface using the UDP transport protocol on port 1720:

Router(conf-voi-serv-saf)# profile trunk-route 1
Router(conf-voi-serv-saf-rte)# session protocol h323 int FastEthernet0/0 transport udp 
port 1720


Related Commands

Command
Description

profile trunk-route

Defines the IP signaling interface that can be used to reach a service.

session protocol sip (trunk-route)

Configures the session protocol sip interface trunk route.


session protocol sip (trunk-route)

To configure a session protocol SIP interface, use the session protocol sip subcommand in the voice service SAF trunk route configuration mode. To remove this setting, use the no form of this subcommand.

session protocol sip interface interface transport {tcp | udp | tls-tcp} [port num]

no session protocol sip interface interface

Syntax Description

interface

IP interface name (for example, FastEthernet0/0) to be used.

transport

Specifies the transport protocol.

tcp

Transmission Control Protocol (TCP) transport protocol.

udp

User Datagram Protocol (UDP) transport protocol.

tls-tcp

Transport Layer Security (TLS) over TCP transport protocol.

Note Only available if under SIP configuration and the router image is a Crypto image.

port

Specifies port number to be used.

num

Port number integer in the range of 1 to 49151.


Command Default

SIP TCP or UDP port: 5060; SIP TLS-TCP transport: 5061

Command Modes

Voice Service SAF Trunk Route

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this subcommand to configure the session protocol SIP interface after a trunk route has been configured.

Examples

The following example shows the configuration of a SIP session over the Fast Ethernet interface using the TCP transport protocol on port 5060:

Router(conf-voi-serv-saf)# profile trunk-route 1
Router(conf-voi-serv-saf-rte)# session protocol sip int FastEthernet0/0 transport tcp port 
5060




Related Commands

Command
Description

profile trunk-route

Defines the IP signaling interface that can be used to reach a service.

session protocol h323 (trunk-route)

Configures the session protocol h323 interface trunk route.


site-code (dn-service)

To add a hosted DN service block site code prefix, use the site-code subcommand in voice service SAF DN service configuration mode. To remove the site code prefix, use the no form of this subcommand.

site-code digits extension-length num

no site-code

Syntax Description

digits

Site code digits using a string of digits without spaces.

extension-length

Sets the site code extension length.

num

Number of digits in the extension.


Command Default

None

Command Modes

Voice Service Voice SAF DN Service

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this subcommand to add a site code prefix to the hosted DN service.

Examples

The following example shows how to configure a hosted DN service site code prefix.

Router(conf-voi-serv-saf-cc-dn)# site-code 4

Related Commands

Command
Description

profile callcontrol

Defines a call control instance.

dn-service (profile callcontrol)

Enables a hosted DN service.

description (dn-service)

Adds a hosted DN service description.

dn-block (dn-service)

Adds a hosted DN service block profile identifier.

trunk-route (dn-service)

Adds a hosted DN service trunk route service profile.


show voice saf channel detail

To display detailed information for each channel, use the show voice saf channel detail command in privileged EXEC mode.

show voice saf channel channel-id detail

Syntax Description

channel-id

Specifies the voice service SAF channel identifier as an integer in the range of 1 to 255.


Command Default

None

Command Modes

Privileged Exec

Command History

Release
Modification

15.0(1) M

This command was introduced.


Examples

The following example displays the sample output of the show voice saf channel detail command for channel 2.

Router#show voice saf channel 2 detail
Channel ID   : 2  
AS           : 4454 
Vrouter Name : test40
Admin State  : UP
Oper State   : DOWN        
Reason       : Bad Vrouter Name

Table 3 describes the significant fields shown in the display output.

Table 3 show voice saf channel detail Field Descriptions 

Field
Description

Channel ID

Displays the identifier for the particular channel.

AS

Displays the autonomous system number to which this channel belongs.

Vrouter Name

Displays the virtual router name.

Admin State

Displays the administrative state of the particular channel as either up or down.

Oper State

Displays the operational state of the particular channel as either up or down.

Reason

Reason the operational state is down.


Related Commands

Command
Description

channel

Configures the service advertisement framework channel.

show voice saf channel summary

Displays the voice Voice SAF channel summary details.

show voice saf dndb all

Displays the Voice SAF DN database details.


show voice saf channel summary

To display an information summary for all configured channels, use the show voice saf channel summary command in privileged EXEC mode.

show voice saf channel summary

Syntax Description

This command has no arguments or keywords.

Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

15.0(1)M

This command was introduced.


Examples

The following example displays the sample output for the show voice saf channel summary command.

Router# show voice  saf channel summary
Channel Admin   Oper    AS    Publi- Subscr-
ID      State   State         shed   ibed   
============================================
1       UP      UP      4453  YES    YES   
2       UP      DOWN    4454  NO     NO 

Table 4 describes the significant fields shown in the display output.

Table 4 show voice saf channel summary Field Descriptions 

Field
Description

Channel ID

Displays the identifier for the particular channel.

Admin State

Displays the administrative state of the particular channel as either up or down.

Oper State

Displays the operational state of the particular channel as either up or down.

AS

Displays the autonomous system number.

Published

Displays status of SAF publication as either Yes or No.

Subscribed

Displays status of SAF subscriptions as either Yes or No.


Related Commands

Command
Description

show voice saf channel detail

Displays the voice Voice SAF channel details.

show voice saf dndb all

Displays the Voice SAF DN database details.


show voice saf client

To display the voice SAF client information and statistics, including accumulated channel registration statistics for all channels, use the show voice saf client command in Privileged EXEC mode. This command also displays service publication, withdrawal, and subscription statistics accumulated for all services on all channels.

show voice saf client

Syntax Description

This command has no arguments or keywords.

Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

15.0(1) M

This command was introduced.


Examples

The following example displays the sample output of the show voice saf client command.

Router# show voice saf client
Voice SAF Client Information     
========================================
Client Name       - VOICE_SAF
PID               - 280  

     CHANNEL REGISTRATION STATISTICS 
----------------------------------------
Success          = 1          
Errors           = 2          
Unregistrations  = 1         
Types of errors: 
AS not found     = 0          
Bad Vrouter Name = 2         
Internal Errs    = 0          
Forwarder Errs   = 0          

     PUBLICATION STATISTICS 
-----------------------------------------
Success     = 1         
Errors      = 0         
Withdrawals = 0         

Table 5 describes the significant fields shown in the display output.

Table 5 show voice saf client Field Descriptions 

Field
Description

Voice SAF Client Information

Client Name

Displays identifying name for the particular client.

PID

Displays client identifier.

Channel Registration Statistics

Success

Displays number of channel registrations that were successful.

Errors

Displays number of channel registrations that resulted in errors.

Unregistrations

Displays number of registrations that were removed.

Types of Errors

AS not found

Displays the number of autonomous systems that were configured by not found.

Bad Vrouter Name

Displays number of Unrecognized virtual router name errors.

Internal errors

Displays number of internal errors detected.

Forwarder errors

Displays total number of forwarder errors detected.

Publication Statistics

Success

Displays number of successful SAF publications.

Errors

Displays number of publication errors.

Withdrawals

Displays number of SAF publication withdrawals.


Related Commands

Command
Description

show voice saf channel summary

Displays the voice Voice SAF channel summary details.

show voice saf dndb all

Displays the Voice SAF DN database details.


show voice saf dndb all

To display the output for all the populated pattern listings of SAF DN pattern databases, use the show voice saf dndb all command in privileged EXEC mode. It gives information about all the patterns learned from other service instances.

show voice saf dndb all

Syntax Description

This command has no arguments or keywords

Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

15.0(1)M

This command was introduced.


Examples

The following example displays the sample output for the show voice saf dndb all command.

Router# show voice saf dnDb all
Total no. of patterns in db/max allowed            : 1/6000
Patterns classified under dialplans (private/global) : 0/1
Informational/Error stats -
  Patterns w/ invalid expr detected while add    : 0
  Patterns duplicated under the same instance    : 0
  Patterns rejected overall due to max capacity  : 0
  Attempts to delete a pattern which is invalid  : 0

Last successful DB update @  2009:12:14 15:42:45:967

   ******** Private Dialplan Partition ********

 - none -


   ******** Global (E164) Dialplan Partition ********

Pattern - +1408XXXXXXX
  Trunk-Route(s) ID               : 2 3 

Related Commands

Command
Description

show voice saf dndb detail

Displays populated pattern details output for SAF DN pattern databases.

show voice saf dndb summary

Displays the output for an overall summary of the populated pattern listings of SAF DN pattern databases.


show voice saf dndb detail

To display populated pattern details output for SAF DN pattern databases, use the show voice saf dndb detail command in privileged EXEC mode.

show voice saf dndb detail pattern

Syntax Description

pattern

Specifies the populated pattern details of the voice service SAF DN database.


Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

15.0(1)M

This command was introduced.


Related Commands

Command
Description

show voice saf dndb all

Displays the output for all the populated pattern listings of SAF DN pattern databases.

show voice saf dndb summary

Displays the output for an overall summary of the populated pattern listings of SAF DN pattern databases.


show voice saf dndb summary

To display the output for an overal summary of the populated pattern listings of SAF DN pattern databases, use the show voice saf dndb summary command in privileged EXEC mode.

show voice saf dndb summary

Syntax Description

This command has no arguments or keywords

Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

15.0(1)M

This command was introduced.


Examples

The following example displays the sample output for the show voice saf dndb all command.

Router#show voice saf dndb summary 
Total no. of patterns in db/max allowed            : 1/6000
Patterns classified under dialplans (private/global) : 0/1
Informational/Error stats -
  Patterns w/ invalid expr detected while add    : 0
  Patterns duplicated under the same instance    : 0
  Patterns rejected overall due to max capacity  : 0
  Attempts to delete a pattern which is invalid  : 0

Last successful DB update @  2009:12:14 15:42:45:967

Related Commands

Command
Description

show voice saf dndb all

Displays the output for all the populated pattern listings of SAF DN pattern databases.

show voice saf dndb detail

Displays populated pattern details output for SAF DN pattern databases.


show voice saf trunk-route all

To display all the trunk routes configured in the table, use the show voice saf trunk-route all command in privileged EXEC mode.

show voice saf trunk-route all

Syntax Description

This command has no arguments or keywords

Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

15.0(1)M

This command was introduced.


Examples

The following example displays the sample output for the show voice saf trunk-route all command.

Router# show voice saf trunk-route all 
 Total no of trunk routes in db/max allowed : 2/2047

 Trunk routes rejected due to max capacity  : 0

 Last successful DB update @  2009:12:14 15:42:45:967

----------------------------------------------------------------------------
       Session Target         Session    Session     Trunk-Rte  Touch-Index 
                              Protocol   Transport   ID                     
----------------------------------------------------------------------------
 ipv4:1.5.16.2       :5060    SIP        TCP         2          0         
 ipv4:1.5.16.2       :1720    H323       TCP         3          0 

Related Commands

Command
Description

show voice saf trunk-route detail

Displays detailed information regarding the specified trunk-route ID.

show voice saf trunk-route summary

Displays a summary of information for the SAF trunk route table.


show voice saf trunk-route detail

To display detailed information regarding the specified trunk-route ID, use the show voice saf trunk-route detail command in privileged EXEC mode.

show voice saf trunk-route detail trunk-route_id

Syntax Description

trunk-route-id

Specifies the voice service SAF trunk route identifier as an integer in the range of 1 to 255.


Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

15.0(1)M

This command was introduced.


Examples

The following example displays the sample output for the show voice saf trunk-route detail 2 command.

Router# show voice saf trunk-route detail 2

       Trunk-route 2 Details 
==========================================
Session Target- ipv4:1.5.16.2       :5060 
Session Protocol- SIP    Session Transport- TCP     
Instance ID- 83018504.0.0.65792
Route Header- not available
Touch Index- 0

Related Commands

Command
Description

show voice saf trunk-route all

Displays all the trunk routes configured in the table.

show voice saf trunk-route summary

Displays a summary of information for the SAF trunk route table.


show voice saf trunk-route summary

To display a summary of information for the SAF trunk route table, use the show voice saf trunk-route summary command in privileged EXEC mode.

show voice saf trunk-route summary

Syntax Description

This command has no arguments or keywords

Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

15.0(1)M

This command was introduced.


Examples

The following example displays the sample output for the show voice saf trunk-route summary command.

Router# show voice saf trunk-route summary 
 Total no of trunk routes in db/max allowed : 2/2047

 Trunk routes rejected due to max capacity  : 0

 Last successful DB update @  2009:12:14 15:42:45:967

Related Commands

Command
Description

show voice saf trunk-route all

Displays all the trunk routes configured in the table.

show voice saf trunk-route detail

Displays detailed information regarding the specified trunk-route ID.


show voice saf dial-peer outbound

To display detailed information for the particular voice service SAF-generated outbound dial peer, use the show voice saf dial-peer outbound command in privileged EXEC mode.

show voice saf dial-peer outbound tag

Syntax Description

tag

Specifies the voice service SAF dial peer tag in the range of 1073743873 to 1077936127.


Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

15.0(1)M

This command was introduced.


Examples

The following example displays the sample output for the show voice saf dial-peer outbound command for dial peer 1073743880.

Router# show voice saf dial-peer outbound 1073743873
SAF_dialpeer=TRUE
Trunk Route ID=1
Plug-In Dial-peer tag=1

Table 6 describes the significant fields shown in the display.

Table 6 show voice saf dial-peer outbound Field Descriptions 

Field
Description

SAF_dialpeer=TRUE

Displays the true of false if the tag points to an SAF-generated dial peer.

Trunk Route ID-1

Displays the trunk route used for this dial peer.

Plug-In Dial-peer tag=1

Displays the tag of the SAF-Plug-in dial peer.


Related Commands

Command
Description

show voice saf channel detail

Displays the voice Voice SAF channel details.

show voice saf channel summary

Displays the voice Voice SAF channel summary details.


shutdown (channel)

To change the administrative status to down for the specified voice service SAF channel, use the shutdown subcommand in voice service SAF channel configuration mode. To change the administrative status to up, use the no form of this subcommand.

shutdown

no shutdown

Syntax Description

This command has no arguments or keywords.

Command Default

None

Command Modes

Voice Service SAF Channel

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this subcommand to bring the voice service SAF channel status to down.

Examples

The following example shows the configuration of the shutdown subcommand:

Router(conf-voi-serv-saf-chan)# shutdown

Related Commands

Command
Description

channel

Configures the service advertisement framework channel.

publish callcontrol (channel)

Publishes a call control profile on the selected voice service SAF channel.

subscribe callcontrol (channel)

Subscribes to all or a selected call control profile.


subscribe callcontrol (channel)

To subscribe to all or a selected call control profile, use the subscribe callcontrol subommand in voice service SAF channel configuration mode. Specifying the client instance identifier enables listening to advertisements from only that particular client. To remove this setting, use the no form of this subcommand.

subscribe callcontrol {all | instance num}

no subscribe callcontrol

Syntax Description

all

Subscribes to every advertisement of the call control subservice identifier.

instance

Specifies the instance identifier

num

Subscribes to an unique advertisement of the subservice identifier defined by a sequence of digits.

Note The period (,) is acceptable as a sequence number delimiter.


Command Default

None

Command Modes

Voice Service SAF Channel

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this subcommand to subscribe to all or a given call control subservice. You can be subscribed to two services on one channel.

Examples

The following example shows how to configure subscribe call control.

Router# config terminal
Router(config)# voice service saf
Router(conf-voi-serv-saf)# channel 25 vrouter test asystem 1
Router(conf-voi-serv-saf-chan)# subscribe callcontrol all

Related Commands

Command
Description

channel

Configures the service advertisement framework channel.

publish callcontrol (channel)

Publishes the defined call control profile on a particular Voice SAF channel.


timer aar-ageout (call)

To configure the Automatic Alternate Route timer for age out or no timeout, use the timer aar-ageout command in Call configuration mode. To remove the command setting or set the default timeout, use the no form of this command.

timer aar-ageout {mins | none}

no timer

Syntax Description

mins

Sets the number of minutes to age out the timer. The range is 15 to 4294967295 minutes. Default is 1140 minutes (one day).

none

No timeout.


Command Default

The AAR timer default is 1140 minutes.

Command Modes

Call

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

The timer algorithm uses one timer for each subscription to track and clear all notified instance entries on their service withdrawal. The timer triggers the instance sweep at an interval of 5 minutes. It is expected that the timeout value be more than 5 minutes.

Examples

The following example shows how the timer aar-ageout command is used.

Router# config terminal
Router(config)# voice service saf
Router(conf-voi-serv-saf)# call
Router(conf-voi-serv-saf-call)# timer aar-ageout 100
Router(conf-voi-serv-saf-call)#

Related Commands

Command
Description

call

Enters the call processing command mode.


trunk-route (dn-service)

To add a hosted DN service trunk route service profile, use the trunk-route subcommand in voice service SAF DN service configuration mode. To remove the trunk route service identifier, use the no form of this subcommand.

trunk-route profile-id

no trunk-route profile-id

Syntax Description

profile-id

Configures a trunk route profile identifier in the integer range of 1 to 255.


Command Default

None

Command Modes

Voice Service Voice SAF DN service

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this subcommand to add a trunk route profile to the hosted DN service.

Examples

The following example shows how to configure a hosted DN service trunk route profile.

Router(conf-voi-serv-saf-cc-dn)# trunk-route 25

Related Commands

Command
Description

profile callcontrol

Defines a call control instance.

dn-service (profile callcontrol)

Enables a hosted DN service.

description (dn-service)

Adds a hosted DN service description.

dn-block (dn-service)

Adds a hosted DN service block profile identifier.

site-code (dn-service)

Adds a hosted DN service block site code prefix.


voice dnis-map load

To load a Dialed Number Identification Service (DNIS) Map, use the voice dnis-map load command in the privileged EXEC mode.

voice dnis-map load name

Syntax Description

name

Name of the DNIS Map to load.


Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this command to load a DNIS Map. The AAA DNIS Map for Authorization feature allows you to select authentication, authorization, and accounting (AAA) server groups—to which authorization requests will be sent—using Dialed Number Identification Service (DNIS). That is, you assign a DNIS number to a particular AAA server group so that the server group can process authorization requests for users dialing into the network using the assigned DNIS number.

Examples

The following example shows how the voice dnis-map command is used.

Router# voice dnis-map load map 7777 

Related Commands

Command
Description

voice saf publish channel

Generates an updated advertisement.


voice saf publish channel

To generate an updated advertisement, use the voice saf publish channel command in Privileged EXEC mode. To remove the command setting, use the no form of this command.

voice saf publish channel channel_id callcontrol service-tag

no voice saf publish channel

Syntax Description

channel_id

Specify voice Voice SAF channel ID.

callcontrol

Voice Voice SAF publish channel ID callcontrol command.

service-tag

Specify Tag ID, in the range 1 to 255, for the service.


Command Default

None

Command Modes

Privileged EXEC

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this command to generate an updated advertisement.

Examples

The following example shows how the voice saf publish channel command is used.

Router# voice saf publish channel 2 callcontrol 5
Invalid: Channel 2 does not exist

Related Commands

Command
Description

voice dnis-map load

Loads a Dialed Number Identification Service (DNIS) Map.


voice service saf

To initialize the voice Service Advertisement Framework (SAF), and configure call, service channel, and profiles, use the voice service saf command in global configuration mode. To remove the command settings, use the no form of this command.

voice service saf {call | channel channel_id [vrouter name asystem num] | profile {callcontrol | dn-block | trunk-route}

no voice service saf

Syntax Description

call

Sets the call processing command mode.

channel

Defines the SAF channel voice Unified Communications application.

channel_id

Sets the voice SAF channel ID as an integer in the range of 1 to 255.

vrouter

(Optional) Specifies the EIGRP virtual instance name for voice SAF.

name

Sets the EIGRP Virtual-Instance name for voice SAF.

asystem

(Optional) Specifies the Autonomous System number for voice SAF.

num

Sets the Autonomous System number for voice SAF.

profile

Sets the profile configuration commands.

callcontro

Call Control service configuration commands.

dn-block

DN Block configuration commands.

trunk-route

Trunk route configuration commands.


Command Default

None

Command Modes

Global Configuration

Command History

Release
Modification

15.0(1)M

This command was introduced.


Usage Guidelines

Use this command to configure the main root mode under which the Voice SAF profiles.

Examples

The following example shows how to configure voice service Voice SAF.

Router# config terminal
Router(config)# voice service saf

Router(conf-voi-serv-saf)# channel 2 vrouter test40 asystem 4454

magellan(conf-voi-serv-saf-chan)#

*Dec 15 21:22:58.174: %UC_SAF-6-VSAF_CHANNEL_REGISTER: Client channel id 2 is oP


*Dec 15 21:22:58.174: %UC_SAF-3-COMM_FWDR_REG_ERR: SAF_ERR_BADVROUTERNAME, Bad ]

*Dec 15 21:22:58.174: %UC_SAF-6-VSAF_CHANNEL_REGISTER: Client channel id 2 is oN

Related Commands

Command
Description

channel

Configures the service advertisement framework channel.

profile callcontrol

Defines a profile call control service instance.

profile dn-block

Configures a hosted Directory Number (DN) block profile.

profile trunk-route

Defines the IP signaling interface that can be used to reach a service.


Glossary

VRF—VPN Routing and Forwarding

AAR—Automatic Alternate Routing

AS—Autonomous System Number

Cisco Unified CM— Cisco Unified Communications Manager

Cisco Unified CME—Call Unified Communications Manager Express

DN—Directory Number

DN-block—Command-line interface abstraction to group together multiple patterns that share the same alternate number.

DN-group—Represents a group of endpoints with local or global numbers.

DN-pattern—name of element in hosted DN service. It is of type DN-group in the UC Voice SAF XML schema.

Dynamic Voice SAF dial peer—automatically generated incoming voip dial peer on the publisher side to remove the advertised site-code from the called-number.

EDDRI—Event Dispatcher and Data Repository Interface

EIGRP—Enhanced Interior Gateway Routing Protocol

Pattern—Expression identifying a set of numbers

Plug-in dial peer—Static dial peer that needs to be created on the subscriber side with parameter: session target saf to invoke Voice SAF dn database query

SAF—Service Advertisement Framework

SPI—Service Provider Interface

TD —Time Division Multiplexing

TLS—Transport Layer Security

UC—Unified Communications


Note See Internetworking Terms and Acronyms for terms not included in this glossary.


Additional References

The following sections provide references related to the Cisco Service Advertisement Framework feature.

Standards

Standard
Title

H.323 Annex E

Multiplexed call signaling over UDP (within H.323v4 and later).


MIBs

MIB
MIBs Link

No new or modified MIBs are supported, and support for existing MIBs has not been modified.

To locate and download MIBs for selected platforms, Cisco IOS releases, and feature sets, use Cisco MIB Locator found at the following URL:

http://www.cisco.com/go/mibs


RFCs

RFC
Title

No new or modified RFCs are supported, and support for existing RFCs has not been modified.


Technical Assistance

Description
Link

The Cisco Support website provides extensive online resources, including documentation and tools for troubleshooting and resolving technical issues with Cisco products and technologies.

To receive security and technical information about your products, you can subscribe to various services, such as the Product Alert Tool (accessed from Field Notices), the Cisco Technical Services Newsletter, and Really Simple Syndication (RSS) Feeds.

Access to most tools on the Cisco Support website requires a Cisco.com user ID and password.

http://www.cisco.com/techsupport