基于SIP应用服务器的IMS业务提供方法的初步研究

2024-02-06 00:08

本文主要是介绍基于SIP应用服务器的IMS业务提供方法的初步研究,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

摘要: IP 多媒体子系统( IMS)由于实现了用户平面、控制平面、业务平面的分离,可以方便地向用户提供业务。本文将着重分析 SIP 应用 服务器(SIP AS)在IMS业务提供过程中的相关问题,从业务提供的一般过程,业务层面的计费功能,技术难点几个方面进行探讨,并结合IMS提供的一种具体业务(消息类业务)进行分析。

  关键词: IMS、SIP、SIP AS、计费、消息

  1.引言

   3GPP Rel-5开始定义的IP多媒体子系统(IMS),实现了用户平面、控制平面、业务平面的分离,使得业务的提供独立于下层的承载 网络。在业务平面,AS(Application Server)提供业务逻辑,用来支持用户的各种业务属性。IMS的业务功能架构如下图所示:



   运营商可以向它的IMS签约用户提供接入基于CAMEL业务环境、OSA以及SIP AS的业务。这其中SIP AS为基于SIP的应用服务器。由于S-CSCF和业务平台之间的ISC接口采用SIP协议,因此SIP AS可以直接和S-CSCF进行通信,而无需 信令转换过程。SIP AS可以提供广泛的增值多媒体业务,如呈现、消息、会议等。本文将从SIP AS开展IMS业务的一般过程,技术难点以及计费相关等方面进行探讨,并以消息类业务为例进行分析。

  2.基于SIP AS的业务提供的一般过程

  IMS的提出是为了基于IP向用户提供更为优质、廉价的多媒体业务和应用。应用服务器(AS)在业务提供过程中扮演了业务执行者的角色。业务的提供过程可分为下列四个步骤(这里假设从会话的发起侧考虑):

  1)IMS业务档案的下载

  在用户注册的过程中,一个包含业务和用户相关数据的业务档案由HSS下载到服务于此用户S-CSCF中。业务档案中的初始过滤准则,包含了是否将用户的请求路由到相关的AS的触发信息。在这里,触发信息可能是根据请求消息的请求URI(例如一个 语音信箱voice@ims.com)或请求的类型(如立即消息的MESSAGE请求)等来制定。

  2)用户请求的生成

  用户需要某种业务时,利用自己的设备生成相关的请求。例如,用户想要建立一个语音通话。他利用UE生成一个INVITE请求(包含请求URI,媒体描述等信息),这条请求经P-CSCF,到达服务于他的S-CSCF。

  注:关于路由过程等控制层面的相关内容本文不进行讨论。

  3)AS的选择

  用户的请求到达S-CSCF后,S-CSCF检索与请求的发起者匹配的业务档案。根据业务档案中的初始过滤准则,S-CSCF决定将请求路由到相应的AS或是直接进行转发。

  4)AS执行相关的服务

  在收到请求后,AS开始执行相关的服务。为了开展服务,AS可以工作在以下四种模式:

  终止UA—在这种模式下,AS充当了UE。比如,在消息类业务中,假设消息的接收方设置了某种过滤的准则,当其得到满足时,AS可能会代表接收方生成一个最终响应这时AS是作为一个SIP UA。如图2。

  重定向服务器—AS将用户的新位置或可能满足的会话替代服务通知给发起方。例如,当满足一定的触发条件(比如接收方暂时不可达),S-CSCF可能将请求路由到一个特定的AS,该AS将请求重定向到一个e-mail或语音信箱。如图2。




  SIP代理—AS对请求进行处理,然后将请求发回S-CSCF。在处理期间,AS可能会对SIP请求中的消息头内容进行相关的添加、修改或删除。如图3。
第三方呼叫控制—AS在一个不同的SIP对话中产生一个新的SIP请求,并发送到S-CSCF。如图5。




  另外,AS也可能充当发起UA。比如,对于会议业务,作为会议服务器的AS,可能会在一个约定好的时间向预先确定的会议参与者发送SIP INVITE请求,以建立一个会议呼叫。如图5。

  除了以上描述的过程,在业务提供的过程中,用户有时需要管理和配置与业务有关的信息。例如在会议业务中,用户希望邀请新的用户加入会议。这可以通过用户(UE)与AS之间的Ut接口实现。通过Ut接口管理用户业务相关信息的功能架构如下图(图6)所示:




  3.业务层面计费功能

  IMS的体系结构(三个平面的划分)决定了IMS的计费功能应当从承载层、控制层、业务层进行描述。IMS体系既支持在线计费能力,也支持离线计费能力。在线计费就是线计费系统与IMS实体进行实时交互,并控制和监视与业务使用有关的计费过程。离线计费主要是指在会话之后收集计费信息,而且计费系统不会实时地影响所使用的业务。所有的IMS网元都要求应用离线计费,而业务层面的AS同时要求应用在线计费。

  在业务层面,要求 AS能够区分何时采用在线计费或离线计费,采用在线计费时AS通过Rf接口将计费信息发往OCS(Online Charging System),采用离线计费时AS通过Ro参考点将计费信息发往CCF(Charging Collection Function)。业务层面的计费功能示意图如图所示(图7)。

  在Rf和Ro接口,AS均使用DIAMETER协议的ACR消息发送计费信息到OCS或CCF,并应用DIAMETER协议的ACA消息从OCS或CCF接收应答。

  计费的方式多种多样,取决于所应用的业务和运营商指定的策略。例如,对于会议类业务,可以根据会议的规模(参加人数等因素),所采用的媒体的形式,会议的时间等进行计费。

  4.技术难点分析

  目前IMS有很多的技术上的难点,比如说控制层面移动网络和固定网络的 融合,不同域之间端到端的 QoS保证体系。

  对于业务层面,如何基于SIP协议实现各种业务,比如说AS如何进行相关的通知机制,这可能涉及新的SIP扩展的制定等;多业务平台之间信息的共享,比如说用户的呈现信息如何在会议、消息类业务平台之间共享;用户同时触发多种业务时,认证方式及用户数据的安全问题,例如用户触发每一项业务是否都需要业务认证才能访问业务;运营商的业务管理策略等。

  5.IMS提供的业务举例

  本小节将以消息类业务为例,结合本文2、3小节的内容分析SIP AS在IMS业务提供过程中的相关问题。

  消息类业务对用户来讲已经非常的熟悉。一般来说,消息业务允许一个实体向另一个实体发送消息。目前,在中国大行其道的QQ聊天系统以及 移动通信领域的多媒体消息业务( MMS)都属于消息业务的范畴。IMS的消息类业务将带给用户更多的选择,用户可以随心所欲而且费用低廉地使用多种媒体方式,比如文本、视频和声音等,同时可以灵活地选用实时业务或非实时业务来沟通信息。

  IMS消息业务包括三种形式:
  - 立即消息
  - 基于会话的消息
  - 延迟传递的消息

  下面以立即消息为例进行讨论。立即消息要求在通信双方之间近似实时的传递消息。立即消息内容包含在MESSAGE请求当中。

  按照2小节中所述的内容,假设业务档案已经下载到S-CSCF中。

  首先,用户设备(UE)需生成一个MESSAGE请求,填入所需的内容——文字或多媒体片断(声音,图片等),同时将请求URI填写为接收者的地址。该请求接下来就使用与INVITE请求类似的方式在IMS系统中转发,直到这个立即消息到达目的UE。要求双方UE支持MESSAGE方法。

  然后,MESSAGE请求到达S-CSCF,S-CSCF按照业务档案中的触发信息(例如根据请求类型为MESSAGE)将该请求路由到一个SIP AS由其执行业务。这要求SIP AS必须支持MESSAGE方法。

  接着,AS执行一定的业务逻辑。例如,当目的UE暂时不可达时,AS可能会为UE保留MESSAGE请求,并在UE可达时进行提交。对于群发消息(多个接受方),这时AS可能作为一个中间节点,它有一个称为公共业务标识(PSI)的SIP URI,并维护一个用户列表。发起UE的请求URI即为公共业务标识(PSI)。消息到达AS后,由它将消息发往列表中的用户。

  SIP AS可能工作于本文2小节所述的某种模式下,有时也可能是几种模式的结合。例如拒绝会话时,它工作于终止UA的模式下。

  关于计费——可以根据所发消息的数量,所采用的媒体的形式,消息的大小等进行计费。例如,当用户A向B发送一条立即消息,消息内容为一段视频,大小为500 Bytes.假设计费是按消息的大小,100 Bytes收费¥0.05。AS收到用户发送的立即消息时,AS会向OCS发送一个计费请求,并将所提供的服务通知给(即发送一条500 Bytes 的消息)OCS,OCS执行其功能从用户帐户扣掉¥0.25。

  6.结束语

  在IMS的业务层面,利用SIP AS,运营商可以方便地向用户提供业务,而用户可以更为低廉地传输多媒体信息。SIP AS在这其中扮演了业务执行者的角色。目前,关于IMS 的业务提供体系,计费相关功能架构都已初步形成,但是其中一些具体的问题,如文中提到的一些技术难点,仍然需要进行细致的研究。

  IMS作为移动通信领域未来的发展方向,正吸引着越来越多的关注。普天信息技术研究院作为TD-SCDMA产业联盟的重要成员之一,正积极地进行IMS系统的研发工作,最终将向运营商提供完善的IMS系统解决方案。

参考文献

[1]Miikka Poiskselka,Georg Mayer,Hisham,Khartbil,Aki Niemi. The IMS: IP multimedia Concepts and Services in the Mobile Domain, June, 2004
[2]3GPP TS 23.228: "IP Multimedia Subsystem(IMS); Stage 2".
[3]3GPP TS 32.260: "Charging management; IP Multimedia Subsystem(IMS) charging ".
[4]3GPP TS 22.340: " IP Multimedia Subsystem(IMS) messaging; Stage 1".
[5]3GPP TS 24.229: " IP Multimedia Call Control Protocol based on Session Initiation Protocol(SIP) and Session Description Protocol (SDP); Stage 3". 作者:韩磊 盛云鹏   来源:由CHINA通信网组稿

这篇关于基于SIP应用服务器的IMS业务提供方法的初步研究的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/682586

相关文章

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

Pandas统计每行数据中的空值的方法示例

《Pandas统计每行数据中的空值的方法示例》处理缺失数据(NaN值)是一个非常常见的问题,本文主要介绍了Pandas统计每行数据中的空值的方法示例,具有一定的参考价值,感兴趣的可以了解一下... 目录什么是空值?为什么要统计空值?准备工作创建示例数据统计每行空值数量进一步分析www.chinasem.cn处

Windows 上如果忘记了 MySQL 密码 重置密码的两种方法

《Windows上如果忘记了MySQL密码重置密码的两种方法》:本文主要介绍Windows上如果忘记了MySQL密码重置密码的两种方法,本文通过两种方法结合实例代码给大家介绍的非常详细,感... 目录方法 1:以跳过权限验证模式启动 mysql 并重置密码方法 2:使用 my.ini 文件的临时配置在 Wi

MySQL重复数据处理的七种高效方法

《MySQL重复数据处理的七种高效方法》你是不是也曾遇到过这样的烦恼:明明系统测试时一切正常,上线后却频频出现重复数据,大批量导数据时,总有那么几条不听话的记录导致整个事务莫名回滚,今天,我就跟大家分... 目录1. 重复数据插入问题分析1.1 问题本质1.2 常见场景图2. 基础解决方案:使用异常捕获3.

最详细安装 PostgreSQL方法及常见问题解决

《最详细安装PostgreSQL方法及常见问题解决》:本文主要介绍最详细安装PostgreSQL方法及常见问题解决,介绍了在Windows系统上安装PostgreSQL及Linux系统上安装Po... 目录一、在 Windows 系统上安装 PostgreSQL1. 下载 PostgreSQL 安装包2.

SQL中redo log 刷⼊磁盘的常见方法

《SQL中redolog刷⼊磁盘的常见方法》本文主要介绍了SQL中redolog刷⼊磁盘的常见方法,将redolog刷入磁盘的方法确保了数据的持久性和一致性,下面就来具体介绍一下,感兴趣的可以了解... 目录Redo Log 刷入磁盘的方法Redo Log 刷入磁盘的过程代码示例(伪代码)在数据库系统中,r

Python实现图片分割的多种方法总结

《Python实现图片分割的多种方法总结》图片分割是图像处理中的一个重要任务,它的目标是将图像划分为多个区域或者对象,本文为大家整理了一些常用的分割方法,大家可以根据需求自行选择... 目录1. 基于传统图像处理的分割方法(1) 使用固定阈值分割图片(2) 自适应阈值分割(3) 使用图像边缘检测分割(4)

Java中Switch Case多个条件处理方法举例

《Java中SwitchCase多个条件处理方法举例》Java中switch语句用于根据变量值执行不同代码块,适用于多个条件的处理,:本文主要介绍Java中SwitchCase多个条件处理的相... 目录前言基本语法处理多个条件示例1:合并相同代码的多个case示例2:通过字符串合并多个case进阶用法使用

Python中__init__方法使用的深度解析

《Python中__init__方法使用的深度解析》在Python的面向对象编程(OOP)体系中,__init__方法如同建造房屋时的奠基仪式——它定义了对象诞生时的初始状态,下面我们就来深入了解下_... 目录一、__init__的基因图谱二、初始化过程的魔法时刻继承链中的初始化顺序self参数的奥秘默认

html5的响应式布局的方法示例详解

《html5的响应式布局的方法示例详解》:本文主要介绍了HTML5中使用媒体查询和Flexbox进行响应式布局的方法,简要介绍了CSSGrid布局的基础知识和如何实现自动换行的网格布局,详细内容请阅读本文,希望能对你有所帮助... 一 使用媒体查询响应式布局        使用的参数@media这是常用的