自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 操作系统 01

第三,划分内核态和用户态使操作系统内核和用户程序之间有明确的边界,有利于系统的模块化和维护。我们编写代码是存在一个静态文件中,通过编译后会生成二进制的可执行文件,当运行这个可执行文件后,它会被装载到内存中,接着CPU就会执行程序中的每一条指令,这个运行中的程序就被称为进程。在内核态下,CPU可以执行所有的指令和访问所有的硬件资源,这种模式下操作具有更高的权限,用于操作系统内核的运行。内核态的底层操作有内存管理、进程管理、设备驱动、系统调用等,这些涉及到操作系统的核心功能,需要较高的权限来执行。

2025-07-18 23:04:44 199

原创 学习网络15

SQL注入是当程序直接使用用户提供的输入作为SQL查询的一部分时,当用户输入错误的数据被用作数据库查询的一部分时程序没有对其进行验证和转义,就可能发生SQL注入。比如,一个用户输入了一个字符串来查找特定用户的信息,但程序将这个用户的输入直接用作SQL查询的一部分,而不考虑安全问题,那么攻击者可以利用这一点来执行他们的恶意SQL查询.get用于获取资源,参数通过URL拼接传递,暴露在请求URL中,安全性低,不适合传递敏感参数,具有可见性,长度有限,幂等(重复请求不会改变服务器状态)SQL注入问题是什么?

2025-07-16 23:02:53 266

原创 学习网络14

二、传输层攻击,攻击类型是SYN Flood攻击、连接数据攻击等,通过占用服务器的连接池资源,达到拒绝服务的目的。四、应用层攻击,攻击类型是DNS Flood攻击、HTTP Flood攻击、游戏假人攻击等,占用服务器的应用处理资源,极大消耗服务器处理性能,达到拒绝服务的目的。防范措施有:一、增强网络的基础设施,通过提升网络宽带、增加服务器的处理能力和承载能力来抵御攻击.二、使用防火墙和入侵检测系统,配置防火墙规则,限制不必要的流量,阻止可疑ip地址的流量入侵检测系统可以帮助及时发现并响应ddos攻击。

2025-07-15 23:07:18 381

原创 学习网络13

抓包进行排查,一、先确定是服务器的问题还是客户端的问题,先确认浏览器是否可以访问其他网站,如果不可以,说明是客户端网络自身的问题,如果可以,说明客户端网络是正常的。二、如果客户端网络没问题,就抓包确认DNS是否解析出了IP地址,如果没有解析出来,说明域名写错了,如果解析出来了,抓包确认有没有和服务端建立三次握手,如果成功建立三次握手,并且发送了http请求,就是没有显示页面,可以查看服务端的返回响应码,如果是404错误码,检查输入的url是否正确;网络层会将本地地址作为源地址,获取的IP地址作为目的地址。

2025-07-14 23:04:29 691

原创 学习网络12

在收到之前发送的数据的ACK后假设收到5个字节的数据的ACK,如果发送窗口的大小没有变化,则滑动窗口右移5个字节,因为有5个字节的数据被应答确认,接下来没有发送但总大小超过接收方处理的就会有5个字节变成可用窗口,后续也就可以发送这5个字节的数据。快速重传是当接收方发现丢了一个中间包的时候,发送三次前一个包的ACK,发送端就会快速地重传,不会等触发超时重传,TCP认为这种情况不严重,只丢了一部分,所以快速重传时的拥塞发生算法是cwnd=cwnd/2,ssthresh=cwnd,然后进入快速恢复算法。

2025-07-13 23:54:15 633

原创 学习网络11

流量控制:接收端处理数据的速度是有限的,如果发送端发送数据速度过快,会导致丢包。udp是不可靠传输,但基于udp的QUIC协议可以实现类似TCP的可靠性传输,http3就用了QUIC协议。UDP是一个包一个包的发送,是有边界的,但可能会丢包和乱序。QUIC可以使用向前纠错技术,在接收端修复部分丢失的数据,降低重传的需求,提高可靠性和传输效率。QUIC内置了拥塞机制,可以根据网络状况动态调整传输速率,避免网络拥塞和丢包,提高可靠性。QUIC有重传机制,可以确保丢失的数据包重新发送,从而提高数据传输的可靠性。

2025-07-12 22:24:57 374

原创 学习网络10

放客户端主动调用close函数后,会向服务端发送FIN报文,并进入到FIN_WAIT1状态。如果第一次挥手丢失了,客户端迟迟没有收到ACK确认报文的话,就会触发超时重传机制,重传FIN报文,若达到最大重传次数,则会等待一段时间,如果还是没有收到确认报文,客户端会直接进入到close状态,而服务端还是esdablished状态。当服务端收到客户端的FIN报文时,内核会回一个ACK应答报文,但此时服务端可能还有数据要发送,所以不会马上发送FIN报文,而是将发送FIN报文的控制权交给服务端应用程序。

2025-07-11 22:25:15 343

原创 学习网络9

当服务端在read数据时,最后会读到EOF,接着read()会返回0,此时,如果服务端应用程序有要发送的数据,就会发完数据后调用关闭连接的函数,如果没有要发送的数据,则会直接调用关闭连接的函数,然后向客户端发送一个FIN包,代表服务端不会再发送数据,之后进入LAST_ACK状态。第二次握手报文里有对客户端第一次握手的ACK确认报文,所以,当客户端迟迟没有收到第二次握手,客户端会认为可能是自己发送的SYN报文丢失了,也就是认为第一次握手没成功,于是客户端就会触发超时重传,重传SYN报文。TCP四次挥手过程?

2025-07-10 23:06:30 326

原创 学习网络8

第三次握手的ACK是对第二次握手的SYN的确认报文,若第三次握手丢失,服务端收不到这个确认报文,就会触发超时重传,重传SYN-ACK报文,也就是第二次握手。当客户端想和服务端建立tcp连接时,第一个发的就是SYN报文,随后客户端进入SYN_SENT状态。在这之后若客户端迟迟没有收到服务端的SYN-ACK报文,也就是第二次握手,就会触发超时重传机制,重传SYN报文,并且重传的SYN报文的序列号都是一样的。ACK为1时,[确认应答]的字段变为有效,tcp规定除了最初建立连接时的SYN包之外该位必须设置为1。

2025-07-09 22:45:04 208

原创 学习网络7

客户端会随机初始化序号,并将这个序号放在tcp首部的[序号]字段中,同时把SYN标志位置为1,表示SYN报文,并把第一个SYN报文发送给服务端,这个报文不包含应用层数据,表示向服务端发起链接,之后客户端处于SYN-sent状态。第三个原因是三次握手避免了资源浪费,如果只有两次握手,当客户端发送的SYN报文在网络中阻塞,客户端没有收到ACK报文,就会重新发送SYN,由于没有三次握手,服务端不清楚客户端是否收到了自己回复的ACK报文,所以服务端在收到一个SYN后就先主动建立一个连接,造成了不必要的资源浪费。

2025-07-08 22:59:20 845

原创 学习网络6

localStorage的数据仅在浏览器端存储数据,不会自动发送到服务器,因此,localStorage适合用于在同一域名下的不同页面之间共享数据。localStorage的存储容量较大,通常在几MB左右,因此存储大量数据时,localStorage更合适。JWT是无状态的令牌,不需要在服务器端存储会话信息,包含了所有必要的信息,如用户身份、权限等。客户端禁用cookie时,服务器无法把会话id发送给客户端,客户端也无法在后续请求中携带会话id返回给服务器,从而导致服务器无法识别用户会话。

2025-07-07 22:15:07 231

原创 学习网络5

session存储于服务器,拥有一个识别符号sessuonid,通常存放于cookie中,服务器收到cookie后,解析出sessionid,再去session列表中查找,才能找到相应的session,依赖cookie。http本身是无状态的,但可以通过一些机制来实现状态保持,常见的方式是使用cookie和session跟踪用户状态,通过在客户端存储会话或状态信息,服务器可以识别和跟踪特定用户的状态,以此提供一定程度的状态保持。cookie是http协议簇的一部分,那为什么还说http是无状态的?

2025-07-05 22:27:22 219

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除