日期:2014-05-19  浏览次数:21371 次

用UDP传送数据结构?
我要在多台机器之间传送多个种类的数据,把每个数据定义成一种数据结构,传送的时候要带接收方的IP地址,现在希望这样做:
1、使用UDP协议
2、做一个发送函数,发送函数传入的参数是接收方的IP地址和端口号,和要发送的数据结构,返回的是数据结构的类型(在结构中有一个数据类型的变量)。
3、做一个接收函数,接收函数返回的也是数据结构的类型。
第一次上来,多多赐教!




------解决方案--------------------
我做的和你要求差不多,信息我用TCP通过服务器中转的,传送文件我是用UDP发送信息我要传给你文件了,你收到信息后确认收还是不收,不收就UDP回一个信息(命令号不同),收也UDP一个信息收并发送IP和那一个端口(随机生成)收(发和收用TCP)同时TCP监听产生的端口,我一收到这个确认发送就对那个IP和端口发送文件了。
------解决方案--------------------
C#处理结构体会累死人的。要用unsafe代码。
------解决方案--------------------
发送时先将要发送的数据结构序列化成二进制流,再发送。
接收时先接收二进制流,再把二进制流反序列化成数据结构。
------解决方案--------------------
要么序列化,不过序列化出来的数据比较大,要么就自己把数据写进数组再传输,这样数据量小一些