1. HTTP和HTTPS的区别,介绍一下SSL如何提供了安全性
HTTPS=HTTP+SSL。
SSL通过身份认证和数据加密的方式提供通信的安全。
身份认证:通过证书,验证服务器和客户的身份。
数据加密:采用混合加密方式。非对称算法用来加密对称算法的密钥,对称算法用来加密数据。
通信过程:
- 客户端发起HTTPS请求
客户端向服务端发送https请求,同时发送自己支持的加密协议版本信息,并发送自己的证书信息,表明自己不是恶意用户。 - 服务端的配置
服务端确认客户端的身份后,根据客户端支持的协议选择合适的加密方式。(比如:公钥加密算法选择RSA,对称加密算法选择SM4) - 传送证书
服务端向客户端发送由CA颁发的证书,表明身份。 一般证书中包含用户的公钥信息。 - 客户端解析证书
客户端验证公钥是否有效,确认服务端身份无误后,随机选择一个对称密钥。 - 传送对称密钥
用服务端的公钥加密选择的对称密钥后,发送给服务端。 - 服务端解密对称密钥
服务端用自己的私钥解密出对称密钥后,把要传送的数据通过对称密钥进行加密。 - 传输加密后的数据
服务端将密文传送给客户端。 - 客户端解密数据
客户端用之前生成的私钥解密服务端传过来的数据,获取解密后的内容。
2. Linux交换分区
SWAP就是LINUX下的虚拟内存分区,它的作用是在物理内存使用完之后,将磁盘空间(也就是SWAP分区)虚拟成内存来使用。它和Windows系统的交换文件作用类似,但是它是一段连续的磁盘空间,并且对用户不可见。
3. 硬链接和软链接的区别
硬链接:(属性以-
开头)新建文件是原文件的一个别名,除非链接个数为0,否则无法删除原文件,删除原文件的操作仅删除了它的原名,调用别名仍可使用文件。
软链接:(属性以l
开头)新建的文件以“路径”的形式来表示另一个文件,删除原文件后,软链接指向不存在的文件。
4. 僵尸进程
该进程本应该已经执行完毕,但是该进程的父进程却无法完整的将该进程结束掉,而造成该进程一直存在于内存中。
同类知识补充:
守护进程就是通常讲Daemon进程,是linux后台执行的一种服务进程,特点是独立于控制终端、周期性地执行某种任务或等待处理某些发生事件,不会随终端关闭而停止,直到接受停止信息才会结束,且一般采用以d结尾的名字。
linux后台的一些系统服务进程,没有控制终端,不能直接和用户交互,不受用户登录、注销的影响,一直在运行着,他们都是守护进程。
5. 进程通信的方式
管道
信号
消息队列
共享内存
信号量
socket
6. 多进程了解吗
不了解,没有继续问。
7. 野指针
C语言中野指针是怎么产生的?
- 创建指针时未初始化;
- 释放内存后未将指针置空。
8. malloc和new区别
malloc 需手动分配内存,对应的释放函数为free
new 自动分配内存,对应的释放操作符为delete
9. 栈和队列的区别
栈:先进后出
队列:先进先出
10. DDOS攻击
什么是DDOS攻击:黑客利用大量主机向受害主机发送大量看似合法的网络包,从而造成网络阻塞或服务器资源耗尽从而把合法用户的网络包淹没,导致合法用户无法正常访问服务器的网络资源。
11. 交换机和路由器的区别
- 它们分别在计算机网络的哪一层工作:(提问)
交换机:数据链路层
路由器:网络层。
同类知识补充:
交换机 | 路由器 |
---|---|
负责局域网内部的通信 | 负责局域网与外网的通信 |
依据目的MAC转发数据帧 | 依据目的IP转发IP数据报 |
隔离冲突域,不隔离广播域 | 隔离广播域 |
交换机内有一张MAC表,里面存放着和它相连的所有设备的MAC地址,它会根据收到的数据帧的首部信息内的目的MAC地址在自己的表中查找,如果有就转发,如果没有就放弃。
冲突域:同一时间内只能有一台设备发送信息的范围。
一个站点向另一个站点(一对一的发送)发出信号,除目的站点外,有一些其它站点能收到这个信息,这些站点就构成一个冲突域,冲突域是基于第一层(物理层),相关的设备是集线器。
交换机可以隔离冲突域,这与交换机的工作方式有关。
当一个帧到达时,交换机会查找端口和MAC地址的映射表,如果有,则从某一端口发送出去。如果没有,则从非进入端口广播出去(交换机要通过广播自我学习局域网内的其它主机的MAC地址,因此不能隔离广播域)。更进一步,如果目标和源在同一端口,那么交换机则不做任何事,简单的丢掉这个帧而已。
广播域:如果站点发出一个广播信号,所有能接收收到这个信号的设备范围称为一个广播域。通常来说一个局域网就是一个广播域。
参考: