网络篇都有哪些知识点

2024-05-25 01:59:15   网络

 

一、OSI 七层模型

1应用层-为计算机提供服务

2表示层-数据处理(编解码、加解密、压缩解压缩)

3会话层-管理(建立、维护、重连)应用程序之间的会话

4传输层-为两台主机进程之间的通信提供通用的数据传输服务

5网络层-路由和寻址(决定数据在网络的游走路径)

6数据链路层-帧编码和误差纠正控制

7物理层-透明的传送比特流传输

二、TCP/IP四层模型

1应用层(应用层、表示层、会话层)

TCP有哪些协议 UDP有哪些协议
HTTP (超文本传输协议): 使用端口80 DNS (域名系统): 使用端口53
HTTPS (安全超文本传输协议): 使用端口443 DHCP (动态主机配置协议): 使用端口67和68,分配主机地址
FTP (文件传输协议): 使用端口20和21 SNMP (简单网络管理协议): 使用端口161
SSH (安全外壳协议): 使用端口22 TFTP (简单文件传输协议): 使用端口69
Telnet (远程登录协议): 使用端口23 NTP (网络时间协议): 使用端口123
SMTP (发邮件): 使用端口25 RTP (实时传输协议): 无固定端口,通常在1024–49151之间,用于实时音频、视频等媒体数据的传输。
IMAP (回邮件): 使用端口143 SSDP (简单服务发现协议): 使用端口1900,用于在局域网内发现UPnP设备。
POP3 (回邮件): 使用端110 QUIC (快速UDP互联网连接): 无固定端口,是一种基于UDP的可靠传输协议,被广泛应用在Google的网络服务中。

2传输层

特性 TCP UDP
概念 是一种面向连接的、可靠的、基于字节流的传输层通信协议,全双工通信 是一种无连接的、不可靠的、基于数据报的传输层协议
连接方式可靠性 面向连接的协议,需要经历三次握手四次挥手,保证数据的可靠性传输 无连接的协议,UDP不保证数据的可靠传输
数据传输方式 TCP是基于字节流的传输协议 UDP是基于数据报的协议
可靠性与重传机制 它使用了序列号和确认机制来确保数据的完整性和顺序性。如果数据包在传输过程中丢失或损坏,TCP会要求发送方重新发送该数据包,直到成功接收为止。 UDP不提供可靠性保证。数据包在传输过程中可能会丢失或乱序,而UDP协议本身并不会进行重传或修复
拥塞控制、流量控制 TCP具有拥塞控制和流量控制机制。拥塞控制通过调整发送速率来避免网络拥塞,而流量控制则通过滑动窗口机制来确保接收方能够及时处理接收到的数据 UDP没有内置的拥塞控制和流量控制机制。这需要应用层来实现,或者依赖于网络层的某些功能(如ICMP源抑制报文)。
应用场景 由于其可靠性和顺序性保证,TCP通常用于需要稳定、可靠传输的应用场景,如文件传输、网页浏览、电子邮件等 UDP的轻量级和无连接特性使其适用于实时性要求较高或对数据丢失有一定容忍度的应用场景,如VoIP、视频流、实时游戏等

三次握手

建立一个 TCP 连接需要“三次握手”,缺一不可:

一次握手:客户端发送带有 SYN(SEQ=x) 标志的数据包 -> 服务端,然后客户端进入 SYN_SEND 状态,等待服务器的确认;
二次握手:服务端发送带有 SYN+ACK(SEQ=y,ACK=x+1) 标志的数据包 –> 客户端,然后服务端进入 SYN_RECV 状态
三次握手:客户端发送带有 ACK(ACK=y+1) 标志的数据包 –> 服务端,然后客户端和服务器端都进入ESTABLISHED 状态,完成 TCP 三次握手。
当建立了 3 次握手之后,客户端和服务端就可以传输数据啦!

四次挥手

第一次挥手:客户端发送一个 FIN(SEQ=x) 标志的数据包->服务端,用来关闭客户端到服务器的数据传送。然后客户端进入 FIN-WAIT-1 状态。
第二次挥手:服务器收到这个 FIN(SEQ=X) 标志的数据包,它发送一个 ACK (ACK=x+1)标志的数据包->客户端 。然后服务端进入 CLOSE-WAIT 状态,客户端进入 FIN-WAIT-2 状态。
第三次挥手:服务端发送一个 FIN (SEQ=y)标志的数据包->客户端,请求关闭连接,然后服务端进入 LAST-ACK 状态。
第四次挥手:客户端发送 ACK (ACK=y+1)标志的数据包->服务端,然后客户端进入TIME-WAIT状态,服务端在收到 ACK (ACK=y+1)标志的数据包后进入 CLOSE 状态。此时如果客户端等待 2MSL 后依然没有收到回复,就证明服务端已正常关闭,随后客户端也可以关闭连接了。
只要四次挥手没有结束,客户端和服务端就可以继续传输数据!

3网络层

技术点
IP(国际协议)
ARP(地址解析协议)
ICMP(控制报文协议)
NAT(网络地址转换协议)
OSPF(开放式最短路径优先)
RIP(路由信息协议)
BGP(边界网关协议)

4网络接口层(数据链路层、物理层)

技术点
差错检测技术
多路访问协议
CSMA/CD协议
MAC协议
以太网技术

三、协议详解

TCP传输可靠性保障

  1. 基于数据块传输:应用数据被分割成 TCP 认为最适合发送的数据块,再传输给网络层,数据块被称为报文段或段。

  2. 对失序数据包重新排序以及去重:TCP 为了保证不发生丢包,就给每个包一个序列号,有了序列号能够将接收到的数据根据序列号排序,并且去掉重复序列号的数据就可以实现数据包去重。

  3. 校验和 : TCP 将保持它首部和数据的检验和。这是一个端到端的检验和,目的是检测数据在传输过程中的任何变化。如果收到段的检验和有差错,TCP 将丢弃这个报文段和不确认收到此报文段。

  4. 超时重传 : 当发送方发送数据之后,它启动一个定时器,等待目的端确认收到这个报文段。接收端实体对已成功收到的包发回一个相应的确认信息(ACK)。如果发送端实体在合理的往返时延(RTT)内未收到确认消息,那么对应的数据包就被假设为已丢失open in new windowopen in new window并进行重传。

  5. 流量控制 : TCP 连接的每一方都有固定大小的缓冲空间,TCP 的接收端只允许发送端发送接收端缓冲区能接纳的数据。当接收方来不及处理发送方的数据,能提示发送方降低发送的速率,防止包丢失。TCP 使用的流量控制协议是可变大小的滑动窗口协议(TCP 利用滑动窗口实现流量控制)。

    # TCP 如何实现流量控制?
    TCP 利用滑动窗口实现流量控制。流量控制是为了控制发送方发送速率,保证接收方来得及接收。 接收方发送的确认报文中的窗口字段可以用来控制发送方窗口大小,从而影响发送方的发送速率。将窗口字段设置为 0,则发送方不能发送数据。
  6. 拥塞控制 : 当网络拥塞时,减少数据的发送。

    # TCP 的拥塞控制是怎么实现的?
    在某段时间,若对网络中某一资源的需求超过了该资源所能提供的可用部分,网络的性能就要变坏。这种情况就叫拥塞。拥塞控制就是为了防止过多的数据注入到网络中,这样就可以使网络中的路由器或链路不致过载。拥塞控制所要做的都有一个前提,就是网络能够承受现有的网络负荷。拥塞控制是一个全局性的过程,涉及到所有的主机,所有的路由器,以及与降低网络传输性能有关的所有因素。相反,流量控制往往是点对点通信量的控制,是个端到端的问题。流量控制所要做到的就是抑制发送端发送数据的速率,以便使接收端来得及接收。
    
    TCP的拥塞控制是通过维持一个动态变化的拥塞窗口(cwnd)来实现的,发送方将其发送窗口设置为拥塞窗口和接收方接收窗口中的较小值。TCP的拥塞控制包含四种算法:慢开始、拥塞避免、快重传和快恢复。
    慢开始:在开始发送数据时,先通过逐渐增大发送窗口大小来探测网络状况,以避免立即注入大量数据引发网络阻塞。cwnd的初始值为1,每经过一个传播轮次,cwnd加倍。
    拥塞避免:让拥塞窗口cwnd缓慢增大,每经过一个往返时间RTT,就把发送方的cwnd加1。
    快重传与快恢复:这是一种拥塞控制算法,用于快速恢复丢失的数据包。当接收机接收到一个不按顺序的数据段时,它会立即给发送机发送一个重复确认。如果发送机接收到三个重复确认,它会假定确认件指出的数据段丢失了,并立即重传这些丢失的数据段。
    此外,网络层的路由器也可以采用适当的分组丢弃策略(如主动队列管理AQM)来减少网络拥塞的发生。

为什么网络要分层?

1各层之间相互独立:各层之间相互独立,各层之间不需要关心其他层是如何实现的,只需要知道自己如何调用下层提供好的功能就可以了(可以简单理解为接口调用)。这个和我们对开发时系统进行分层是一个道理。

2提高了整体灵活性:每一层都可以使用最适合的技术来实现,你只需要保证你提供的功能以及暴露的接口的规则没有改变就行了。这个和我们平时开发系统的时候要求的高内聚、低耦合的原则也是可以对应上的。

3大问题化小:分层可以将复杂的网络问题分解为许多比较小的、界线比较清晰简单的小问题来处理和解决。这样使得复杂的计算机网络系统变得易于设计,实现和标准化。 **这个和我们平时开发的时候,一般会将系统功能分解,然后将复杂的问题分解为容易理解的更小的问题是相对应的,这些较小的问题具有更好的边界(目标和接口)定义。

HTTP、 HTTP1.1、HTTP2、 HTTPS 区别

HTTP 协议,全称超文本传输协议

Http1 与HTTP2区别 (http1 文本格式,http2二进制格式)

http1.0 :短链接,每次请求都要重新建立tcp连接,浪费资源成本。可以通过头信息;Connection: keep-alive。不支持指定HOST

http1.1 :长链接,默认tcp不会关闭,可以被多个请求复用,不用声明Connection: keep-alive,但是所有数据都是按次序进行的,串行。支持指定HOST

http2 :长链接,采用二进制格式而非文本格式,完全多复用,并非有序阻塞的,可以并行。 报头压缩,降低开销。 服务器推送.不支持指定HOST

https与http的区别:https在http之上添加了一个安全协议层(ssl).首先先去申请证书,在建立连接时,服务端收到请求,返回证书,客户端验证证书是否合法。然后握手完成, 经过一次非对称加密,先验证证书的准确性,在根据对称加密把数据加密,服务端解密数据,开始通信。

DNS 域名系统详解

DNS(Domain Name System)域名管理系统,是当用户使用浏览器访问网址之后,使用的第一个重要协议。DNS 要解决的是域名和 IP 地址的映射问题

ARP协议详解

ARP 协议(地址解析协议),可以说是在协议栈中属于一个偏底层的、非常重要的、又非常简单的通信协议。

它串联起了网络层和链路层。国外的大部分教程通常将 ARP 协议放在网络层。

它解决的是网络层地址和链路层地址之间的转换问题。因为一个 IP 数据报在物理上传输的过程中,总是需要知道下一跳(物理上的下一个目的地)该去往何处,但 IP 地址属于逻辑地址,而 MAC 地址才是物理地址,ARP 协议解决了 IP 地址转 MAC 地址的一些问题。

ARP 工作原理? 只希望大家记住几个关键词:ARP 表、广播问询、单播响应

不同局域网通讯时,需要依赖路由器路,由器的多个接口都各自维护一个 ARP 表,而非一个路由器只维护一个 ARP 表。

每个网络设备都自己维护了一个 ARP 表,ARP 表记录了某些其他网络设备的 IP 地址-MAC 地址映射关系,该映射关系以 <IP, MAC, TTL> 三元组的形式存储

1MAC地址:

file

2路由和寻址(决定数据在网络的游走路径):

file

3数据链路层-帧编码和误差纠正控制:

file

4物理层透明的传送比特流传输:

image-20240426213957764

NAT协议详解

NAT(Network Address Translation)-网络地址转换

应用于内部网到外部网的地址转换过程中。具体地说,在一个小的子网(局域网,Local Area Network,LAN)内,各主机使用的是同一个 LAN 下的 IP 地址,但在该 LAN 以外,在广域网(Wide Area Network,WAN)中,需要一个统一的 IP 地址来标识该 LAN 在整个 Internet 上的位置。

  • NAT 协议通过对 WAN 屏蔽 LAN,有效地缓解了 IPv4 地址分配压力。

  • LAN 主机 IP 地址的变更,无需通告 WAN。

  • WAN 的 ISP 变更接口地址时,无需通告 LAN 内主机。

  • LAN 主机对 WAN 不可见,不可直接寻址,可以保证一定程度的安全性。

四、DDOS攻击

IP欺骗技术是什么?

IP 欺骗技术就是伪造某台主机的 IP 地址的技术。通过 IP 地址的伪装使得某台主机能够伪装另外的一台主机,而这台主机往往具有某种特权或者被另外的主机所信任。

假设现在有一个合法用户 (1.1.1.1) 已经同服务器建立正常的连接,攻击者构造攻击的 TCP 数据,伪装自己的 IP 为 1.1.1.1,并向服务器发送一个带有 RST 位的 TCP 数据段。服务器接收到这样的数据后,认为从 1.1.1.1 发送的连接有错误,就会清空缓冲区中建立好的连接。

这时,如果合法用户 1.1.1.1 再发送合法数据,服务器就已经没有这样的连接了,该用户就必须从新开始建立连接。攻击时,伪造大量的 IP 地址,向目标发送 RST 数据,使服务器不对合法用户服务。

如何缓解 IP 欺骗?

虽然无法预防 IP 欺骗,但可以采取措施来阻止伪造数据包渗透网络。入口过滤 是防范欺骗的一种极为常见的防御措施,如 BCP38(通用最佳实践文档)所示。入口过滤是一种数据包过滤形式,通常在网络边缘open in new window设备上实施,用于检查传入的 IP 数据包并确定其源标头。如果这些数据包的源标头与其来源不匹配或者看上去很可疑,则拒绝这些数据包。一些网络还实施出口过滤,检查退出网络的 IP 数据包,确保这些数据包具有合法源标头,以防止网络内部用户使用 IP 欺骗技术发起出站恶意攻击。

SYN Flood(洪水)是什么?

SYN Flood 是互联网上最原始、最经典的 DDoS(Distributed Denial of Service,分布式拒绝服务)攻击之一,旨在耗尽可用服务器资源,致使服务器无法传输合法流量

SYN Flood 利用了 TCP 协议的三次握手机制,攻击者通常利用工具或者控制僵尸主机向服务器发送海量的变源 IP 地址或变源端口的 TCP SYN 报文,服务器响应了这些报文后就会生成大量的半连接,当系统资源被耗尽后,服务器将无法提供正常的服务。 增加服务器性能,提供更多的连接能力对于 SYN Flood 的海量报文来说杯水车薪,防御 SYN Flood 的关键在于判断哪些连接请求来自于真实源,屏蔽非真实源的请求以保障正常的业务请求能得到服务。

  • 直接攻击: 不伪造 IP 地址的 SYN 洪水攻击称为直接攻击。
  • 欺骗攻击: 恶意用户还可以伪造其发送的各个 SYN 数据包的 IP 地址,以便阻止缓解措施并加大身份暴露难度。
  • 分布式攻击(DDoS): 如果使用僵尸网络发起攻击,则追溯攻击源头的可能性很低。

如何缓解 SYN Flood?

  • 扩展积压工作队列:一种方法是增加操作系统允许的最大半开连接数目。
  • 回收最先创建的 TCP 半开连接:另一种缓解策略是在填充积压工作后覆盖最先创建的半开连接。

UDP Flood(洪水)是什么?

UDP Flood 也是一种拒绝服务攻击,将大量的用户数据报协议(UDP)数据包发送到目标服务器,目的是压倒该设备的处理和响应能力。防火墙保护目标服务器也可能因 UDP 泛滥而耗尽,从而导致对合法流量的拒绝服务。

UDP Flood 主要通过利用服务器响应发送到其中一个端口的 UDP 数据包所采取的步骤。在正常情况下,当服务器在特定端口接收到 UDP 数据包时,会经过两个步骤:

  • 服务器首先检查是否正在运行正在侦听指定端口的请求的程序。
  • 如果没有程序在该端口接收数据包,则服务器使用 ICMP(ping)数据包进行响应,以通知发送方目的地不可达。

如何缓解 UDP Flooding?

大多数操作系统部分限制了 ICMP 报文的响应速率,以中断需要 ICMP 响应的 DDoS 攻击。这种缓解的一个缺点是在攻击过程中,合法的数据包也可能被过滤。如果 UDP Flood 的容量足够高以使目标服务器的防火墙的状态表饱和,则在服务器级别发生的任何缓解都将不足以应对目标设备上游的瓶颈。

HTTP Flood(洪水)是什么?

HTTP Flood 是一种大规模的 DDoS(Distributed Denial of Service,分布式拒绝服务)攻击,旨在利用 HTTP 请求使目标服务器不堪重负。目标因请求而达到饱和,且无法响应正常流量后,将出现拒绝服务,拒绝来自实际用户的其他请求。

HTTP 洪水攻击是“第 7 层”DDoS 攻击的一种。第 7 层是 OSI 模型的应用程序层,指的是 HTTP 等互联网协议。HTTP 是基于浏览器的互联网请求的基础,通常用于加载网页或通过互联网发送表单内容。缓解应用程序层攻击特别复杂,因为恶意流量和正常流量很难区分。

HTTP 洪水攻击有两种:

  • HTTP GET 攻击:在这种攻击形式下,多台计算机或其他设备相互协调,向目标服务器发送对图像、文件或其他资产的多个请求。当目标被传入的请求和响应所淹没时,来自正常流量源的其他请求将被拒绝服务。
  • HTTP POST 攻击:一般而言,在网站上提交表单时,服务器必须处理传入的请求并将数据推送到持久层(通常是数据库)。与发送 POST 请求所需的处理能力和带宽相比,处理表单数据和运行必要数据库命令的过程相对密集。这种攻击利用相对资源消耗的差异,直接向目标服务器发送许多 POST 请求,直到目标服务器的容量饱和并拒绝服务为止。

如何防护 HTTP Flood?

如前所述,缓解第 7 层攻击非常复杂,而且通常要从多方面进行。一种方法是对发出请求的设备实施质询,以测试它是否是机器人,这与在线创建帐户时常用的 CAPTCHA 测试非常相似。通过提出 JavaScript 计算挑战之类的要求,可以缓解许多攻击。

其他阻止 HTTP 洪水攻击的途径包括使用 Web 应用程序防火墙 (WAF)、管理 IP 信誉数据库以跟踪和有选择地阻止恶意流量,以及由工程师进行动态分析。Cloudflare 具有超过 2000 万个互联网设备的规模优势,能够分析来自各种来源的流量并通过快速更新的 WAF 规则和其他防护策略来缓解潜在的攻击,从而消除应用程序层 DDoS 流量。

DNS Flood(洪水)是什么?

域名系统(DNS)服务器是互联网的“电话簿“;互联网设备通过这些服务器来查找特定 Web 服务器以便访问互联网内容。DNS Flood 攻击是一种分布式拒绝服务(DDoS)攻击,攻击者用大量流量淹没某个域的 DNS 服务器,以尝试中断该域的 DNS 解析。如果用户无法找到电话簿,就无法查找到用于调用特定资源的地址。通过中断 DNS 解析,DNS Flood 攻击将破坏网站、API 或 Web 应用程序响应合法流量的能力。很难将 DNS Flood 攻击与正常的大流量区分开来,因为这些大规模流量往往来自多个唯一地址,查询该域的真实记录,模仿合法流量。

域名系统的功能是将易于记忆的名称(例如 example.comopen in new window)转换成难以记住的网站服务器地址(例如 192.168.0.1),因此成功攻击 DNS 基础设施将导致大多数人无法使用互联网。DNS Flood 攻击是一种相对较新的基于 DNS 的攻击,这种攻击是在高带宽物联网(IoT)open in new window僵尸网络open in new window(如 Miraiopen in new window)兴起后激增的。DNS Flood 攻击使用 IP 摄像头、DVR 盒和其他 IoT 设备的高带宽连接直接淹没主要提供商的 DNS 服务器。来自 IoT 设备的大量请求淹没 DNS 提供商的服务,阻止合法用户访问提供商的 DNS 服务器。

如何防护 DNS Flood?

DNS Flood 对传统上基于放大的攻击方法做出了改变。借助轻易获得的高带宽僵尸网络,攻击者现能针对大型组织发动攻击。除非被破坏的 IoT 设备得以更新或替换,否则抵御这些攻击的唯一方法是使用一个超大型、高度分布式的 DNS 系统,以便实时监测、吸收和阻止攻击流量。

ICMP Flood(洪水)是什么?

ICMP FLOOD是一种DDOS攻击,该攻击在短时间内向目的主机发送大量ping包,消耗主机资源,主机资源耗尽后就会瘫痪或者无法提供其他服务。

ICMP是(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机路由器之间传递控制消息。控制消息是指网络通不通主机是否可达路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用

当出现icmp flood攻击的时候,只要禁止ping就行了,icmp flood只对那些没有禁ping的电脑有效,不管黑客有多少肉机,只要禁PING,他就无可奈何了

CC Flood(洪水)是什么?

CC攻击(Challenge Collapsar)是DDoS攻击的一种类型,也是一种常见的网站攻击方法。其原理是攻击者借助代理服务器或者肉鸡生成指向受害主机的合法请求,实现DDoS和伪装,通过发送大量貌似合法的请求来占用目标服务器的资源,导致正常用户无法获得服务响应,造成服务器资源耗尽,一直到宕机崩溃。

CC攻击的特点是合法性、分布式、针对性和隐蔽性。由于CC攻击使用合法的HTTP请求,难以被常规安全策略识别;攻击通常由多个源IP地址发起,使得追踪和防御更加困难;攻击者往往针对特定的网站或在线服务;同时攻击可以模仿正常用户的行为模式,避免被流量监测工具发现。

防止CC攻击的方法包括引入人机验证机制、限制请求速率、IP黑名单、使用CDN和缓存、负载均衡、部署Web应用防火墙等。同时,通过分析网站日志,可以很容易分辨出CC攻击的IP,从而在服务器端通过程序自动屏蔽这些IP以达到防范CC攻击的目的。

DDoS 攻击究竟是什么?

DDos 全名 Distributed Denial of Service,翻译成中文就是分布式拒绝服务。指的是处于不同位置的多个攻击者同时向一个或数个目标发动攻击,是一种分布的、协同的大规模攻击方式。单一的 DoS 攻击一般是采用一对一方式的,它利用网络协议和操作系统的一些缺陷,采用欺骗和伪装的策略来进行网络攻击,使网站服务器充斥大量要求回复的信息,消耗网络带宽或系统资源,导致网络或系统不胜负荷以至于瘫痪而停止提供正常的网络服务。

攻击方式很多,比如 ICMP FloodUDP FloodNTP FloodSYN FloodCC 攻击DNS Query Flood等等。

如何应对 DDoS 攻击?

  • 高防服务器

还是拿开的重庆火锅店举例,高防服务器就是我给重庆火锅店增加了两名保安,这两名保安可以让保护店铺不受流氓骚扰,并且还会定期在店铺周围巡逻防止流氓骚扰。

高防服务器主要是指能独立硬防御 50Gbps 以上的服务器,能够帮助网站拒绝服务攻击,定期扫描网络主节点等,这东西是不错,就是贵~

  • 黑名单

面对火锅店里面的流氓,我一怒之下将他们拍照入档,并禁止他们踏入店铺,但是有的时候遇到长得像的人也会禁止他进入店铺。这个就是设置黑名单,此方法秉承的就是“错杀一千,也不放一百”的原则,会封锁正常流量,影响到正常业务。

  • DDoS 清洗

DDos 清洗,就是我发现客人进店几分钟以后,但是一直不点餐,我就把他踢出店里。

DDoS 清洗会对用户请求数据进行实时监控,及时发现 DOS 攻击等异常流量,在不影响正常业务开展的情况下清洗掉这些异常流量。

  • CDN 加速

CDN 加速,我们可以这么理解:为了减少流氓骚扰,我干脆将火锅店开到了线上,承接外卖服务,这样流氓找不到店在哪里,也耍不来流氓了。

在现实中,CDN 服务将网站访问流量分配到了各个节点中,这样一方面隐藏网站的真实 IP,另一方面即使遭遇 DDoS 攻击,也可以将流量分散到各个节点中,防止源站崩溃。

五、附录一

HTTP 常见状态码

状态码 类别 原因短语
1xx 信息性状态码 接收的请求正在处理
2xx 成功状态码 请求正常处理完毕
3xx 重定向状态码 需要进行附加操作已完成请求
4xx 客户端错误状态码 需要进行附加操作已完成请求
5xx 服务器错误状态码 服务器处理请求出错
状态码 原因短语
100 服务器已收到请求的初始部分,并且客户端应继续发送其余部分,或者如果请求已完成,那么忽略这个响应。
101 服务器已理解客户端的请求,并将通过 Upgrade 消息头通知客户端即将切换协议。
200 请求成功,服务器返回依赖于请求方法的不同结果。
201 请求已经被实现,并且有一个新的资源在原始 URL 创建,这通常与 PUT 或 POST 请求一起使用。
202 服务器已接受请求,但尚未处理。实际上,可能会进行处理,也可能不会,但假设会进行处理。
204 服务器成功处理了请求,但没有返回任何内容。如果客户端是用户代理,则无需刷新文档视图。
205 服务器成功处理了请求,但没有返回任何内容,除此之外,要求请求者重置文档视图,可以通过此响应实现。
206 服务器已经成功处理了部分 GET 请求。
300 请求的资源有多个选择,服务器不能决定返回哪一个。
301 请求的资源已被永久移动到新位置,并将来所有的请求都应使用新的 URI。
302 请求的资源现在临时从不同的 URI 响应请求。由于这种重定向可能会在未来更改,客户端应继续使用原始 URI。
303 对应当前请求的响应可以在另一个 URI 上找到,客户端应该使用 GET 方法获取那个资源。
304 自从上次请求后,请求的网页没有修改过。服务器返回此状态码时,不会返回任何网页内容。
307 和 302 类似,但它要求客户端应使用新的 URI 重新提交请求,且必须使用相同的方法(GET 或 POST)。
308 类似于 301,但它要求客户端在以后的请求中使用新的 URI,并且保证将使用相同的方法进行请求(GET 或 POST)。
400 服务器无法理解请求,因为语法无效。
401 请求需要用户验证。对于需要登录的网页,服务器可能返回此响应。
403 服务器理解请求,但拒绝执行它。
404 服务器找不到请求的资源。这通常是所有人都可以识别的 404 代码。
405 请求中的方法被禁止。
406 服务器无法根据客户端发送的 Accept 头提供所请求的资源的适当表示形式。
408 服务器等待请求时超时。
409 请求无法完成,因为存在冲突。
410 请求的资源已被永久删除。类似于 404,但是在资源以前确实存在的情况下,现在已经被永久移除了。
429 用户在给定的时间内发送了太多的请求("限制请求速率")。
500 服务器遇到了一个未知的内部错误。
501 服务器不支持请求的功能。例如,客户端发出了可能服务器不支持的 PUT 请求
502 服务器作为网关或代理,从上游服务器收到无效响应。
503 服务器目前无法使用(由于过载或停机维护)。通常,这只是暂时状态。
504 服务器作为网关或代理,但是没有及时从上游服务器收到请求。
505 服务器不支持请求中所用的 HTTP 协议版本。

admin

User Image

标签

友情链接