LTE网络中IMS/SIP的总体数据路径
SIP通信路径
SIP消息传递路径
我参加了几个IMS培训课程。我注意到讲师和听众最常见的问题是“在这种或那种情况下,我的IMS语音/数据如何传递给另一方?”
答案永远不会结束,问题永远不会停止……很容易消耗掉大部分的训练时间。
这可能是一个重要的问题和答案,对于理解IMS机制的细节是必要的,但是要对这类问题给出“简短而清晰”的答案并不容易,因为每种情况可能有很多变化。
因此,我的目的不是为“IMS数据路径”提供任何单一的可靠答案,而是为您提供有关IMS数据传递的一些指导方针(或思维逻辑)。
首先,我希望您熟悉下面的图表。
有几个常见的规则可以帮助您自己获得数据路径的答案。
i)所有LTE数据和所有LTE信令消息必须首先通过eNodeB。
ii)所有LTE数据(用户数据)必须经过S-GW和P-GW。(注:在LTE网络中,IMS信令和IMS数据都被视为用户数据。这一点很重要,可以消除很多困惑)。
iii)所有IMS信令消息必须经过P-CSCF
iv) IMS数据(如语音、视频)可能不通过任何CSCF。
v)每次注册IMS时,IMS消息(注册消息)通过P-CSCF和S-CSCF与HSS对话,检查用户是否为IMS业务用户。
vi)当您(IMS话机UA1)与其他IMS话机(UA3)通话时,IMS核心需要检查对方(UA2)是否为IMS用户并已注册到IMS核心。检查所有这些状态是I-CSCF的工作。
vii)当您(IMS电话,UA1)想要与另一个电话通话时,首先您的网络应该检查另一方(电话)是IMS电话还是家庭电话或只是传统的IP电话,ENUM的工作是检查这种状态。
viii)每当服务被启动(由UA请求)时,如果用户允许请求的服务,CSCF将与PCRF交谈。
记住这些规则(我很确定我可能会错过规则),请打印出上面的图表并设置一个特定的场景(例如,“我想从UA1打电话到UA2”或从UA1打电话到UA3等),并绘制数据路径的线条。不要担心出错。你可能在几个点上是错误的,但如果你应用上面列出的规则,你至少有70%以上是正确的。
本节将向您展示SIP通信的整个过程。
请看下面的插图。我把两个假想的域名分别命名为ims.myims.com和ims.yourrims.com。该图显示了两个用户代理(UA1、UA2)已经在注册系统中注册的情况下的总体注册情况。通常我们将SIP通信系统中的注册代理称为Registra
在上面的插图中,我们考虑UA1调用UA2的情况。
(1) UA1向UA2发起SIP呼叫。这个调用请求首先到达代理(一种协调器)。类似于IMS中的CSCF)
(2)代理向数据库(HSS)查询UA1、UA2的信息,HSS包含域内所有ua的注册信息和策略。
(3)代理接收来自HSS的信息。
(4)如果UA2已经注册,并且策略允许UA1和UA2之间的通信。代理发送警报到UA2说:“嘿……有人找你说话!”
(5)如果UA2准备谈判,则向代理发送“确认”。
(6)代理通知UA1确认。
(7)现在通话设置完成,UA1和UA2可以互相通话。
现在让我们考虑一下比之前的情况更复杂的问题。正如您在下面的插图中看到的,这个示例中涉及到两个不同的域。一个UA(UA4)尝试呼叫属于不同域的另一个UA(UA1)。
现在让我们看看通信设置的每个步骤。
(1)域ims.yourims.com中的UA4向域ims.myims.com中的UA1发起SIP呼叫。此调用请求首先到达代理。代理发现请求的目的地在当前域之外。
(2)代理(proxy2)查询DNS服务器,查找目的域代理的地址。
(3) Proxy2得到DNS的应答。现在代理2知道目标域中代理(代理1)的地址。
(4) Proxy2将呼叫设置请求转移到代理1,说“我域中的某人(UA4)想要与您域中的某人(UA1)交谈”。
(5) Proxy1向数据库(HSS)查询UA1的信息,HSS包含域内所有ua的所有注册信息和策略。
(6)代理从HSS接收信息。
(7)如果UA1已经注册,并且政策允许UA1和UA4之间的通信。代理发送警报到UA1说:“嘿…有人找你说话!”
(8)如果UA1准备对话,则向代理发送“确认”。
(9) Proxy1通知Proxy2确认。
(10) Proxy2将确认信息转发给UA4
(11)现在通话设置完成,UA4和UA1互相通话。
联系客服