发布时间:2023-10-11 17:26:17
序言:作为思想的载体和知识的探索者,写作是一种独特的艺术,我们为您准备了不同风格的5篇即时通信基本概念,期待它们能激发您的灵感。
关键词:即时通信;XMPP;XML
中图分类号:TP312 文献标识码:A文章编号:1007-9599 (2011) 16-0000-02
XMPP-based Real-Time Communication Protocol Introduction
Liu Wei
(Information Center of Suzhou Railway Transportation Company Ltd.,Suzhou215007,China)
Abstract:XMPP has been successfully applied in many industry fields.This article gives an introduction and analysis on the characteristics,architecture,concept and core features of XMPP.
Keywords:Real-time communication;XMPP;XML
一、XMPP协议起源
第一版XMPP技术于1998年由Jeremie Miller开发,当时名为Jabber,目的是用于可靠的在线交流,之后改名为XMPP(eXtensible Messaging and Presence Protocol)可扩展消息与状态协议,该协议以XML(eXtensible Markup Language)格式交换数据,最初专用于即时通信领域,经过十多年的发展XMPP已成为即时通信协议中最可靠最具灵活性的协议之一。
二、XMPP协议特点
XMPP协议是自由、开放和公开的,当前在客户端和服务器端有多种实现,其源代码也都是开放的。
XMPP协议是标准协议,互联网工程任务组(IETF)已将其标准化并收录到技术规范RFC 3920和RFC 3921中。
XMPP协议具备优良的可扩展性,很容易为其添加新的功能,由此使得XMPP协议在即时通信之外的领域得到了广泛的使用,包括网络管理、协同工具、远程系统监控和网络游戏等。
XMPP协议具备良好的安全性,简单认证安全层(SASL)和传输层安全(TLS)技术已内建在XMPP技术规范中。
三、XMPP架构分析
XMPP技术使用一种松散的客户端-服务器架构,有些类似于电子邮件网络服务,没有唯一的服务器负责为所有用户提供服务,而是很多的服务器都分散在不同位置,每一台服务器只为特定一批用户服务,如果位于不同服务器内的用户有通信需求,通过服务器连接模块将服务器连接起来就可以。当一处的服务器出现故障只会影响当地的用户,而不会对其他用户中断服务。
四、XMPP基本概念
首先,任何系统的使用都需要一个账号,在XMPP的世界里这个账号称作Jabber ID简称JID,JID的格式和电子邮件地址类似,例如就可以是一个JID。
其次,在上面的JID中,还有一个概念就是域(Domain),比如上面的,在登陆的时候客户端就是用这个域去寻找可用的XMPP服务器而不是用IP地址。
另外,由于XMPP服务器允许同一账号重复登录,比如同时在手机和电脑上用登陆服务器,这时手机的XMPP客户端软件会自动在账号后面追加一个资源名(resource)例如/mobile,而电脑的XMPP客户端软件提交给服务器的全名则可能是/pc,这样在不同设备的同一个账号就可以在XMPP服务器里被区分开来。形如JID/resource这种账号形式XMPP社区通常将其称为full JID,而当没有resource的时候则称为bare JID。
XMPP技术是基于XML流(XML stream)的技术,当和XMPP服务器创建会话时,需要先和服务器建立一个TCP长连接并在这个连接上给服务器发送XML流进行服务协商,在协商过程中服务器也会给客户端发送XML流来回应请求。一旦协商通过,客户端和服务器就会通过XML流和对方用以下三种XML节(XML stanza)进行数据交换:,和。
这三种XML stanza是XMPP技术的最基本语义单元,下面对它们的用途做说明。
标签用于将信息从一处通过服务器传送到另一处,常用于一对一聊天,多人聊天,通知,预警和报错,下面的例子就是用户a给用户b发送了一条“Hello”的文本消息。
to="b@123.lit"
type="chat">
Hellovar _userid = '';var _siteid =2230;var _istoken = 1;var _model = 'Model03'; WebPageSpeed =234; UrchinTrack();
标签用于通知或转发客户端的状态信息,比如上线下线等,下面的例子是用户a将自己的状态信息“xa”(离开)和附加状态文字“go to library!”发给服务器,服务器会将a的状态转发给订阅了a的状态的在线用户;
xa
go to library!
这个标签用于请求-回应操作,类似于HTTP协议的GET,POST和PUT方法,它和前面的,的最大不同在于发出请求后一定要收到回复即使回复是空的,通常客户端针对好友列表管理的添删改查操作都是用这个标签操作的。
下面这个例子是在PDA上登录的用户向XMPP服务器请求这个账号的好友列表数据。
id="rr82a1z7"
to=""
type="get">
接下来是服务器的回复。
id="rr82a1z7"
to="/pda"
type="result">
五、XMPP核心功能
作为服务于即时通信的技术标准,其核心功能不外乎两个――消息发送(Messaging)和状态(Presence),这里对这两项功能做相应说明。
(一)状态
在XMPP网络中,查看他人的状态信息(Presence)并非是需求方一厢情愿就够的,需要得到被查看方的允许,因为并非所有人都同意自己在网络中的状态被别人随意看到。
所以当用户需要看某人的状态信息时,他需要向对方发送请求并得到对方的允许,XMPP术语将这个发送请求称为subscribe request.
上面是用户向用户发出订阅状态信息的请求。
如果用户c同意a的订阅请求,用户a会收到如下的XML stanza:
如果用户c不同意a的订阅请求,用户a收到的信息则是:
在上面的例子中,如果用户c同意a的订阅请求,a会把c加入到自己的好友列表中,同时c也会把a加入自己的好友列表中(针对不同的XMPP服务器实现,c不一定会加a)。
接下来分析用户登录过程中,用户的好友如何获得用户的上线状态的。
1.用户客户端和服务端协商建立XML stream;
2.客户端给服务器发送一个登录初始状态的XML stanza,如;
3.服务器检索出有哪些人成功订阅了这个用户的状态;
4.服务器将这个用户的状态发送给这些订阅者。
在登录完成之后使用客户端过程中,如果用户将自己状态由在线(available)改为离开(away),也是通过类似流程将新的状态信息通知给这些订阅者的。
(二)消息传送
这个部分分析XMPP的聊天消息是如何快速的从发送方转到接收方的。
由于XMPP的设计初衷就是应用于即时通信,故而在处理实时传送消息数量很多而每条消息内容又相对较少的聊天业务时,在设计和实现上做了很多优化。
还是用一个具体的例子来说明,用户给发一条消息“Who are you?”,XML stanza的内容如下所示:
to=""
type="chat">
Who are you?var _userid = '';var _siteid =2230;var _istoken = 1;var _model = 'Model03'; WebPageSpeed =203; UrchinTrack();
用户jack将消息发送给这台服务器后,服务器从这个XML stanza中取出“to”地址,对其它内容则不做任何处理以提高性能,发现目标地址是服务器,于是通过服务器连接模块马上和服务器建立一条XML stream(如果之前和有过通信则建立XML stream的步骤可省略)并将这个XML stanza发到服务器。
收到这条消息后,也是从中取出目标“to”地址,发现其域名和自己一致,于是在本地网络查找用户bill是否在线,如果bill在线就将消息发送给bill,如果不在线就丢弃(可配置写入数据库待上线后再发送)。在这个过程中服务器对XML stanza不做任何其他多余的解析,也不会将收到的stanza写入数据库保持起来(成功发给接收用户情况下),因此消息的传送是非常快速和及时的。
关键词:IM;HTTP;J2ME;Jabber;XML
中图分类号:TP393文献标识码:A文章编号:1009-3044(2010)20-5661-04
Instant Message Applies Combined Set
HU Wen-sheng1, LI Guo-hua2, HU Yan-ping2
(1. Commercial College of Guizhou, Guiyang 550000, China; 2. Hunan Xinning No2 Middle School, Xinning 422713, China)
Abstract: This thesis discusses that Instant Message on the base of Jabber Protocol applies Combined Set and introduces the process of communication between client and server.
Key words: IM; HTTP; J2ME; Jabber; XML
本文讨论了基于Jabber协议的即时通讯在手机上的应用,详细介绍了各种移动终端设备的客户端程序与服务器端之间通过互联网及移动数据网进行实时多媒体互动交流。不仅可以传输文本信息,更可实现图像、音频、视频的互动,同时还可以收发电子邮件。
1 基本概念
1.1 即时通讯(IM)
即时通讯也叫即时消息传递(Instant Message ,IM)是基于互联网协议的应用程序,它能够使应用不同类型设备的用户一对一进行通信。IM最流行的形式是聊天,在聊天的同时可以在计算机之间交换短文本消息。目前在国内用得最广、深受广大网民喜爱的即时通讯产品要算腾讯QQ和微软的MSN了。随着无线应用协议(Wireless Application Protocol,WAP)和移动电话类的手持设备的出现,即时通讯越来越多的应用于各种移动电话上。
1.2 Jabber XML协议的结构
Jabber即时通讯系统与其他即时通讯不同,它是基于源代码开放的XML协议。这样的好处是使超长传输的分布性更好也更易访问。客户端程序与服务器之间的通信发生在指定的端口上,在交换数据时,构造各种符合Jabber XML协议的数据包,以XML流的形式进行传递。 Jabber的开放式XML协议包括三个顶层XML元素(也称为标记):
,此元素用来确定用户的状态。其格式为:Onlinenone-audio。表明9054这个用户发送给用户为9063,同时也表明了用户9054的状态。
,此元素用来包含两个Jabber用户间互相发送消息的内容。其格式为:aaaaaaa22222222var _userid = '';var _siteid =2230;var _istoken = 1;var _model = 'Model03'; WebPageSpeed =156; UrchinTrack();。
,此元素的意思是信息/查询。该元素主要是用来在两个用户之间构建一个根本的会话,并且允许它们来回传送XML格式的请求和响应。信息/查询的主要用处是取得或设置公共的用户信息,比如名字,电子邮件,地址等等。其格式为:
我的朋友
2 通信模式的建立
在整个通信过程中涉及到三个角色:客户端、服务器、网络(包括互联网及移动数据网)。客户端可以是移动电话类的手持设备和PC机端的应用程序,在本文中主要是指手机上的应用程序。服务器端包括Dispatch服务器、若干个Jabber服务器、数据库。客户端通过HTTP与服务器端进行数据交换,交换过程中涉及到两个XML流:一个流把数据包从客户端提交到服务器上;另一个流把数据从服务器提交到客户端。当用户想进行通信时,只要启动手机上的客户端程序进行登录,发送一个包括用户登录号和密码的HTTP包给服务器端Dispatch,Dispatch根据用户的登录号和密码到相应的数据库中查询、对比,进行身份验证,若验证成功,给客户端程序返回一个HTTP应答包,在返回的HTTP应答包中包含了分配给该用户的一个Jabber服务器的IP地址和通信的端口号,随后客户端就向指定Jabber服务器发起HTTP连接请求,获得HTTP连接标识,这样就可以利用这个标识进行一系列的通信活动。若服务器端没有通过客户端的身份认证,则会返回给客户端一个错误提示,同时断开与该用户的连接。
3 具体通信过程及客户端实现的效果
3.1 获取Jabber服务器的IP地址和端口号
客户端应用程序首先必须知道自己应该与哪个Jabber服务器进行通信,所以它必须要通过服务器端的Dispatch这个模块来获取与之通信的Jabber服务器的IP地址和端口号。为此它首先得发送一个数据包给Dispatch,Dispatch收到这个包后进行解析,到数据库中进行查询、验证后再回复客户端应用程序。成功的话,返回某个Jabber服务器的IP地址和端口号。在客户端应用程序与服务器端进行联系时都涉及到基于HTTP协议的连接,而HTTP协议是一个请求/响应型的协议,在发送请求时必须同时发送请求所需要的数据。利用HTTP连接发送数据主要有两种方式:GET和POST方式。在GET方式下,发送的数据是被当作URL的一部分被发送到服务器端,这种方式只能传送编码的文本信息,并且传送的数据大小有限制;而在POST方式下,发送的数据被当作数据流的形式单独向服务器发送,这种方式可以传递任意格式的数据(包括二进制格式的数据),并且传送的数据没有大小限制。Sun公司推出的J2ME的CLDC中有专门用于进行网络通信的类库包javax.microedition.io,使用该类库包下定义的HttpConnection类可以实现HTTP连接。当客户端应用程序向服务器发送请求连接的包之后,就可以使用getResponseCode()方法来获得服务器端返回的状态码。通过读取这个状态码,客户端的应用程序就会知道服务器端处理数据的状态,如果服务器端返回的状态码是HttpConnection.HTTP_OK,就表示服务器端处理数据成功,否则服务器端处理数据失败,客户端须得重新发送连接请求。具体情况如下:
1) 客户端向服务器端Dispatch请求与它匹配的Jabber服务器的地址
向服务器端的Dispatch发送一个HTTP包的内容为:
GET /dispatch.xml?Id=9063@pica&Version= HTTP/1.1
X-Online-Host: 211.90.198.191:80
User-Agent: Profile/MIDP-1.0 Configuration/CLDC-1.0
User-Agent: UNTRUSTED/1.0
Content-Length: 0
Host: 211.90.198.191:80
由于客户端应用程序只是想要获取与之进行通信的那个Jabber服务器的IP地址和端口号,所以发送的数据量并不是很多,所以采用了GET方法发送只有HTTP包头的数据包就可以了。由这个包我们可以看出Dispatch所在的IP地址是211.90.198.191:80,当它收到这个包时,立即进行解析,获得了该用户的登录号和密码,然后根据该用户的登录号到中心数据库中去查询、验证,决定它与哪个Jabber服务器通信,从这里可以看出,服务器端的Dispatch模块起调度、分配作用,因为随着用户数量的不断增加,一个或几个Jabber服务器显然满足不了需要,必须要随着用户数的增加,随时增加服务器端的Jabber服务器的数目,怎样决定哪些用户与哪个Jabber服务器通信?就由Dispatch模块来决定。
服务器端的Dispatch给该用户返回的包的内容为:
HTTP/1.0 200 OK
Server: jabber/http-0.4
Expires: Fri, 10 Oct 1997 10:10:10 GMT
Pragma: no-cache
Cache-control: private
Connection: close
Content-Type: text/xml
Content-Length: 67
Ip=219.235.1.137
Port=4998
Domain=pica
Resouce=pica
Time=1200
客户端的应用程序按照Jabber XML协议的结构来解析这个包之后,得知自己应与IP地址为219.235.1.137,端口号为4998的Jabber服务器进行通信。于是服务器端的Dispatch模块就不再与客户端的应用程序打交道了。
客户端的发包和收包函数为:
void httpRequest(String page_path) throws Exception{
……………
//发送的HTTP包的包头
hcon=(HttpConnection)Connector.open(" 211.90.198.191:80",
Connector.READ_WRITE,true);
hcon.setRequestMethod(HttpConnection.GET);
hcon.setRequestProperty("X-Online-Host","211.90.198.191:80");
hcon.setRequestProperty("User-Agent","Profile/MIDP-1.0 Configuration/CLDC-1.0");
//发送的HTTP包的包体
if(xmlParam!=null){
bytearrayoutputstream=new ByteArrayOutputStream();
dataoutputstream1=new DataOutputStream(bytearrayoutputstream);
dataoutputstream1.writeUTF(xmlParam);
byte abXmlParam[]=bytearrayoutputstream.toByteArray();
hcon.setRequestProperty("Content-Length",""+(abXmlParam.length-2));
dos=hcon.openDataOutputStream();
dos.write(abXmlParam,2,abXmlParam.length-2);
}
///以下为收包的过程
if((hcon.getResponseCode())!=hcon.HTTP_OK)
throw new Exception("invalid response");
int recvs=(int)hcon.getLength();
dis=hcon.openDataInputStream();
if(recvs>0){
rcv_bytes=new byte[(int)hcon.getLength()];
dis.readFully(rcv_bytes);
} else{……}
String sResponse=new String(rcv_bytes,0,recvs>0?recvs:k,"UTF-8");
if(sResponse.length()>0){
reader=new XmlReader(sResponse);
parse(reader,cmdType);}
……………}
2) 客户端应用程序向具体的Jabber服务器发送连接请求:
当客户端应用程序获得了与它相匹配的Jabber服务器的IP地址和端口号时,就可以向该Jabber服务器发送HTTP连接请求。具体的HTTP包的内容为:
GET /login-sid.xml?jid=9063@pica&pass=123456&version= HTTP/1.1
X-Online-Host: 219.235.1.137:4998
Content-Type: text/xml
User-Agent: Profile/MIDP-1.0 Configuration/CLDC-1.0
User-Agent: UNTRUSTED/1.0
Content-Length: 0
Host: 219.235.1.137:4998
3) 服务器端向客户端应用程序返回响应包:
服务器返回的HTTP包为:
HTTP/1.0 200 Ok
Content-type: text/xml
Content-length: 60
1973594324
返回来的这个包除了告诉客户端,服务器处理数据成功(OK),同时也返回了客户端与服务器端建立HTTP连接的标识sid,即1973594324。随后的客户端与服务器端进行通信就在这条做了标记的HTTP连接的基础上进行的。
此时的客户端的发包和收包的函数仍然是httpRequest(String page_path),只不过所不同的是此时与之相联系的服务器的IP地址变了。
3.2 与Jabber服务器建立HTTP连接进行通信
从上面可知,当客户端向Jabber服务器发送连接请求后,从服务器那里立即返回一个应答包,获得了这个HTTP连接的标识。这个标识是非常重要的,只有得到这个标识,才能说明客户端应用程序与Jabber服务器建立HTTP连接成功了,于是客户端应用程序就可以通过这个标识与服务器之间可以进行进一步的通信,如取好友列表、取聊天室、发送与接收短文本信息、查找在线好友、通过外部接口服务器与其它即时通信产品(如QQ)进行通信等一系列活动。
如: 客户端利用所获得的HTTP连接标识从Jaber服务器取好友列表情况
向Jabber服务器发送的数据包为:
HTTP包头:
POST /raw.xml?sid=1973594324 HTTP/1.1
X-Online-Host: 219.235.1.137:4998
Content-Type: text/xml
User-Agent: Profile/MIDP-1.0 Configuration/CLDC-1.0
Content-Length: 89
User-Agent: UNTRUSTED/1.0
Host: 219.235.1.137:4998
HTTP包体:
/jabber>
由于发送的数据包内容比较多用HTTP的POST方法来传送,分两块:一块是HTTP头,带有上面建立连接时所得到的HTTP会话标识sid=1973594324,向服务器请求获得raw.xml资源,同时还要指明服务器所在的IP地址和端口号等信息;另一块是HTTP包体,这个包体表示你要求的具体内容,上面这个包是要求取好友列表。当服务器接到这个包时,经过解析发现客户端要求取自己的好友列表,立即到数据库中去提取该用户的好友列表以Jabber XML协议的结构形式构造一个数据包发送给该客户端,客户端在收到这个数据包后,按照Jabber XML的协议结构的形式进行解析,把解析所得到的结果在用户的手机界面上显示出来,显示的情况见图2所示。一旦取好友列表成功后,就可以与好友进行聊天,传图片等各项活动了。
3客户端的显示效果
图2为客户端的显示效果。
4 结论
目前随着国内移动网络的逐步成熟,基于移动互联网的应用正在快速增长,不过应用比较多的主要是游戏和移动广告之类的,而应用到即时通信、移动定位、移动电子商务的还为数不多。基于移动互联网的即时通信处在信息、个性化与商务的交汇点,具有传统通信方式无法比拟的优势,用户既可以进行通信,也可以进行交友或从事各种商务活动。当然,如果能够把基于移动互联网的即时通信软件与各种多媒体技术结合起来,开发各种具有视频的通信系统,必将把我国移动互联网技术推到一个新的高度,这也是我们今后的研究方向。
参考文献:
[1] Dreamtech.即时消息传递系统编程源代码解析[M].北京:电子工业出版社,2002.
关键词:3G的概念;标准;频谱分配;特点;应用
中图分类号:TN929.5 文献标识码:A 文章编号:1674-7712 (2014) 12-0000-01
一、3G的概念
3G是英文3rd Generation,指第三代移动通信技术[1]。它是指将无线通信与国际互联网等多媒体通信结合的新一代移动通信系统。它能够处理图像、音乐、视频流等多种媒体形式,提供包括网页浏览、电话会议、电子商务等多种信息服务。为了提供这种服务,无线网络必须能够支持不同的数据传输速度,也就是说在室内、室外和行车的环境中能够分别支持至少2Mbps(兆字节/每秒)、384kbps(千字节/每秒)以及144kbps的传输速度。简单地说,3G实际上就是一个宽带的无线网络。
二、3G的标准
3G的主流标准为WCDMA(Wideband Code Division Multiple Access)、CDMA2000(Code Division Multiple Access 2000)和TD-SCDMA(Time-Division Synchronous Code Division Multiple Access)。
WCDMA即宽带码分多址,该技术可在5MHz的带宽内,提供最高384kbps的用户数据传输速率,能够支持移动/手提设备之间的语音、图象、数据以及视频通信,速率可达2Mb/s(对于局域网而言)或者384Kb/s(对于宽带网而言)。
CDMA2000也称为CDMA-MC(CDMA Multi-Carrier),由美国高通北美公司为主导提出,摩托罗拉、Lucent和后来加入的韩国三星都有参与,韩国现在是该标准的主导者。CDMA2000可支持语音、分组和数据等业务,还可实现QoS的协商。它对CDMA(IS-95)系统的完全兼容,成熟性和可靠性有保障,是第二代向第三代移动通信过渡最平滑的选择。但是CDMA2000使用的多载波传输方式比WCDMA的直接扩频序列对频率资源的浪费大。该标准与WCDMA以及TD-SCDMA不兼容,目前我国电信采用的是该标准。
TD-SCDMA即时分-同步码分多址,是由我国信息产业部电信科学技术研究院提出,与德国西门子公司联合开发。采用了同步码分多址技术,智能天线技术和软件无线技术。它采用时分双工技术能节省未来紧张的频率资源,降低设备成本。其独特的智能天线技术,能大大提高系统的容量,特别对CDMA系统的容量能增加50%,且降低了基站的发射功率,减少了干扰。td-scdma软件无线技术能利用软件修改硬件,在设计、测试方面非常方便,不同系统间的兼容性也易于实现。其缺陷在于技术的成熟性方面比另外两种技术要欠缺,它在抗快衰落和终端用户的移动速度方面也有待改进。
三、3G的频谱分配
国际电信联盟给3G划分了230MHz的频带,上行为1885~2025MHz,下行为2110~2200MHz。我国3G频谱划分如下:
1710-1755/1805-1850MHz和1865-1880/1945-1960MHz,带宽共120MHz,用于蜂窝移动通信业务;1880-1900/1960-1980MHz,带宽共40MHz,原计划用于无线接入(FDD方式),现只批准我国自行研制的S-CDMA系统使用1880-1885MHz的频段;1900-1920MHz,带宽共20MHz,用于无线接入(可用于DECT和PHS等时分或码分方式),主要用来解决集中在密集办公室区域的专业网以及机关、团体和家用无绳电话等需求;2400-2483.5MHz,带宽共83.5MHz,主要用于短距离、短信息的数据通信系统以及计算机数据通信系统等。该段频率与工业、科学、医疗设备(ISM)无线电电磁波辐射频段共用;2535-2599MHz,带宽共64MHz,临时性用于多路微波有线电视传输系统。
四、3G的特点
第三代移动通信系统的主要特点有:
(1)第三代移动通信系统是一个在全球范围内覆盖和使用的系统。它将使用共同的频段、全球统一标准或兼容标准,实现全球无缝漫游。
(2)第三代移动通信系统具有支持多媒体业务的能力,特别是支持Internet业务。现有的移动通信系统主要以提供话音业务为主,随着发展一般也仅能提供100kbit/s~200kbit/s的数据业务,GSM演进到最高阶段的速率能力为384kbit/s。
(3)第三代移动通信系统的业务支持从话音、分组数据到多媒体业务;应能根据需要提供带宽。
(4)第三代移动通信系统便于过渡、演进。由于第三代移动通信引入时,第二代网络已具有相当规模,所以第三代的网络一定要能在第二代网络的基础上逐渐灵活演进而成,并应与固定网兼容。
(5)第三代移动通信系统支持非对称传输模式。由于新的数据业务,例如,WWW浏览等具有非对称特性,上行传输速率往往只需要几千比特每秒,而下行传输速率可能需要几百千比特每秒,甚至上兆比特每秒才能满足需要。
五、3G得应用
从用户体验的角度可以将3G业务分为以下几类:
(1)通信类业务,主要包括话音业务、视频通话业务以及手机与互联网视频通话业务。
(2)娱乐类业务,如音乐、影视、新闻点播,图片、铃声下载、互动游戏等。
(3)资讯类业务,如新闻类资讯、便民资讯、财经类资讯等,用户可以通过手机获得电话簿、交通实况、宾馆和就餐等服务。
(4)互联网业务,用户可以在3G手机上收发、保存电子邮件,可以使用QQ、Fetion、MSN等即时通信工具,还可以收发文字、图片、视频等多媒体信息。
(5)电子支付业务,用户可以用3G手机实现网上支付、现场刷卡等各种支付功能。
(6)定位服务,用户可以通过3G手机的GPS功能对其所在位置进行定位并得到该位置相关信息。
(7)监控服务,用户可以用3G手机远程监视、控制家用电器。
在不久的将来,移动互联网会发展成为一种可以随身应用、不受时间和空间的局限的网络,其必将是未来3G业务发展的主流趋势。
参考文献:
[1]刘宝玲.3G移动通信系统概述[M].北京:人民邮电出版社,2008.
[2]张玉艳,于翠波.移动通信[M].北京:人民邮电出版社,2010.
1.教学内容改革根据对网络营销相关岗位及对应的职业能力的分析,我们把网络营销课程的教学内容设计为六个项目,具体内容如下。
项目1网络营销概述:内容包括网络营销基本概念、网络营销基础理论(如六度空间理论、长尾理论等)。实训内容是寻找优秀的网络营销案例。
项目2网络市场调研:通过该项目让学生学握网络信息采集、处理的技能,具体包括搜索引擎的运用、二手资料的收集、网上调查问卷。实训内容:XX企业A产品的市场分析。
项目3网络营销推广与营销方法:内容包括论坛营销、博客营销、软文(新闻)营销、即时通信工具营销、微信微博营销、SNS营销、问答平台营销、电子邮件营销等。该项目的实训引入合作企业,让学生运用学到的网络推广方法为企业做推广,实际推广效果将影响学生的平时成绩。例如,学到论坛营销的时候要求学生以小组为单位,为合作企业策划并实施论坛营销,课后老师还要跟进推广效果,做好记录。
项目4搜索引擎营销虽然搜索引擎营销也是网络推广的方法之一,但因其知识点较多、难,故独立作为一个学习项目。本学习项目包括搜索引擎优化、直通车推广、百度推广。实训内容是根据所学知识优化自己的博客,尝试操作淘宝直通车和百度推广(教师给定账号)。
项目5网络广告策划该项目是网络营销课程中的重点教学内容之一,包括:网络广告内涵、主要形式、定价机制,网络广告的资源策划、创意方法;网络广告设计思路、制作流程、常用工具,网络广告效果评价方法、影响因素。既包括广告设计理论的学习,又包括广告创意与设计的学习。实训的设计包括认识广告、欣赏经典、为XX企业设计网络广告。
项目6企业网络营销整合方案在该项目中,学生将学习如何为一个企业策划基于全网的网络营销方案。实训中,给定背景企业,学生以小组为单位,在教师的指导下进行信息采集与处理、策划营销方案、撰写营销方案、答辩。教师在指导的过程中,将企业分为传统企业、具备独立网站的电子商务企业、运用第三方平台开展业务的电子商务企业三类进行指导,不同的企业其需要的营销方法不同。
2.教学方法改革
(1)变“以教为主”为“以学为主”。在教学过程中,采用任务驱动教学法,注重调动学生的学习积极性,引导学生自己去发现知识,自己去寻找解决问题的方法。在课后继续关注学生的实训情况,指导学生,鼓励学生坚持做网络推广,以达到推广效果。
(2)仿真模拟教学法。运用中教畅想电子商务沙盘软件以及系部自建Ecmall电子商务平台,让学生在平台上开通网店,实施自己的策划方案,进行网络交易,等等。通过这些模拟平台可以让学生快速了解电子商务企业的工作流程和工作角色,培养学生的动手能力。相对于真实的互联网环境来说,仿真模拟教学可以让教师更好把握教学进度与教学效果。
(3)运用博客辅助教学。授课教师开设有网络营销专业教学博客,通过博客平台实现教学资料、课件及习题等与学生的共享,学生可以通过博客平台更好地实现与老师的沟通和交流。同时要求学生开设网络营销或电子商务专业博客,撰写专业文章,发表评论及进行搜索引擎优化、友情链接及博客推广等具体网络营销实践活动,学期末老师根据学生撰写的博客日志数量、博客搜索引擎关键词的排名效果、访问量及外部链接数量等指标给学生评定相应的博客实训成绩。
(4)注重培养学生的实践能力。鼓励学生开设网店,参与微信微博等网络营销活动,训练商业意识和商业技能。鼓励学生参与各种威客网站的任务项目,了解企业对电子商务人才的需求,提高自己的专业能力。
二、结论
关键词:PoC业务 3G 业务流程 业务应用
中图分类号:TP393 文献标识码:A 文章编号:1007-9416(2012)01-0029-02
1、基本概念
PoC是一种即时、双向、多方参与的VoIP(Voice over IP)通信方式,允许用户与一个或者多个用户进行多媒体通信。为了方便,有时也用“一键通”、“基于手机的对讲机”等名词来代表PoC业务。用户通过按键开始与某个用户通话,或者广播到一个群组的所有参与者那里。接收方收听到发言声音后,可以没有任何动作,例如不应答这个呼叫,或者在收听到发送方声音之前,被通知并且必须接收该呼叫。PoC会话理论上可以包含任何网络信号覆盖到区域的用户,这是现在其他集群技术所不能比拟的。PoC通信是半双工模式的,每次最多只能有一个人发言,其他人接听[1-3]。如果存在某个接听的用户想要发言的情况,则通过发言权控制功能来实现对发言权请求的排队等待等功能的支持。PoC技术基于分组交换,不单独占用信道,资源利用率极高。相对传统话音业务费用较低,并且计费方式十分灵活。PoC业务作为3G业务平台中基于IMS(IP Multimedia Subsystem)的最具有代表性、最重要的业务之一因其方便快捷、资源利用率高、用户覆盖范围广等特点,从一开始就被业界寄予厚望,被认为最有希望成为继短消息业务之后的下一个移动运营商的杀手级业务。
开放移动联盟(OMA,Open Mobile Alliance)和3GPP(The 3rd Generation Partnership Project)是3G业务平台中基于IMS的PoC系统的标准化机构和组织,负责基于IMS平台的PoC系统[4-5]的操作、流程、规范以及相关协议的制定、解释和维护工作。在3GPP的Release 6(R6)规范中明确提出了PoC是IMS的最重要和最具代表性的业务之一。在OMA组织将PoC技术思想移植到IMS平台之前,PoC功能主要是通过在现有的GPRS(General Packet Radio Service)或者CDMA 1X核心网络中增加PoC服务器来实现的。
2、业务特性
PoC会话同普通的电路交换(CS,Circuit Switching)会话相比具有独特的方面,如表1-1所示:
由表1-1中可以看出,PoC作为一种独特的业务是有其存在意义的,而不是单纯地考虑网络带宽资源情况。也就是说,即使将来网络带宽资源足够给各个业务使用分配,PoC业务也是有着广泛的应用前景和市场的。这里把PoC的业务特性归纳为以下几个方面:
(1)通话建立快捷。支持即按即说,用户可以从通讯列表中选择个人用户或者群组,通过按下特定功能键开始通话。通常从按键到开始通话的时延很短。
(2)半双工通信模式。会话中任何时刻只允许有1个用户发言,其他用户处于接听状态。如果某个正在接听的用户想要发言,则需要提前申请发言权,发言权的控制有一套完整严密的定义。
(3)灵活的应答模式。应答模式可以包括手动接通、自动接通和自动拒绝等。手动接听模式是在第一次被叫时需要用户手动按键接听来建立连接;自动模式就是在第一次被叫(会话建立)时终端直接播放来话;自动拒绝则是在呼叫时返回拒绝接收的信号。无论是手动模式接通后还是自动模式接通后,后续的来话都是直接播放。
(4)通话模式多样。根据PoC1.0规范定义,PoC业务包括4种通话模式,分别是一对一会话、预定义群组会话、临时群组会话(Ad hoc)和聊天群组会话。在一对一模式下,用户A可以从通信录中选择所要联系的用户B,然后通过按下终端上的PoC功能键开始通话。这种呼叫连接几乎是瞬时完成的。当一对一通话结束后,可以释放PoC功能键,从而使用户B获得发言权,如此反复进行下去。预定义群组通话是预先定义好的群组成员之间的通信,成员可以随时参加或退出该会话。临时群组通话是用户之间临时组成的通话群组,会话结束后群组也随之消失,群组成员可以邀请非成员加入,但非成员若没有受到邀请则不能自行加入。聊天群组通话又可分为开放聊天群组和限制聊天群组。开放分组中没有成员限制,任何人都可以随时加入和退出;限制分组中则必须是规定的组内成员才可以加入通话。
(5)覆盖范围广泛。PoC技术是通过现有IP交换传输技术实现的,理论上任何网络信号覆盖到的地方均可以实现业务接入,可实现全网络覆盖范围漫游。
(6)提供呈现状态服务。呈现状态服务通常又被称为Presence服务[6],用户可根据需要将自己的实时通话状态灵活地设置成在线、隐身或离线,并更改好友属性等。
(7)支持会话并发功能。单个PoC终端可同时参与到多个PoC会话中。可以同时接收任意一个会话的数据信息,而不挂起其他会话。
(8)支持接入列表管理。支持接受成员列表和拒绝成员列表,类似于其他即时通信软件里面的黑名单、白名单功能。
(9)支持多媒体服务。除了支持实时语音通信外,还支持通话群组成员之间的视频传送、文本传送、彩信传送、在线游戏以及多媒体会议等功能。
3、业务流程
PoC会话是利用VoIP技术实现的半双工语音业务,当会话中唯一的发言者正在发言时,会话中其他用户只能处于收听状态。会话中的所有终端设备共用一个频道进行呼叫和接听,用户讲话时才占用信道,接听时只监听信道。典型的PoC会话建立过程可以归纳为5个阶段,如下所示:
(1)注册。用户终端如果还没有注册到PoC服务器,首先就需要做这项工作。注册过程将终端的联系方式细节(如IP地址)提供给PoC服务器,并且进行网络用户的认证工作。所以,注册是进行PoC会话的先决条件。由于无线连接的固有特性,注册过程需要周期性的更新。
(2)数据信道的建立。PoC独立于任何特定的数据载体(如GPRS、EDGE或者CDMA等),网络本身应该提供不同数据网络之间协同工作的机制。PoC是IMS的业务,而IMS平台对底层网络采用何种接入和承载技术是不关心的。也就是说信道建立过程是由低层网络提供的。
(3)预约。一般情况下,用户需要经常尝试去了解所有联系人的在线状态。这个需求将产生一个包含联系人现在状态的初始回复,并且在其状态发生变化时通知会话中其他联系人。这个过程通常由呈现业务来实现。
(4)邀请/接受谈话。一个会话的建立是从SIP邀请信息的发出开始的。这个邀请将被发送到PoC服务器,并重新定向到收件人,收件人做出相应的回应。在邀请/接受的过程中,通过SIP消息中的会话描述协议(SDP),会话参与者交换了传输介质的容量信息。SDP描述了传输介质中物理链路的详细信息、编码类型和数据速率。
(5)媒体流传输。一旦SIP会话建立成功,会话参加者的数据将通过PoC服务器进行交换。由于PoC是半双工,参与者在发言之前必须请求发言权,发言权的协调和分配是通过PoC服务器完成的。一旦一次发言完成,发言者释放发言权。
4、业务应用
PoC业务面对突发事件时可以迅速进行群体间沟通 就其的市场定位来说,比较适用于像军队、武警、电力、交管、紧急救灾这类特殊行业。这样无论是实时性、话音质量还是安全保密性都更有保证,而这些客户对于辅助功能(如在线状态、位置信息等)并不是特别关心。另外考虑到保护前期投资,使用习惯等原因,可以预计这类用户不会轻易转向使用PoC技术。PoC业务应该把目光投向普通的企业级用户群、社团用户群以及主要由白领和青少年组成的个人用户等。考虑到这类用户对通话的实时性要求并不是特别严格,但是却对使用成本相对比较敏感,而且对一些辅助功能(如在线状态等)也具有比较强烈的兴趣,因此在这些用户群中推广PoC业务具有很大的市场空间和潜力。
参考文献
[1]刘海鹏,廖建新,朱晓民.PoC中一种负载均衡与时延优化的RTP媒体流转发机制[J].通信学报.2010, 31(8):105-113
[2]杨戈,廖建新,朱晓民,等.流媒体分发系统关键技术综述[J].电子学报,2009,37(1):137-145.
[3]C. Jae-Hyung, L. Jae-Oh. IMS Based PoC Service Deployment[A].Fifth International Joint Conference on INC, IMS and IDCCNCM'09),2009[C].949-954.
[4]Open Mobile Alliance.OMA-AD-PoC-V2_1-20090224-D: Push to talk over Cellular (PoC)-Architecture[S].Open Mobile Alliance,2009.
[5]Open Mobile Alliance. OMA-TS-PoC_System_Description-V2_1- 20090305-D: OMA PoC System Description[S].Open Mobile Alliance,2009.