
LWIP
文章平均质量分 64
Car12
嵌入式开发,爱好者
展开
-
【RT_Thread学习笔记】---以太网LAN8720A Lwip ping 通网络
RT-Thread 以太网ETH lan8720A,lwip ping原创 2022-08-02 22:29:09 · 2009 阅读 · 1 评论 -
lwip netbuf_ref: invalid buf“
netbuf_ref 申请空间失败报错 lwip netbuf_ref: invalid buf"解决办法就是lwipopt.h文件中定义宏原来opt.h文件的定义是#define MEMP_NUM_NETBUF 2修改后#define MEMP_NUM_NETBUF 6原创 2022-03-16 14:13:45 · 479 阅读 · 0 评论 -
lwip总体架构
lwipopts.h 就是用于配置 LwIP 的相关参数的LwIP 默认会有参数的配置,存放在 opt.h 文件中第一步是通过 netif_add() 函数将我们的网卡挂载到 netif_list链表上与网卡驱动密切相关的函数有三个//low_level_init() 为网卡初始化函数static void low_level_init(struct netif *netif);//low_level_output() 函数为网卡的发送函数,它主要将内核的数据包发送出去static err_t原创 2021-11-14 22:20:52 · 2838 阅读 · 0 评论 -
ARP地址解析协议
地址解析协议(Address Resolution Protocol,ARP)地址解析”就是主机在发送帧前将目标 IP 地址转换成目标 MAC 地址的过程前同步码是 10101010(0x55, 大端模式);帧开始符,其值是 10101011(0xD5,大端模式)剩余5 个字 段才是真正的以太网数据帧结构类型字段 :当这个字段的值小于 1518 时,它表示后面数据字段的数据长度,当大于 1518 的时候才 表示递交给哪个协议。IP 数据报超过了 1500 字节,则主机必须将.原创 2021-06-27 19:09:15 · 789 阅读 · 2 评论 -
lwip 数据处理流程
从底层数据包输入到内核,从应用程序到内核间的数据交互, 都依赖操作系统的 IPC 通信机制ethernet_input() 函数决定是否递交到 IP 层,如果是 ARP 包, 内核就不会递交给 IP 层,而是更新 ARP 缓存表,对于 IP 数据包则递交给 IP 层去处理enum tcpip_msg_type{ TCPIP_MSG_API, TCPIP_MSG_API_CALL, //API 函数调用 TCPIP_MSG_INPKT, //底层数据包输入原创 2021-06-27 09:18:48 · 878 阅读 · 0 评论 -
lwip 2 pbuf 学习
struct pbuf{ /** next pbuf in singly linked pbuf chain */ struct pbuf *next; /** pointer to the actual data in the buffer */ void *payload; u16_t tot_len; /** length of this buffer */ u16_t len; u8_t type_inter.原创 2021-06-26 21:30:34 · 736 阅读 · 1 评论 -
LWIP学习笔记
物理层(PHY)规定了传输信号所需要的物理电平、介质特征; 链路层(MAC)规定了数据帧能被网卡接收的条件最常见的方式是利用网卡的 MAC 地址 网络层 规定了主机的网络地址 该如何定义,以及如何在网络地址和 MAC 地址之间进行映射,即 ARP 协议,网络层实现了数据 包在主机之间的传递,而一台主机内部可能运行着多个网络程序 传输层可以区分数据包是属于 哪一个应用程序------------------------------------------------------------...原创 2021-06-25 23:17:05 · 763 阅读 · 0 评论