网络面试题(第一部分)

一、ARP工作原理

首先ARP工作在数据链路层,功能是将IP地址转换成MAC地址。例如主机A想向主机B发送消息,首先会查看自己ARP表中是否有主机B对应的MAC地址,如果有则按照ARP表中对应的MAC地址表发送,否则就以广播的形式发送数据包,来查询主机B的MAC地址。这个广播包包源IP地址、硬件地址、以及目的IP地址。收到这个广播包的人先查看目的IP是不是自己的IP如果不是就不理会,如果是就会向源地址发送自己MAC地址,主机A的ARP表就会记录这个MAC到自己的表中,如果一直没有回复则查询失败。

二、DNS工作原理

DNS功能是将域名转换成IP地址。用户A在浏览器输入域名,操作系统会先查看自己本地的DNS缓存,如果有则直接返回,否则会发送给本地的DNS服务器。本地的DNS服务器同样会先查看自己的缓存,如果有则直接返回,否则会向跟服务器发送递归查询。根域名服务器存储了顶级域名的DNS服务器信息,根域名返回顶级域的服务器IP地址。顶级域服务器记录个各个顶级域名,会将查到域名对应的IP返回给本地DNS服务器,本地DNS服务器会将IP地址缓存方便下次使用。

三、TCP三次握手四次挥手

三次握手:

客户端发送一个SYN数据包给服务端表示想要简历连接,客户端进入SYN_SEND状态。服务器接受到SYN数据包后回复一个SYN和ACK数据包给客户端,服务器进入SYN_RECV状态。客户端接收到SYN+ACK后回复一个ACK数据包,表示建立成功,客户端进入ESTABLISHED状态,表示双方可以传输数据。

四次挥手:

客户端不在想传输数据,会先发送一个带有FIN数据包给服务端,但是还能接受数据,客户端进入FIN_WAIT_1状态。服务端接收到客户端发送的FIN数据包会发送一个ACK给客户端,服务器进入CLOSE_WAIT状态,但是会继续发送数据。服务端传输完剩下的数据后会发送一个FIN数据包给客户端,服务器进入LAST_ACK状态。客户端接收到FIN包后会发送一个带有ACK标志的数据包给服务端,客户端进入TIME_WAIT状态,确保服务端收到ACK,最后断开连接。

四、TCP与UDP的区别

TCP UDP

连接

方式

面向连接,数据传输前先连接,通过三次握手 面向无连接,可以直接发送数据包
可靠性 可靠传输服务 不可靠
速率 速度较慢,延迟性较高,传输更加稳定 速度快没有其他开销

头部

大小

头部大小为20或40字节 头部为8字节

适用

场景

实用与可靠性要求较高的场景,邮件传输等 实时性要求较高的场景,视频通话等

其他

特性

提供流量控制等机制 最大努力交付

五、HTTP与HTTPS的区别

HTTP(超文本传输协议) HTTPS(安全超文本传输协议)
安全性 明文传输,有安全风险 加上SSL/TLS协议进行加密,安全性高

数据

传输

方式

默认使用80端口,无状态协议,请求独立 默认使用443端口,有身份验证
证书 不需要证书 需要证书
性能 性能交好 相对较低
场景 隐私保护较低的场景 在线支付、用户登录等

 六、OSI参考模型和TCP/IP参考模型

OSI参考模型 TCP/IP参考模型
会话层(RPC等) 应用层
表示层(SSL/TLS等)
应用层(HTTP/FTP/DNS/SMTP)
传输层(TCP/UDP) 传输层
网络层(IP/ICMP) 网络层
数据链路层(PPP) 网络接口层
物理层

七、HTTPS常见状态码(部分)

2 200请求成功、204成功不需要服务器返回
3 301永久重定向、302临时重定向
4 400客户端请求错误、401需要验证、403服务器拒绝、404找不到
5 500服务器执行时发生错误、502服务器网关错误、503服务器维护

 

你可能感兴趣的:(运维面试题,网络,运维开发)