HTTP
首先,对URL进行解析,URL包含了Web服务器和对应的文件(文件路径)
URL是请求服务器中的文件资源
通过Web服务器和对应文件来生产HTTP包(超文本传输协议)
DNS
根据域名查询对应的IP地址
域名的层级
根DNS服务器
*域DNS服务器
权威域DNS服务器
解析域名的流程
客户端发送DNS请求(关于这个域名),发给本地DNS服务器
本地DNS进行缓存查询,查询到即返回ip地址;查询不到,则本地DNS向根DNS服务器请求
根DNS服务器会根据域名给本地DNS发送对应的*域DNS服务器地址
本地DNS向*域DNS服务器发送请求,*域DNS会发送对应的权威域DNS地址
权威域DNS会查询对应的ip地址返回本地DNS服务器
本地DNS返回对应ip地址给客户端,从而建立连接
TCP
HTTP是基于TCP传输(传输层给应用层提供网络支持)
源端口和目标端口:用于区分应用
序号:解决乱序的问题;窗口大小:流量控制(对发送方);拥堵控制(网络拥堵情况)
进行三次握手:确保双方都有发送和接收能力,并且为同一次连接
根据MSS长度来 切分 HTTP数据包大小
IP
把TCP数据包包装成网络包进行网络层发送
源IP地址 和 目标IP地址
源地址:客户端地址
目标地址:DNS解析出来的web服务器ip地址
MAC
MAC头部为 以太网使用的头部
发送方的MAC地址 和 接收方的MAC地址 用于两点传输
发送方MAC:网卡获取
接收方MAC:通过ARP协议
ARP协议:进行广播的方式;并且进行缓存
网卡
MAC包封装完以后的数据包 只是 二进制数字
通过网卡把数字信息转换成电信号
交换机
用于连接多台计算机或网络设备,形成局域网
局域网内部设备之间的通信
本地内部设备之间的发送
路由器
用于连接多个网络,如多个局域网或广域网
不同网络之间的连接和数据传输
到服务器端后再进行层层解刨;之后把HTTP响应请求进行包装(TCP, IP, MAC, 网卡)
发送给交换机,再发给路由器;客户端再进行解剖,得到响应报文,进行渲染
如果需要断开连接则通过四次挥手,来断开连接