哈喽大家好,我是你们熟悉的 31 岁程序员小米,一个把面试题当“下饭综艺”研究的技术分享控!
最近,我在帮一个小师弟准备美团校招,他是一边泡着自习室,一边抓着我问各种八百年前的计算机网络知识。
他说:“小米哥,能不能不要再讲那么抽象的理论啦,我面试官一个问题‘TCP 和 UDP 有什么区别?’,我愣是背了三页书,还是被怼得一脸懵……”
我一听,哈哈,老毛病了——不是你不会,是你没故事!那今天,小米我就带大家,用讲故事的方式,把这个经典面试题:“TCP 和 UDP 有什么区别?各自应用场景又是啥?”讲得清清楚楚!
TCP 和 UDP 的“前世今生”
想象一下,如果网络世界是个江湖,那 TCP 和 UDP 就是两位走红多年的传说级人物,分别号称:
- TCP:传输可靠、稳如老狗、面面俱到的绅士派
- UDP:传输快捷、轻装上阵、不拘小节的快递侠
这两位都是“传输层”的高手,负责在“应用层”与“网络层”之间搬运数据。
你可以理解成:操作系统交给它们数据包,它们再打包打车,送往目标设备。这时候,它们的性格差异就来了!
TCP 是“老好人”,UDP 是“急性子”
TCP 是个“事儿妈”型选手,他送数据,流程大概是这样的:
"你好,请问你能收数据吗?"(三次握手)
"我开始送了啊,来来来,每一包你都给我签字确认一下哦~"
"咦你没签字?我再发一次哈!"
"好了,送完啦,我走咯,再见拜拜~"(四次挥手)
所以,TCP 的关键词是:
- 可靠传输
- 有连接(三次握手)
- 面向字节流
- 拥有流量控制和拥塞控制
而 UDP 呢?一看这流程就疯了:

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



