面试笔记-计网

489 阅读2分钟

计算机网络篇

http为什么是无状态的,401和403是什么意思

401表示发送的请求有需要认证的信息
403表示服务器理解用户的请求,但是拒绝该请求
http无状态表示的服务器不保留和用户连接的任何状态,上一次的请求对这次的请求没有任何影响,服务端也不会对客户端上一次的请求进行任何记录处理.

DNS协议

域名系统,将网址解析为IP地址。大致流程如下: 调用解析程序,并成为DNS的一个客户,把待解析的域名放在DNS请求报文中,以UDP数据用户报的形式发送给本地域名服务器,在本地域名服务器查找域名后,把对应的IP地址放在回答报文中返回,应用进程获得IP地址后即可进行通讯。

三握四挥

三次握手

开始时都为close状态。

第一次:客户端主动打开,向服务器发起连接请求,SYN=1,seq=x.此时客户状态为SYN-send,服务器为listen
第二次:服务器收到报文后,向客户端发送:ACK=1,SYN=1,seq=y,ack=x+1,此时客户端状态为listen,服务器为RCVD
第三次:客户端再次发送确认请求:ACK=1,seq=x+1,ack=y+1,此时客户端和服务器都为estab——lished

为什么三次握手:主要为了防止失效的请求报文段又传到了服务端 如果客户之前失效的报文段又传给了服务器,服务器再向客户端发起确认,如果是两次握手,那么服务器就会确认此时链接已经建立,但是客户端却不会对此确认发送确认报文,不传送数据,服务器还在一直等待,造成资源浪费

四次挥手

第一次:客户端向服务端发送请求释放连接的报文,再停止发送数据,主动关闭连接;此时客户端只能接收数据,不能在再发送数据
第二次:服务端收到客户端发来的请求报文后,向客户端发出确认报文,此时服务端到客户端的连接没有关闭,因为还要发送数据
第三次:服务端发送完数据后,向客户端发起请求释放连接报文
第四次:客户端收到服务端发来的请求后,向服务端发起确认

为什么等待2MSL(最长报文段寿命)
保证客户端发送的最后一个ACK报文段能够到达B 防止“已经失效的连接请求报文段”出现在本连接中