读图解http笔记

TCP/IP协议族

1.TCP/IP的分层:

分为4个层次:

应用层,传输层,网络层,和链路层。

分层的好处:

(1)可以在某层次变动后,只需修改某层次的内容,而不用把所有部分整体都替换掉。(维护性好,可扩展性高

(2)层次化后,对于每个层次的设计也变得简单了许多。

各层的作用如下:

(1)应用层决定了向用户提供应用服务通信时的活动。(我的理解类似于准备活动

这层包括 HTTP协议,DNS(域名系统),FTP(文件传输协议);

DNS服务:

由于计算机更擅长处理IP地址的纯数字,而字母配合数字更符合人类的记忆习惯。

所以为了解决上述问题,DNS服务应运而生,

DNS协议提供通过域名查找IP地址,或逆向从IP地址反查域名的服务。

DNS协议就类似于一个转换函数,当计算机需要时转换为IP,当人需要时转换为域名

(2)传输层:

传输层对上层的应用层,提供处于网络连接中的两台计算机的数据连接。

在传输层有个性质不同的协议TCP(传输控制协议),UDP(用户数据报协议)。

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

在传输层中,(TCP协议)会把从应用层收到的数据(HTTP请求报文)进行分割,并会在各个报文打上标记序号和端口号后转发给网络层。TCP协议

能够确认数据最终是否送到了对方。

三次握手

(第一次握手)发送端首先发送一个带SYN标志的数据包给对方。(第二次握手)接收端收到后,回传一个带有SYN/ACK标志的数据包以示传达确认信息。(第三次握手)最后,发送端再回传一个带ACK标志的数据包,代表“握手”结束。

通俗地讲

第一次握手:发送端发送正常。

第二次握手:接收端接收和发送正常。

第三次握手:发送端接受正常。

若在握手过程中某个阶段莫名中断,TCP协议会再次以相同的顺序发送相同的数据包。

(3)网络层(又叫网络互联层)

网络层用来处理网络上流动的数据包。数据包是网络传输的最小数据单位。网络层所起的作用就是在众多的选项内选择一条传输路线。

在网络层,会增加作为通信目的地的MAC地址后转发给链路层。

IP网际协议属于网络层,IP协议的作用是把各种数据包传送给对方。

传送给对方需要有两个条件:

IP地址:指明了节点被分配到的地址,IP地址可变。

MAC地址:指网卡所属的固定地址,MAC地址基本不变。

IP间的通信依赖MAC地址。通信的双方一般要经过多台计算机和网络设备中转才能连接到对方。而进行中转时,会利用下一站中转设备的MAC地址来搜索下一个中转的目标。这是会采用ARP协议。ARP协议是一种以解析地址的协议,根据通信方的IP地址就可以反查出对应的MAC地址。

在到达通信目标前的中转过程中,那些计算机和路由器等网络设备只能获悉很粗略的传输路线。这种机制被称作路由选择

(4)链路层(又名数据链路层,网络接口层)

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

当利用TCP/IP进行网络通信时,会通过分层顺序与对方进行通信。

发送端会从应用层往下走,接收端则往应用层往上走。

发送端在进行层与层之间传输数据时,每经过一层必定会打上一个该层所属的首部信息。反之,接收端在层与层传输数据时,

每经过一层会把对应的首部消去。 这种把数据信息包装起来的做法叫做封装。

URI(统一资源标识符)(Uniform Resource Identifier)

URI就是由某个协议方案表示资源的定位标识符。协议方案(如http,ftp等)是指访问资源所使用的协议类型的名称。

URI用字符串标识某一互联网资源,而URL表示资源的地点。URL是URI的子集

绝对URI格式:

协议方案名+登录信息(可选)+服务器地址+服务器端口号(可选)+带层次的文件路径(可选)+查询字符串(可选)+片段标识符(可选)

RFC标准:,是一系列以编号排定的文件。文件收集了有关互联网相关信息,以及UNIX和互联网社区的软件文件

猜你喜欢

转载自blog.csdn.net/weixin_40729735/article/details/84839581