欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

OVS源码--bridge&bundle&port分析(十九)

程序员文章站 2022-04-30 10:39:47
...

一、按照用途划分,openvswitch中桥、端口大致可以分成如下几类:

1、配置管理

主要对象包括:bridge、port、interface。

2、openflow

主要对象包括:ofproto、ofproto_dpif、ofbundle、ofport、ofport_dpif。

3、端口镜像

主要对象包括:mbridge、mbundle。

4、upcall处理

主要对象包括:xbridge、xbundle、xport。

二、各对象之间的关系
OVS源码--bridge&bundle&port分析(十九)

三、各对象生成时间

1、ofproto创建路径(实际为ofproto_dpif对象)

bridge_run->bridge_reconfigure->ofproto_create->alloc

2、ofbundle创建路径

bridge_run->bridge_reconfigure->port_configure->ofproto_bundle_register->bundle_set

3、ofport创建路径

bridge_run->bridge_reconfigure->ofproto_create-> alloc

4、xbridge创建路径

bridge_run->bridge_run__->ofproto_type_run->type_run->xlate_ofproto_set

5、xbundle创建路径

bridge_run->bridge_run__->ofproto_type_run->type_run->xlate_bundle_set

6、xport创建路径

bridge_run->bridge_run__->ofproto_type_run->type_run->xlate_ofport_set

7、mbridge创建路径

bridge_run->bridge_reconfigure->ofproto_create->alloc  //与ofproto相同,ofproto对象创建时会同时创建mbridge对象

8、mbundle创建路径

bridge_run->bridge_reconfigure->port_configure->ofproto_bundle_register->bundle_set  //与ofbundle相同,创建ofbundle时会同时创建mbundle对象

创建类似多个对象目前看到的一个好处是模块之间耦合度低!

原文链接:https://blog.csdn.net/one_clouder/article/details/52175828

相关标签: