网络通信中,数据包是定长好还是不定长好?
zj510 2004-09-23 07:45:50 我现在的程序,除了三种情况,数据量比较大,其他的都是一些小包。
我以前都是用定长数据包做的。
但是现在好像感觉不太适用。
因为大多数的情况数据量比较小,每次都发那么大的数据,好像浪费资源了。
所以考虑用不定长方式,
这样问题就来了,接收端怎么知道发过来的数据包有多长,
如果接收长度添的长了,那么可能收了两个数据包,
如果短了,可能收到的数据包不完整。
怎么做好呢?
是不是一定要事先发一个包头,来通知对方,然后对方再根据包头中的长度来recv数据?
有没有更好的方法?