Skip to content
This repository has been archived by the owner. It is now read-only.
Permalink
Browse files

bgp_rfapi_basic_sanity: added check_timeout (uses FRR PR#2934)

Signed-off-by: Lou Berger <lberger@labn.net>
  • Loading branch information...
louberger committed Aug 28, 2018
1 parent ef4f599 commit 43c7b9ab356b6919b687ab0750379af1d5c3909b
@@ -19,6 +19,8 @@ router bgp 5226
address-family ipv4 vpn
neighbor 2.2.2.2 activate
exit-address-family
!
rfp holddown-factor 100
!
vnc defaults
rd auto:vn:123
@@ -17,6 +17,8 @@ router bgp 5226
address-family ipv4 vpn
neighbor 2.2.2.2 activate
exit-address-family
!
rfp holddown-factor 100
!
vnc defaults
rd auto:vn:123
@@ -18,6 +18,8 @@ router bgp 5226
address-family ipv4 vpn
neighbor 2.2.2.2 activate
exit-address-family
!
rfp holddown-factor 100
!
vnc defaults
rd auto:vn:123
@@ -7,4 +7,4 @@
luCommand('r4','vtysh -c "show bgp vrf all summary"',' 00:0','pass','All adjacencies up')
luCommand('r1','ping 3.3.3.3 -c 1',' 0. packet loss','wait','PE->PE3 (loopback) ping')
luCommand('r1','ping 4.4.4.4 -c 1',' 0. packet loss','wait','PE->PE4 (loopback) ping')
luCommand('r4','ping 3.3.3.3 -c 1',' 0. packet loss','wait','PE->PE3 (loopback) ping')
#luCommand('r4','ping 3.3.3.3 -c 1',' 0. packet loss','wait','PE->PE3 (loopback) ping')
@@ -0,0 +1,56 @@
from lutil import luCommand
holddownFactorSet = luCommand('r1','vtysh -c "show running"','rfp holddown-factor','none','Holddown factor set')
if not holddownFactorSet:
luCommand('r1','vtysh -c "show vnc summary"','.','pass','Holddown factor not set -- skipping test')
else:
#holddown time test
luCommand('r1','vtysh -c "debug rfapi-dev register vn 10.0.0.1 un 1.1.1.1 prefix 1.111.0.0/16 lifetime 10"','', 'none', 'Prefix registered')
luCommand('r1','vtysh -c "show vnc registrations local"','1.111.0.0/16','wait','Local registration')

luCommand('r3','vtysh -c "debug rfapi-dev register vn 10.0.0.2 un 2.2.2.2 prefix 1.222.0.0/16 lifetime 10"','', 'none', 'Prefix registered')
luCommand('r3','vtysh -c "show vnc registrations local"','1.222.0.0/16','wait','Local registration')

luCommand('r4','vtysh -c "show vnc registrations"','Remotely: *Active: 4 ','wait', 'See registrations, L=10')
luCommand('r1','vtysh -c "show vnc registrations"','.','none')
luCommand('r3','vtysh -c "show vnc registrations"','.','none')

luCommand('r4','vtysh -c "debug rfapi-dev query vn 10.0.0.3 un 3.3.3.3 target 111.111.111.111"','pfx=', 'pass', 'Query R1s info')
luCommand('r4','vtysh -c "debug rfapi-dev query vn 10.0.0.3 un 3.3.3.3 target 1.222.222.222"','pfx=', 'pass', 'Query R3s info')

luCommand('r1','vtysh -c "debug rfapi-dev unregister vn 10.0.0.1 un 1.1.1.1 prefix 1.111.0.0/16"','', 'none', 'Prefix timeout')
luCommand('r1','vtysh -c "show vnc registrations"','1.111.0.0/16','wait','Local holddown',1)
luCommand('r3','vtysh -c "debug rfapi-dev unregister vn 10.0.0.2 un 2.2.2.2 prefix 1.222.0.0/16"','', 'none', 'Prefix timeout')
luCommand('r3','vtysh -c "show vnc registrations"','1.222.0.0/16','wait','Local holddown',1)
luCommand('r4','vtysh -c "show vnc registrations"','.','none')
luCommand('r4','vtysh -c "show vnc registrations"','.','none')

luCommand('r4','vtysh -c "show vnc registrations"','In Holddown: *Active: 2 ','wait', 'In holddown')
luCommand('r1','vtysh -c "show vnc registrations"','In Holddown: *Active: 2 ','wait', 'In holddown')
luCommand('r3','vtysh -c "show vnc registrations"','In Holddown: *Active: 2 ','wait', 'In holddown')

luCommand('r1','vtysh -c "show vnc registrations"','Locally: *Active: 1 .* Remotely: *Active: 2 .*In Holddown: *Active: 0','wait','Out of holddown',20)
luCommand('r3','vtysh -c "show vnc registrations"','Locally: *Active: 1 .* Remotely: *Active: 2 .*In Holddown: *Active: 0','wait','Out of holddown')
luCommand('r4','vtysh -c "show vnc registrations"','Locally: *Active: 1 .* Remotely: *Active: 2 .*In Holddown: *Active: 0','wait','Out of holddown')

#kill test
luCommand('r1','vtysh -c "debug rfapi-dev register vn 10.0.0.1 un 1.1.1.1 prefix 1.111.0.0/16 lifetime 10"','', 'none', 'Prefix registered')
luCommand('r1','vtysh -c "show vnc registrations local"','1.111.0.0/16','wait','Local registration')

luCommand('r3','vtysh -c "debug rfapi-dev register vn 10.0.0.2 un 2.2.2.2 prefix 1.222.0.0/16 lifetime 10"','', 'none', 'Prefix registered')
luCommand('r3','vtysh -c "show vnc registrations local"','1.222.0.0/16','wait','Local registration')

luCommand('r4','vtysh -c "show vnc registrations"','Remotely: *Active: 4 ','wait', 'See registrations L=10 (pre-kill)',5)
luCommand('r1','vtysh -c "show vnc registrations"','.','none')
luCommand('r3','vtysh -c "show vnc registrations"','.','none')
luCommand('r1','vtysh -c "debug rfapi-dev unregister vn 10.0.0.1 un 1.1.1.1 prefix 1.111.0.0/16 kill"','', 'none', 'Prefix kill')
luCommand('r1','vtysh -c "show vnc registrations"','Locally: *Active: 1 .* Remotely: *Active: 3 .*In Holddown: *Active: 0','wait','Registration killed',1)
luCommand('r3','vtysh -c "show vnc registrations"','Locally: *Active: 2 .* Remotely: *Active: 2 .*In Holddown: *Active: 1','wait','Remote in holddown',5)
luCommand('r4','vtysh -c "show vnc registrations"','Locally: *Active: 1 .* Remotely: *Active: 3 .*In Holddown: *Active: 1','wait','Remote in holddown',5)

luCommand('r3','vtysh -c "debug rfapi-dev unregister vn 10.0.0.2 un 2.2.2.2 prefix 1.222.0.0/16 kill"','', 'none', 'Prefix kill')
luCommand('r3','vtysh -c "show vnc registrations"','Locally: *Active: 1 .* Remotely: *Active: 2 .*In Holddown: *Active: 1','wait','Registration killed',1)
luCommand('r4','vtysh -c "show vnc registrations"','Locally: *Active: 1 .* Remotely: *Active: 2 .*In Holddown: *Active: 2','wait','Remote in hold down',5)

luCommand('r1','vtysh -c "show vnc registrations"','Locally: *Active: 1 .* Remotely: *Active: 2 .*In Holddown: *Active: 0','wait','Out of holddown',20)
luCommand('r3','vtysh -c "show vnc registrations"','Locally: *Active: 1 .* Remotely: *Active: 2 .*In Holddown: *Active: 0','wait','Out of holddown')
luCommand('r4','vtysh -c "show vnc registrations"','Locally: *Active: 1 .* Remotely: *Active: 2 .*In Holddown: *Active: 0','wait','Out of holddown')
@@ -65,6 +65,15 @@ def test_check_close():
#CheckFunc = 'ltemplateVersionCheck(\'3.1\', cli=True)'
ltemplateTest('scripts/check_close.py', False, CliOnFail, CheckFunc)

def test_check_timeout():
CliOnFail = None
# For debugging, uncomment the next line
#CliOnFail = 'tgen.mininet_cli'
CheckFunc = 'ltemplateVersionCheck(\'3.1\')'
#uncomment next line to start cli *before* script is run
#CheckFunc = 'ltemplateVersionCheck(\'3.1\', cli=True)'
ltemplateTest('scripts/check_timeout.py', False, CliOnFail, CheckFunc)

def test_cleanup_all():
CliOnFail = None
# For debugging, uncomment the next line

0 comments on commit 43c7b9a

Please sign in to comment.
You can’t perform that action at this time.