目录
Socket 套接字
Socket套接字,是由系统提供用于网络通信的技术,是基于TCP/IP协议的网络通信的基本操作单元。基于Socket套接字的网络程序开发就是网络编程
网络编程套接字,是操作系统给应用程序提供的一组API(叫做socket API)
socket可以视为应用层和传输层之间的通信桥梁
传输层的核心协议有两种,TCP,UDP
socket API也有对应的两组,分为以下两种:
TCP:有连接;可靠传输;面向字节流;全双工
UDP:无连接;不可靠传输;面向数据报;全双工
有连接:比如打电话,得先接通,才能相互交互数据
无连接:想发微信,不需要接通,直接就能发数据
可靠传输:传输过程中,发送方知道接受方没有收到数据
不可靠传输:传输过程中,发送方不知道接收方有没有收到数据
面向字节流:依字节为单位进行传输(非常类似于文件操作中的字节流)
面向数据报:以数据报为单位进行传输(一个数据报都会明确大小)一次发送/接受必须是一个完整的数据报,不能是半个或者一个半
全双工:一条链路,双向通信
半双工:一条链路,单向通信