基于SOAP协议穿越NAT的系统设计
软件时空
文章编号:1008-0570(2007)07—3-0281-03
基于SOAP协议穿越NAT的系统设计
TheSystemDesig门ofPassingthroughNATBasedonSOAP (杭州职业技术学院)谢JIl
XIECHUAN
摘要:为了解决传统电信管理系统通讯协议如SNMP,TL1等难以穿越NAT的不足,针对NAT的工作原理以及SOAP协议在协
议组成方面的一些优点.提出了一个通过对SOAP协议进行简单扩展而实现的穿
越防火墙及NAT的方法,实现对复杂网络
环境中部署的终端设备的透明管理.
关键词:简单对象访问协议;NAT;XML;网络管理系统;NGN
中图分类号:TP393.07文献标识码:A
Abstract:ToresolvesomelacksoftraditionalNMSprotocolslikeSNMP,TL1andSOon,whic
hCannotpassthroughtheNAT,ac—
cordingtheworktheoryofNATandtheadvantageofSOAPprotocolframework,wegiveouta
methodtopasstroughtheNATand
firewallbasedonsomeextensionofSOAPprotocol,implementthetransparentmanagement
fortheterminaldevicewhichdeployin
complexnetworks.
Keywords:SOAP.NetworkAddressTranslation.XML,NetworkManagementSystem.Ne
xtGenerateNetwork
1引言
作为位于局端的网管系统来说,必须要解决如何穿越数量
众多的防火墙和NAT对NGN终端进行远程管理的问题.传统
的电信网管协议诸如SNMP(SimpleNetworkManagementProto
co1).TL1TelecomLanguage1)等在网络部署方面都有一些相应 的局限性,他们在面对防火墙和NAT时,均要求对防火墙和 NAT进行特殊的配置.比如开放防火墙的相关端口,或者在NAT 上配置地址端口一一映射等,从而无法有效穿越防火墙和NAT, 实现对电信设备的透明管理.这样就要求有一种新的电信网管 管理协议.既能实现网管协议的双向对等通讯管理,又能够有效 穿越防火墙和NAT.实现与网络部署环境无关的透明管理. 2SOAP协议简介
SOAP(简单对象访问协议),有时也被称作为XMLP(eXtends MarkerLanguageProtoco1).是以XML(eXtendsMarkerLanguage)
形式提供了一个简单,轻量的用于在分散或分布环境中交换结 构化和类型信息的机制.SOAP利用XML技术定义一种可扩 展的消息处理框架.该框架本身并没有定义任何应用程序语义, 如编程模型或特定语义的实现:实际上它通过提供一个有
标准
excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载
组件的包模型和在模块中编码数据的机制,定义了一个简单的
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
示应用程序语义的机制.
SOAP协议中,其消息的协议结构是非常重要的部分,整个 SOAP的消息结构遵循XML表示语法,SOAP消息处理框架定 义了一整套XML元素.用以"封装"任意XML消息以便在系统 之间传输.由于XML是一个开放,健全,有语义的讯息机制,并 且提供了良好的可扩展性.使得用户可以方便的定义自己所需 要的数据结构及表示方法.HTrP协议绑定定义了在HrrrP上 使用SOAP的
规则
编码规则下载淘宝规则下载天猫规则下载麻将竞赛规则pdf麻将竞赛规则pdf
.SOAP请求/响应自然地映射到HTrP请 谢川:硕士生高级讲师
求/协议模型如图1所示.SOAP使用了HTrP中的POST请求 来作为RPC中的Request请求.而后封装HTrP的回应消息作 为Request的Response同步回应.SOAP的RPC表示模型如图 1所示:
图1SOAP的请求/响应模式在HTFP上的映射
3设计思路及具体实现
XMlL
HTTP
图2SOAP协议栈结构
首先.由于SOAP协议本身并不是什么新的发明创造,他只 是利用了许多事实上的行业标准开放协议,聚合在一起而形成 的一种特定的开放协议,而这些协议的流行和公开使的SOAP 一
经推出即是一个共有的协议.天生的具有了这些开放协议的 优点.有利于大规模应用及适合于各个厂商设备的互联互通.并 且由于通常意义上的SOAP具有如下的协议层结构(如图2),是 基于HTFP传输层协议封装实现了RPC功能调用,这有别于一 @罔邮局订82360,,~/#--281—
软件时空中文核心期刊《微计算机信息》(管控一体化)2007年第23卷第7-3期
般的RPC调用,因为H1TrP协议已经由最初的HTML文本传送 协议演化为了Internet标准协议.目前几乎所有的Internet服务 器都支持H1TrP,在HrrP中使用的标准端口号是80,这也是防 火墙所默认打开的端口.HTrP天生具有的这些特点使得SOAP 非常适合作为网管系统的管理协议,并且也使得SOAP穿越防 火墙不再困难
相对于前面提到的NGN网络的部署复杂.除了防火墙这个 因素外.还有一个重要的因素一直是一个难题.这就是NAT fNetworkAddressTranslation)的穿越问题
0.0.0.2pon1025--*SRC157.55.1.10port20oo?
10.0.0.3NATD
evice
l0.0.0_4
l0.0.0.1
矗lcJl1]l?托IItl~tlIOItll
tt嚏I17.冀.'.钳麓IIPdldrmas
_椭I椭^O_?pore
IIntemet
lI一*
图3NAT在网络中所处的位置
由于目前大多数网络设备都是通过IP寻址的,对IP地址 资源需求的迅速增加超出了最初预期和设计的32比特(IPv4 地址长度1.很多专家学者.尤其是IP标准领域的主导性国际组 织IETF一直把IPv6看作是一种长期的IP地址短缺的解决方 案.把NAT看作是一种中短期的地址短缺解决
方案
气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载
.但是相对 于目前IPv6的应用速度.在大多数国家和地区NAT还是在做 为主要的节省IP资源的方法.NAT在网络中所处的位置如图3 所示:
从图中可见,内部网络中的各主机分配的都是内网IP地 址.一个内部网络通过一个真实的外网IP地址与外界通讯,从 而隐藏了内部主机地址起到保护作用,同时也节省了真实IP 地址的使用.NAT地址转换得具体实现过程为如图4所示: NATServer
嚣}0O{:
143e毒80
pr~t~l,OEr0,
餐.溺=?10.0.0.1157.55.1.10143.23.0.4
图4NAT的地址转换
当一个内部主机与外界某主机通讯时.内部主机将数据包 发送到NAT设备.此时数据包中包含源地址\端口.目的地址\ 端口和其它一些信息.当数据包到达NAT设备时,NAT设备生 成一个MAP映射表.并将包中的源地址换成自己的合法IP地 址,并为此次通讯分配一个端口号,用来替换源端口号.MAP映
射表中记录所有这些改变.以后当NAT接到外界传来的数据 包时,NAT察看映射表,再重新将目的地址和端口作替换,从而 将数据包发送到内部某主机.
所以通过NAT,子网内的主机向外连结是很容易的AT相 当于透明的,子网内的和外网的主机不用知道NAT的情况1.但 是如果外部的主机想访问子网内的主机就比较困难了,它无法 通过内部主机的内网IP直接寻址建立网络连接,接这就是NAT 的"单通"特性.
由于NAT地址映射存在"单通"的问题.要想跨越NAT实 现对IP设备的管理.解决这一问题是关键所在.也即实现NAT 的"穿越".
而对于网管系统及其所管理的IP终端设备.由于终端设 备的众多数量及部署的不可预知性,无法对其中的NAT进行地 址一一映射,如果通过管理代理来实现NAT穿越,则部署成本 及复杂度均会大大提高.这就需要通过对网管管理协议的改造. 实现对于NAT的"透明"穿越.即不关心具体的NAT种类及分 布.仅仅通过协议层的实现达到穿越的目的.而对现有的SOAP 协议的实现方式进行扩展,对其HrrP传输协议在TCP会话层 相应做一些改造,即可解决穿越NAT的问题.
现有的SOAP协议的实现是基于基本的RPC方法调用.也 即一个标准的C—S结构.通过H3TP的传输承载了请求<一>回应 方式,这不是一个对等的双向通讯实体,如果需要建立反向连接. 则必须再次发起H3TP连接请求,这对于NAT的单通是不适用 的.这样就出现了位于NAT外部的设备不能主动发起与位于 NAT内部设备之间的对话的问题.例如.位于NAT外部的网管 系统,无法主动发起请求对位于NAT内部的网络终端进行管理. 这样就大大限制了网络管理的有效性.所以,解决这一问题的关 键就在于如何将HrrP本身不对等的通讯转化为对等通讯. 根据NAT单通的特性,内部通讯实体可以访问外部通讯实
体.所以可以首先由内部实体通过外部实体的公网IP进行寻址 并向其发出HTrP请求并建立TCP会话.在外部实体接受TCP 请求后,承载该HTrP传输的TCP会话被确认建立.但这条 HrIrI'P连接必须保持长连接(采用HrrI'P1.11.也就是说,当内部 实体向外部实体发起一个HrI1甲请求并建立了一个TCP会话 后,这个会话将一直存在并将内部实体到外部实体的请求数据 包承载于其上.同时,在外部实体接受内部实体的连接请求后. 要求保存这条已经建立的TCP会话的socket对象,并建立和发 起请求的内部实体的唯一标识(如内网IP1的对应关系列表.当 外部实体需要向内部实体发起请求时.不是直接通过内部实体 的内网IP进行寻址并尝试建立连接.而是在保存的已建立的 TCP会话对应表中,利用内部实体的唯一标识(如内网IP1查找 到刚才所建立的TCP会话,并将请求的HrrP数据保承载于其 上.也就是利用已经存在的TCP会话送出外部实体到内部实体 的请求包.这样可以解决经由NAT地址转换之后,NAT外部设 备无法访问内部设备IP的问题.
NAT内部通讯宴体.雠躲卜,\NAT外部通讯安体
微雌虐卑
'
<
图5扩展SOAP实现穿越NAT
但是由于NAT对于经由NAT建立的内外网连接还有一个 一
282—36O元/年邮局订阅号:82-946
软件时空
失效周期的设置.既是当超过设置的失效周期时长内没有数据 承载于该连接上,NAT将强行拆除该会话连接,而为了保持这样 的一条长连接.内部实体必须周期性地发一些心跳数据包给外
部实体,且此心跳数据包的发送周期必须小于NAT的失效周期 fagetime).这样在这条H1f]长连接上,内外部实体之间可以 实现双向通信,外部实体可以接受内部实体的请求同时可以向 内部实体发送请求.如图5所示:
通过SOAP中的HTI'P长连接.单个TCP会话承载和周期 性的心跳包,使NAT内的通讯实体和外部通讯实体顺利地建 立双向连接,在NAT两端建立了一个对等的C—S实体,使得两 端的通讯实体均可作为呼叫发起者进行通讯.又能避免双方频 繁通信的情况下每次都浪费时间建立对内部IP地址的映射或 是建立其他的对应地址表进行查找而降低通讯效率. 这样简单对于SOAP协议底层承载的H1f]作出较小的修 改,使之由不对等通讯实体转化为对等通讯实体,使得SOAP协 议穿越NAT也不再是难事.
4结束语
通过对SOAP协议传输层协议HTrP的TCP会话的修改, 实现了SOAP协议透明穿越NAT的一种方法,其基本思想是:首 先由内网设备主动向外网设备发起连接请求,在TCP长连接建 立后,H1f]服务器端保留发起请求的内网设备标识f如内网IP1 和此连接的TCP会话对应关系,当需要反向通讯时.通过对应关 系找到相应存在的TCP会话并利用其传递通讯数据包.并且同 时由内网设备不断向外网设备发送心跳包以保证TCP会话不 会被NAT强行终止.这种穿越方法非常适合使用于象NGN终 端管理这一类网络环境复杂的网管管理系统,这类网络中,终端 大都部署于Internet之上.其管理逻辑简单,但是组网方案却十 分复杂.
本文作者创新点:采用SOAP协议作为其管理协议,由于对 网络的透明穿越,简化了组网部署,较之使用传统的通讯协议有 着很大的优势.这个方案已经应用于UTStarcom的NGN终端 管理系统0MC—T中,并已实际部署到现场应用,取得了不错
的效果.
参考文献
【1]Microsoft.WindowsXP中网络地址转换(NAT)概述[EB/OL].
,2004/07/27 【2]AaronSkonnard.UnderstandingSOAP【EB/OL]. crosoft.com/library,March2003
『3]RFC3022.TraditionalIPNetworkAddressTranslator(Tradi—
tionalNA『S,0L1.
『41W3CRecommendation.SimpleObjectAccessProtocol(SOAP)
1.I[S/OL].24June2003
【5】符卫,曲科鹏.安全访问控制系统的设计和实现[J】微计算机信
息,2006,11-3:P97—99
作者简介:谢川(1965一),男取族,安徽繁昌人,大连理工大学软件
工程硕士生,高级讲师,杭州职业技术学院现代教育信息技术部
主任.研究方向:分布式数据库,网络技术应用.
Biography:XieChuan(1965一),Male,HanNationality,Bornin AnhuiFanchang,AdvancedLectuerinHangzhouVocationaland
TechnicalCollege,ResearchFields:DistributedDatabase,Net.
workTechnology.
(31oo18浙江杭州杭州职业技术学院)谢川
(HangzhouVocationalandTechnicalCollege,Zhejiang Hangzhou310018)XieChuan
通讯地:1:1]::(310018浙江杭州杭州职业技术学院现代教育信
息技术部)谢川
(收稿日期:20o7.6.O3)(修稿日~J:2007.7.O5)
(上接第285页)
文档分类为:{D1,D2,D5,D61,{D31,{D4}若令h=0.7,则
s2=
1OO
O1O
OO1
OOO
O1O
O1O
OOO
O11
OOO
1OO
O11
O11
文档分类为:{D1},{D2,D5,D61,{D31,{D4} 5结束语
Web文本分类是Web数据挖掘中的一个重要的研究领域, 其目标是在分析Web文本内容的基础上.给文本分配一个或多 个比较合适的类别,从而提高文本检索的处理效率.Web文本 挖掘的主要方法是文本分类和聚类.
本文作者创新点:提出了将粗糙集理论用于Web属性约简 和分类.将训练Web文档的空间向量模型转化为信息表中的 条件属性,并将分类结果作为决策属性加入信息表,使用粗糙集 理论,能够获得分类所需的最小特征属性集,可以在不影响分类 精度的条件下降低特征向量的维数;可以得到最简的分类规则. 参考文献
【1]MargaretH.Dunham着.郭崇慧等译,数据挖掘教程【M】,北京: 清华大学出版社,2006.3
【2】毛国君.段立娟等,数据挖掘原理与算法【M】,北京:清华大学出 版社,2006.1
【3]JaideepSrivastava,RobertCooley,MukundDeshpande,Pang— NingTan,Webusagemining:discoveryandapplicationsofusage
patternsfromwebdata,
explorations,issue1—2,srivastava.pdf
『4]JohnR.Punin,MukkaiS.Krishnamoorthy,MohammedJ.Zaki, WebUsageMining—LanguagesandAlgorithms,. edu/~puninj/LOGML/TR01-3.pdf
【5】杨庆跃,Web数据挖掘的研究现状及发展,. cn/comwim2004/sunleap/personal/article3.htm 【6】李钝(导师:梁吉业),基于粗糙集理论的文本挖掘技术研究,山
西大学硕士研究生学位论文,2003
【7】亓洪标,李安,胡柏青.基于XML的web文本挖掘方法与模型
研究[J]微计算机信息,2006,11-3:P196—197
作者简介:徐甜(1968一),女(汉),河南博爱人,讲师,研究方向:人工
智能.
Biography:XuTian(1968一),Female,HanNationality,Bornin HenanBoai,LectuerinAnyangNormalUniversity,Research Fields:ArtificialIntelligence
(455oo2河南安阳安阳师范学院)徐甜肖新峰
(AnyangNormalUniversity,Anyang,He'nan455002,China) XuTianXiaoXinFeng
通讯地址:(455002河南省安阳师范学院计算中心)徐甜
(收稿日~l:2007.6.03)(修稿Et期:2007.7.05)
@弼邮局订82360.,L/_283—