TCP/IP协议族;
网络传输基础模型;
HTTP是什么;
URI。

疑问:

1、为什么说,与其把HTTP翻译为“超文本传输协议”,不如翻译为“超文本转移协议”?
答:负责传输的是传输层,HTTP协议本质上处理客户端“诉求”的状态转移。
2、什么是HTTP?为什么要有HTTP?
答:HTTP协议用于将用户诉求在“传输状态”和“诉求本体”间做主状态转换,方便下层进行数据传输。
3、TCP/IP协议也好,HTTP协议也好,都是看不见摸不着的东西?有什么具象化的体现?
答:HTTP协议的体现详见第二章疑问。

心得

所谓浏览网页,其实和寄信收信差不多:我写了封信给好友,问他借本书看看,我的信通过邮局辗转多地到了我的好友手上,我的好友根据一系列条件判断是否应该借书给我,并将结果(借/不借)通过邮局再次辗转多地传递给我。image.png

WWW(World Wide Web)

WWW创建初衷:可以让世界各地不同的人们相互沟通传阅资料。

HTML

什么是HTML?HTML可以看做是一种世界统一的浏览器语言。世界各地的人要交流,需要一种统一的“语言”规范,(以便解析),所以需要一套统一的文档结构——HTML超文本标记语言。

协议

什么是协议?协议是“我”、“邮局”、“我的老友”的通信规则:
image.png

网络基础TPC/IP

什么是TCP/IP?

  • HTTP是TCP/IP的子集。
  • 网络是在TCP/IP协议族的基础上运作的。
  • TCP/IP协议族里包含着格式各样的内容(找找HTTP在哪)image.png

    TCP/IP分层管理

    因为TCP/IP有着各式各样的内容,全放在一起修改想想就麻烦,有一句老话叫“牵一发动全身”。传统印刷术刻坏一个字就要整篇推翻从来,而活字印刷术可以自由排列。同理,TCP/IP需要分层管理,才有组织有纪律。image.png

  • 应用层

    • 直接关系用户(原文:决定了向用户提供服务时通信的活动)。
    • HTTP处于该层。
    • 这次写信是想让你借我看你收藏的孤本复印件,请寄到XX市,XX街道,XX小区,谢谢。
    • 这次回信是告诉你没问题,借你看,孤本如下:balabalabala
  • 传输层
    • 为应用层服务
    • 为“我”和“我的老友”提供数据传输,有点像“邮局”的职责——确保信能送到,负责数据解析(信太长了我给你分一分)与数据传递状态确认(信寄到了么?没寄到?重寄!)。
    • 有两个性质不同的协议:TCP(Transmission Control Protocol,传输控制协议)、 UDP(User Data Protocol,用户数据报 协议)
  • 网络层
    • 处理网络上流动的数据包
    • 规定了传输路径image.png
    • 规定信的轨迹,这堆从苏州寄到北京要路过扬州,那堆从四川寄到南京去要从广州中转。
  • 链路层
    • 用来处理和网络连接的硬件部分
    • 网卡、光纤等传输媒介
    • 车、马、高铁、骡子、飞机

      TCP/IP通讯流

      image.png

可以看到信件在发送端,每经过一层就会封装一层;在接收端,每经过一层就会解封一层。
从而分析出一种模式:下层为上层提供服务、上层为下层提供接口。
下层将信息解封为上层的模式给上层,提供了服务;上层将信息封装一层给下层,提供了接口。

IP、TCP、DNS

这3个协议与HTTP密不可分
1、IP:IP(Internet Protocol)网际协议位于网络层。负责运输和路由中转。image.png
2、TCP:位于传输层,提供可靠的字节流服务,包含:

  • 分割大块数据为报文段
  • 确保数据能到达目标(如三次握手策略)image.png

3、DNS(Domain Name System)域名解析服务,位于应用层,提供域名到IP地址之间的解析服务。image.png

各种协议与HTTP的关系

image.png

最后回过来看HTTP协议

什么是HTTP协议?HTTP协议可以将客户端诉求、服务器响应转换为HTTP报文,本质上是请求数据/响应数据的实现——将数据按照协议转为大家都理解的语言。

  • 译名:超文本传输协议。然而这种翻译其实并不准确,“超文本转移协议”才更贴切。
  • 本质上只是做了数据的状态转换,而不是数据的传输,又因为其直接与客户端相关,因此在应用层,而不是传输层。

    URI与URL

  • URI是统一资源符;URL是统一资源定位符

  • URL是 URI 的子集。
  • URI 用字符串标识某一互联网资源,而 URL表示资源的地点(互联 网上所处的位置)。
  • “RFC3986:统一资源标识符(URI)通用语法”中列举了几种 URI 例 子,如下所示:image.png
  • 总之URI标识了一切,使用的协议、该怎么访问、资源的类型、资源的地址等等……