网络编程面试

 

 

TCP和UDP的区别

TCP是面向连接的,传输前需要建立连接。UDP传输前不需要建立连接

TCP仅支持一对一,UDP支持点对点,一对多,多对一

TCP是面向字节流,UDP面向数据报

TCP是可靠的,UDP是不可靠的

TCP首部开销大于UDP,TCP首部开销最少20字节,UDP只需要8字节

 

TCP有三次握手机制和四次挥手机制,还有超时重传、拥塞控制

TCP采用了优化算法(Nagle算法),将多次间隔较小、数据量较小的数据合并程一个数据量大的数据块进行封包

TCP粘包是指发送方发送的若干包数据到达接收方时粘成了一包,从接收缓冲区来看,后一包数据的头紧接着前一包数据的尾,出现粘包有可能来自发送方,也可能来自接收方

TCP接收到数据包时,并不会马上交到应用层处理,将接收到的数据包保存在接收缓存里,如果TCP接收数据包到缓存的速度大于应用程序

主动关闭方在收到被动关闭方的FIN包后并返回ACK后,会进入TIME_WAIT状态,TIME_WAIT状态又称2MSL状态,超过这个时间的报文段将被丢弃

 

posted @ 2023-07-27 16:02  言午丶  阅读(6)  评论(0编辑  收藏  举报