一些计算机网络面试题

TCP建立连接和关闭连接的流程?每个流程的环节?

TCP是在传输层的协议,建立的是可靠传输

TCP在传输数据前建立连接是采用三次握手,关闭连接是四次挥手

三次握手:因为目前网络通讯是全双工的,那我假设浏览器端是A端,服务器端是B端,A端会向B端先传送SYN报文,携带初始化随机序号,B端向A端返回SYN+ACK报文,A端最后向B端返回ACK报文最终确定,这就是TCP的三次握手

四次挥手:A会给B发一个FIN结束报文,B给A发送ACK应答报文,A收到之后这个时候会有一个等待阶段,因为B端有一些数据可能还没有给A传输完,等到数据全部传输完成后,B会再给A发送一个FIN结束报文,A收到之后再发送给B一个ACK报文,这时候B就可以关闭了,A再等待2MSL时间后如果没有收到B重复发来的报文,也就关闭连接了

MSL是报文最大存活时间。等待时间是2MSL可能是网络中存在着来自发送方的数据报文,当这些报文被接收方处理后又会回给发送方,这样一来一回就是两倍msl

2MSL是在客户端接收到服务器端发来的FIN后发送ACK开始计时的,若ACK在第一个MSL内丢失,FIN可以在第二个MSL内重新发回给客户端,这时候就会重新计时

TCP如何保证其可靠传输

重传机制、滑动窗口、拥塞控制(基于网络情况决定发送分组的数量)、流量控制(保证发送速率和接受速率相匹配)

相关推荐
H13469489012 分钟前
华为服务器系统备份,想要备份华为服务器系统可以怎么操作?
运维·服务器·负载均衡
wangjun515924 分钟前
linux,物理机、虚拟机,同时内外网实现方案;物理机与虚拟机互通网络;
linux·服务器·网络
杰克崔29 分钟前
分析sys高问题的方法总结
linux·运维·服务器
Bruce-li__39 分钟前
深入理解Python asyncio:从入门到实战,掌握异步编程精髓
网络·数据库·python
self-discipline6341 小时前
【计网速通】计算机网络核心知识点与高频考点——数据链路层(二)
网络·网络协议·计算机网络
xyliiiiiL2 小时前
一文总结常见项目排查
java·服务器·数据库
叫醒你笛莎2 小时前
IGMP(Internet Group Management Protocol)与组播技术深度解析
网络
lulinhao2 小时前
HCIA/HCIP基础知识笔记汇总
网络·笔记
暴走的YH3 小时前
【网络协议】三次握手与四次挥手
网络·网络协议
刘若水3 小时前
Linux: 进程信号初识
linux·运维·服务器