IPSEC: SPD counters in the stats sgement
- return the stats_index of each SPD in the create API call - no ip_any in the API as this creates 2 SPD entries. client must add both v4 and v6 explicitly - only one pool of SPD entries (rhter than one per-SPD) to support this - no packets/bytes in the dump API. Polling the stats segment is much more efficient (if the SA lifetime is based on packet/bytes) - emit the policy index in the packet trace and CLI commands. Change-Id: I7eaf52c9d0495fa24450facf55229941279b8569 Signed-off-by: Neale Ranns <nranns@cisco.com>
This commit is contained in:
@ -111,7 +111,7 @@ class VppIpsecSpdEntry(VppObject):
|
||||
self.remote_port_stop = remote_port_stop
|
||||
|
||||
def add_vpp_config(self):
|
||||
self.test.vapi.ipsec_spd_entry_add_del(
|
||||
rv = self.test.vapi.ipsec_spd_entry_add_del(
|
||||
self.spd.id,
|
||||
self.sa_id,
|
||||
self.local_start,
|
||||
@ -127,6 +127,7 @@ class VppIpsecSpdEntry(VppObject):
|
||||
local_port_stop=self.local_port_stop,
|
||||
remote_port_start=self.remote_port_start,
|
||||
remote_port_stop=self.remote_port_stop)
|
||||
self.stat_index = rv.stat_index
|
||||
self.test.registry.register(self, self.test.logger)
|
||||
|
||||
def remove_vpp_config(self):
|
||||
@ -171,6 +172,10 @@ class VppIpsecSpdEntry(VppObject):
|
||||
return True
|
||||
return False
|
||||
|
||||
def get_stats(self):
|
||||
c = self.test.statistics.get_counter("/net/ipsec/policy")
|
||||
return c[0][self.stat_index]
|
||||
|
||||
|
||||
class VppIpsecSA(VppObject):
|
||||
"""
|
||||
|
Reference in New Issue
Block a user