前面讲解协程时,有一篇文章简单介绍过 IO 相关的简单理解,现在做一个整体总结,我们说的好多好多协议,到底怎么回事。
计算机网络之间需要进行通信和数据交换才能沟通,而沟通需要建立一些规则,不然互相之间不知道在说什么,这些规则就是网络协议。
网络协议:TCP/IP参考模型也叫做TCP/IP协议族,分为四层(应用层、传输层、网络层、数据链路层 + 物理层)
一、简单总结一下数据是如何通过TCP/IP协议进行传输的
- 应用层写入数据
- 传输层打包数据,加入UDP或TCP头进行包装
- 网络层再打包数据,加入IP头把传输层的东西再进行包装
- 数据链路层打包数据,加入帧头把网络层的数据再进行包装
- 物理层把帧头+IP头+UDP或TCP头+数据,转换成比特 101010 在网线中传输出去,传输中用高电压代表1,低电压代表0。
二、简单说一下 socket 对象
数据传输的过程其实是很复杂的,包括各种连接、封装、加密、传递、容错等等。我们使用起来超级复杂,这时就出现了一套使用简单的接口,叫做套接字(socket)。
socket 把复杂的 TCP/IP协议族 封装起来,使网络通信更方便使用
- 1、socket 两种传输模式:
- 1.1、TCP 传输方式是可靠连接的传输模式,3次握手建立连接,流传输,4次挥手结束连接。比如 http、FTP、w