<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Mark Holloway</title>
	<atom:link href="http://www.markholloway.com/blog/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.markholloway.com/blog</link>
	<description>This is a location to hold various technical notes about Service Provider and Enterprise VoIP</description>
	<lastBuildDate>Mon, 24 Dec 2012 02:18:00 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Acme Packet SBC: SIP Endpoint Registration Behavior During a Network Outage (avoiding SIP overload and registration flooding)</title>
		<link>http://www.markholloway.com/blog/?p=1844</link>
		<comments>http://www.markholloway.com/blog/?p=1844#comments</comments>
		<pubDate>Fri, 21 Dec 2012 19:23:52 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Acme Packet]]></category>
		<category><![CDATA[BroadWorks]]></category>
		<category><![CDATA[SBC]]></category>
		<category><![CDATA[SIP]]></category>

		<guid isPermaLink="false">http://www.markholloway.com/blog/?p=1844</guid>
		<description><![CDATA[BGP Route flaps, accidental fiber cuts, equipment failure, these are all things that trigger outages and cause traffic to behave erratically and unpredictably. In the moment of crisis, a five minute voice outage feels like an eternity. What many people do not realize is, just when the network begins to &#8220;normalize&#8221; itself, this will cause [...]]]></description>
				<content:encoded><![CDATA[<p>BGP Route flaps, accidental fiber cuts, equipment failure, these are all things that trigger outages and cause traffic to behave erratically and unpredictably. In the moment of crisis, a five minute voice outage feels like an eternity. What many people do not realize is, just when the network begins to &#8220;normalize&#8221; itself, this will cause a massive SIP registration flood pouring into the network as potentially hundreds of thousands of endpoints (or more) will send their SIP registrations which would typically severely spike CPU on the Softswitch infrastructure, thus causing a second outage for the VoIP network.</p>
<p>There are ways to protect the core network with the Acme Packet SBC. The Acme Packet <strong>Net-SAFE</strong> architecture definitely warrants its own deep dive discussion and is the official word on SBC security. It&#8217;s not my intention to try and cover it here. However, having worked with similar topologies and dealing with short, bursty outages where endpoints disappear for anywhere from 3 to 15 minutes then come back in massive waves, there are a couple of simple steps one can take to keep the network healthy and avoid a second outage due to a SIP Registration Overload condition occurring after the network layer has resolved itself..</p>
<p>The following is a simple example of a Hosted IP PBX topology where SIP endpoint registration is targeted to an Acme Packet Session Load Balancer (SLB) which distributes the registrations to multiple SBC cluster members. Typically the cluster members are geographically located in different cities, states, or countries, supporting millions of subscribers (this scenario only shows three cluster members, but more are supported by the SLB).</p>
<p>&nbsp;</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/12/SLB_Topology.png"><img class="aligncenter size-full wp-image-2381" title="SLB_Topology" src="http://www.markholloway.com/blog/wp-content/uploads/2012/12/SLB_Topology.png" alt="" width="463" height="462" /></a></p>
<p>&nbsp;</p>
<p>Now lets say that all of a sudden the Internet experiences a BGP route flap. That&#8217;s at least 3 minutes of downtime while the routers converge. The SIP phones will lose the ability to communicate with the SBC and the cached SIP Registrations in the SBC will expire and be flushed out. In Hosted NAT Traversal environments it is common for the SIP registration &#8220;expires&#8221; timer in the Contact header to be set anywhere from 60 &#8211; 180 seconds by the SBC.  The reason for the low number is the SBC wants the Firewall to keep the UDP ports open. Firewalls tend to close them quick and since the SBC detects that the phone is behind NAT, it forces the registration to occur more frequently. Otherwise, if the Firewall close the UDP ports, the phone will not be able to receive calls.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-21-at-10.33.44-AM.png"><img class="aligncenter size-full wp-image-2306" title="Screen Shot 2012-12-21 at 10.33.44 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-21-at-10.33.44-AM.png" alt="" width="488" height="476" /></a></p>
<p>Without utilizing any additional <strong>sip-config</strong> options in the SBC configuration, the SBC will forward <span style="text-decoration: underline;">all</span> the registrations it receives from the SIP Endpoint to the core Softswitch when network service is back up and running. Note that if recommended DDoS security settings are in place (ie. Net-SAFE) the SBC will gracefully throttle the traffic entering the core so the Softswitch infrastructure does not get overwhelmed. The important things to note here is if a SIP registration cache entry expires, the SBC will forward the &#8220;new&#8221; registration to the core Softswitch once the network has normalized (as shown below). This could easily result in a flood of registrations happening all at once and put the Softswitch at risk.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-21-at-10.48.00-AM.png"><img class="aligncenter size-full wp-image-2309" title="Screen Shot 2012-12-21 at 10.48.00 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-21-at-10.48.00-AM.png" alt="" width="471" height="483" /></a></p>
<p>By utilizing the <strong>register-grace-timer</strong> option under <strong>sip-config</strong>, the Acme Packet SBC will extend the life of the cached registration entries. Typical settings are between 600 and 900 seconds. The result is that when there is a network outage and SIP endpoints lose their connectivity to the SBC, the SBC will keep the binding of the endpoint in its cache. When the network is restored and all the SIP endpoints are able to communicate successfully with the SBC again (within the register-grace-timer period) there is no need for the SBC to forward all these registrations to the core Softswitch again. The Softswitch has no knowledge that an outage on the Public network occurred since the SBC is doing all the topology hiding and registration management that interfaces to the core.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-21-at-11.05.58-AM.png"><img class="aligncenter size-full wp-image-2313" title="Screen Shot 2012-12-21 at 11.05.58 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-21-at-11.05.58-AM.png" alt="" width="563" height="487" /></a></p>
<p>&nbsp;</p>
<p>Adding the following will enable the <strong>register-grace-timer</strong> value for 900 seconds.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-21-at-12.51.32-PM.png"><img class="aligncenter size-full wp-image-2319" title="Screen Shot 2012-12-21 at 12.51.32 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-21-at-12.51.32-PM.png" alt="" width="398" height="93" /></a></p>
<p>So far the solution outlined above work great when SIP endpoints have a single ingress point into the network (Session Load Balancer) and the SBC cluster members are geographically dispersed in different cities, states, or countries.</p>
<p>The next example shows a topology where the Service Provider may have two different SBC pairs in two different geographic locations. In this case SIP Endpoints rely on DNS SRV records (or multiple static IP entries in the phone configuration files) to reach these SBC&#8217;s. The condition to consider here is intermittent network behavior. The network isn&#8217;t necessarily down hard where all endpoints would simply fail over to the second site. Instead, the primary site is flapping up and down, so phones are intermittently flapping their SIP registration between the primary and secondary sites.</p>
<p>The following is an example of a deployment where each site has its own independent High Availability pair of Acme Packet SBC&#8217;s. SIP Endpoints rely on DNS SRV records to support registration failover between Site 1 and Site 2.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-21-at-11.56.43-AM.png"><img class="aligncenter size-full wp-image-2315" title="Screen Shot 2012-12-21 at 11.56.43 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-21-at-11.56.43-AM.png" alt="" width="487" height="403" /></a><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-21-at-11.52.51-AM.png"><br />
</a></p>
<p>The unfortunate and somewhat dysfunctional behavior in this topology is some SIP endpoints do not honor the <strong>expires=</strong> timer value sent by the SBC in a 200 OK response to their SIP registration. For example, if the SBC sends <strong>expires=180</strong> seconds for the registration refresh, some endpoints reduce the value by as much as 50% and  send their registration at 90 seconds instead of 180 seconds. The law of SIP (RFC 3261) states that a SIP Endpoint should attempt the primary IP each time it tries to register. During an <span style="text-decoration: underline;">intermittent</span> outage what will happen is the SIP endpoint is already registered with a cached entry at the primary site, then 90 seconds later fails to the secondary site, then 90 seconds later may fail back to the primary site again, then perhaps a fourth time to the secondary site again. Of course this leads to issues if the <strong>register-grace-timer</strong> is set since the registrations are cached and as a result will not be forwarded to the Softswitch again.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Flapping_topology.png"><img class="aligncenter size-full wp-image-2383" title="Flapping_topology" src="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Flapping_topology.png" alt="" width="560" height="463" /></a></p>
<p>If the <strong>register-grace-timer</strong> is set to a value higher than 0 like the previous example where we used a value of 900, the SBC maintains the registration cache entry even though it has expired. For this particular topology, the <strong>register-grace-timer</strong> should be set to <strong>0</strong>. This is critical when the SIP Endpoint flaps back and forth between the two sites, the registration will now be seen as a &#8220;new&#8221; entry anytime the SIP Endpoint is moving between sites. It&#8217;s not the ideal behavior we would like to see, but at minimum the SIP Endpoint is able to support Inbound and Outbound calls without completely failing.</p>
<p>Depending on which Softswitch vendor you are using, it may also be useful to add the <strong>force-unregistration</strong> option in <strong>sip-config</strong>. This way when the registration cache entry expires in the SBC, the SBC will also notify the Softswitch of the expired entry so it is removed and no SIP Invites are forked to both SBC&#8217;s when the subscriber receives a call.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-21-at-12.40.25-PM.png"><img class="aligncenter size-full wp-image-2317" title="Screen Shot 2012-12-21 at 12.40.25 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-21-at-12.40.25-PM.png" alt="" width="583" height="432" /></a></p>
<p>The tradeoff of using<strong> force-unregistration</strong> is the core network becomes more chatty due to the SBC notifying the Softswitch about stale registrations, but the benefit is the SIP registrar&#8217;s location database is accurate and there won&#8217;t be any odd SIP messages flowing for incoming calls to a subscriber where location information is inaccurate.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-21-at-12.49.35-PM.png"><img class="aligncenter size-full wp-image-2318" title="Screen Shot 2012-12-21 at 12.49.35 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-21-at-12.49.35-PM.png" alt="" width="390" height="111" /></a></p>
<p>In addition to the above <strong>sip-config</strong> options, the following commands are commonly used as throttling mechanisms. Actual values will vary based on the internal core Softswitch architecture, but this set of commands will guard the core SIP network when a large amount of SIP registrations come through so the Softswitch is not overwhelmed.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-21-at-5.20.21-PM.png"><img class="aligncenter size-full wp-image-2357" title="Screen Shot 2012-12-21 at 5.20.21 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-21-at-5.20.21-PM.png" alt="" width="397" height="90" /></a></p>
<p>As mentioned previously, my goal is to cover the best way to recover from a network outage in a Hosted IP PBX environment supporting SIP Endpoints and Hosted NAT Traversal where SIP registrations are frequent. In the future I will provide a more in-depth look at the basics of Net-SAFE, DDoS, and SROP configuration.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.markholloway.com/blog/?feed=rss2&#038;p=1844</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Acme Packet SBC: Configuring &#8220;Selective&#8221; Early Media Suppression</title>
		<link>http://www.markholloway.com/blog/?p=2234</link>
		<comments>http://www.markholloway.com/blog/?p=2234#comments</comments>
		<pubDate>Tue, 18 Dec 2012 21:27:34 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Acme Packet]]></category>
		<category><![CDATA[BroadWorks]]></category>
		<category><![CDATA[SBC]]></category>
		<category><![CDATA[SIP]]></category>

		<guid isPermaLink="false">http://www.markholloway.com/blog/?p=2234</guid>
		<description><![CDATA[The Acme Packet SBC includes support for Early Media Suppression. This allows you to decide what Realms can and cannot support Early Media and in what direction Early Media is allowed. Taking it one step further, the Acme Packet SBC also supports Selective Early Media Suppression. This means that even if a realm is configured [...]]]></description>
				<content:encoded><![CDATA[<p>The Acme Packet SBC includes support for Early Media Suppression. This allows you to decide what <strong>Realms</strong> can and cannot support Early Media and in what direction Early Media is allowed. Taking it one step further, the Acme Packet SBC also supports <span style="text-decoration: underline;">Selective</span> Early Media Suppression. This means that even if a realm is configured to receive Early Media for all calls, the SBC can still be configured to deny Early Media from certain realms (even if those realms can send early media to other destinations) through the use of <strong>Realm Groups</strong>.</p>
<p>Early Media is defined by an endpoint sending RTP/RTCP packets before a session is established by a 200 OK. Otherwise, the expected behavior is media does not begin flowing between endpoints until 200 OK is received. Instances where early media may occur is when a user calls the PSTN and an announcement is immediately played or a custom ringtone (ie. music) is heard when calling a mobile phone.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/12/earlyMediaFlow.jpg"><img class="aligncenter size-full wp-image-2245" title="earlyMediaFlow" src="http://www.markholloway.com/blog/wp-content/uploads/2012/12/earlyMediaFlow.jpg" alt="" width="512" height="173" /></a></p>
<p>There may be a variety of reasons why one does not want to allow Early Media under specific conditions. For example (real world) a Service Provider supporting Hosted IP PBX subscribers and SIP Trunking customers sends PSTN traffic from their network to multiple PSTN Media Gateways. One gateway supports outbound Local and Domestic Long Distance calls and the other media gateway supports outbound International calls. The Service Provider doesn&#8217;t want to allow Early Media from the International gateway to flow inbound to their Hosted IP PBX customer base, but they will allow Early Media to flow from the International media gateway to their SIP Trunking customer base. The Local and Domestic Long Distance media gateway is allowed to send Early Media to either customer base.</p>
<p>First, it&#8217;s important to cover the basics of implementing Early Media Suppression. This may be configured within a <strong>Realm</strong> or a <strong>Session Agent</strong> using the <strong>early-media-allow</strong> parameter. When a call egresses the SBC to a specific realm, the matching realm&#8217;s <strong>early-media-allow</strong> setting will be applied to either<em> allow-all</em>, <em>block-all</em>, or block<em> one-way</em> early media until a 200 OK is received. Media must be anchored to the SBC in order for Early Media settings to have any effect. In this example, calls are originated from the Access (Hosted IP PBX) realm to the PSTN (Access realm&#8217;s next-hop is the Core realm).</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-20-at-1.30.06-PM.png"><img class="aligncenter size-full wp-image-2275" title="Screen Shot 2012-12-20 at 1.30.06 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-20-at-1.30.06-PM.png" alt="" width="563" height="364" /></a></p>
<p>This example has <strong>early-media-allow</strong> set to <strong>none </strong>in the realm configuration. Early Media is not allowed in <em>either</em> direction. Therefore, if an Access subscriber calls the PSTN, no Early Media is permitted back to the Access realm, and vice-versa.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-18-at-2.41.06-PM.png"><img class="aligncenter" title="Screen Shot 2012-12-18 at 2.41.06 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-18-at-2.41.06-PM.png" alt="" width="421" height="209" /></a></p>
<p>This example has <strong>early-media-allow</strong> set to <strong>reverse</strong> which in this case allows a Hosted IP PBX subscriber to place a call to BroadWorks or the PSTN and hear early media. However, the subscribers are not permitted to send Early Media in the other direction since <strong>early-media-allow</strong> is set to <strong>reverse</strong> and not <strong>both</strong>.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-18-at-2.14.07-PM.png"><img class="aligncenter size-full wp-image-2250" title="Screen Shot 2012-12-18 at 2.14.07 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-18-at-2.14.07-PM.png" alt="" width="419" height="210" /></a></p>
<p>&nbsp;</p>
<p>So far we have statically defined to always always allow Early Media from one direction. Now for a scenario that is a little more tricky. Lets say calls originating from the Access realm which route to the<strong> ITSP-1</strong> realm/media gateway are <span style="text-decoration: underline;">not</span> allowed to hear Early Media. However, calls originating from the Access realm which route to the <strong>ITSP-2</strong> realm/media gateway <span style="text-decoration: underline;">are</span> allowed to hear Early Media. However, ITSP-1 <span style="text-decoration: underline;">is</span> allowed to send Early Media to other realms (ie. Acces-2, Acces-3, etc.). Only the &#8220;Access&#8221; realm cannot receive Early Media from ITSP-1.</p>
<p>The trick in this topology is all media gateways are allowed to send Early Media to any realm, and Access is allowed to receive Early Media from any realm. We want to selectively suppress only when the Early Media RTP traverses specifically from <strong>ITSP-1</strong> to <strong>Access</strong>.</p>
<p>By using <strong>Realm Groups</strong>, we can essentially build a logical binding of source and destination realms together and customize Early Media settings just for calls flowing across those two realms.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-20-at-1.31.46-PM.png"><img class="aligncenter size-full wp-image-2276" title="Screen Shot 2012-12-20 at 1.31.46 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-20-at-1.31.46-PM.png" alt="" width="401" height="111" /></a></p>
<p>Now only calls that are originated from the <strong>Access</strong> realm to the <strong>ITSP-1</strong> realm will be prohibited from receiving early media from the ITSP-1 Media Gateway. If the same call routes to <strong>ITSP-2</strong>, Early Media is allowed.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-18-at-4.08.50-PM.png"><img class="aligncenter size-full wp-image-2252" title="Screen Shot 2012-12-18 at 4.08.50 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/12/Screen-Shot-2012-12-18-at-4.08.50-PM.png" alt="" width="425" height="273" /></a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.markholloway.com/blog/?feed=rss2&#038;p=2234</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Active Directory based Call Routing on the Acme Packet SBC (Integrating CUCM, Microsoft Lync, and PSTN SIP Trunking)</title>
		<link>http://www.markholloway.com/blog/?p=2082</link>
		<comments>http://www.markholloway.com/blog/?p=2082#comments</comments>
		<pubDate>Fri, 05 Oct 2012 10:00:46 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Acme Packet]]></category>
		<category><![CDATA[SBC]]></category>
		<category><![CDATA[SIP]]></category>

		<guid isPermaLink="false">http://www.markholloway.com/blog/?p=2082</guid>
		<description><![CDATA[Many Enterprises have migrated (or will soon migrate) to SIP Trunking for PSTN access. For an Enterprise with a single IP PBX platform and an SBC on the edge, call routing from the PSTN to the internal network is typically very straight forward because all DID&#8217;s point to one IP platform. Example of a simple [...]]]></description>
				<content:encoded><![CDATA[<p>Many Enterprises have migrated (or will soon migrate) to SIP Trunking for PSTN access. For an Enterprise with a single IP PBX platform and an SBC on the edge, call routing from the PSTN to the internal network is typically very straight forward because all DID&#8217;s point to one IP platform.</p>
<p>Example of a simple SIP Trunk model:</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-09-at-4.27.40-PM.png"><img class="aligncenter size-full wp-image-2162" title="Screen Shot 2012-10-09 at 4.27.40 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-09-at-4.27.40-PM.png" alt="" width="390" height="422" /></a></p>
<p>When another SIP communication platform is introduced into the Enterprise topology it raises the question of what IP platform is considered the call routing decision maker for calls coming from the PSTN SIP Trunk.</p>
<p>This is an example of a less-than-desirable implementation.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-10-at-11.26.20-AM.png"><img class="aligncenter size-full wp-image-2196" title="Screen Shot 2012-10-10 at 11.26.20 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-10-at-11.26.20-AM.png" alt="" width="436" height="475" /></a></p>
<p>Usually one of these is the common way an Enterprise integrates their IP PBX with another IP platform (such as Lync):</p>
<ul>
<li>All calls go to the IP PBX and then fork to Lync</li>
<li>All calls go to Lync and use Lync&#8217;s Simultaneous Ring feature to ring the IP PBX</li>
<li>SBC forks the SIP Invite to the IP PBX and Lync simultaneously</li>
</ul>
<p>Although many IP PBX&#8217;s deployed with Lync use one of the above methods, there is a much better way for this integration to occur.</p>
<p><strong>The Acme Packet SBC supports Active Directory integration for call routing decisions</strong>. The beauty of this is in most organizations Active Directory is already used to store various phone numbers for users within the Enterprise.</p>
<p>When the<strong> local-policy</strong> is configured to support Active Directory (LDAP) and a SIP Invite is received from the PSTN, the SBC will query Active Directory to see if the phone number is assigned to a user.  If it is, the SBC will see if it&#8217;s part of the Active Directory field attribute <strong>telephoneNumber</strong> for a desk phone, or <strong>msRTCSIP</strong> for a Lync phone number<strong></strong>. Other attributes are supported and are explained further in this discussion.</p>
<p>This is an example of an Active Directory query from the SBC to determine if the call should be sent to CUCM or Lync.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-09-at-10.54.28-PM.png"><img class="aligncenter size-full wp-image-2179" title="Screen Shot 2012-10-09 at 10.54.28 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-09-at-10.54.28-PM.png" alt="" width="633" height="463" /></a></p>
<p>In a similar regard to the above diagram, if the dialed digits are the Lync phone number and the Active Directory query shows the dialed digits belong to the <strong>msRTCSIP</strong> attribute, the Acme Packet SBC knows the next hop should be the realm and session agent for Lync.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-09-at-10.23.47-PM.png"><img class="aligncenter size-full wp-image-2174" title="Screen Shot 2012-10-09 at 10.23.47 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-09-at-10.23.47-PM.png" alt="" width="635" height="460" /></a></p>
<p>This is where the power of Active Directory integration in the SBC becomes very interesting..</p>
<p>The Acme Packet SBC&#8217;s <strong>local-policy</strong> may be configured in such a way that if the dialed digits +1-404-555-1000 match <strong>telephoneNumber</strong> in Active Directory, but <strong>msRTCSIP</strong> is also populated with a separate Lync phone number (in this case +1-404-555-9595) the SBC&#8217;s <strong>local-policy</strong> preference will route the call to Lync instead of the IP PBX. If <strong>msRTCSIP</strong> is not populated, the call will simply route the to the IP PBX. This is a very flexible way of handling call routing. What this comes down to in this particular case is an environment where some users are exclusively on CUCM and others are CUCM and Lync, but the Enterprise may want Lync users to always receive calls on Lync first regardless of the dialed digits coming from the PSTN.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-09-at-5.20.41-PM.png"><img class="aligncenter size-full wp-image-2168" title="Screen Shot 2012-10-09 at 5.20.41 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-09-at-5.20.41-PM.png" alt="" width="627" height="471" /></a></p>
<p>Now for even more flexibility..</p>
<p>The Acme Packet SBC may also be configured in such a way that it recognizes both <strong>telephoneNumber</strong> and <strong>msRTCSIP</strong> being populated, each with their own phone numbers, but if the SIP Invite to the first platform experiences a SIP Invite timeout or failure, a SIP Invite may be sent to the next destination. You are <span style="text-decoration: underline;">not</span> limited to just two destinations.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-09-at-11.23.02-PM.png"><img class="aligncenter size-full wp-image-2192" title="Screen Shot 2012-10-09 at 11.23.02 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-09-at-11.23.02-PM.png" alt="" width="630" height="474" /></a></p>
<p>&nbsp;</p>
<p>Finally, having calls reroute to the PSTN during an internal network outage is also possible by using the Active Directory attribute field <strong>mobile</strong>. If this field is populated and the SBC&#8217;s<strong> local-policy</strong> is setup to recognize the digits in the <strong>mobile</strong> field, calls that fail to setup internally (in this case, to Lync and the IP PBX) may route back out the PSTN SIP Trunk to the user&#8217;s mobile phone.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-09-at-10.40.30-PM.png"><img class="aligncenter size-full wp-image-2176" title="Screen Shot 2012-10-09 at 10.40.30 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-09-at-10.40.30-PM.png" alt="" width="628" height="470" /></a></p>
<p>Configuration examples:</p>
<p>The two critical configuration elements to examine for Active Directory integration are <strong>local-policy</strong> and<strong> ldap-config</strong>.</p>
<p>First we will look at <strong>local-policy</strong>. This is very straight forward as the only difference when using Active Directory integration is the <strong>next-hop</strong> policy-attribute will reference <strong>ldap</strong>.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-04-at-3.32.15-AM.png"><img class="aligncenter" title="Screen Shot 2012-10-04 at 3.32.15 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-04-at-3.32.15-AM.png" alt="" width="539" height="476" /></a></p>
<p>The next configuration element to talk about is <strong>ldap-config</strong>. This is where you define the Active Directory criteria and how call routing should be handled. You may have have more than one ldap-config on the SBC.</p>
<p>The example below is similar to our simple SIP Trunk diagram at the start of this blog post. There is a single IP PBX platform on the internal network. However, the <strong>mobile</strong> field in Active Directory is also populated with digits. The way this local-policy is configured, if a SIP Invite timeout occurs to CUCM, the policy will reroute the failed call back out the SIP Trunk to the Active Directory user&#8217;s mobile number.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-04-at-2.24.32-AM.png"><img class="aligncenter size-full wp-image-2084" title="Screen Shot 2012-10-04 at 2.24.32 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-04-at-2.24.32-AM.png" alt="" width="654" height="516" /></a></p>
<p>&nbsp;</p>
<p>In this next example the<strong> local-policy</strong> uses the <strong>attribute order</strong>. This means if the dialed digits match an IP PBX phone number (<strong>telephoneNumber</strong>) but the user also has a Lync phone number populated in Active Directory under <strong>msRTCSIP</strong>, send the SIP Invite to Lync.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-04-at-3.29.38-AM.png"><img class="aligncenter size-full wp-image-2091" title="Screen Shot 2012-10-04 at 3.29.38 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-04-at-3.29.38-AM.png" alt="" width="661" height="616" /></a></p>
<p>&nbsp;</p>
<p>As you can see from the above example one of the most useful elements in the ldap-cfg-attributes is the use of regular expressions for phone number formatting.</p>
<p>Other cool features in 6.4f1:</p>
<p>Support for <strong>RFC 6341</strong> (SIP-based Media Recording &#8211; aka <strong>SIPREC</strong>) on the <strong>Linux</strong> version of the Acme Packet SBC.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-04-at-4.32.25-AM.png"><img class="aligncenter size-full wp-image-2116" title="Screen Shot 2012-10-04 at 4.32.25 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/10/Screen-Shot-2012-10-04-at-4.32.25-AM.png" alt="" width="558" height="385" /></a></p>
<p>&nbsp;</p>
<p>In 6.4f1 the web interface may now be used for downloading logs.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/10/log.png"><img class="aligncenter size-full wp-image-2101" title="log" src="http://www.markholloway.com/blog/wp-content/uploads/2012/10/log.png" alt="" width="615" height="353" /></a></p>
<p>&nbsp;</p>
<p>Backup configs may now be restored from the web interface instead of only using the command line.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/10/backups2.png"><img class="aligncenter size-full wp-image-2104" title="backups" src="http://www.markholloway.com/blog/wp-content/uploads/2012/10/backups2.png" alt="" width="632" height="210" /></a>More 6.4f1 features coming in a future discussion.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.markholloway.com/blog/?feed=rss2&#038;p=2082</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Acme Packet SBC: The New &#8220;SIP Monitoring and Tracing&#8221; Tool for Troubleshooting SIP Calls</title>
		<link>http://www.markholloway.com/blog/?p=1974</link>
		<comments>http://www.markholloway.com/blog/?p=1974#comments</comments>
		<pubDate>Wed, 08 Aug 2012 21:15:30 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Acme Packet]]></category>
		<category><![CDATA[SBC]]></category>
		<category><![CDATA[SIP]]></category>

		<guid isPermaLink="false">http://www.markholloway.com/blog/?p=1974</guid>
		<description><![CDATA[Diagnosing a troubled SIP call has a tendency to be a real pain. Whether it&#8217;s running wireshark, tcpdump, or collecting debugs, having to sort through duplicate packets and attempting to merge different pcap files together does not provide a simple way to troubleshoot a single call while looking at both sides of the call in [...]]]></description>
				<content:encoded><![CDATA[<p>Diagnosing a troubled SIP call has a tendency to be a real pain. Whether it&#8217;s running wireshark, tcpdump, or collecting debugs, having to sort through duplicate packets and attempting to merge different pcap files together does not provide a simple way to troubleshoot a single call while looking at both sides of the call in a single ladder diagram.</p>
<p>Fortunately the Acme Packet SBC now includes a free tool embedded in the code that once enabled, allows it turns the SBC into a SIP capture device. The distinct advantage here is seeing both sides of a call in a single ladder diagram. Even better, extra (and very useful) information is included in between each step of the ladder diagram referencing internal &#8220;logic decisions&#8221; as they occur as traffic passes through the SBC.  Finding a particular capture is easy using Search Filters which allow you to specify just about any criteria.</p>
<p style="text-align: center;"><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-08-08-at-3.00.55-PM.png"><img class="aligncenter  wp-image-1975" title="Screen Shot 2012-08-08 at 3.00.55 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-08-08-at-3.00.55-PM.png" alt="" width="646" height="428" /></a></p>
<p>Pop-up context provides tool tips and additional information about a call depending on what area you are hovering over. It is also possible to export a capture locally so it may be emailed and viewed by others  rather than having a variety of users logging into the SBC&#8217;s web interface. Alternatively, captures may be exported as ASCII text files with proper and readable formatting of the call information.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-08-08-at-3.33.16-PM.png"><img class="aligncenter size-full wp-image-1978" title="Screen Shot 2012-08-08 at 3.33.16 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-08-08-at-3.33.16-PM.png" alt="" width="508" height="556" /></a></p>
<p>There are three main parts to viewing a captured call. The first is the Session Summary view which contains information such as source and destination IP addresses, URI&#8217;s, Realms, etc..</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-08-08-at-3.57.24-PM.png"><img class="aligncenter size-full wp-image-1991" title="Screen Shot 2012-08-08 at 3.57.24 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-08-08-at-3.57.24-PM.png" alt="" width="719" height="252" /></a></p>
<p>&nbsp;</p>
<p>The second viewing pane is SIP Message Details. This is the actual ladder diagram and SBC events.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-08-08-at-3.55.52-PM.png"><img class="aligncenter size-full wp-image-1990" title="Screen Shot 2012-08-08 at 3.55.52 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-08-08-at-3.55.52-PM.png" alt="" width="721" height="355" /></a></p>
<p>&nbsp;</p>
<p>The third pane is for viewing QoS statistics such as jitter, packet loss, delay, and MOS scores for the specified call.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-08-08-at-3.34.34-PM.png"><img class="aligncenter size-full wp-image-1979" title="Screen Shot 2012-08-08 at 3.34.34 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-08-08-at-3.34.34-PM.png" alt="" width="723" height="276" /></a></p>
<p>In order to enable web browser viewing of SIP Monitoring and Tracing the web server must be set to the enabled state.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-08-21-at-10.05.45-PM.png"><img class="aligncenter size-full wp-image-2030" title="Screen Shot 2012-08-21 at 10.05.45 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-08-21-at-10.05.45-PM.png" alt="" width="484" height="193" /></a></p>
<p><strong>ATL# configure terminal</strong><br />
<strong>ATL(configure)# system</strong><br />
<strong>ATL(system)# web-server-config</strong><br />
<strong>ATL(web-server-config)# state enabled</strong></p>
<p>The next step is to create one or more filters. In the following example there is a filter called <strong>hostedIpPbx</strong> and in the <em>user</em> portion of the filter any SIP messages containing the phone number digits <strong>781801</strong> will be captured.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-08-22-at-11.33.37-AM.png"><img class="aligncenter size-full wp-image-2057" title="Screen Shot 2012-08-22 at 11.33.37 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-08-22-at-11.33.37-AM.png" alt="" width="409" height="269" /></a></p>
<p>The next step is to enable <strong>sip-monitoring</strong> and identify which monitoring filter should be used. Applying the filter here enabled the filter globally on the system. Usually filters are best applied to specific <strong>realms</strong> or <strong>session agents</strong> (under <em>monitoring-filters</em>) to capture only <em>interesting</em> <em>traffic</em>.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-08-22-at-11.34.02-AM.png"><img class="aligncenter size-full wp-image-2056" title="Screen Shot 2012-08-22 at 11.34.02 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-08-22-at-11.34.02-AM.png" alt="" width="409" height="115" /></a></p>
<p>In this particular network there are IP phones behind a Cisco ASA firewall which NAT to the public internet and need to register to a SIP softswitch which is being &#8220;hidden&#8221; behind the SBC in a Service Provider core network.</p>
<p><span style="color: #3366ff;">IP_Phone</span>&#8212;&#8212;<span style="color: #800080;"><span style="color: #000000;">Cisco</span>_ASA</span>&#8212;&#8212;-[<span style="color: #008000;">APKT_SBC_Public</span>&lt;&gt;<span style="color: #ff0000;">APKT_SBC_Private</span>]&#8212;-<span style="color: #800000;">SIP_Registrar</span><br />
&lt;&#8211;Customer_Prem-&gt;<span style="color: #800080;">NAT</span>&gt;           &lt;&#8211;SIP Monitoring and Tracing&#8211;&gt;<br />
<span style="color: #3366ff;">192.168.1.198</span>    <span style="color: #000080;"><span style="color: #800080;">72.12.135.253</span> </span>   <span style="color: #008000;">72.12.135.250</span>      <span style="color: #ff0000;">10.12.135.250</span>       <span style="color: #800000;">10.12.135.140</span></p>
<p>Click on the image below to see a full screenshot from the SBC&#8217;s SIP Monitoring and Tracing tool showing a SIP phone behind the ASA registering to a SIP Registrar server. As you can see SM&amp;T captures both the ingress and the egress side and displays into one simple ladder diagram. The Session Summary provides additional useful information specific to the SBC that would normally not be seen in 3rd party capture tools.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-08-21-at-10.42.46-PM.png"><img class="aligncenter size-full wp-image-2040" title="Screen Shot 2012-08-21 at 10.42.46 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-08-21-at-10.42.46-PM.png" alt="" width="953" height="502" /></a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.markholloway.com/blog/?feed=rss2&#038;p=1974</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>Configuring Cisco 9951/9971 SIP Phones with Call Manager Express (CME)</title>
		<link>http://www.markholloway.com/blog/?p=1910</link>
		<comments>http://www.markholloway.com/blog/?p=1910#comments</comments>
		<pubDate>Mon, 18 Jun 2012 21:30:46 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Cisco]]></category>
		<category><![CDATA[SIP]]></category>

		<guid isPermaLink="false">http://www.markholloway.com/blog/?p=1910</guid>
		<description><![CDATA[Cisco Call Manager Express 8.5 (Unified Communications Manager Express) introduced support for the Cisco 9951 and 9971  phones but it was lacking support for the onboard camera and video calls. With CME 8.6 and newer, Cisco introduced support for the video camera on the 9951/9971 phones allowing for video calls as long as video and [...]]]></description>
				<content:encoded><![CDATA[<p>Cisco Call Manager Express 8.5 (Unified Communications Manager Express) introduced support for the Cisco 9951 and 9971  phones but it was lacking support for the onboard camera and video calls. With CME 8.6 and newer, Cisco introduced support for the video camera on the 9951/9971 phones allowing for video calls as long as <strong>video</strong> and <strong>camera</strong> configuration elements are present in the <strong>voice global</strong> and <strong>register</strong> pools. The 99X1 phones only support SIP firmware and there are no known plans to support SCCP. Supporting SIP phones on CME is quite different than SCCP phones, especially if you want CME to automatically provision <strong>cnf</strong> files for each SIP endpoint.</p>
<p>I decided to create a minimal configuration on my lab router that shows how CME supports Cisco 9951 SIP phones. There are no SCCP phones in this configuration. I believe as Cisco continues to evolve towards SIP, the need for SCCP will slowly fade away into the sunset (this is just my opinion, but is a trend that is becoming more apparent from Cisco each year).</p>
<p>The first step is enabling SIP to SIP communication so phones may call each other as well as dial into CUE. The router should also act as a SIP registrar because we want our phones to register to CME. The <strong>min</strong> and <strong>max</strong> expires timers can be set to whatever value you choose, but it&#8217;s not a good idea to set it too low otherwise you will DDoS your own router for registration floods.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/06/Screen-Shot-2012-06-18-at-3.14.57-PM.png"><img class="aligncenter size-full wp-image-1914" title="Screen Shot 2012-06-18 at 3.14.57 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/06/Screen-Shot-2012-06-18-at-3.14.57-PM.png" alt="" width="328" height="70" /></a></p>
<p>The next step is to enable <strong>voice register global</strong> so the router supports CME using SIP. This is done by using the <strong>mode cme</strong> command. Think of this process as the SIP version of <strong>telephony-service</strong>. In this case the 9951 phones are physically connected to an HWIC-4ESW-PoE module directly on the CME router and using the router&#8217;s IP on the voice VLAN as the SIP interface IP address.  The 9951 firmware was previously downloaded from Cisco&#8217;s web site and manually copied to the router&#8217;s Flash, hence the<strong> tftp-server flash:</strong> entry. The <strong>video</strong> and <strong>camera</strong> options enable support for video calls on supported phones. The <strong>authenticate register</strong> command is strongly encouraged for everyone to implement in their SIP configuration. When a SIP phone attempts to register to CME it will be challenged by CME for authentication credentials using MD5 hash. This prevents users from either simply hijacking a SIP identity by spoofing a MAC address. By default, when not using MD5 hash, CME compares the MAC address entry in the <strong>voice pool</strong> against its own ARP table entry to see if there is a match. It&#8217;s very easy to hack your way around this mechanism!</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/06/Screen-Shot-2012-06-20-at-10.28.32-PM.png"><img class="aligncenter size-full wp-image-1948" title="Screen Shot 2012-06-20 at 10.28.32 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/06/Screen-Shot-2012-06-20-at-10.28.32-PM.png" alt="" width="301" height="254" /></a></p>
<p>The <strong>voice register dn</strong> command is very similar to the <strong>ephone-dn</strong> command used for SCCP phones. As noted above, the extension for voicemail is 4009 which means if there is an incoming call to SIP phone extension 4001 or 4002 is busy or does not answer, the call will forward to voicemail.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/06/Screen-Shot-2012-06-18-at-3.15.26-PM.png"><img class="aligncenter size-full wp-image-1915" title="Screen Shot 2012-06-18 at 3.15.26 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/06/Screen-Shot-2012-06-18-at-3.15.26-PM.png" alt="" width="309" height="223" /></a></p>
<p>The <strong>voice register pool</strong> command is similar to the <strong>ephone</strong> command used for SCCP. This is where the MAC address of the 9951 phones are listed, the <strong>type</strong> of phone is set, the phone number is assigned, and most importantly the pool tells CME to allow use of the 9951&#8242;s camera and allow video calls. Something I also consider best practice is to always assign a SIP authentication credential under each pool. This prevents others from hijacking another user&#8217;s extension. I would recommend using a stronger username and password. I made it simple for demonstration purposes.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/06/Screen-Shot-2012-06-18-at-3.26.59-PM.png"><img class="aligncenter size-full wp-image-1916" title="Screen Shot 2012-06-18 at 3.26.59 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/06/Screen-Shot-2012-06-18-at-3.26.59-PM.png" alt="" width="232" height="353" /></a></p>
<p>In order for the 9951 to download firmware from Flash the tftp-server command should be set for all the related files.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/06/Screen-Shot-2012-06-18-at-4.16.04-PM.png"><img class="aligncenter size-full wp-image-1917" title="Screen Shot 2012-06-18 at 4.16.04 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/06/Screen-Shot-2012-06-18-at-4.16.04-PM.png" alt="" width="333" height="102" /></a></p>
<p>The CNF files must be generated which provision the files the phones will download. CME will look at the MAC address under each <strong>voice register pool</strong> and generate the appropriate files. When the phones boot they will search for their configuration files and load the referenced firmware if needed.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/06/Screen-Shot-2012-06-18-at-4.21.39-PM.png"><img class="aligncenter size-full wp-image-1919" title="Screen Shot 2012-06-18 at 4.21.39 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/06/Screen-Shot-2012-06-18-at-4.21.39-PM.png" alt="" width="337" height="38" /></a></p>
<p>At this point the CME configuration for support SIP phones is complete. This specific configuration includes support for the 9951 and video calls.  There are many additional operations and parameters to fine tune CME, but the referenced configuration is enough to enable CME supporting SIP-only phones.</p>
<p>In the event the phones are not loading as expected issue the following debugs commands:</p>
<p><strong>router# debug tftp events</strong></p>
<p>Assuming the 9951 is successfully on the network the output from the debug tftp events command should show the phone attempting to download the configuration files from Flash. If the phone is attempting to download files that end in sgn then Reset All Settings should be performed on the phone. There is a high probability the phone was previously deployed in a CUCM environment.</p>
<p><strong>router# debug ccsip messages</strong></p>
<p>If the phone successfully downloads the provisioned cnf files but fails to finish coming up on the network there is a good chance it is failing its SIP authentication. By executing <strong>debug ccsip messages</strong> the router will display the SIP dialog between the phone and CME. The response from CME should help determine what the root cause is. For example, if CME returns SIP 503 Service Unavailable then double check <strong>voice services voip</strong> settings.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.markholloway.com/blog/?feed=rss2&#038;p=1910</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Acme Packet Linux SBC: Assigning Network Interface Names to Physical Ports (Port Allocation)</title>
		<link>http://www.markholloway.com/blog/?p=1872</link>
		<comments>http://www.markholloway.com/blog/?p=1872#comments</comments>
		<pubDate>Thu, 31 May 2012 19:00:03 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Acme Packet]]></category>
		<category><![CDATA[SIP]]></category>

		<guid isPermaLink="false">http://www.markholloway.com/blog/?p=1872</guid>
		<description><![CDATA[The Acme Packet SBC is now available in a Server Edition that runs on HP DL series servers. The platform is based on the same C-Series code that is used in the 3800 and 4500 appliances and runs on an Acme Packet optimized Linux kernel. There are some configuration elements that vary between the Server [...]]]></description>
				<content:encoded><![CDATA[<p>The Acme Packet SBC is now available in a Server Edition that runs on HP DL series servers. The platform is based on the same C-Series code that is used in the 3800 and 4500 appliances and runs on an Acme Packet optimized Linux kernel. There are some configuration elements that vary between the Server Edition and the appliances.</p>
<p>When configuring the PHY and NETWORK interfaces on the Server Edition it is important to verify the four physical Ethernet ports on the Server Edition correspond appropriately to wancom0, wancom1, s0p0, and s1p0. In most cases when installing Server Edition the Linux kernel will map wancom0 and wancom1 to the on-board Ethernet ports on the HP server appropriately. The Server Edition is equipped with an additional HP NC360T dual-port NIC providing two additional Ethernet ports that support s0p0 and s0p1. These are considered the Media interfaces which support SIP, H323, and RTP traffic. The wancom0 port supports platform management and wancom1 supports Active/Standby stateful synchronization when running two Server Editions as a High Availability pair.</p>
<p>To begin, the first step is to see what MAC address maps to which SBC interface.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/08/intf-mapping.png"><img class="aligncenter size-full wp-image-1888" title="intf-mapping" src="http://www.markholloway.com/blog/wp-content/uploads/2012/08/intf-mapping.png" alt="" width="363" height="337" /></a></p>
<p>In this case the MAC addresses identified in the HP server BIOS correctly match the respective wancom and media ports. When deploying in a simplex (non-HA) model, wancom1 is not going to be used since there is no Standby unit to replicate to. The Server Edition has the ability to support additional media interfaces if more physical Ethernet ports are added to the server. Also, for those familiar with the 3800/4500 and the use of wancom1 and wancom2 for redundant back-to-back connections between the Active and Standby nodes, the Server Edition does have the ability to support wancom1 and wancom2 for replication as well. It&#8217;s just a matter of adding more NIC ports. By default, with four physical ethernet ports on the server, only wancom1 is used for replication to the Standby which is still very adequate.</p>
<p>In the event the physical ports on the server do not map as desired, it is very easy to identify and reassign ports.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-05-31-at-11.30.48-AM.png"><img class="aligncenter size-full wp-image-1890" title="Screen Shot 2012-05-31 at 11.30.48 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-05-31-at-11.30.48-AM.png" alt="" width="550" height="194" /></a></p>
<p>When entering the <strong>locate</strong> command the SBC will begin to rapidly blink the physical port that corresponds to s0p0 making it easy to indentify. To change the assignment just use the <strong>swap</strong> command.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-05-31-at-11.33.18-AM.png"><img class="aligncenter size-full wp-image-1891" title="Screen Shot 2012-05-31 at 11.33.18 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-05-31-at-11.33.18-AM.png" alt="" width="547" height="418" /></a></p>
<p>Once this command is executed the s0p0 and s1p0 interface are reassigned.  To change the description use the <strong>label</strong> command.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-05-31-at-11.39.14-AM.png"><img class="aligncenter size-full wp-image-1892" title="Screen Shot 2012-05-31 at 11.39.14 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-05-31-at-11.39.14-AM.png" alt="" width="481" height="345" /></a></p>
<p>The following is additional configuration output provided for the purpose of showing configuration completeness. Note in this case the Server Edition is connected to Cisco 3750 switches and is operating at 100MB Full Duplex.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-05-31-at-11.42.08-AM.png"><img class="aligncenter size-full wp-image-1893" title="Screen Shot 2012-05-31 at 11.42.08 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/08/Screen-Shot-2012-05-31-at-11.42.08-AM.png" alt="" width="531" height="551" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.markholloway.com/blog/?feed=rss2&#038;p=1872</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Acme Packet SBC and &#8220;trans-expire&#8221; Timers (reducing post-dial delay due to Invite timeout)</title>
		<link>http://www.markholloway.com/blog/?p=1847</link>
		<comments>http://www.markholloway.com/blog/?p=1847#comments</comments>
		<pubDate>Tue, 10 Apr 2012 22:44:15 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Acme Packet]]></category>
		<category><![CDATA[SBC]]></category>
		<category><![CDATA[SIP]]></category>

		<guid isPermaLink="false">http://www.markholloway.com/blog/?p=1847</guid>
		<description><![CDATA[By default when a SIP Invite is sent from a SIP endpoint to the Acme Packet SBC, the default expires timer is used to determine when the Invite will timeout based on no response. Changing this globally may not produce the desired result as this impacts all Invites to all devices across all realms.  In [...]]]></description>
				<content:encoded><![CDATA[<p>By default when a SIP Invite is sent from a SIP endpoint to the Acme Packet SBC, the default expires timer is used to determine when the Invite will timeout based on no response. Changing this globally may not produce the desired result as this impacts all Invites to all devices across all realms.  In the case of routing calls to a PSTN peering provider where there are two or more destinations provided in the Contact header, it may be desirable to shorten the timer to reduce post dial delay in the event the first Contact an Invite is sent to is experiencing an issue that is impacting call processing. This assume the device (session agent) is still responding to SIP OPTIONS PING messages and is therefore in-service, but unable to complete calls.</p>
<p>&nbsp;</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/04/Screen-Shot-2012-04-10-at-3.26.20-PM.png"><img class="aligncenter size-full wp-image-1850" title="Screen Shot 2012-04-10 at 3.26.20 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/04/Screen-Shot-2012-04-10-at-3.26.20-PM.png" alt="" width="309" height="430" /></a></p>
<p>If the ITSP does not respond to the Invite the SBC will wait 32 seconds before the Invite will timeout. More than likely the calling party will abandon the call before waiting 32 seconds which means sending further Invites to secondary or tertiary gateways won&#8217;t do much good. In the event there is more than one Contact in the Contact header or the SBC is set to perform Load Balancing using a Session Agent Group (SAG), it is best to change the <strong>trans-expire</strong> timer on the SIP Interface communicating with the ITSP to a value that is more feasible.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/04/Screen-Shot-2012-04-10-at-3.34.04-PM.png"><img class="aligncenter size-full wp-image-1851" title="Screen Shot 2012-04-10 at 3.34.04 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/04/Screen-Shot-2012-04-10-at-3.34.04-PM.png" alt="" width="492" height="422" /></a></p>
<p>In the above scenario the SIP Interface that peers with the ITSP has a <strong>trans-expire</strong> value of 5. This means once the Invite is sent to the first Contact, the SBC will wait for a response for 5 seconds. If no response is received a new Invite is sent to the next Contact address (or Session Agent in the SAG). This helps reduce post-dial delay and provides a more acceptable timer for failover to an secondary or tertiary destination. Setting the timer on the SIP Interface helps keep the behavior unique to a particular destination.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.markholloway.com/blog/?feed=rss2&#038;p=1847</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Acme Packet SBC and the &#8220;register-grace-timer&#8221; sip-config Option</title>
		<link>http://www.markholloway.com/blog/?p=1826</link>
		<comments>http://www.markholloway.com/blog/?p=1826#comments</comments>
		<pubDate>Tue, 24 Jan 2012 09:05:04 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Acme Packet]]></category>
		<category><![CDATA[BroadWorks]]></category>
		<category><![CDATA[SBC]]></category>
		<category><![CDATA[SIP]]></category>

		<guid isPermaLink="false">http://www.markholloway.com/blog/?p=1826</guid>
		<description><![CDATA[The Acme Packet SBC contains an optional parameter that may be added to the configuration which helps avoid a SIP avalanche from occurring.  One instance of a SIP avalanche is when a very large number of SIP endpoints consecutively send SIP registrations to an SBC which then forwards them to a SIP registrar. This can [...]]]></description>
				<content:encoded><![CDATA[<p>The Acme Packet SBC contains an optional parameter that may be added to the configuration which helps avoid a SIP avalanche from occurring.  One instance of a SIP avalanche is when a very large number of SIP endpoints consecutively send SIP registrations to an SBC which then forwards them to a SIP registrar. This can be dangerous for both the registrar and the SBC depending on how many endpoints are attempting to register. Assuming DDoS is applied to the SBC configuration, it will protect itself as well as the SIP registrar from being negatively impacted by the avalanche.</p>
<p>The following scenario shows how endpoints typically behave when they NAT through a firewall. Normally the firewall will NAT the layer 3 IP address but the layer 7 (SIP) address remains the private address. Upon receiving the NAT&#8217;d registration the SBC forwards the register message to a SIP register platform and after an exchange of a few messages between the registrar and endpoint a 200OK is sent from the registrar back to the endpoint with a register expires of 3600 seconds (default for Broadworks). The SBC knows the SIP endpoint is behind NAT and changes this timer from 3600 to something shorter (60 seconds is common).</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/01/Screen-shot-2012-01-24-at-1.01.27-AM.png"><img class="aligncenter size-full wp-image-1827" title="Screen shot 2012-01-24 at 1.01.27 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/01/Screen-shot-2012-01-24-at-1.01.27-AM.png" alt="" width="448" height="530" /></a></p>
<p>Envision a scenario where the Internet is experiencing a route flap which is causing endpoints to lose connectivity to the SBC. If the endpoints should register every 60 seconds and they fail to do so, the SBC will delete them from the registration cache. If perhaps five minutes later the Internet is restored and the endpoints are able to communicate with the SBC again they would have to complete the entire registration process again. This would trigger a SIP avalanche that may negatively impact the core SIP network.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/01/Screen-shot-2012-01-24-at-1.40.33-AM.png"><img class="aligncenter size-full wp-image-1828" title="Screen shot 2012-01-24 at 1.40.33 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/01/Screen-shot-2012-01-24-at-1.40.33-AM.png" alt="" width="449" height="539" /></a></p>
<p>By implementing the option <strong>register-grace-timer</strong> parameter to the global SIP config and specifying a number of seconds, the SBC will retain the cached entries rather than let them expire even if the endpoint registration isn&#8217;t received. Once the endpoints come back after the Internet outage is resolved and they send a SIP registration to the SBC, the SBC will not forward this to the core because the previous registration remains valid in the SBC cache. This prevents the SBC from having to go through the entire registration process thus reducing the overhead involved on both the SBC and SIP registrar.</p>
<p>In this example the timer is set to 300 seconds. If endpoints are supposed to send their registration every 60 seconds but the SBC is not receiving them, it will retain the reg cache entry for another five minutes.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/01/Screen-shot-2012-01-24-at-2.04.03-AM.png"><img class="aligncenter size-full wp-image-1830" title="Screen shot 2012-01-24 at 2.04.03 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/01/Screen-shot-2012-01-24-at-2.04.03-AM.png" alt="" width="463" height="254" /></a></p>
<p>&nbsp;</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2012/01/Screen-shot-2012-01-24-at-2.09.17-AM.png"><img class="aligncenter size-full wp-image-1834" title="Screen shot 2012-01-24 at 2.09.17 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2012/01/Screen-shot-2012-01-24-at-2.09.17-AM.png" alt="" width="465" height="530" /></a></p>
<p>The diagram above demonstrates that even though the Internet is restored and endpoint registrations are reaching the SBC, there is no need for the SBC to forward these registrations to the SIP registrar since the reg-cache was retained during the outage. This prevents CPU cycles from being unnecessarily used on both the SBC and SIP registrar.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.markholloway.com/blog/?feed=rss2&#038;p=1826</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Acme Packet SBC and Media Aggregation</title>
		<link>http://www.markholloway.com/blog/?p=1739</link>
		<comments>http://www.markholloway.com/blog/?p=1739#comments</comments>
		<pubDate>Thu, 10 Nov 2011 00:03:08 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Acme Packet]]></category>
		<category><![CDATA[SIP]]></category>

		<guid isPermaLink="false">http://www.markholloway.com/blog/?p=1739</guid>
		<description><![CDATA[The Acme Packet 3800 and 4500 series Session Border Controllers come with an NIU (Network Interface Unit) that includes four Gigabit ports.  In rare cases one may need to support Media Aggregation where two of the Gigabit interfaces need to be look like they are &#8220;bonded&#8221; to accommodate a large number of calls (with media [...]]]></description>
				<content:encoded><![CDATA[<p>The Acme Packet 3800 and 4500 series Session Border Controllers come with an NIU (Network Interface Unit) that includes four Gigabit ports.  In rare cases one may need to support Media Aggregation where two of the Gigabit interfaces need to be look like they are &#8220;bonded&#8221; to accommodate a large number of calls (with media anchored).  For example, a wholesale SIP Peering Service Provider may need to handle upwards of 16,000 concurrent calls on one single Realm on the SBC.  If  calls are using the G.711 codec this would require 1.5GB of bandwidth.</p>
<p>The process used to support Media Aggregation is to assign the same <strong>Realm</strong> name to two different <strong>Steering Pools</strong>.  For example, on the realm <strong>Access</strong> it would have more than one steering pool which would reference two different network-interfaces.  The same is true for the <strong>Core</strong>.  In the following example NIU ports 0 and 1 are used for Access (public facing) and 2 and 3 are used for Core (private).  Note the NIU is considered slot 0 and the ports are 0, 1, 2, 3.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2011/11/Screen-shot-2011-11-09-at-4.27.47-PM.png"><img class="aligncenter size-full wp-image-1800" title="Screen shot 2011-11-09 at 4.27.47 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2011/11/Screen-shot-2011-11-09-at-4.27.47-PM.png" alt="" width="387" height="756" /></a></p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2011/11/Screen-shot-2011-11-09-at-4.30.00-PM.png"><img class="aligncenter size-full wp-image-1801" title="Screen shot 2011-11-09 at 4.30.00 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2011/11/Screen-shot-2011-11-09-at-4.30.00-PM.png" alt="" width="361" height="793" /></a></p>
<p>&nbsp;</p>
<p>The next step is to verify you have your Access and Core realms configured.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2011/11/Screen-shot-2011-11-09-at-5.04.59-PM.png"><img class="aligncenter size-full wp-image-1808" title="Screen shot 2011-11-09 at 5.04.59 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2011/11/Screen-shot-2011-11-09-at-5.04.59-PM.png" alt="" width="369" height="381" /></a></p>
<p>The final step is to create the Steering Pools and define the network-interfaces for each.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2011/11/Screen-shot-2011-11-09-at-4.55.23-PM.png"><img class="aligncenter size-full wp-image-1803" title="Screen shot 2011-11-09 at 4.55.23 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2011/11/Screen-shot-2011-11-09-at-4.55.23-PM.png" alt="" width="367" height="431" /></a></p>
<p>At this point the SBC will utilize two ports assigned to Access and two ports assigned to Core to support media thus providing Media Aggregation. SIP signaling continues to only traverse on the sip-interfaces assigned to the Access and Core realms (s0p0 and s0p2) .</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2011/11/Screen-shot-2011-11-09-at-5.06.39-PM.png"><img class="aligncenter size-full wp-image-1810" title="Screen shot 2011-11-09 at 5.06.39 PM" src="http://www.markholloway.com/blog/wp-content/uploads/2011/11/Screen-shot-2011-11-09-at-5.06.39-PM.png" alt="" width="396" height="570" /></a></p>
<p>At this point the Acme Packet SBC is fully prepared to handle traffic that exceeds 1GB on a single Realm.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.markholloway.com/blog/?feed=rss2&#038;p=1739</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Acme Packet SBC &#8220;load-limit&#8221; Command Option</title>
		<link>http://www.markholloway.com/blog/?p=1786</link>
		<comments>http://www.markholloway.com/blog/?p=1786#comments</comments>
		<pubDate>Wed, 09 Nov 2011 18:39:06 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Acme Packet]]></category>
		<category><![CDATA[SIP]]></category>
		<category><![CDATA[Unix]]></category>

		<guid isPermaLink="false">http://www.markholloway.com/blog/?p=1786</guid>
		<description><![CDATA[The Acme Packet SBC has an optional parameter that may be added under sip-config that allows the SBC to gracefully handle traffic in the event the SBC&#8217;s main processor reaches a certain threshold. There are several reasons as to why this may occur, but at the most basic level it&#8217;s a good idea to draw [...]]]></description>
				<content:encoded><![CDATA[<p>The Acme Packet SBC has an optional parameter that may be added under sip-config that allows the SBC to gracefully handle traffic in the event the SBC&#8217;s main processor reaches a certain threshold. There are several reasons as to why this may occur, but at the most basic level it&#8217;s a good idea to draw a line in the sand and define at what point to you want to start gracefully rejecting calls if the CPU reaches a certain threshold. Every SIP appliance should have this option but unfortunately most do not.</p>
<p>What separates the Acme Packet SBC from others is that when this threshold is reached the SBC will reply with a SIP 503 Service Unavailable message which tells the originator to try an alternate destination.  In most other SIP appliances once the CPU threshold reaches a certain point the traffic is disrupted by means of calls dropping, loss of RTP (if media is flowing through), or registrations becoming corrupted.</p>
<p>It is worth mentioning that the purpose of setting the load-limit is to avoid an unforeseen event that would cause any network device to experience excessive utilization and effect production traffic.  This is not a replacement for proper SROP (SIP Registration Overload Protection) and DDoS (Distributed Denial of Service) configuration on the SBC.  With the proper SROP and DDoS settings you are ensuring the Acme Packet SBC is running optimally and <span style="text-decoration: underline;">protecting</span> your network while gracefully shedding unwanted or dangerous traffic.</p>
<p>The following is a shortened output of my sip-config with no options applied.  Adding the load-limit option is a matter of entering the following command.</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2011/11/Screen-shot-2011-11-09-at-11.21.40-AM.png"><img class="aligncenter size-full wp-image-1787" title="Screen shot 2011-11-09 at 11.21.40 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2011/11/Screen-shot-2011-11-09-at-11.21.40-AM.png" alt="" width="420" height="371" /></a></p>
<p>At this point the Acme Packet SBC will gracefully reject incoming calls if the CPU reaches or exceeds 90%. Of course this value may be set higher or lower.  More than likely more options will be applied in your sip-config. If you follow the same process to add another option it will overwrite the option that already exists.  Prepending the + symbol in front of the option will add it in addition to any existing options.</p>
<p>In this example the <strong>load-limit</strong> is the first configured option. In addition, the <strong>max-udp-length</strong> is going to be set to 0 which allows the SBC to fragment UDP packets. Otherwise the maximum size a UDP packet may be is 1500 bytes before having to use SIP TCP.  Setting this in sip-config applies globally on the SBC but it is possible to configure this on a per sip-interface basis if desired.  The last option is <strong>reg-cache-mode=none</strong> which tells the SBC to retain the userinfo (post NAT) in the Contact. In most environments (such as Broadsoft BroadWorks) <strong>none</strong> is the value to use. This is also required when configuring SIP Registration Overload Protection (this will be a separate blog post in the near future).</p>
<p><a href="http://www.markholloway.com/blog/wp-content/uploads/2011/11/Screen-shot-2011-11-09-at-11.35.34-AM.png"><img class="aligncenter size-full wp-image-1788" title="Screen shot 2011-11-09 at 11.35.34 AM" src="http://www.markholloway.com/blog/wp-content/uploads/2011/11/Screen-shot-2011-11-09-at-11.35.34-AM.png" alt="" width="455" height="256" /></a></p>
<p>Based on applying the load-limit to the sip-config this provides one additional line of defense that safeguards your platform from suffering a total outage. There have been many occasions noted in the past where other platforms do not employee this method and the end result is a complete and total network outage.  Once the outage starts it becomes very difficult to recover because endpoints will begin retransmitting. Using this feature in combination with alarm-thresholds plus the appropriate SROP and DDoS settings, there is always awareness of what&#8217;s occurring on the network while at the same time gracefully handling any overflow.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.markholloway.com/blog/?feed=rss2&#038;p=1786</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
