如何使用java实现tcp的p2p的打洞技术

2024-05-16

1. 如何使用java实现tcp的p2p的打洞技术

公网设服务器S, 2p点(P1.P2) 连S,过S双方获取对方公网IP. 
P1 P2都向对方的(公网IP+任意端口)发起连接,当然无任何回应,但是会发生2件事
1 P1 P2都在自己的外网NAT上打了个连接对方的洞,这个洞会保持一会儿.
2 连接的时候S抓取到P1 P2 的NAT端口,然后将此端口发送给对方,
然后就可以想办法连接了.

如何使用java实现tcp的p2p的打洞技术

2. Java实现TCP穿透NAT技术该怎么实现

可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。
javatcp穿透nat

3. Java Socket 实现P2P

主动发起的会话的可以看成Client用socket、、被动接受的看成Server用ServerSocket、、、按你的做法、、A既有socket还有ServerSocket、、、socket用来主动连接其他客户端、、、ServerSocket用于监听其他客户端是否发来连接请求

Java Socket 实现P2P

4. 请教C# TCP 如何打洞实现P2P传输。

TCP是连接式传输,我们常用的HttpRequest就是TCP ,第一步是建立连接,然后传输数据,获取返回数据
 
建议用UDP来做,获取对方IP后,发送数据包,当对方接受到这个数据包后,会返回给你一个信息,在接到这个信息后,如果正确,就可以发送数据了,进行点对点的传输,但是容易丢包。。

5. 如何在QT 下实现tcp打洞

一般局域网使用了NAT(网络地址转换技术)和防火墙。P2P穿越NAT和防火墙主要有两种技术:称为打洞的UDP Punch技术和利用NAT设备管理接口的UPnP技术。一般使用UDP Punch技术,它实现起来简单一点。TCP实现起来比较复杂。关于这两种技术实现细节你可以查找相关书籍进行深入了解。

如何在QT 下实现tcp打洞

6. java向个方向会用到socket网络编程,p2p等技术?

在网络这么发达的信息时代,JAVA在C/S,B/S都会用到网络编程C/S会用得多一点,就一点来讲C/S升级比较麻烦,所以单机的系统是比较少,一般都是在线升级B/S也会用到,特别是几个系统之间要交互(也就是要给其它系统发数据或者接收数据)的话,都会用到SOCKET
不过WEB工程里面  我还没见过需要通信利用SOCKET编程的,也许是我见识少,但是在WEB里面需要比如完成SOCKET实现的文件聊天等等 都是利用AJAX的框架实现的

7. 用java实现tcp穿越nat,怎么实现,哪位大侠能给个demo,感谢

java使不能实现的,这是网管的问题,要想使外网访问内网,必须使你们的主机与你们要访问的机子建立端口上的映射关系。 
比如建立ftp服务器,让外网访问。必须把内网被访问的机器与主机的21端口绑定。当外网访问你们主机的时间,主机就自动指向你的内网机器。 
访问主机:http://192.168.1.1(假如主机是);尽行路由设置,即网上说的nat设置,单价左边菜单“nat”,在右边会看到虚拟服务配置,名称随便填,填写要开放的机器的ip地址,选择下面的协议为“ftp”;端口自动填好了,最后单击添加就填好了。 

加入你们的主机ip是“202.102.224.13”外部访问时就在浏览器输入: 
"ftp://202.102.224.13";就搞定了; 
被访问及其必须建立ftp服务器,具体建立服务器,可以下载软件,比如“server-u”,设置根据提示看就好了。 
主机ip可以在主机的“系统信息”里面的默认网关看到;主机登录账号密码一般是“guest”;

用java实现tcp穿越nat,怎么实现,哪位大侠能给个demo,感谢

8. 用Java写了个很简单的P2P聊天程序,但其中关于TCP\IP、UDP过程有些疑问。

局域网一般不会 丢包的..  要不你直接tcp发信息   
   怕丢包 一般都是 三次握手呗  学tcp协议的时候不是讲过的呗   
  http://baike.baidu.com/view/1003841.htm  看看呗
最新文章
热门文章
推荐阅读