Вы находитесь на странице: 1из 23

Best Current Practice

Local Route Tables (LRTs)

Revision History
Version

Author(s)

Description of Changes

Date

520-0050-00

James Tessier

Initial Release

4/4/2011

Copyright 2011 Acme Packet, Inc. All Rights Reserved.

Status of this memo


Acme Packet Best Current Practices are working documents of the Professional Services department of
Acme Packet, Inc. Note that other groups may also distribute working documents as Best Current
Practices.
Best Current Practices are working documents valid until explicitly obsoleted, and may be updated,
replaced or obsoleted by other documents at any time. It is recommended to use Best Current Practices
as reference material as well as to cite them in other works in progress.

Abstract
The use of the RFC 2119 keywords is an attempt to assign the correct requirement levels ("MUST",
"SHOULD", "MAY", etc.).
This document defines a series of configuration recommendations to be used when deploying a Net-Net
Security Director (SD) high availability (HA) pair using local route tables (LRTs). When at conflict with
Customer requirements or desires, the Customers preference SHOULD take precedence.

Applicability
This document is applicable to NN3000 and NN4000 (S-C6.2.0 & above) series Session Directors.

Best Current Practice

Local Route Tables (LRTs)

April 2011

Table of Contents
Table of Contents ......................................................................................................................... 2
1.0 Introduction ............................................................................................................................. 3
2.0 Intended Audience ................................................................................................................ 3
3.0 Background ............................................................................................................................ 4
3.1 LRT How To ....................................................................................................................... 4
Preparation ........................................................................................................................................... 4
Procedure .............................................................................................................................................. 4
Updating tables ..................................................................................................................................... 5
Verification ............................................................................................................................................ 5
About the next parameter .................................................................................................................... 5
Using regular expressions with LRTs ..................................................................................................... 6
Using Route Manager Central ............................................................................................................... 6

4.0 Design Goals .......................................................................................................................... 8


4.1 LRT Architecture ................................................................................................................ 8
4.2 LRT Load Times ................................................................................................................ 9
4.3 LRT Memory Usage ........................................................................................................ 10
4.4 Optimizing Regular Expressions ................................................................................... 10
5.0 Notes on the Reference Configurations ........................................................................... 10
6.0 Normative References ........................................................................................................ 11
7.0 Authors Address ................................................................................................................. 11
8.0 Disclaimer ............................................................................................................................. 11
9.0 Full Copyright Statement .................................................................................................... 11
Appendix A: Session Director Partial Reference Configuration.......................................... 13
Appendix B: Session Router Partial Reference Configuration............................................ 18
Appendix C: Local Route Table Example .............................................................................. 23

520-0050-00

Acme Packet Proprietary & Confidential

Page 2

Best Current Practice

Local Route Tables (LRTs)

April 2011

1.0 Introduction
Local route tables (LRTs) give the Net-Net C-series models the ability to locally determine next hops and
map E.164 to SIP URIs. This ability provides extensive scalability and flexibility for routing. Similar to the
ENUM model, the feature allows the SBC to perform a local route table lookup using the telephone
number (TN) of the SIP Request-URI. The local route table XML file defines the matching number and
the resulting regular expression replacement valueas ENUM NAPTR entries would. The Net-Net SBC
uses the resulting regular expression to replace the Request-URI, and it uses the session-group,
hostname or IP address portion to determine the next hop. If either the hostname or IP address matches
a configured session agent or session-group, the request is sent to that session agent/group. Otherwise
it sends the request directly to the hostname or IP address returned.
The Net-Net C-series can also perform a local route table lookup based on a key field, which is useful for
lookups based on routing number (RN) or carrier identification code (CIC). For more information on using
this feature, see the Routing-based RN and CIC section of the ACLI Configuration Guide [3].
Usage of local route tables has certain benefits, but not without design limitations. This document
describes these limitations and provides guidance towards reliability of service and performance
optimizations.
This document highlights LRTs and features available in S-C(x)6.2.0 version of Net-Net OS-C. Please be
aware that there are notable differences in handling LRTs before and after S-C6.2.0 M6. Future
enhancements are planned for LRT features, but they are not covered in this document.

2.0 Intended Audience


This document is intended for use by Acme Packet Systems Engineers, third party Systems Integrators,
and end users of the Net-Net series of products. It assumes that the reader is familiar with basic
operations of the Acme Packet ACLI, and it is STRONGLY RECOMMENDED that the reader has
attended the following training courses (or can satisfactorily demonstrate equivalent experience):

EDU-CAB-C-CLI: Net-Net 4000/3000 Configuration Basics

It also presumes that the reader is familiar with standard configuration models and archetypes (e.g., those
listed in the Normative References section of this document).

520-0050-00

Acme Packet Proprietary & Confidential

Page 3

Best Current Practice

Local Route Tables (LRTs)

April 2011

3.0 Background
Local route tables can be used to significantly reduce complexity of configurations requiring large
numbers of routes. Instead of a local-policy configuration object per route, the routes can be defined in
one or more xml files, uploaded to the SBC and referenced through a single local-routing-config object.

3.1 LRT How To


Preparation
1. Start with an XML file in plain text and the following format:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<localRoutes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<route>
<user type="E164">10000</user>
<next type="regex">!(^.*$)!sip:\1@nexthop.com!</next>
</route>
</localRoutes>

Procedure
1. Change the highlighted 10000 to the telephone number or prefix needed for a given
lookup.
2. Change the highlighted !(^.*$)!sip:\1@nexthop.com! to the corresponding next-hop.
3. Reuse the route block for each subsequent local route.
4. Gzip the file (standard package for Linux / download from www.gzip.org for Windows):
a. [root@acmese5 ~]# gzip TenK.xml
b. The new file will be: TenK.xml.gz
5. FTP the .gz file in binary mode to /code/lrt on each SD in an HA pair.
a. If the lrt directory does not exist, it must be created. Create it with mkdir lrt.
b. If this is an HA configuration, it must be uploaded to both systems.
6. Configure a local-routing-config element on the SD with the file-name TenK.xml.gz.
7. Configure a local-policy element on the SD with next-hop lrt:<name of local-routingconfig>.
8. If multiple length prefixes are needed:
a. Configure additional local route tables using the same xml.gz file with different
names and prefix-lengths.
b. Configure additional local-policy-attributes for each table.

520-0050-00

Acme Packet Proprietary & Confidential

Page 4

Best Current Practice

Local Route Tables (LRTs)

April 2011

c. These policy attributes can be weighted to search longer prefixes first. In this
case, use the sip-config option serial-forking=yes to stop searching on a hit.

Updating tables
1. Edit, gzip and upload the new table to /code/lrt on each member of the HA pair.
2. Run notify lrtd refresh <lrt-name> on each member of the HA pair.
a. For example:
Active:
CSE-4250-5# notify lrtd refresh TenK
Refreshing routes from local-route file TenK

Refreshed LRTD routes

CSE-4250-5#

Standby:
CSE-4250-6# notify lrtd refresh TenK
Refreshing routes from local-route file TenK

Refreshed LRTD routes

CSE-4250-6#

Verification
1. From the ACLI, use show lrt route-entry <local-routing-config name> <E.164 number>

For example: show lrt route-entry TenK 10000

2. Verify the Answer is as expected.

For example: UserName <10000>


User Type= E164
NextHop= !(^.*$)!sip:\1@nexthop.com
NextHop Type= regexp

About the next parameter


1. To match an LRT query and route to a next-hop, the next type should be regex. To
match an LRT query and return a 604 Does Not Exist Anywhere response, use the next
type void.

520-0050-00

Acme Packet Proprietary & Confidential

Page 5

Best Current Practice

Local Route Tables (LRTs)

April 2011

2. For type regex, the format is !<regular expression>!<string>!. This will match the regular
expression on the original phone number and rewrite on the <string>. RFC 2915 - The
Naming Authority Pointer (NAPTR) DNS Resource Record [1] describes this format.
3. In the regular expression, ^ matches the beginning, . matches any character, .*
matches any number of any characters, $ matches the end and () will group the query
into \n.
4. For example: !(^.*$)!sip:\1@nexthop.com!.
a. (^.*$) is the regular expression.
b. sip:\1@nexthop.com is the replacement string.
c. A lookup on a number such as 17815551212 would match the entire string from
beginning to end and store it into the \1 variable. Thus the replacement request
URI would be sip:17815551212@nexthop.com.
5. The next-hop parameter can also match on session-agent-groups. To enable this
functionality, substitute the host with the session-group and enable enum-sag-match in
the sip-config.

Using regular expressions with LRTs


The implementation of LRTs is based on RFC 2915 - The Naming Authority Pointer (NAPTR) DNS
Resource Record [1]. This document describes a Substitution Expression Grammar which utilizes
POSIX Extended Regular Expressions [5]. For more details on these, see the documentation referenced
at the end of this document. There are some useful examples of using regular expressions in the sample
LRT file attached to the end of this document as an Appendix.

Using Route Manager Central


Net-Net Route Manager Central (RMC) can be used to centrally automate the management and
distribution of routing data. The Net-Net Route Manager Central User Guide provides the information you
need to install and use RMC. See this document for further details.
To simply update the LRTs in RMC, follow these steps:
1. Navigate to the Route Management pane and select Route Sets. Then right click the LRT you
wish to update and select Update Devices:

520-0050-00

Acme Packet Proprietary & Confidential

Page 6

Best Current Practice

Local Route Tables (LRTs)

April 2011

2. Add the selected HA pair to the Devices to Update list and click OK:

520-0050-00

Acme Packet Proprietary & Confidential

Page 7

Best Current Practice

Local Route Tables (LRTs)

April 2011

3. Navigate to the Device Route Set Updates tab and select the just created Update Task. Click
Commit to update the table on the HA pair:

4.0 Design Goals


The main goals of the configurations contained within are:
High performance LRT lookup processing
Carrier class high availability
Optimal size of local route tables
Maximum number of configured routes
Flexibility of usage

4.1 LRT Architecture


Routes from an LRT XML file are loaded into the SBCs local cache. Loading routes into the local cache
provides a short response time to a route lookup. A traditional ENUM transaction would require sending
a NAPTR request to a DNS server, receiving and processing the response over the management
network. Using LRTs on the SBC skips the network overhead.
LRTs can be used to provide static routing up to a maximum of 2,000,000 routes on a Session-Router
4500 HA pair. The maximum number of supported routes on a given system, however, will vary greatly
depending on the SBC hardware, configuration and usage.

520-0050-00

Acme Packet Proprietary & Confidential

Page 8

Best Current Practice

Local Route Tables (LRTs)

April 2011

In versions prior to SC6.2.0 M6, loading the XML file into cache requires completely deleting the current
cache and loading in the new cache. This is CPU intensive and also renders the local cache inaccessible
during the process. Loading new local route tables in these software images should be done in a
maintenance window under low call load.
The Net-Net C-series software was changed in SC6.2.0 M6 (and greater) to reduce processing load
during a refresh. The cost of this was requiring more memory during the load time. In versions
subsequent to SC6.2.0 M6, loading the XML file into cache requires creating a completely new cache,
switching caches and finally deleting the old cache. Although, this is still CPU intensive, it does not affect
call processing. It does require an additional amount of free memory during the process.
In all versions, it is beneficial to split large route tables into a number of smaller files to mitigate
performance issues.

4.2 LRT Load Times


In software versions previous to SC6.2.0 M6, it is important to understand the load times of LRTs of
certain sizes when designing and scaling routing deployments. The Net-Net C-series software was
changed in SC6.2.0 M6 (and greater) to reduce processing load during a refresh making load times less
important. The cost of this was requiring more memory.
Previous to SC6.2.0 M6, for the duration of the load process, call signaling will be impacted (media traffic
e.g. RTP is not affected) as the CPU usage will operate at 100%. This will cause retransmissions under
most scenarios. Proper care should be noted to avoid 503 errors which may occur when the combination
of traffic and the CPU spike lead to a window of CPU usage greater than the overload threshold. In many
scenarios, it will be beneficial to have a series of smaller or mid-sized LRTs rather than a single large one.
The time to load an LRT will also be dependent on current CPU load. Therefore it is recommended to
measure the time to load an LRT on a non-production SBC under similar call conditions to understand the
impact. Below are some sample load times for various sized LRTs. The heading of each column lists the
number of routes in each file.
Table 1: refresh time (in seconds) under no call load

3820 (6.2.0 M4 P1)


4250 (6.0.0 M7 P3)
4250 (6.2.0 M4 P1)
4500 CPU1 (6.2.0 M4 P1)
4500 CPU2 (6.2.0 M4 P1)

10k
1
1
1
<1
<1

25k
1
2
2
1
1

50k
2
4
4
2
1

75k
3
6
6
3
2

100k
3
8
8
3
2

125k
4
10
10
4
2

250k
8
NA
NA
8
5

Table 2: refresh time (in seconds) under 70% CPU usage call load
Tests where load limiting occurred are marked with an asterisk (*)

3820 (6.2.0 M4 P1)


4250 (6.0.0 M7 P3)
4250 (6.2.0 M4 P1)
4500 CPU1 (6.2.0 M4 P1)
4500 CPU2 (6.2.0 M4 P1)

520-0050-00

10k
1
1
1
1
1

25k
1
3
3
1
1

50k
2
5
5
2
1

75k
3
7*
8*
3
2

Acme Packet Proprietary & Confidential

100k
4
11*
11*
4
2

125k
6*
13*
14*
5*
2

250k
10*
NA
NA
10*
5

Page 9

Best Current Practice

Local Route Tables (LRTs)

April 2011

Once the load time of an LRT is known, it is possible to determine the potential CPU impact and the
possible load limiting. For instance, if CPU utilization is at 70%, testing has shown that load limiting will
occur on the 4250 when a 75,000 route LRT is loaded and will occur on the 3820 and 4500 CPU1 when a
125,000 route LRT is loaded.

4.3 LRT Memory Usage


It is important to understand the memory usage of LRTs of certain sizes when designing and scaling
deployments. Memory usage on the SBC varies greatly on its configuration and usage. Memory usage
for individual LRTs may vary greatly and should be tested on a non-production SBC to verify the size will
not negatively impact memory usage. The following table is an example based on the provided reference
configuration and should be used as a rough estimate only. The heading of each column lists the number
of routes in each file.
Table 3: Free memory percentage with no call load after loading various sized LRTs

3820 (standard)
4250 (1GB)
4250 (2 GB)
4500 regular Phy card
4500 IPSec/QoS card

0k
83%
59%
71%
83%
79%

125k
80%
49%
66%
80%
75%

250k
76%
40%
61%
76%
71%

500k
69%
19%
50%
68%
64%

1M
54%
NA
27%
54%
49%

2M
26%
NA
NA
25%
20%

It can be seen from this table that each 125k routes uses roughly 100M of memory. The memory usage
is dependent on the size of the lookup and the size of the regex string. Therefore, for most applications,
memory usage will be linear with respect to the number of routes in a table.
Note that the above table does not account for memory usage for other functions on the SBC e.g.
registration cache entries, activated running configuration, session or subscription dialogs. These must be
taken into consideration when dimensioning LRT functionality.
Additionally, in SC6.2.0 M6 and greater, a new LRT is loaded into cache each time it is refreshed, this
causes a temporary increase in memory usage during this process. For instance, if a 125k route table
uses 100M of memory, a table refresh will require an additional 100M of memory.

4.4 Optimizing Regular Expressions


Regular expression processing can require significant CPU overhead in some cases. Care should be
taken to use efficient regular expressions whenever possible. Optimizing regular expressions is beyond
the scope of this document; however, it should be noted that the SD software has been optimized to look
for and avoid doing regular expression processing when using the common regex pattern of the form:
!^.*$!user@host!. This regex would replace the URI without processing the regex. Due to this
optimization, this type of regex should be used whenever possible.

5.0 Notes on the Reference Configurations


The configurations presented here have been entered, tested, and verified on HA SD pairs running in the
lab at Acme Packet headquarters. The goal is not to demonstrate a full-featured configuration; rather,

520-0050-00

Acme Packet Proprietary & Confidential

Page 10

Best Current Practice

Local Route Tables (LRTs)

April 2011

each contains only the minimum number of configuration objects required to pass basic SIP traffic using
LRTs. The same configuration was used for each Acme Packet C-series model number when possible.

6.0 Normative References


[1] RFC 2915 The Naming Authority Pointer (NAPTR) DNS Resource Record
[2] RFC 3761 The E.164 to Uniform Resource Identifiers (URI) Dynamic Delegation Discovery System
(DDDS) Application (ENUM)
[3] Net-Net 4000 ACLI Configuration Guide Release Version S-C6.2.0
[4] Net-Net Route Manager Central User Guide Release Version 1.0
[5] IEEE, "IEEE Standard for Information Technology Portable Operating System Interface (POSIX) Part 2: Shell and Utilities (Vol. 1)", IEEE Std 1003.2-1992, January 1993.

7.0 Authors Address


Jim Tessier
Acme Packet, Inc.
100 Crosby Drive
Bedford, MA 01730

8.0 Disclaimer
The content in this document is for informational purposes only and is subject to change by Acme Packet
without notice. While reasonable efforts have been made in the preparation of this publication to assure
its accuracy, Acme Packet assumes no liability resulting from technical or editorial errors or omissions, or
for any damages resulting from the use of this information. Unless specifically included in a written
agreement with Acme Packet, Acme Packet has no obligation to develop or deliver any future release or
upgrade or any feature, enhancement or function.

9.0 Full Copyright Statement


Copyright Acme Packet (2011). All Rights Reserved. Acme Packet, Session-Aware Networking, NetNet and related marks are trademarks of Acme Packet. All other brand names are trademarks or
registered trademarks of their respective companies.
This document and translations of it may be copied and furnished to others, and derivative works that
comment on or otherwise explain it or assist in its implantation may be prepared, copied, published and
distributed, in whole or in part, given the restrictions identified in section 2 of this document, provided that
the above copyright notice, disclaimer, and this paragraph are included on all such copies and derivative
works. However, this document itself may not be modified in any way, such as by removing the copyright
notice or references to Acme Packet or other referenced organizations.
The limited permissions granted above are perpetual and will not be revoked by Acme Packet or its
successors or assigns.
This document and the information contained herein is provided on an "AS IS" basis and ACME PACKET
DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY

520-0050-00

Acme Packet Proprietary & Confidential

Page 11

Best Current Practice

Local Route Tables (LRTs)

April 2011

WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR
ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

520-0050-00

Acme Packet Proprietary & Confidential

Page 12

Best Current Practice

Local Route Tables (LRTs)

April 2011

Appendix A: Session Director Partial Reference


Configuration
local-policy
from-address
*
to-address
*
source-realm
Core
description
activate-time
deactivate-time
state
policy-priority
last-modified-by
last-modified-date
policy-attribute
next-hop
realm
action
terminate-recursion
carrier
start-time
end-time
days-of-week
cost
app-protocol
state
methods
media-profiles
lookup
next-key
eloc-str-lkup
eloc-str-match
policy-attribute
next-hop
realm
action
terminate-recursion
carrier
start-time
end-time
days-of-week
cost
app-protocol
state
methods
media-profiles
lookup
next-key
eloc-str-lkup
eloc-str-match
policy-attribute
next-hop
realm
action
terminate-recursion
carrier
start-time
end-time
days-of-week
cost
app-protocol

520-0050-00

N/A
N/A
enabled
none
admin@console
2010-10-27 17:49:21
lrt:TenK
Peers
replace-uri
disabled
0000
2400
U-S
1
enabled

single
disabled

lrt:Twenty5K
Peers
replace-uri
disabled
0000
2400
U-S
2
enabled

single
disabled

lrt:FiftyK
Peers
replace-uri
disabled
0000
2400
U-S
3

Acme Packet Proprietary & Confidential

Page 13

Best Current Practice

Local Route Tables (LRTs)

state
methods
media-profiles
lookup
next-key
eloc-str-lkup
eloc-str-match
local-routing-config
name
file-name
prefix-length
last-modified-by
last-modified-date
local-routing-config
name
file-name
prefix-length
last-modified-by
last-modified-date
local-routing-config
name
file-name
prefix-length
last-modified-by
last-modified-date
realm-config
identifier
description
addr-prefix
network-interfaces

enabled

single
disabled

TenK
LRTs10k.xml.gz
5
admin@console
2010-11-05 19:37:21
Twenty5k
LRTs25k.xml.gz
6
admin@console
2010-11-05 19:37:54
Fiftyk
LRTs50k.xml.gz
7
admin@console
2010-11-05 19:38:09
Peers
Peering realm
172.16.112.0/24

mm-in-realm
mm-in-network
mm-same-ip
mm-in-system
bw-cac-non-mm
msm-release
qos-enable
generate-UDP-checksum
max-bandwidth
fallback-bandwidth
max-priority-bandwidth
max-latency
max-jitter
max-packet-loss
observ-window-size
parent-realm
dns-realm
media-policy
in-translationid
out-translationid
in-manipulationid
out-manipulationid
manipulation-string
manipulation-pattern
class-profile
average-rate-limit
access-control-trust-level
invalid-signal-threshold
maximum-signal-threshold
untrusted-signal-threshold
nat-trust-threshold
deny-period
ext-policy-svr
diam-e2-address-realm
symmetric-latching
pai-strip
trunk-context
early-media-allow

520-0050-00

April 2011

M00:0
disabled
enabled
enabled
enabled
disabled
disabled
disabled
disabled
0
0
0
0
0
0
0

ACME_NAT_TO_FROM_IP

0
high
0
0
0
0
30

disabled
disabled

Acme Packet Proprietary & Confidential

Page 14

Best Current Practice

Local Route Tables (LRTs)

enforcement-profile
additional-prefixes
restricted-latching
restriction-mask
accounting-enable
user-cac-mode
user-cac-bandwidth
user-cac-sessions
icmp-detect-multiplier
icmp-advertisement-interval
icmp-target-ip
monthly-minutes
net-management-control
delay-media-update
refer-call-transfer
dyn-refer-term
codec-policy
codec-manip-in-realm
constraint-name
call-recording-server-id
stun-enable
stun-server-ip
stun-server-port
stun-changed-ip
stun-changed-port
match-media-profiles
qos-constraint
sip-profile
sip-isup-profile
block-rtcp
hide-egress-media-update
last-modified-by
last-modified-date
realm-config
identifier
description
addr-prefix
network-interfaces
mm-in-realm
mm-in-network
mm-same-ip
mm-in-system
bw-cac-non-mm
msm-release
qos-enable
generate-UDP-checksum
max-bandwidth
fallback-bandwidth
max-priority-bandwidth
max-latency
max-jitter
max-packet-loss
observ-window-size
parent-realm
dns-realm
media-policy
in-translationid
out-translationid
in-manipulationid
out-manipulationid
manipulation-string
manipulation-pattern
class-profile
average-rate-limit
access-control-trust-level
invalid-signal-threshold
maximum-signal-threshold
untrusted-signal-threshold

520-0050-00

April 2011

none
32
enabled
none
0
0
0
0
0
disabled
disabled
disabled
disabled
disabled

disabled
0.0.0.0
3478
0.0.0.0
3479

disabled
disabled
admin@console
2010-10-26 16:04:31
Core
Trusted core realm
0.0.0.0
M10:0
disabled
enabled
enabled
enabled
disabled
disabled
disabled
disabled
0
0
0
0
0
0
0

ACME_NAT_TO_FROM_IP

0
high
0
0
0

Acme Packet Proprietary & Confidential

Page 15

Best Current Practice

Local Route Tables (LRTs)

nat-trust-threshold
deny-period
ext-policy-svr
diam-e2-address-realm
symmetric-latching
pai-strip
trunk-context
early-media-allow
enforcement-profile
additional-prefixes
restricted-latching
restriction-mask
accounting-enable
user-cac-mode
user-cac-bandwidth
user-cac-sessions
icmp-detect-multiplier
icmp-advertisement-interval
icmp-target-ip
monthly-minutes
net-management-control
delay-media-update
refer-call-transfer
dyn-refer-term
codec-policy
codec-manip-in-realm
constraint-name
call-recording-server-id
stun-enable
stun-server-ip
stun-server-port
stun-changed-ip
stun-changed-port
match-media-profiles
qos-constraint
sip-profile
sip-isup-profile
block-rtcp
hide-egress-media-update
last-modified-by
last-modified-date
sip-config
state
operation-mode
dialog-transparency
home-realm-id
egress-realm-id
nat-mode
registrar-domain
registrar-host
registrar-port
register-service-route
init-timer
max-timer
trans-expire
invite-expire
inactive-dynamic-conn
enforcement-profile
pac-method
pac-interval
pac-strategy
pac-load-weight
pac-session-weight
pac-route-weight
pac-callid-lifetime
pac-user-lifetime
red-sip-port
red-max-trans
red-sync-start-time

520-0050-00

April 2011

0
30

disabled
disabled

none
32
enabled
none
0
0
0
0
0
disabled
disabled
disabled
disabled
disabled

disabled
0.0.0.0
3478
0.0.0.0
3479

disabled
disabled
admin@console
2010-10-26 15:55:05
enabled
dialog
enabled
Peers
None

0
always
500
4000
32
180
32

10
PropDist
1
1
1
600
3600
1988
10000
5000

Acme Packet Proprietary & Confidential

Page 16

Best Current Practice

Local Route Tables (LRTs)

red-sync-comp-time
add-reason-header
sip-message-len
enum-sag-match
extra-method-stats
registration-cache-limit
register-use-to-for-lp
options
refer-src-routing
add-ucid-header
proxy-sub-events
pass-gruu-contact
sag-lookup-on-redirect
set-disconnect-time-on-bye
last-modified-by
last-modified-date

520-0050-00

April 2011

1000
disabled
4096
disabled
disabled
0
disabled
max-udp-length=0
serial-forking=yes
disabled
disabled
disabled
disabled
disabled
admin@console
2010-10-26 17:56:48

Acme Packet Proprietary & Confidential

Page 17

Best Current Practice

Local Route Tables (LRTs)

April 2011

Appendix B: Session Router Partial Reference Configuration


local-policy
from-address
*
to-address
*
source-realm
Core
description
activate-time
deactivate-time
state
policy-priority
last-modified-by
last-modified-date
policy-attribute
next-hop
realm
action
terminate-recursion
carrier
start-time
end-time
days-of-week
cost
app-protocol
state
methods
media-profiles
lookup
next-key
eloc-str-lkup
eloc-str-match
policy-attribute
next-hop
realm
action
terminate-recursion
carrier
start-time
end-time
days-of-week
cost
app-protocol
state
methods
media-profiles
lookup
next-key
eloc-str-lkup
eloc-str-match
policy-attribute
next-hop
realm
action
terminate-recursion
carrier
start-time
end-time
days-of-week
cost
app-protocol
state
methods

520-0050-00

N/A
N/A
enabled
none
admin@console
2010-11-22 17:39:26
lrt:TenK
Peers
replace-uri
disabled
0000
2400
U-S
1
enabled

single
disabled

lrt:Twenty5k
Peers
replace-uri
disabled
0000
2400
U-S
2
enabled

single
disabled

lrt:Fiftyk
Peers
replace-uri
disabled
0000
2400
U-S
3
enabled

Acme Packet Proprietary & Confidential

Page 18

Best Current Practice

Local Route Tables (LRTs)

media-profiles
lookup
next-key
eloc-str-lkup
eloc-str-match
local-routing-config
name
file-name
prefix-length
last-modified-by
last-modified-date
local-routing-config
name
file-name
prefix-length
last-modified-by
last-modified-date
local-routing-config
name
file-name
prefix-length
last-modified-by
last-modified-date
realm-config
identifier
description
addr-prefix
network-interfaces

single
disabled

TenK
LRTs10k.xml.gz
5
admin@console
2010-11-05 19:37:21
Twenty5k
LRTs25k.xml.gz
6
admin@console
2010-11-05 19:37:54
Fiftyk
LRTs50k.xml.gz
7
admin@console
2010-11-05 19:38:09
Peers
Peering realm
172.16.112.0/24

mm-in-realm
mm-in-network
mm-same-ip
mm-in-system
bw-cac-non-mm
msm-release
qos-enable
generate-UDP-checksum
max-bandwidth
fallback-bandwidth
max-priority-bandwidth
max-latency
max-jitter
max-packet-loss
observ-window-size
parent-realm
dns-realm
media-policy
in-translationid
out-translationid
in-manipulationid
out-manipulationid
manipulation-string
manipulation-pattern
class-profile
average-rate-limit
access-control-trust-level
invalid-signal-threshold
maximum-signal-threshold
untrusted-signal-threshold
nat-trust-threshold
deny-period
ext-policy-svr
diam-e2-address-realm
symmetric-latching
pai-strip
trunk-context
early-media-allow
enforcement-profile
additional-prefixes

520-0050-00

April 2011

M00:0
disabled
enabled
enabled
enabled
disabled
disabled
disabled
disabled
0
0
0
0
0
0
0

ACME_NAT_TO_FROM_IP

0
high
0
0
0
0
30

disabled
disabled

Acme Packet Proprietary & Confidential

Page 19

Best Current Practice

Local Route Tables (LRTs)

restricted-latching
restriction-mask
accounting-enable
user-cac-mode
user-cac-bandwidth
user-cac-sessions
icmp-detect-multiplier
icmp-advertisement-interval
icmp-target-ip
monthly-minutes
net-management-control
delay-media-update
refer-call-transfer
dyn-refer-term
codec-policy
codec-manip-in-realm
constraint-name
call-recording-server-id
stun-enable
stun-server-ip
stun-server-port
stun-changed-ip
stun-changed-port
match-media-profiles
qos-constraint
sip-profile
sip-isup-profile
block-rtcp
hide-egress-media-update
last-modified-by
last-modified-date
realm-config
identifier
description
addr-prefix
network-interfaces
mm-in-realm
mm-in-network
mm-same-ip
mm-in-system
bw-cac-non-mm
msm-release
qos-enable
generate-UDP-checksum
max-bandwidth
fallback-bandwidth
max-priority-bandwidth
max-latency
max-jitter
max-packet-loss
observ-window-size
parent-realm
dns-realm
media-policy
in-translationid
out-translationid
in-manipulationid
out-manipulationid
manipulation-string
manipulation-pattern
class-profile
average-rate-limit
access-control-trust-level
invalid-signal-threshold
maximum-signal-threshold
untrusted-signal-threshold
nat-trust-threshold
deny-period

520-0050-00

April 2011

none
32
enabled
none
0
0
0
0
0
disabled
disabled
disabled
disabled
disabled

disabled
0.0.0.0
3478
0.0.0.0
3479

disabled
disabled
admin@console
2010-10-26 16:04:31
Core
Trusted core realm
0.0.0.0
M10:0
disabled
enabled
enabled
enabled
disabled
disabled
disabled
disabled
0
0
0
0
0
0
0

ACME_NAT_TO_FROM_IP

0
high
0
0
0
0
30

Acme Packet Proprietary & Confidential

Page 20

Best Current Practice

Local Route Tables (LRTs)

ext-policy-svr
diam-e2-address-realm
symmetric-latching
pai-strip
trunk-context
early-media-allow
enforcement-profile
additional-prefixes
restricted-latching
restriction-mask
accounting-enable
user-cac-mode
user-cac-bandwidth
user-cac-sessions
icmp-detect-multiplier
icmp-advertisement-interval
icmp-target-ip
monthly-minutes
net-management-control
delay-media-update
refer-call-transfer
dyn-refer-term
codec-policy
codec-manip-in-realm
constraint-name
call-recording-server-id
stun-enable
stun-server-ip
stun-server-port
stun-changed-ip
stun-changed-port
match-media-profiles
qos-constraint
sip-profile
sip-isup-profile
block-rtcp
hide-egress-media-update
last-modified-by
last-modified-date
sip-config
state
operation-mode
dialog-transparency
home-realm-id
egress-realm-id
nat-mode
registrar-domain
registrar-host
registrar-port
register-service-route
init-timer
max-timer
trans-expire
invite-expire
inactive-dynamic-conn
enforcement-profile
pac-method
pac-interval
pac-strategy
pac-load-weight
pac-session-weight
pac-route-weight
pac-callid-lifetime
pac-user-lifetime
red-sip-port
red-max-trans
red-sync-start-time
red-sync-comp-time
add-reason-header

520-0050-00

April 2011

disabled
disabled

none
32
enabled
none
0
0
0
0
0
disabled
disabled
disabled
disabled
disabled

disabled
0.0.0.0
3478
0.0.0.0
3479

disabled
disabled
admin@console
2010-10-26 15:55:05
enabled
transaction
enabled
Peers
None

0
always
500
4000
32
180
32

10
PropDist
1
1
1
600
3600
1988
10000
5000
1000
disabled

Acme Packet Proprietary & Confidential

Page 21

Best Current Practice

Local Route Tables (LRTs)

sip-message-len
enum-sag-match
extra-method-stats
registration-cache-limit
register-use-to-for-lp
options
refer-src-routing
add-ucid-header
proxy-sub-events
pass-gruu-contact
sag-lookup-on-redirect
set-disconnect-time-on-bye
last-modified-by
last-modified-date

520-0050-00

April 2011

4096
enabled
disabled
0
disabled
max-udp-length=0
serial-forking=yes
disabled
disabled
disabled
disabled
disabled
admin@console
2010-11-22 17:37:30

Acme Packet Proprietary & Confidential

Page 22

Best Current Practice

Local Route Tables (LRTs)

April 2011

Appendix C: Local Route Table Example


<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<localRoutes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<!-- regEx.xml
-->
<!-- This is a sample LRT file with some regex examples -->
<!-- This route completely ignores the given number and returns 17815551212 -->
<!-- This type of route is optimized and will provide the best performance. -->
<!-- For example, both 17812221212 and 17810 will become sip:17815551212@nexthop.com -->
<route>
<user type="E164">1781</user>
<next type="regex">!^.*$!sip:17815551212@nexthop.com!</next>
</route>
<!-- This route strips a + if it exists -->
<!-- For example, both 19789344000 & +19789344000 will become sip:19789344000@nexthop.com -->
<route>
<user type="E164">1978</user>
<next type="regex">!^(\+)?(.*$)!sip:\2@nexthop.com!</next>
</route>
<!-- Similarly, this route adds a + if it does not exist -->
<!-- For example, both 16174000 & +16174000 will become sip:+16174000@nexthop.com -->
<route>
<user type="E164">1617</user>
<next type="regex">!^(\+)?(.*$)!sip:+\2@nexthop.com!</next>
</route>
<!-- This route strips the prefix digits in the number -->
<!-- For example, 12123034444 will become sip:3034444@nexthop.com -->
<route>
<user type="E164">1212</user>
<next type="regex">!^1212(.*$)!sip:\1@nexthop.com!</next>
</route>
<!-- This route strips the 1508 and moves the next three digits to a user-param -->
<!-- For example: 15089344000 will become sip:4000;prefix=934@nexthop.com -->
<route>
<user type="E164">1508</user>
<next type="regex">!^1508(...)(.*$)!sip:\2;prefix=\1@nexthop.com!</next>
</route>
<!-- This route tries a second next-hop if the first fails -->
<!-- For example, 18007778888 and 18009 will first be sent to sip:tollfree@nexthop.com -->
<!-- if that fails, it will be sent to sip:tollfree@secondhop.com -->
<route>
<user type="E164">1800</user>
<next type="regex">!^.*$!sip:tollfree@nexthop.com!</next>
<next type="regex">!^.*$!sip:tollfree@secondhop.com!</next>
</route>
<!-- This route rejects any 1900 number with 604 Does Not Exist Anywhere -->
<!-- For example, a call to 19005551212 will be rejected with a 604 error code -->
<route>
<user type="E164">1900</user>
<next type="void">!^.*$!sip:0.0.0.0!</next>
</route>
</localRoutes>

520-0050-00

Acme Packet Proprietary & Confidential

Page 23

Вам также может понравиться