美文网首页
HTTP 学习笔记 1. 了解Web及网络基础

HTTP 学习笔记 1. 了解Web及网络基础

作者: haifuyun | 来源:发表于2016-01-08 17:24 被阅读0次

    使用HTTP协议访问Web


    HTTP (HyperText Transfer Protocol,超文本传输协议) 是 客户端(Web浏览器等) 到 服务端获(Web服务器) 取资源运作流程中的一种"协议"和"规范".

    协议是指规则的约定.

    网络基础TCP/IP


    网络是在TCP/IP协议族的基础上运作的,而HTTP属于它内部的一个子集.


    .如何探测到通信目标

    .由哪一边先发起通信

    .使用哪种语言进行通信

    .怎样结束通信

    计算机与网络设备互相通信,不同的硬件和操作系统之间互相通信, 双方就必须基于相同的方法,因而需要一种规则,而这种规则称为协议.

    .电缆规格到IP地址的选定方法

    .寻找异地用户的方法

    .双方建立通信的顺序

    .Web页面显示需要处理的步骤

    以上与互联网相关联的协议集合起来总称为TCP/IP.

    TCP/IP的分层管理


    TCP/IP分为4层:

    应用层          应用层决定了向用户提供应用服务时通信的活动,并预存了各类通用的应用服务.

    HTTP协议

    FTP (File Transfer Protocol,文件传输协议)  

    DNS (Domain Name System,域名系统)

    传输层          传输层对上层应用层,提供处于网络连接中的两台计算机之间的数据传输,该层有两个性质不同的协议.

    TCP (Transmission Control, 传输数据协议)

    UDP (User Data Protocol, 用户数据报协议)

    网络层          网络层用来处理在网络上流动的数据包.

    IP网际协议

    数据包是网络传输的最小数据单位,该层规定了通过怎样的路径 (传输线路) 到达对方计算机,并把数据包传送给对方.

    数据链路层          数据链路层用来处理连接网络的硬件部分,硬件上的范畴均在链路层的作用范围之内.

    操作系统

    硬件的设备驱动

    NIC (Network Interface Card,网络适配器,网卡)

    光纤等物理可见部分

    TCP/IP通信传输流


    应用层发出HTTP请求

    传输层收到应用层数据 (HTTP请求报文) 并进行分割,并在各个报文上 打上 标记序号 端口号 转发网络层

    网络层 (IP协议) 增加 作为通信目的地的 MAC地址 后转发链路层

    接收端则相反,底层链路层收到数据,按序往上层发送,直到应用层,才算接收到客户端发送的HTTP请求.


    发送端 层与层 之间会打上一个每层所属的首部消息,而接收端则相反,会在相应层把所属首部消去.

    这种把数据信息包装起来的做法称为封装 (encapsulate).

    与HTTP关系密切的协议: IP && TCP && DNS


    IP网际协议位于网络层.

    IP协议的作用是把各种数据包传送给对方,要保证确实传送到对方,需要满足各类条件.

    其中有两个重要条件 IP地址 MAC地址

    IP地址: 是分配给网络上使用网际协议的设备的数字标签,节点被分配到的地址.

    MAC地址: 是指网卡所属的固定地址.

    IP地址可变,但MAC地址基本上不会改变.

    IP间的通信依赖MAC地址.通常双方是经过多台计算机和网络设备中转才连接到对方,中转时会利用下一站中转设备的MAC地址来搜索下一个中转目标.这时会采用到 ARP协议(Address Resolution,地址解析协议)

    在到达通信目标前的中转过程中,计算机和路由器等网络设备只能获悉很粗略的传输路线,它们都无法全面掌握互联网中的细节.

    确保可靠性的TCP协议


    TCP位于传输层,提供可靠的字节流服务,并能够确认数据最终是否送达对方.

    字节流服务是指,为了方便传输,将大块数据分割成以报文段为单位的数据进行管理.

    为了准确无误地将数据送达目标处,TCP协议采用三次握手(three-way handshaking)策略.

    负责域名解析的DNS服务


    DNS (Domain Name System) 服务是和HTTP协议一样位于应用层的协议.它提供域名到IP地址之间的解析服务.

    各种协议与HTTP协议的关系


    URI和URL


    URI是  Uniform   Resource  Identifier 的缩写.

    Uniform  规定统一的格式可方便处理多种不同类型的资源,而不用根据上下文环境来识别资源的访问方式.

    Resource 定义是“可识别的任何东西”. 除了“文档文件”  “图像” 或 “服务” 等能够区别于其它类型的,全都可作为资源。

    Identifier 表示可标识的对象,也可称为标识符.

    URI就是由某个 "协议方案" 表示的 "资源" 的 "定位标识符".

    协议方案有ftp mailto telnet file等标准方案30种,http协议为其中一种.

    上述句子的个人理解为:

    资源:存在服务器中的内容.

    定位标识:服务器访问路径的字符串地址.

    协议方案:URL开头.

    URI的绝对格式

    上图为URI的绝对格式.

    关于URI和URL的关系,我在知乎上找到了一个很好的答案(作者:不鳥萬Rio,著作权归作者所有),在此引用:


    相关文章

      网友评论

          本文标题:HTTP 学习笔记 1. 了解Web及网络基础

          本文链接:https://www.haomeiwen.com/subject/smifkttx.html