当咱们在网页浏览器(Web browser)的地址栏中输入 URL 时,Web 页面是如何呈现的?前端
根据 Web 浏览器地址栏中指定的 URL,Web 浏览器从 Web 服务器端获取文件资源(resource)等信息,从而显示出 Web
页面。 Web 使用HTTP(HyperText Transfer Protocol,超文本传输协议)协议
做为规范,完成从客户端到服务器端等一系列运做流程。而协议是指规则的约定。能够说,Web 是创建在HTTP 协议
上通讯的。
按协议族层从上到下依次分为4层:应用层
、传输层
、网络层
和链路层
。
1)应用层:决定了向用户提供应用服务时通讯的活动。如FTP、DNS、HTTP等 。
2)传输层:对上层(应用层)提供处于网络链接中的两台计算机之间的数据传输,主要涉及TCP、UDP 。
3)网络层(又名网络互连层):处理网络上流动的数据包。数据包是网络传输的最小单元 。功能就是选择合适的传输路线到达对方计算机,即一边路由,一边传输。
4)链路层(又名数据链路层或网络接口层):处理链接网络的硬件部分,包括控制操做系统、硬件的设备驱动、NIC(Network Interface Card,网卡),及光纤等物理可见部分。硬件上的范畴均在链路层的做用范围以内。浏览器
TCP/IP 通讯传输流程: 服务器
利用 TCP/IP 协议族进行网络通讯时,会经过分层顺序与对方进行通讯。发送端从应用层往下走,接收端则往应用层往上走。发送端在层与层之间传输数据时,每通过一层时一定会被打上一个该层所属的首部信息。反之,接收端在层与层传输数据时,每通过一层时会把对应的首部消去。网络
用 HTTP 举例来讲明:
1)首先做为发送端的客户端在应用层(HTTP 协议)发出一个想看某个 Web 页面的 HTTP 请求。
2)接着,为了传输方便,在传输层(TCP 协议)把从应用层处收到的数据(HTTP 请求报文)进行分割,并在各个报文上打上标记序号及端口号后转发给网络层。
3)在网络层(IP 协议),增长做为通讯目的地的 MAC 地址后转发给链路层。
4)接收端的服务器在链路层接收到数据,按序往上层发送,一直到应用层。当传输到应用层,才能算真正接收到由客户端发送过来的 HTTP 请求。spa
位于网络层
做用:把各类数据包传送给对方
关键:IP地址能够和MAC地址进行配对,ip地址经过ARP协议能够反查出对应的MAC地址 。操作系统
位于传输层
做用:提供可靠的字节流服务(字节流:为了传输方便将大的数据块切割成小的报文段为单位的数据包进行管理)
关键:三次握手 SYN/ACKcode
位于应用层
做用:提供域名到IP地址之间的解析服务。orm
注意各协议的职责!!!接口
URI
(Uniform Resource Identifier,统一资源标识符)用于标识某一资源
。 URL
(Uniform Resource Loaction,统一资源定位符)用于标识某一资源的位置
,能够提供找到该资源的位置 。
URL是URI的子集 。ip
绝对URI格式
若是你以为这篇文章对你有所帮助,那就顺便点个赞吧,点点关注不迷路~
黑芝麻哇,白芝麻发,黑芝麻白芝麻哇发哈!
前端哇发哈