社区
C语言
帖子详情
Socket通信疑问
sinall
2008-06-19 01:41:30
发送端发送两条数据,分别为aaaaa.....bbbbb 和 ccccc......ddddd
请问,接受端有可能一次接收到 ...bbbbbccccc....???
也就是说,接收端有可能一次收到发送端2条数据的组合吗?
...全文
156
16
打赏
收藏
Socket通信疑问
发送端发送两条数据,分别为aaaaa.....bbbbb 和 ccccc......ddddd 请问,接受端有可能一次接收到 ...bbbbbccccc....??? 也就是说,接收端有可能一次收到发送端2条数据的组合吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
mhyx_2008
2008-06-22
打赏
举报
回复
恩,可能,不过还要看你recv(socketfd,buf,整数值,0)函数里 整数值 的设置大小。
如果你设置的很大,甚至超过 socket 缓冲区的大小,那就一次就把所有数据都读出来了。
winxxpSoft
2008-06-21
打赏
举报
回复
可能的!文件流吗?缓冲大小不一样!你把缓冲设置成和你发的一样大试试!
fbusybox
2008-06-21
打赏
举报
回复
answer有点乱了吧
首先排除发送 接收缓冲溢出处理问题,如果这个溢出而覆盖,结果就五花八门了
接着细分:
(1) TCP 数据流 不会有上述情况出现
(2)UDP 数据报文,网络路径差异,完全有上述问题的出现可能,(同个交换网络一般不会),需自己在应用层控制.
lin_style
2008-06-21
打赏
举报
回复
楼上的大大们也太武断了吧
连发送和接收的代码都不看
都臆测为“贴包”
建议LZ先把代码贴出来。
lala_benben
2008-06-19
打赏
举报
回复
...可能有这种情况。
sinall
2008-06-19
打赏
举报
回复
回楼上,指的是socket通信的两端!也就是send, recv这两个函数!
ouyh12345
2008-06-19
打赏
举报
回复
发送端和接收端到底指什么?
网卡的缓冲区?
na_he
2008-06-19
打赏
举报
回复
可能的,所以你必须制定自己的协议来控制自己的信息接收和发送了.
充电宝111
2008-06-19
打赏
举报
回复
[Quote=引用 2 楼 ooily 的回复:]
接收端会把收到的数据放到一个buffer里,如果两个包收到后,应用层还没有调用recv函数把buffer数据读走,则下一次应用层读数据时可以把两个包的内容一次读走
[/Quote]
你说的这种情况不太可能吧?那你的buffer怎么定义,能区分几个tcp包?
充电宝111
2008-06-19
打赏
举报
回复
一般情况下不会这样吧
我看过一个简单的TCPIP的协议栈,只会考虑IP包的拆分和合并
也就是说,如果你发送的时候没有IP分片,接收的时候是不会合并的
因为TCP包是独立的,不可能分片
yagebu1983
2008-06-19
打赏
举报
回复
关注+学习!!
帮你顶!!
stonezhong_2008
2008-06-19
打赏
举报
回复
如果是TCP的话有可能。因为发送的碎片在TCP协议栈中可能会合并。从用户的角度,你应该把TCP连接看成字节流。你可以根据需要在TCP上再进行封装,比如先送要发的字节数,再发数据等等。
artman
2008-06-19
打赏
举报
回复
需要自己根据需要定义通讯协议
csdn5211
2008-06-19
打赏
举报
回复
很可能,这叫粘包,几乎是必出现。跟收发缓冲区长度有一定关系。
ooily
2008-06-19
打赏
举报
回复
接收端会把收到的数据放到一个buffer里,如果两个包收到后,应用层还没有调用recv函数把buffer数据读走,则下一次应用层读数据时可以把两个包的内容一次读走
ooily
2008-06-19
打赏
举报
回复
可能的
socket
代替串口
通信
之前一直都是用串口
通信
和对讲机
通信
,之后经理让我用
socket
代替串口
通信
同对讲机
通信
,有任何
疑问
大家可以查看代码内的txt文档
SWT+
SOCKET
通信
swt与
socket
的网络
通信
。一个服务端,一个客户端。并且UI组件和
SOCKET
是分开的。里面用到了关于SWT的线程处理。很不错! 运行: 先开启服务器。然后点客户端的连接即可。 需要说明的是里面有些图片。我没有上传。你可以把用到的地方注释了。不影响程序的运行。如有
疑问
请发邮件到 cuiran2001@163.com 谢谢大家!
C# winform做的网络通讯
Socket
服务端(附原码)
当然我的这个程序思路是客户端发送SQL语句到服务端,返回DATATABLE,如果有什么
疑问
的,请直接联系我:QQ 13140489
java
socket
通信
安全_Java
Socket
通信
介绍及可能遇到的问题解决
前言本文主要给大家介绍了关于Java中
Socket
通信
的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。Java中基于TCP协议实现网络
通信
的两个类:客户端的
Socket
和服务器端的Server
Socket
。
Socket
通信
模型如图所示:不管
Socket
通信
的功能有多复杂,任何
socket
通信
过程的基本结构都是一样的。其基本步骤为:①分别在客户端和服务器端创建
Socket
...
基于C#的TCP
通信
示例:与西门子PLC建立
Socket
通信
通过与PLC建立
Socket
通信
,我们可以实现与PLC的数据交换和控制。以上就是一个简单的基于C#的TCP
Socket
通信
与西门子PLC建立连接的示例。在本篇文章中,我们将介绍如何使用C#编写程序与西门子PLC建立TCP
Socket
通信
。我们将提供完整的源代码示例,并对其进行详细描述。现在,我们可以使用上述代码示例来建立与西门子PLC的
Socket
通信
。基于C#的TCP
通信
示例:与西门子PLC建立
Socket
通信
。上述代码示例中,我们定义了一个待发送的数据数组。方法接收来自PLC的数据,并使用。
C语言
69,374
社区成员
243,079
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章