TCP协议数据读取

TCP协议的数据读取只能保证读取的数据是和发送的顺序相同,但是不能保证读取的数据是完整的,即A先后发送了a1,a2,a3数据给B;

B读取的时候可以确保读取的数据顺序也是a1,a2,a3【当然TCP内部可能会进一步将a1拆分为a11 a12..这样的来发送,B反正是会按顺序读取到数据就是了(用户层面)】

但是B读取数据后是可能只读取了a1和a2然后再次读取就是返回没有数据的,因为A的那边可能会将a3进行一个缓存啥的,等满了才真正发送;所以双方需要约定结束符;

原文地址:https://www.cnblogs.com/silentdoer/p/14857824.html