linux核心 策略路由之初始化

2021-07-16 22:27:59 字數 1314 閱讀 9982

4.2 路由策略初始化

路由策略的初始化,主要分為通用策略規則初始化和協議相關的策略規則初始化。

4.2.1 通用策略規則初始化

功能:註冊通知鏈,包括裝置註冊和登出時的通知。

static int __init fib_rules_init(void)

4.2.2 協議相關的策略規則初始化

這裡主要講ipv4協議相關初始化fib4_rules_init

功能:(1)註冊fib4_rules_ops

(2)建立local、main、default規則表,添到rules_list

(3)將fib4_rules_ops添到rules_ops中。

int __net_init fib4_rules_init(struct net *net)

4.2.2.1 初始化ipv4操作集

初始化ipv4對應的操作集fib_rules_ops,並規定ipv4的規則為fib4_rule。

static struct fib_rules_ops fib4_rules_ops_template = ;

4.2.2.2 註冊策略規則函式

功能:

(1)對fib_rules_ops進行合理性檢查,操作函式是否為空

(2)將傳入的fib_rules_ops新增到rules_ops中。

int fib_rules_register(struct fib_rules_ops *ops)

4.2.2.3 增加local/main/default策略規則

功能:

(1)增加local/main/default,並添到rules_list鍊錶中。

static int fib_default_rules_init(struct fib_rules_ops *ops)

新增預設規則,將新分配的fib_rule,掛到rules_list鍊錶

int fib_default_rule_add(struct fib_rules_ops *ops,

u32 pref, u32 table, u32 flags)

linux核心 路由fib表之初始化

1 路由表操作 主要實現下列功能 a 路由表初始化 b 路由建立 c 路由刪除 1.1 路由表的初始化 路由表的初始化由ip fib init函式實現的,功能 a 註冊路由操作相關函式 b 將路由模組新增到網路命令空間 c 註冊網路裝置狀態和位址變化到通知鏈 d 為fib node和fib alia...

Linux核心驅動之初始化和關停

模組初始化函式註冊模組提供的任何功能.這些功能,我們指的是新功能,可以由應用程式訪問的或者一整個驅動或者乙個新軟體抽象.實際的初始化函式定義常常如 static int init initialization function void module init initialization func...

linux核心初始化

1 系統的引導和初始化 linux 系統的引導有好幾種方式 常見的有 lilo,loadin引導和linux的自舉引導 bootsect loader 而後者所對應源程式為arch i386 boot bootsect.s,它為實模式的匯程式設計序,無論是哪種引導方式,最後都要跳轉到 arch i3...