应用场景:客户端(手机,pc)需要搜寻所在局域网内的服务器并获得服务器地址。
方法简介:客户端发送UDP广播,服务收到广播后得到客户端ip地址,然后向客户端发送一次socket链接,客户端收到socket链接,获得服务器地址。
相关知识:
UPD、TCP。TCP是面向链接的,可靠的通信方式。UDP是面向非链接的通讯方式。TCP的建立比较麻烦,要经过“三次握手”。而UDP的建立比较简单,发送方只管把内容发送出去,不管接收方是否收到。UDP的传输分为:单播,多播,广播。其中,多播和广播是通过TCP/IP协议里面特定的IP地址实现的,例如受限广播的地址为:255.255.255.255 。
网络端口一共有65535个,主机之间的通讯需要制定端口。网络端口分为三类,公认端口,注册端口和动态和/或私有端口。
实验方式:
四个应用程序,其中两个android程序,两个PC程序。让PC和android轮流,或者一起当做客户端和服务端。测试结果是:PC端的UDP监听和UDP发起程序可以同时运行。但是android手机上,一旦UDP服务在监听端口,本机就不能再发送该端口的UDP广播。
代码下载:http://download.csdn.net/detail/qiushibaiyi/7531837
网络端口资料入口:http://baike.baidu.com/view/43200.htm?fr=aladdin 点击打开链接
多播和广播资料入口 : http://www.cnblogs.com/hnrainll/archive/2011/09/01/2162110.html 点击打开链接
部分代码参考:http://download.csdn.net/download/xiaoxiaobian3310903/4502201# 点击打开链接
参考文章: http://blog.sina.com.cn/s/blog_6c0a8fbb0100s3k5.html 点击打开链接
代码地址:http://download.csdn.net/detail/qiushibaiyi/7531837点击打开链接
android 发送UDP广播,搜寻服务器建立socket链接,布布扣,bubuko.com
android 发送UDP广播,搜寻服务器建立socket链接
原文:http://blog.csdn.net/qiushibaiyi/article/details/32915025