Project

General

Profile

Feature #2201

Updated by Junxiao Shi over 9 years ago

Develop an [integration test](http://gerrit.named-data.net/#/admin/projects/NFD/integration-tests) for remote prefix registration. 

 ## Topology 

     A---B 

 IPv4 UDP tunnel is used. 

 ## Steps 

 1.    generate certificates on A for these identities, in RIB daemon's KeyChain: 
     * ndn:/Z/A ndn:/A self-signed 
     * ndn:/Z/A/nrd ndn:/A/nrd signed by ndn:/Z/A ndn:/A 
     * ndn:/Z/A/B/C ndn:/A/B/C signed by ndn:/Z/A ndn:/A 
     * ndn:/Z/A/B/C/D/E/nrd ndn:/A/B/C/D/E/nrd signed by ndn:/Z/A/B/C ndn:/A/B/C 
     * ndn:/Z/F ndn:/F self-signed 
 2.    configure NFD on A: 
     * enable remote prefix registration 
     * set remote registration refreshing time to 15 seconds 
 3.    configure NFD on B: 
     * set UDP face timeout to 35 seconds 
     * enable acceptance of prefix registration using `ndn:/localhop/nfd/rib` command prefix 
     * make ndn:/Z/A ndn:/A a trust anchor for prefix remote registration using `ndn:/localhop/nfd/rib` command prefix 
     * set broadcast strategy for ndn:/ UDP face timeout to 35 seconds 
 4.    start NFD (including RIB Daemon) on A,B 
 5.    start repo-ng on A, and put all certificates generated in step 1 into the repository 
 6.    start `nfd-autoreg --prefix=/Z` on B 
 7.    execute nfdc on A to create a face toward B over UDP 
 8.    start ndnpingserver for ndn:/Z/A/G ndn:/A/G on A, defer 5 seconds 
 9. 6.    inspect RIB on B, fail the test case if Route for ndn:/Z/A ndn:/A toward A exists 
 10. execute nfdc on A to register a Route for ndn:/localhop/nfd on the face created in step 7 
 11. defer 5 seconds 
 12. inspect RIB on B, fail the test case if Route for ndn:/Z/A toward A does not exist 
 13. 7.    start ndnpingserver for ndn:/Z/A/H ndn:/A/H on A, defer 5 seconds 
 14. 8.    inspect RIB on B, fail the test case if Route for ndn:/Z/A ndn:/A toward A does not exist 
 15. 9.    stop ndnpingserver from step 8, 5, defer 5 seconds 
 16. 10. inspect RIB on B, fail the test case if Route for ndn:/Z/A ndn:/A toward A does not exist 
 17. 11. stop ndnpingserver from step 13, 7, defer 5 seconds 
 18. 12. inspect RIB on B, fail the test case if Route for ndn:/Z/A ndn:/A toward A exists 
 19. 13. start ndnpingserver for ndn:/Z/A/B/C/D ndn:/A/B/C/D on A, defer 5 seconds 
 20. 14. inspect RIB on B, fail the test case if Route for ndn:/Z/A ndn:/A toward A exists, does not exist, fail the test case if Route for ndn:/Z/A/B/C ndn:/A/B/C toward A does not exist exists 
 21. 15. stop ndnpingserver from step 19 13 
 22. 16. start ndnpingserver for ndn:/Z/A/B/C/D/E ndn:/A/B/C/D/E on A, defer 5 seconds 
 23. 17. inspect RIB on B, fail the test case if Route for ndn:/Z/A ndn:/A toward A exists, fail the test case if Route for ndn:/Z/A/B/C ndn:/A/B/C/D/E toward A exists, fail the test case if Route for ndn:/Z/A/B/C/D/E toward A does not exist 
 24. 18. defer 80 45 seconds 
 25. 19. inspect RIB on B, fail the test case if Route for ndn:/Z/A/B/C/D/E ndn:/A/B/C/D/E toward A does not exist 
 26. 20. start ndnpingserver for ndn:/Z/F/I ndn:/F/I on A, defer 5 seconds 
 26. 21. inspect RIB on B, fail the test case if Route for ndn:/Z/F ndn:/F or ndn:/F/I toward A exists

Back