好的,我们继续对TS 23.222的深度拆解。
这是系列文章的第四篇,我们将深入规范的第五章:相关业务关系 (Involved business relationships) 和 第六章:功能模型 (Functional model)。这两章是CAPIF(通用API框架)架构的核心,它们将抽象的需求转化为具体的、可视化的功能实体及其交互关系。
深度解析 3GPP TS 23.222:第五、六章 CAPIF的“生态圈”与“解剖图”
本文技术原理深度参考了3GPP TS 23.222 V18.7.0 (2024-12) Release 18规范中,作为规范核心架构定义的“Chapter 5 Involved business relationships”和“Chapter 6 Functional model”。本文旨在为读者描绘CAPIF框架下的“商业生态圈”和详细的“系统解剖图”。我们将从商业视角出发,理解各方角色如何建立合作,然后深入到技术层面,剖析构成CAPIF的每一个功能组件及其之间的标准接口。
引言:从“个体”到“生态”,API市场的商业逻辑与技术实现
在上一篇中,我们学习了CAPIF的“架构十诫”,知道了这个API市场必须遵循一系列严格的“法律法规”。现在,我们要从“法规”深入到“市场”的实际运作。一个成功的市场,不仅需要法规,更需要清晰的商业模式和高效的内部组织架构。
第五章和第六章,正是对这两方面的权威定义。
- 第五章 (Involved business relationships): 描绘了CAPIF生态圈中,不同“玩家”——API调用者、API提供者、CAPIF运营方、甚至最终用户——之间的商业合作关系。它回答了:“在这个市场里,大家是如何签约合作,并最终实现商业共赢的?”
- 第六章 (Functional model): 则是CAPIF框架的**“系统解剖图”。它将CAPIF这个复杂的系统,“解剖”成一个个独立的功能实体(Functions),并用标准化的参考点(Reference Points)**,清晰地定义了这些实体之间的信息交互“血管”和“神经”。
今天,我们将扮演“商业分析师”和“系统架构师”的双重角色。首先,我们将审视这个API市场的商业蓝图,然后,我们将拿起手术刀,深入到CAPIF的技术实现核心。
1. 第五章 Involved business relationships:API市场的“商业生态圈”
本章通过两张图,定义了CAPIF生态的基础商业关系。
1.1 5.1 Basic CAPIF business relationships (基础商业关系)
Figure 5.1-1: Business relationships in CAPIF
这张图描绘了一个最基础的“三方博弈”模型:
- API invoker (API调用者): 如“极客小创”的应用。
- CAPIF provider (CAPIF提供者): 运营商,即“API市场”的运营方。
- API provider (API提供者): 拥有网络能力并将其封装为API的实体(如NEF)。
- 关系解读:
- API invoker ←> CAPIF provider (Service Agreement): “小创”需要与运营商签订一份服务协议。这份协议规定了小创的开发者资质、可以访问的API范围、计费模式、服务等级(SLA)等。这是小创能够“入驻”市场的前提。
- API provider ←> CAPIF provider (Service API arrangement): NEF作为API的“生产商”,需要与CAPIF这个“市场方”达成上架协议。这份协议规定了NEF将哪些API上架到CAPIF,以及双方如何进行内部的协调和结算。
- API invoker → API provider (via CAPIF): 小创的应用,最终是通过CAPIF这个“市场中介”,来调用NEF提供的API的。
1.2 5.2 CAPIF business relationships for RNAA (涉及资源所有者的商业关系)
Figure 5.2-1: CAPIF business relationships for RNAA
RNAA(资源所有者感知的北向API访问)场景引入了第四方“玩家”——Resource owner (资源所有者)。
- 新角色: Resource owner,即用户美美。
- 新的关系:
- Resource owner ←> API provider (Resource Access Arrangement): 当一个API需要访问用户的私有资源时(如位置信息),必须存在一种授权安排。这意味着,API提供方(NEF)必须获得用户的同意(Consent)。
- 场景演绎:
- “小创”的应用(API invoker)与运营商(CAPIF provider)有服务协议。
- 运营商的NEF(API provider)与CAPIF有上架协议。
- 小创的应用想调用NEF的位置API,来获取美美(Resource owner)的位置。
- 此时,必须触发一个授权流程,让美美明确同意“小创的应用”可以访问她的位置。这个同意,就是
Resource Access Arrangement的体现。
第五章从商业层面,为CAPIF的技术实现,提供了清晰的业务逻辑输入。
2. 第六章 Functional model:CAPIF的“系统解剖图”
本章是TS 23.222的核心。它将CAPIF框架,解剖为一个个具体的功能实体和参考点。
2.1 6.2 & 6.3 功能实体描述 (Functional entities description)
Figure 6.2.0-1: Functional model for the CAPIF
这张图是CAPIF的“总解剖图”。它定义了CAPIF的“五脏六腑”:
- API invoker (6.3.2): API的“消费者”。
- CAPIF core function (6.3.3): CAPIF的“大脑”,提供核心的认证、授权、发现等服务。
- API exposing function (AEF) (6.3.4): API的“安全门禁”,是API的入口点,通常由NEF/SCEF扮演。
- API publishing function (APF) (6.3.5): API的“上架工具”。
- API management function (AMF) (6.3.6): API的“运营后台”。
- Authorization function (6.3.7): 负责OAuth 2.0等授权流程,通常是CAPIF核心功能的一部分。
- Resource owner function (ROF) (6.3.8): 在RNAA场景下,负责与用户交互以获取授权。
新概念:API provider domain: AEF, APF, AMF这三个功能,共同构成了“API提供者域”。它们可以与CAPIF核心功能合设(集中式部署),也可以分离部署(分布式部署)。
2.2 6.4 参考点 (Reference points):连接“五脏六腑”的“血管”与“神经”
本节是解剖图的“精华”。它用一系列CAPIF-x的编号,定义了功能实体之间所有标准化的“对话接口”。
-
API调用者相关的接口:
- CAPIF-1 (Internal) / CAPIF-1e (External): 连接API invoker与CAPIF core function。
- 作用:
Onboarding,Discovering service APIs,Obtaining authorization。小创的应用通过这个接口来完成入驻、发现API和获取令牌。
- 作用:
- CAPIF-2 (Internal) / CAPIF-2e (External): 连接API invoker与API exposing function (AEF)。
- 作用:
Invocation of service APIs。小创的应用带着令牌,通过这个接口来真正地调用业务API。
- 作用:
- CAPIF-1 (Internal) / CAPIF-1e (External): 连接API invoker与CAPIF core function。
-
API提供者相关的接口:
- CAPIF-3 / 3e: 连接AEF与CAPIF core function。
- 作用:
Authorization verification,Logging,Charging。AEF通过这个接口,向“大脑”验证令牌、上报日志和计费事件。
- 作用:
- CAPIF-4 / 4e: 连接APF与CAPIF core function。
- 作用:
Publishing the service APIs information。API提供者通过这个接口来“上架”API。
- 作用:
- CAPIF-5 / 5e: 连接AMF与CAPIF core function。
- 作用:
Management of service API。API提供者通过这个接口来管理已发布的API。
- 作用:
- CAPIF-3 / 3e: 连接AEF与CAPIF core function。
-
内部与互联接口:
- CAPIF-6 / 6e: CAPIF核心功能之间的互联接口,用于实现API的“漫游”。
- CAPIF-7 / 7e: AEF之间的互联接口,用于API调用的级联和拓扑隐藏。
- CAPIF-8: CAPIF核心功能(授权功能)与Resource owner function之间的接口,用于获取用户授权。
架构图景的清晰化: 这套参考点的定义,将一个模糊的“API管理”概念,转化为了一幅清晰、可实现、可标准化的工程蓝图。
- 职责分离: 每个参考点都承载了特定的功能,使得各实体间的职责边界一目了然。
- 标准化接口: 3GPP的Stage 3规范,会为这些参考点(特别是那些需要跨厂商互通的,如CAPIF-1e, 2e, 6e, 7e)定义具体的RESTful API协议。
3. 6.5 服务化接口 (Service-based interfaces):CAPIF的“现代语言”
Figure 6.2.0-3: CAPIF functional model representation using service-based interfaces Table 6.2.0-1: Service-based interfaces supported by CAPIF
本节展示了CAPIF架构在5G服务化架构(SBA)下的“现代形态”。参考点模型更像是传统的“点对点”接口,而服务化模型则更灵活。
- 核心服务:
- Cccf (CAPIF core function service): CAPIF核心功能向外暴露的服务。
- Caef (CAPIF API exposing function service): AEF向外暴露的服务。
- 交互模式: 在SBA中,CAPIF的各个功能实体,都被模型化为网络功能(NF)。它们之间通过向NRF(网络存储库功能)注册-发现对方的服务,然后进行API调用来交互,而不是通过固定的点对点接口。
- 示例:
- 一个APF想要发布API,它会先从NRF发现
Cccf服务的地址,然后调用该服务的Publish操作。 - 一个API invoker想要发现API,它会调用
Cccf服务的Discover操作。
- 一个APF想要发布API,它会先从NRF发现
FAQ环节
Q1:CAPIF的这些功能实体(CCF, AEF, APF, AMF)必须是独立的物理设备吗? A1:完全不必。它们是逻辑功能。在实际部署中,它们有多种可能的形态:
- 集中式部署 (7.2节): 一个强大的服务器集群,同时实现了CCF、AEF、APF、AMF的所有功能。对于外部调用者来说,这就是一个统一的“API网关”。
- 分布式部署 (7.3节): CAPIF核心功能(CCF)作为一个中央节点,而AEF、APF、AMF则可以作为独立的、分布在网络各处的微服务或功能。例如,每个省份的NEF都可以是一个独立的AEF实例。
- 云原生部署: 在5G网络中,这些功能都将被容器化,作为微服务按需部署和弹性伸缩。
Q2:参考点模型和Service-based模型是什么关系?为什么需要两种模型? A2:它们是描述同一种架构的两种不同视角,以适应不同的网络时代和设计哲学。
- 参考点模型: 更传统,更接近于我们熟悉的3G/4G网络中定义的“接口”(如Gx, Rx)。它清晰地描绘了两个实体间的“点对点”关系,便于理解和进行接口协议的标准化。
- Service-based模型: 是5G SBA的核心思想,更抽象,更灵活。它不再强调“点对点”的物理连接,而是强调“功能与服务”的“生产者-消费者”关系。 可以认为,参考点模型是SBA模型的一种具体实例或表现形式。TS 23.222同时提供这两种视图,是为了更好地衔接从4G到5G的架构演进。
Q3:CAPIF-1和CAPIF-1e有什么本质区别? A3:本质区别在于信任域(Trust Domain)的不同,这直接导致了它们在安全机制上的差异。
- CAPIF-1: 用于信任域内部的API调用者。运营商对这些调用者有较强的控制力,认证和授权机制可以相对简化。
- CAPIF-1e (
efor external): 用于信任域外部的API调用者(如来自公共互联网的应用)。这个接口必须部署在网络的“非军事区(DMZ)”,并施加最严格的安全防护,如DDoS攻击防护、深度包检测、更复杂的身份认证机制等。安全是e接口设计的首要考量。CAPIF-2和CAPIF-2e等也是同理。
Q4:为什么需要CAPIF-7(AEF之间的接口)?一个API的入口不应该只有一个吗? A4:CAPIF-7是为了支持一种被称为**“级联AEF(cascaded AEFs)”的高级部署模式,主要用于实现拓扑隐藏和能力聚合**。
- 场景: 运营商可能部署一个入口AEF(AEF-1)作为所有外部API调用的统一网关。当一个请求到达时,AEF-1负责进行统一的认证和初级策略控制。然后,它不直接调用后台服务,而是根据请求的类型,将请求转发给另一个专用的、处理具体业务的AEF(如AEF-2)。
- 价值: 这种级联模式,使得AEF-1可以对外部调用者,完全隐藏内部到底有多少个AEF、它们的地址是什么样的复杂拓扑。同时,AEF-1也可以聚合多个后台AEF的能力,对外呈现一个统一的服务视图。CAPIF-7正是定义了这些AEF之间进行请求转发的标准接口。
Q5:学习完第五、六章,我应该对CAPIF形成一个怎样的整体印象? A5:你应该形成这样一个印象:CAPIF是一个设计精良、层次分明、高度解耦的API治理框架。它通过将复杂的API生命周期管理,分解为API调用者、核心功能、暴露功能、发布功能、管理功能等多个逻辑实体,并通过一系列标准化的参考点(CAPIF-1/2/3/4/5…)来定义它们之间的交互,为实现一个安全、可控、可扩展、可运营的电信级API开放平台,提供了完整且可落地的Stage 2架构蓝图。