图解http笔记

161 阅读3分钟

TCP/IP协议

HTTP属于TCP/IP协议的子集,计算机与网络设备要相互通信,双方必须基于相同的方法,我们把这些规则成为协议,我们把与互联网相关的各种协议集合起来成为TCP/IP

TCP/IP的分层

TCP/IP从上倒下分为以下4层:应用层、传输层、网络层、数据链层。
我理解的层就是模块化,不用牵一发而动全身,可以局部替换更新。

  1. 应用层
    应用层预存了各类通用的应用服务,比如FTP(文件传输协议),DNS(域名系统),HTTP协议也处于该层
  2. 传输层
    传输层提供处于网络连接中的两台计算机之间的数据传输, 有两种不同的协议:TCP和UDP
  3. 网络层(ip协议)
    网络层规定如何在众多选项中选择一条传输路线
  4. 数据链层 用来处理连接网络的硬件部分,包括操作系统,硬件的设备驱动,网卡,光纤等。

TCP/IP通信传输流

利用TCP/IP协议进行网络通信的时候,客户端从应用层往下走,服务器则从链路层想向上走,传输顺序:客户端应用层->传输层->网络层—>链路层->服务器链路层->网络层->传输层->应用层

发送端在层与层之间传输数据的时候,每一层比打上该层的首部信息,在接收端则每经过一层把对应的首部信息删除,这叫做封装

与http关系密切的协议:IP、TCP、DNS

负责传输的IP协议

几乎所有的网络系统都会用到IP协议,IP协议和IP地址不是同一个东西。
IP协议的作用是把数据包传输给对方,而要保证能够传输到对方那里,需要满足各种条件,其中最重要的两个地址就是IP地址和MAC地址
IP地址指明了节点被分配到的地址,MAC地址是网卡缩所属的地址,IP地址可以和MAC地址进行配对,IP地址可变,MAC地址基本不会变

可靠的TCP协议

TCP协议为了更容易的传输大数据,把数据分割成一报文段为单位进行管理,TCP协议能为确认最后数据是否送达。
为了确认数据是否准确无误的送达,TCP协议采用了三再次握手策略。

发送端:我有东西要发给你,发送一个SYN数据包
接收端:明白,我收到你的数据包了,喏,发给你一个SYN/ACK数据包
发送端:那我准备发给你了,发送一个ACK标志的数据表代表握手结束

负责域名解析的DNS

DNS提供域名到IP地址的解析服务,一般由运营商提供
由于人类通常通过域名来访问而不是通过IP地址来访问, 但是计算机去理解名称显得比较困难,计算机更擅长处理数字,DNS就像一个翻译,负责通过域名查询IP地址,或者逆向从IP地址反查域名

URI和URL

URI

URI(统一资源标识符) 是一个用于标识某一互联网资源名称的字符串。 该种标识允许用户对网络中(一般指万维网)的资源通过特定的协议进行交互操作

覆盖全部信息的绝对URI

URI包括URL和URN

URL

统一资源定位符 俗称为网页地址(网址) 统一资源定位符的标准格式如下:

协议类型:[//登录信息@服务器地址[:端口号]][/资源层级UNIX文件路径]文件名[?查询][#片段ID]

URN

统一资源名称 是统一资源标识(URI)的历史名字

本人理解:URI在包括URL和URL,URL指地址,URN指名字.

---未完待续