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

计网week1+2

计网

一.概念

1.什么是Internet

节点:主机及其运行的应用程序、路由器、交换机
边:通信链路,接入网链路主机连接到互联网的链路,光纤、网输电缆
协议:对等层的实体之间通信要遵守的标准,规定了语法、语义、时序,TCP/IP协议

Internet是由一堆的网络通过网络互联设备连在一起的网络的网络,每个网络中都有节点、边、协议
从服务角度看:互联网是分布式的应用进程以及为分布式应用进程提供通信服务的基础设施

网络结构:网络边缘、网络核心、接入网或物理媒体

2.网络边缘

网络边缘包括主机和网络应用程序

主机与主机之间有两种传输模式:
①C/S(Client/Server)模式:客户端向服务器请求数据,如web浏览器
②P2P模式:很少(甚至)没有专门的服务器,P2P传输模式中,每个参与节点既可以作为客户端,也可以作为服务器
P2P模式就是为了解决C/S模式服务器负载高的问题

传输协议:
①TCP:多次握手,将不可靠的信息转为可靠的信息,有流量控制、拥塞控制,如Http、FTP
②UDP(用户数据协议):无连接、不可靠、无流量控制、拥塞控制、支持广播和多播,如流媒体、实时在线游戏

3.网络核心

网络核心包括分组交换机和链路

图片消失了

电路交换(也叫线路交换)中每个线路是独享的,每个呼叫建立起来就能保证性能
如果没有数据发送,被分配的资源就会浪费
电路交换通常被传统电话网络采用
电路交换中:网络资源(如带宽)被分为片,如果没有数据,则资源片处于空闲状态
具体的分法:

  1. 频分:按频率分,每个呼叫占用线路的一些频率
  2. 时分:每个呼叫占用一定时间的线路
  3. 波分:光通信中的频分,按电磁波的波长来分
  4. 码分

如果一个交换机宕机,所有呼叫都会中断
注意到,计算机的通信具有突发性,而线路交换的连接时间长,且会造成资源片的浪费,故不适合线路交换

分组交换:以分组为单位存储-转发方式
网络带宽资源不再分为一个个片,传输时使用全部带宽
主机之间的数据被分为一个个包,每个节点会完整接收这个包,然后发送给下一个节点

图片消失了

如果到达速率>链路的输出速率:分组将会排队,等待传输
如果路由器的缓存用完了,分组将会被抛弃,也就是丢包
这种分组方式实际上也是一种时分,叫统计多路复用

论证分组交换的共享性:
若链路通信速率为1Mbps,每个用户的通信速率为100kbps,有10%的时间是活跃的
对于电路交换: 1 M b p s 100 k b p s = 10 \frac{1Mbps}{100kbps} = 10 100kbps1Mbps=10,满足10人的通信
对于分组交换: 1 − Σ n = 0 9 C 35 10 ∗ 0. 1 n ∗ 0. 9 35 − n = 0.4 % 1 - \varSigma^9_{n=0} C^{10}_{35}*0.1^n*0.9^{35-n} = 0.4\% 1Σn=09C35100.1n0.935n=0.4%,35人通信只有0.4%的概率产生排队
由于特殊原因,流量强度不能为1,所以只能9个人同时通信

分组交换网络按有无网络层的连接,分为数据报网络和虚电路网络
数据报网络是一种在网络层提供无连接服务的计算机网络,数据报网络中每个数据分组(称为数据报)都独立地在网络中传输,并且每个分组都携带完整的目的地址
虚电路网络是一种在分组交换通信中提供的面向连接的通信服务。在两个节点或应用进程之间建立起一个逻辑上的连接或虚电路后,就可以依次发送分组,并且接收端收到分组的顺序与发送端的发送顺序一致
数据报的工作原理:数据报在通信之前无须建立连接,每一个分组都有独立路由,路由器根据分组的目标地址进行路由

图片消失了

4.接入网和物理媒体

住宅接入:modem(调制解调器,俗称猫)
最早是将上网数据调制(modulate)在音频信号上,用电话线传输,在局端中将其的数据解调(demodulate)出来
具体方式:用户的数据通过猫调制成特殊音频,通过电话线传输到交换器,交换器前会有一个猫将音频解调成数据
但是这样就不能同时上网和打电话

接入网:digital subscriber line(DSL)
在电话线的基础上,将上网数据分布在更高的音频,并将DSL的数据分开,一部分接入电话网,一部分接入互联网
DSL的上下行的带宽的划分是不对称的,一般下行的大一些,如果是对称的,那就叫ADSL

线缆网络,形式与DSL类似,不过是通过电视的线缆
线缆和光纤网络将整个家庭用户接入到ISP路由器
各用户共享到线缆头端的接入网络
还有用电力线接入互联网,不过我国比较少

企业接入网络:通过交换机的积累,将企业的网络一步步接入互联网
目前企业用的大多是10Gbps的网,而家庭用的是1Gbps的网

无线接入网络:
无线LANs:在建筑物内部可用
广域无线接入:由电信运营商提供

物理媒体

导引型媒体:电缆、光纤、同轴电缆
非导引型媒体:无线电
同轴电缆:中间有铜芯,外面有铜网,形成一个同轴
无线链路类型:地面微波、LAN、wide-area、卫星

5.互联网结构和ISP

ISPs(Internet Service Providers)互联网服务提供商
端系统通过ISPs接入到互联网

图片消失了

ICP(Internet Cotent Providers)内容供应商
例如谷歌,它会在全球建立自己的专网,以减少成本,其形式类似与ISPs

互联网结构:

图片消失了 图片消失了

IXP:Internet exchange point,网络交换点
tier 1 ISP:国家或者国际范围的覆盖,点少但单宽高,如美国的BBN
tier 2 ISP = regional ISP:区域型的ISP
local ISP = access net:接入网,与端系统最近

ISP之间的连接:

  1. POP:高层面向底层的接入点
  2. 对等接入:2个ISP互接,不涉及费用结算
  3. IXP:多个对等ISP互联互通
  4. ICP自己部署专用网络,同时和各级ISP连接

6.分组延迟、丢失和吞吐量

四种分组延迟:

  1. 节点处理延时:检查bit级差错,检查分组首部决定分组导向何处,微秒级
  2. 排队延时:取决于路由器的拥塞程度
  3. 传输延时:R=链路带宽,L=分组长度,延时=L/R,微秒到毫秒级
  4. 传播延时:d=物理链路的长度,s=在媒体上的传播速度,延时=d/s。几微秒到几百毫秒级

R=链路带宽,L=分组长度,a=分组到达队列的平均速率
流量强度 = L a R 流量强度 = \frac{La}{R} 流量强度=RLa
由于数据包的到达是随机的,因此即使平均到达速率等于传输速率,仍然可能出现瞬时到达速率超过传输速率的情况。这将导致数据包在队列中等待,从而增加排队延迟。当流量强度趋近于1时,排队延迟会趋于无限大,因为任何微小的到达速率波动都可能导致队列长度的显著增加

Traceroute诊断程序:提供从源端,经过路由器,到目的地的延时测量
原理:包的head部分和body部分之间有一个TTL(生存时间),每过一个路由器TTL-1,当TTL=0时会被打回,诊断程序就靠发送TTL为特定数字的包然后等待打回,然后计算延时
实际上是利用了ICMP协议,ICMP(Internet Control Message Protocol)是互联网控制消息协议,是TCP/IP协议族中的一个子协议。ICMP协议定义了错误报告和其他回送给源节点的关于IP数据包处理情况的消息

分组丢失:链路的队列缓冲区容量有限,超出容量的就会丢失,丢失的包可能由上一个节点后者端系统重传,或者不重传

吞吐量:在源端和目标端之间传输的速率(数据量/单位时间)
瓶颈链路:端到端路径上,限制吞吐的链路

7.协议层次和服务模型

服务:底层实体向上层实体提供通信的能力
原语:上层使用下层服务的形式
服务访问点(Services Access Point):使用下层提供的服务通过层间的接口地点,用于区分这个数据应该交给哪个上层实体

服务类型:

  1. 无连接的服务:对等实体之间不需要握手就通信,不可靠
  2. 面向连接的服务:需要握手

数据单元(DU):

图片消失了

意思是下层的SDU传到上一层时会将head和body分开,head叫ICI,body叫SDU
如果SDU过大,会分成好几个部分,如果过小,会将好几个SDU合成为一个

协议栈(从下到上):

  1. 物理层:在线路上传输bit
  2. 链路层:相邻网络节点间的数据传输,协议:点对对协议PPP,802.11(wifi)
  3. 网络层:为数据报从源到目的选择路由,不可靠,协议:IP、路由协议
  4. 传输层:主机之间的传输,在网络层的基础上,细分为进程到进程,将不可靠的转为可靠的,协议:TCP、UDP
  5. 应用层:网络应用

ISO/OSI参考模型:在传输层和应用层之间加了表示层:允许应用解释传输的数据,和会话层:数据交换的同步、检查点、恢复
协议栈中这两层是在应用层实现的

图片消失了

H表示头部
物理层的数据单元叫位(bit)
链路层的数据单元叫帧(frame)
网络层的数据单元叫数据报(datagram)
传输层的数据单元叫报文段(segment)
应用层的数据单元叫报文(message)

二.应用层

1.原理

可能的应用架构:C/S、P2P、混合体
混合体:如Napster,文件搜索是集中在服务器上的,文件传输是通过P2P的

进程通信:在同一个主机内,使用进程间通信机制进行通信,不同主机之间,通过交换报文来通信
分布式进程通信需要解决的问题及其方法:
①进程标识和寻址:SAP,由主机的32位的IP地址、传输层协议、端口号组成的数字
本质上,一对主机进程之间的通信由2个端节点构成
②需要穿过层间的信息:要传输的数据(SDU)、谁传的(SAP)、传给谁(SAP)
传输层实体根据这些信息进行TCP(UDP)报文段的封装
如果Socket API每次传输报文都携带如此多的信息,容易出错
可以用代号标识通信的双方或者单方:socket(套接字)
TCP socket:4元组(源IP,源端口,目标IP,目标端口)
对于使用面向连接服务(TCP)的应用而言,套接字是4元组的一个具有本地意义的标识
UDP socket:2元组(本IP,本端口),因为两个进程之间的通信建立之前无需建立连接
但是传输报文时,必须提供对方的IP、端口
接受报文时,传输层需要上传对方的IP、端口
③如何使用传输层提供的服务实现应用:定义应用层协议:报文格式、解释、时序,编制程序
应用层协议:定义了运行在不同端系统上的应用进程如何相互交换报文
④应用层需要传输层提供怎样的服务:数据丢失率、吞吐、延迟、安全性
传输层提供的服务:TCP服务(可靠)、UDP服务(不可靠)
安全TCP:TCP和UDP都没有加密,所有传输过去的数据都是明文
所以有了一个在TCP上实现的SSL,可以加密数据再传输,比如:https

套接字 socket

进程向套接字发送报文或从套接字接收报文
套接字<==>门户

2.Web和HTTP

Web页:由一些对象组成
URL格式:协议名://用户:口令@主机名/路径名:端口
HTTP:超文本传输协议
传输过程:

  1. 客户端向服务器发送TCP连接,端口为80
  2. 服务器接受客户端的TCP连接
  3. 在浏览器与Web服务器交换HTTP报文
  4. TCP连接关闭

现在的HTTP是无状态的,就是说服务器不维护客户端的任何信息
非持久HTTP:最多只有一个对象在TCP连接上发送,HTTP/1.0默认使用非持久连接
持久HTTP:多个对象可以在一个TCP连接上传输,HTTP/1.1默认使用持久连接
响应时间模型:2RTT+传输时间,RTT(往返时间)
非持久HTTP的缺点:每个对象要2个RTT,操作系统必须为每个TCP连接分配资源
持久HTTP又分为流水式和非流水式
非流水式的持久HTTP每个引用对象花费一个RTT
流水方式的持久HTTP每遇到一个引用对象就立即产生一个请求,是HTTP/1.1的默认模式

HTTP的请求报文有两种:请求和响应

图片消失了

Post方式:网页通常也包括表单输入,包含在body中
URL方式:方法:GET,包含在URL中

cookies:维护状态,用于记住你是谁,以文本形式存储在主机中
cookies有4个部分:

  1. 在HTTP响应报文中有一个cookie的首部行
  2. 在HTTP请求报文中有个cookie的首部行
  3. 在用户端系统中保留有一个cookie文件,由用户的浏览器管理
  4. 在Web站点由一个后端数据库

Web缓存(代理服务器),让用户不用访问原始服务器就满足用户的需求
代理服务器也叫proxy server
通常缓存是由ISP安装(大学、公司、居民区ISP)

图片消失了

如果有proxy,假设缓存能满足的占40%,剩下要请求原服务器,那平均延迟为1.2s

条件GET方法:在head中加上If-modified-since:
作用:如果缓存中的对象是最新的,则不发送对象

3.EMail

3个主要组成部分:用户代理、邮件服务器、简单邮件传输协议:SMTP
用户代理:又名"邮件阅读器",如Outlook,输出输入邮件保存在服务器上
邮件服务器:输出报文队列保持发送邮件报文
邮件服务器之间的SMTP报文:发送email报文

图片消失了

SMTP规定的传输的3个阶段:握手、传输报文、关闭
报文必须为7为ASCII码
SMTP要求持久连接
SMTP服务器使用的CRLF.CRLF决定报文的尾部

图片消失了

邮件报文格式:
RFC 822:文本报文的标准:
首部行:To、From、Subject
主体:报文

MIME:多媒体邮件拓展,在报文首部用额外的行申明MIME内容类型,用于将非ASCII内容附加到电子邮件中

POP3:邮局协议,是一种用于从邮件服务器检索电子邮件至本地客户端应用程序的应用层通信协议,POP3在会话中是无状态的(本地管理文件夹)
IMAP:互联网消息访问协议,是一种用于从邮件服务器上获取电子邮件的协议,IMAP在会话过程中保留用户状态(远程管理文件夹)

4.DNS

Domain Name System:域名系统
DNS的必要性:IP地址不好记忆,所以用与IP一一对应的DNS来方便记忆
DNS域名结构:
采用树状命名的方式
根被划分为数百个顶级域:如通用的:.com、.net、.org,如国家的:.cn、.us、.jp
每个顶级域下面可划分为若干个子域,子域又可以继续划分,直到主机
所以主机就是树叶

图片消失了

域名的管理:一个域管理其下的子域
.jp被划分为ac.jp、co.jp
.cn被划分为edu.cn、com.cn
创建一个新的域,必须征得它所在域的同意
域与物理网络无关,域的划分是逻辑的,而非物理的

区域(zone):将DNS的名字空间划分为互不相交的区域,这个区域就是zone,每个zone都是树的一部分
区域的划分由区域管理者自己决定
每个区域都有一个名字服务器,维护所在区域的权威信息
名字服务器允许被放置在区域外
权威DNS服务器:组织机构的DNS服务器,名字服务器的一部分,提供组织机构服务器可访问的主机和IP之间的映射
组织机构可以选择自己维护或某个服务提供商来维护
顶级域(TLD)服务器:负责顶级域名和所有国家的顶级域名

区域名字服务器维护资源记录:
资源记录:维护域名和IP的映射关系
RR格式:(域名, ttl, type, class, value)
ttl:生存时间
class:类别,对于Internet,值为IN
value:可以是数字,域名或者ASCII串
type:资源记录的类型

图片消失了

本地名字服务器:并不严格属于层次结构,每个ISP都有一个本地DNS服务器
当一个主机发送一个DNS查询请求时,查询会被送到本地DNS服务器
一旦名字服务器学到了一个映射,就会将其缓存起来,如果一段时间内没人用就会删除(解决方案:ttl,默认2天)
DNS大致工作过程:

  1. 应用调用解析器
  2. 解析器作为客户向名字服务器发送查询报文(udp)
  3. 名字服务器查询缓存,若有缓存则返回响应报文
  4. 若无,分为递归查询和迭代查询两种
  5. 递归查询:本地DNS服务器向根发送请求,根向下发送请求,最后从目标再一层层返回响应报文,缺点:根服务器负担重
  6. 由本地DNS服务器依次向根、根的下一级、一直到目标所在的本地DNS服务器发送请求,最后返回响应报文
图片消失了 图片消失了

DNS协议:查询和响应报文的格式相同,报文首部包含是查询/响应,是否希望递归,应答是否为权威

新增一个域:在上级域的名字服务器中增加指向新增域的子域的域名和域名服务器的地址,要到注册登记机构注册域名

攻击DNS:
DDoS攻击:向服务器进行流量轰炸,发送大量ping,对根服务器没用,对TLD服务器效果一般
重定向攻击:截获查询,伪造问答或者发送伪造的应答给DNS服务器,希望能缓存这个假的结果。这个技术上比较困难

相关文章:

计网week1+2

计网 一.概念 1.什么是Internet 节点&#xff1a;主机及其运行的应用程序、路由器、交换机 边&#xff1a;通信链路&#xff0c;接入网链路主机连接到互联网的链路&#xff0c;光纤、网输电缆 协议&#xff1a;对等层的实体之间通信要遵守的标准&#xff0c;规定了语法、语义…...

重定向与缓冲区

4种重定向 我们有如下的代码&#xff1a; #include <stdio.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <unistd.h> #include <string.h>#define FILE_NAME "log.txt"int main() {close(1)…...

练习题 - Django 4.x File 文件上传使用示例和配置方法

在现代的 web 应用开发中,文件上传是一个常见的功能,无论是用户上传头像、上传文档,还是其他类型的文件,处理文件上传都是开发者必须掌握的技能之一。Django 作为一个流行的 Python web 框架,提供了便捷的文件上传功能和配置方法。学习如何在 Django 中实现文件上传,不仅…...

[VSCode] vscode下载安装及安装中文插件详解(附下载链接)

VSCode 是一款由微软开发且跨平台的免费源代码编辑器&#xff1b;该软件支持语法高亮、代码自动补全、代码重构、查看定义功能&#xff0c;并且内置了命令行工具和Git版本控制系统。 下载链接&#xff1a;https://pan.quark.cn/s/3a90aef4b645 提取码&#xff1a;NFy5 通过上面…...

JVM常见知识点

在《深入理解Java虚拟机》一书中&#xff0c;介绍了JVM的相关特性。 1、JVM的内存区域划分 在真实的操作系统中&#xff0c;对于地址空间进行了分区域的设计&#xff0c;由于JVM是仿照真实的机器进行设计的&#xff0c;那么也进行了分区域的设计。核心区域有四个&#xff0c;…...

深入探索 Vue 3 Markdown 编辑器:高级功能与实现

目录 1. 为什么选择 Markdown 编辑器&#xff1f;2. 选择合适的 Markdown 编辑器3. 安装与基本配置安装 配置 Markdown 编辑器代码说明 4. 高级功能实现4.1 实时预览与双向绑定4.2 插入图片和图像上传安装图像上传插件配置图像上传插件 4.3 数学公式支持安装 KaTeX配置 KaTeX 插…...

vscode无法格式化go代码的问题

CTRLshiftp 点击Go:Install/Update Tools 点击全选&#xff0c;OK&#xff01;...

《Java程序设计》课程考核试卷

一、单项选择题&#xff08;本大题共10个小题&#xff0c;每小题2分&#xff0c;共20分&#xff09; 1.下列用来编译Java源文件为字节码文件的工具是&#xff08; &#xff09;。 A.java B.javadoc C.jar D.javac 2…...

one-hot (独热编码)

一、目的 假设我们现在需要对猫、 狗、 人这三个类别进行分类。 若以 0 代表猫&#xff0c; 以 1 代表狗&#xff0c; 以 2 代表人&#xff0c;会发现那么猫和狗之间距离为 1&#xff0c; 狗和人之间距离为 1&#xff0c; 而猫和人之间距离为 2。 假设真实标签是猫&#xff0…...

寒假1.23

题解 web&#xff1a;[极客大挑战 2019]Secret File&#xff08;文件包含漏洞&#xff09; 打开链接是一个普通的文字界面 查看一下源代码 发现一个链接&#xff0c;点进去看看 再点一次看看&#xff0c;没什么用 仔细看&#xff0c;有一个问题&#xff0c;当点击./action.ph…...

unity 粒子系统设置触发

1、勾选Triggers选项 2、将作为触发器的物体拉入队列当中&#xff0c;物体上必须挂载collider 3、将想要触发的方式&#xff08;Inide、Outside、Enter和Exit&#xff09;选择为”Callback“&#xff0c;其他默认为”Ignore“ 4、Collider Query Mode 设置为All&#xff1a…...

【C++】类和对象(五)

1、初始化列表 作用&#xff1a;C提供了初始化列表语法&#xff0c;用来初始化属性。 语法&#xff1a; 构造函数&#xff08;&#xff09;&#xff1a;属性1&#xff08;值1&#xff09;&#xff0c;属性2&#xff08;值2&#xff09;...{}示例&#xff1a; #include<i…...

超分辨率体积重建实现术前前列腺MRI和大病理切片组织病理学图像的3D配准

摘要: 磁共振成像(MRI)在前列腺癌诊断和治疗中的应用正在迅速增加。然而,在MRI上识别癌症的存在和范围仍然具有挑战性,导致即使是专家放射科医生在检测结果上也存在高度变异性。提高MRI上的癌症检测能力对于减少这种变异性并最大化MRI的临床效用至关重要。迄今为止,这种改…...

第13章 深入volatile关键字(Java高并发编程详解:多线程与系统设计)

1.并发编程的三个重要特性 并发编程有三个至关重要的特性&#xff0c;分别是原子性、有序性和可见性 1.1 原子性 所谓原子性是指在一次的操作或者多次操作中&#xff0c;要么所有的操作全部都得到了执行并 且不会受到任何因素的干扰而中断&#xff0c;要么所有的操作都不执行…...

[STM32 标准库]定时器输出PWM配置流程 PWM模式解析

前言&#xff1a; 本文内容基本来自江协&#xff0c;整理起来方便日后开发使用。MCU&#xff1a;STM32F103C8T6。 一、配置流程 1、开启GPIO&#xff0c;TIM的时钟 /*开启时钟*/RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE); //开启TIM2的时钟RCC_APB2PeriphClockC…...

web3py+flask+ganache的智能合约教育平台

最近在学习web3的接口文档&#xff0c;使用web3pyflaskganache写了一个简易的智能合约教育平台&#xff0c;语言用的是python&#xff0c;ganche直接使用的本地区块链网络&#xff0c;用web3py进行交互。 代码逻辑不难&#xff0c;可以私信或者到我的闲鱼号夏沫mds获取我的代码…...

< OS 有关 > 阿里云:轻量应用服务器 的使用 :轻量化 阿里云 vpm 主机

原因&#xff1a; &#xff1c; OS 有关 &#xff1e; 阿里云&#xff1a;轻量应用服务器 的使用 &#xff1a;从新开始 配置 SSH 主机名 DNS Tailscale 更新OS安装包 最主要是 清除阿里云客户端这个性能杀手-CSDN博客 防止 I/O 祸害系统 操作&#xff1a; 查看进程&#x…...

【技术】TensorRT 10.7 安装指南(Ubuntu22.04)

原文链接&#xff1a;https://mengwoods.github.io/post/tech/008-tensorrt-installation/ 本文安装的版本如下&#xff1a; Ubuntu 22.04 Nvidia Driver 538.78 CUDA 12.2 cuDNN 8.9.7 TensorRT 10.7 安装前的准备&#xff08;可选&#xff09; 在安装新版本之前&#xf…...

Linux 权限管理

hello&#xff01;这里是敲代码的小董&#xff0c;很荣幸您阅读此文&#xff0c;本文只是自己在学习Linux过程中的笔记&#xff0c;如有不足&#xff0c;期待您的评论指点和关注&#xff0c;欢迎欢迎~~ ✨✨个人主页&#xff1a;敲代码的小董 &#x1f497;&#x1f497;系列专…...

8.2 从看图识字到智能解读:GPT-4 with Vision 开启多模态 AI 新纪元

从看图识字到智能解读:GPT-4 with Vision 开启多模态 AI 新纪元 引言:AI 的多模态跃迁 随着人工智能技术的快速发展,我们正迈入一个新的智能交互时代。传统的 AI 模型主要聚焦于文本处理,而多模态 AI 模型如 GPT-4 with Vision(GPT-4V) 则能够同时处理图像和文本。GPT-4…...

差分轮算法-两个轮子计算速度的方法-阿克曼四轮小车计算方法

四轮驱小车的话&#xff1a; 转向角度计算方法&#xff1a;float turning_angle z_angular / x_linear; // 转向角度&#xff0c;单位为弧度 速度的话直接用线速度 两轮驱动小车&#xff1a; 计算公式&#xff1a; leftSpeed x_linear - z_angular * ORIGINBOT_WHEEL_TRACK /…...

使用.NET 8构建高效的时间日期帮助类

使用.NET 8构建高效的时间日期帮助类 在现代Web应用程序中&#xff0c;处理日期和时间是一个常见的需求。无论是记录日志、生成报告还是进行数据分析&#xff0c;正确处理日期和时间对于确保数据的准确性和一致性至关重要。本文将详细介绍如何使用ASP.NET Core和C#构建一个高效…...

学习std::is_base_of笔记

1、std::is_base_of简介 在现代 C 中&#xff0c;模板元编程&#xff08;Template Metaprogramming&#xff09;是一种非常强大的编程技巧&#xff0c;它让我们能够在编译期进行类型推导和约束。而 std::is_base_of 是一个重要的工具&#xff0c;可以用来检查一个类型是否是另…...

第 25 场 蓝桥月赛

3.过年【算法赛】 - 蓝桥云课 问题描述 蓝桥村的村民们正准备迎接新年。他们计划宰杀 N 头猪&#xff0c;以庆祝一整年的辛勤劳作和丰收。每头猪的初始位置位于下标 xi​&#xff0c;所有 xi​ 均为偶数&#xff0c;保证没有两头猪初始位置相同。 当猪意识到人类打算宰杀它们…...

【设计模式-行为型】访问者模式

一、什么是访问者模式 说起来访问者模式&#xff0c;其实很少用。我一直在思考该用什么样的例子把这个设计模式表述清晰&#xff0c;最近突然想到一个例子也许他就是访问者。港片有过很辉煌的年代&#xff0c;小的时候一直在看港片觉得拍的非常好&#xff0c;而且演员的演技也在…...

无人机微波图像传输数据链技术详解

无人机微波图像传输数据链技术是无人机通信系统中的关键组成部分&#xff0c;它确保了无人机与地面站之间高效、可靠的图像数据传输。以下是对该技术的详细解析&#xff1a; 一、技术原理 无人机微波图像传输数据链主要基于微波通信技术实现。在数据链路中&#xff0c;图像数…...

SpringCloud系列教程:微服务的未来(十七)监听Nacos配置变更、更新路由、实现动态路由

前言 在微服务架构中&#xff0c;API 网关是各个服务之间的入口点&#xff0c;承担着路由、负载均衡、安全认证等重要功能。为了实现动态的路由配置管理&#xff0c;通常需要通过中心化的配置管理系统来实现灵活的路由更新&#xff0c;而无需重启网关服务。Nacos 作为一个开源…...

【QT】 控件 -- 显示类

&#x1f525; 目录 [TOC]( &#x1f525; 目录) 1. 前言 2. 显示类控件2.1 Label 1、显示不同文本2、显示图片3、文本对齐、自动换行、缩进、边距4、设置伙伴 3.2 LCD Number 3.3 ProgressBar 3.4 Calendar Widget 3. 共勉 &#x1f525; 1. 前言 之前我在上一篇文章【QT】…...

反馈驱动、上下文学习、多语言检索增强等 | Big Model Weekly 第55期

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入&#xff01; 01 A Bayesian Approach to Harnessing the Power of LLMs in Authorship Attribution 传统方法严重依赖手动特征&#xff0c;无法捕捉长距离相关性&#xff0c;限制了其有效性。最近的研究利用预训练语言模型的…...

CF 41A.Translation(Java实现)

题目分析 根据示例千言万语一句话&#xff0c;reverse 思路分析 将读取的值分ab&#xff0c;再将b.reverse和a比较&#xff0c;一样就YES 代码 import java.util.*;public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in);String …...