<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Consolas;
panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:#0563C1;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:#954F72;
text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
{mso-style-priority:99;
mso-style-link:"Plain Text Char";
margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:Consolas;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
{mso-style-priority:34;
margin-top:0in;
margin-right:0in;
margin-bottom:0in;
margin-left:.5in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Calibri",sans-serif;
color:windowtext;
font-weight:normal;
font-style:normal;
text-decoration:none none;}
span.PlainTextChar
{mso-style-name:"Plain Text Char";
mso-style-priority:99;
mso-style-link:"Plain Text";
font-family:Consolas;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri",sans-serif;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
@list l0
{mso-list-id:487867436;
mso-list-type:hybrid;
mso-list-template-ids:98850550 694197020 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l0:level1
{mso-level-start-at:0;
mso-level-number-format:bullet;
mso-level-text:-;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Calibri",sans-serif;
mso-fareast-font-family:Calibri;
mso-bidi-font-family:"Times New Roman";}
@list l0:level2
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Courier New";}
@list l0:level3
{mso-level-number-format:bullet;
mso-level-text:\F0A7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Wingdings;}
@list l0:level4
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Symbol;}
@list l0:level5
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Courier New";}
@list l0:level6
{mso-level-number-format:bullet;
mso-level-text:\F0A7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Wingdings;}
@list l0:level7
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Symbol;}
@list l0:level8
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Courier New";}
@list l0:level9
{mso-level-number-format:bullet;
mso-level-text:\F0A7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Wingdings;}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoPlainText">Hi,<o:p></o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">Our client registers with the IMS core using UDP but uses TCP when the packet size is over 1300 bytes. When the client sends the TCP reques, the PCSCF replies with 403 Forbidden "you need to reg with the SCSCF"<o:p></o:p></p>
<p class="MsoPlainText">We've traced this back to the code in the PCSCF and it looks like it is checking the via headers and the received ip/port combinations for a match. The actual contact header looks like it matches the registered client.<o:p></o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">Question is what do we need to do in the client to ensure that the PCSCF recognizes the request as one from a registered client?<o:p></o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">We've tried the config options is_registered_fallback2ip , ignore_contact_rxport_check and they don't seem to be used.<o:p></o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">I'm attaching a network trace and included here are some debug messages from the PCSCF. In the network trace the client is 10.8.0.6.<o:p></o:p></p>
<p class="MsoPlainText"><o:p> </o:p></p>
<p class="MsoPlainText">PCSCF Trace messages -------------------------------------------<o:p></o:p></p>
<p class="MsoPlainText">34207) DEBUG: ims_registrar_pcscf [service_routes.c:208]: getContactP():<o:p></o:p></p>
<p class="MsoPlainText">This is a request - using first via to find contact<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_registrar_pcscf [service_routes.c:216]:<o:p></o:p></p>
<p class="MsoPlainText">getContactP(): searching for contact with host:port:proto contact [2://10.8.0.6:49946]<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:457]: get_pcontact():<o:p></o:p></p>
<p class="MsoPlainText">Searching for contact with AOR<o:p></o:p></p>
<p class="MsoPlainText">[<a href="sip:mcpttuser1@10.8.0.6:44580;ob;alias=10.8.0.6~44580~1;alias=10.8.0.6~49946~2">sip:mcpttuser1@10.8.0.6:44580;ob;alias=10.8.0.6~44580~1;alias=10.8.0.6~49946~2</a>]<o:p></o:p></p>
<p class="MsoPlainText">in P-CSCF usrloc based on VIA [2://10.8.0.6:49946] Received [2://10.8.0.6:49946], Search flag is 0<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:463]: get_pcontact(): Have an AOR to search for<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:468]: get_pcontact():<o:p></o:p></p>
<p class="MsoPlainText">checking for rinstance10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:480]:<o:p></o:p></p>
<p class="MsoPlainText">get_pcontact(): no rinstance param<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_usrloc_pcscf [usrloc.c:148]: get_aor_hash():<o:p></o:p></p>
<p class="MsoPlainText">Returning hash: [1662767777]<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:503]: get_pcontact():<o:p></o:p></p>
<p class="MsoPlainText">get_pcontact slot is [161]<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:507]: get_pcontact():<o:p></o:p></p>
<p class="MsoPlainText">comparing contact with aorhash [1662767777], aor [<a href="sip:mcpttuser1@10.8.0.6:44580;ob;alias=10.8.0.6~44580~1">sip:mcpttuser1@10.8.0.6:44580;ob;alias=10.8.0.6~44580~1</a>]<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:508]: get_pcontact():<o:p></o:p></p>
<p class="MsoPlainText">contact host [10.8.0.6:44580]<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:509]: get_pcontact(): contact received [1:10.8.0.6:44580]<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:543]: get_pcontact(): contact not found in memory<o:p></o:p></p>
<p class="MsoPlainText">10(34207) INFO: ims_registrar_pcscf [service_routes.c:258]: getContactP():<o:p></o:p></p>
<p class="MsoPlainText">Contact not found based on Contact-header, trying IP/Port/Proto<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:457]: get_pcontact():<o:p></o:p></p>
<p class="MsoPlainText">Searching for contact with AOR<o:p></o:p></p>
<p class="MsoPlainText">[<a href="sip:mcpttuser1@10.8.0.6:44580;ob;alias=10.8.0.6~44580~1;alias=10.8.0.6~49946~2">sip:mcpttuser1@10.8.0.6:44580;ob;alias=10.8.0.6~44580~1;alias=10.8.0.6~49946~2</a>]<o:p></o:p></p>
<p class="MsoPlainText">in P-CSCF usrloc based on VIA [2://10.8.0.6:49946] Received [2://10.8.0.6:49946], Search flag is 1<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:463]: get_pcontact(): Have an AOR to search for<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:468]: get_pcontact():<o:p></o:p></p>
<p class="MsoPlainText">checking for rinstance10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:480]:<o:p></o:p></p>
<p class="MsoPlainText">get_pcontact(): no rinstance param<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_usrloc_pcscf [usrloc.c:148]: get_aor_hash():<o:p></o:p></p>
<p class="MsoPlainText">Returning hash: [1662767777]<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:503]: get_pcontact():<o:p></o:p></p>
<p class="MsoPlainText">get_pcontact slot is [161]<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:507]: get_pcontact():<o:p></o:p></p>
<p class="MsoPlainText">comparing contact with aorhash [1662767777], aor [<a href="sip:mcpttuser1@10.8.0.6:44580;ob;alias=10.8.0.6~44580~1">sip:mcpttuser1@10.8.0.6:44580;ob;alias=10.8.0.6~44580~1</a>]<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:508]: get_pcontact():<o:p></o:p></p>
<p class="MsoPlainText">contact host [10.8.0.6:44580]<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:509]: get_pcontact(): contact received [1:10.8.0.6:44580]<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_usrloc_pcscf [udomain.c:543]: get_pcontact(): contact not found in memory<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_registrar_pcscf [service_routes.c:263]:<o:p></o:p></p>
<p class="MsoPlainText">getContactP(): No entry in usrloc for 10.8.0.6:49946 (Proto 2) found!<o:p></o:p></p>
<p class="MsoPlainText">10(34207) DEBUG: ims_registrar_pcscf [service_routes.c:300]:<o:p></o:p></p>
<p class="MsoPlainText">getContactP(): Asserted identity not set10(34207) ERROR: *** cfgtrace:request_route=[Orig_Initial] c=[/opt/OpenEPC/etc/pcscf2.cfg]<o:p></o:p></p>
<p class="MsoPlainText">l=975 a=26 n=xlog<o:p></o:p></p>
<p class="MsoPlainText">10(34207) WARNING: <script>: 2.1<o:p></o:p></p>
<p class="MsoPlainText">10(34207) ERROR: *** cfgtrace:request_route=[Orig_Initial]<o:p></o:p></p>
<p class="MsoPlainText">c=[/opt/OpenEPC/etc/pcscf2.cfg] l=976 a=26 n=send_reply<o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Appreciate any help we can get,<o:p></o:p></span></p>
<p class="MsoListParagraph" style="text-indent:-.25in;mso-list:l0 level1 lfo1"><![if !supportLists]><span style="font-size:12.0pt"><span style="mso-list:Ignore">-<span style="font:7.0pt "Times New Roman"">
</span></span></span><![endif]><span style="font-size:12.0pt">Paul<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>