预览加载中,请您耐心等待几秒...
1/2
2/2

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第三方不完全代理的TCP穿透NAT的技术研究的中期报告 一、研究背景 随着Internet的发展,NAT(NetworkAddressTranslation,网络地址转换)技术得到了广泛应用,在现代网络应用中被广泛使用,然而,NAT技术给P2P(Peer-to-Peer,点对点)通信带来了一定的困扰。在NAT技术的保护下,虽然可以实现多台计算机共享一个公网IP地址进行上网,但是其同时也会带来一些问题,例如:向内部计算机提供Web服务,FTP服务、电话直拨等等。这些应用需要在NAT网关路由器上做一些特殊的设置,才能够从外部访问到这些内部服务。然而不同的产品厂商设置方法不一,UPnP技术(即通用即插即用技术)解决了这个问题,但是不是每一个厂商的NAT路由器都支持UPnP技术。 二、研究意义 本次研究的主要目的是针对存在的问题,探讨一种新的技术方案,能够有效地穿透NAT,实现两个位于NAT之后的主机相互通信。如此一来,就不必再依赖于UPnP协议或需要特殊的设置,亦不需要对网络环境做特殊的修改。 三、研究方法 本研究采用第三方不完全代理(Third-PartyUncompletedProxy)技术,实现TCP穿透NAT的问题。第三方不完全代理技术是指利用第三方服务器做中转,对源地址和目的地址进行转换,从而穿透NAT,实现两个位于NAT之后的主机相互通信。该技术主要分为TCP打洞和UDP打洞两种方式,而本研究主要探讨TCP打洞。 四、研究进展及成果 在本次研究中,我们针对TCP打洞技术进行了实验,实现了两个位于NAT之后的主机之间进行通信。具体实验过程如下: 1.申请两台NAT类型的路由器(可选择不同的品牌或型号)进行实验,并将两台路由器通过Internet连接起来。 2.启动两台计算机,分别连接到不同的路由器中,并在计算机上安装P2P通信软件。 3.通过NAT类型的路由器产生的NAT映射表,获取两台计算机的IP地址及端口号信息,并将这些信息用于后续步骤的设置。 4.在中转服务器上,安装并配置TCP代理程序,将其设置为监听外部请求并等待两个P2P客户端的连接。 5.当P2P客户端发起请求连接时,中转服务器将会收到连接请求,并对其源地址和目的地址进行转换,并将转换后的请求转发到目的地址。 6.直到两个P2P客户端成功地建立连接。 通过本次实验,我们成功地实现了两个位于NAT之后的主机之间进行通信的目标。 五、未来展望 本次实验取得的一些结果提供了一种新的技术方案,能够有效地穿透NAT,实现两个位于NAT之后的主机相互通信。虽然在实验中我们使用了第三方中转服务器,但是为了提高系统的可靠性,我们计划进一步研究如何在无中转服务器的条件下实现TCP穿透NAT的问题。此外,本次实验中我们仅探讨了TCP打洞的技术,而UDP打洞方案也是可行的,未来我们也将研究UDP打洞方案的可行性和应用价值。