OVS 埠抽象層次(四十)

2021-10-07 09:07:13 字數 723 閱讀 9292

struct vport抽象的是ovs中datapath層的每個埠,通過它將ovs中的各種資料結構與port關聯起來,而結構體netdev_vport 就是vport和底層真實網路裝置結構net_device的入口,關鍵資料結構如下:

* 對網路裝置的封裝。

*/struct netdev_vport

;那麼如何由vport訪問到具體的真實裝置呢?ovs實現中把在vport的私有儲存區中儲存了其對應的netdev_vport,這樣便可以在需要的時候直接獲取,方法如下:

/**

* vport_priv - 訪問這個vport的私有資料區

* 因為在create 這個vport的時候分配的私有資料區的大小sizeof(struct netdev_vport),

* 所以就可以把vport對應的netdev_vport存在裡面,便於發布。

*/static

inline

void

*vport_priv

(const

struct vport *vport)

抽象的層次

軟體開發之所以複雜,是因為業務需求與程式語言之間存在的巨大鴻溝,有太多的變數。你無法清晰和準確的描述你所想要的東西,而即便你能,你也很難最後實現出來的東西是不是你所想要的。因為,在軟體業,巨集觀的業務需求很多時候竟然是程式設計師決定的,要確定乙個特性具體會怎樣體現,你竟然不得不去看源 就好比說,製作...

抽象的層次

軟體開發之所以複雜,是因為業務需求與程式語言之間存在的巨大鴻溝,有太多的變數。你無法清晰和準確的描述你所想要的東西,而即便你能,你也很難最後實現出來的東西是不是你所想要的。因為,在軟體業,巨集觀的業務需求很多時候竟然是程式設計師決定的,要確定乙個特性具體會怎樣體現,你竟然不得不去看源 就好比說,製作...

OVS搭建虛擬機器全過程(四十五)

系統 ubuntu14.04.1 核心 4.4.0 make install注意 建議將所有環境變數儲存到 etc profile中,這樣重啟之後依舊可以使用,如 vi etc profileexport ovs dir usr src openvswitch 2.6.6 export db soc...