sip协议汇总十篇

BAIYunjie,MUWeixin,LIURunjie,SHENJinyuan

(InformationEngineeringCollege,ZhengzhouUniversity,Zhengzhou,450001,China)

Abstract:SessionInitialProtocol(SIP)iscurrentlyreplacingH.323tobethepromisingsignalingprotocolforVoIPnetwork.Inthispaper,thefunction,structureandworkflowofSIPprotocolarereviewed.ThenthesecurityproblemsfacedbySIP,thesecuritymechanismsofSIP,suchasIPSec,TLS,HTTP-Digest,S/MIMEandsoonareanalysedandintroduced,thevirtuesandshortcomingsofallkindsofsecuritymechanismsarepointedoutbycomparasion.Atlast,aconclusionofSIPsecurityandsecurityimprovementdirectionforthefutureresearchworkisgiven.

Keywords:sessioninitialprotocol;security;HTTP-Digest;secure/multi-purposeInternedmailextesionprotocol

0引言

SIP的设计充分考虑了协议的易用性和灵活性,却在安全性方面存在缺陷。本文分析了基于

SIP网络的安全问题,并提出改进措施。

1SIP介绍及其安全威胁

1.1SIP简介

SIP是由IETF(InternetEngineeringTaskForce)的MMUSIC(MultipartyMultimediaSessionControl)工作组于1999年提出的应用层控制协议[1]。SIP用来创建、修改和终结两个或多个参与者参加的会话。参与会话的成员可以通过组播方式、单播联网或者两者结合的形式进行通信。

SIP实体主要由四部分组成[2]:用户(UserAgent,UA)、服务器(ProxySever)、重定向服务器(RedirectSever)和注册服务器(Register)。

有两种类型SIP消息:请求消息和响应消息。请求消息包含一个请求行、几个消息头(header)、一个空行和一个消息体。如:INVITESIP:bob@biloxi.eomSIP/2.0。响应消息包含状态行、消息头、空行和消息体。状态行的格式为:版本号、状态码和原因短语,如:SlP/2.0180Ringing[3]。图1是SIP的会话建立流程。

1.2SIP安全问题

SIP协议采用文本形式表示消息的词法和语法,易于实现,但也因此使得SIP容易被攻击者加以模仿、篡改,加以非法利用。另外SIP用户广泛分布于IP网络上,所有影响数据网络的攻击都可能会影响到SIP的安全。具体来说,SIP的安全隐患有以下几方面:

(1)注册攻击(RegistrationHijacking)

SIP允许第三方代表用户注册联系信息,这就使攻击者恶意注册成为可能。攻击者为一个URI的所有Contact地址,这样所有到用户的呼叫就全部被转向攻击者的设备。

(2)伪装服务器(ImpersonatingaSever)

呼叫请求的目的域是在Request-URI中指定的。UA直接向域中的服务器发出呼叫请求,这就给攻击者机会来伪装成SIP服务器。

(3)篡改消息体(TamperingwithMessageBodies)

SIP的UA通过信任的Proxy来呼叫路由,UA通过SIP消息体来传送体来传送媒体会话加密的密钥时,恶意的Proxy就可以改动消息体,或者作为中间人,或者直接改写会话加密的安全特性。攻击者可以改动消息的SDP部分,将RTP媒体流指向分线设备,对通信进行搭线窃听。

(4)终止会话(TearingDownSessions)

当会话建立以后,通过发送消息可以修改通话状态。例如会话被第三方截获,获得To,From内容,然后在消息中插入BYE请求,用户的正常会话就终止。

(5)拒绝服务(DenialofService,DoS)

DoS是指特定的网络接口发送大量的信息而使系统破坏或暂时不可用。攻击者要想攻击网络中的某台主机,可以通过伪造一条看似来自这台主机的SIP消息,然后将这条消息发往大量的SIP服务器,通过SIP服务器,向要攻击的目的主机发送大量的SIP应答消息,从而使目的主机遭受拒绝服务攻击。

2SIP安全策略

防止攻击的最好方法是保证信息的私密性和完整性,防止重放攻击和信息欺骗,提供会话的验证和信息保密,防止拒绝服务攻击。理论上,信息的完全加密可以为信令的机密性提供最好的保护,但SIP请求和响应不能在端到端的用户之间完全加密,因为消息头域(如Request-URI和Via)对服务器来说必须是可见的,同时Proxy需要修改消息的某些参数(如增加Via头域值)。

SIP协议支持两种加密方式。第一种是端到端(EndtoEnd)加密,针对一些不需要中间服务器处理且包含用户信息的SIP消息头和消息体可以进行端到端的加密。另一种方法是逐跳(HopbyHop)加密。这种加密方式可以通过SIP外部的安全机制来实现。

2.1网络层IPSec协议

IPSec(InternetProtocolSecurity,Internet协议安全)是一种逐跳加密机制[4],IPSec安全协议工作在网络层,运行在它上面的所有网络通道都是加密的。IPSec为信息加密和鉴定提供许多选项,如访问控制,数据源认证和抗重播等。它可以创建安全隧道来通过不信任的网络,从虚拟专用网VPN中进行连接。一个加密的VPN隧道使得通信数据只能被通信双方理解,因此可以有效的防止窃听和其他攻击。图2为IPSec体系结构。

IPSec的缺点是网络实施复杂,实现代价较高,而且存在扩展性的问题,对于遍布在公网上的SIP终端来说建立IPSec通道是不现实的。

2.2传输层TLS协议

TLS(TransportLayerSecurity,传输层安全)提供的是面向连接的传输层安全服务[5]。它是另一种逐跳加密机制。该协议分为两层:TLS握手协议和TLS记录协议。前者用于协商安全机制,后者具体执行该安全机制。

TLS的工作流程如图3所示。在SIP网络中应用TLS可以为需要逐条之间安全通信的主机提供安全服务,保证会话的安全。它也为SIP实体提供对临近服务器的鉴别服务。TLS的优点是高层协议可以透明地建立在TLS协议层之上,而且不依赖于低层的传输协议,可以建立在任何能够提供可靠连接的协议之上。其缺点是必须运行在TCP之上,对于通常运行在UDP之上的SIP服务器,同时维持大量的TLS连接会负荷较重。

2.3PGP加密签名

PGP的缺点是加密机制实现较为复杂,缺少有效的密钥分发和管理机制。

2.4S/MIME

S/MIME(Secure/MultipurposeInternetMailExtensions,安全/多用途Internet邮件扩展)[7]协议的一般功能和PGP相似,它提供电子邮件消息的数字签名和加密功能。

SIP消息可以携带MIME消息内容,也采用S/MIME安全机制为MIME消息内容提供安全保护。采用S/MIME可以为端到端的SIP消息内容提供机密性和完整。当UAS接到含有S/MIME的请求时,首先对其数字签名进行验证,验证通过后将X.509签名证书加入本地公钥圈进行保存。图5为S/MIME在SIP中的基本流程。

S/MIME的一个缺陷是缺乏有效的公钥基础设施,另一个缺陷是使用TunnelingSIP时将产生非常长的消息,此时虽然可以采用TCP作为传输层协议,但是从网络的利用率来讲,还是不理想。

2.5HTTP-Digest摘要认证

HTTP摘要认证[8]是SIP协议的基本认证方式,它基于一种挑战/响应(challenge/response)模式,为SIP实体提供身份认证。在SIP网络中,HTTP摘要认证方式可以被用于用户到用户(User-to-User)的认证和服务器到用户(Proxy-to-User)的认证。图6是SIP注册用户鉴权过程。用户到用户的认证是指UAS、注册服务器或重定向服务器对于UAC的认证,使用401响应状态码,服务器到用户的认证是指服务器对于UAC的认证,使用407响应状态码。

目前,HTTP摘要认证仅能实现Server对本域内

UA的认证,无法实现UA对Server的认证、Proxy对

Proxy的认证和Proxy对域外UA的认证。

3结语

随着多媒体会议,VoIP,IMS等领域采用SIP协议为核心层信令控制协议,SIP成为一个应用广

泛、逐渐走向成熟的协议。

SIP协议虽然有开放、简易、可扩充等优点,但其自身并没有制定相应安全策略,现有的安全机制还有不完善的地方。许多人正在研究新的方法来提高SIP安全,例如在S/MIME的框架下,采用SigComp[9,10](信号压缩)技术,选择合适的压缩算法(如基于字典模型的LZW或LZSS)压缩SIP/SDP消息体,然后有选择地加密部分消息体,这样可以提高SIP消息传输的有效性和安全性。这也是作者下一步的研究方向。

参考文献

[1]IETF.RFC3261.SIP:SessionInitiationProtocol.2002.

[2]白建军,彭晖.SIP揭秘[M].北京:人民邮电出版社,2003.

[3]司端锋,韩心慧,龙勤,等.SIP标准中的核心技术与研究进展[J].软件学报,2005,16(2):239-250.

[4]KentS,AtkinsonR.SecurityArchitecturefortheInternetProtolol.RFC2401.1999.

[5]DierksT,AllenC.TLSProtocolVersion.RFC2246,1999.

[6]ZimmermannPR.TheOfficialPGPUser′sGuide.MITPress,1995.

[7]RamsdellB.S/MIMEVersion3MessageSpecification.RFC2633,1999.

[8]FranksJ,Hallam-BakerP,HostetlerJ,etal.HTTPAuthentication:BasicandDigestAccessAuthentication.RequestforComments2617.InternetEngineeringTaskForce,1999:94-112.

[9]IETF.SignalingCompression(SigComp).RFC3220,2003.

[10]IETF.TheSessionInitiationProtocol(SIP)andSessionDescriptionProtocol(SDP)StaticDictionaryforSignalingCompression(SigComp).RFC3485,2003.

作者简介白芸洁女,1981年出生,河南郑州人,硕士研究生。主要研究领域为下一代网络、信息安全。

1软交换

2SIP协议介绍

SIP协议可用于发起会话,也可以用于邀请成员加入已经用其它方式建立的会话,同时SIP协议的编码采用的是最基本的文本编码,使得它的通用性和保密性得到了很大的提升。同时SIP协议在信息交互时采用事务机制,每一个请求触发Server的操作方法,请求和响应构成一个事务,事务间彼此独立。在传输方面SIP协议承载在IP网,网络层协议为IP,传输层协议可用TCP或UDP,推荐首选UDP。

用SIP来建立通讯通常需要有六个步骤(如图1所示):

(1)登记,发起和定位用户;

(2)进行媒体协商--通常采用SDP方式来携带媒体参数;

(3)由被叫方来决定是否接纳该呼叫;

(4)呼叫媒体流建立并交互;

(5)呼叫更改或处理;

(6)呼叫终止。

这六个步骤需要会话发起者A与服务器,服务器与会话接受者B之间进行11次会话协商,分别为:

(1)用户摘机发起一路呼叫,终端A向该区域的服务器发起lnvitc请求;

(2)服务器通过认证/计费中心确认用户认证已通过后,检查请求消息中的Via头域中是否已包含其地址。若已包含,说明发生环回,返回指示错误的应答;如果没有问题,服务器在请求消息的Via头域插入自身地址,并向lnvitc消息的To域所指示的被叫终端B转送lnvitc请求;

(3)服务器向终端A送呼叫处理中的应答消息,100Trying;

(4)终端B向服务器送呼叫处理中的应答消息,100Trying;

(5)终端B指示被叫用户振铃,用户振铃后,向服务器发送180Ringing振铃信息;

(6)服务器向终端A转发被叫用户振铃信息;

(7)被叫用户摘机,终端B向服务器返回表示连接成功的应答(2000K);

(8)服务器向终端A转发该成功指示(2000K);

(9)终端A收到消息后,向服务器发ACK消息进行确认;

(10)服务器将ACK确认消息转发给终端B;

(11)主被叫用户之间建立通信连接,开始通话。

SIP协议在软交换网络中的应用范围非常广泛。但是现在SIP对许多传统业务的支持能力还是有限,所以对SIP协议的研究也是任重而道远。由于SIP易于扩展的特性,不同厂家的实现难免有许多自己的发挥,也加大了SIP协议互通的难度。但是无论如何,SIP的诸多优点还是有目共睹的,SIP在软交换网络中的应用必然越来越广泛。

SIPProtocolandApplicationAnalysisinTheIMS

ZhengZhijun

(ChinaTietongTelecommunicationsCorporation,HengshuiBranch,Hengshui053000,China)

Abstract:IMSisa3GPPRelease5versionoftheproposedsupportforIPMultimediaSubsystemservices,SIPisanapplicationlayercontrolprotocolforcreating,modifyingandterminatingoneormanyofthemultimediasessions,SIPisthebasiccontrolofIMSagreement.ThispaperbrieflydescribesIMSandSIPprotocol,SIPprotocolandthenintroducethebasicIMSapplicationsandextendedapplication.

Keywords:SIP;IMS;Application

一、SIP介绍

SIP(SessionInitiationProtocol)是一个会话层的信令控制协议,它独立于底层协议,用于建立、修改和终止IP网上的双方或多方的多媒体会话。1999年由IETF组织提出,它是一个在基于IP网络中,实现实时通信应用的一种协议。SIP支持、重定向、登记定位用户等功能,支持用户移动,与RTP/RTCP、SDP、RTSP、DNS等协议配合,可支持和应用于语音、视频、数据等多媒体业务,同时可以应用于presence(呈现)、instantmessage(即时消息)等特色业务。它的应用非常灵活。

SIP有下面五个基本功能:

(一)确定用户位置:确定被叫SIP用户所在的位置。SIP的最强大之处就是用户定位功能,它可以利用SIP终端在注册服务器上的注册信息实现用户定位,也可以利用其他定位服务器,如DNS、LDAP等提供的定位服务来增强其定位功能。

(三)确定用户能力:确定被叫终端可用于参加会话的媒体类型及媒体参数。SIP终端在消息交互过程中携带自身的媒体类型和媒体参数,这使得会话双方都可以明确对方的会话能力。

(四)建立会话:建立主被叫双方的会话。SIP会话双方通过协商媒体类型和媒体参数,最终选择双方都具有的能力建立起会话。

(五)管理会话:可以更改会话参数或中止会话。SIP本身已经从最初致力于P2P通信发展成为了下一代网络(NGN)综合协议体系的核心。

二、IMS系统

IMS(IPMultimediaSubsystem)是IP多媒体子系统,本质上说是一种网络结构。核心思想是在3G核心网中支持多媒体会话及其他基于SIP协议的业务,目的将蜂窝移动通信和互联网技术结合起来,能提供综合业务的下一代通信网络,它独立于接入和承载技术,即IMS的核心特点是采用SIP协议和与接入的无关性。

三、SIP协议在IMS中的应用

SIP信令消息从移动用户发起,经UMTS(通用移动通信系统)陆地无线接入网络进入核心网,通过SGSN(GPRS服务支持节点)和GGSN(GPRS网关支持节点)到达CSCF,经过处理后送往其他IMS网络、MGCF/MGW网络或外部IP网络。在此过程中,SGSN和GGSN仅查看消息的目的IP地址,不分析消息的内容,起到路由器的作用。

当3GPPRS在规划IMS时,由于SIP的灵活性和可扩展性,决定采用SIP机制作为IMS网络的会话初始化协议。3G网络被分为3个不同的域:电路交换域、分组交换域和IP多媒体交换域。其中IP多媒体子系统域是3G中最重要的域,这个域采用SIP作为主要的信令协议向用户提供基于因特网的多媒体服务。从逻辑上讲,所有的3G终端都包含一个SIP用户,IP多媒体网络节点就是SIP规范中所提到的。

SIPProtocolDesignBasedonIntegratedAccessDevice

JIANGGuo-song

(HuanggangNormalUniversity,Huanggang438000,China)

Abstract:IADSIPmoduleispartoftheupperlayerapplicationsoftwaresystemtocoordinate,controlboardSIPprotocolstackandhardwarebetweentheworkandinformationexchangeprocess.Inthispaper,functionalrequirementsIADintegratedaccessdevicesdesignedtoSIPprotocolmodulestructure,andintegratedaccessdevicesandsoftwarebasedontheexchangeinteractionbetweenthemediagatewaycontroller,developedawayofprocessinginterfaceandinterfacestoachieveacomprehensiveAccessdeviceandtheseamlessconnectionbetweentheMGC.

Keywords:softswitch;IAD;SIP;UA

随着三网合一的发展,基于TDM的PSTN话音网必将和分组交换数据网融合,形成可以传递话音和数据等综合业务的新一代网络。如何灵活,有效地实现现有的PSTN网与分组交换网的互通,将PSTN逐步的向IP网络演进,其很重要的一点就是如何接入,即如何将PSTN信号转化为能在IP网络上传送的信号。由于软交换是多种功能实体的的集合,是下一代电信网中语音/数据/视频业务呼叫、控制、业务提供的核心设备,也是目前电路交换网向分组网演进的主要设备之一。

1SIP协议模型

分层次模型:采用层次化的组织方法,每一层向其上层提供服务,并利用下层的服务。在一些分层系统中,内部层次全部被隐藏起来,只有外部层次和一部分精心选择的功能可以被系统外部所见。在这种系统中,软件部分是实现在层次结构中的一些虚拟机,连接是层次与层次之间交互的协议。其主要优点是它支持基于抽象程度递增的系统设计,使得设计者可以把一个复杂系统按递增的步骤分解开;细节屏蔽,每层对其上层而言,都是一个比其下层更适用、更高效的虚拟存在。这使得其实现和调试可按层组织、功能扩展也很方便,适用于多人分工、协作开发;支持功能增强,功能的改变最多影响相邻的上下层;支持软件复用。但是,并不是每个系统都可以很容易地划分为分层次模型,甚至即使一个系统地逻辑结构是层次化地,出于对系统性能地考虑,不得不把一些低级或高级地功能耦合起来。另外,很难找到一个合适地、正确地层次抽象方法。分层次模型最广泛应用于分层通信协议。

客户/服务器模型:将软件对资源的使用分成需者(客户)和供者(服务器)两个部分。服务器代表一个进程,它对其他的进程(客户机)提供服务,它接收客户的请求消息,然后发送响应消息给客户机。客户/服务器模型的特点是各系统构成部件小且自含,实现单一、可靠。另外,由于服务器可运行在各种地方,使该结构有很好的硬件结构适应能力,特别适合于多处理系统的分散处理。客户/服务器模型用于人机界面与系统的关系和资源管理。

2设计思想

从软件工程的角度来分析,我们首先必须进行结构设计,确定软件系统由哪些模块组成,以及这些模块之间的关系。软件系统结构是以选取最佳的软件模型来实现的。软件模型是将系统所提供的特性、服务以及系统所执行的任务统一成一体的概括框架。软件模型选择和建立的适当与否直接影响到软件实现的难易和系统性能的高低。软交换呼叫处理系统的设计和实现采用了分层次模型、客户/服务器模型和面向对象模型,以保证系统设计的高效性、可靠性、可扩展性。

3系统结构和处理流程

3.1系统结构

根据系统描述和总体设计说明,结合SIP协议栈和硬件板卡的适配,有图1的SIPIAD系统结构图。其中SO层是SIP协议栈层,HR是RTP协议栈,PG是板卡适配层,呼叫控制层负责整个呼叫过程的控制,可以定义为SV层或者DS层(IADSIP)。关于呼叫控制层与PG层、SO层的接口名按照Trillium的方法定义,既呼叫控制层和PG的接口名定义为Pgt,呼叫控制层与SO层的接口名定义为Sot。接口之间的原语名定义也完全按照Trillium的方式定义。

3.2处理流程

以SIPIAD终端既可以做主叫发起呼叫,也可以做被叫接受呼叫。基于SIP的IAD和基于H.248的IAD有所不同,H.248IAD必须有MGC的参与才能运行,而基于SIPIAD对MGC可选,只有电信级的SIPIAD才需要MGC的参与。

图2中假定IAD1为主叫,IAD2为被叫,IAD1和IAD2之间正常通信的最简单的一种情形,不设及地址解析和路由,没有MGC的参与。实际主被叫IAD通信,可能要经过MGC的控制,以便地址解析和呼叫计费。

4接口设计

SIPIAD模块的接口分内部接口和外部接口。内部接口是指呼叫控制层SV和SIP协议栈SO层的接口Sot,外部接口是指呼叫控制层和PG层的接口Mgt以及呼叫控制层和HR的接口Hrt。对于内部接口,主要是处理SV层控制SIP协议栈发送和接收SIP消息,而对于外部接口,主要是处理SV层和PG层的消息交互,实质上是处理PG层消息和从SIP协议栈接收/发送消息的映射,同时将SIP的SDP中的媒体信息传送给HR层,打开/关闭RTP端口。内部接口和外部接口相互独立,相互没有本质的联系。此模块要设计好,比较重要的一环是设计好外部接口原语及相应的数据结构。对于外部接口,要处理好以下消息:

当SV层收到PG发送来的消息时,首先判断PG发送来的信号类型:

1)主叫摘机信号

2)被叫摘机信号

3)主叫挂机信号

4)被叫挂机信号

7)媒体通道信息(用来构建SDP消息)

根据相应的消息类型来构建响应消息来控制SIP协议栈发送相应的SIP消息。同时,当SV层收到SIP协议栈送来的消息时,根据消息的类型向PG层发送消息:

1)Altertone消息

2)Ringingtone消息

3)挂机请求消息

由此构建SV层和PG层交互的数据结构SvEvnt如下:

structSvEvnt

{CmMemListCpmemLst;

UConnIdspConnId;

UConnIdsuConnId;

TknStrOSXLcaller;

TknStrOSXLcallee;

PGMEDIADESCmediaDesc;

}typedefstruct

{U8pres;

U8num;

U16port;

U8fmt[PGMEDIA_FMT_LEN_MAX];,

}PGMEDIA_FMT;

typedefstruct

U8used;/*onlyforPg,

TRUE=used,FALSE=nouse*/

CmInetIpAddraddr;/*sdp,c=...IPv4*/

PGMEDIA_FMTaudio;/*sdp,m=audio...*/

PGMEDIA_FMTvideo;/*sdp,m=video...*/

}PGMEDIADESC;

4结束语

本文通过对软交换系统下媒体网关控制和综合接入设备之间的信令交互方式,采用了SIP协议规范,并根据中国电信规范的要求设计了综合接入设备的SIP协议模块,实现综合接入设备的SIP协议注册以及信令处理流程,实现了综合接入设备与MGC之间的无缝对接,达到了语音的端到端数字化。

参考文献:

[1]信息产业部,2001.软交换设备总体技术要求[S].

[5]信息产业部.DraftRecommendationH.248(cleantext).ITUTStudyGroup16,15thJune2001.

本文提出了一个基于Android技术的旅游信息系统应用程序。旅游信息终端的通信架构是基于SIP(会话初始协议)协议设计的,其中浏览旅游信息的音频和视频模块是基于H.264协议和RTP(实时传输协议)设计的。旅游信息是通过区域实现模块分化的,用户可以选择景点并播放关于该景点的音频或视频信息,或者阅读图片和文本信息,从而选定最感兴趣的景点游玩。

1.技术原理

旅游信息终端使用SIP协议作为基本层。SIP协议是由IETF(因特网工程任务组)制定的多媒体通信协议,广泛用于控制交流会话。它依赖于传输层,其中会话可能由音频信息和视频信息共同构成。

SIP模块分为用户,服务器和注册服务器3部分。当用户发送一个音频或视频请求,用户首先向注册服务器发送注册请求。当注册服务器通过注册请求之后,音频或视频请求则被发送到服务器响应请求,以允许播放音频或视频信息。图1显示了一个基于SIP协议的音频或视频通信过程。

2.旅游信息终端的设计

当用户想看多媒体的信息时,开放媒体线程的请求被发送到服务器。多媒体信息通过H.264协议编码并压缩,然后再使用RTP协议发送到响应的接收线程中。通过H.264协议进行解码处理后,用户打开音频和视频线程查看信息。图3显示了整个处理过程。

本文的旅游信息终端以天津这个城市为例。根据天津的区域分布,旅游信息终端在此基础上按照其街区进行划分景点。天津市分为16个区,比如河北区、河西区、北城区、西青区等等(见图4)。当用户打开软件时,第一次使用会提示一个新手引导页面。每个区域的景点都有完整的信息介绍。

中图分类号:TP393.0

文献标识码:A

DOI:10.3969/j.issn.1003-6970.2015.07.025

0SIP简介

SIP(会话初始协议,RFC3261)是IETF定义的通过IP网络建立和管理多媒体会话的协议,它采用的是众所周知的客户机服务器模式,它借鉴了SMTP(简单邮件传送协议,RFC2821)以及HTTP(超文本传送协议,RFC2616)的原理,而这两个协议是因特网上最成功的协议,同时,SIP是一个基于文本的协议,这意味着它更易于扩展、纠错和构建各种业务。因此,在IMS(IP多媒体子系统)中,选择SIP作为其会话控制协议,更易于建立具有更大承载能力的业务。

根据协议标准定义及实际研制经验,协议平台的SIP协议分析划分为以下几部分内容:SIP事务用户层(TU,TransactionUser),事务层(TR,TRansaction),传输层(TP,TransPort),编解码模块(SIPPARSER/SDPPARSER,SIP协议编解码及SDP编解码),信令压缩模块(SIGCOMP)几个协议主体部分。除了这几个协议主体以外,SIP还需要实现和上层业务、数据库以及底层承载之间的接口,方便进行数据以及消息的交互。

SIP协议的TU层是SIP协议主体的重要组成部分,它的功能包含几个方面:(1)负责SIP消息到上层应用进程的消息分发;对上层应用屏蔽底层协议实现和分布式处理的细节;(2)对于需要创建对话的,维护对话的生命周期,管理对话的事务列表;(3)完成UAC,UAS或者proxy的协议栈行为。

数据区的创建根据协议栈的行为分为UA和proxy两种情况。

Proxy方式下会存在一人一出两个Leg对象,人呼侧由TU收到事务层的初始请求而创建人呼侧Leg对象,消息通过人呼侧Leg处理后上报上层应用,上层应用处理结束后,转发初始请求到TU的出呼侧,TU进而创建出呼侧Leg对象以及下发SIP消息。

UA方式下,作为被叫网元,TU协议栈收到事务的初始请求后,创建人呼Leg后,通过初始请求消息上报上层业务,上层业务处理完业务逻辑后,通过人呼Leg回送响应到事务层。后续请求和响应都是通过人呼Leg传送。作为主叫网元,上层应用调用发送初始请求接口到TU,TU创建出呼侧Leg后,初始请求消息通过该Leg发送至事务层,后续请求和响应都是通过出呼侧Leg传递。

1forking功能

在IMS中实现fork功能涉及到的网元类型分为终端(UA行为)以及服务器(proxy)行为,根据协议的描述,梳理不同网元的处理原则。

1.1终端处理原则

(1)请求

(2)响应

当fork发生时,多个被叫终端都会对主叫产生响应,未创建对话前,主叫终端可以接受或拒绝任何被叫终端的Fork应答,如果终端拒绝fork临时应答,那么必须发送cancel或者bye请求,这些请求是针对每个终端即每一个fork的分支都需要发出。

主叫终端只能收到一条最终响应,如果收到2xx响应,则建立对话,如果为2xx以上的响应,则认为无法建立呼叫,则需要释放呼叫。

1.2处理原则

立即转发除100(Trying)以外的任何临时响应。立即转发能成功建立对话的第一条2xx成功响应,如果其中任意一个地址接收呼叫,该网络服务器应该向其它地址发送CANCEL消息,如果由于网络时延而导致在服务器接收到多个200消息,服务器应当将后续的200消息拒绝掉,不应当后向转发,这样能保证只有一个终端能够建立对话。

对于3xx类以上的非成功响应,根据响应码的具体含义进行处理,比如3xx需要优先传到主教终端进行重定向,而对于4xx、5xx、6xx等非成功相应,即先保存这些响应,如果最后没有收到任何2xx响应,则根据协议规定的优选的原则选择响应码发送到主叫终端,结束整个会话。

2SIP中fork的实现原理

SIP协议实现fork的基本逻辑功能:包括fork呼叫状态维护,管理多个临时响应创建的对话,并在会话创建之前维持多个早对话出/人呼侧消息的正确关联关系。上层业务维护多个Contact的上下文与分叉呼叫之间的关系,分别对早对话进行承载控制。

2.1确定是否发生fork

proxy-directive=”proxy”

fork-directive="fork"/"no-fork"

parallel-directive="parallel"/"sequential"

其中proxy-directive确定当前的网元是否为proxy,fork-directive是用来指示是否需要fork,当指示为”no-fork”时,虽然被叫有多个,但是初始请求只会发送给优先级最高的被叫终端并不会产生分叉,如果指示为”fork”时,则进一步的读取parallel-directive指示的值,parallel-directive若为“parallel”为并行fork,并行fork则需要被叫归属的服务器将初始的INVITE请求同时发送给多个被叫终端,既并行呼叫;若为“sequential”为串行fork,串行fork则不需要服务器将初始请求同时发送给多个被叫终端,而是逐个的发送,先发给第一个优先级最高的被叫,如果接通,则不需要进行后续处理,如果没有成功接续,则继续发送给第二个被叫,依次类推。

2.2TU中会话的维护

从前面SIP的简介我们得知,TU需要去维护会话dialog,而对于dialog的维护,TU需要创建数据区Leg去保存相应的信息,fork情况下,可能存在同时发起多路fork分支的呼叫,而多个被叫终端的对话信息是不完全相同的,如果把所有的信息都保存在简单情况下的一个Leg数据区里,则容易引起一些误操作,逻辑很不清楚,所以,可以采用TU维护多对数据区的方式来解决。

普通呼叫情况下,SIP的TU层只需要维护人呼侧和出呼侧的一对Leg即可,这样所有的消息都通过这一对Leg来进行关键信息的记录以及转发。而fork情况下,由于终端有多个,而每个终端都可以传送不同的请求和响应到主叫终端,为了对每个终端的信息进行彼此独立的进行保存,TU为每一个终端建立对应的数据区Leg,具体如图2所示,图2和图1比较可以看出,fork情况下,TU的人呼侧和出呼侧分别有多个Leg,而且人呼侧和出呼侧是一一对应的,比如InLeg(0)和OutLeg(0)是对应第一个被叫终端,用来记录第一个别叫终端和主叫之间的会话信息,并进行这一分支呼叫的消息转发,而InLeg(l)和OutLeg(l)是为主叫终端和第二个被叫终端服务的。当然,不管是fork的第一个分支还是第二个分支和主叫发生联系,这都是属于当前的这一个完整的会话,因此两路分支之间也可能有信息的交互,此时可以通过CALL这样的一个空间来保存两者的数据区索引,方便通过一个人呼叫的Leg能很快的访问到另一个分支的Leg。

3具体流程

SIP的具体流程要分为并行和串行两种情形,分别进行介绍:

3.1并行流程

在并行流程中主叫的请求会同时被发送给两个别叫用户,具体流程如图3所示,其中UserAgentA为主叫用户,UserAgentB,C为被叫用户,ProxyServer是IMS系统中的某个具体的网元,是服务器,主要是起到消息转发以及完成fork功能的作用。

各步骤的具体含义如下:

主叫用户A发起请求INVITE到服务器,对应图上消息(1);

假定此服务器是被叫归属地的网元,它能检测到有多个被叫联系contact地址,同时通过Request-Disposition确定为发生并行fork,于是,向两个被叫用户B和C发起INVITE请求,对应图上消息(2)和(3);

两个被叫用户收到INVITE请求后,提示用户并振铃,都发送180(Ringing)消息通过服务器传给主叫用户,主叫用户能同时听到两个被叫的回铃音,对应图上消息(4)(5)(6)(7),此时,两路别叫的180消息中的To头部的tag值是不一样的,这样服务器中实现SIP的TU层就可以维护两个leg,来保存两路的不同会话信息;

两个被叫用户都会送响应,上图中被叫用户B接通呼叫,产生2000K的应答,而被叫用户C则回送4XX消息,显示忙,服务器接收到两个被叫的不同应答,需要进行处理,它主动地对被叫用户C回送ACK,以结束被叫用户C之间的呼叫,同时将被叫用户B的200OK转发到主叫侧,具体对应图上的(8)(9)(10)(11);

主叫收到成功响应后,回送ACK消息到被叫用户B予以证实,呼叫建立,对应图上的(12)和(13);

主叫挂机,发送BYE消息,被叫回应2000K响应,整个通话结束,对应图上的(14)(15)(16)(17)。

3.2串行流程

在并行流程中主叫的请求会按照优先级先后发送给两个被叫用户,具体流程如图4所示:

假定此服务器是被叫归属地的网元,它能检测到有多个被叫联系contact地址,同时通过Request-Disposition确定为发生串行fork,就需要根据两个被叫用户的优先级,优先级通过Accept-Contact,Reject-Contact等参数按照RFC3841协议规定的原则进行权值的计算,假定用户B的优先级高于用户C,服务器现将INVITE转发给用户B,对应图上消息(2);

被叫用户B收到INVITE请求后,提示用户并振铃,并发送180(Ringing)消息通过服务器传给主叫用户,主叫用户能听到被叫用户B的回铃音,对应图上消息(3)(4);

被叫用户B忙,因此回送4XX消息,服务器接收后,由于是fork情况,因此不将此失败响应发送给主叫用户,直接给被叫用户回送ACK确认,并将此初始请求消息INVITE继续发送到第二个用户C,对应图上消息(5)(6)(7);

被叫用户C收到INVITE请求后,提示用户并振铃,并发送180(Ringing)消息通过服务器传给主叫用户,并进一步的发送2000K响应接续通话,对应图上消息(8)(9)(10)(11);

主要内容分析内容:不同网络之间的寻址与定位;消息的映射预处理;终端地址的转换;硬件模块的组成。

具体设计了网关会话层软件程序的结构和功能模块的划分,给出了实现互通时的外部通信流程与内部消息流程,及硬件模块化设计。

关键词:SIP;H.323;转换网关

一、SIP与H.323的区别

(二)消息编码的不同:H.323采用压缩编码规则和ASN.1的二进制方法;SIP是基于文本的协议,与H.323相比具有较强的优越性。

(三)会话能力的协商和调整方法:

H.323利用H.245进行能力协商的会话控制;

SIP采用SDP协议描述。

(四)Session管理的方式:

H.323的session由MCU执行会议控制功能,参加会议的终端全部都向MCU发送控制消息;H.323设计便于计费,对带宽的管理也比较简单。

SIPsession设计为分布式,他具有分布式的多播功能,多播功能能够实现更方便的会议控制,简化用户定位、群组邀请等,节约带宽。

通过以上对比分析,从协议互通角度考虑,SIP和H.323网络互通需要解决以下问题:

H.323和SIP地址的转换;寻址定位的实现;消息映射和呼叫过程同步。

二、H.323地址与SIP地址的转换

SIP和H.323支持的地址格式不同:

H.323支持地址类型:H.323ID、E—mail地址、IP地址和主机名,URL地址。

SIP地址由URL定义其结构,用以指示主叫、被叫、重定向和请求目的地址,在SIP消息内的From,To,Contact字段和Request—URL字段中。

因此,如果完成H.323和SIP网络之间的互通,就必须要实现H.323和SIP网络之间的地址解析和映射,当网关收到来自H.323网络或SIP网络的消息,需要在消息内解析所包含的地址单元,再按地址映射表,转换成对方网地址格式,然后封装在需要发出的消息中。

SIP地址转换成H.323地址的转换规则:

(一)e164部分:当SIP地址中userinfo为Tel格式例如+86—010—****@IP地址,这部分将被转化成为H.323地址中e164部分,其中的+,—号会去掉。地址被转化成H.323地址中e164部分,为“86010****”。

(二)h323—ID部分:SIP地址中的userinfo部分会直接转成为h323—ID,例如sip:terminal@IP转成h323—ID就是sip:jack@IP地址。

(三)url—ID部分:SIP地址中的存在类似的user@domain,可以直接转化成为H.323url—ID部分。sip:terminal@bell—转为url—ID就是sip:terminal@bell—。

(四)email—ID部分:SIP地址存在user@group这中email地址格式,那么将email地址转化为h.323地址的email—ID部分,如sip:terminal@IP地址可以转terminal@IP地址。

(五)transport—ID部分:SIP地址中存在IP地址和端口的部分,H.323地址需要用transport—ID表示,如SIP地址如果是sip:terminal@IP,那么转成H.323地址:transport—ID是IPAddressIP地址:端口号。

从H.323地址转换到SIP地址时:

例如e164ID为86010****转化成SIP地址就是:sip:+86—010—****@host:user=phone。

2.h323—ID部分:这部分可以转化成为SIP地址的userinfo部分,但是如果地址是terminal@IP地址这种类型的话,需要将mailto转化成sip。

3.email—ID:需要将sip标识符加在email—ID的前面,例如email—ID是

terminal@IP变换到SIP地址就是:sip:terminal@IP。

4.url—ID:需要将sip标识符加在url—ID的前面,如url—ID是h323:

变换成SIP地址就是:sip:.

TheDesignandImplementationofVideoMonitoringSystemBasedonSIP

HUANGLun-wen,CHENGYong,LIHan

(AnhuiSunCreateElectronicsCo.,Ltd,Hefei230088,China)

Abstract:Howtosetuparemotenetworkvideoconnections,NATpenetration,efficientvideostreamencodinganddecodingistheresearchinthefieldofvideomonitoring.MEPG4videoencodingformats,whichisofhighcompressionratio,isusedintheSIP-basednetworkvideomonitoringsystem.Thesystemsupportsmulti-channelIPvideo,usingsoft-switchingplatformforcentralizedmanagementofthevideostreamtoachievetheestablishmentofanetworkvideoconnection,videostreamingencodinganddecoding,encryption,transmission,andintelligentalarm,videocapture,playbackandotherfunctions.

Keywords:SIP;IP;MPEG4;softswitch;videomonitoring

近年来,随着各类如地震、冰雪等自然灾害和恐怖事件频繁发生,公共安全已经得到世界各国的高度重视。各级政府和单位投入大量的人力、物力研究新型安全防范系统。其中视频监控是安全防范的重要组成部分,它是一种可靠、防范能力极强的综合系统[1-2]。

SIP(SessionInitiationProtocol)会话初始协议是IETF制订的,用于多方多媒体通信,是一个基于文本的应用层控制协议,独立于底层传输协议TCP/UDP/SCTP,用于建立、修改和终止IP网上的双方或多方多媒体会话[3-4],与RTP、RTCP、SDP等协议结合可实现语音、视频通讯;SIP协议可在TCP或UDP之上传送,由于SIP本身具有握手机制,可首选UDP。

1视频监控系统的构架和工作原理

1.1系统构成

该视频调度监控系统由视频嵌入式终端、监控管理平台以及SIP服务器系统三部分组成。其结构如图1所示。

其中嵌入式终端是基于SIP信令构建的系统,在SIP网元中也可以把它看作是包含媒体通讯功能的UA客户端。主要完成信号的采集、信号处理和前端摄像机的控制工作。

SIP服务器系统主要包括信令服务器(定位、、注册)、媒体服务器(转发、存储等)以及报警服务器等。当有监控中心向服务器发出监控请求时能够找到相应的监控设备,并且把请求转发到嵌入式终端。

1.2系统的工作原理

嵌入式终端注册到SIP服务器,如果监控管理平台需要监控某个终端,可以发出接入请求,SIP服务器可以找到终端所在地,然后建立连接。连接建立后,嵌入式终端系统采集音视频的模拟信号,然后转化为数字信号,经过编码器编码后(如MPEG-4编码)传送给视频监控服务器,视频监控服务器把视频数据进行IP封装后发送到监控管理平台。

2嵌入式终端设计

嵌入式终端采用Z228芯片开发,Z228是上海杰得微电子自主开发的多媒体应用处理器,是中国第一款0.13微米的高度集成的低功耗的具有强大多媒体处理能力的SoC芯片,单芯片包含了ARM926EJCPU和MPEG-4硬件编码器[5]。嵌入式终端的主要功能是视频的采集、A/D转换、编码、发送等功能。

2.1硬件体系结构

如图2所示,摄像头连接到视频输入接口,采集到的模拟视频数据经过A/D转换后进入高性能处理芯片,高性能处理芯片集成了硬件编码芯片和ARM处理器,数据经过硬件编码后成为高压缩比的MPEG4数据,通过RJ45接口传送到网络上。摄像头连接到云台上,使云台带动摄像头移动,摄像头以及云台的控制接口和控制器相连,控制器再和集成电路板上的485接口相连,这样就可以用485协议通过控制器对云台进行移动控制以及对摄像头进行变焦等操作。

2.2MPEG-4编码

系统采用的视频编码格式是MPEG-4。

编码的过程如图3所示:

1)初始化阶段:初始一个实例,调用函数:MP4EncInit;

2)选项配置:对编码的码率等参数进行配置,调用函数:MP4EncSetRateCtrl、MP4EncSetCodingCtr、MP4EnSetUsrData、MP4EncSetSmooth、MP4EncSetCrop;

3)采集视频流:获取产生MPEG4码流的头信息,调用函数:MP4EncStrmStar;

4)数据编码:每次得到YUV的图像帧后,产生这一帧的码流。调用函数:MP4EncStrmEncode;

5)输出数据:把编码过的数据打包,经过RTP传到SIP服务器;

6)停止数据流:一个码流数据的结束,调用函数:MP4EncStrmEnd;

7)释放资源:释放初始化的实例,调用函数:MP4EncRelease。

2.3媒体数据的发送

SIP连接建立成功以后,双方视频通道建立,在IP层上进行视频数据传递,利用RTP(实时传输协议)和RTCP(实时传输控制协议)通过UDP传输数据。RTP和RTCP配合使用,能以有效的反馈和最小的开销使传输效率最佳化,故特别适合传送网上的实时数据[6]。

RTCP负责管理传输质量在当前应用进程之间交换控制信息。在RTP会话期间,各参与者周期性地传送RTCP包,包中含有已发送的数据包的数量、丢失的数据包的数量等统计资料。SIP服务器可以利用这些信息动态地改变传输速率,甚至改变有效载荷类型。

3SIP服务器

SIP用来建立,改变,认证和终止基于IP网络的多个SIP的视频接入。在此接入过程的基础上很容易的实现多方的音视频、文本等各种类型的媒体会话。参与会话的成员可以通过组播方式、单播连网或者两者结合的形式进行通信。SIP服务器包括信令服务器、媒体服务器、监控服务器。

3.1信令服务器

信令服务器用于响应SIP终端注册以及连接建立,图4是一个完整的SIP视频的建立流程[7-8]。

当断开某路视频时,监控软件向嵌入式终端发BYE消息,嵌入式终端返回200OK,则连接断开。

3.2媒体服务器

媒体服务器的主要作用是媒体流数据的转发、录像、点播等功能。

当监控管理平台和嵌入式采集终端连接成功后,媒体服务器建立起映射关系,嵌入式采集终端采集现场实时图像,进行编码打包后发送到媒体服务器,媒体服务器根据该连接的映射关系,把IP视频包转发至监控管理平台;而监控管理平台通过同样的方法实现对嵌入式采集终端的各种控制命令的发送。

媒体服务器的另一个重要功能是视频流的存储点播。媒体服务器可以把经过该服务器的视频数据保存到硬盘中,用户可以对视频数据进行检索和回放。当监控系统比较庞大,一台媒体服务器无法满足整个系统需求时,可以对媒体服务器进行扩展,使用多台媒体服务器并发协作执行。

3.3监控服务器

当摄像机收集到异常信号(如探测到了高温信号,认为发生了火灾)后,将其通过监控系统传至报警联动装置,再由报警联动装置通过某种通信手段(如手机短信、E-mail等)自动向监控人员发出报警信号,或者系统自动地处理现场(如火灾时断电等)。

4监控管理平台

SIP监控平台的主要作用是连接并控制远程视频,视频流接收、解码、回放等。

4.1平台构成

监控管理平台包含SIP模块、RTP模块、XVID模块、远程控制模块等。分别实现远程网络视频连接的建立、视频流接收、解码播放、远程控制等功能。每个监控平台可以同时监控多路视频,能够对视频数据进行拍照或录像,对摄像头和云台进行操控。对指定区域的情况实时监测报警。

4.2MPEG-4解码

从SIP服务器转发过来的的视频流,需要解码后,才能呈现图象,解码包含Decoder和VPD2部分。其中Decode用于数据的读取和解码,而VPD用于图像缩放、格式转换等处理。

解码流程如图5所示:

1)初始化:初始化Decoder和VPD实例,调用函数:MP4DecInit、VPDInit;

2)取数据头信息:启动接收MPEG-4数据流,解出视频数据的头信息,调用函数:MP4DecDecode;

3)预留视频图象处理空间;

4)配置VPD:根据头信息中码流的宽高等,配置VPD模块。根据需要,将输出配置为Framebuffer或者内存。调用函数:VPDGetConfig、VPDSetConfig;

5)解码:根据头信息接收解码单元(一段数据),解码单元内的数据。一帧图像解码完毕则输出显示,否则继续解码,调用函数:MP4DecDecode;

5结束语

参考文献:

[1]钱龙华,吕强,杨季文,等.基于ISP的嵌入式视频监控系统[J].计算机应用,2007,27(7):1786-1788.

[2]朱校海,杨从保,杜治国.基于SIP的IP视频监控系统探讨[J].中国安防,2007(5):98-101.

[3]司端锋,韩心慧,龙勤,等.SIP标准中的核心技术与研究进展[J].软件学报,2005,16(2):239-250.

[4]张智江,张云勇,刘韵洁.SIP协议及其应用[M].北京:电子工业出版社,2005.

[5]魏涛,柴晓东,王华彬,等.基于Z228嵌入式最小系统设计[J].电视技术,2007,31(8):32-34.

1引言

基于SIP协议的即时通信系统在企事业单位使用较多,而随着单位保密意识的提高,对数据安全和网络安全的重视,人们对防火墙访问规则等安全策略的要求越来越严格,同时也限制了其基于计算机的各种应用,阻碍了其业务的发展。本文采用HTTPTunnel实现对防火墙的穿越,将TCP、UDP等非HTTP数据类型进行HTTP伪装和加密,在不改变单位的防火墙等安全策略的前提下,以隐蔽通信的方式完成应用程序的数据传输。

本文重点探讨了HTTPTunnel技术在以SIP协议为基础的即时通信系统中的应用,并提出相应解决方案和参考应用框架。旨在提升HTTPTunnel技术的应用范围,加强应用业务的数据安全与网络安全。

2应用系统框架

HTTPTunnel被称之为HTTP暗道,原理是将数据伪装成HTTP的数据形式来穿过防火墙。

基于SIP协议的即时通信系统是以SIP为信令交互协议的即时通信系统,其应用包括HTTP访问、即时消息、语音通信、视频通信等。该系统通过HTTPTunnel可以不用改变防火前的安全策略,即可实现自由通信。其框架基本包括四个主要方面:

1)基于SIP协议的即时通信系统,该系统实现基于TCP、UDP、HTTP等协议的即时通信功能;

2)Sock2HTTP服务器,该服务器实现非HTTP协议数据包的HTTP格式转换,通信端口映射,拥塞控制等功能;

3)HTTPTunnel系统,该系统实现基于HTTP协议的双向的虚拟数据连接,从而穿越防火墙;

4)HTTP2Sock服务器,该服务器实现需要转换为其他格式的HTTP数据,通信端口的映射,拥塞控制等。

其拓扑图如图1:

图1.基于SIP协议的即时通信系统的HTTPTunnel应用

3应用系统设计

3.1基于SIP协议的即时通信系统

基于SIP协议的即时通信系统主要有两部分组成。OpenSIPS服务器和oSIP客户端。

3.1.1OpenSIPS

OpenSIPS是成熟的开源SIP服务器,结构非常灵活,其核心路由功能完全通过脚本来实现,可灵活定制各种路由策略,可灵活应用于语音、视频通信、IM以及Presence等多种应用。

其主要功能如下:

3.1.2oSIP

oSIP是使用标准c编写的SIP协议栈。

主要包括两部分的内容:状态机模块、解析器模块。

图2.oSIP结构

oSIP为SIP协议的客户端,OpenSIPS为SIP协议的服务器,二者共同搭建基于SIP协议的即时通信系统。

3.2Sock2HTTP服务器和HTTP2Sock服务器

当位于内网的SIP终端访问外网,则终端建立连接的端口不一定被防火墙开放,尤其是UDP端口,若使TCP与UDP等消息穿越防火墙则需要相应的协议转换服务器,即Sock2HTTP和HTTP2Sock。

图3.Sock2HTTP与HTTP2Sock

3.2.1功能描述

主要负责分配对应的UDP端口;接收HTTP消息、解码、以UDP的形式发送至目的地址;接收UDP消息、编码、接收终端分配UDP端口的HTTP消息,返回生成的UDP端口;UDP端口与终端的对应管理机制。

3.2.2设计说明

a.建立TCP套接字,与某端口绑定(可配置),监听该端口;

b.接收到请求后,fork子进程处理该请求,请求包括要求分配端口的请求和其他请求两类;

c.处理要求分配端口的请求,将分配的端口返回给终端,保持该TCP链接不断开,直至通话结束或者终端注销。

4结论

基于SIP协议的即时通信系统使用HTTPTunnel技术,在企事业单位网内外实现自由通信。该应用不仅提升HTTPTunnel技术的应用范围,更加强应用业务的数据安全与网络安全。系统采用分布式设计,为系统升级和集成提供很好的构架基础,是企事业单位业务和数据穿越防火墙的一种安全和高效的应用。

[1]RFC25433261SIP:SessionInitiationProtocol.

1、ep是EngineeredPerformance的缩写。

2、字面意思是工程性能、工程表现,引申义可理解为设计性能有保障的产品,或者履行过工程监督程序的产品,强调产品整体的工程性能表现。是高科技的象征,作为最轻最强大的篮球鞋子,它最初的技术是源自于跑钉鞋的蜕变,其超强劲的尼龙细丝为足够提供精准的支撑,它的制作原理就和造大桥是一样的,材料只用于结构中最必需的部位,从而保证了鞋子最轻的质量。

3、ep什么意思并不是最重要的,最为重要的是获得消费者的青睐,ep这种高品质的鞋子并不是随便就可以生产出来的,而是需要经过非常严格的测试,在跑步过程中测试运动鞋所承受的向前的冲力及压力,经过合理的分析设计鞋子的承重部分,在保证鞋子能够完全符合实际情况的条件下再进行最轻化的改进。

THE END
1.状态码详解wx671a285cc4b89的技术博客所有状态码的第一个数字代表了响应的五种状态之一,其分类如下: HTTP状态码分类 1xx:信息性状态码,表示临时响应并需要请求者继续执行操作。 2xx:成功状态码,表示操作被成功接收并处理。 3xx:重定向状态码,表示要完成请求,需要进一步操作。通常,这些状态代码用来重定向。 https://blog.51cto.com/u_17090715/12883006
2.请求成功的响应状态码是什么,cdn技术,cdn软件,cdn自建,cdn部署请求成功的响应状态码是什么-一键安装,快速部署,合适有自架自部署CDN软件!https://wdcdn.com/html/SSLzhengshu/20241213/3968.html
3.理解Servlet生命周期与HTTP请求g)要得到二进制流,需要在响应上调用getOutputStream()方法。 h)setContentType()方法告诉浏览器如何处理随响应到来的数据。常见的内容类型为“text/html”、"application/pdf"和"image/jpeg"。 i)可以使用addHeader()或setHeader()设置响应首部。二者的区别是这个首部是否已经是响应的一部分。如果是,setHeader()会https://blog.csdn.net/u010733810/article/details/43453209
4.网络流媒体协议之RTSP与RTMP协议详解云库科技RTSP与RTP最大的区别在于:RTSP是一种双向实时数据传输协议,它允许客户端向服务器端发送请求,如回放、快进、倒退等操作。当然,RTSP可基于RTP来传送数据,还可以选择TCP、UDP、组播UDP等通道来发送数据,具有很好的扩展性。它时一种类似与http协议的网络应用层协议。 https://www.cockor.com/a/10060.html
5.视频直播直播管理API视频直播API参考视频直播提供三种直播形态,分别为推流直播、拉流直播和拉流转推,三种直播在停止逻辑上存在一定的区别。 推流直播状态依赖推流端的状态,在推流端停止推流后,推流直播将自动停止,推流端开始推流后,推理直播将自动恢复。 拉流直播和拉流转推直播类型需要用户手动调用“拉流模式开始直播”和“拉流模式停止直播”接口,才会https://ecloud.10086.cn/op-help-center/doc/article/40529
6.明溪县总医院门诊综合楼智能化建设项目货物类采购项目附件1.55寸超窄边液晶屏;物理分辨率≥1920×1080,响应时间≤8ms2.物理拼缝≤1.8mm,亮度≥600cd/㎡,对比度≥7000:1,图像显示清晰度≥950TVL,亮度鉴别等级≥11级;3.输入接口不少于VGA×1,DVI×1,BNC×1,HDMI×1,USB×1;输出接口不少于VGA×1,DVI×1,BNC×1;4.液晶显示单元内置图像处理芯片,能够实时分析显示内容http://zfcg.cz.sm.gov.cn/upload/document/20221019/0c43fafa7c4d42589a835945176404a4.html
7.系统调优笔记content 阶段会生成 HTTP 响应。当然,其他阶段也有可能生成 HTTP 响应返回给客户端,它们通常都是非 200 的错误响应。接下来,会由 HTTP 过滤模块加工这些响应的内容,并由 write_filter 过滤模块最终发送到网络中。 image 3. 请求的反向代理 Nginx 由于性能高,常用来做分布式集群的负载均衡服务。由于 Nginx 下游通常是https://www.jianshu.com/p/6b2e498f5204
8.HTTP请求与响应处理清出于兰// 为网站服务器对象添加请求事件,当客户端有请求的时候就执行事件处理函数// request事件名称,(req, res)=>{}事件处理函数app.on('request', (req, res) => { // 获取请求地址 req.url // 设置响应报文 // text/plain默认状态,纯文本 charset=utf-8编码格式 res.writeHead(200, { 'content-type':https://www.cnblogs.com/llanq123/p/13866808.html
9.Django学习之路之请求与响应python这篇文章主要为大家详细介绍了Django的请求与响应,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助 + 目录 前言 上一章节中我们讲了如何引用静态文件和模板,以及如何使用常见的Django命令等。那么这章我们就来聊聊Django是如何向浏览器发送数据,以及我们怎么来接收浏https://www.jb51.net/article/237554.htm
10.电商总结——如何打造一个小而精的电商网站架构监控各种网络参数和各服务器相关资源(CPU、内存、磁盘读写、网络、访问请求等),保证服务器系统的安全运营,并提供异常通知机制以让系统管理员快速定位/解决存在的各种问题。目前比较流行的应该是Zabbix。2)服务器监控服务器的监控,主要是监控各个服务器、网络节点、网关等网络设备的请求响应是否正常。通过定时服务,定时去https://www.imooc.com/article/20952