<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=utf-8"><meta name=Generator content="Microsoft Word 12 (filtered medium)"><style><!--
/* Font Definitions */
@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:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Balloon Text Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";}
span.BalloonTextChar
        {mso-style-name:"Balloon Text Char";
        mso-style-priority:99;
        mso-style-link:"Balloon Text";
        font-family:"Tahoma","sans-serif";}
span.EmailStyle20
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></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=blue vlink=purple><div class=WordSection1><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Hmm.  I haven't yet read it end-to-end & so maybe I've missed something, but I'm not seeing anything within the cited RFC that allows for arbitrary SSRC changes to occur mid-stream for a particular medium.  As far as I can tell, it just talks about multiplexing multiple streams within a session (== each stream should have its own unique SSRC), and also about changing codecs mid-stream (== essentially one stream ends and a new one begins, so a new SSRC *should* be generated).  But each SSRC should remain valid and constant for the entire life of any given stream within the session.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Even if it were valid, though, for an SSRC to suddenly change without the parameters of the medium also changing, I'm not clear on how that would present a problem?  You're essentially tracking 5 things: source IP, source port, dest IP, dest port, RTP SSRC.  If only one of the two IPs changes but the other remains the same & so does the SSRC, it's obviously still the same stream...right?<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>-- Nathan<o:p></o:p></span></p><p class=MsoNormal><a name="_MailEndCompose"><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></a></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> Jeff Brower [mailto:jbrower@signalogic.com] <br><b>Sent:</b> Monday, June 3, 2024 10:10 PM<br><b>To:</b> Richard Jobson<br><b>Cc:</b> Nathan Anderson; voiceops@voiceops.org<br><b>Subject:</b> Re: [VoiceOps] Has anyone seen this? Voice UCaaS application on iPhone generated call: switching source IP address mid-call with no SIP signaling to indicate<o:p></o:p></span></p></div></div><p class=MsoNormal><o:p> </o:p></p><p><span style='font-size:10.0pt;font-family:"Arial","sans-serif"'>Hi Richard-<br><br>I second your comment "this might be a systematic problem of wider interest". We have a number of LEA customers asking for a config option in our software to ignore IP address/port changes if SSRC stays the same. The problem with this though is RFC8108, which allows SSRC changes within a session. Tradeoffs.<br><br>-Jeff<br><br>Quoting Richard Jobson via VoiceOps <<a href="mailto:voiceops@voiceops.org">voiceops@voiceops.org</a>>:<o:p></o:p></span></p><blockquote style='border:none;border-left:solid blue 1.0pt;padding:0in 0in 0in 5.0pt;margin-left:.75pt;margin-top:5.0pt;margin-bottom:5.0pt'><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Hi Nathan<o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Thank you for your analysis & especially your “Hmm, maybe with scenario #2”, - roaming off Wi-Fi on to cellular ..<o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>I thought this might be of interest to the community as there are only so many Wireless IMS Network operators & UC/CCaaS apps are so popular, this might be a systematic problem of wider interest.<o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>these iPhone-originated calls are made by a vendor UC/CCaaS app over standard VoLTE/IMS Network via our ITSP softswitch/feature svr (same vendor as the UC App) our UCaaS core. It might be internet on the access/mobile side (as you say Wi-Fi) but its the carrier's IMS core/private network to us.<o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>It is NAT & IPv4<o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.5pt;font-family:"Calibri","sans-serif";color:black'>Many Thanks & Best Regards,</span><br><span style='font-size:10.5pt;font-family:"Calibri","sans-serif";color:black'>Richard Jobson<br>Teraquant Corporation<br>ph: 719 488 1003<br>d/l: (719) 766-8523<br><a href="http://www.teraquant.com/">www.teraquant.com</a><br><a href="mailto:richard@teraquant.com">richard@teraquant.com</a></span><br><span style='font-size:11.0pt;font-family:"Calibri","sans-serif"'><a href="https://www.linkedin.com/in/uc-expert-monitoring/">https://www.linkedin.com/in/uc-expert-monitoring/</a></span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.5pt;font-family:"Calibri","sans-serif";color:black'>Network Monitoring and Service Assurance - Speech Quality Experts (PESQ/POLQA) and Active Testing - Reporting – HPBX - Session Border Controllers – SASE and SD-WAN - Big Data Analytics, fraud detection and protection.</span><b><span style='font-family:"Calibri","sans-serif";color:black'> </span></b><o:p></o:p></p><div id=mail-editor-reference-message-container><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='mso-margin-top-alt:0in;margin-right:0in;margin-bottom:12.0pt;margin-left:.5in'><b><span style='color:black'>From:</span></b> <span style='color:black'>VoiceOps <<a href="mailto:voiceops-bounces@voiceops.org">voiceops-bounces@voiceops.org</a>> on behalf of Nathan Anderson via VoiceOps <<a href="mailto:voiceops@voiceops.org">voiceops@voiceops.org</a>><br><b>Date:</b> Monday, June 3, 2024 at 6:46</span><span style='font-family:"Arial","sans-serif";color:black'> </span><span style='color:black'>PM<br><b>To:</b> <a href="mailto:voiceops@voiceops.org">voiceops@voiceops.org</a> <<a href="mailto:voiceops@voiceops.org">voiceops@voiceops.org</a>><br><b>Subject:</b> Re: [VoiceOps] Has anyone seen this? Voice UCaaS application on iPhone generated call: switching source IP address mid-call with no SIP signaling to indicate</span><o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Slightly confused (based on your references to "Wireless IMS Network SBC") whether these iPhone-originated calls are just standard VoLTE/IMS calls being made by the native phone app and being carried by the carrier's IMS core, or whether these are SIP calls being sent to your own UCaaS core by your app over the carrier's regular internet/data APN.</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>If you are saying that you have direct-IP voice peering with one or more wireless carriers, and that iPhone users on those networks are calling numbers of yours & you are seeing the source IP of RTP traffic change mid-call, then I don't see how that can be anything *but* a carrier issue.  That said, I also don't see how that can be an iPhone-specific problem, either, or how you managed to arrive at that conclusion.  If you were to more closely look at logs related to calls where this is happening, I'd expect that you would find that 1) the problem is specific to a particular carrier, not a particular phone model, and 2) you'll find many calls coming from that one carrier across multiple phone models exhibiting the issue.  As to WHY the carrier might be doing this...I haven't the foggiest.</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>If you are saying you have iPhone users running an app of yours that is making outgoing SIP calls directly through your ITSP network over the carrier's internet APN, then ...I don't see how that could be anything but a carrier issue, either, honestly.  You didn't mention whether this was IPv4 or IPv6 though.  I'd be surprised if you saw this happening when the traffic is arriving to you via IPv6.  However, for IPv4 traffic, it would not surprise me.  Vast majority of carriers in the U.S. are handing out RFC1918 space IP addresses to end-user devices & putting them behind a masquerading NAT.  You'd expect that the NAT would try to retain the same source IP for the duration of a given session, but I would not be shocked to discover that the NAT configuration or the NAT engine itself is broken in some way, leading to this symptom.  (I'd also not be surprised to learn that the carriers simply couldn't care less if SIP traffic over the internet to their subscribers is unreliable, even though they've largely gotten to the point where voice services are no longer their primary money-maker...industry inertia and all that.)  If you don't already have your own ITSP service natively reachable over IPv6 yet, you might consider finally getting around to doing so...most of the major mobile carriers in the U.S. are dual-stacking these days, so if carrier-side IPv4 NAT is the cause, this would work around it for vast majority of users I'd think.</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Maybe you are trying to describe a different scenario than either of these, but I'm having trouble coming up with another one.  And in either case, I'm confused how you narrowed it down to iPhones, and not to a particular carrier?</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>(Hmm, maybe with scenario #2, is it possible the customer's phone is moving between the mobile data network and a local WiFi network while in the middle of a call?  You'd hope the phone would be smart enough to either keep the existing session on the same network interface that it began on [though that might be difficult in the case where it *started* on WiFi & the WiFi network disappeared / moved out of range], or at least properly notify the app that the network interface is changing, in which case the app could have a fighting chance of getting a re-INVITE sent out?  If you look at the source IPs involved, are they always the carrier's IPs, or are you seeing the traffic move between completely unrelated networks/ASes?)</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>-- Nathan</span><o:p></o:p></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><b><span style='font-family:"Tahoma","sans-serif"'>From:</span></b> <span style='font-family:"Tahoma","sans-serif"'>VoiceOps [<a href="mailto:voiceops-bounces@voiceops.org">mailto:voiceops-bounces@voiceops.org</a>] <b>On Behalf Of</b> Richard Jobson via VoiceOps<br><b>Sent:</b> Monday, June 3, 2024 11:08 AM<br><b>To:</b> <a href="mailto:voiceops@voiceops.org">voiceops@voiceops.org</a><br><b>Subject:</b> [VoiceOps] Has anyone seen this? Voice UCaaS application on iPhone generated call: switching source IP address mid-call with no SIP signaling to indicate</span><o:p></o:p></p></div></div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'>Just curious as to whether the community thinks this is a network configuration issue or a Mobile app issue<o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><span style='color:#212121'>This is either …</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><br><span style='color:#212121'>1.        Something to do with the app on the iPhone</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><span style='color:#212121'>2.       Or is the Wireless IMS Network SBC that is changing the srce IP Addr mid-call</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><span style='color:#212121'>3.            Or RTP has been routed to a different Wireless IMS Network SBC mid-call</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'>this behavior is totally noncompliant to the RFC.<o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'>The Oracle SBC in our ITSP network maintains the call up because the SSRC remains the same. However, when this happens, a second or third time it gets complicated .<o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;margin-left:.5in'><span style='font-size:10.5pt;font-family:"Calibri","sans-serif";color:black'>Richard Jobson<br>Teraquant Corporation<br>ph: 719 488 1003<br>d/l: (719) 766-8523<br><a href="http://www.teraquant.com/">www.teraquant.com<br>richard@teraquant.com</a></span><br><span style='font-size:11.0pt;font-family:"Calibri","sans-serif"'><a href="https://www.linkedin.com/in/uc-expert-monitoring/">https://www.linkedin.com/in/uc-expert-monitoring/</a></span><o:p></o:p></p></div></div></div></div></blockquote><p><span style='font-size:5.5pt;font-family:"Arial","sans-serif"'><o:p> </o:p></span></p></div></body></html>