网卡设备信息获取

本文介绍了如何在嵌入式设备中获取网卡信息,包括网卡的工作模式、带宽等,通过建立UDP Socket和使用ioctl接口实现,以备在资源有限的设备上进行网络环境监测。
摘要由CSDN通过智能技术生成

前言:

网卡工作在OSI七层协议中的链路层,是主机与网络对接的重要接口,它完成了网络连接的物理和电信号之间的转换,同时还对网络数据包帧进行发送、接收、校验等,是上层网络应用的基石。在计算机架构中,通常是CPU通过内部总线(AHB BUS 或者 PCI BUS)与MAC控制单元通信,然后由MAC控制单元通过MII接口协议与PHY设备进行数据交互,PHY设备则负责与外部网络通信(RJ45网络接口)。通常将MAC控制单元与PHY设备集成在一起,构成我们所熟悉的网卡(ethn设备),在嵌入式开发中,经常需要获取网卡设备的一些信息,比如说网卡的工作模式、网卡的带宽等等,虽然有现成的ethtool等开源软件来实现,但是对于存储空间有限的嵌入式设备,我们可以通过代码写socket然后ioctl来实现。下图是参考了网友的MAC控制单元与PHY设备的功能框图

网卡信息

先来了解一下网卡设备信息的结构体内容,里面包括了我们所熟知的网卡模式支持,网卡特性、网卡带宽、全双工模式、PHY地址等等网卡信息。

struct ethtool_cmd {  
        __u32   cmd;  
        __u32   supp
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值