一、socket的概念
socket 又成『套接字』。
网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端成为一个 socket。
应用程序通常通过『套接字』向网络发出请求或者应答网络请求。
二、网络通信要素
- 网络上的的请求就是通过 Socket 来建立连接然后互相通信
- IP 地址(网络上主机设备的唯一标识)
- 端口号(定位程序)
- 用于标示进程的逻辑地址,不同进程的标示
- 有效端口:0 ~ 65535,其中 0 ~ 1024 由系统使用或者保留,开发中建议使用 1024 以上的端口
- 传输协议(用什么样的方式进行交互)
- 通讯的规则
- 常见协议:TCP、UDP
TCP & UDP
TCP(传输控制协议)
- 建立连接,形成传输数据的通道
- 在连接中进行大数据传输(数据不受限制)
- 通过三次握手完成连接,是可靠协议,安全送达
- 必须建立连接,效率会稍低
UDP(用户数据报协议)
- 将数据及源和目的封装成数据包中,不需要建立连接
- 每个数据报的大小限制在 64 K 之内
- 因为无需连接,因此是不可靠协议
- 不需要建立连接,速度快