Methods, systems, and computer readable media for testing virtualized network functions and related infrastructure
According to one method, the method occurs at a test system. The method includes receiving test configuration information for testing a NFV infrastructure; configuring, using the test configuration information, at least one virtual resource tester (VRT) for testing one or more virtual resources of the NFV infrastructure; configuring at least one VNF tester for testing at least one VNF associated with the NFV infrastructure, wherein the at least one VNF tester is deployed in a same environment as the at least one VNF and wherein the at least one VNF tester is instructed to perform behaviors that attempt to impact performance of the at least one VNF; testing the NFV infrastructure using the at least one VRT and the at least one VNF tester; and monitoring performance of the NFV infrastructure during testing using information obtained from at least one test related entity.
1. A method for testing network function virtualization (NFV) infrastructure, the method comprising:
at a test system implemented using at least one processor:
receiving test configuration information for testing a NFV infrastructure;
configuring, using the test configuration information, at least one virtual resource tester (VRT) for testing one or more virtual resources of the NFV infrastructure, wherein the NFV infrastructure is implemented using at least one physical computing platform comprising a plurality of physical resources;
configuring at least one VNF tester for testing at least one VNF associated with the NFV infrastructure, wherein the at least one VNF tester is deployed in a same environment as the at least one VNF and wherein the at least one VNF tester is instructed to perform behaviors that attempt to impact performance of the at least one VNF, wherein the at least one VNF tester is instructed to attempt to monopolize resources of the NFV infrastructure available to the at least one VNF;
testing the NFV infrastructure by testing the one or more virtual resources of the NFV infrastructure using the at least one VRT and testing the at least one VNF associated with the NFV infrastructure by using the at least one VNF tester to request or use at least some of the resources of the NFV infrastructure available to the at least one VNF; and
monitoring performance of the NFV infrastructure during testing using information obtained from at least one test related entity, wherein monitoring the performance of the NFV infrastructure includes determining whether the at least one VNF is isolated from NFV infrastructure resource monopolization associated with the at least one VNF tester and wherein monitoring the performance of the NFV infrastructure includes querying a virtualized infrastructure manager (VIM) via an application programming interface to obtain test performance information and comparing the test performance information from the VIM and test performance information obtained from the at least one VNF tester, wherein the test system is external to the at least one physical computing platform implementing the NFV infrastructure and is external to a management system comprising the VIM.
2. The method of claim 1 comprising:
configuring a virtual traffic generator in the same environment as the at least one VNF, wherein the virtual traffic generator sends test traffic to the at least one VNF tester or the at least one VNF via an internal communications interface.
3. The method of claim 1 comprising:
configuring a traffic generator external to the at least one physical computing platform implementing the NFV infrastructure, wherein the traffic generator sends test traffic to the at least one VNF tester or the at least one VNF via an external communications interface.
4. The method of claim 1 wherein the test system is configured for sending instructions to a virtualized infrastructure manager (VIM) for triggering the VIM to instruct the at least one VNF tester.
5. The method of claim 4 wherein the test system is configured for testing the VIM by sending one or more test messages related to setting up, configuring, or tearing down VNFs, receiving responses to the test messages from the VIM, and determining performance of the VIM based on the responses.
6. The method of claim 1 wherein the at least one VRT tests a virtual storage resource, a virtual network resource, or a virtual compute resource.
7. The method of claim 1 wherein the test related entity includes the at least one VNF, the at least one VNF tester, a virtualized infrastructure manager (VIM), a NFV orchestrator, a VNF manager, or the at least one VRT.
8. The method of claim 1 wherein the at least one VNF includes a load balancing function, an intrusion detection function, an intrusion protection function, an antivirus function, an antispam function, a firewall function, a switching function, a policy and/or charging control function, a mobile communications network function, or a routing function.
9. A system for testing network function virtualization (NFV) infrastructure, the system comprising:
at least one processor;
memory; and
a test system implemented using the at least one processor and the memory, wherein the test system is configured for:
receiving test configuration information for testing a NFV infrastructure;
configuring, using the test configuration information, at least one virtual resource tester (VRT) for testing one or more virtual resources of the NFV infrastructure, wherein the NFV infrastructure is implemented using at least one physical computing platform comprising a plurality of physical resources;
configuring at least one VNF tester for testing at least one VNF associated with the NFV infrastructure, wherein the at least one VNF tester is deployed in a same environment as the at least one VNF and wherein the at least one VNF tester is instructed to perform behaviors that attempt to impact performance of the at least one VNF, wherein the at least one VNF tester is instructed to attempt to monopolize resources of the NFV infrastructure available to the at least one VNF;
testing the NFV infrastructure by testing the one or more virtual resources of the NFV infrastructure using the at least one VRT and testing the at least one VNF associated with the NFV infrastructure by using the at least one VNF tester to request or use at least some of the resources of the NFV infrastructure available to the at least one VNF; and
monitoring performance of the NFV infrastructure during testing using information obtained from at least one test related entity, wherein monitoring the performance of the NFV infrastructure includes determining whether the at least one VNF is isolated from NFV infrastructure resource monopolization associated with the at least one VNF tester and wherein monitoring the performance of the NFV infrastructure includes querying a virtualized infrastructure manager (VIM) via an application programming interface to obtain test performance information and comparing the test performance information from the VIM and test performance information obtained from the at least one VNF tester, wherein the test system is external to the at least one physical computing platform implementing the NFV infrastructure and is external to a management system comprising the VIM.
10. The system of claim 9 wherein the test system is configured for:
configuring a virtual traffic generator in the same environment as the at least one VNF, wherein the virtual traffic generator sends test traffic to the at least one VNF tester or the at least one VNF via an internal communications interface.
11. The system of claim 9 wherein the test system is configured for:
configuring a traffic generator external to the at least one physical computing platform implementing the NFV infrastructure, wherein the traffic generator sends test traffic to the at least one VNF tester or the at least one VNF via an external communications interface.
12. The system of claim 9 wherein the test system is configured for sending instructions to a virtualized infrastructure manager (VIM) for triggering the VIM to instruct the at least one VNF tester.
13. The system of claim 12 wherein the test system is configured for testing the VIM by sending one or more test messages related to setting up, configuring, or tearing down VNFs, receiving responses to the test messages from the VIM, and determining performance of the VIM based on the responses.
14. The system of claim 9 wherein the at least one VRT tests a virtual storage resource, a virtual network resource, or a virtual compute resource.
15. The system of claim 9 wherein the test related entity includes the at least one VNF, the at least one VNF tester, a virtualized infrastructure manager (VIM), a NFV orchestrator, a VNF manager, or the at least one VRT.
16. The system of claim 9 wherein the at least one VNF includes a load balancing function, an intrusion detection function, an intrusion protection function, an antivirus function, an antispam function, a firewall function, a switching function, a policy and/or charging control function, a mobile communications network function, or a routing function.
17. A non-transitory computer readable medium having stored thereon executable instructions embodied in the computer readable medium that when executed by at least one processor of a test system cause the test system to perform steps comprising:
receiving test configuration information for testing a network function virtualization (NFV) infrastructure;
configuring, using the test configuration information, at least one virtual resource tester (VRT) for testing one or more virtual resources of a NFV infrastructure, wherein the NFV infrastructure is implemented using at least one physical computing platform comprising a plurality of physical resources;
configuring at least one VNF tester for testing at least one VNF associated with the NFV infrastructure, wherein the at least one VNF tester is deployed in a same environment as the at least one VNF and wherein the at least one VNF tester is instructed to perform behaviors that attempt to impact performance of the at least one VNF, wherein the at least one VNF tester is instructed to attempt to monopolize resources of the NFV infrastructure available to the at least one VNF;
testing the NFV infrastructure by testing the one or more virtual resources of the NFV infrastructure using the at least one VRT and testing the at least one VNF associated with the NFV infrastructure by using the at least one VNF tester to request or use at least some of the resources of the NFV infrastructure available to and already used by the at least one VNF; and
monitoring performance of the NFV infrastructure during testing using information obtained from at least one test related entity, wherein monitoring the performance of the NFV infrastructure includes determining whether the at least one VNF is isolated from NFV infrastructure resource monopolization associated with the at least one VNF tester and wherein monitoring the performance of the NFV infrastructure includes querying a virtualized infrastructure manager (VIM) via an application programming interface to obtain test performance information and comparing the test performance information from the VIM and test performance information obtained from the at least one VNF tester, wherein the test system is external to the at least one physical computing platform implementing the NFV infrastructure and is external to a management system comprising the VIM.
18. The non-transitory computer readable medium of claim 17 comprising executable instructions for configuring a virtual traffic generator in the same environment as the at least one VNF, wherein the virtual traffic generator sends test traffic to the at least one VNF tester or the at least one VNF via an internal communications interface.