想做一款P2P软件,请大家给点建议,怎么才能架设高效的UDP服务器,使之能处理大量的并发连接?(有效回答都有分)(0分)

  • 主题发起人 主题发起人 Beyondbill
  • 开始时间 开始时间
B

Beyondbill

Unregistered / Unconfirmed
GUEST, unregistred user!
如题<br>看了<Windows网络编程>及一些网络上的相关资料,知道架设一个高效的网络服务器,一般都是采用IOCP(完成端口)来实现的,不过看了看,好像网上大多数是基于TCP的IOCP例子.在CodeProject找到了一个UDP的,不过好像它是在客户端实现IOCP而不是在服务端.<br>不知道大家对于怎么架设一个高效的UDP服务器有啥高见,用IOCP能行吗?如果行,应该怎么做?<br>另外还希望大家能对NAT或防火墙穿透方面的内容给些建议,我这里暂不给分,如有好答案,必定每个人都能得到最佳报偿!!!
 
没有人知道吗?还是觉得没有给分,如果是分的问题,绝对不成问题.只要回答的沾上边,有参考价值,我都可以给分
 
qq:444094419
 
已经加了
 
UDP是无链接协议。唉。。。。。。。
 
我想大概楼上的这位兄弟对于UDP在P2P穿透NAT/FW方面的应用还不熟悉,所以才会发出上面的感概吧<br>当然TCP也是可以穿透NAT/FW的,但是响应速度及资源方面实在太不如UDP啦
 
虽然udp在传输方面可能会丢包,但是他的高效率的确相当诱惑人!<br>而且在p2p穿透方面也是具有相当的优势的!<br>俺也在尝试写一个简单的qq,可以内网与外网,不同内网的互通
 
楼上说得对!不知道你在穿透方面采用的是哪种技术?
 
有点搞笑呀,我写P2P程序的时候你还不知道P2P为何物呢。连UDP是无连接协议都没搞清楚还在哪里谈什么大量连接并发,我上面点你是给你留面子了。
 
我以前发过贴子讲UDP过NAT的原理,有兴趣你可以找找。
 
用SOAP实现P2P,有没有人想过?可行性如何<br>小弟不才,只是想想
 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=2484355
 
無連接是可以模擬連接的,沒有絕對的無連接。<br>完成端口應能大部分的基於 IP 協議的工作,至少我是這麼認為。<br>你說找到的那個 IOCP 是在客戶端的? 那它服務端用的是什么? Socket ??<br>個人認為 TCP 其實速度並不比 UDP 差多少,只差在它的校驗過程而已,但是 UDP 需要你自己編程控制進行校驗,我感覺不爽,只用容錯通信我才會用它。
 
楼上的:<br>你为什么要用无链接协议模拟连接,为什么不直接用有连接的协议?<br>难道你认为你的模拟会比TCP更优秀吗?<br>你最后一点说的还有点意思,每种协议都有他的优点有限制,要看具体的应用和需求选择使用哪种协议作为解决方案,没有哪种协议是万能的。
 
To HAZL<br>就像skyccf兄弟说的一样,我们用UDP这种无链接协议,只不过就是因为它的高效可用,以及它在穿透NAT/FW上的优越性.<br>至于你给我的那篇子,你提供的思路,只不过只满足于第一种Full Cone NAT,对于Restricted Cone NAT或者Port-Restricted Cone NAT,Symmetric NAT这些NAT类型的话可能就不是很适用了.只有客户端经过NAT主动连接过的机器,才能通过NAT连接到NAT内部的客户端
 
Restricted Cone NAT 只能通过服务器中转的
 
Restricted Cone NAT及Restricted-Port Cone NAT只在刚开始还没有与另外的客户端建立连接的时候才需要服务器来做中介的,过程如下<br>Client1->Server 请求服务端要求Client2连接Client1<br>Server->Client2 连接Client2并告诉连接Client1的客户端<br>Client2->Client1 <br>Client1->client2 <br>这样整个过程就再也不需要服务器来中转啦
 
Restricted Cone NAT及Restricted-Port Cone NAT只在刚开始还没有与另外的客户端建立连接的时候才需要服务器来做中介的,过程如下<br>Client1->Server 请求服务端要求Client2连接Client1<br>Server->Client2 连接Client2并告诉连接Client1的客户端<br>Client2->Client1 <br>Client1->client2 <br>这样整个过程就再也不需要服务器来中转啦<br>^^^<br>你这样说起大笑话了。比如你通过router连接,你可以断开router么,
 
楼上的那位兄弟你怎么不说,像我那样我能不能断开Internet网络进行连接呢?<br>在下我也是才疏学浅,让你见笑了.<br>还望指教一二,不仅仅是来听我讲笑话的!!!
 
丢,,找bitspirit的作者商讨商讨撒
 
后退
顶部