当前位置:首页 » 专业资讯
开发技术指南» 文章正文
    引言: oSIP开发者手册
 

 

 ·对utf8编码的初步认识!    »显示摘要«
    摘要:在网络中有很多地方都有采用utf8编码,由于要编写与邮件服务端有关的程序,而邮件服务端有些地方用到了utf8编码,所以对它有了初步的认识!它其实和unicode是同类,就是在编码方式上不同!首先utf8编码后的大小是不一定,不像unicode编码后的大小是一样的!我们先来看unicode的编码:一个英文字母 “a” 和 一个汉字 “好”,编码后都是占用的空间大小是一样的,都是两个字节!而utf8编码:一个英文......
 ·sip基本应用    »显示摘要«
    摘要:sip基本应用 sip协议作为voip通信的主要协议之一,以起简单,灵活,开放性而逐渐在voip通信领域内占据主导地位。使用sip通信的主要方式如下图,主要设备有sip终端,代理/定向服务器,位置服务器,pstn网关等设备。sip协议发展的目前,最新标准为rfc3261,主要的网络设备提供商目前都可以提供sip通信设备,例如cisco。而在windows,unix等操作系统上,也有许多sip软件电话可以使用,因为我们可以看出,sip电话在未来的应用......


oSIP开发者手册
osip开发者手册

原文标题:osip user manual 【相关文章:2003你还在用软盘启动盘吗?

——本手册指导开发者利用osip栈开发用户代理 【扩展阅读:预防Ghost破坏硬盘保护卡的对策

联系方法:jack@atosc.org 【扩展信息:实战Ghost的分卷压缩功能

原文作者:aymeric moizard

版权保护:gnu free documentation license

项目网站:http://osip.atosc.org

译文作者:陈善学

联系方法:chenshanxue@263.net

 

摘要

“会话发起协议(session initiation protocol-sip)是一个应用层的信令控制协议。用于创建、修改与终止一个或多个参与者的会话。这些会话可以是internet多媒体会议、ip电话或多媒体分发(例如:语音信箱)。会话的参与者可以通过组播(multicast)、网状单播(unicast)或两者的混合体进行通信。”

"the session initiation protocol (sip) is an application-layer control (signaling) protocol for creating, modifying and terminating sessions with one or more participants. these sessions include internet multimedia conferences, internet telephone calls and multimedia distribution. members in a session can communicate via multicast or via a mesh of unicast relations, or a combination of these."

版权

本文的版权归aymeric moizard所有。允许拷贝、分发与在”gnu free documentation license”(版本1.1或由自由软件基金会最近发布的任何版本)下的定制。需要注意的是,本文档的任何章节的引用(包括本中文翻译)需列出它们的标题、开始的文本与结尾文本,并且标明文档受”gnu free documentation licence”保护。

copyright (c) 2001 aymeric moizard. permission is granted to copy, distribute and/or modify this document under the terms of the gnu free documentation license, version 1.1 or any later version published by the free software foundation; with the invariant sections being list their titles, with the front-cover texts being list, and with the back-cover texts being list. a copy of the license is included in the section entitled "gnu free documentation license".

前言

译者修正了原文中一些细微的错误。本文档是由译者独立完成,未免有翻译不妥之处,因此任何的建议与指正都是非常欢迎的。联系的方式是通过电子邮件至 chenshanxue@263.net

索引

摘要. 1

版权. 1

前言. 1

索引. 2

正文. 3

第一章 sip协议. 3

sip独立与媒体. 3

sip独立于传输层. 3

sip有很好的扩展性. 3

sip与最终用户服务. 3

第二章 sip协议概述. 4

sip语法. 4

sip事务. 5

sip会话. 5

server 行为. 7

第三章 osip开发库. 7

目标. 7

开发的层次. 7

语法分析器. 7

有限状态机. 8

事务管理. 8

谁将受益于osip 8

允许的平台. 8

第四章 osip语法分析器. 8

文件. 8

sip-url(sip地址). 9

url定义的语法结构与设计目标. 9

url_t结构体操作的api 9

url_param_t与url_header_t操作的api 11

sip headers操作的api 13

sip message操作的api 17

语法分析部分样例程序. 23

结构信息转化成字符串. 26

如何提高语法分析器的性能. 27

第五章 有限状态机. 27

事务处理与事件(events) 27

事务处理的定义与目的. 27

事件的定义与目的. 28

事务处理的api 28

回叫. 31

一些有用的宏(macros) 32

有限状态机的指引. 33

初始化osip栈. 33

分配与初始化osip_t结构. 33

发送事件(events)控制事物(transaction) 34

proxy开发的注意点. 36

建造自己的体系结构. 36

后记. 36

 

正文

第一章 sip协议

sip协议是用于发起、控制与终结多媒体会话的信令协议。它被ietf( http://www.ietf.org )以rfc2543发表。

sip是ietf致力于将电话服务带入ip网络众多协议的一个组成部分(它与sdp、rtp、rtcp、rtsp、rsvp、trip等众多协议构成sip系统协议栈)。其将要变成正在发展的ip电话——这个朝气蓬勃的电信工业——的标准之一。正如同电子邮件协议一样,sip将会变得越来越普及与大众化… …

sip独立与媒体

传统电话使用一种媒体编码个师通讯(正如被我所熟知的时隙与pcm概念)。现在,这种方式将被终结。我们的电话可以以不同的质量保证与不同的编码方法连接电视、连接摄像机、连接其他电话进行通信。sip具有媒体协商等功能。任何多媒体应用(例如:游戏、远程教学)都可以使用sip来建立会话。

sip独立于传输层

sip并不与任何的传输层紧密结合。这一构思将使得sip在第三代网络中受到最小的互操作影响。无线电话的要求(例如漫游功能)同样被关心。sip完美的构思,使得其适合作为新蜂窝电话时代的信令协议。

sip有很好的扩展性

在rfc2543中定义了6种类型的事务(invite,bye,cancel… …)。这些事务被用于媒体协商、创建、修改与终结呼叫。许多其它的服务已经提供这些方式(例如h.323系统),但sip以其为扩展性为目的设计与事务模型重用(对于服务器是透明的,被用于使用新类型事务创建辅助服务)。下面是可能的服务列表,其中的一些已经被实现。

短信,用于实时信息

预定或通告,用于会议管理

委托,用于呼叫转移等管理

sip与最终用户服务

    “sip透明支持名字映射与重定向服务,提供isdn与智能网络电话服务同样的一些功能。这些特性也使得个人移动成为可能。”

参考阅读:rfc2543.txt(章节1.1)

sip服务器被用于定位用户与分发请求的用户定位信息。这些途径,使得最终用户代理发起很少的请求,并能获得多种多样的服务。

许多扩展性在建议文档中定义(查询sip相关的draft)。我们也可以增加个性化的电话功能并与现有已存在的服务器保持交互。

第二章 sip协议概述

    本章目的并不是为了细致的描述rfc(我们必须通过阅读rfc获取协议细节),其紧紧提供快速、不完整的协议语法与行为概述。

sip语法

sip是一个基于utf8文本编码格式的协议(这使其消息具有很好的可读性,并易于调试)。sip协议中描述了请求、地址(url)、应答与个个头部字段的语法信息。整个语法信息以扩展巴克斯范式的形式描述,可以在columbia获得。

这些语法定义参考了mail与http的定义方式。sip定义了6种请求的类型。最基础的方法有:

invite  ack  cancel  bye  info  options

正如我们在请求的bnf定义中看到的(参考rfc2543第三章节),sip不限定于在规范中已定义的简短的方法列表,扩展性被充分的考虑了。不限定于上面的列表,任何其他类型的请求都可以被osip处理。当然这一切的一切,依赖于大家的通知与贡献新的可能方法的样例程序等等。目前的开发库没有太多的努力,以便明确的支持用于提供开发sip电话的能力。

invite sip:jack@atosc.org sip/2.0via: sip/2.0/udp home.sipworld.orgto: sip:jack@atosc.orgfrom: sip:cha@sipworld.orgcall-id: 35778645354@home.sipworld.orgcseq: 1 invitecontact: sip:cha@home.sipworld.orgcontent-type: application/sdpcontent-length: 267 v=0o=user1 53655765 2353687637 in ip4 128.3.4.5s=mbone audioi=discussion of mbone engineering issuese=mbone@somewhere.comc=in ip4 128.3.4.5t=0 0m=audio 3456 rtp/avp 0a=rtpmap:0 pcmu/8000    样例2-1 invite请求消息内容 invite请求被用于初始化与定制会话。现在,cha从sipword.com呼叫在atos.org的jack。这个请求将被发送到由atosc.org管理的sip代理服务器,其将被前转到jack的通讯设备,设备拥有真正ip地址。

sip事务

sip使用事物控制与管理会话。事务(invite,cancel,bye… …)通常是当前会话进展的记忆体。一些其它的事物(subscribe,notify… …)对会话来讲并不必要。一个事物是由请求与应答(一些的中间应答与最终应答)构成。以下头部字段:to、from、call-id与cseq被用于在一个事务中识别相关联的消息。

因为sip可以使用不可靠的传输层协议(在ip网络中推荐使用udp),sip也定义了在一个事务中消息重传的规则。


...   下一页
    摘要: http://hedong.3322.org/archives/000309.html http://hedong.3322.org/archives/000244.htmlhttp://soulogic.com/code/doc/regularexpressions/ 如何用正则表达式来表示中文? ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE