沒想到tcp “粘包” 的理解,最后是通過一個知乎下面的評論
https://www.zhihu.com/question/24598268
tcp是面向流的,不存在亂序問題
客戶端發(fā)送順序和服務(wù)端接受順序必然一致。
socket的send可以認(rèn)為是原子性的
大家平時說的所謂粘包,實際上是應(yīng)用層的分包。把流分割成一個個對上層協(xié)議有意義的包。這里上層協(xié)議的包和tcp協(xié)議中的包可不是一個概念。比如http協(xié)議基于tcp。那么我們把tcp收到的流分割成header,body等等,那么上層協(xié)議的包就是指那些完整的header,body。