Introduction
本文包含以下内容:
- 简单介绍PacketCable2.0的框架;
- 主要介绍E-UE的相关功能;
- PC2.0测试环境的搭建指导;
Related Abbreviations
本篇正文中使用的缩写词罗列如下:
CSCF Call Session Control Function DSM Dual-Stack Mode //E-UE初始化模式,需要分别获取IPv4和IPv6 2个地址 E-UE Embedded User Equipment IMS IP Multimedia Subsystem P-CSCF Proxy Call Session Control Function SSM Single-Stack Mode //E-UE初始化模式,仅需获取IPv4或IPv6一个地址 UE User Equipment
其余部分参照PC1.5 Abbreviations
Architecture
PC2.0基于IMS(IP Multimedia Subsystem)架构。 PC2.0将IMS作为它架构中的核心部分,并针对packetcable的应用进行了一些功能扩充。
上图包含了PC2.0架构中的主要逻辑功能组件,网络中的每个节点可以包含一个或多个组件。
上图红色框的部分即可认为是一个E-UE,主要围绕它来介绍。
- Local Network
这部分主要包含UE,这和PC1.5的MTA概念相似。只是MTA仅指NCS-based的电话服务物理设备,而UE则是SIP-based,接入方式更多样(CableAccess/WiFi/Fixed/Mobile...),支持更多服务(Audio/Media/InstantMessage...)的设备。PC2.0可同时包含MTA和UE(??TODO)。
- Access Network
接入Cable Access Network或者其他可用网络(WiFi/3G..)
- Edge
- P-CSCF 这是IMS访问网络的统一入口点,所有IMS终端(比如UE)发起和终止于IMS终端的会话消息都要通过P-CSCF。
从SIP的角度来看它是一个出站/入站的SIP代理服务器,所有的SIP信令,无论是来自UE,还是发送给UE的,都必须经过P-CSCF。
P-CSCF具有以下功能:
- Routing SIP messages from the UE to the I-CSCF or S-CSCF and vice versa;
转发从UE接收的SIP注册请求到由UE归属域名决定的I-CSCF;转发从UE接收的SIP消息到S-CSCF;
- Maintaining security associations between itself and the UE and asserting the identity of authenticated Public User Identities;
负责维持UE和P-CSCF之间的安全关联以及为SIP信令应用完整性和机密性保护
- Interacting with the PacketCable Application Manager for QoS management;
和策略决策功能(PDF)交互,授权承载资源并进行QOS管理
- Providing functionality to allow the UE to traverse NATs and maintain NAT bindings for SIP signaling;
- Generation of accounting correlation IDs and Accounting Events.
- Routing SIP messages from the UE to the I-CSCF or S-CSCF and vice versa;
- STUN and TURN Servers
用于连接在NAT下的UE提供NAT穿越
- PacetCable Application Manager
管理Session的QoS资源
- P-CSCF 这是IMS访问网络的统一入口点,所有IMS终端(比如UE)发起和终止于IMS终端的会话消息都要通过P-CSCF。
- Core
这部分即是IMS的核心。这部分中的组件不与CM或UE产生直接交互,暂不做详细了解。
实际上,P-CSCF,I-CSCF,S-CSCF可以位于同一硬件平台上
- PacketCable Multidedia
- Application
- Interconnect
- OSS
E-UE/UE初始化时交互的组件。对于E-UE的上线初始化,这部分与PKT-1.5中的OSS相同(下文还有介绍)。
E-UE Functional Requirements
Provisioning
- E-UE的初始化流程延用了PKT-PROV1.5的E-MTA Provisioning流程,过程中交互的组件相同
- 初始化流程也分Secure/Hybrid/Basic三种模式,主要流程与PKT-1.5的一致,细节有不同
- PKT-2.0的E-UE初始化过程在PKT-1.5 E-MTA的基础上增强:
- 支持IPv6
- 可以选择初始化过程中的使用的协议栈模式,IPv4/IPv6/Dual(由DHCP Option--CL_(V4)OPTION_IP_PREF内容选择)
- 支持E-UE接入PacketCable network(??TODO)
- eUE初始化IP模式选择
由eCM上线过程中以下DHCP option的内容共同决定:
- eCM in IPv4 mode:CL_OPTION_CCC(122) CL_V4OPTION_CCCV6(123) CL_V4OPTION_IP_PREF(124)
- eCM in IPv6 mode:CL_OPTION_CCC(2170) CL_OPTION_CCCV6(2171) CL_OPTION_IP_PREF(39)
其中,CCC包含DHCPv4 Server Address,CCCV6包含DHCPv6 Server的DSS_ID(DHCP Server Selection Identifier);CCC CCCV6 IP_PREF Mode/Action vaild IPv4 vaild vaild IPv6 vaild IPv6 vaild 1 IPv4 vaild 2 IPv6 vaild vaild 5 IPv4,but also acquire IPv6 address vaild vaild 6 IPv6,but also acquire IPv4 address
- Configuration Data沿用PKT-PROV1.5
- 初始化流程图 TODO
初始化包括eCM和eUE 2部分。eCM又分IPv4/IPv6 mode,eUE分IPv4/IPv6/Dual mode
- eCM provisioning in IPv4/IPv6 mode
下图仅展现涉及关系到UE PROV的部分
- eUE provisioning in IPv4 mode
这部分同PKT-PROV1.5
- eUE provisioning in IPv6 mode
流程与IPv4模式相同,但provising过程中使用的是IPv6。不同点在于地址获取方式/DHCP Option - eUE provisioning in Dual mode
DSM与SSM的主要差别在于,DSM需要尝试获取IPv4/IPv6 2个IP地址。其中一个IP可用于所有操作(Provisioning/Management/Signaling/Media), 另一个IP则有限制(不能用于Provisioning/Management)。至于由哪个IP完成Provisioning,见上文“eUE初始化IP模式选择”的描述。
- eCM provisioning in IPv4/IPv6 mode
Signaling Control
- 暂时只关注UE <-> P-CSCF间的交互Gm,UE与P-CSCF通信进行注册认证和session控制
- 注册过程:UE->P-CSCF<->I-CSCF获得S-CSCF地址;UE->P-CSCF->S-CSCF完成注册;
- 呼叫过程:
- 同一网络/域:UE->P-CSCF->S-CSCF发送邀请,S-CSCF->P-CSCF->UE返回Remote-UE的联系信息(地址/解码器等),UE<->Remote-UE建立RTP连接
- 不同网络/域:UE->P-CSCF->S-CSCF->other Function(remote S-CSCF/IBCF/BGCF)发送邀请,other Function->S-CSCF->P-CSCF->UE返回Remote-Equipment联系信息(地址/解码器等),UE<->Remote-Equipment建立RTP连接
- 同一网络/域:UE->P-CSCF->S-CSCF发送邀请,S-CSCF->P-CSCF->UE返回Remote-UE的联系信息(地址/解码器等),UE<->Remote-UE建立RTP连接
Media Stream Transport
UE可与多个节点进行媒体传送
其中, TrGW(Transition Gateway)用于接入VoIP网络;
MG(Media Gateway)用于接入PSTN网络;
MRF(Multimedia Resource Function)和AS中的Media Server同属架构中的Application,有何区别??(TODO)
UE Functional Requirements
Implementation in BCM SDK
Test Environment
Topology
Tools
OnDo SIP Server和Opensips选其一即可。
- OnDo SIP Server 有Windows/Linux版本。
- Download URL:download ondo sip server
- 其中Academic Edition和Evaluation Edition可免费使用,但需申请相应License,license
- OnDo SIP Server的配置
- 启动OnDo SIP Server,登录AdminTools,usr/pwd:sa/sa
- 添加用户 OnDo Admin Tool web page >> Authentication >> New User 添加的用户名密码需与下文所述MTA配置文件中的pktcEUEUsrIMPIId和pktcEUEUsrIMPICredentials对应,比如:
User:6411400 Password:6411400 Name:6411400
- 关闭对SIP Register/Invite的认证 OnDo Admin Tool web page >> Configuration >> SIP >> Authentication
- Opensips
- Linux下的免费sip server
- souce file:opensips-1.8,当然也可下载更高版本:opensips download
- 安装/配置步骤(以在Ubuntu-12.04系统为例)
- 安装编译/运行相关的库
sudo apt-get install mysql-server #opensips利用sql_db存放用户数据 sudo apt-get install libmysqlclient-dev sudo apt-get install libncurses5-dev sudo apt-get install bison sudo apt-get install flew
- 编译/安装
解压 opensips-1.8.0_src.tar.gz cd opensips-1.8.0-tls sudo make menuconfig Configure Compile Options -> Configure Excluded Modules -> db_mysql 保存退出 make all sudo make install
- 安装编译/运行相关的库
- 默认安装在/usr/local/sbin/,并在/usr/local/etc/下会有一个opensips目录,其中放置了opensips相关的配置文件。
- 配置/运行
- 用opensips_cfg.rar中的文件替换/usr/local/etc/opensips/下的对应文件
- /usr/local/sbin/opensipsdbctl create #生成opensips数据库
- /usr/local/sbin/opensipsctl start #启动opensips
- /usr/local/sbin/opensipsctl ul show|online等查看信息
- 配置/运行
PC2 MTA Configuration
Based on MTA BASIC init flow.
- DNS Server/DHCP Server的配置,参考PC1.5 Basic
- 使用TlvFileBuilderV5来编辑生成PC2 MTA配置文件,涉及到的主要修改点见下图红框标示
其中:Simplified Flow:None/Hash-NA/Hash-Euro/Hash-IETF需对应代码编译选项 pktcEUEDevOpDomain.1 #sip server所在主机domain pktcEUEDevPCSCFAddr.1.1 #sip server地址 pktcEUEUsrIMPIId.x pktcEUEUsrIMPUId.x #sip user,其中数字部分就是电话号码 pktcEUEUsrIMPICredentials.x #sip user对应的认证密码 pktcEUERSTDMValue.1 #digitmap,选中后可以选择'Edit DM'编辑其内容,digitmap中的domain对应pktcEUEDevOpDomain.1
How to test
OnDo SIP Server和Opensips选其一即可。
- 测试FW:testimage.bin
- 如果使用OnDo SIP Server
- MTA Config file使用OnDo_SIP_64114_HashIETF.BIN
- 如果使用Opensips SIP Server
- MTA Config file使用OpenSIPs_64114_HashIETF.BIN
- 连接2部模拟电话到DUT的RJ11口,MTA初始话成功后,Line1电话号码为6411400,Line2为6411411,2者可实现拨号通话即表示测试成功
Note:配置文件的选择通过修改DHCP Server的option 67的值达成