1.复杂的网络
不同的分层 来解决不同的问题
不同的分层之间定义一些标准化的接口,来就行数据通信
2.为了简化网络的复杂度,网络通信的不同方式被分解为多层次结构,每一层只与紧挨着的上下层进行交互,将网络分层就可以修改,甚至替换某一层的软件,只要层与层之间的接口保持不变,就不会影响到其他层。
- OSI:开放系统互联参考模型
- TCO/IP 协议簇
3.一个HTTP请求的分层解析
DNS解析 网址成对应服务端IP
HTTP请求的完整过程
问题:当用户在浏览器输入网址回车后,网络协议都做了哪些工作?
1.首先是 浏览器,解析出URL中的域名
2.根据域名获取对应的IP地址,首先从浏览器缓存查看
如果没有从本地hosts(etc/hosts)文件中查看,还没有则从LDNS,RootServer域名服务器,国际顶级域名服务商的DNS层层解析
3.拿到IP地址后,浏览器就可以发起与服务器的三次握手
4.握手建立后,就可以开始组装http请求报文,发送报文
5.服务器收到请求报文后,报文解析,生成响应数据,发送响应数据
6.浏览器收到响应数据之后,开始渲染页面