支持HTTP协议的IPv4IPv6网关研究和实现.doc
《支持HTTP协议的IPv4IPv6网关研究和实现.doc》由会员分享,可在线阅读,更多相关《支持HTTP协议的IPv4IPv6网关研究和实现.doc(5页珍藏版)》请在咨信网上搜索。
1、摘要:在IPv6各种方案中,翻译机制可以实现IPv4和IPv6的互通。IEFT提出了多种翻译机制的实现方案,本文基于IEFT提出应用层翻译机制,利用Java语言实现了支持HTTP协议的翻译网关。 关键词:IPv4;IPv6;互通;翻译;HTTP协议 中图分类号:TP393 文献标识码:A文章编号:1009-3044(2007)04-10978-02 1 研究和应用价值分析 HTTP是TCP/IP协议族中重要的应用层协议,是WWW实现的技术基础。WWW是目前互联网上最重要的应用,也是互联网发展和普及的重要推动力。据IAB统计,目前Internet上80的流量来自Web服务器。除了Web应用,其他
2、很多服务,如文件传输、音频视频流传输等,也可以使用HTTP协议实现。应用软件和SQL服务器之间的数据交互和互联网上大部分的数据服务都是HTTP数据流。随着B/S模式的应用软件逐渐成为主流,Web Service等技术的发展,Internet上的HTTP数据量还会进一步增加。 而由于IPv6和IPv4的不兼容,不同协议栈的主机间无法进行HTTP通讯,甚至在一台双栈主机内部,纯粹(Native)的IPv4的软件也无法访问纯粹的IPv6 HTTP服务。同样,纯粹的IPv4 HTTP服务也无法被纯粹的IPv6软件使用。而目前绝大多数HTTP相关的应用软件无法兼容IPv6,重新设计开发这些软件要耗费大量
3、的人力、物力和时间,同时造成现有软件资源的严重浪费,不符合IETF提出的IPv6过渡基本原则。 因此,如果能够设计一种支持HTTP协议的IPv4/IPv6应用层翻译网关,就能够在过渡阶段充分利用现有的大量软件资源,实现无缝的、高效的、低成本的过渡,是一种非常具有研究和应用价值的过渡解决方案。虽然只支持HTTP协议的应用层网关不能象网络层翻译网关一样实现所有数据的互通,但是能够实现至少80的数据通讯也是很具有实用价值的。而且只支持HTTP协议可以简化设计,在性能、安全性和可靠性等方面也更容易控制。 2 可行性分析 2.1 使用代理方式实现互通的可行性 代理服务器(Proxy)技术不仅可用于HTT
4、P协议,其他很多协议(如FTP和SOCKS等)也支持代理功能。目前代理技术应用最为广泛的是HTTP代理,代理服务器也是HTTP协议规范中重要的内容。在RFC1945(HTTP 1.0)和RFC2616(HTTP 1.1)中对代理服务器的定义和功能做了详细的规范。 目前HTTP代理服务器都是部署在两个网络之间,大部分情况是两个网络其一是内部网,另一个是互联网。由于大部分内部网使用IPv4内网地址(也被称为私有地址,如192.168.x.x),内联网上的主机无法和互联网上的主机直接通讯,所以使用代理服务器作为中介,同时起到网络防火墙的功能,对内部网进行保护,还能够对内部网和互联网之间的通讯进行控制
5、和记录。很多具有公网地址(也被称为合法地址)的内部网出于安全考虑也使用代理服务器和互联网连接。 运行代理服务器的计算机至少要有一个公网地址和一个内网地址。目前绝大多数代理服务器只接受来自内部网的请求,但是可以向两个网络发送请求。代理服务器接受请求时,将内部网不同地址不同端口映射到同一公网地址的不同端口,并在代理服务器内部保存这种地址端口映射关系,再通过公网地址的这些端口连接到内网计算机所请求的各个服务器。当服务器返回信息时,再查找映射列表,把返回信息转发到各个请求连接的内网计算机,从而实现了内部网多台计算机通过同一个公网IP地址访问互联网,互联网上的计算机也只能得到代理服务器所在计算机的地址,
6、因此可以对内部网起到保护作用。 由工作原理分析,代理服务器工作时,一个网络内部的通讯与另一个网络是没有任何关系的,理论上可以使用不同的IP协议。现在假设运行代理服务器的计算机是双栈主机,内部网是IPv6网络,而且代理服务器支持IPv6。代理服务器接受来自IPv6主机某端口的请求,将该请求通过IPv4地址某端口转发到IPv4网络上,并保存该地址端口映射关系。当IPv4服务器返回信息时再查找映射列表转发给IPv6主机,就实现了IPv6主机访问IPv4网络上的服务器。同理也可以实现IPv4主机访问IPv6网络上的服务器。如果代理服务器设计成可以接受来自两个网络的连接请求,就能够实现IPv4和IPv6
7、网络的互通。 对于应用软件,它和代理服务器间的通信和另一个网络使用何种IP协议是无关的,只需要将请求交给代理服务器处理就可以了。因此不需要对两种IP网络上的软件做任何更改,只需要配置代理服务器就可以实现无缝的互通。在一个既有IPv4主机又有IPv6主机的混合网络或者双栈主机内部,各种软件之间也可以通过这种方式互通。对于不能接受IPv6格式地址的软件,可以使用域名请求连接。 比如对于IE浏览器,当没有配置使用代理服务器时,IE对地址栏中输入的信息进行判断,如果是IP地址,就根据地址连接服务器,如果是域名就进行解析,然后再连接服务器。在此过程中,如果操作系统或者浏览器其中一个不支持IPv6,就无法
8、连接到IPv6服务器。而当在IE中使用代理服务器时,IE只是将域名发送给代理服务器,由代理服务器进行域名解析并连接到Web服务器,在整个通信过程中浏览器没有使用到最终Web服务器的IP地址。在访问IPv6服务器时,操作系统和浏览器可以都不支持IPv6,浏览器能够通过支持IPv6的代理服务器访问IPv6服务器,原因在于浏览器和网关之间的通信不牵扯到任何IPv6相关的信息。 由以上分析,使用代理方式实现IPv4和IPv6主机间互通理论上是完全可行的,同NAPTPT技术有很多相似之处,所不同的是只支持HTTP协议,需要对应用软件进行代理服务器设置。 2.2 Java语言对IPv6的支持Java从1.
9、4版(也被称为Java2 1.4)开始支持Unix和Linux平台上的IPv6。在2004年新发布的Java 1.5版(也被称为Java5)开始支持Windows平台上的IPv6。Java增加了一系列的类和方法对IPv6相关的网络编程给予支持,而且尽最大可能与IPv4兼容,与协议栈交互等复杂的底层工作由Java运行环境(JRE)和操作系统完成,无需程序员和用户参与,极大的降低了IPv6开发和应用难度。 IPv6专用的IP地址类Inet6Address与IPv4专用地址类Inet4Address是同一个类.InetAddress派生出来的,兼容性非常高。除此以外,网络其他操作如获取地址、打开端口
10、、建立和关闭连接等操作所使用的类和方法与IPv4是完全相同的,因此使用Java开发IPv6的网络软件与IPv4没有很大的区别,甚至一些IPv4软件无需重新编译就可以在新版JRE上支持IPv6。Java对IPv6的支持和兼容性是其他语言无法比拟的。 2.3 使用Java开发IPv4/IPv6代理网关的可行性 实现IPv4/IPv6代理网关的重点有两个方面: (1)能够在两种不同类型的IP地址上各打开一个端口进行监听,接受来自其中一种IP地址某端口的连接请求,并能够使用另一种IP地址的某端口连接到所请求的服务器上。 本文原文(2)能够建立和维护一个IPv4和IPv6地址端口的映射列表,并且能够根据
11、该映射列表将服务器的返回信息转发给发出请求的主机。 2.4 Java语言能够很好解决的两个方面问题 (1)Java使用ServerSocket(int port)创建服务器并打开端口进行监听连接请求,这一方法与IP地址类型是无关的,同时兼容两种IP地址。Java使用Socket(InetAddress address, int port)方法创建网络连接,其中InetAddress与IP地址类型也是无关的。因此使用同样的方法就能够实现在两种类型的IP地址上打开端口监听、建立连接等操作,兼容性非常高,在一个既有IPv4主机又有IPv6主机的混合网络中也一样能够很好的工作。 (2)Java支持多线
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 支持 HTTP 协议 IPv4IPv6 网关 研究 实现
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。