社区
Linux/Unix社区
帖子详情
Linux socket缓冲区的机制是什么?
似水如风
2012-09-09 10:39:02
请问socket的缓冲区是个什么机制,是每次缓存一个包的数据,还是累计缓存多个数据包的数据呢?假如我要发送1000个数据包,每次隔1s发送一次,缓冲区是不是每次都只是缓存了一个数据包的数据呢?
...全文
510
4
打赏
收藏
Linux socket缓冲区的机制是什么?
请问socket的缓冲区是个什么机制,是每次缓存一个包的数据,还是累计缓存多个数据包的数据呢?假如我要发送1000个数据包,每次隔1s发送一次,缓冲区是不是每次都只是缓存了一个数据包的数据呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Kazeeku
2012-09-10
打赏
举报
回复
1.数据包这个概念只有UDP才有的,TCP是流
2.而你问的“缓冲区是不是每次都只是缓存了一个数据包的数据”:
A。对于UDP是对的,也就是说,UDP你发的数据,在对端他recvfrom就是一个包
B。对于TCP是错的,TCP没有包的概念,TCP要实现包需要自己定义边界(比如在包头定义包的长度)
3.还有就是:
A。UDP,你用recvfrom读到的是一个完整的包,那是因为在系统底层系统帮你把还没有形成一个包的数据缓存起来(比如你发102400字节,不能一次就发过来,对端需要接收很多次),等形成一个包再提交给你(应用层)
B。TCP就是不一样,他会以接受“多少”就给你(应用层)的,那么你收到有可能不是一个完整的包(包是你自己定义的),所以你需要缓存
冷月清晖
2012-09-09
打赏
举报
回复
这要深入Linux TCP/IP协议栈的细节了。
qq120848369
2012-09-09
打赏
举报
回复
字节流, 无论是UDP还是TCP, 实际底层都不可能是一个包飞过来, 而是一个字节一个字节的流过来.
你这种问题, 一方面阅读 TCP/IP协议详解 了解协议是怎么规定和实现的, 一方面有一个款开源实作:UDT 供你学习如何自己实现TCP/IP协议.
羽飞
2012-09-09
打赏
举报
回复
一般的是TCP是一次尽量接收多个字节的数据,知道缓冲区满或者到达延迟时间
UDP数据就是一次一个包
如果理解的有错误,请大侠们指点
为什么你的MCP本地连接总超时?深度拆解
Linux
socket
缓冲区
、SE
Linux
上下文与MCP代理协议栈协同
机制
本文深入剖析MCP本地连接频繁超时的根本原因,聚焦
Linux
socket
缓冲区
配置不当、SE
Linux
安全上下文限制及MCP代理协议栈协同缺陷三大技术维度。详细阐述TCP收发
缓冲区
内核参数(rmem_max/wmem_max)、SO_RCVBUF/SO_SNDBUF显式设置方法;解析SE
Linux
type enforcement与MCS标签对AF_UNIX通信的拦截
机制
,并提供sepolicy定制流程;同时揭示MCP基于抽象UNIX套接字的零配置直连设计及其与systemd
socket
activation的集成实践。
linux
内核中
socket
读取和接收的
缓冲区
大小
本文深入探讨了
Linux
内核中
socket
缓冲区
的管理
机制
,包括读取和接收
缓冲区
的大小设置方法,如何使用getsockopt和setsockopt进行获取与调整。同时,文章解析了/proc/sys/net/core/rmem_max和rmem_default参数对
socket
接收
缓冲区
的影响,并提出了应用层编程时考虑
缓冲区
大小的重要性。
linnux
socket
缓冲区
详解
本文详细介绍了
Linux
系统中
socket
缓冲区
的管理
机制
,包括发送
缓冲区
和接收
缓冲区
的维护方式。文章深入分析了发送数据包前的
缓冲区
检测流程,并解释了如何使用 getsockopt 和 setsockopt 调整
缓冲区
大小。
Linux
内核
Socket
参数调优
本文介绍了
Linux
内核中与
Socket
相关的各种参数及其作用,涵盖了 sysctl 命令和 /proc 文件系统中的配置选项。重点讲解了 TCP/IP 协议栈参数的调整方法,包括
缓冲区
大小、连接管理、保持
机制
及回收策略等。
第二十四篇:
Socket
缓冲区
与DMA
缓冲区
本文详解用户态数据如何通过
Socket
缓冲区
传递至DMA
缓冲区
,阐述两次拷贝的原因及零拷贝优化技术。重点分析内核与硬件间的数据流动
机制
,涵盖
Linux
与Windows平台的高性能网络方案。
Linux/Unix社区
23,223
社区成员
74,536
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章