SIP服务器调查报告_第1页
SIP服务器调查报告_第2页
SIP服务器调查报告_第3页
SIP服务器调查报告_第4页
SIP服务器调查报告_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

开源SIP服务器调查报告一、引言随着通信IP化的发展,IP传输的高带宽、低成本等优势使得越来越多的企业、电信运营商加快建设基于IP的各种通信应用。在通信协议IP化发展中,SIP协议毫无争议地成为各大电信运营商构建其未来网络的基础协议,越来越多的SIP软件产品也不断出现在行业应用中。SIP协议的标准化,同时也造就了一大批优秀的开源软件产品,包括Asterisk、SipXecs、FreeSWITCH、OpenSIPS等SIP服务端软件,也包括X-lite、LinPhone、eyeBeam等SIP客户端软件。二、调查目的根据目前已经着手开发的系统所采用的服务器Asterisk来看,Asterisk支持视频通话的效果不是很理想,影响通话的质量。为此,本文对当前所有的SIP开源服务器进行调查分析,对其性能、使用方便程度等多方面进行分析,从而为选取支持视频且视频质量较高的服务器做准备。三、调查内容目前SIP开源服务器主流的有以下几个:OpenSIPSOpenSIPS是一个成熟的开源SIP服务器,除了提供基本的SIP代理及SIP路由功能外,还提供了一些应用级的功能。OpenSIPS的结构非常灵活,其核心路由功能完全通过脚本来实现,可灵活定制各种路由策略,可灵活应用于语音、视频通信、IM以及Presence等多种应用。同时OpenSIPS性能上是目前最快的SIP服务器之一,可用于电信级产品构建。凭借其可扩展、模块化的系统架构,OpenSIPS提供了一个高度灵活的、用户可配置的路由引擎,可以为voice、video、IM和presence等服务提供强大高效的路由、鉴权、NAT、网关协议转化等功能。由于其稳定高效等特点,OpenSIPS已经被诸多电信运营商应用在自己的网络体系中。其主要功能如下:SIP注册服务器/代理服务器(lcr、dynamicrouting、dialplan)/重定向服务器SIPpresenceagentSIPB2BUASIPIMServerSIPtoSMS/XMPP网关SIPtoXMPP网关SIP负载均衡SIPNATtraversal源码下载网址:/Downloads/Downloads详细介绍:/wiki/view/OpenSIPS官方网站:/KamailioKamailio®

(formerOpenSER)isanOpenSourceSIPServerreleasedunderGPL,abletohandlethousandsofcallsetupspersecond.Amongfeatures:asynchronousTCP,UDPandSCTP,securecommunicationviaTLSforVoIP(voice,video);WebSocketsupportforWebRTC;IPv4andIPv6;SIMPLEinstantmessagingandpresencewithembeddedXCAPserverandMSRPrelay;IMSextensions;ENUM;DIDandleastcostrouting;loadbalancing;routingfail-over;accounting,authenticationandauthorization;supportformanybackendsystemssuchasMySQL,Postgres,Oracle,Radius,LDAP,Redis,Cassandra;XMLRPCcontrolinterface,SNMPmonitoring.ItcanbeusedtobuildlargeVoIPservicingplatformsortoscaleupSIP-to-PSTNgateways,PBXsystemsormediaserverslikeAsterisk™,FreeSWITCH™orSEMS.KamailioandtheSIPExpressRouter(SER)teamedupfortheintegrationofthetwoapplicationsandnewdevelopment.源码下载地址:/w/download/安装指南:/yetyongjin/article/details/8106997 /rosekin/article/details/7103183 /p/kamailio 官方网站:/w/sipXecssipXecs

isamodularandscalablecommunicationssolutionforenterprisesofallsizes.ItprovidesahighlyavailableSIProutingcoreintegratedwithagrowingsuiteofcommunicationsservicesallmanagedthroughaunifiedwebbasedmanagementapplication.sipXecsprovidestraditionalPBXtelephonyservicesintegratedwithinstantmessaging,andallowstheuseofadvancedcommunicationstoolslikevideocalling.ThesipXecsEnterpriseCommunicationsSolutionisanativeSIPbasedsolutionthatoffersallthetypicalfeaturesexpectedfromaPBX,includingvoicemail,unifiedmessaging,auto-attendant,conferencing,presenceandcallcentercapabilities.sipXecscanbedeployedonasingleserverforsmallerinstallationsorasadistributedandoptionallyredundantsystemforlargerdeployments.It'sWebServices(SOA)basedmanagementandconfigurationsystemallowscentralizedmanagementofadistributedsystemandoffersplug&playconfigurationforallphonesandgateways.ThesipXecsdevelopercommunityisstrongandgrowing.sipXecshasbuiltareputationforbeingeasytouse,scalableandofhighquality.Inaddition,sipXecsisa

unifiedcommunicationssolution,notjustanIPPBX.ThesipXecsprojectdeliversafullycapableopensourceunifiedcommunicationssolutionforthesmalltomid-enterprisemarket.Thismarketrangesfromafewuserstoseveralthousandusers,possiblylocatedindifferentbuildings,cities,orcountries.源码下载地址:/pub/sipXecs/ISO/参考资料:/p-4455907895111.htmlfreeswitchFreeSWITCH

是一个

\o"Freesoftware(页面不存在)"免费、\o"Opensourcesoftware(页面不存在)"开源

的通信软件,可用于创建音、视频以及短消息类产品和应用。它采用

\o"MozillaPublicLicense"MozillaPublicLicense

(MPL)授权协议,MPL是一个

\o"Freesoftwarelicense(页面不存在)"开源的软件协议.它的核心库libfreeswitch可以嵌入其它系统或产品中,也可以做一个单独的应用存在。源码下载地址:/参考资料:/wiki/FreeSWITCH /link?url=WHBaHNAKHkZsw3ptXD31Kd6eQD8bgkw14MRraJzR04tDqV47UkQmB1zETCJfcwpERpq3o2OtSjXE3DgGRHeS1t7Vl17VbdZ99OC5VGyXoxKCipangoCipangoisaSIPServletextensiontothepopularJettyHTTPServletengine.CipangoisthenaconvergentSIP/HTTPApplicationServercompliantwithbothSIPServletsandHTTPServletsstandards.CipangosharesmanyofJettygoalsandisdesignedtobelighweight(SIPandHTTPservicesmaybeconfiguredtouselessthan1MB),simpletouse,flexibleandhighlyperformant.ItcanbeusedforconvergentHTTP/SIPapplicationsandisalsoabletosupportanykindofSIP-onlyapplicationssuchas:Subscribercommunicationsapplications:presence,callforwardandscreening,rich-mediaservices,conferencing,instantmessaging,contactcenters...Networkfunctions:richcallcontrolaccess,protocoltranslation,intelligentroutingandlogging...源码下载地址:/p/cipango/MobicentsThe

MobicentsCommunicationPlatform

isthebestarchitecturetocreate,deployandmanageservicesandapplicationsintegratingvoice,videoanddataacrossarangeofIPandlegacycommunicationsnetworks.Itdrivesconvergencewiththefollowingkeyenablers:参考资料:/svn/trunk/servers/jain-slee//jean.deruelle/mobicents-20-the-java-open-source-communications-platformfosdem-2011-jean-deruelle源码下载网址:/projects/mobicents/?source=navbar /p/mobicents/YateYateisanext-generationtelephonyengine;whilecurrentlyfocusedon

VoiceoverInternetProtocol

(VoIP)and

PSTN,itspowerliesinitsabilitytobeeasilyextended.Voice,video,dataandinstantmessengingcanallbeunifiedunderYate'sflexibleroutingengine,maximizingcommunicationsefficiencyandminimizinginfrastructurecostsforbusinesses.Yatecanbeusedasa:VoIPserverSS7

switchVoIPclientJabberserverJabberclientConferenceserver-withupto200voicechannelsinasingleconferenceVoIPtoPSTNgatewayPC2PhoneandPhone2PCgatewayIPTelephonyserverand/orclientH.323gatekeeperH.323multipleendpointserverH.323<->SIPProxySIPsessionbordercontrollerSIProuterSIPregistrationserverIAXserverand/orclientJingleclientorserverMGCPserver(CallAgent)ISDNpassiveandactiverecorderISDN,RBS,analogpassiverecorderCallcenterserverIVRenginePrepaidand/orpostpaidcardssystem源码下载地址:http://yate.null.ro/pmwiki/index.php?n=Main.Download参考资料:/wiki/Yate四、性能分析1、OpenSIPSa、基本应用配置OpenSIPS不但提供了丰富的功能,还具有操作简单的特点。所有OpenSIPS的应用功能都可以通过一个配置文件opensips.cfg来实现的。该配置文件主要分为三个部分,第一部分主要是全局变量的设置;第二部分主要是加载模块,并设置模块的相应参数;第三部分主要是路由的策略和功能应用。b、系统结构OpenSIPS的架构开放灵活,其核心功能控制均可通过脚本控制实现,各个功能也通过模块加载的方式来构建。采用lex和yacc工具构建的配置文件分析器是其架构设计中的重要部分之一。通过这个分析器,opensips设计了自己的语法规则,使得我们可以适合SIP规范的语言来进行配置文件中的脚本编写,从而达到简化程序以及方便代码阅读的目的。同时这样的设计也使opensips.cfg配置文件的执行速度达到了C语言的级别。其体系结构大体如下图:框架的最上层是用于实现sip消息路由逻辑的opensips.cfg脚本配置,在配置文件中,可以使用Core提供的Parameter和Function,也可以使用众多Modules提供的Function。比如在之前的负载均衡示例中,is_method(“INVITE”)就属于textops模块提供的功能,src_ip和src_port都属于Core提供的参数。下层,提供了网络传输、sip消息解析等基本功能。在左侧,通过相应的数据库适配器,可是使用多种数据库存取数据。在这样的体系结构下,我们就可以方便地通过增加功能module来添加我们需要的功能,而不会对原有系统造成影响。除了以上所述的OpenSIPS的优点,OpenSIPS还提供了一系列的管理维护命令的接口。我们可以通过Core和Module提供的MI管理接口,方便的监控系统以及模块的状态。比如,通过Core的fifops命令,可以获取当前进程的状态;通过Core的fifoget_statistics命令,可以获得当前共享内存以及各进程私有内存的使用情况等等。通过MI管理接口,我们还可以方便地在运行时修改部分参数,比如,对于load_balancer模块,我们可以通过fifolb_reload命令,更新目标组的配置信息,可以通过fifolb_status命令激活或关闭某个目标,这些命令在实际应用中都非常实用。如果希望通过WEB图形界面管理OpenSIPS,OpenSIPS社区还提供了OpenSIPSControlPanel4.0产品。c、与其他项目共同搭建VOIP服务OpenSIPS并不具备一个媒体服务器(MediaServer)的功能。媒体服务器主要提供了类似VoiceMail、呼叫中语音交换、会议服务、视频服务等一系列和语音、视频相关的服务;而OpenSIPS的主要功能主要在于代理、路由和网关。因此,单独的OpenSIPS并不能够提供VOIP服务,只有和Asterisk等具备媒体功能的软件整合,才能构建可靠的语音服务体系。对于媒体服务器,开源世界也提供了很多选择,如老牌的Asterisk,以及功能全面的sipXecs以及专注于IVR功能的FreeSwitch等,他们都是非常优秀的开源项目。其中Asterisk功能全面、灵活,但主要面向企业应用,在性能上稍差。但Asterisk提供了完善的PBX功能,可以连接多种不同的电话终端,支持多种主流的IP电话协议和系统接口。FreeSwtich专注于IVR功能,性能、可靠性非常高。近期FreeSwitch已被sipXecs采用作为其IVR部分功能。sipXecs则是一个功能比较全面的产品,包括IVR、VoiceMail、人工坐席等等,更难得的是SipXecs提供了良好的配置、管理界面,易于使用。只要将OpenSIPS作为前置接入,将多个Asterisk、FreeSwitch、sipXecs挂接在其后,由OpenSIPS实现SIP消息的转发和负载均衡,就可以轻松地实现各种语音业务以及规模扩展。如下图所示。2、Kamailio Kamailiocanbeusedonsystemswithlimitedresourcesaswellasoncarriergradeservers.ItiswritteninpureCforUnix/Linux-likesystemswitharchitecturespecificoptimizationstoofferhighperformances.KamailioProjectaimstobeacollaborativeenvironmentofitsuserstodevelopsecureandextensibleSIPservertoprovidemodernUnifiedCommunicationandVoIPservices.3、sipXecssipXecs企业通信系统(ECS)是一个高伸缩性、企业级的通信解决方案。它是名为SIPFoundry的非盈利性、开源组织的一个独立的产品。借助标准和基于开源环境,sipXecs提供低成本、易使用,以及在其他系统中找不到的互操作性、功能和可伸缩性。sipXecs基于SIP协议。它提供了所期望的PBX的全部典型功能,包括:语音信箱(VoiceMail)、统一消息(UnifiedMessaging)、自动总机(Auto-Attendant)、电话会议(Conferencing)、出席(Presence)、以及呼叫中心(CallCenter)应用等。sipXecs不仅仅是一个指令集的网路电话交换平台,而可以算是一个整体解决方案(TotalSolution)。也就是说,它已包含了一个网路电话交换系统要能实际上线使用、所有需要并会用到的应用组件,例如Web-UI等。sipXecs是目前开源IP-PBX中唯一可以做到终端电话免设定,可以即插即用的系统。这种特性对于应用在办公室的大量部署非常有用。不过有一点要注意,与Asterisk不同,sipXecs是以L-GPL软件授权,这与GPL授权大致是相同,只是差别在于函式库部分有特别的授权条款。4、freeswitcha、freeswtich对高清(HD)语音编码的支持freeswitch支持大部分高清语音编码,包括Speex,G.722,G.722.1(Siren)及SILK,与之对比,asterisk1.8版本之前只支持采样为8000的常用语音编码,1.10后asterisk开始从新架构其mediacodec模块,以全面支持高清等宽频语音编码。b、有些语音编码以模块方式加载(G729等),有的则属于freeswitchcore部分(G711),系统默认不加载所有语音编码,对于没有加载的编码,可以通过配置modules.conf.xml配置,在fs_cli上执行"showcodec"会显示当前系统已经加载的编码:type,name,ikey

codec,ADPCM(IMA),mod_spandsp

codec,AMR,mod_amr

codec,G.711alaw,CORE_PCM_MODULE

codec,G.711ulaw,CORE_PCM_MODULE

codec,G.722,mod_spandsp

codec,G.723.16.3k,mod_g723_1

codec,G.72616k,mod_spandsp

codec,G.72616k(AAL2),mod_spandsp

codec,G.72624k,mod_spandsp

codec,G.72624k(AAL2),mod_spandsp

codec,G.72632k,mod_spandsp

codec,G.72632k(AAL2),mod_spandsp

codec,G.72640k,mod_spandsp

codec,G.72640k(AAL2),mod_spandsp

codec,G.729,mod_g729

codec,GSM,mod_spandsp

codec,H.261Video(passthru),mod_h26x

codec,H.263Video(passthru),mod_h26x

codec,H.263+Video(passthru),mod_h26x

codec,H.263++Video(passthru),mod_h26x

codec,H.264Video(passthru),mod_h26x

codec,LPC-10,mod_spandsp

codec,PROXYPASS-THROUGH,CORE_PCM_MODULE

codec,PROXYVIDEOPASS-THROUGH,CORE_PCM_MODULE

codec,Polycom(R)G722.1/G722.1C,mod_siren

codec,RAWSignedLinear(16bit),CORE_PCM_MODULE

codec,Speex,mod_speex

codec,iLBC,mod_ilbc以模块方式加载的编码在目录src\mod\codecs下面,所以如果我们想添加自己的编码,在此目录下参考其他实现即可,freeswitch对新编码的添加接口也及其简单,主要为注册几个四个回调,init,encode,decode,destroy,然后通过switch_core_codec_add_implementation把这几个回调的实现注册进去。c、设置编码的优先级vars.xml可以设置系统默认使用的编码,为全局设置,下面两个变量,一个表示呼入,一个表示呼出。

<X-PRE-PROCESScmd="set"data="global_codec_prefs=G722,PCMA,PCMU,GSM"/>

<X-PRE-PROCESScmd="set"data="outbound_codec_prefs=G722,PCMA,PCMU,GSM"/>同时,不同的协议类型(SIP,和H323等)可以设置自己的编码优先级,比如采用SIP协议时,可以在

sofia.conf.xml

<settings>

<paramname="inbound-codec-prefs"value="$${global_codec_prefs}"/>

<paramname="outbound-codec-prefs"value="$${global_codec_prefs}"/>

</settings>这里,SIP协议类型继承了vars.xml的全局设置(呼入,呼出)。d、对编解码转换的支持

(1)作为B2BUA,freeswitch支持大部分音频编码的转换,但无视频编码转换功能。

(2)对于语音编码G721/G728/G719/AMR,只支持转发,不支持转换。

(3)freeswitch支持的视频编码(只转发)

H261-H.261Video

H263-H.263Video

H263-1998-H.263-1998Video

H263-2000-H.263-2000Video

H264-H.264Video

Providedbymod_h26X.

Theorapassthrough.

Providedbymod_theora.

MP4Videopassthrough.

Providedbymod_mp4v.e、媒体代理

freeswitch对媒体的处理有三种方式:(1).默认方式:媒体通过freeswitch,RTP被freeswtich转发,freeswitch控制编码的协商并在协商不一致时提供语音编码转换能力,支持录音,二次拨号等。(2).代理模式:媒体通过freeswitch转发,但是不处理媒体

RTP通过freewtich转发(只改动sdpc=ip)

freeswtich不控制sdp参数,只是转发。

通话的终端必须有一致的语音或者视频编码,因为freeswitch此时不支持转码(适合视频编码)不支持录音,二次拨号等功能(3).不转发也不处理媒体此模式下freeswitch更像是一个信令proxy,媒体不会通过freeswitch,sdp消息体也不做修改,没有录音,二次拨号等功能。三种方式在不同应用场景下各有优点,对于(1),也是默认方式,更适合呼叫中心等富功能应用,但性能相比其他两个也是最差的,对于(2),更适合处理nat问题,可以考虑用这种模式做一个sessionbordercontrolor,也适合于外部MCU配合做为视频会议,性能也明显好于(1),对于(3),更像是一个信令代理,性能最高,但提供的功能有限。5、MobicentsMobicents是一个高伸缩性、事件驱动的应用服务器、是一款专业的、开放源代码的VoIP中间件平台。Mobicents是首个采用JAINSLEE标准的开放式源代码电信应用服务器环境。被用于语音、视频和电信下一代智能网络(NGIN)的开发中,Mobicents为SDP和IMS应用提供了一个高性能的核心引擎。JAINSLEE就是JAINServiceLogicExecutionEnvironment(JSLEE)的说法。JAIN是JAVAAPIsforIntegratedNetworks或者JAINAPIsforIntegratedNetworks的简称,为融合(综合)网络而提供的JAVAAPI规范(provideAPIsforIntegratedNetworks),关注通信网络的各个方面(targetallaspectsofcommunicationsnetworks)”的目的而定义的标准规范。JAIN是Java从IT领域到电信领域的扩展,目的是使得电信领域的增值应用业务也像IT领域的增值应用业务一样快速开发、自由部署、移植便捷。但对Sun来说,这正是它们的拿手好戏,它们在IT领域就是做这个的。还记得“WriteOnce,RunAnyWhere”吗?现在他们就是通过JAIN技术标准把所有这些好处带到电信领域里来。JAIN是Sun公司和其他设备商、运营商制定的规范,通过这个规范为电信领域应用业务的开发制定了统一的接口,通过这个统一的接口,屏蔽网络层以下设备的不同差异、实现业务和承载的分离,各层业务功能独立且职责清晰,电信网络由以前的封闭状态慢慢的变为了开放状态,在这样开放的基础者上,电信领域增值应用开发、部署、移植也会越来越快捷。值得强调的是,JAIN是一个规范,Sun下的JAIN项目专家组(分为协议专家组(PEG)和应用专家组(AEG))只负责制定,不负责实现,如果设备商或运营商支持JAIN规范,就要自己去实现规范的内容,然后到JAIN的官方网站下载一个TCK(TechnologyCompatibilityKit:技术兼容工具),用它来验证产品是否达到规范要求的标准,如果达到标准了,就可以向JAIN申请认证了。认证好之后,大家就都可以按照JAIN的标准开发和部署了。Mobicents及相关子项目包括:RestComm

–下一代云通信平台实现的快速构架和部署语音和消息通信应用,使用主流Web开发技术。RestComm是面向电信2.0的SaaS解决方案。SessionBorderController(SBC)

–允许服务提供商增强其IP服务,解决NAT转换问题,配置复杂平衡策略,流量过滤和基于端口和负载定期其他规则。JAINSLEE

–一个事件驱动型的可高可扩展的应用服务器,它具有健壮的模块化设计模型和容错的执行环境。SLEE针对不同的网络提供了丰富的连接适配器,包括SS7MAP,TCAP,INAP,ISUP,SMPP,USSD,XMPP,SIP,MGCP,HTTP,XDM,XCAP等等。完全兼容于JSR240(JSLEE1.1)。jSS7

–实现兼容ITU-T协议栈,不但能支持IP(SIGTRAN)开,还能支持遗留的SS7卡。支持SS7的所有层,包括MTP2,3,ISUP,SCCP,TCAP,MAP,CAP和INAP等。SMSC

–是一个在电信运营环境下进行生产部署运营的,健壮的短信服务中心平台,它是运行在一个现代可扩展构架上的中间件平台之上。SMSC实现短信转发,短信广播和群组短信功能。希望了解更多信息请下载TelScaleSMSC产品详细信息表。USSDGateway

–是一个在电信运营环境下进行生产部署运营的,健壮的USSD网关,它是运行在一个现代可扩展构架上的中间件平台之上。它能帮助运营商快速创建和部署新的基于对话的增值服务,通过提供一个中间平台将内容提供商和手机用户连接起来,向手机用户提供一个高速交互访问接口,实现对丰富内容的访问。SIPServlets

–是一个应用容器,实现将JavaEE扩展实现对SIP以及融合应用的的快速开发和部署能力。其能运行在TomcatJBossAS/EAP和其他JavaEE容器中。完全兼容于JSR289(SIPServlets1.1)。TelScaleMediaServer–一个功能完备的基于Java的媒体服务器,其能通过MGCP(JSR-23,RFC3435)和JSR-309(MedicaServerControlAPI)进行控制。MediaServer的产品目标是实现一个媒体网关平台,同时满足融合无线网络,有线网络,宽带网络访问和VoIP网络的需求。DiameterSuite

–一个针对Diameter协议族的客户端,服务器和相关工具套件。实现了基本协议以及其他广泛使用的重要Diameter应用。能帮助快速开发LTE/4G和IMS部件,例如应用服务器,HSS,CSCF,SLF等。它非常易于扩展来实现支持更多Diameter应用。SIPPresenceServer

–针对SIP网络提供客户端和服务器的表现服务,实现RCS以及来自IETF,GSMA,OMA,3GPP和ETSI的标准,包括一个XDM服务器,一个Presence服务器和资源列表服务器(TBA)。jSIP

–提供一个完全兼容于SIP/SDP/IMS的协议栈,并且支持故障冗余能力来满足电信级生产环境的需求。五、总结名称编程语言操作系统许可协议功能AsteriskC跨平台GNUGPL/ProprietaryVoicemailConferencecallingInteractivevoiceresponseAutomaticcalldistributionOpensipCLinux,FreeBSD,SolarisGNUGPLSIPregistrarserverSIProuter/proxy(lcr,dynamicrouting,dialplanfeatures)SIPredirectserverSIPpresenceagentS

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论