1.4 委托协议栈发送消息
1.4.1 数据收发操作概览
数据通过类似管道的结构来流动- 通信必须依靠套接字来完成,这里可以把套接字和传输管道看做两点成线的道理,先要建立两个点(套接字),连起来才能传输数据
- DNS得到IP地址后,浏览器委托操作系统的协议栈来收发数据。
怎么委托?委托谁?委托他做什么?
调用Socket库中组件来完成委托操作(包括套接字的相关操作);委托对象是操作系统的协议栈;协议栈是专门负责执行的数据收发的程序
1.4.2 创建套接字阶段
客户端和服务器之间收发数据操作的情形1.4.3 连接阶段:把管道接上去
Socket要连接上服务器,除了DNS查到的IP号之外,还需要知道端口号(Web是80,电子邮件是25,FTP是21)
客户端创建套接字时会随便分配一个端口号,在连上服务器的时候告知服务器,这样服务器就能通过套接字回传消息
1.4.5 断开阶段:收发数据结束
“对于同一台服务器来说,重复连接和断开显然是效率很低的,因此后来人们又设计出了能够在一次连接中收发多个请求和响应的方法。在 HTTP 版本 1.1 中就可以使用这种方法,在这种情况下,当所有数据都请求完成后,浏览器会主动触发断开连接的操作。”
网友评论