论坛风格切换切换到宽版
  • 1010阅读
  • 5回复

[问题求助]怎样获取端口速率 [复制链接]

上一主题 下一主题
离线ppcynt.
 
发帖
1965
C币
-61033
威望
340
贡献值
1
银元
-4
铜钱
4335
人人网人气币
0
只看楼主 倒序阅读 使用道具 楼主  发表于: 2009-05-01
请问怎样用程序获.取端口的速率,比如说e.th0口是10m,100m.谢谢           鲜花

评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
离线resoo.
发帖
2070
C币
-60419
威望
390
贡献值
1
银元
0
铜钱
4606
人人网人气币
0
只看该作者 沙发  发表于: 2010-04-13
ethtool ethx

离线nyqs.
发帖
2106
C币
-132410
威望
378
贡献值
1
银元
-3
铜钱
4648
人人网人气币
0
只看该作者 板凳  发表于: 2010-04-13
{
                 int sock;
          struct ifreq ifr;
          struct ethtool_cmd eth_data;
          sock=socket(AF_INET,SOCK_DGRAM,0);
          strcpy(ifr.ifr_name,"eth0");
          ifr.ifr_data=(char*)&eth_data;
          eth_data.cmd=ETHTOOL_GSET;
          ioctl(sock,SIOCETHTOOL,&ifr);
                 close(sock);
            }
最后的结果是eth_data.speed速度为0.eth0是link up的状态,请问是哪里出问题了啊

离线malawenwen.
发帖
2019
C币
-60527
威望
364
贡献值
1
银元
-1
铜钱
4523
人人网人气币
0
只看该作者 地板  发表于: 2010-04-13
是内核是否支持的原因么?要是这个原因的话,请问是driver的那个函数支持这个操作啊

离线fu20.
发帖
2018
C币
-199009
威望
372
贡献值
1
银元
-2
铜钱
4553
人人网人气币
0
只看该作者 4楼 发表于: 2010-04-13
那一下 ethtool 的源代码实现吧,我也没看过,只知道是利用 ioctl 来完成的

发帖
2087
C币
-235584
威望
384
贡献值
2
银元
-2
铜钱
4678
人人网人气币
0
只看该作者 5楼 发表于: 2010-04-13


QUOTE:原帖由 wtx7758520 于 2008-5-27 12:22 发表
Settings for eth1:
        Supported ports: [ TP ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                       ...

这个是显示了网卡的当前状态吧.  Advertised auto-negotiation:当前是否是自动协商        Speed:当前速度         Duplex:是否全双工
快速回复
限100 字节
如果您提交过一次失败了,可以用”恢复数据”来恢复帖子内容
 
上一个 下一个