《网络是怎么连接的》读书笔记二
2021-08-28 本文已影响0人
RicardoLu
浏览器并没有直接发送HTTP请求消息的功能,从而需要通过一种东西向web服务器发送HTTP请求消息,这种东西就是协议栈。
而协议栈要与web服务器通信就需要通过一定的顺序调用Socket库的程序。以下为步骤:1.协议栈创建套接字,并将标识符返回给浏览器2.连接。服务器一般先创建好了套接字,等待应用程序发送请求,完成连接。因此,步骤2就是协议栈得web服务器的ip地址和端口号后建立与服务器的连接。端口号就是对外部的标识符,即标识符是内部对于套接字的标签,端口号是外部对于套接字的标签。3.发送数据。程序将数据委托协议栈发送给web服务器。由于程序数据本身就在内存中,因此协议栈可以直接通过内存取数据,存放数据的区域称为内部缓冲区。4.接受数据。发送请求给web服务器后,web服务器返回响应,协议栈接收数据。5.断开连接,删除套接字,一般是web服务器在发送完数据后删除套接字,断开连接。但是因为为了减少反复断连,在HTTP协议1.1中,修改为客户端接收完数据后主动删除套接字,断开连接。
DNS协议,即通过域名得到IP地址的协议,浏览器可以通过解析器向DNS服务器查询通信对象的IP地址。ARP协议,即通过IP地址查询MAC地址的协议。