长春市建设厅网站,采集wordpress整站数据,wordpress短码,广告公司寮步网站建设目录一、lwIP网络接口简介二、lwIP的netif结构三、lwIP的netif相关函数1. lwIP网络接口的全局变量2. netif_add()函数3. netif_remove()函数4. netif_set_default()函数一、lwIP网络接口简介 lwIP协议栈支持多种不同的网络接口#xff08;网卡#xff09;#xff0c;由于网卡…
目录一、lwIP网络接口简介二、lwIP的netif结构三、lwIP的netif相关函数1. lwIP网络接口的全局变量2. netif_add()函数3. netif_remove()函数4. netif_set_default()函数一、lwIP网络接口简介 lwIP协议栈支持多种不同的网络接口网卡由于网卡是直接和硬件平台打交道硬件不同则处理也是不同的所以由用户提供最底层的接口函数lwIP提供统一的接口但是底层的实现需要用户自己去完成ethernetif.c 一个系统中可能有多个网络接口有可能是以太网有可能是WIFI也有可能是其他的网络接口在lwIP中每一个网卡都由一个netif结构体来表示这些结构体描述了各个网卡的底层实现函数及状态并以链表形式链接起来。 二、lwIP的netif结构
/* netif.h */
struct netif { struct netif *next; /* 指向下一个节点的指针 */ ip_addr_t ip_addr; /* 设置网卡的IP地址、子网页码及网关地址 */ ip_addr_t netmask; ip_addr_t gw; netif_input_fn input; /* 指向数据包输入函数 */ netif_output_fn output; /* 指向数据包待发送函数 ----检测目标IP地址的MAC地址等操作 */netif_linkoutput_fn linkoutput; /* 指向数据包输出函数 */netif_status_callback_fn link_callback; /* 链接状态回调函数 */ void *state; /* 虚拟网卡状态 */ u16_t mtu; /* 最大传输单元 */ u8_t hwaddr[NETIF_MAX_HWADDR_LEN]; /* 网卡的MAC地址 */ u8_t hwaddr_len; /* MAC地址长度 */u8_t flags; /* 虚拟网卡的标志符 */ char name[2]; /* 网卡的名称 */ /*................*/
};三、lwIP的netif相关函数 1. lwIP网络接口的全局变量
全局变量struct netif *netif_list指向该链表表头 2. netif_add()函数 3. netif_remove()函数 4. netif_set_default()函数