好的,我们继续进行深度拆解。这是本系列的第二十二篇文章,将聚焦于最后一个也是技术上最前沿的信令优化方案——Solution #20。
深度解析 3GPP TR 23.700-19:6.20 Solution #20: 通过P-CSCF中的IWK进行信令优化
本文技术原理深度参考了3GPP TR 23.700-19 V1.0.0 (2025-09) Release 20规范。在我们已经探索了从承载模型到IMS应用层(SIP简化、SDP预配置)的多种优化方案之后,本文将深入解读 6.20 Solution #20。这个方案可以看作是Solution #4(NIDD+I1协议)思想的另一种实现变体和延伸,它同样采用了二进制编码来替代文本SIP的核心思想,但将协议转换的重任,从核心网深处的AS/SCC-AS,重新拉回到了网络的入口——P-CSCF。
引言:当“翻译官”站在了“国境线”上
Alex的团队对Solution 4的“I1协议+SCC-AS”架构印象深刻,其极致的效率无可辩驳。但在讨论中,网络架构师老张再次提出了一个关于架构合理性的问题:“让所有卫星UE的信令都绕过P-CSCF,长途跋涉到核心网后端的SCC-AS去进行协议转换,是不是把信令路径拉得太长了?P-CSCF作为接入IMS的‘国门’,它本身就是处理接入差异性的最佳位置。我们能不能把‘翻译官’(协议转换功能)直接派驻到‘国境线’(P-CSCF)上,而不是设在遥远的‘首都’(SCC-AS)?”
这个“翻译官前置”的想法,正是Solution 20的核心。它提出,在P-CSCF内部集成一个IWK(Interworking Function,互通功能),这个IWK专门负责处理来自卫星UE的、经过二进制编码的“私有信令”,并将其与IMS核心网的标准SIP信令进行双向转换。
This solution addresses KI#2 to support IMS voice call over NB-IoT via GEO connecting to EPC. The following principles are applied to this solution:
- Binary encoding of SIP over UNI using the framework defined, e.g. in TS 24.294 for I1 encoding. The UNI reference point is labelled GEO Gm for the purpose of this solution.
规范明确指出,这是一个针对KI#2的IMS增强方案,其核心武器就是借鉴I1协议的框架,对UE和P-CSCF之间的接口(UNI,方案称之为GEO Gm)进行SIP信令的二进制编码。
1. 方案总纲:6.20.0 High-level solution Principles (高层解决方案原则)
本节用几个核心原则,清晰地阐述了Solution 20的设计哲学。
- Binary encoding of SIP over UNI using the framework defined, e.g. in TS 24.294 for I1 encoding…
- No restrictions are applied in this solution on UNI signalling in terms of what the UE negotiates, e.g. pre-conditions, 100rel, etc.
- Only necessary information elements are included in the UNI to enable interoperability…
- …the UE, and P-CSCF support for interworking purpose a UE proxy functionality during IMS call-related procedures… performs the following: Translation from binary encoded SIP to text-based SIP encoding and vice versa.
Alex为团队解读这些原则的深刻含义:
-
“使用I1编码框架对SIP进行二进制编码”:
- 这是方案的核心技术手段。它不像Solution 4那样完全用I1协议替代SIP,而是更像一种“SIP over I1 Codec”的模式。UE和P-CSCF之间传递的依然是逻辑上的SIP消息(如INVITE, 183),但这些消息不再是文本格式,而是被“压缩”成了类似I1协议那样的紧凑二进制格式。
-
“对UE协商的内容(如pre-conditions, 100rel)不加限制”:
- 这是一个关键的设计灵活性。方案本身不强制要求禁用前置条件或简化流程。UE依然可以根据需要,与网络协商完整的功能。二进制编码只是作为一种“透明”的压缩传输层,它不改变上层SIP的业务逻辑。
-
“UNI中只包含必要的信息元素”:
- 这继承了Solution 15的“极简消息”思想。在进行二进制编码时,那些P-CSCF已知或可以推断的冗余信息将被剔除,只对“最小完备集”进行编码。
-
“UE和P-CSCF支持一个UE代理功能…进行二进制SIP和文本SIP之间的转换”:
- 这明确了实现机制。P-CSCF内部的这个IWK,扮演了一个“UE代理”的角色。对核心网而言,它看起来就像一个UE;对UE而言,它看起来就像整个IMS网络。它在这两者之间,进行着实时的“编码”与“解码”。
“所以,Solution 20的架构,” Alex总结道,“可以看作是Solution #4(I1+SCC-AS)和Solution #12(P-CSCF B2BUA)的一次精妙融合。它采纳了Solution 4的‘二进制编码’高效传输思想,但将实现这一功能的实体,从遥远的SCC-AS,拉回到了更合理的网络入口——P-CSCF,这又与Solution 12的‘边缘智能’思想不谋而合。”
2. 方案详述:6.20.1 Description - P-CSCF中的“UE代理”
本节通过功能架构图和协议消息结构,详细描述了这个方案的运作机制。
The Figure below depicts the functional architecture for this solution. In this architecture; GEO Gm is the new reference point for the UNI for binary encoding of SIP using the TS 24.294 framework. GEO P-CSCF is the P-CSCF that performs the necessary interworking between the GEO Gm and Mw…
- 新的参考点 GEO Gm: UE与P-CSCF之间的这个新的、承载二进制SIP的接口,被命名为
GEO Gm。 - IWK功能: P-CSCF内部的IWK(或称UE Proxy)是连接
GEO Gm(对UE)和Mw(对S-CSCF)的桥梁。
IMS Registration over the GEO Gm reference point is performed as is today… No binary encoding is performed.
这是一个非常重要的实现细节。方案提出,为了简化和兼容,IMS注册(REGISTER)流程依然走标准的、文本格式的Gm接口。只有在**通话相关的流程(Call-related procedures)**中,才启用二进制编码的GEO Gm接口。P-CSCF可以为此提供两个不同的端口,并通过PCO在PDN建立时告知UE。
二进制消息结构 (Figure 6.20.1-1: I1 message structure)
方案直接借鉴了I1协议的消息结构来封装二进制SIP信息。一个典型的消息包结构如下:
- Octet 1-3: 协议版本、消息类型、原因值等头部信息。
- Octet 4-7: 呼叫标识符 (Call-Identifier) 和序列号 (Sequence-ID)。
- 后续Octets: 一系列TLV(Type-Length-Value)格式的信息元素(IEs),用于承载具体的SIP头域内容。
Table 6.20.1-1 和 Table 6.20.1-2 详细定义了在NIDD和IP两种底层传输模式下,建议包含的IEs。例如:
To-id,From-id: 对应SIP的To/From头。Precondition & Codec Negotiation: 一个专门的IE,用几个字节的位图(bitmap),来高效地表示复杂的编解码器和前置条件协商状态。AGW-MediaIPAddress: 用于承载媒体网关的IP地址。
通过这种方式,原本几百上千字节的文本SDP,可能被压缩成几十个字节的二进制IE。
3. 流程剖析:6.20.2 Procedures - 二进制世界的通话
本节通过详细的呼叫流程图,展示了IWK在P-CSCF中是如何工作的。
3.1 呼叫发起流程 (Figure 6.20.2.1-1: Originating IMS Session)
-
UE → P-CSCF (GEO Gm接口):
- Evelyn博士发起呼叫。
- UE的“UE Proxy”功能模块,将一个逻辑上的SIP
INVITE请求(包含SDP Offer),编码成一个紧凑的二进制GEO Gm INVITE消息。 - 这个二进制消息通过底层承载(IP或NIDD)发送给P-CSCF。
-
P-CSCF内部的IWK:
- P-CSCF收到二进制消息。
- 其内部的IWK模块开始工作,进行“解码”和“翻译”:
- 解析二进制消息的各个IEs。
- 根据解析出的信息,重新构建出一个完整的、符合RFC标准的文本SIP
INVITE消息。 - IWK会像B2BUA一样,补全必要的头域(如
Via,Route等),并管理内外两个呼叫段的关联。
-
P-CSCF → S-CSCF (Mw接口):
- IWK将构建好的标准文本
INVITE,通过P-CSCF的常规SIP处理逻辑,发往S-CSCF。
- IWK将构建好的标准文本
-
反向流程 (网络 → UE):
- 当P-CSCF从核心网收到一个标准的文本SIP响应(如
183 Session Progress)时,IWK会执行反向操作。 - 它解析文本消息,提取核心信息,然后编码成一个二进制的
GEO Gm Progress消息,通过GEO Gm接口发给UE。
- 当P-CSCF从核心网收到一个标准的文本SIP响应(如
The P-CSCF sends a GEO Gm progress message to the UE that includes the IEs per the column entitled “IE included in Geo Gm” under the “183 with SDP (DL)” banner in Table 6.20.2.1-1.
规范在后续的一系列表格(Table 6.20.2.1-1 到 6.20.2.2-4)中,以惊人的细节度,逐一描述了在INVITE, 183, PRACK, UPDATE, 180, 200 OK等每一个消息交互步骤中,哪些SIP头域需要被包含在二进制IE中,以及P-CSCF在双向转换时需要执行的具体操作(如“存储并使用”、“移除”、“生成新的”等)。这为开发者提供了一份详尽的实现指南。
3.2 呼叫建立时间估算 (6.20.2.4 IMS Session Setup Time calculation)
与Solution 15类似,本方案也对优化效果进行了量化。 Table 6.20.2.4.1-1 显示了在NIDD传输下的呼叫建立时间(到180 Ringing):
- 总信令尺寸 (二进制): 仅171字节(相比Solution 15简化SIP后的1359字节,又减少了近90%!)。
- CST (Call Setup Time): 在1kbps速率下,估算约为 3.05秒(信令传输时间)+ 传播延迟。
Table 6.20.2.4.2-1 显示了在IP传输下的呼叫建立时间:
- 总信令尺寸 (二进制+IP头): 约725字节。
- CST: 在1kbps速率下,估算约为 3.45秒 + 传播延迟。
“看到了吗?” Alex向团队展示这些数字,“通过二进制编码,我们将呼叫建立的信令传输时间,压缩到了3-4秒的量级。这几乎是所有方案中理论上的最优性能。这证明了‘二进制革命’的巨大威力。”
4. 影响分析:6.20.3 Impacts to Services, Entities and Interfaces
Solution 20的改动,与Solution 12一样,再次高度集中于UE和P-CSCF。
- UE:
- 核心改动: 需要实现一个“UE Proxy”或IWK功能,能够将逻辑SIP消息编码成二进制格式,并能解码收到的二进制消息。
- P-CSCF:
- 核心改动: 需要集成一个功能强大的IWK (Interworking Function),具备双向的二进制SIP与文本SIP的编解码和翻译能力。
- 需要像B2BUA一样,管理两个呼叫段的状态和关联。
- 其他网络节点:
- 无影响。 IWK的引入,使得P-CSCF对后端的IMS核心网而言,其行为与一个标准的P-CSCF完全一致。
5. 结论:“翻译官前置”的最终形态
Alex最后对Solution 20进行了总结:“Solution 20为我们展示了在P-CSCF上实现信令优化的‘最终形态’。它不再满足于对文本SIP的‘修修补补’,而是直接引入了二进制编码这一‘降维打击’武器,将信令效率推向了极致。”
“它的优点是极致的性能和优雅的架构:”
- “最高的信令效率: 通过借鉴I1的二进制编码框架,它实现了所有方案中最低的信令开销和理论上最快的呼叫建立时间。”
- “架构位置合理: 将协议转换的IWK功能放置在网络入口P-CSCF,符合‘接入问题在接入点解决’的设计哲学,使得信令路径最短,处理最直接。”
- “灵活性与兼容性兼备: 方案不强制改变上层SIP业务逻辑(如precondition),并通过IWK完美地将优化对核心网屏蔽,实现了很好的平衡。”
“其挑战,则完全集中在P-CSCF的实现复杂性上:”
- “P-CSCF的重度增强: P-CSCF需要集成和维护一套全新的、复杂的二进制协议栈(IWK),并执行有状态的B2BUA转换逻辑。这对P-CSCF的软件开发、测试和性能都提出了极高的要求。”
- “标准化的工作量: 需要为
GEO Gm接口定义一套完整的、可扩展的二进制编码规范,这是一项艰巨的标准化任务。”
“总而言之,Solution 20代表了通过边缘智能实现极致性能的典范。它与Solution #15(文本简化)相比,是‘量变到质变’的飞跃。如果说Solution 15是最好的‘文本编辑’,那么Solution 20就是‘机器翻译’。在追求极致性能的道路上,Solution 20无疑为我们指明了一个技术上最前沿、也最令人兴奋的方向。”
FAQ
Q1:Solution 20与Solution #4(I1+SCC-AS)的核心思想有何异同? A1:
- 相同点: 两者都认识到文本SIP效率低下,都采用了借鉴I1协议进行二进制编码的核心思想来解决问题。
- 不同点: 最大的不同在于实现协议转换的网元位置不同。Solution 4将转换功能放在了核心网后端的SCC-AS,信令路径长,且绕过了P-CSCF。而Solution 20则将转换功能(IWK)前置到了网络入口的P-CSCF,信令路径短,架构更符合IMS的标准拓扑。
Q2:方案中提到的“二进制编码SIP”和“I1协议”是什么关系? A2:可以理解为“借鉴”与“实现”的关系。I1协议(定义在TS 24.294)是一套完整的、用于CS-IMS互通的二进制信令协议。Solution 20并不是要完整地实现I1协议,而是借鉴I1协议的消息封装框架和编码思想,来为标准的SIP消息“穿上一件二进制的外衣”。它定义了如何将SIP的各个头域和SDP内容,映射为I1风格的二进制信息元素(IEs),从而实现压缩。所以,它本质上还是在传递SIP的逻辑,只是换了一种编码格式。
Q3:为什么IMS注册流程不使用二进制编码,而通话流程要使用?
A3:这是一种出于简化实现和兼容性的务实考虑。IMS注册流程相对固定,交互次数不多,且可能涉及到与网络中多个不同实体(如鉴权服务器)的复杂交互。对其进行二进制改造的收益有限,但复杂性很高。而通话流程(INVITE、183等)消息体大(带SDP)、交互频繁、且对时延极为敏感,是性能的主要瓶颈。因此,方案选择“好钢用在刀刃上”,只对最影响性能的通话流程进行二进制优化,而让注册流程保持标准,这样既获得了最大的性能收益,又降低了整体的实现和互通风险。
Q4:P-CSCF内部的IWK(互通功能)和B2BUA是什么关系?
A4:在这个方案中,IWK是实现B2BUA功能的一个具体的功能模块。B2BUA是一个逻辑概念,指一个实体能够终结一个呼叫段并发起另一个。而IWK则是P-CSCF内部那个负责“翻译”工作的物理或逻辑实体,它通过对GEO Gm接口的二进制信令和Mw接口的文本信令进行双向的编解码和转换,从而在行为上使P-CSCF表现得像一个B2BUA。
Q5:Solution 20估算的3-4秒呼叫建立时间是否真实可信? A5:这个数字是基于一系列理想假设的理论估算值,代表了信令传输部分的耗时,实际端到端时间会更长。这些假设包括:1kbps的稳定可用带宽、无丢包重传、极简的消息集等。实际的端到端呼叫建立时间(CST)还需要叠加上GEO的物理传播延迟(往返>540ms)、核心网内部处理时延、以及可能的底层承载建立时延。尽管如此,这个数字依然极具参考价值,因为它横向对比了不同方案在同等条件下的信令效率。它证明了二进制编码相比文本简化(如Solution 15的10-15秒),在信令传输效率上至少有一个数量级的提升。