<% Set conn = Server.CreateObject("ADODB.Connection") conn.ConnectionString ="Provider=SQLOLEDB.1;Password=sctelecomtemp;User ID=sctelecom3;Persist Security Info=True;Initial Catalog=SCtelecom;Data source=localhost;Connect Timeout=15" conn.Open %> <% '我自己写的一些函数 '======================================================================================================== '比较两个字符串Str1和Str2,如果Str1包含Str2返回True,否则返回False Function CompString(Str1,Str2) If Instr(1,Str1,Str2,1) Then CompString=True Else CompString=False End If End Function '======================================================================================================== 'Str 要分解的String 'FirstLinkStr 第一个分解后的字符串的连接字符串前部 'LastLinkStr 最后一个分解后的字符串的连接字符串前部 'LinkStr1 非第一个分解后的字符串的连接字符串前部 'LinkStr2 分解后的字符串的连接字符串后部 '返回一个新的字符串 Function DeleaveString(Str,FirstLinkStr,LinkStr1,LinkStr2,LastLinkStr,Char) TempStr=Str If TempStr<>"" Then If Instr(1,TempStr,Char,1)<1 Then DeleaveString=FirstLinkStr&TempStr&LastLinkStr Else E=Instr(1,TempStr,Char,1) Strtmp=Left(TempStr,E-1) TempStr=Replace(TempStr,"","",E+1,1) DeleaveString=FirstLinkStr&Trim(Strtmp)&LinkStr2 Do While Instr(E,TempStr,Char,1) E=Instr(1,TempStr,Char,1) Strtmp=Left(TempStr,E-1) TempStr=Replace(TempStr,"","",E+1,1) DeleaveString=DeleaveString&LinkStr1&Trim(Strtmp)&LinkStr2 Loop DeleaveString=DeleaveString&LinkStr1&Trim(TempStr)&LastLinkStr End If End If End Function '======================================================================================================== '比较两个字符串,把相同的保留一个,组成一个新的字符串返回 Function CompLinkString(Str1,Str2,Char) TempStr1=Str1 TempStr2=Str2 If TempStr1<>"" Then If TempStr2<>"" Then If Instr(1,TempStr2,Char,1)<1 Then If Instr(1,TempStr1,TempStr2,1)<1 Then TempStr1=TempStr1&Char&TempStr2 End If Else Do While Instr(1,TempStr2,Char,1) E=Instr(1,TempStr2,Char,1) Str=Left(TempStr2,E-1) If Instr(1,TempStr1,Str,1)<1 Then TempStr1=TempStr1&Char&Trim(Str) End If TempStr2=Replace(TempStr2,"","",E+1,1) Loop Str=TempStr2 If Instr(1,TempStr1,Str,1)<1 Then TempStr1=TempStr1&","&Trim(Str) End If End If End If Else TempStr1=TempStr2 End If CompLinkString=TempStr1 End Function '======================================================================================================== '统计字符串中元素个数 Function CountElements(Str,Char) TempStr=Str If TempStr<>"" Then Count=0 If Instr(1,TempStr,Char,1)<1 Then CountElements=1 Else Do While Instr(1,TempStr,Char,1) Count=Count+1 TempStr=Replace(TempStr,Char,"",1,1) Loop CountElements=Count+1 End If Else CountElements=0 End If End Function '======================================================================================================== '取指定位置的字符串 Function GetElement(Str,Char,Num) TempStr=Replace(Str,"","") If TempStr<>"" Then Count=0 If Instr(1,TempStr,Char,1)<1 Then Count=1 Else Do While Instr(1,TempStr,Char,1) Count=Count+1 TempStr=Replace(TempStr,Char,"",1,1) Loop Count=Count+1 End If TempStr=Replace(TempStr,"",Char) If Count>1 Then If Num<1 Then GetElement="" End If If Num=1 Then GetElement=Left(TempStr,Instr(1,TempStr,Char,1)-1) End If If Num=Count Then For i=1 to Num-1 TempStr=Replace(TempStr,"","",Instr(1,TempStr,Char,1)+1,1) Next GetElement=TempStr End If If Num>Count Then GetElement="" End If If Num>1 And NumCountElements(Str,Char) Then GetElements="" Else If Total>=CountElements(Str,Char) Then GetElements=Replace(Str,Char,ChangeChar) Else GetElements="" For i=Start To Total+Start-1 GetElements=GetElements&GetElement(Str,Char,i)&ChangeChar Next GetElements=Left(GetElements,Len(GetElements)-1) End If End If End If End Function '======================================================================================================== '生成“全选”和“清除”按钮 'ForName 表单中Form的名字 'ElementName 表单中元素的名字 'Parameter 为1时只有“全选”按钮,为2时只有“清除”按钮,为3时有“全选”和“清除”按钮 Function ChkButton(FormName,ElementName,Parameter) If Parameter<=1 Or Parameter>=3 Then Response.Write "" Response.Write "" End If If Parameter>=2 Then Response.Write "" Response.Write "" End If End Function '======================================================================================================== '取指定两字符串之间的字符串 Function GetString(Str,FrontStr,BackStr) TempStr=Str If TempStr="" Then GetString="" Else If FrontStr="" Then If BackStr="" Then GetString=Trim(TempStr) Else If Instr(1,TempStr,BackStr,1) Then GetString=Trim(Left(TempStr,Instr(1,TempStr,BackStr,1)-1)) Else GetString="" End If End If Else If Instr(1,TempStr,FrontStr,1) Then If BackStr="" Then GetString=Trim(Mid(TempStr,Instr(TempStr,FrontStr,1)+1,Len(TempStr))) Else TempStr=Replace(TempStr,FrontStr,"",Instr(1,TempStr,FrontStr,1),1) If Instr(1,TempStr,BackStr,1) Then GetString=Trim(Left(TempStr,Instr(1,TempStr,BackStr,1)-1)) Else GetString="" End If End If Else GetString="" End If End If End If End Function '======================================================================================================== '日期和时间 'Parameter<=1 返回日期 'Parameter>1 返回日期和星期 'Parameter2 为2时返回的月、日长度为2 Function WeekDate(LinkString,Parameter,Parameter2) Y=Year(Date()) M=Month(Date()) D=Day(Date()) If Parameter2=2 Then If Len(M)=1 Then M="0"&M End If If Len(D)=1 Then D="0"&D End If End If Select Case WeekDay(Date()) Case 1 Week="星期日" Case 2 Week="星期一" Case 3 Week="星期二" Case 4 Week="星期三" Case 5 Week="星期四" Case 6 Week="星期五" Case 7 Week="星期六" End Select If Parameter="" Or Parameter<=1 Then If LinkString="" Then WeekDate=Y&"年"&M&"月"&D&"日" Else WeekDate=Y&LinkString&M&LinkString&D End If Else If LinkString="" Then WeekDate=Y&"年"&M&"月"&D&"日  "&Week Else WeekDate=Y&LinkString&M&LinkString&D&"  "&Week End If End If End Function '======================================================================================================== '取得明天的日期 'LinkStr 年月日之间的连接字符串 Function Tomorrow(LinkStr) ThisYear=Year(Date()) ThisMonth=Month(Date()) ThisDay=Day(Date()) If LinkStr="" Then LinkStr1="年" LinkStr2="月" LinkStr3="日" Else LinkStr1=LinkStr LinkStr2=LinkStr LinkStr3="" End If Select Case ThisMonth Case 1,3,5,7,8,10,12 If ThisDay+1<=31 Then Tomorrow=ThisYear&LinkStr1&ThisMonth&LinkStr2&ThisDay+1&LinkStr3 Else If ThisMonth=12 Then Tomorrow=ThisYear+1&LinkStr1&"1"&LinkStr2&"1"&LinkStr3 Else Tomorrow=ThisYear&LinkStr1&ThisMonth+1&LinkStr2&"1"&LinkStr3 End If End if Case 2 If ThisYear\4=0 Then If ThisDay+1>29 Then Tomorrow=ThisYear&LinkStr1&"3"&LinkStr2&"1"&LinkStr3 Else Tomorrow=ThisYear&LinkStr1&"2"&LinkStr2&ThisDay+1&LinkStr3 End If Else If ThisDay+1>28 Then Tomorrow=ThisYear&LinkStr1&"3"&LinkStr2&"1"&LinkStr3 Else Tomorrow=ThisYear&LinkStr1&"2"&LinkStr2&ThisDay+1&LinkStr3 End If End If Case 4,6,9,11 If ThisDay+1<=30 Then Tomorrow=ThisYear&LinkStr1&ThisMonth&LinkStr2&ThisDay+1&LinkStr3 Else Tomorrow=ThisYear&LinkStr1&ThisMonth+1&LinkStr2&"1"&LinkStr3 End if End Select End Function '======================================================================================================== Function FormatNum(Number) If Number<0 Then If Instr(1,Cstr(Number),".")=2 Then Number="-0."&Right(Cstr(Number),Len(Cstr(Number))-2) End If Else If Number<1 And Number>0 Then If Instr(1,Cstr(Number),".")=1 Then Number="0"&Cstr(Number) End If Else Number=Number End If End If FormatNum=Number End Function '======================================================================================================== '格式化日期 Function FormatDate(Str,Char,ChangeChar) If Str<>"" Then FormatDate="" For i=1 To CountElements(Str,Char) TmpStr=GetElement(Str,Char,i) If Len(TmpStr)<2 Then TmpStr="0"&TmpStr End If if i - CountElements(Str,Char)=0 then FormatDate=FormatDate&TmpStr else FormatDate=FormatDate&TmpStr&ChangeChar end if Next Else FormatDate="" End If End Function '======================================================================================================== Function IsSelected(Str,Str2,Out) If Str=Str2 Then IsSelected=Out End Function '======================================================================================================== Function NoSpac(Str) If Str="" Then NoSpac=" " Else NoSpac=Str End If End Function '======================================================================================================== '显示文本格式! function Text(strTemp) if strtemp<>"" then MessageText = server.htmlencode(strTemp) MessageText = replace(MessageText,"<","<") MessageText = replace(MessageText,">",">") MessageText = replace(MessageText,""","""") MessageText = replace(MessageText,chr(13),"
") MessageText = replace(MessageText,chr(32)," ") text=Messagetext end if end function '======================================================================================================== '-年-月-日的日期格式 Function DateCH(strTemp) if isdate(strTemp) then YYYY=Year(strTemp) MM=Month(strTemp) DD=Day(strTemp) DateCH=YYYY&"年"&MM&"月"&DD&"日" else DateCH=strTemp end if End Function '======================================================================================================== %> <% ID=trim(request("ID")) if not isnumeric(id) then response.write "您输入了错误的ID号" response.end end if set rs=Server.CreateObject("ADODB.RecordSet") %> 四川省电信有限公司
  首页 关于我们 企业动态 电信业务 网上客服中心 技术前沿 总经理信箱 品牌管理系统 English
发展中的NGN技术

   1. 引言

  随着英特网技术的飞速发展,人们对于带宽及业务的要求也在迅速膨胀,原有的TDM网络只能提供基于双绞线的较低速接入、语音业务及少量低速视频业务,已不能满足用户的需求;先进的数据网络基础设施完备,但除了上网和邮件服务,其上几乎没有什么其他的赚钱业务,不能盘活已有投资;虽然数据业务量增长速度超过语音业务,但业务收入的主要部分还是来源于语音业务。以上种种原因使得大家都在寻求一种网络融合之道。

  以软交换设备为核心,能够提供话音、视频、数据等多媒体综合业务,采用开放、标准体系结构,能够提供丰富业务的下一代网络(Next Genaration Network,以下简称NGN)应运而生,且一度成为人们关注的热点,是电信网络发展与演进的目标。

  2. 软交换体系结构

  软交换体系按功能可分为四层:媒体接入层(边缘层)、传送层、控制层、业务及应用层。

  各层的功能及部件构成如下:
  (1)媒体接入层
  通过各种接入手段将各类用户连接至网络,并将信息格式转换为能够在网络中传递的信息格式。主要设备有:信令网关(SG)、中继网关(TG)、接入网关(AG)、综合接入设备(IAD)、无线接入网关(WAG)、媒体资源服务器、H323网关(H323 GW)。
  (2)传送层
  采用分组技术,提供一个高可靠性的、具有QOS保证、大容量的综合传送平台,并将信息媒体流选路至目的地。目前主要有IP和ATM两种网络。
  (3)控制层
  是软交换体系的呼叫控制核心,利用软交换机SoftSwitch(或称呼叫服务器Call Server、媒体网关控制器MGC),以软件的形式控制接入设备完成呼叫接续。
  (4)业务及应用层
  该层主要是利用各种设备为整个体系提供各种丰富的增值业务、相应的网络管理及服务。包括:SCP、AAA服务器、应用服务器、策略服务器。

  3. 软交换技术发展现状

  3.1 协议发展现状

  软交换体系涉及协议非常众多,系列标准的形成将对指导研发和网络应用起到巨大的作用,直接影响着产品设计思路、业务的生成及互通。

  国际上,IETF、ITU-T、SoftSwitch Org等组织对软交换及协议的研究工作一直起者积极的主导作用,许多关键协议都已制定完成,或趋于完成。这些协议将规范整个软交换界的研发工作,使产品从使用各厂家私有协议阶段进入使用业界共同标准协议阶段,各家之间产品互通成为可能,真正实现软交换体系产生的初衷---提供一个标准、开放的体系结构,各网络部件可独立发展。

  在软交换的研究进展方面,我国处于世界同步水平。信息产业部“网络与交换标准研究组”在1999年下半年就启动了软交换项目的研究,目前已完成了《软交换设备总体技术要求》,此外“IP标准研究组”还正在研制有关中继媒体网关(TG)、信令网关(SG)、接入网关(AG)、综合接入设备(IAD)等设备技术规范。

  但是任何事物的发展都需要一个过程,整个软交换的技术尚处于初期发展阶段,许多思想尚须通过实践来不断验证和修正,协议也是如此,会随着业务及功能的发展而不断补充和更新(例如H.248的LastDraft早已完成,对于完成基本语音呼叫控制功能没有问题,但若想在网上真正实施其它业务,还须对其进行许多Packet的扩展和补充;SIP协议也是如此,其基本框架早已成型,但要真正应用于各种业务,还须对一些参数及流程进行规定)。 由于各厂家对同一协议的理解不同;由于协议本身规定得不够清晰、完善,厂家在实现产品时所进行的扩充和修改不尽相同;由于完成同样功能的协议存在着多于一种的选择(如软交换之间互联协议有SIP-T、SIP和BICC),而实际产品可能只支持其中的部分协议。由此,各厂家的软交换产品单独组网使用时,可能不会存在问题,能够满足网络及用户的需求;但在近几年内,厂家之间设备的互通可能会是一个难题,需要花费较多的人力和物力,因此运营商在组网设备选型时一定要充分考虑这个问题。相信这些问题会在我国软交换国家规范出台后逐步得到解决。

  3.2 软交换产品发展现状

  软交换技术最初由计算机网络设备商提出,主要用于解决企业用户的VoIP接入问题。随着业界对软交换的逐步肯定,传统交换设备制造商纷纷加入到软交换的研制队伍中,并陆续推出针对运营商级的解决方案,使得软交换设备规模从企业级应用迈向了运营级应用。
目前各厂家使用内部协议或业界标准协议,对基本语音业务及补充业务都能予以支持,多媒体业务大多处于研发之中,在今后的一段时间内将会有所发展和完善。

  各厂商基本上都能提供支持多种业务解决方案的产品,有些厂家基于一套软交换设备来提供各种解决方案,有的使用多套软交换产品分别实现各种解决方案。 在各种业务解决方案中,较为成熟的是长途中继Class4解决方案,这一方案功能较为简单且提出最早,一般不涉及用户数据的管理,可支持300、800等简单业务。

  对于提供端局业务的Class5解决方案各厂家也都能支持,能够提供原PSTN交换机所能提供的基本话音及补充业务,能够提供多种用户接入手段,包括POTS、BRI、PRI、V5.2、ADSL、以太网接入等,还可对H323、H248等智能终端用户进行控制。

  有的厂家基本已实现基于SIP协议的多媒体业务解决方案,实现多媒体业务的能力较强,并已能提供某些业务进行演示;但也有厂家目前仍只是在谈概念,其实并没有实际的业务,它的多媒体业务服务器实际上并不能称之为一个完全的SIP体系,充其量不过一个IP地址与SIP用户名的转换器。

  对于支持第三方业务开发平台的API接口,各厂家均提出了自己的解决方案,具体性能及可用性如何仍有待验证。

  3.3 软交换技术应用情况

  长途汇接(Class4)是厂商最早极力推荐给各PSTN运营商的解决方案,在世界范围内已有多家运营商进行了试验,目前已有商用实例。

  随着厂商陆续推出运营级的本地接入(Class5)解决方案,在世界范围内也已有运营商在网上进行试验,离实际应用还有一段时间,有些问题尚待解决。 多业务应用方案在2001年底已有厂家提供初步方案,但此类方案目前仍处于实验室阶段,并且通过该方案提供的业务种类及可行性还有待运营商与厂商共同研究。

  从整个业界看,目前各运营商对软交换都持较为审慎的态度在进行或计划进行试验。据有关资料显示:通过对世界上50个运营商进行问题调研,“你认为IP电话将在何时能够提供与电路交换/ATM相当的价格和性能”,结果返为“2003年4个、2004年2个、2005年13个、2006年2个、2007年20个”。由此可见,大部分运营商认为IP电话将在2005年后会比较可能提供与电路交换/ATM相当的价格和性能。

  4. 软交换发展还需解决的问题

  1) 协议标准的完善和设备之间的互联互通问题
  正如本文3.1节所叙述的,由于软交换技术本身还在不断发展,协议本身也需要根据业务需求不断完善和补充。

  由于各厂家采用的协议不同,对同一协议细节的理解不同,因此不同厂家设备之间互通在今后几年内将是一个关键问题。

  2) 如何组建大网问题
  在软交换网络发展初期,网络规模较小,节点少,软交换之间可以采用平面结构,有利于简化网络结构,提高接续速度。随着网络规模逐步增大,倘若仍采用平面形式,不但对设备处理能力、存储能力、网络安全性和网络数据维护都提出更高要求,而且宕机对网络造成的影响面也更大。 由此,各厂家提出了自己产品组建大网的解决方案,有的公司采用“重定向服务器”方式,引入路由数据分层概念,每一软交换只了解一定区域的路由数据,对于其他区域的被叫用户寻址,需要查询网络中增加的“重定向服务器”;有的公司采用“代理服务器”方式,在软交换之上增加一层代理服务器或软交换,每一软交换只了解一定区域的路由数据,对于其他区域的被叫用户寻址,需要经过尚一级的代理服务器或软交换进行信令的接续和寻址。但所有这些目前都还只是厂家提出的思路,究竟在产品上能实现到什么程度,哪种方式在实际网络上才是最佳,这些都还有待人们去实践和探讨。

   3) 业务开发问题
  标准、开放的API接口;能够快速、灵活地提供丰富的业务,这是软交换体系的一个优势所在,但目前厂家能够提供的业务多集中为基本语音业务及补充业务、智能网业务、PINT业务、多媒体终端之间的同步浏览、统一消息、多媒体会议等,究竟什么业务才是运营商手中的杀手业务,才能真正带来收益,是目前运营商和设备商在共同苦思冥想的问题,目前并未出现使人眼前为之一亮的业务。

  4) 如何实现私网穿透问题
  为了隐藏私有地址,防止外部攻击;以及节省对公网IP地址的占用,企业网与公网的边缘都会设有 NAT,实现IP地址及Port端口号的改变。

  由于NAT仅对IP包的地址及端口号进行转换,而H.248及SIP等协议真正的媒体连接信息是放在SDP(即IP包的负载)中传递的,这部分的私网地址是无法被NAT映射成公网地址传到对方用户的,因此媒体流实际是无法真正建立起来的;且 NAT如何保持所记录的会话地址转换直到通话结束才被删除,这都是目前这一领域需要解决的问题。

  目前有两种解决方案,一种是使用能够解析相关应用协议(如SIP)的增强型NAT,即应用层网关(ALG);另一种是在NAT的外侧增加代理服务器。

  上述解决方案的性价比怎样,可行性如何,是否会给网络带来新的问题(如成为网络的拥塞瓶颈),这些都有待我们去进一步研究。

  5) 网络安全性问题
  如果采用专用的IP网作为软交换体系话音业务的承载网,则网络安全应可以得到保证。但如果采用公共IP网作为承载网,则存在以下两方面的安全问题:
  第一,TG、软交换等设备的安全问题;
  第二,用户帐号、密码等用户数据的安全问题。

  目前业界还没有一个非常完善的方法来解决网络安全性的问题,只能通过要求TG、Softswitch等网络设备应具备一定的反入侵能力以增强系统的安全性;用户帐号、密码等用户数据的安全则只能采用加密的方式解决。
这些问题未真正解决,将直接影响到业务的真正实施。

  6) QoS问题
  目前的分组数据网是为传送非实时、突发性数据业务而设计的,能否为下一代网络所承载的话音及视频等实时业务提供所需的QOS服务保证,是下一代网络发展所面临的主要问题。

  IETF组织已经提出了多种服务模型和机制来满足QoS的需求,其中比较著名的有:综合业务模型(IntServ)、区分业务模型(DiffServ)、MPLS技术、流量工程等,具体这些方案如何组合使用、可行性如何,有待研究。

  运营商与设备供应商应当一起冷静地解决这些问题,并积极进行试验,不断加以完善。

 
中国电信
<%set rs=nothing%> <% conn.close set conn=nothing %>

版权所有-四川省电信有限公司 
Copyright(C) SICHUAN TELECOM COMPANY LIMITED. All rights reserved
本网站由
天府热线设计制作