400份,你有本事,你就拿去,路过的发表一下看法,给个想法. ( 积分: 200 )

  • 主题发起人 主题发起人 swordbuilder
  • 开始时间 开始时间
S

swordbuilder

Unregistered / Unconfirmed
GUEST, unregistred user!
我现在要做一个类QQ的东东,想用UDP,现在大致的整个过程有一定的思路,现在主要是一些关
键的技术还没有弄明白,特别是NAT的IP地址,PORT号我如何获取,我本机的IP,PORT 会不有某一个与之相同呢?又该如何让它们一直保持过接状态,我昨晚看了一晚DFW以前的资料,好像大家只是提一下,大多是讨论TCP还是UDP比较好,没有真正涉及到真正的技术,如果有谁能帮忙解决,在下不甚感激,我只有400份,你拿去吧!!!!!!!(要解决技术难题,有无源代码都行,当然有哪位能慷慨的给一下代码那是最好,在此我先谢谢大家!)另外事200我会另外通知付出的,言必行.
 
我现在要做一个类QQ的东东,想用UDP,现在大致的整个过程有一定的思路,现在主要是一些关
键的技术还没有弄明白,特别是NAT的IP地址,PORT号我如何获取,我本机的IP,PORT 会不有某一个与之相同呢?又该如何让它们一直保持过接状态,我昨晚看了一晚DFW以前的资料,好像大家只是提一下,大多是讨论TCP还是UDP比较好,没有真正涉及到真正的技术,如果有谁能帮忙解决,在下不甚感激,我只有400份,你拿去吧!!!!!!!(要解决技术难题,有无源代码都行,当然有哪位能慷慨的给一下代码那是最好,在此我先谢谢大家!)另外事200我会另外通知付出的,言必行.
 
到c++論壇里去吧﹐有解決方法﹐不懂﹐頂先。
 
QQ针对不同的消息采用不同的协议,一般的通信采用TCP,有的采用UDP(传送视频等)。
无论什么协议,接收消息的都会知道发送方的IP和PORT,数据包中包含了的,看看delphi
的例子程序就知道了。至于主动发送方,你当然要知道了对方的IP地址和Port和才能发送。
要保持连接状态就只能用TCP协议了。
 
LumaQQ 小组
http://lumaqq.linuxsir.org/main/?q=user
这里是一个开源的QQ小组,你可参考一下的
 
是局域网内?还是...
1.先设置一个服务器,让每个用你的'qq'登陆时都向服务器提交一个数据A:(ip,port..).
2.能连接上服务器,并能提交上述数据的就算登陆了;
2.登陆后就要从A中读出在线的机器.
3.发送消息.(随你用哪种了),选中之后就读取他的数据A,的到ip,port...
 
我实现的是P2P,对于本地端的PORT(端口)是指定呢,还是动态获取,如果动态获取,怎么来获,
代理网关的IP,PORT(也就是映射) 又该怎么办,怎样得到这个IP和PORT????
 
还是要问问,你是在互联网,还是在局域网,这有很多不同的,我开发了一个QQ,是集成在办公自动化系统使用,没有服务器,是用广播方式通知上线的。
 
PORT:每个qq上线时,PORT:= Random(1000)+1000;(无重复情况下),下线时删除数据。
我做的是局域网的,只能这样了,不好意思,没有帮到忙。
 
我这个东东要在局域网内,但要保证,它通过互联网能与另一个局域网的某用户进行通信,也就是说要夸多个网段.(说是局域网也可,说在INTERNET也行) 谢谢各位
 
我用tcp/ip倒是做一个,现在想想,麻烦的就是自己在定制传输协议的时候要先考虑的周道一些。现在让我再做的话,肯定是tcp/ip与udp一起用的,tcp/ip用来连接服务器(通过服务器中转文本对话信息,因为量小)。然后用udp来直连两台,用来传输图片,视频等。
 
to :初学者1号
你能讲讲你做的东东的端口映射吗,怎样实现的?谢谢
 
先看看这个吧
P2P之UDP穿透NAT的原理与实现(附源代码)

http://www.ppcn.net/n1306c2.aspx
 
最简单的办法,和腾迅的大佬聊一聊就知道了!
 
to :jsjxuwenjun
跟腾迅的大佬聊聊,我不过是无名的程序员,我怎么跟他们联系的上啊,他们会理我吗?
to: tswhq
老兄,你提供的信息很重要,到时揭贴时,你就等着拿份吧!
大家请继续啊,能提供代码或解决方法或相关信息的都可以,到时都有份啊!

UDP连接怎样来维持呢?在此方面,我还没有什么好方法,大家来发表一下高论!!!!!
感谢大家!!!!!!!!!!!!
 
看看这个老贴:
http://www.delphibbs.com/keylife/iblog_show.asp?xid=15489
 
呵呵,这个问题不是讨论过了吗!?
QQ大部分协议都是走UDP的,这样的成本和效果是最好的。
UDP打泂已经很成熟了,上面的网址有。但不是所有的都可以解决。

UDP连接怎样来维持呢?
需要维持吗?两边都侦听,收就行了。
 
"UDP连接怎样来维持呢?"
这个都要问?
还是好好看一下计算机网络吧。

TCP是面向连接的协议
UDP的面向无连接的协议
 
CLIENT端与SERVER端的映射不须要维持吗,否则断开了,数据包不是全都给丢失了吗,还能通信吗,不是有“心跳包”之说吗?计算机网络已好一段时间没看了,以前一直对数据库开发,没有涉及到通信,现在忽然这么来一下,我还真有一点摸不着底啊!如有不对,望各位多多指教!谢谢了!!!!
 
我在做的时候,因为使用的是tcp/ip,所以不需要什么端口映射。但却需要服务器来记录在线的IP以及某些用户属性,由于对这些IP的查询比较平凡,建议自己做一个IP池(这样服务器的效率就高多了),在有人下线或上线的时候,不需要移动很多数据。我做的那个很烂的,也就不帖出来了,免的笑话。
^*^
 

Similar threads

D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部