Project

General

Profile

Task #1388

Updated by Junxiao Shi almost 10 years ago

Topology: A-B connected on same IPv4 subnet and same IPv6 subnet. Both are NDN nodes. 

 Script is invoked on host A. Script should control other hosts over ssh.   
 multi-host.conf has these variables defined: `CTRL_B`, `IP4_A1`, `IP6_A1`, `IP4_B1`, `IP6_B1` Argument: IPv4 and IPv6 address of host A and host B. 

 **nfdc create / add-nexthop / destroy test case** Steps: 

 1.    Start NFD on host A and B.   
     
     * Unless otherwise noted, perform all steps below on host A. 
 2.    Execute nfd-status. Check the existence of udp4/udp6/ether multicast faces. 
 3.    Invoke `nfdc create tcp://$IP4_B1`. nfdc to connect to host B over tcp4. Pause 2 5 seconds for connection establishment. 
 4.    Execute nfd-status. Check the existence of new tcp4 face. 
 5.    Invoke `nfdc create tcp://[$IP6_B1]`. nfdc to connect to host B over tcp6. Pause 2 5 seconds for connection establishment. 
 6.    Execute nfd-status. Check the existence of new tcp6 face. 
 7.    Invoke `nfdc create udp://$IP4_B1`. nfdc to connect to host B over udp4. Pause 2 5 seconds for connection establishment. 
 8.    Execute nfd-status. Check the existence of new udp4 face. 
 9.    Invoke `nfdc create udp://[$IP6_B1]`. nfdc to connect to host B over udp6. Pause 2 5 seconds for connection establishment. 
 10. Execute nfd-status. Check the existence of new udp6 face. 
 11. Invoke nfdc to add a nexthop for `ndn:/test-nfdc` with cost 24 toward FaceId face created in step 3. 
 12. Invoke nfdc to add a nexthop for `ndn:/test-nfdc` with cost 26 toward FaceId face created in step 5. 
 13. Invoke nfdc to add a nexthop for `ndn:/test-nfdc` with cost 14 toward FaceId face created in step 7. 
 14. Invoke nfdc to add a nexthop for `ndn:/test-nfdc` with cost 16 toward FaceId face created in step 9. 
 15. Execute nfd-status. Check the existence of `ndn:/test-nfdc` FIB entry, and the correctness of cost on nexthop records. 
 16. Invoke nfdc to choose BroadcastStrategy for `ndn:/` namespace. 
 17. Invoke ndn-tlv-ping to send 100 Interests under `ndn:/test-nfdc` prefix.   
     
     * Pause 50ms before sending each Interest. 
 18. Execute nfd-status. Verify NOutInterests counters of faces created in step 3,5,7,9 are greater than 60. 
 19. On host B, execute nfd-status. Check the existence of tcp4, tcp6, udp4, udp6 faces with host A's address. Verify NInInterests counters for those faces are greater than 60. 
 20. Invoke nfdc to destroy FaceIds created in step 3,5. 
 21. Execute nfd-status. Check the non-existence of tcp4 and tcp6 faces. 

 **nfdc add-nexthop / remove-nexthop test case** 

 1.    Start NFD on host A and B.   
     Unless otherwise noted, perform all steps below on host A. 
 2.    Invoke `nfdc add-nexthop -c 44 ndn:/test-nfdc udp4://$IP4_B1`. Pause 2 seconds for connection establishment. 
 3.    Execute nfd-status. Check the existence of new tcp4 face. 
     Check the existence of `ndn:/test-nfdc` FIB entry, and the correctness of cost on nexthop records. 
 4.    Invoke nfdc to remove the nexthop for FaceId seen in step 3. 
 5.    Execute nfd-status. Check the non-existence of `ndn:/test-nfdc` FIB entry. 

 **nfdc register / unregister test case** 

 1.    Start NFD on host A and B.   
     Unless otherwise noted, perform all steps below on host A. 
 2.    Invoke `nfdc register -c 55 ndn:/test-nfdc udp4://$IP4_B1`. Pause 2 seconds for connection establishment. 
 3.    Execute nfd-status. Check the existence of new tcp4 face. 
     Check the existence of `ndn:/test-nfdc` FIB entry, and the correctness of cost on nexthop records. 
 4.    Invoke nfdc to unregister the prefix `ndn:/test-nfdc` for FaceId seen in step 3. 
 5.    Execute nfd-status. Check the non-existence of `ndn:/test-nfdc` FIB entry. 

 Script can assume integrated test suite is cloned to all hosts, necessary programs are installed and accessible in $PATH, and current user can ssh to other hosts and has sudo privilege.

Back