网络请求相关http/https

参考:https://www.geeksforgeeks.org/layers-osi-model/

OSI模型

网络请求相关http/https_第1张图片
模型图.png

物理层

负责设备之间的实际物理连接。接收数据时,该层将接收到的信号并将其转换为0和1,并将它们发送到数据链路层,从而将帧重新组合在一起。
可能的各种传输模式是:单工,半双工和全双工。
集线器,中继器,调制解调器,电缆是物理层设备。

数据链路层(DLL)

数据链路层负责消息的节点到节点的传递。该层的主要功能是确保物理层上的数据传输从一个节点到另一个节点无差错。当数据包到达网络中时,使用其MAC地址将其传输到主机是DLL的责任。MAC地址是网卡决定的,是固定的。
从网络层接收到的数据包根据NIC(网络接口卡)的帧大小进一步分为多个帧。DLL还在头中封装发送者和接收者的MAC地址。
接收器的MAC地址是通过在网络上发出一个ARP(地址解析协议)请求,询问“谁拥有该IP地址?”并且目标主机将回复其MAC地址而获得的。

  • 成帧:成帧是数据链路层的功能。它为发送者传送一组对接收器有意义的比特提供了一种方式。这可以通过将特殊位模式附加到帧的开始和结束来完成。
  • 物理寻址:在创建帧之后,数据链路层在每个帧的报头中添加发送器和/或接收器的物理地址(MAC地址)。
  • 错误控制:数据链路层提供错误控制机制,在错误控制机制中它检测并重新传输损坏或丢失的帧。
  • 流量控制:数据速率必须恒定,否则数据可能会被损坏,因此流量控制会协调在接收到确认之前可以发送的数据量。
  • 访问控制:当多个设备共享单个通信信道时,数据链路层的MAC子层有助于确定哪个设备在给定时间控制了信道。

交换机和网桥是数据链路层设备

网络层

又称IP层。网络层适用于将数据从一个主机传输到位于不同网络的另一个主机。它还负责分组路由,即从可用路由数量中选择传输分组的最短路径。发送者和接收者的IP地址由网络层放置在标题中。
网络层由网络设备(如路由器)实现

传输层

该层的协议为应用进程提供端到端的通信服务。传输层(Transport Layer)把传输表头(TH)加至数据以形成数据包。传输表头包含了所使用的协议等发送信息。例如:传输控制协议(TCP)等。
传输层由操作系统操作。它是操作系统的一部分,通过进行系统调用与应用层进行通信。

会话层

会话层(Session Layer)负责在数据传输中设置和维护电脑网络中两台电脑之间的通信连接。

表示层

表示层也称为翻译层。来自应用层的数据在此处被提取并按照所需格式进行处理以通过网络进行传输。

应用层

应用层直接和应用程序接口并提供常见的网络应用服务。例如: HTTP,HTTPS,FTP,TELNET,SSH,SMTP,POP3等。

分类:

  • GET: 请求指定的页面信息,并返回实体主体。
  • HEAD: 只请求页面的首部。
  • POST: 请求服务器接受所指定的文档作为对所标识的URI的新的从属实体。
  • PUT: 从客户端向服务器传送的数据取代指定的文档的内容。
  • DELETE: 请求服务器删除指定的页面。
  • PATCH: 实体中包含一个表,表中说明与该URI所表示的原内容的区别。

http与https的区别

  • https第一次请求的时候服务端将证书公钥发送给客户端
  • 客户端生成一串随机数的密码用来进行对称加密,然后用收到的公钥加密后发送给服务端。
  • 客户端和服务端用对称加密进行信息传输
密与HASH算法如下:

非对称加密算法: RSA,DSA/DSS,用于在握手过程中加密生成的密码。
对称加密算法:AES,RC4,3DES,用于对真正传输的数据进行加密。
HASH算法: MD5,SHA1,SHA256,验证数据的完整性。

base64原理

转码过程例子:
3*8=4*6
内存1个字节占8位
转前: s 1 3
先转成ascii:对应 115 49 51
2进制: 01110011 00110001 00110011
6个一组(4组) 011100110011000100110011
然后才有后面的 011100 110011 000100 110011
然后计算机是8位8位的存数 6不够,自动就补两个高位0了
所有有了 高位补0
科学计算器输入 00011100 00110011 00000100 00110011
得到 28 51 4 51
查对下照表 c z E z

你可能感兴趣的:(网络请求相关http/https)