HTTP知识总结(一)TCP/IP,DNS概览,URL与URI概览

前言:
18年5月份看了上野宣的《图解HTTP》,图文的方式让我印象深刻,对Web这块的通信原理有了点感悟,关于HTTP内容比较多,为防止以后忘记,所以有了这篇总结性博客。

先上 福利:《图解HTTP》链接:https://pan.baidu.com/s/1wkl0Rq2DThO8ZQHiLdJSSg 密码:7n9c

正文:

第一章:了解Web及网络基础


1.宏观过程:
2.HTTP背景

    这个感兴趣的自己去看吧。
3.TCP/IP协议族(重点)

    计算机与网络设备要相互通信就必须基于相同的想法,比如:如何探测到通信目标,由哪一边先发起通信等等。
所有的这一切都需要一种规则,我们称其为协议。  
    而把互联网相关联的协议集合起来总称为TCP/IP。

协议族分层:
应用层:决定向用户提供应用服务时通信的活动。(HTTP协议处于该层)。

传输层:提供网络连接中两台计算机之间的数据传输。

网络层:
    用来处理网络上流动的数据包,规定使用怎样的路径传输,即所谓传输路线。

链路层:
用来处理连接网络的硬件部分,一般物理性可见,比如光纤,网卡,以太网。

以HTTP举例:
当用户在Web浏览器上发出一个想看某个Web页面的HTTP请求。为了传输方便,在传输层(TCP协议)把从应用层接收到的数据,即HTTP请求报文进行分割(不然一次性传很大的数据太不方便了),并打上标记序号和端口号后发给网络层。在网络层(IP协议),增加作为通信目的地的MAC地址后转发给链路层。——这样客户端的通信请求就准备完成了,接收端的服务器则在链路层接收到数据,然后往上层发送一直到应用层。当传输到应用层,算真正接收到有客户端发送过来的HTTP请求。

4.IP协议
    有两点重要条件来保证数据包确实传送成功了:1.IP地址2.MAC地址。

IP地址指明节点被分配到的地址,可变换,而MAC属于固定地址基本上不会更改。两者通过ARP(一种用以解析地址的协议)来查询出对应的地址。
由于没人能全面掌握互联网中的传输状况,所以只能在中转过程中获悉粗略的传输路线,这种机制被称为:路由选择(下图)。

如何确认数据准确到达了目标呢?

TCP协议通过三次握手策略:
域名解析DNS协议:
通过DNS将IP地址与域名联系对应起来。

大致的完整过程:
1.7URI与URL

URI:统一资源标识符,URL:统一资源定位符。
URL属于URI,为其一个子集。

URI属于统一资源标识符,就是能唯一标识某个资源的字符串,类似于数据库的主码,比如生活中的身份证号码,通过这个号码能唯一定义到你这个人。
那么,什么是URL呢?URL被称作统一资源定位符,它反映了资源的位置,比如:生活中,巴黎铁塔的位置是不变的(。。。它要是倒了我也没法子),那么可以通过唯一的经纬度来确定它的位置,这个位置就叫做URL,所以URL是属于URI的(因为URI除了用位置唯一确定外,还可以以别的方式确定,比如给每个文件一个ID编号,就可以通过编号来唯一确定这个文件)。比如https://mp.csdn.net/postedit——就是一个URL。