当前位置: 首页 > news >正文

软考:软件设计师 — 5.计算机网络

五. 计算机网络

1. OSI 七层模型

层次名称主要功能主要设备及协议
7应用层实现具体的应用功能

POP3、FTP、HTTP、Telent、SMTP

DHCP、TFTP、SNMP、DNS

6表示层数据的格式与表达、加密、压缩
5会话层建立、管理和终止会话
4传输层端到端的连接TCP、UDP
3网络层分组传输和路由选择

三层交换机、路由器

ARP、RARP、IP、ICMP、IGMP

2数据链路层传送以帧为单位的信息

网桥、交换机(多端口网桥)、网卡

PPTP、L2TP、SLIP、PPP

1物理层二进制传输中继器、集线器(多端口中继器)

中继器、集线器等设备均在同一个冲突域。 

中继器在物理层上实现局域网网段互连,用于扩展局域网网段的长度。集线器是一种特殊的多路中继器,也具有信号放大功能。

网桥用于连接两个局域网网段,工作于 MAC 子层,只要两个网络的 MAC 子层以上的协议相同,都可以用网桥互连。网桥具有过滤帧的功能。

交换机中,多个端口在同一个网络(在同一个广播域)。一个接口对应一个冲突域。

路由器连接逻辑上分开的网络,一个接口对应一个广播域或一个冲突域。

例题1:

集线器与网桥的区别是()。

A.集线器不能检测发送冲突,而网桥可以检测冲突。

B.集线器是物理层设备,而网桥是数据链路层设备。

C.网桥只有两个端口,而集线器是一种多端口网桥。

D.网桥是物理层设备,而集线器是数据链路层设备。

解析1:

根据七层模型中硬件的定义可知,集线器是物理层设备,网桥是数据链路层设备,B 选项正确,D 选项错误。A 选项中,集线器与网桥都不能检测发送冲突,只能进行隔离,A选项错误。C 选项中,多端口网桥是交换机,集线器是多端口中继器,C 选项错误。

例题2:

以下关于网络层次与主要设备对应关系的叙述中,配对正确的是()。

A.网络层 — 集线器

B.数据链路层 — 网桥

C.传输层 — 路由器

D.会话层 — 防火墙

解析2:

集线器位于物理层,网桥位于数据链路层,路由器位于网络层,防火墙不属于硬件设备,可位于网络层或应用层。因此选 B。

2. TCP / IP 协议簇

(1)常见协议功能基础

  • POP3:默认 110 端口,邮件收取。
  • SMTP:25 端口,邮件发送。
  • FTP:20 数据端口 / 21 控制端口,文件传输协议。
  • HTTP:80 端口,超文本传输协议,网页传输。
  • DHCP:67 端口,IP 地址自动分配。
  • SNMP:161 端口,简单网络管理协议。
  • DNS:53 端口,域名解析协议,记录域名与 IP 的映射关系。
  • TCP:可靠的传输层协议。
  • UDP:不可靠的传输层协议。
  • ICMP:因特网控制协议,PING 命令来自该协议。
  • IGMP:组播协议。
  • ARP:地址解析协议,IP 地址转为 MAC 地址。
  • RARP:反向地址解析协议,MAC 地址转为 IP 地址。

TCP、UDP 协议是基于 IP 协议的。

例题1:

以下关于 TCP/IP 协议和层次对应关系的表示中,正确的是()。

解析1:

TCP、UDP 协议是基于 IP 协议的,所以首先排除 BD 选项。SMTP 是邮件发送协议,基于 TCP 协议,所以选项 A 正确。 

例题2:

默认情况下,FTP 服务器的控制端口为(),上传文件时的端口为()。

A.大于 1024 的端口  B.20  C.80  D.21

A.大于 1024 的端口  B.20  C.80  D.21

解析2:

根据 FTP 协议的定义可知,20 为数据端口,21 为控制端口,因此选 DB 选项。

例题3:

若一台服务器只开放了 25 和 110 两个端口,那么这台服务器可以提供()服务。

A.E-Mail  B.WEB  C.DNS  D.FTP

解析3:

根据各常用协议的默认端口可知,25 端口是 SMTP,110 端口是 POP3,分别用来控制邮件的发送和收取,所以这台服务器可以提供 E-Mail 服务,选项 A 正确。WEB 服务通常与 HTTP 协议有关。

(2)TCP 与 UDP

关于 TCP 与 UDP 协议的详细内容,可以参考文章:Java知识点整理 4 — 计算机网络

TCPUDP
共同点基于 IP 协议的传输层协议,可以端口寻址。
不同点面向连接(连接管理)、三次握手、流量控制、差错校验和重传、IP 数据报按序接收不丢失不重复、可靠性强、牺牲通信量、效率低。

不可靠、无连接、错误检测功能弱,无拥塞控制、无流量控制,有助于提高传输效率。

不对无序 IP 数据报重新排序、不负责重传、不消除重复 IP 数据报、不对已收到的数据报进行确认、不负责建立或终止连接,这些由 UDP 进行通信的应用程序处理。

相关协议HTTP、FTP、Telnet、POP3、SMTPDNS、DHCP、TFTP、SNMP

例题1:

TCP 和 UDP 协议均提供了()能力。

A.连接管理  B.差错校验和重传  C.流量控制  D.端口寻址

解析1:

它们都是基于 IP 协议的传输层协议,都具有端口寻址功能,选 D。ABC 都是 TCP 协议具有的功能,可靠性强,但效率低。

例题2:

相比于 TCP,UDP 的优势为()。

A.可靠传输  B.开销较小   C.拥塞控制  D.流量控制

解析2:

UDP 的优势在于开销小,效率高,TCP 是保证了可靠性,牺牲了效率。因此选 B。 

(3)协议应用扩展

DHCP 协议

用于 IP 地址自动分配,C/S模型结构。分配方式有固定分配、动态分配和自动分配。

其中分配的 IP 地址为 169.254.X.X 和 0.0.0.0 是无效 IP 地址。

DNS 协议

浏览器输入域名HOSTS -> 本地DNS缓存 -> 本地DNS服务器 -> 根域名服务器 -> 顶级域名服务器 -> 权限域名服务器
主域名服务器接收到域名请求本地DNS缓存 -> 根域名服务器

HOSTS 文件提供域名到 IP 地址的映射关系。如果在 HOSTS 中没找到,就按序向下寻找。

例题1:

采用 DHCP 动态分配 IP 地址,如果某主机开机后没有得到 DHCP 服务器的响应,则该主机获取的 IP 地址属于网络()。

A.202.117.0.0/24  B.192.168.1.0/24  C.172.16.0.0/16  D.169.254.0.0/16

解析1:

DHCP 协议分配的 169.254.X.X 和 0.0.0.0 是无效 IP 地址,因此选 D。

例题2:

在浏览器地址栏输入一个正确的网址后,本地主机将首先在()查询该网址对应的 IP 地址。

A.本地DNS缓存  B.本机hosts文件  C.本地DNS服务器  D.根域名服务器

解析2:

在浏览器输入域名后,将首先去本机 hosts 文件中查询对应的 IP 地址,找不到按序向下查询,如果是服务器接收到域名请求的话,则先查本地 DNS 缓存。选 B。

3. 网络诊断命令

  • ping:用于检查网络是否连通。
  • tracert:用于确定 IP 数据包访问目标所采取的路径,若网络不通,能定位到具体哪个结点不通。
  • ipconfig:显示 TCP/IP 网络配置值,如:IP 地址,MAC 地址,网关地址等。
  • nslookup:查询 DNS 记录。
  • netstat:用于显示网络连接、路由表和网络接口信息。

网络中整个侦听的过程其实就是 TCP 三次握手的建立过程。

第一次握手 :客户端发送SYN包(SEQ = x)到服务器,并进入SYN_SENT状态,等待服务器确认。SYN是同步序列编号。
第二次握手 :服务器收到SYN包,会确认客户端的SYN(ACK = x+1),同时自己也发送一个SYN包(SEQ = y),即SYN+ACK包,此时服务器进入SYN_RECV状态。
第三次握手 :客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ACK = y+1),发送完后,客户端和服务器进入ESTABLISHED状态,完成三次握手。ESTABLISHED状态表示连接建立成功,可以传输数据。

例题1:

在 Windows 操作系统下,要获取某个网络开放端口所对应的应用程序信息,可以使用命令()。

A.ipconfig  B.tracerout  C.netstat  D.nslookup

解析1:

获取某个网络开放端口所对应的应用程序信息可用 netstat 命令,选 C。B 选项是 tracert 命令的 Linux 版本。 

例题2:

测试网络连通性通常采用的命令是()。

A.netstat  B.ping  C.msconfig  D.cmd

解析2:

ping 命令通常用于检查网络是否连通,选 B。

例题3:

使用()命令可以释放当前主机自动获取的 IP 地址。

A.ipconfig/all  B.ipconfig/reload  C.ipconfig/release  D.ipconfig/reset

解析3:

A 项用于查看 ip 地址的全部配置情况,C 项用于释放当前主机自动获取的 ip 地址。没有 BD 选项这样的命令。

4. IP 地址与子网划分

(1)IP 地址分类与特殊 IP 地址

IP 地址的表示采用点分十进制,采用 32 位二进制,划分成 4 段,每段 8 位二进制,由网络号和主机号两部分构成。常用的是 A、B、C 三类。其中,A 类的网络号 8 位,B 类的网络号 16位,C 类的网络号 24 位。

例如,A 类 IP 地址中,主机号有 24 位,那么可以表示的主机地址有 2^{24} 种,但需要排除两个特殊的地址,分别是全 0 和全 1 作主机号。全 0 表示网络的地址,全 1 表示广播地址,因此主机地址有 2^{24} - 2 种。

特殊的 IP 地址:

IP说明
127网段回拨地址,本地环回地址。通常用于本地测试。
主机号非全 0 和非全 1可作为子网中的主机号使用。
主机号全 0 地址代表这个网络本身,可作为子网地址使用。
主机号全 1 地址特定子网的广播地址。
169.254.0.0保留地址,用于 DHCP 失效(Windows)
0.0.0.0保留地址,用于 DHCP 失效(Linux)

例题:

在一台安装好 TCP/IP 协议的计算机上,当网络连接不可用时,为了测试编写好的网络程序,通常使用的目的主机 IP 地址为()。

A.0.0.0.0

B.127.0.0.1

C.10.0.0.1

D.210.225.21.255/24

解析:

为了测试编写好的网络程序,通常使用本地环回地址 127.0.0.1,选 B。D 项中是一个普通的 IP 地址类型,其后面的 /24 是指有 24 位作为网络位,那么主机号有 8 位。

(2)子网划分与路由汇聚

IP 地址的表示方式有:

  • A/B/C/D/E 类地址
  • IP 地址/n(n 代表网络位数)
  • 子网掩码

其中,子网掩码的表示为网络号位置全为 1,主机号位置全为 0。和 IP 地址进行与操作。

子网划分:

将一个网络划分成多个子网(取部分主机号当子网号)

例如,将 B 类 IP 地址 168.195.0.0 划分成 27 个子网,子网掩码为多少?每个子网可表示多少个主机?

首先看到 B 类 IP 地址,其网络号为 16 位。27 个子网需要 5 位二进制才能表示,2^{5} = 32,所以子网号为 5,那么子网掩码就是:原 16 位网络号 + 5 位子网号 + 主机号,并且子网掩码网络号全为 1,主机号全为 0,所以子网掩码是:11111111 11111111 11111000 00000000,即 255.255.248.0。网络号有 16 + 5 = 21 位,那么主机号有 32 - 21 = 11 位,可以表示 2^{11} -2 个主机地址,不要忘记减去全 0 和全 1 的情况。

或者,将 B 类 IP 地址 168.195.0.0 划分成若干子网,每个子网内有主机 700 台,则子网掩码为多少?

同样,子网掩码为原 16 位网络号 + 子网号 + 700 台主机,其中 700 台主机可由 2^{10} 表示,即 10 位二进制(1024 - 2 = 1022),那么主机号有 10 位,因此子网号有 32 - 16 - 10 = 6 位,可以表示 2^{6} 个子网。那么子网掩码为:11111111 11111111 11111100 00000000,即 255.255.252.0。

路由汇聚:

将多个网络合并成一个大的网络(取部分网络号当主机号)

例如,设有两个子网 202.118.133.0/24 和 202.118.130.0/24,如果进行路由汇聚,得到的网络地址是?

首先可以看到两个子网的前 16 位地址是相同的,都是 202.118,然后再第 16 - 23 位不同,那么将其转化为二进制为:133 -> 1000 0101,130 -> 1000 0010,也就是它们的末三位不同,因此是从第 21 位开始发生变化的。将相同的部分全部取出,变化的部分全部置为 0,所以变成了 1000 0000,即 128。但注意,之前是前 24 位表示网络位,现在将变化的 3 位置 0 ,所以网络位减三,变成 21 位。所以路由汇聚后得到的网络地址为 202.118.128.0/21。

所以路由汇聚就是将大网络进行汇聚,就比如先确定国家和省份,然后再去细分网络,确定更为细致的位置。在题目中就是先找到网络 202.118.128,然后再分别去确定 133 和 130。

例题:

与地址 220.112.179.92 匹配的路由表的表项是()。

A.220.112.145.32/22

B.220.112.145.64/22

C.220.112.147.64/22

D.220.112.177.64/22

解析:

首先可以看到选项中的地址与题目中地址的前 16 位均相同,因此变化的是第 16 - 23 位。并且选项中给出了网络号的位数为 22 ,所以剩下的 22 - 16 = 6 位,依然是相同的。其中 179 的二进制形式为:10110011,可用除基取余法快速计算。145 的二进制形式为:10010001,147 的二进制形式为:10010011,177 的二进制形式为:10110001,显然 177 的前六位与 179 的前六位相同,所以 D 项是匹配的。

(3)IPv6

IPv4 能表示的空间有 2^{32},大概有 40 亿左右。但随着全世界人口的增加,IPv4 已经逐渐不够用,因此出现了 IPv6。IPv6 是设计用于替代现行版本 IP 协议(IPv4)的下一代 IP 协议。

IPv6 地址长度为 128 位,地址空间相比于 IPv4 增大了 2^{96} 倍。

IPv6 的地址类型:

  • 单播地址:用于单个接口的标识符,传统的点对点通信。
  • 多播地址:一点对多点的通信,数据报交付到一组计算机中的每一个。IPv6 没有广播的术语,而是将广播看做多播的一个特例。
  • 任播地址:泛播地址,这是 IPv6 增加的一种类型。任播的目的站是一组计算机,但数据包在交付时只交付给其中一个,通常是距离最近的一个。

IPv6 地址表示:(冒分十六进制)

IPv6 地址由 8 个 16 进制字段构成,例如:

2001:0db8:85a3:0000:1319:8a2e:0370:7344

可以简写成:2001:0db8:85a3::1319:8a2e:0370:7344

如果因为省略而出现了两个以上的冒号,则可以压缩为一个,但这种零压缩在地址中只能出现一次。因此:

2001:0DB8:0000:0000:0000:0000:1428:57ab

2001:0DB8:0:0:0:0:1428:57ab(整段 0 可以记作 1 个 0)

2001:0DB8::1428:57ab(连续多段 0 可以省略)

2001:DB8::1428:57ab(高位 0 可以省略)

IPv4 / IPv6 过渡技术:

  • 双协议栈技术:双栈技术通过节点对 IPv4 和 IPv6 双协议栈的支持,从而支持两种业务的共存。
  • 隧道技术:通过在 IPv4 网络中部署隧道,实现在 IPv4 网络上对 IPv6 业务的承载,保证业务的共存和过渡。隧道技术包括:6to4隧道、6over4隧道、ISATAP隧道。
  • NAT-PT 技术:使用网关设备连接 IPv6 和 IPv4 网络。当 IPv4 和 IPv6 节点互相访问时,NAT-PT 网关实现两种协议的转换翻译和地址映射。

5. 网络规划与设计

整体流程:

需求分析 -> 网络规划原则 -> 网络设计与实施原则 -> 层次化网络设计

  • 需求分析

网络功能要求;网络的性能要求;网络运行环境的要求;网络的可扩充性和可维护性要求。

  • 网络规划原则

实用性原则;开放性原则;先进性原则。

  • 网络设计与实施原则

可靠性原则;安全性原则;高效性原则;可扩展性原则。

  • 层次化网络设计

包括核心层、汇聚层、接入层。

层次化网络:

核心层:主要是高速数据交换,实现高速数据传输、出口路由,常用冗余机制。

汇聚层:网络访问策略控制、数据包处理和过滤、策略路由、广播域定义、寻址。

接入层:主要是针对用户端,实现用户接入、计费管理、MAC 地址认证、MAC 地址过滤、收集用户信息,可以使用集线器代替交换机。

例题:

以下关于层次化局域网模型中核心层的叙述,正确的是()。

A.为了保障安全性,对分组要进行有效性检查。

B.将分组从一个区域高速地转发到另一个区域。

C.由多台二、三层交换机组成。

D.提供多条路径来缓解通信瓶颈。

解析:

核心层只负责数据的高速转发,因此 B 选项正确。A 选项中分组检查由汇聚层处理。核心层大多由三层交换机或路由器构成,C 项错误。D 项中提到通信瓶颈,通常是瓶颈在哪里就在哪里提供路径,核心层只有出口路由,没有路径等相关概念,属于混淆项。

6. 网络接入技术

计算机网络分类

按分布范围分:

  • 局域网(LAN):无线局域网(WLAN,802.11,Wi-Fi)
  • 城域网(MAN):无线城域网(WMAN,802.16,WiMax)
  • 广域网(WAN):无线广域网(WWAN,3G/4G)
  • 因特网:无线个人网(WPAN,802.15,Bluetooth)

按拓扑结构分:

总线型、星型、环型、树型等。

网络接入技术

有线接入:

  • 公用交换电话网络(PSTN)
  • 数字数据网(DDN)
  • 综合业务数字网(ISDN)
  • 非对称数字用户线路(ADSL)
  • 同轴光纤技术(HFC)

其中,非对称数字用户线路(ADSL)又分为静态IP、PPPoA(基于 ATM)、PPPoE(基于以太网)三种接入方式。

无线接入:

  • IEEE 802.11(WiFi)
  • IEEE 802.15(Bluetooth)
  • 红外(IrDA)
  • WAPI

例题1:

使用 ADSL 接入 Internet,用户端需要安装()协议。

A.PPP  B.SLIP  C.PPTP  D.PPPoE

解析1:

ADSL 接入 Internet 需要安装 PPPoE 协议,该协议基于以太网接入,选 D。A 项是点对点协议,C 项是点对点隧道协议。

例题2:

下列无线网络技术中,覆盖范围最小的是()。

A.802.15.1 蓝牙

B.802.11n 无线局域网

C.802.15.4 ZigBee

D.802.16m 无线城域网

解析2:

覆盖范围最小的是蓝牙技术,选 A。C 项是子蜂技术,相比蓝牙要大一些。

7. WWW 服务

www 服务即万维网服务。Internet 地址:域名格式和IP地址格式。

URL

URL,即统一资源定位符,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的 URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。

URL格式:

协议名://主机名.组名.最高层域名    例如:http://www.baidu.com

protocol://hostname[:port] path /filename

protocol 指定使用的传输协议,最常见的是 HTTP 或 HTTPS 协议,也可以有其他协议,如 file、ftp、gopher、mms等。

hostname 是指主机名,即存放资源的服务域名或 IP 地址。如 www,也可将 www.baidu.com 整体作为主机名。

port 是指各种传输协议所使用的默认端口号,一般可以省略,如 http 默认端口号为 80。

path 是指路径,由一个或者多个 "/" 分隔,一般用来表示主机上的一个目录或者文件地址。

filename 是指文件名,该选项用于指定需要打开的文件名称。

一般情况下,一个 URL 可以采用 "主机名.域名" 的形式打开指定页面,如 www.baidu.com,也可单独使用 "域名" 来打开,如 baidu.com,但这样做的前提是需要进行相应的设置和对应。

常见域名:

组织模式含义地理模式含义
com商业组织cn中国
edu教育机构hk中国香港
gov政府机构mo中国澳门
mil军事部门tw中国台湾
net主要网络支持中心us美国
org上述以外组织uk英国
int国际组织jp日本

例题:

在地址 http://www.dailynews.com.cn/channel/welcome.htm 中, www.dailynews.com.cn 表示(),welcome.htm 表示()。

A.协议类型  B.主机  C.网页文件名  D.路径

A.协议类型  B.主机  C.网页文件名  D.路径

解析:

整个地址结构中,协议类型是 http,www.dailynews.com.cn 是主机名,channel 是路径,welcome.htm 是文件名,因此选 BC。

计算机网络部分的内容至此结束,后续如果有补充或修改会直接添加。

相关文章:

软考:软件设计师 — 5.计算机网络

五. 计算机网络 1. OSI 七层模型 层次名称主要功能主要设备及协议7应用层实现具体的应用功能 POP3、FTP、HTTP、Telent、SMTP DHCP、TFTP、SNMP、DNS 6表示层数据的格式与表达、加密、压缩5会话层建立、管理和终止会话4传输层端到端的连接TCP、UDP3网络层分组传输和路由选择 三…...

C++ //练习 15.28 定义一个存放Quote对象的vector,将Bulk_quote对象传入其中。计算vector中所有元素总的net_price。

C Primer(第5版) 练习 15.28 练习 15.28 定义一个存放Quote对象的vector,将Bulk_quote对象传入其中。计算vector中所有元素总的net_price。 环境:Linux Ubuntu(云服务器) 工具:vim 代码块&am…...

Midjourney绘画提示词精选

Midjourney绘画提示词精选 在探索Midjourney这一强大的AI绘画工具时,选择合适的提示词是创作出令人惊艳作品的关键。这些提示词不仅能够帮助Midjourney理解你的创作意图,还能引导它生成出符合你期望的图像。以下是对Midjourney绘画提示词的精选与解析&a…...

Kylin中的RBAC:为大数据安全加把锁

Kylin中的RBAC:为大数据安全加把锁 Apache Kylin是一个开源的分布式分析引擎,旨在为Hadoop平台提供快速的大数据量SQL查询能力。随着企业对数据安全和访问控制需求的增加,基于角色的访问控制(Role-Based Access Control&#xff…...

DDoS 攻击下的教育网站防护策略

随着互联网的普及,教育网站成为学生和教师获取信息、进行在线学习的重要平台。然而,这些网站也成为了网络攻击的目标,尤其是分布式拒绝服务(DDoS)攻击。本文将探讨DDoS攻击对教育网站的影响,并提出一系列有…...

Android13以太网静态IP不保存的问题

最近在做Amlogic T982的样机,关于以太网部分,系统Settings只有一个Ethernet的条目,没有其他任何信息,什么以太网mac地址,开关,IP地址,子网掩码,默认网关,dns, 设置代理&a…...

Redis 7.x 系列【31】LUA 脚本

有道无术,术尚可求,有术无道,止于术。 本系列Redis 版本 7.2.5 源码地址:https://gitee.com/pearl-organization/study-redis-demo 文章目录 1. 概述2. 常用命令2.1 EVAL2.2 SCRIPT LOAD2.3 EVALSHA2.4 SCRIPT FLUSH2.5 其他 3. …...

mysql中You can’t specify target table for update in FROM clause错误

mysql中You can’t specify target table for update in FROM clause错误 You cannot update a table and select directly from the same table in a subquery. mysql官网中有这句话,我们不能在一个语句中先在子查询中从某张表查出一些值,再update这张表…...

Linux Vim最全面的教程

Vim 是一个非常强大的文本编辑器,它在 Linux 环境中尤其受欢迎。Vim 支持高度定制,并且拥有丰富的功能,包括多级撤销、宏、脚本语言支持等。下面是关于 Vim 的一个较为全面的教程。 Vim 的启动 要启动 Vim,你可以在终端中输入 v…...

setsockopt选项对tcp速度

GPT-4 (OpenAI) 每个setsockopt调用都涉及到一个套接字描述符,一个指定网络层的常数(如IPPROTO_IP, IPPROTO_TCP, IPPROTO_IPV6, SOL_SOCKET等),一个指定需配置的选项的常数,一个指向配置值的指针,以及那个…...

HarmonyOS应用开发者高级认证,Next版本发布后最新题库 - 多选题序号3

基础认证题库请移步:HarmonyOS应用开发者基础认证题库 注:有读者反馈,题库的代码块比较多,打开文章时会卡死。所以笔者将题库拆分,单选题20个为一组,多选题10个为一组,题库目录如下,…...

bool数组的理解和应用[C++]

文章目录 bool数组的用法bool数组的定义声明bool数组的初始化访问和修改数组元素遍历数组 运用bool数组简单代码 在今天做题中发现了bool类不仅能用于函数类型还能用于数组类型,好奇查了查发现bool还有很多用处:基本变量,在枚举类型中会用到&…...

JavaScript模拟滑动手势

双击回到顶部 左滑动 右滑动 代码展示 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title>Gesture…...

Text Control 控件教程:使用 .NET C# 中的二维码和条形码增强文档

QR 码和条形码非常适合为文档和 PDF 文件增加价值&#xff0c;因为它们提供轻松的信息访问、验证信息、跟踪项目和提高交互性。条形码可以弥补纸质或数字人类可读文档与网络门户或网络应用程序中的数字信息之间的差距。大多数用户都熟悉 QR 码和条形码&#xff0c;它们在许多过…...

最新爆火的开源AI项目 | LivePortrait 本地安装教程

LivePortrait 本地部署教程&#xff0c;强大且开源的可控人像AI视频生成 1&#xff0c;准备工作&#xff0c;本地下载代码并准备环境&#xff0c;运行命令前需安装git 以下操作不要安装在C盘和容量较小的硬盘&#xff0c;可以找个大点的硬盘装哟 2&#xff0c;需要安装FFmp…...

揭秘Django与Neo4j:构建智能知识图谱的终极指南

揭秘Django与Neo4j:构建智能知识图谱的终极指南 前言 图是一种用于对象之间的成对关系进行建模的数学结构。 它由两个主要元素组成:节点和关系。 节点:节点可以看作是传统数据库中的记录。每个节点代表一个对象或实体,例如一个人或一个地方。节点按标签分类,这有助于根…...

项目一缓存商品

文章目录 概要整体架构流程技术细节小结 概要 因为商品是经常被浏览的,所以数据库的访问量就问大大增加,造成负载过大影响性能,所以我们需要把商品缓存到redis当中,因为redis是存在内存中的,所以效率会比MySQL的快. 整体架构流程 技术细节 我们在缓存时需要保持数据的一致性所…...

SEO与数据中心代理IP的结合能带来哪些便利?

本文将探讨将SEO与数据中心代理IP结合所带来的好处&#xff0c;以及如何利用这种组合来提升网站在搜索引擎中的排名和可见性。 1. 数据中心代理IP的作用和优势 数据中心代理IP指的是由数据中心提供的IP地址&#xff0c;用于隐藏真实服务器的位置和身份。与其他类型的代理IP相…...

《昇思25天学习打卡营第6天|ResNet50图像分类》

写在前面 从本次开始&#xff0c;接触一些上层应用。 本次通过经典的模型&#xff0c;开始本次任务。这里开始学习resnet50网络模型&#xff0c;应该也会有resnet18&#xff0c;估计18的模型速度会更快一些。 resnet 通过对论文的结论进行展示&#xff0c;说明了模型的功能&…...

Activiti 6 兼容openGauss数据库bytes类型不匹配

当前有个项目需要做国产调研&#xff0c;需要适配高斯数据库&#xff0c;项目启动的时候&#xff0c;提示column "bytes_" is type bytea but expression is of type blob byte_字段是act_ge_bytearray表的&#xff0c;openGauss里的类型是bytea&#xff0c;类型是匹…...

缓存技术:提升性能与效率的利器

在当今数字化时代&#xff0c;软件应用的性能与响应速度成为了衡量其成功与否的重要标准之一。随着数据量的爆炸性增长和用户需求的日益多样化&#xff0c;如何高效地处理这些数据并快速响应用户请求成为了软件开发中亟待解决的问题。缓存技术&#xff0c;作为提升系统性能、优…...

LeetCode 637, 67, 399

文章目录 637. 二叉树的层平均值题目链接标签思路代码 67. 二进制求和题目链接标签思路代码 399. 除法求值题目链接标签思路导入value 属性find() 方法union() 方法query() 方法 代码 637. 二叉树的层平均值 题目链接 637. 二叉树的层平均值 标签 树 深度优先搜索 广度优先…...

如何压缩视频大小不改变画质?这5个视频压缩免费软件超好用!

如何压缩视频大小不改变画质&#xff1f;随着生活的水平逐步提高&#xff0c;视频流媒体服务越来越受欢迎。提供简短而引人注目的视频来展示您的产品或服务已成为一种出色的营销手段。然而&#xff0c;当您要准备导出最终视频时&#xff0c;可能会面临一个常见问题&#xff1a;…...

深入理解 Java 虚拟机第三版(周志明)

这次社招选的这本作为 JVM 资料查阅&#xff0c;记录一些重点 1. 虚拟机历史 Sun Classic VM &#xff1a;已退休 HotSpot VM&#xff1a;主流虚拟机&#xff0c;热点代码探测技术 Mobile / Embedded VM &#xff1a;移动端、嵌入式使用的虚拟机 2.2 运行时数据区域 程序计…...

算法 定长按组翻转链表

一、题目 已知一个链表的头部head&#xff0c;每k个结点为一组&#xff0c;按组翻转。要求返回翻转后的头部 k是一个正整数&#xff0c;它的值小于等于链表长度。如果节点总数不是k的整数倍&#xff0c;则剩余的结点保留原来的顺序。示例如下&#xff1a; &#xff08;要求不…...

安装nfs和rpcbind设置linux服务器共享磁盘

1、安装nfs和rpcbind 1.1 检查服务器是否安装nfs和rpcbind&#xff0c;执行下命令&#xff0c;检查服务器是否安装过。 rpm -qa|grep nfs rpm -qa|grep rpcbind 说明服务器以安装了&#xff0c;如果没有就需要自己安装 2、安装nfs和rpcbind 将rpm安装包&#xff1a; libtirpc-…...

物联网在电力行业的应用

作者主页: 知孤云出岫 这里写目录标题 作者主页:物联网在电力行业的应用简介主要应用领域代码案例分析1. 智能电表数据采集和分析2. 设备监控和预测性维护3. 能耗管理和优化4. 电力负载预测5. 分布式能源管理6. 电动汽车充电管理7. 电网安全与故障检测 物联网在电力行业的应用…...

Java 代码规范if嵌套

在Java编程中&#xff0c;过度的if嵌套会使代码难以阅读和维护。为了遵循良好的代码规范&#xff0c;我们应尽量减少嵌套的深度。这通常可以通过重新组织代码或使用其他结构&#xff08;如switch语句&#xff0c;或者将逻辑封装到单独的方法中&#xff09;来实现。 以下是一个…...

ASPICE如何确保汽车软件产品质量的稳固基石

ASPICE通过一系列的方法和原则来保障汽车软件产品的质量&#xff0c;以下是其保障产品质量的几个关键方面&#xff1a; 制定明确的质量方针和目标&#xff1a; ASPICE要求组织制定明确的质量方针和目标&#xff0c;这些方针和目标与客户需求和预期相一致。 开发团队需要定义软…...

【深度学习】yolov8-seg分割训练,拼接图的分割复原

文章目录 项目背景造数据训练 项目背景 在日常开发中&#xff0c;经常会遇到一些图片是由多个图片拼接来的&#xff0c;如下图就是三个图片横向拼接来的。是否可以利用yolov8-seg模型来识别出这张图片的三张子图区域呢&#xff0c;这是文本要做的事情。 造数据 假设拼接方式有…...

Python升级打怪—Django入门

目录 一、Django简介 二、安装Django 三、创建Dajngo项目 (一) 创建项目 (二) 项目结构介绍 (三) 运行项目 (四) 结果 一、Django简介 Django是一个高级Python web框架&#xff0c;鼓励快速开发和干净、实用的设计。由经验丰富的开发人员构建&#xff0c;它解决了web开…...

leetcode面试题17.最大子矩阵

sooooooo long没刷题了&#xff0c;汗颜 题目链接&#xff1a;leetcode面试题17 1.题目 给定一个正整数、负整数和 0 组成的 N M 矩阵&#xff0c;编写代码找出元素总和最大的子矩阵。 返回一个数组 [r1, c1, r2, c2]&#xff0c;其中 r1, c1 分别代表子矩阵左上角的行号和…...

计算机网络:构建联结的基础

目录 1. 网络拓扑结构 1.1 星型拓扑 1.2 环型拓扑 1.3 总线型拓扑 1.4 网状拓扑 2. 传输介质 2.1 双绞线 2.2 同轴电缆 2.3 光纤 2.4 无线电波 3. 协议栈模型 3.1 OSI模型 3.2 TCP/IP模型 4. 网络设备 4.1 交换机 4.2 路由器 4.3 网关 4.4 防火墙 5. IP地址…...

node和npm安装;electron、 electron-builder安装

1、node和npm安装 参考&#xff1a; https://blog.csdn.net/sw150811426/article/details/137147783 下载&#xff1a; https://nodejs.org/dist/v20.15.1/ 安装&#xff1a; 点击下载msi直接运行安装 安装完直接cmd打开可以&#xff0c;默认安装就已经添加了环境变量&…...

操作系统概念(黑皮书)阅读笔记

操作系统概念&#xff08;黑皮书&#xff09;阅读笔记 进程和内存管理部分章节 导论&#xff1a; 操作系统类似于政府&#xff0c;其本身不能实现任何有用功能&#xff0c;而是提供一个方便其他程序执行有用工作的环境 ​ 个人理解&#xff1a;os是government的作用&#xff0…...

matlab gui下的tcp client客户端编程框架

GUI界面 函数外定义全局变量 %全局变量 global TcpClient; %matlab作为tcpip客户端 建立连接 在“连接”按钮的回调函数下添加以下代码&#xff1a; global TcpClient;%全局变量 TcpClient tcpip(‘192.168.1.10’, 7, ‘NetworkRole’,‘client’); %连接到服务器地址和端…...

Matplotlib : Python 的绘图库

Matplotlib 是一个 Python 的绘图库&#xff0c;广泛用于生成各种静态、动态、交互式的图表。它基于 NumPy&#xff0c;一个用于科学计算的 Python 库。Matplotlib 可以用于生成出版质量级别的图表&#xff0c;并且提供了丰富的定制选项&#xff0c;以适应不同用户的需求。以下…...

数据编织 VS 数据仓库 VS 数据湖

目录 1. 什么是数据编织?2. 数据编织的工作原理3. 代码示例4. 数据编织的优势5. 应用场景6. 数据编织 vs 数据仓库6.1 数据存储方式6.2 数据更新和实时性6.3 灵活性和可扩展性6.4 查询性能6.5 数据治理和一致性6.6 适用场景6.7 代码示例比较 7. 数据编织 vs 数据湖7.1 数据存储…...

CSS(十一)——CSS分组和嵌套,尺寸(Dimension)

CSS 分组 和 嵌套 选择器 分组选择器 举个例子&#xff0c;多个标签有同一个样式&#xff0c;就可以不一个一个分开写&#xff0c;使用分组选择器 比如&#xff1a; h1 {color:green; } h2 {color:green; } p {color:green; } 就可以写为&#xff1a; h1,h2,p {color…...

必备神器!三款优秀远程控制电脑软件推荐

嘿&#xff0c;各位职场小伙伴们&#xff0c;今儿个咱们来聊聊个挺实用又带点“科技范儿”的话题——电脑远程控制那点事儿。作为刚踏入职场不久的新人&#xff0c;我深刻体会到&#xff0c;在这信息爆炸的时代&#xff0c;掌握几招远程操作的技能&#xff0c;简直就是给自个儿…...

关于正运动学解机器人手臂算法

机器人正运动学是机器人学的一个分支&#xff0c;研究机器人的运动和位置之间的关系。它通过解析机器人的结构和关节参数&#xff0c;以及给定的关节角度&#xff0c;来计算机器人的末端执行器的位置和姿态。 机器人正运动学算法通常使用DH&#xff08;Denavit-Hartenberg&…...

MySQL 约束 (constraint)

文章目录 约束&#xff08;constraint)列级约束和表级约束给约束起名字&#xff08;constraint)非空约束&#xff08;no null)检查约束&#xff08;check)唯一性约束 (unique)主键约束 (primary key)主键分类单一主键复合主键主键自增 &#xff08;auto_increment) 外键约束外什…...

用python程序发送文件(python实例二十六)

目录 1.认识Python 2.环境与工具 2.1 python环境 2.2 Visual Studio Code编译 3.文件上传 3.1 代码构思 3.2 服务端代码 3.3 客户端代码 3.4 运行结果 4.总结 1.认识Python Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。 Python 的设计具…...

最新源支付系统源码 V7版全开源 免授权 附搭建教程

本文来自&#xff1a;最新源支付系统源码 V7版全开源 免授权 附搭建教程 - 源码1688 简介&#xff1a; 最新源支付系统源码_V7版全开源_免授权_附详细搭建教程_站长亲测 YPay是专为个人站长打造的聚合免签系统&#xff0c;拥有卓越的性能和丰富的功能。它采用全新轻量化的界面…...

HTML:lang属性作用

lang作用 用法常见语言代码优点示例结构效果说明分析HTML 基础结构导航栏内容部分总结 扩展 用法 HTML 文档级别: 在 <html> 标签上使用 lang 属性&#xff0c;指定整个文档的语言。 <!DOCTYPE html> <html lang"en"> <head><meta charse…...

Android SurfaceFlinger——纹理的绘制流程(二十八)

在系统开机动画的播放流程中,会从给定的资源文件中加载纹理数据并初始化一个 OpenGL 纹理对象,这里我们就来解析软件模拟纹理的绘制流程。 一、纹理概述 在 Android 的 SurfaceFlinger 系统组件中,纹理(Texture)是一个核心概念,特别是在涉及到图形渲染和显示的过程中。 …...

深入解析Memcached:C#中的应用与实战案例

目录 Memcached简介Memcached的特点Memcached的工作原理Memcached的应用场景Memcached的安装和配置Memcached与C#的集成 引入依赖配置Memcached客户端C#代码示例 存储数据读取数据删除数据深入解析Memcached 数据存储和过期策略分布式架构性能优化实战案例 缓存数据库查询结果实…...

keyring 库

目录 安装 keyring 基本用法 1. 设置密码 2. 获取密码 3. 删除密码 4. 返回当前使用的默认密钥环 5. 列出所有密码 支持的后端 keyring 是一个 Python 库&#xff0c;用于将敏感信息&#xff08;如密码&#xff09;安全地存储在操作系统的密码管理器中。它支持多种平台…...

[css3] 如何设置边框颜色渐变

div {border: 4px solid;border-image: linear-gradient(to right, #8f41e9, #578aef) 1; }参考&#xff1a; 5种CSS实现渐变色边框&#xff08;Gradient borders方法的汇总...

Redux +Toolkit 工具包快速入门

您将学到什么 如何设置并使用 Redux Toolkit 和 React-Redux 先决条件 熟悉ES6 语法和功能了解 React 术语&#xff1a;JSX、State、Function Components 、 Props和Hooks理解Redux 术语和概念 1、基本使用 1.1、安装 Redux Toolkit 和 React- Redux 将 Redux Toolkit 和 Rea…...