社区
C#
帖子详情
c# socket 数据包大小设置问题
kekezhu0000
2013-08-25 05:53:41
本人socket新手,对数据包的大小设置没有概念,有没有合适的大小范围,可以更好的避免传输速度以及粘包丢包问题!
开始定义的为 Byte[] _cmdBuff = new Byte[20]; 我从cline发送了一30.8k的文件,效率低的要命
重新设定大小为Byte[] _cmdBuff = new Byte[60000]; 瞬间完事。。。。。。。。。。。。。。
抛开程序健壮性,数据包的大小定义有没有技巧!!!
请大师们指点!
...全文
753
8
打赏
收藏
c# socket 数据包大小设置问题
本人socket新手,对数据包的大小设置没有概念,有没有合适的大小范围,可以更好的避免传输速度以及粘包丢包问题! 开始定义的为 Byte[] _cmdBuff = new Byte[20]; 我从cline发送了一30.8k的文件,效率低的要命 重新设定大小为Byte[] _cmdBuff = new Byte[60000]; 瞬间完事。。。。。。。。。。。。。。 抛开程序健壮性,数据包的大小定义有没有技巧!!! 请大师们指点!
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Jeece_JX
2015-04-01
打赏
举报
回复
感觉缓冲区大小最好在1500字节以内,不然在网络不稳定的情况,传输效率低
kekezhu0000
2013-08-26
打赏
举报
回复
多谢大师们的指点!!看来小弟概念理解上有问题
showjim
2013-08-25
打赏
举报
回复
在内存满足的情况下,一般根据需求来决定buffer的大小。
全栈极简
2013-08-25
打赏
举报
回复
打个不恰当的例子,new Byte[6000],里面的数组长度的大小就像一个马路一样,越大表示马路越宽,同时通过的车辆就越多。至于这个值究竟多大最适合,跟网络情况有关,并没有一个固定的值。
threenewbee
2013-08-25
打赏
举报
回复
用tcp协议,是不会“丢包”的。
以专业开发人员为伍
2013-08-25
打赏
举报
回复
6k --> 60k
以专业开发人员为伍
2013-08-25
打赏
举报
回复
你才设置了不到6k大小的buffer,“那个”很小哦。 应用程序层的buffer,跟最底层的什么buffer是两回事。不要照着底层的资料来设置业务应用层代码。请你从测试出发进行设计,不要从理论出发。
以专业开发人员为伍
2013-08-25
打赏
举报
回复
什么话? 粘包是tcp的特点,因此tcp可以“慢启动”而避免像udp那样霸道地阻塞网络,你反而说成是问题? 至于丢包,我告诉你,如果你说tcp丢包,那么请检查你自己的代码。 对于服务器,我的buffer以前设置为400k,现在设置为2M。这些对程序正确性没有什么影响。实际上它只要与网络带宽适配的话,那么buffer越大效率越高。
UDP 协议
C#
UdpClient乱序接收
数据包
丢失的
问题
Socket
ReceiveBufferSize
一、UDP 协议
C#
UdpClient乱序接收
数据包
丢失的
问题
Socket
ReceiveBufferSize 利用UdpClient收发文件,走Udp协议,发送端只管发送
数据包
,接收端负责接收数据,测试中发现,按每块1298字节发送
数据包
时,接收端在接收共8块时出现了部分
数据包
的丢失,分析可能是数据突然集中到达超出
Socket
接收缓冲区
大小
,造成数据覆盖丢失,因为默认So
C#
TCP
socket
发送大
数据包
时,接收端和发送端数据不一致 服务端接收Receive不完全...
简单的
c#
TCP通讯(TcpListener)
C#
的TCP
Socket
(同步方式)
C#
的TCP
Socket
(异步方式)
C#
的tcp
Socket
设置
自定义超时时间
C#
TCP
socket
发送大
数据包
时,接收端和发送端数据不一致 服务端接收Receive不完全 在发送端,一次发送200k个字节,在接收端,一次接收200k个字节, 但是在接收端,...
C#
实现的多线程异步
Socket
数据包
接收器框架
C#
实现的多线程异步
Socket
数据包
接收器框架 转载:http://www.pin5i.com/showtopic-20307.html几天前在博问中看到一个
C#
Socket
问题
,就想到笔者2004年做的一个省级交通流量接收服务器项目,当时的基本求如下:接收自动观测设备通过无线网卡、Internet和
Socket
上报的交通量
数据包
全年365*24运行的自动观测设备
SOCKET
通信中TCP、UDP
数据包
大小
的确定
TCP、UDP
数据包
大小
的确定 UDP和TCP协议利用端口号实现多项应用同时发送和接收数据。数据通过源端口发送出去,通过目标端口接收。有的网络应用只能使用预留或注册的静态端口;而另外一些网络应用则可以使用未被注册的动态端口。因为UDP和TCP报头使用两个字节存放端口号,所以端口号的有效范围是从0到65535。动态端口的范围是从1024到65535。 MTU最大传输单元,这个最大传输单元实际上和链路...
C#
111,128
社区成员
642,536
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章