简介
数据协议格式
一次最大能传输65535字节的数据,实际过程中一般会限制得更小,如8192字节等。
- 基于C#的UDP编程可以通过
socket
实现,也可以通过UDPClient
实现,UDPClient
是对socket
进行封装,便于使用;相当于socket更加底层。 - 编写UDP服务器端(监听接收)时,需要指定本地监听的
端口号
- 编写UDP客户端(发送数据)时,需要指定发送目的地的
IP地址
与端口号
操作
- 可以设置本地监听的端口号
- 可以开启或者关闭监听服务
代码网址
参考链接
- http://www.cnblogs.com/zhaoyx/articles/1957291.html
- http://www.cnblogs.com/sunev/archive/2012/08/08/2627247.html
注意事项
- 在开启接收服务之后,关闭服务时,首先需要关闭接收数据的
UdpClient
,再Abort
这个线程;否则线程会一直处于AbortRequest
的状态。
一些特殊的ip地址
- 127.0.0.1
- 127.X.X.X是特殊的ip地址,是本地的
loopback地址
,一般常用127.0.0.1
,
- 127.X.X.X是特殊的ip地址,是本地的
- 0.0.0.0
- 代表本网络的所有主机ip
- 参考链接:http://www.2cto.com/net/201310/253427.html
其他
WPF异步线程中更新UI
// update ui in a thread this.Dispatcher.Invoke(new Action( () => { tbLog.AppendText(string.Format("\n{0}来自{1}:{2}", DateTime.Now.ToString(), receiveAddress, receiveMessage)); }));