TCP问题 发送端每次发送数据大小不定(几个字节到几K字节),频率不定(可能连续发送好几个包,且每个包大小也不定;也可能很久发送一个包)。但要求每次发送的数据包在接收端独立(也就是接受到的包应该和发送的包内容一致,否则就会出错)。 但是TCP发送时要进行包的重新组合,使得接收端数据包和发送端不一致。请问怎么解决这个问题?让我能够按照发送端的包的内容收到发送的包 ? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 放心不会出错。socket在IP层有自己的分片,你不用操心,如果不一致肯定是其它原因,我一次发送过20M,都没问题。send大包不成功可能是你接收缓冲池太小,导致传输太慢。 那你自己在包头定义一些协议不就ok,比如发送将组装包头为:ip地址,包id号,等 原来你想区分包。如果你发送每个包时都创建一个socket进行connect,而接受时也新建一个socket来接受,那么一个socket就只会收到一个包了。我用多线程发送时就用这个方法,不过这样发送小数据时显得代价较高。如果都是使用一个socket来发送,那你只能自己加一些辅助信息加以区分。比如加上同步字啊,长度等信息加以区分了。 谢谢!我主要是考虑多了。我担心TCP也有出错,所以弄得很复杂。如果把TCP看成绝对不出错的协议,就简单了。只要每个包指定包的大小就可以了。 如果TCP都出错,那他还叫国际安全协议吗?:) 用CreateEx创建的带资源的子窗口,为什么里面的控件不显示! 大家还过得好吗? 发不出帖子了 谁有MapInfo的.mif文件格式的说明文件,我不认识E文 我用手动添加控件怎么行不通? 求救!!怎么能够访问一些受限制的站点 请教:关于XP风格的菜单的问题! 请问如何实现以下问题 图形放大后,线条变粗如何解决 CImage加载位深度为32位的JPG图片,显示不全 请大家给我介绍一本关于activex的书 如何动态创建ActiveX控件,
如果你发送每个包时都创建一个socket进行connect,而接受时也新建一个socket来接受,那么一个socket就只会收到一个包了。我用多线程发送时就用这个方法,不过这样发送小数据时显得代价较高。如果都是使用一个socket来发送,那你只能自己加一些辅助信息加以区分。比如加上同步字啊,长度等信息加以区分了。
我主要是考虑多了。
我担心TCP也有出错,所以弄得很复杂。
如果把TCP看成绝对不出错的协议,就简单了。
只要每个包指定包的大小就可以了。