首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何找出套接字的发送/接收字节数

如何找出套接字的发送/接收字节数
EN

Stack Overflow用户
提问于 2014-02-21 22:29:35
回答 5查看 2.7K关注 0票数 3

对于基准测试,我目前正在寻找一种方法来对一些似乎有问题的TCP连接进行基准测试。为此,我想在程序运行时记录一些性能指标。我已经记录了每个操作的时间,但是这只是告诉我传输对于用例来说太长了。

我需要的是一种简单的方法来跟踪定期读取/写入的字节数。通常我会手动添加基准测试,但是套接字是在库中使用的,所以我不能轻松地检测读/写调用。我的猜测是linux提供的一些现成的方法可以做到这一点,但我找不到它。

我已经研究了使用TCP_INFO标志的getsockopt()的可能性,但从文档中我只能看到如何从中获取窗口大小等信息,而不是读取/写入的字节数。

有没有办法从Linux上获取这些信息?

EN

Stack Overflow用户

发布于 2015-01-09 00:03:02

不确定您是否正在查看套接字,或者是否需要计算给定接口上的RX/TX字节的总量。我需要解决后一个问题,我提供了可能对您有用的以下脚本:

代码语言:javascript
运行
复制
while true; do MARKER=$(ifconfig eth0 | grep "[RT]X bytes" | awk '{print $2}' | cut -c 7-); sleep 10; NEWMARKER=$(ifconfig eth0 | grep "[RT]X bytes" | awk '{print $2}' | cut -c 7-); expr ${NEWMARKER} - ${MARKER}; set $MARKER=$NEWMARKER; done

请注意,对我来说,接收的字节数实际上是唯一重要的值,如果需要,可以将其用作模板来提取发送的字节。

将休眠值更改为所需的任何时间间隔(以秒为单位),如果需要,请重定向到文件。

票数 0
EN
查看全部 5 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21937162

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档