计算机网络--网络层

一、网络层的服务和功能

网络层主要为应用层提供端对端的数据传输服务

  1. 网络层接受运输层的报文段,添加自己的首部,形成网络层分组。分组是网络层的传输单元。
  2. 网络层分组在各个站点的网络层之间传输,最终到达接收方的网络层。
  3. 接收方网络层将运输层报文段上传给本地运输层。

二、IP(Internet Protocol)协议

2.1、定义

        IP协议是TCP/IP体系网络层的主要协议,为上层的TCP、UDP协议提供服务,在TCP/IP体系的网络层中,除了IP协议,还有ICMP、IGMP协议。它负责将数据包从源主机传输到目标主机,是整个互联网通信的基础。

        IP协议是TCP/IP协议体系的核心协议,通过IP协议可以连接各种不同的网络,使整个Internet统一为一个巨大的IP网络。

2.2、特点

  1. 无连接性:IP协议是一种无连接的协议,即在发送数据之前不需要建立连接。每个数据包都是独立发送的,没有建立持久的连接。
  2. 不可靠性:IP协议不提供数据包的可靠传输。当数据包在传输过程中丢失、损坏或重复时,IP协议没有机制来修复或重新传输这些数据包。
  3. 分组交换:IP协议使用分组交换的方式传输数据。数据被分成较小的数据包,每个数据包都带有源地址和目标地址。
  4. 网络独立性:IP协议可以在不同类型的网络上运行,包括以太网、无线网络等。它允许不同类型的设备可以互相通信。
  5. 简单性:IP协议被设计为简单的协议,只提供了数据包的路由功能,不提供数据的校验、确认等功能。
  6. 封装性:IP协议使用分层的封装方式来传输数据。它将应用层的数据进行封装,然后添加IP头部信息,形成一个IP数据包。
  7. 弹性和可扩展性:IP协议是一种弹性和可扩展的协议,可以适应不同的网络环境和需求。

2.3、IP地址

2.3.1、概念

        IP地址是一个32比特(4字节)的二进制数字,采用点分十进制。如下图:

2.3.2、特点

  1. IP地址是一个逻辑地址,与具体的网络技术和硬件无关,可以人为设定或通过DHCP服务器动态获取。
  2. IP地址需要分配给网络接口,与网络接口相关联,一个接口一个IP地址。
  3. 每个IP地址分为两部分:网络号和主机号。网络号代表主机或路由器所处的物理网络,主机号代表所处物理网络中的编号。
  4. 同一个物理网络中的IP地址,它们的网络号相同,主机号不同。

2.3.2、分类

2.3.2.1、五类IP地址

  1. A类网络:网络位占8个比特,第一位固定为0,所以最小的网络号为0(0000 0000),最大的网络号为127(0111 1111)。
  2. B类网络:网络位占16个比特,前两位固定为10。
  3. C类网络:网络位占24个比特,前三位固定为110。
  4. D类网络:以224~239之间的数字开头,作为组播地址预留。因特网上A、B、C类网络都是单播地址,D类网络为组播地址,常用于电话会议或视频会议等。
  5. E类网络:以240~254之间的数字开头,作为保留地址。

注:D、E类网络都不会用来分配给主机或路由器。

2.3.2.2、特殊IP地址
全0和全1地址

全0和全1地址有特殊含义,不分配给主机和路由器。如下图:

环回地址

网络号为127的地址作为环回地址,保留作为本地软件测试,不分配。最常用的环回地址为127.0.0.1,代表本机,即无论网络接口分配的IP地址是多少,127.0.0.1总是代表主机或路由器本身。

私有IP地址

私有IP地址(Private IP Addresses)是专门为内部网络使用的IP地址范围。这些地址在公共互联网上不可路由,意味着它们不会与全球范围内的其他网络上的IP地址冲突。私有IP地址主要用于企业、组织或家庭网络中的设备,如计算机、打印机、路由器等。

以下是三个主要的私有IP地址范围:

  1. 10.0.0.0/8:此范围包括从10.0.0.0到10.255.255.255的所有IP地址。
  2. 172.16.0.0/12:此范围包括从172.16.0.0到172.31.255.255的所有IP地址。不过,有时这个范围会被细分为更小的子网(例如,172.16.0.0/16, 172.17.0.0/16等)。
  3. 192.168.0.0/16:此范围包括从192.168.0.0到192.168.255.255的所有IP地址。这个范围是家庭和小型办公室网络中最常见的。

当内部网络中的设备需要访问公共互联网时,通常会使用网络地址转换(NAT)技术。NAT允许私有IP地址与公共IP地址之间进行映射,这样内部网络中的设备就可以通过公共IP地址与外部网络进行通信,同时保持其私有IP地址的隐私性。

2.4、IP子网

2.4.1、定义

  • 子网(Subnet)或子网络是指在一个更大的网络中划分出来的较小的、相对独立的网络单元。
  • 子网允许将一个给定的网络分为若干个更小的部分,这些更小的部分被称为子网。

2.4.2、作用

2.4.2.1、充分利用IP地址
  1. IP地址由网络号和主机号组成,但并非所有的网络号和主机号都会被使用,尤其在大型网络中。
  2. 子网划分可以把一个大的网络地址分配给更多较小的网络,更有效地使用IP地址空间。
2.4.2.2、限定广播的传播
  1. 子网划分将原有的同处于同一个网段上的主机分成了不同的网段或子网,同时也将原来的一个广播域划分成了若干个较小的广播域。
  2. 广播数据包只能在它特定的广播域中传播,减少广播风暴对网络的影响。
2.4.2.3、更安全的管理网络
  1. 网络中处于同一个子网内的主机才能直接互通,不同子网之间不能直接通信(但可通过路由器或网关进行)。
  2. 这种划分方式增加了网络的安全性,尤其对于人事、财务等敏感性部门。

2.4.3、子网掩码

  • 不能单独存在,必须结合IP地址一起使用。
  • 作用:区分IP地址中的 网络地址 和 主机地址 。
  • 32位的子网掩码由前面连续的若干个1和后面连续的0组成,1的个数就是对应IP地址网络前缀的长度。

 IP地址和子网掩码 按位与 操作,得到地址对应的网络地址。  1 & ? = ? ,  0 & ? = 0

2.4.4、子网划分

2.4.4.1、固定长度子网划分

每个子网包含相同数量的主机地址,适用于小型网络或对IP地址规划要求不太复杂的场景。

特点:子网大小固定,简化管理。

示例:

有一个C类IP地址(如192.168.1.0/24),并且你希望将其划分为4个子网,每个子网包含62台主机(减去网络地址和广播地址),可以使用/26的子网掩码(255.255.255.192)。使用/26的子网掩码,你可以将192.168.1.0/24网络划分为以下四个子网:

  • 子网1:192.168.1.0/26(地址范围:192.168.1.1-192.168.1.62)
  • 子网2:192.168.1.64/26(地址范围:192.168.1.65-192.168.1.126)
  • 子网3:192.168.1.128/26(地址范围:192.168.1.129-192.168.1.190)
  • 子网4:192.168.1.192/26(地址范围:192.168.1.193-192.168.1.254)
2.4.4.2、可变长度子网划分(VLSM)

允许每个子网包含不同数量的主机地址,更适用于大型网络。

特点:子网大小不固定,更高效的地址利用。

示例:

假设一个组织拥有一个C类IP地址段192.168.1.0/24,并希望将其划分为以下子网:

  • 子网1:需要50台主机
  • 子网2:需要100台主机
  • 子网3:需要20台主机

可以使用VLSM进行如下划分:

  • 子网1:使用/25的子网掩码(255.255.255.128),子网地址为192.168.1.0/25,可分配主机地址为192.168.1.1-192.168.1.126。
  • 子网2:同样使用/25的子网掩码,子网地址为192.168.1.128/25,可分配主机地址为192.168.1.129-192.168.1.254。
  • 子网3:由于只需要20台主机,可以使用更长的子网掩码来节省IP地址。这里可以使用/27的子网掩码(255.255.255.224),子网地址为192.168.1.192/27,可分配主机地址为192.168.1.193-192.168.1.222。

2.5、无分类编址CIDR

2.5.1、定义

无分类编址(CIDR):这是一种IP地址分配方案,它消除了传统的IP地址分类(A类、B类、C类)的概念,并通过使用可变长度的子网掩码(VLSM)来定义网络地址和主机地址的边界。

2.5.2、特点:

  1. 灵活性:CIDR允许根据实际需求分配不同大小的IP地址块,从而提高了IP地址的利用率。
  2. 可扩展性:由于CIDR不再受限于固定的IP地址分类,因此它可以更好地适应网络规模的扩展。
  3. 简化路由:CIDR使用路由聚合技术,将多个小的IP地址块合并为一个大的IP地址块,从而减少了路由器中的路由表项,提高了路由效率。

2.5.3、工作原理

  • 子网掩码:CIDR使用可变长度的子网掩码(VLSM)来定义网络地址和主机地址的边界。子网掩码的长度决定了网络地址部分和主机地址部分的位数。
  • 前缀表示法:CIDR使用前缀表示法来表示IP地址和子网掩码。例如,/24表示子网掩码为255.255.255.0,/16表示子网掩码为255.255.0.0。
  • 地址块计算:通过指定前缀长度,可以计算出子网内的可用IP地址数量。例如,/24表示的子网有256个IP地址(包括网络地址和广播地址),其中254个可用于主机。

2.5.4、应用

  • 网络设计:CIDR在网络设计中被广泛应用,用于规划和分配IP地址空间。通过CIDR,可以更容易地实现网络的层次化设计和路由聚合。
  • IP地址分配:服务提供商(ISP)使用CIDR来分配IP地址给其客户。由于CIDR的灵活性,ISP可以根据客户的需求分配适当大小的IP地址块。

2.5.5、示例

假设一个ISP拥有一个C类IP地址段192.168.1.0/24,并希望将其划分为两个子网,每个子网包含128个主机地址。使用CIDR,ISP可以将该地址段划分为两个/25的子网:

  • 子网1:192.168.1.0/25(地址范围:192.168.1.1-192.168.1.126)
  • 子网2:192.168.1.128/25(地址范围:192.168.1.129-192.168.1.254)

2.6、IP数据报

2.6.1、组成

  • IP数据报由首部和数据两部分组成。
  • 首部的前一部分是固定长度,共20字节,是所有IP数据报必须具有的。
  • 在首部的固定部分的后面是一些可选字段,其长度是可变的。

2.6.2、首部字段

  • 版本号(Version):占4比特,表示IP协议的版本。接收方会首先检查这个字段,如果不支持其中声明的版本,就会拒绝该数据报。广泛使用的版本号为4(即IPv4)该字段值为0100。
  • 首部长度(Header Length):占4比特,表示IP数据报首部的长度,最大十进制数值是15,单位为32位字长(即4字节)。因此,当首部长度为15时,首部长度就达到60字节。
  • 区分服务(Type of Service, TOS):占8比特,用于获取更好的服务,但在实际中较少使用,多数为全0。
  • 总长度(Total Length):指首部和数据之和的长度,单位为字节。总长度字段为16比特,因此数据报的最大长度为2^16-1=65535字节。但实际上,很少有超过1500字节的IP数据报。
  • 标识(Identification):占16比特,用于标识一个数据报。当数据报由于长度超过网络的MTU而必须分片时,这个标识字段的值就被复制到所有的数据报的标识字段中。
  • 标志(Flags):占3比特,包含以下标志位:最低位是MF(More Fragments):用于指示是否还有后续的分片。中间位是DF(Don't Fragment):用于指示路由器是否可以对数据报进行分片。最高位保留,必须为0。
  • 片偏移(Fragment Offset):占13比特,当数据报被分片时,此字段表示该片在原始数据报中的相对位置(以8字节为单位)。
  • 生存时间(Time to Live, TTL):占8比特,用于限制数据报在因特网上的生存时间,防止数据报在网络中无限循环。每经过一个路由器,TTL值减1,当TTL值为0时,数据报将被丢弃。
  • 协议(Protocol):占8比特,用于指示数据报所携带的数据所使用的协议,如TCP、UDP、ICMP等。
  • 首部校验和(Header Checksum):占16比特,用于校验IP数据报首部的完整性。
  • 源地址(Source Address):占32比特(4字节),表示发送数据报的设备的IP地址。
  • 目的地址(Destination Address):占32比特(4字节),表示接收数据报的设备的IP地址。
  • 选项(Options):可变长度,用于携带额外的控制信息。在标准IPv4中,选项字段很少使用,但在某些特殊情况下(如源路由)可能会被用到。
  • 数据(Data):包含IP数据报的有效载荷,即上层协议(如TCP、UDP)的数据。

2.6.3、特点

  • 无连接:IP协议不维护网络单元(即路由器)中数据报相关的任何链接状态信息。
  • 不可靠:IP协议不保证数据能准确地到达接收端,只是尽自己最大努力传送。
  • 无状态:通信双方不同步传输数据的状态信息,发送、传输、接收都是相互独立的、没有上下文关系的。

2.6.4、作用

IP数据报可以携带各种类型的信息,如文本、音频和视频等,实现互联网上的连接功能。

它对数据包传输进行监测和确认,有助于保证数据传输的完整性和可靠性。

IP数据报还可以用于管理和监测网络性能,以及网络安全方面的追踪和防御。

2.6.5、IPv4与IPv6的区别

IPv4数据报头部大小为20字节(固定部分),除非存在选项(少见)。

IPv6数据报头部长度固定为40字节,不存在选项,但可以有扩展头部。

2.6.6、应用

所有TCP、UDP、ICMP和IGMP数据都通过IP数据报传输。

IP数据报提供了一种尽力而为、无连接的数据报交付服务。

三、路由协议

3.1、定义

        路由协议(Routing Protocol)是一种在路由器之间共享路由信息,以支持可路由协议的机制。它通过创建路由表来描述网络拓扑结构,并与路由器协同工作,执行路由选择和数据包转发功能。

3.2、作用

路由协议的主要作用包括:

  1. 寻找最佳路径:路由协议通过建立和更新路由表,寻找到达目标节点的最佳路径。它考虑了各种因素,如距离、带宽、拥塞状况等,以确保数据包能够快速、可靠地传输。
  2. 转发数据包:根据路由表信息,路由协议将数据包从源节点转发到目标节点。它负责选择适当的路径,并在网络中的各个节点上进行转发操作,以确保数据包按照正确的路径到达目标。

3.3、分类

路由协议可以根据不同的标准进行分类,包括:

  1. 根据作用范围:
    1. 内部网关协议(IGP):在一个自治系统(AS)内部运行,常见的IGP协议包括RIP、OSPF和IS-IS。
    2. 外部网关协议(EGP):运行于不同自治系统之间,BGP是目前最常用的EGP。
  2. 根据使用算法:
    • 距离矢量(Distance-Vector)协议:包括RIP和BGP(BGP也被称为路径矢量协议)。
    • 链路状态(Link-State)协议:包括OSPF和IS-IS。
  3. 根据目的地址类型:
    • 单播路由协议:包括RIP、OSPF、BGP和IS-IS等。
    • 组播路由协议:包括PIM-SM、PIM-DM等。
  4. 根据IP协议版本:
    • IPv4路由协议:包括RIP、OSPF、BGP和IS-IS等。
    • IPv6路由协议:包括RIPng、OSPFv3、IPv6BGP和IPv6IS-IS等。

3.4、路由表

        路由表是计算机网络中的一个关键组件,特别是在互联网协议(IP)网络中。它用于决定数据包从源地址到目的地址的最佳路径。简单来说,路由表就是路由器用来选择数据包传输路径的决策表。通过路由表才能精确定位网络,传输信息。

        路由表的基本信息和重点:

  1. 目的网络/子网:这是路由表中最关键的一列,它表示了数据包的目标IP地址或子网。路由器会检查数据包的目的IP地址,并在路由表中查找匹配项。
  2. 子网掩码:子网掩码用于确定目的IP地址的网络部分。路由器将目的IP地址与子网掩码进行逻辑与操作,然后与路由表中的网络部分进行比较。
  3. 下一跳地址:这是数据包应该发送到的下一个路由器的IP地址。在某些情况下,下一跳可能是直接连接的设备(如主机),但在大多数情况下,它是另一个路由器。
  4. 输出接口:这是数据包应该离开路由器的物理或逻辑接口。它可以是特定的以太网端口、Wi-Fi接入点或其他任何网络接口。
  5. 度量值(或称为“成本”或“距离”):这是一个可选字段,用于表示到达目的网络的成本或距离。路由器可以使用这个字段来选择最佳路径(例如,使用最短路径优先算法)。
  6. 管理距离:这也是一个可选字段,用于确定路由来源的可信度。不同的路由协议(如RIP、OSPF、BGP等)有不同的管理距离值。当路由器有多个可用的路由时,它将选择具有最低管理距离的路由。
  7. 路由类型:这表示路由是如何被学习或发现的。路由可以是静态的(手动配置的)或动态的(通过路由协议自动学习的)。

3.5、路由类型

3.5.1、静态路由

3.5.1.1、定义

        路由表可以手动配置。

        当网络管理员配置了路由器接口的IP地址、子网掩码,启动接口后,路由表中就会出现直连网络的路由。

        网络管理员还可以手动配置到达其他网络的路由,创建路由表项。这样的网络就是静态路由。配置静态路由要求管理员对网络拓扑结构和网络状态有清晰的了解,并且当网络变化时,要手动配置。

3.5.1.2、特点
  1. 手动配置:静态路由需要网络管理员根据实际网络拓扑结构和需求进行手动配置。管理员需要指定目标网络的IP地址、子网掩码、下一跳地址(如果有的话)以及数据包离开路由器的接口。
  2. 路由路径相对固定:由于静态路由是手动配置的,因此每个配置的静态路由在本地路由器上的路径基本上是不变的,除非管理员自己修改。
  3. 永久存在:一旦静态路由被配置,它会永久地存在于路由表中,除非管理员手动删除或相关接口关闭、下一跳IP地址不可达。
  4. 不可通告性:静态路由信息在默认情况下是私有的,不会向其他路由器通告。但管理员可以通过其他手段(如重发布静态路由)来使其他路由器获知这些信息。
  5. 单向性:静态路由只提供单向的路由信息,即只指定了数据包从当前路由器到达目标网络的路径。为了实现双向通信,需要在相关路由器上配置回程静态路由。
  6. 接力性:如果某条静态路由需要经过多个路由器(跳数大于1),则必须在每个中间路由器上配置到达相同目标网络或节点的静态路由。

3.5.1.3、适用范围

        静态路由适用于中小型网络,尤其是网络拓扑结构相对固定、不需要频繁变动的场景。它的优点包括配置简单网络安全保密性高(因为不需要路由器之间频繁交换路由信息)、不占用网络带宽(因为不会产生更新流量)。然而,在大型和复杂的网络环境中,静态路由可能难以适应网络拓扑结构和链路状态的变化,需要大范围地调整路由信息,因此不太适用。

3.5.2、动态路由

3.5.2.1、定义

        路由器之间可以通过路由协议,自主学习来获得的路由信息,这样的路由被称为动态路由。使用路由协议动态构建路由表不需要人工参与,并能自动适应网络状态的变化更新路由表,大型网络或状态变化频繁的网络通常会采用动态路由协议。

3.5.2.2、特点
  1. 自动计算与调整:动态路由允许路由器之间通过交换路由信息来自动计算路由,并根据网络状态的变化实时调整路由表。这种机制使得路由器能够自动适应网络拓扑结构的变化,无需人工干预。
  2. 基于路由协议:动态路由的实现依赖于特定的路由协议,如RIP、OSPF、IS-IS、BGP等。这些协议定义了路由器之间如何交换路由信息以及如何计算路由。
  3. 占用网络带宽:由于动态路由需要路由器之间频繁地交换路由信息,因此会占用一定的网络带宽。但是,这种占用通常是可接受的,因为动态路由能够带来更高的网络灵活性和可用性。
  4. 灵活性高:动态路由能够自动适应网络状态的变化,因此具有很高的灵活性。当网络拓扑结构发生变化时,动态路由能够迅速调整路由表,确保数据包的正常传输。

3.5.2.3、原理
  1. 路由信息交换:路由器之间通过特定的路由协议交换路由信息,包括目标网络的IP地址、子网掩码、下一跳地址等。这些信息被用于计算路由表。
  2. 路由表计算:路由器根据收集到的路由信息,使用特定的路由算法(如距离向量算法、链路状态算法等)计算路由表。这些算法会考虑多个因素,如路径长度、带宽、延迟等,以确定最佳路径。
  3. 路由表更新:当网络状态发生变化时(如链路故障、路由器宕机等),路由器会重新计算路由表并更新相应的路由信息。这种更新过程是自动的,无需人工干预。

3.5.2.4、优缺点

优点

  • 自动适应网络状态变化,无需人工干预。
  • 能够迅速响应网络拓扑结构的变化,确保数据包的正常传输。
  • 提高了网络的灵活性和可用性。

缺点

  • 需要占用一定的网络带宽来交换路由信息。
  • 在某些情况下,可能会产生路由环路等问题,需要采取相应的措施来解决。

3.5.2.5、常见的动态路由协议
  • RIP(路由信息协议):基于距离向量的路由协议,实现简单,开销较小。但是,它只支持小型网络,并且存在路由环路的风险。(RIP配置博客链接)
  • OSPF(开放式最短路径优先):基于链路状态的路由协议,适用于大型网络。它使用Dijkstra算法来计算最短路径,并且具有较高的收敛速度。
  • BGP(边界网关协议):用于在自治系统之间交换路由信息的协议。它是唯一一个用来处理像因特网大小的网络的协议。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/767156.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

PLC_博图系列☞TP:生成脉冲

PLC_博图系列☞TP:生成脉冲 文章目录 PLC_博图系列☞TP:生成脉冲背景介绍TP: 生成脉冲说明参数脉冲时序图示例 关键字: PLC、 西门子、 博图、 Siemens 、 TP 背景介绍 这是一篇关于PLC编程的文章,特别是关于西门…

快速上手文心一言指令:解锁AI对话新纪元

快速上手文心一言指令 一、引言:文心一言的魅力所在二、准备工作:了解文心一言平台2.1 轻松注册,开启智能对话之旅2.2 深度探索,掌握界面布局奥秘2.2.1 输入框:智慧交流的起点2.2.2 回复区:即时反馈的窗口2…

Echarts-折线图

1.案例1 1.1代码 option {"tooltip": {"trigger": "axis","backgroundColor": "rgba(32, 33, 36,.7)","borderColor": "rgba(32, 33, 36,0.20)","borderWidth": 10,"textStyle"…

星辰资讯 | TiUP v1.16 发版,支持 PD 微服务

如果你对 TiDB 还不太了解,或者你对数据库安装部署的认知仍然停留在手动和脚本时代,那么,请先戳这里了解一下 TiUP 神器: 震惊!数据库小白装国产数据库只需10分钟! TiDB 7.x 源码编译之 TiUP 篇 TiUP&#…

基于改进高斯-拉普拉斯滤波器的一维时间序列平滑与降噪(MATLAB)

以图像处理为例,拉普拉斯算子是基于图像的二阶导数来找到边缘并搜索过零点,传统的拉普拉斯算子常产生双像素宽的边缘,对于较暗区域中的亮斑进行边缘检测时,拉普拉斯运算就会使其变得更亮。因此,与梯度算子一样&#xf…

基于tensorflow2的目标检测完整实现过程

序言 虽然tf1仍然在维护,但tf2毕竟是主流,如果不是项目有明确要求,建议直接选择tf2。本文以tf2为例展开,总结从环境准备到使用自己的数据和tensorflow预训练模型进行快速训练和调用。对tensorflow和目标检测算法有深入了解的&…

Seal^_^【送书活动第8期】——《ChatGLM3大模型本地化部署、应用开发与微调》

Seal^_^【送书活动第8期】——《ChatGLM3大模型本地化部署、应用开发与微调》 一、参与方式二、本期推荐图书2.1 作者建语2.2 编辑推建2.3 图书简介2.4 前 言2.5 目 录 三、正版购买 大模型领域 既是繁星点点的未知宇宙,也是蕴含无数可能的广阔天地, 正…

“不喝鸡汤 不诉离殇”华火电燃灶用实力引领烹饪灶具发展

在这个快节奏的时代,我们常常被各种厨房电器的鸡汤所包围,并悄悄的告诉我们厨房生活是美好与温暖的,但面对现实中的挑战与困难时,常常表现出选择性失明;那些隐藏在传统厨房烹饪环境下的危机,就像是慢性的毒…

参数污染漏洞(HPP)挖掘技巧及实战案例全汇总

目录 概念: 漏洞原理: 实战案例总结: 1. 逻辑漏洞(IDOR) 2. 绕过检测(WAF) 挖掘技巧: 修复方案: 概念: HTTP参数污染,也叫HPP(HTTP Parameter Pollution)。简单地讲就是给一个参数赋上两个或两个以上的值,由于现行的HTTP标准没有提及在遇到多个输入值给相…

设计IC行业SAP软件如何处理芯片成本计算

在集成电路(IC)设计与制造行业中,精确的成本计算对于维持健康的财务状况、优化生产流程以及保持市场竞争力至关重要。SAP软件,作为一种全面的企业资源规划(ERP)解决方案,为IC行业提供了强大且灵活的成本计算工具。以下是SAP软件如何处理芯片成…

【Linux】应用层创建XXX文件,文件系统调用可以查看到文件名

搞了台电脑,昨天把系统装了下,继续搞事: 上次基于内核代码openat的系统打印被操作的文件名,发现不成功,很奇怪,这种问题内核不可能会犯这种低级别的问题吧? 反过来想,那不是内核的问…

Vscode快捷键崩溃

Vscode快捷键崩溃 Linux虚拟机下使用vscode写代码【ctrlA,CtrlC,CtrlV】等快捷键都不能使用,还会出现“NO text insert“等抽象的指令,问题就是不知道什么时候装了一个VIM插件,让他滚出电脑》》》

[vue3+js]实现3d旋转效果

1. 实现效果图&#xff1a; 2.实现代码&#xff1a; css: <style lang"scss" scoped>.bottomContainer{width: 1200px;height: 400px;display: flex;justify-content: center;position: relative;margin:200px auto;align-items: center;// background-image…

迈向智慧水利新时代:聚焦智慧水利解决方案的核心技术与发展方向,展望其在推动水利行业可持续发展中的重要作用

目录 一、引言 二、智慧水利解决方案的核心技术 1. 物联网技术 2. 大数据与云计算 3. 人工智能与机器学习 4. 区块链技术 三、智慧水利的发展方向 1. 深化技术融合与创新 2. 强化系统集成与协同 3. 提升公众参与与互动 4. 注重生态友好与可持续发展 四、智慧水利在…

5.3.3、二维数组案例-考试成绩统计

代码 #include <iostream> using namespace std; #include <string>int main() {//二维数组案例-考试成绩统计//1、创建二维数组int scores[3][3] {{100,100,100},{90,50,100},{60,70,80},};string names[3] { "张三","李四","王五&quo…

Qt——升级系列(Level Seven):事件、文件

目录 Qt事件 事件介绍 事件的处理 按键事件 鼠标事件 定时器 事件分发器 事件过滤器 Qt文件 Qt文件概述 输入输出设备类 文件读写类 文件和目录信息类 Qt事件 事件介绍 事件是应⽤程序内部或者外部产⽣的事情或者动作的统称。在 Qt 中使⽤⼀个对象来表⽰⼀个事件。所有的 Qt …

STM32 ADC精度提升方法

STM32 ADC精度提升方法 Fang XS.1452512966qq.com如果有错误&#xff0c;希望被指出&#xff0c;学习技术的路难免会磕磕绊绊量的积累引起质的变化 硬件方法 优化布局布线&#xff0c;尽量减小其他干扰增加电源、Vref去耦电容使用低通滤波器&#xff0c;或加磁珠使用DCDC时尽…

在Android运行时切换Retrofit Base URL:简化开发环境与生产环境的切换

在运行时切换Retrofit Base URL:简化开发环境与生产环境的切换 在Android开发中,Retrofit是一个由Square开发的类型安全的HTTP客户端库。它为API认证和网络请求提供了一个强大的框架。然而,在开发过程中,我们常常需要在不同的环境(如开发环境和生产环境)之间切换Base UR…

2024上半年剧集市场复盘:质增量减之下,腾讯持续领跑

随着2024上半年结束&#xff0c;剧集市场长视频平台的比拼也告一段落了。 总结2024H1阶段的剧集市场&#xff0c;依旧延续了“高质量增长”的发展路线&#xff0c;具体表现在数量上的减少和质量上的提升&#xff0c;“质增量减”成为这一阶段的关键词。 根据灯塔专业版数据&a…

openCV3.0 C++ 学习笔记补充(自用 代码+注释)---持续更新 二(51-)

环境&#xff1a;OpenCV3.2.0 VS2015 51、Mean-Shift算法分割图像 cv::pyrMeanShiftFiltering() 参考链接&#xff1a;【从零学习OpenCV 4】分割图像——Mean-Shift分割算法 Mean-Shift算法又被称为均值漂移法&#xff0c;是一种基于颜色空间分布(彩色图像的像素值)的图像分割…