关于vpp agent的处理北向和南向的理解
1 vpp agent处理acl的时候,采用格式/etcd/path/acl/acl-label下发2 vpp处理acl的时候,采用格式acl add srcip 1234 dstip 2341在返回结果里会生成一个id3 如何将label和id统一起来?4 有两种方法,方法一,是将vpp的处理acl的接口多增加一个label。这样做的有一个nat44-ed中的DNAT是这样处理的。方法二,是不修
1 vpp agent处理acl的时候,采用格式
/etcd/path/acl/acl-label
下发
2 vpp处理acl的时候,采用格式
acl add srcip 1234 dstip 2341
在返回结果里会生成一个id
3 如何将label和id统一起来?
4 有两种方法,
方法一,是将vpp的处理acl的接口多增加一个label。这样做的有一个nat44-ed中的DNAT是这样处理的。
方法二,是不修改vpp的代码,在vpp-agent里面做文章。详细描述如下,
5
描述符(descriptor)里包括了获取,更新,删除等针对南向(即对VPP)的操作。
在获取dump的时候,至少要获取到id信息。
6
在执行删除的时候,分别两种情况,一种是resync(vpp-agent刚启动,在和vpp同步配置).此种情况,vpp-agent会删除配置,配置来自于5的获取(retrieve或dump),这些获取的数据来自vpp,因而只有id,没有label。此时的删除针对id进行删除即可。
7 删除的第二种情况,是正常vpp-agent向vpp发送来自etcd的kv指令。
ETCDCTL_API=3 etcdctl del /vnf-agent/vpp1/config/vpp/cnat/v2/cnat/目的地址转换测试2
例如上面所谓正常指令。这种情况label vpp-agent是先前加过的,因而可基于label和id的映射(map)删除。
这里比较关键的是6这一步。相当于区分好是谁在基于什么信息做删除。
同步时时vpp-agent基于来自vpp的配置信息,去删除vpp的配置。
更多推荐

所有评论(0)