先揭晓一下前面天的抽奖活动中奖人员:
恭喜这位同学中奖,麻烦你在微信公众号留言你的收货地址,或者加入QQ群:417046685 来找我也行。
同时,知识星球的活动还在继续,现在加入知识星球立即赠送技术图书一本
今天带来的是阿钟的一篇关于Socket的文章,现在的技术文章大多数千篇一律,所以我特意找了一些冷门的来,不知道效果如何,那么我们直奔主题吧~
Socket是什么:所谓Socket 通常也称作”套接字”,用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通过”套接字”向网络发出请求或者应答网络请求。Socket内部又有两种协议(Tcp/Udp),我们来说说其各自的特点。
先来说说网络编程的三要素
1.IP地址:网络中计算机的唯一标识
2.端口
3.协议:通信的规则
Tcp/Udp特点
一、 TCP(协议):
建立连接,形成传输数据的通道
在连接中进行大数据量传输
通过三次握手完成连接,是可靠协议
必须建立连接,效率稍微低点
二. UDP(协议):
将数据及源和目的封装在数据包中,不需要建立连接
每个数据包的大小限制在64K内
因无连接,是不可靠协议
不需要建立连接,速度快
Socket工作图解
下面进入实战环节
TCP协议进行数据传输,实现两台设备的一个简单数据发送。
客户端发送数据
服务端接收数据
现在来看下UDP协议是怎么进行数据传输的。
发送端
接收端
使用Tcp协议传输大文件,循环将数据写入流中
Tcp发送端
大文件传输(Tcp接收端)
掌握了Socket的基本传输规则,相信你很快就能写出一个利用局域网让两台设备进行数据传输了。
Demo下载地址请点击阅读原文:
扫描二维码
加入知识星球
Hi Android
