当前位置: 首页 > news >正文

qnx修改tcp和udp缓冲区默认大小

拷贝/home/test/qnx/qos223/target/qnx7/aarch64le/sbin/sysctl进系统中

https://www.qnx.com/developers/docs/7.1/#com.qnx.doc.neutrino.utilities/topic/s/sysctl.html

kern.sbmax 默认262144,这个限制住了发送、接收缓冲器大小

./sysctl -w kern.sbmax=1000000 #to 1M 必须先执行
./sysctl -w net.inet.udp.sendspace=233000
./sysctl -w net.inet.udp.recvspace=233000
./sysctl -w net.inet.tcp.sendspace=233000
./sysctl -w net.inet.tcp.sendspace=233000

另外,可直接修改/etc/inetd.conf

https://www.qnx.com/developers/docs/7.1/#com.qnx.doc.neutrino.utilities/topic/i/inetd.conf.html
在这里插入图片描述

测试c语言函数


/* getsndrcv.c:* getsockopt sample c code* using getsockopt* Get SO_SNDBUF & SO_RCVBUF Options:*/
#include <assert.h>
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <unistd.h>
/** This function reports the error and* exits back to the shell:*/
static void displayError(const char *on_what) {if (errno != 0) {fputs(strerror(errno), stderr);fputs(": ", stderr);}fputs(on_what, stderr);fputc('\n', stderr);exit(1);
}
int main(int argc, char **argv) {int z;int s = -1;       /* Socket */int sndbuf = 0;   /* Send buffer size */int rcvbuf = 0;   /* Receive buffer size */socklen_t optlen; /* Option length *//** Create a TDP/IP socket to use:*/s = socket(PF_INET, SOCK_DGRAM, 0);/*s = socket(PF_INET,SOCK_DGRAM,0);  udp使用本行代码*/if (s == -1) {displayError("socket(2)");}/** Get socket option SO_SNDBUF:*/optlen = sizeof sndbuf;z = getsockopt(s, SOL_SOCKET, SO_SNDBUF, &sndbuf, &optlen);if (z) {displayError("getsockopt(s,SOL_SOCKET,""SO_SNDBUF)");}assert(optlen == sizeof sndbuf);/** Get socket option SO_SNDBUF:*/optlen = sizeof rcvbuf;z = getsockopt(s, SOL_SOCKET, SO_RCVBUF, &rcvbuf, &optlen);if (z) {displayError("getsockopt(s,SOL_SOCKET,""SO_RCVBUF)");}assert(optlen == sizeof rcvbuf);/** Report the buffer sizes:*/printf("Socket s : %d\n", s);printf("Send buf: %d bytes\n", sndbuf);printf("Recv buf: %d bytes\n", rcvbuf);close(s);return 0;
}
/** OUTPUT*[sgupta@rhel54x64 socket]$ gcc getsndrcv.c -o getsndrcv -lsocket[sgupta@rhel54x64 socket]$ ./getsndrcvSocket s : 3Send buf: 16384 bytesRecv buf: 87380 bytes[sgupta@rhel54x64 socket]$*/
http://www.lryc.cn/news/252003.html

相关文章:

  • vscode的eslint检查代码格式不严谨的快速修复
  • OpenAI GPT-4 Turbo发布:开创AI新时代
  • 基于c 实现 FIFO
  • tortoisegit 报错:server refused to start a shell/command
  • 电商平台API接口指南,京东商品详情接口,京东详情页接口,宝贝详情页接口,商品属性接口,商品信息查询,商品详细信息接口,h5实时详情页数据展示
  • 什么是迁移学习
  • 万宾科技水环境综合治理监测系统的融合与应用
  • 【EI会议征稿】第三届图像,信号处理与模式识别国际学术会议(ISPP 2024)
  • 继阿里云、滴滴、语雀后,腾讯视频也出现重大系统故障
  • kotlin中sealed语句的使用
  • 软信天成:数据泄露日趋严重 “资产”保护何去何从
  • GitHub打不开的解决方案(百试不爽法)
  • 一文入门Python面向对象编程(干货满满)
  • qiankun: 关于ElementUI字体图标加载不出来的问题
  • 【智能家居】四、网络服务器线程控制功能点
  • localForage使用 IndexedDB / WebSQL存储
  • Hdoop学习笔记(HDP)-Part.03 资源规划
  • SQL -高阶3
  • HarmonyOS4.0系列——03、声明式UI、链式编程、事件方法、以及自定义组件简单案例
  • 播放器开发(六):音频帧处理并用SDL播放
  • Qt 问题记录
  • Go 语言真正有什么用处?
  • 贪心 55. 跳跃游戏 45.跳跃游戏 II
  • 为XiunoBBS4.0开启redis缓存且支持密码验证
  • 手把手教你写一个Shell脚本部署你的服务
  • 银行数字化产品方案
  • C# datagridview控件 绑定数据库中表中数据的方式-3
  • Amazon CodeWhisperer 正式发布可免费供个人使用
  • el-table根据返回数据回显选择复选框
  • 代码随想录算法训练营第四十二天 _ 动态规划_01背包问题。