原创 VPP使用心得(十六)静态路由添加流程
? ??通過ip route add可以添加靜態路由。
? ? 添加一條靜態路由 ip route add 10.10.10.0/24 via 10.10.1.3,其中,vpp中有一個host-vpp1out的接口,其接口IP為10.10.1.2/24.
? ? 命令觸發后,會生成對應的fib_entry(具體的路由條目),fib_entry_source(路由產生的源信息)、fib_path_list(下一跳列表)、fib_path(具體的下一跳信息)。由于這條命令觸發的路由為迭代路由,VPP還會為10.10.1.3這個下一跳創建一個32位掩碼的路由,類型為RR,其下一跳是ATTACH_AND_NEXTHOP。
? ? 這兩條路由生成后,還會生成對應的DPO信息,10.1.1.3/32這條路由的是一個LOAD_BALANCE的DPO,然后在鏈接一個ADJ的DPO,10.10.10.0/24這條路由會復制10.1.1.3/32的DPO。
? ? 路由生成后會解析下一跳,其中10.1.1.3/32這條路由就是10.10.10.0/24這條路由在解析下一跳時生成的。解析主要是迭代出最后的路由出接口和下一跳地址信息(ADJ)。在VPP中,會為ADJ的DPO嘗試發送ARP請求。
? ? 解析完后會驗證一下增加這條路由后,是否存在路由迭代循環,這里是一個遞歸函數處理的。
? ? 之后會把路由添加到MTIRE表和HASH表中,分別供轉發和控制使用。
總結
以上是生活随笔為你收集整理的原创 VPP使用心得(十六)静态路由添加流程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【有利可图网】推荐!设计师必备配色宝典!
- 下一篇: 从零玩转第三方登录之QQ登录