精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

ethernetif_input和tcpip協議棧線程的作用

嵌入式情報局 ? 來源:嵌入式情報局 ? 2024-03-20 10:01 ? 次閱讀

1、最近項目遇到的問題

最近在stm32上用cubemax移植了lwip協議棧,lwip就不用過多介紹了,(lightweight IP)一款輕量級的開源TCP/IP協議棧,專為嵌入式系統設計,具有小巧高效、可裁剪性強,主要是已經發展和廣泛應用多年,可靠性還是可以的,基本上大多數嵌入式系統的網絡通信需求都可以滿足。

然而最近項目中通信數據量大一點,老是send超時,運行時間久了還會直接掛在ethnetif_input,這可把我給整郁悶了。

最后定位到原因還是lwip適配的兩個線程優先級分配得有問題,導致FreeRTOS信號量超時異常。

2、兩個主要線程

在lwIP協議棧中,ethernetif_input線程和tcpip協議棧線程是兩個核心的線程,在處理網絡數據包和執行TCP/IP協議棧功能時的作用就不用多說了,下面簡單的介紹下兩個線程的作用:

ethernetif_input線程:

ethernetif_input線程負責接收來自網絡接口(如以太網接口)的數據包,并將其傳遞給lwIP協議棧進行處理。

這個線程通常運行在較低的優先級,因為它主要負責接收和緩存數據包,而不涉及復雜的協議處理。

在實際應用中,可以根據系統的需求和性能進行調整,但通常情況下,ethernetif_input線程的優先級相對較低。

tcpip協議棧線程:

tcpip協議棧線程是lwIP協議棧的核心線程,負責處理TCP/IP協議棧的各種功能,包括TCP連接管理、IP數據報的路由和轉發、以及UDP數據包的處理等。

由于tcpip協議棧線程需要處理復雜的協議邏輯和數據包處理,因此它通常運行在較高的優先級。

保持tcpip協議棧線程的較高優先級有助于確保網絡數據包的及時處理和協議棧功能的高效執行。

在實際的嵌入式系統設計中,需要根據具體的硬件平臺和應用場景來合理設置這兩個線程的優先級。通常情況下,可以通過操作系統或者裸機編程的方式來配置線程的優先級,以滿足系統對網絡數據處理和協議棧功能的實時性和效率要求。

3、總 結

所以通常情況下,tcpip協議棧線程的優先級需要設置得更高,因為tcpip協議棧線程需要處理復雜的協議邏輯、數據包處理、連接管理等任務,保持tcpip協議棧線程的較高優先級可以確保網絡數據包的及時處理和協議棧功能的高效執行,從而提高系統的響應速度和網絡通信的穩定性。

ethernetif_input線程通常負責接收和緩存數據包,相對來說不涉及太多復雜的處理邏輯,因此可以設置相對較低的優先級。

經過優先級調整后,跑了2天都沒有出現異常問題。

審核編輯:黃飛

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6023

    文章

    44378

    瀏覽量

    628561
  • TCP
    TCP
    +關注

    關注

    8

    文章

    1324

    瀏覽量

    78760
  • UDP
    UDP
    +關注

    關注

    0

    文章

    317

    瀏覽量

    33801
  • LwIP
    +關注

    關注

    2

    文章

    84

    瀏覽量

    26936
  • 線程
    +關注

    關注

    0

    文章

    501

    瀏覽量

    19580

原文標題:在單片機上運行Lwip線程優先級很重要~

文章出處:【微信號:嵌入式情報局,微信公眾號:嵌入式情報局】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    基于μCOS-Ⅱ的嵌入式TCPIP_協議的研究與實現

    基于μCOS-Ⅱ的嵌入式TCPIP_協議的研究與實現
    發表于 08-20 09:28

    一種新的嵌入式TCPIP協議的研究與實現

    一種新的嵌入式TCPIP協議的研究與實現
    發表于 08-20 10:37

    ARM開發教程之基于ARM微處理器TCPIP協議LwlP實現

    ARM開發教程之基于ARM微處理器TCPIP協議LwlP實現
    發表于 08-24 22:42

    請問這個input函數的原型是在哪里?

    [C] 純文本查看 復制代碼err_t ethernetif_input(struct netif *netif){err_t err;struct pbuf *p;p
    發表于 07-25 01:47

    HI3861的SDK中LWIP的TCPIP線程優先級?

    想知道LWIP中的tcpip線程的優先級設置的是多少?還有就是底層wifi協議是否有任務處理?如果有,優先級是多少?
    發表于 11-20 17:37

    基于STM32單片機LwIP協議的相關資料推薦

    (struct netif *netif, struct pbuf *p)4.3.3 pbuf * low_level_input(struct netif *netif)4.3.4 ethernetif_input(struct netif *netif)4.3.5
    發表于 01-20 06:35

    MCU_STM32CUBEMX v5.5.0的一個BUG是什么原因造成的呢

    STM32CUBEMX v5.5.0 配置FreeRTOS + LWIP,在MX_LWIP_Init()中的倒數第二句,osThreadNew(ethernetif_input, &
    發表于 03-01 06:23

    為什么CubeMX V6.5.0生成的ethernetif.h文件中會存在錯誤呢

    CubeMX 版本 6.5.0 在 /LWIP/target/ethernetif.h 中生成以下行:static void ethernetif_input(void const
    發表于 12-08 06:34

    對幾種開源的TCPIP協議分析

    對幾種開源的TCPIP協議分析
    發表于 11-03 16:52 ?24次下載

    嵌入式TCPIP協議LWIP的內部結構

    分析了嵌入式 TCPIP協議主要對LWIP的基本結構,介紹了嵌入式TCPIP協議LWIP的內
    發表于 02-17 15:55 ?76次下載
    嵌入式<b class='flag-5'>TCPIP</b><b class='flag-5'>協議</b><b class='flag-5'>棧</b>LWIP的內部結構

    基于ARM的輕量級TCPIP協議的移植及應用

    本文著重與講訴基于ARM的輕量級TCPIP協議的移植及應用
    發表于 10-14 17:55 ?54次下載
    基于ARM的輕量級<b class='flag-5'>TCPIP</b><b class='flag-5'>協議</b><b class='flag-5'>棧</b>的移植及應用

    TCPIP協議的實現lwip

    TCPIP協議的實現lwip方便初學者剛開始接觸lwip,有個大概的了解與認識。
    發表于 03-14 15:40 ?13次下載

    AN1921 - Microchip TCPIP精簡協議

    本應用筆記描述Microchip傳輸控制協議/互聯網協議(TCP/IP)精簡協議庫的結構和接口,并提供部分簡單的演示應用。實現TC P/IP精簡
    發表于 03-22 10:16 ?3次下載
    AN1921 - Microchip <b class='flag-5'>TCPIP</b>精簡<b class='flag-5'>協議</b><b class='flag-5'>棧</b>

    基于STM32的虛擬多線程(TI_BLE協議_ZStack協議)

    基于STM32的虛擬多線程,可以很好的用于裸機程序中,用于模擬小型操作系統的多線程概念。本實例參考了參考TI_BLE協議_ZStack協議
    發表于 06-14 10:42 ?6813次閱讀
    基于STM32的虛擬多<b class='flag-5'>線程</b>(TI_BLE<b class='flag-5'>協議</b><b class='flag-5'>棧</b>_ZStack<b class='flag-5'>協議</b><b class='flag-5'>棧</b>)

    tcpip協議是什么?tcpip協議有哪些協議tcpip協議中報文封裝和解封裝過程

    tcpip協議是什么? TCP/IP協議是計算機網絡中使用的最常見的網絡協議
    的頭像 發表于 08-01 17:51 ?7568次閱讀
    <b class='flag-5'>tcpip</b><b class='flag-5'>協議</b><b class='flag-5'>棧</b>是什么?<b class='flag-5'>tcpip</b><b class='flag-5'>協議</b><b class='flag-5'>棧</b>有哪些<b class='flag-5'>協議</b>?<b class='flag-5'>tcpip</b><b class='flag-5'>協議</b><b class='flag-5'>棧</b>中報文封裝和解封裝過程