裂舌⾯向字节流与⾯向报⽂的通俗解释
TCP⾯向字节流与UDP⾯向报⽂
之前对于tcp和udp只是记住了⼀个⾯向字节流,⼀个是⾯向报⽂的,但是并没有真正的理解,经过中间⼯作的压⼒中间不停的⾯试和笔试,现在终于对于这两个概念有了⼀个全新的认识。
曲周论坛通俗的解释:
樊字疗法
x抗体可以将tcp和upd看成不同公司的出租车,tcp这个公司的出租车司机(tcp头)在拉客的时候,⼀看来了⼀个乘客,可是⾃⼰车上还有三个位置,司机就会继续等,直到⾃⼰车上去同⼀个⽬的地的乘客坐满了才开车,因为tcp公司认为遵循Nagle算法可以提⾼效率,节省能源,从socket学校⾛出来三个团体的学⽣,每⼀个团体只有⼀个⼈,可能只要消耗⼀个tcp出租车。如果从socket学校出来了⼀个团队的学⽣,但是这个团队有6个学⽣,⼀号tcp出租车看看⾃⼰车上还有两个个空位置,就让这个团队的两个学⽣上车了,剩下的学⽣只能做下⼀辆车了。这也就造成了⼀个问题,⼀号出租车开到了城市中的⼀个⼩餐馆,餐馆⽼板并不知道他们四个学⽣是不是⼀个团队的,这也就是粘包粘包的问题。企业形象推广
udp公司的出租车与tcp公司的出租车不⼀样,udp公司有最新的科技,⾃⼰的车可以变⼤可以变⼩。只要有⼀个团队的⼈⾛过来,不管是⼀个⼈还是7个⼈,udp出租车都可以⼀次性给你送⾛(因为udp有核自动润滑系统
⼼科技,当然下层的ip层还是可能会分包的,这些我们不⽤管),不需要等待。到餐馆后,餐馆⽼板⼀看是udp公司的出租车,就知道这是⼀个团队的(也就是不会出现粘包粘包的问题)。
参考: