1
我有一個內核模塊,它從netfilter鉤子讀取數據包並使用sk_buff
訪問數據。我發現當數據包速度很慢時,sk_buff->len
表現正常,但當數據包到達較高速率(1Gbps等)時,對於少數數據包開始增加(始終爲8的倍數),然後sk_buff->len
。Linux內核模塊:套接字緩衝區(sk_buff-> len)非確定性行爲
我正在重播的數據也有碎片包。是否將分片數據包附加在sk_buff
中導致sk_buff->len
增加?如果是的話,sk_buff
是如何知道堆棧以及在什麼時候?
有人可以解釋爲什麼會發生,以及如何解決這個問題。任何對某些文檔的引用也會有所幫助。