Udp打洞简单描述
2009-03-18 08:21:12 来源:WEB开发网核心提示:第一次写文章,难免会有很多地方不尽人意,Udp打洞简单描述,希望大家多多包涵,今天我想和大家谈谈关于Udp打洞的一些基本知识,但其他电脑还是不能访问,所以也要先登陆服务器, C#提供了Sockets来进行套接字的编程,里面包含了TcpClient和UdpClient
第一次写文章,难免会有很多地方不尽人意,希望大家多多包涵。今天我想和大家谈谈关于Udp打洞的一些基本知识。
C#提供了Sockets来进行套接字的编程,里面包含了TcpClient和UdpClient。用过的大家都知道Tcp发送消息更安全
而Udp传送数据容易丢包,但速度快,能穿越防火墙。目前比较流行的QQ聊天工具底层传输协议用户的就是Udp协议(不知道现在该没)。
那么大家或许会发现,为什么你的好友隐身的时候你像他说话或者发送图片的时候会提示对方隐身不能发送或者要等很久
才能收到。其实这里就是打洞了,可能有些人不明白为什么会叫打洞呢?大家想想,暴露在公网上的电脑IP为什么会比经
过路由分下来的电脑IP更容易收到攻击了,因为它的地址更容易被查找出来,而经过路由分下来的IP无数多个而且很可能
是多个路由连接在分配,那自然找到IP就不容易了。所以我们需要一个大家都知道的一个地址(服务器)然后对齐访问,
此时客户端就会发送一条消息到服务器,服务器就会接收到你的地址也就连通了,这里我用图在说明这个流程吧。
现在客户端开始发送信息到服务器
目前一条通信道路就打通了,服务器于电脑A就可以相互访问了,但其他电脑还是不能访问,所以也要先登陆服务器,
然服务器知道你的IP和Port是从哪来然后保存下来。当其中一台电脑要访问电脑A的时候就要先从服务器获取电脑A的IP
[]
赞助商链接