利用NIO,ByteBuffer处理TCP长连接数据粘包的问题
问题:TCP 长连接会发生数据粘包 原因:IP层对数据进行了分包发送(就是说这个与发送端无关,接收端必须处理) TCP长连接发送数据是以数据流的方式传输。当然也并不是将整个数据一次发送。当然程序里面就是write一次就足够了。然而这个会被IP层进行分包发送,这样意味着数据并不是一次能接受完的。如果数据量不大(1.3kb~1.4kb)就有可能一次收完,能否一次接受完毕主要看当时网络的MTU值。如果 ...
问题:TCP 长连接会发生数据粘包 原因:IP层对数据进行了分包发送(就是说这个与发送端无关,接收端必须处理) TCP长连接发送数据是以数据流的方式传输。当然也并不是将整个数据一次发送。当然程序里面就是write一次就足够了。然而这个会被IP层进行分包发送,这样意味着数据并不是一次能接受完的。如果数据量不大(1.3kb~1.4kb)就有可能一次收完,能否一次接受完毕主要看当时网络的MTU值。如果 ...