当前位置:  技术问答>linux和unix

linux socket buffer满了怎么办?

    来源: 互联网  发布时间:2017-04-21

    本文导语:  嵌入设设备和PC使用UDP通信,以太网发送数据很快,接收端的处理速度跟不上发送的速度,怎么处理呢? 已经尝试把socket buffer的空间设置成允许的最大值,空间相对于数据量来说杯水车薪,结果是后面的数据包都丢...

嵌入设设备和PC使用UDP通信,以太网发送数据很快,接收端的处理速度跟不上发送的速度,怎么处理呢?

已经尝试把socket buffer的空间设置成允许的最大值,空间相对于数据量来说杯水车薪,结果是后面的数据包都丢弃了。

有没有人遇到这种问题,请指点一二,谢谢。

|
包的大小不要大于MTU,也不要太小。不过这些好像都跟掉包没有关系。

1 可不可每次有接收信息过来就新开辟一个线程去处理这些消息
 
2 在UDP的基础上,添加应道模式,当全部收到信息后,发一个信令回去,发送端再发送数据
  (目前貌似QQ消息就是这个机制)
3 让发送端每次发送一个后等待一会(这样挺浪费的!) 

目前就想到这些

|
1、发送端别发得太快;
2、接收端接收时候只做接收,可以存在一个buf,开启线程去处理buf中的数据。

|
发送端使用reactor方式,需要发送的数据存放于buffer中,socket可写时再做实际发送
接收端将业务线程与IO线程分离

    
 
 

您可能感兴趣的文章:

  • 请问在vmstation下怎么安装linux??但不想从头安装linux,不知在windows下怎么办?
  • 我重装window后,把linux的引导区覆盖了,进不了linux怎么办?急啊,望热心的人帮助 (现在有linux的盘)
  • 我在windows下telnet到linux主机,想得到linux主机的一个文件该怎么办?
  • 在E:装了linux 7.3启动不了windows了,只能进linux 7.3,怎么办?
  • 我重装window后,把linux的引导区覆盖了,进不了linux怎么办?急啊,望热心的人帮助 (现在没有linux的盘,只有DOS启动盘)
  • 新装了Linux,但刷新率不知道怎么设置,屏幕很闪,怎么办?
  • Windows2000和Linux双操作系统,Linux系统有问题,我直接把Linux分区删除后,Windows2000进不去了,怎么办???
  • 很高兴加入LINUX。请问一个简单的问题:REDHAT LINUX7.3下的中文输入?怎么办?
  • Linux 下安装完windows后,原来的Linux不能用,怎么办?
  • 账户过期了,进不了linux9.0,怎么办?
  • D-link DWL-122无线网卡厂家没有提供Linux下的驱动,我应该怎么办使得此无线网卡能在Linux下用啊?
  • redhat linux7.1安装不了,怎么办?
  • linux出现这种界面怎么办???
  • 重装Linux,原来的东西怎么办呢?
  • 请问,我要装LINUX,但我没有在LINUX下所有机器的驱动程序怎么办?全都是WIN9X和WIN2000的.
  • 病毒:我的红旗linux安装就有病毒,还IEM版呢。怎么办?请教大侠.
  • 我的电脑装了WIN2000,又装了LINUX,我想从WIN2000启动,我该怎么办?谢谢
  • linux激活状态无法启动windows!怎么办?
  • 各位大虾救命啊,我的镭7500显卡linux7.0认不出来,怎么办?
  • hy-d66的mp3没有linux的驱动程序,怎么办?
  • LINUX下限制摄像头buffer大小的原因
  • 请教: 研究过linux frame buffer驱动的问题
  • 问几个frame buffer的基础问题 我对LINUX一窍不通,问些蠢问题误怪
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • SSL握手通信详解及linux下c/c++ SSL Socket代码举例
  • 大家帮忙推荐一本linux socket编程的入门书,我刚接触socket,谢谢!!
  • Linux c socket编程:简单的客户端(client)和服务端(server)实现
  • linux socket programe 同一个IP下 bind 多个socket,可以不??
  • linux socket问题。。怎样获得已帮定特定port的一个套接字socket
  • ★★★LINUX与windows的网络编程socket有多大区别?
  • linux下socket编程问题!
  • Linux 下用什么函数查找socket上一次的错误?
  • 求助!!linux下socket编程
  • 请问,在linux下如何探测socket端口通不通啊?
  • 关于LINUX内部socket
  • linux socket fd 写阻塞问题
  • linux下用socket实现多进程间通信问题?
  • 请教: linux下用c++写最简单的socket程序如何写?
  • 问个linux下raw socket的问题
  • 想搞linux下的socket编程,请大家给些意见^_^
  • 如何清楚linux系统中以退出程序的socket连接?
  • 急!!请教关于linux socket编程的一个问题!!
  • 哪里有linux下的c++的socket库????
  • windows 与 linux socket 编程问题
  • 在linux下,我的socket为什么小于零?
  • linux c/c++ IP字符串转换成可比较大小的数字
  • 在win分区上安装linux和独立分区安装linux有什么区别?可以同时安装吗?(两个linux系统)
  • linux哪个版本好?linux操作系统版本详细介绍及选择方案推荐
  • 在虚拟机上安装的linux上,能像真的linux系统一样开发linux程序么?
  • secureCRT下Linux终端汉字乱码解决方法
  • 安装vmware软件,不用再安装linux系统,就可以模拟linux系统了,然后可以在其上学习一下LINUX下的基本操作 了?
  • Linux c字符串中不可打印字符转换成16进制
  • 红旗Linux主机可以通过127.0.0.1访问,但如何是连网的Win2000机器通过Linux的IP去访问Linux
  • Linux常用命令介绍:更改所属用户群组或档案属性
  • 如何让win2000和linux共存。我装好WIN2000,再装LINUX7.0,但LILO只能找到LINUX,不能引导WIN2000


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,