VPP 引流到自己節點的方法

2021-09-10 13:19:56 字數 1470 閱讀 9861

截獲所有的ip4報文進入我們自己的node處理

ethernet_register_input_type (vm, ethernet_type_ip4,

my_node.index);

該函式主要是呼叫vlib_node_add_next函式將my_node.index新增到ethernet_input_node.index裡面去:

vlib_node_add_next (vm,ethernet_input_node.index, node_index);
如果在自己的外掛程式裡呼叫這個節點註冊函式,需要注意的是,vpp為了防止l3_next被多次初始化誤覆蓋,在ip4_init流程中用全域性變數next_by_ethertype_register_called做斷言。因為外掛程式初始化先於ip4_init,所以如果在外掛程式中呼叫ethernet_register_input_type,會導致next_by_ethertype_register_called被置1,導致ip4_init時候異常。解決方法是在自己的外掛程式中先呼叫ip4_init,再呼叫ethernet_register_input_type

2. 動態改變某個節點的next_index:name1變為name2

node = vec_elt (nm->nodes, index);//獲取node

next = vlib_get_node_by_name (vm, (u8 *)name1);

p = hash_get (node->next_slot_by_node, next->index);//next節點是否掛在node節點下,並得到它的slot(坑)

ret = vlib_node_add_named_next_with_slot (vm, index, name2, p[0]);//用name2節點去替換name1的slot

引流某個介面的流到指定node

vnet_hw_inte***ce_rx_redirect_to_node (vnet_main_t * vnm, u32 hw_if_index,

u32 node_index)

4.將出介面是bvi口的流引到自己的節點

void

l2bvi_register_input_type (vlib_main_t * vm,

ethernet_type_t type,

u32 node_index);

5.l3 重定向功能:將二層發往三層的流引到自己的節點

ethernet_register_l3_redirect(vm, my_node.index)
6.註冊處理某個協議的節點到ip4_local後

ip4_register_protocol (ip_protocol_gre, gre4_input_node.index);

超好用的推廣引流方法,看完趕緊用!

不賣關子,直接說這個既超級簡單又效果很好的推廣引流方法。大家可以先開啟乙個 而這裡面其實暗藏著一種很簡單很好用的推廣引流方法,大家可以利用這個方法做推廣引流,不管是賣產品還是賣課程,或是賣服務都可以哦 比如,我隨便開啟其中乙個課程,然後看它的介紹頁面。開啟後呢,然後往下拉,你可以看到這個課程主講人的...

jquery獲取子節點父節點的方法

一 獲取子節點 比如是乙個 id 為 test 的 div元素,我們這樣選中,test 我們要查詢這個div下的乙個class為demo的span元素,有一下幾種方法 1 使用篩選條件 test span.demo 2 使用find 函式 test find span.demo 3 使用childr...

日記俠 你真的想知道引流的方法嗎?

你好,我是王剛,行走於網路江湖的 日記俠 每天分享我的思考和經驗,希望身邊的人可以和我一樣天天寫日記,今天是王剛日記第554天。引流,引就是吸引,流就是流量,也就是使用者,簡單說就是吸引使用者。為什麼要吸引?在哪吸引?誰來吸引?要吸引誰?這4個問題你能搞定就是高手!1 昨天,分享商學院的夥伴易寒做了...