US12411170B2 - Containerized orchestration of secure socket layer virtual private network benchmarking - Google Patents
Containerized orchestration of secure socket layer virtual private network benchmarkingInfo
- Publication number
- US12411170B2 US12411170B2 US17/876,479 US202217876479A US12411170B2 US 12411170 B2 US12411170 B2 US 12411170B2 US 202217876479 A US202217876479 A US 202217876479A US 12411170 B2 US12411170 B2 US 12411170B2
- Authority
- US
- United States
- Prior art keywords
- test
- pod
- benchmark
- event
- dut
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active, expires
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/31712—Input or output aspects
- G01R31/31713—Input or output interfaces for test, e.g. test pins, buffers
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
- G01R31/318314—Tools, e.g. program interfaces, test suite, test bench, simulation hardware, test compiler, test program languages
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/31719—Security aspects, e.g. preventing unauthorised access during test
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/16—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/20—Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
Definitions
- the disclosed subject matter relates to secure socket layer (SSL) virtual private network (VPN) benchmarking, and more specifically to employing containerized orchestration technology to improve automation of SSL VPN benchmarking enabling more robust benchmarking of devices under test (DUTs).
- SSL secure socket layer
- VPN virtual private network
- SSL secure sockets layer
- VPN virtual private network
- FIG. 1 is an illustration of an example system that can facilitate testing of a SSL VPN enabled device, in accordance with aspects of the subject disclosure.
- FIG. 2 is an illustration of an example system that can facilitate interrogation of a SSL VPN enabled device based on scalable containerized test events, in accordance with aspects of the subject disclosure.
- FIG. 3 is an illustration of an example system that can enable provisioning containerized a test event populated with an event image that can be selected from a repository of event images to support testing of a SSL VPN enabled device, in accordance with aspects of the subject disclosure.
- FIG. 4 illustrates an example system that can facilitate validating a test event container employed in testing of a SSL VPN enabled device, in accordance with aspects of the subject disclosure.
- FIG. 5 illustrates an example system that can facilitate compiling and rendering of result data resulting from testing of a SSL VPN enabled device, in accordance with aspects of the subject disclosure.
- FIG. 6 is an illustration of an example system enabling self-service benchmarking of one or more SSL VPN enabled devices, in accordance with aspects of the subject disclosure.
- FIG. 7 illustrates an example method, facilitating testing of a SSL VPN enabled device employing scalable containerized test events, in accordance with aspects of the subject disclosure.
- FIG. 8 illustrates an example method, enabling development of containerized events comprising selectable test event images supporting benchmarking of a SSL VPN enabled device, in accordance with aspects of the subject disclosure.
- FIG. 9 depicts an example schematic block diagram of a computing environment with which the disclosed subject matter can interact.
- FIG. 10 illustrates an example block diagram of a computing system operable to execute the disclosed systems and methods in accordance with an embodiment.
- SSL VPN secure sockets layer
- VPN virtual private network
- a vendor offering a SSL VPN product will then typically provide a customer with a vendor's own performance data that the customer must then rely on.
- a customer usually does not have a flexible, cost-effective, and low effort way to perform their own benchmarking to compare against vendor provided performance data.
- a customer usually just has to take for granted the vendor performance data, which can be high risk where customer products can then be dependent upon the accuracy of the vendor-provided performance data. Where the vendor-data may be incorrect, invested resources and money can be jeopardized.
- tests are individually developed, e.g., as a pilot test, for each different SSL VPN appliance being considered by a customer.
- a pilot test typically employs only a few network tunnels to a VPN concentrator. This allows a small sample test to be performed, which is then multiplied to provide a ‘rough guess’ on expected performance of the SSL VPN appliance being tested, hereinafter generally referred to as a device-under-test (DUT).
- DUT device-under-test
- typically pilot tests are individually developed for each different DUT, at great expense in money, effort, time, resources, etc.
- the subject matter disclosed herein proposes accommodation of multiple DUT tests, e.g., an environment that supports SSL VPN benchmarking of different DUTs from one or more security product vendors.
- the disclosed subject matter can support selectable test criteria, scalable testing that can be more expansive than pilot testing, testing across one or more physical and/or virtual SSL VPN devices, enable easier/rapid permutation of testing and/or retesting, etc. It is expected that the disclosure can reduce the workload needed to instigate a benchmarking test of a DUT, and typically reduce the cost of performing said testing.
- the disclosed subject matter can perform multiple tests with many more sessions via scaling of test event containers and, moreover, can perform benchmarking on many different DUTs.
- the testing events of different DUTs can be selected to be comparable, enabling comparison of the performances of the different DUTs.
- a containerized application/workload/service can be leveraged to containerize testing of a DUT.
- a containerized application/workload/service can be an application/workload/service that can run in an isolated runtime environment called a container, container instance, etc., typically referred to hereinafter as an ‘event image(s)’.
- a container instance can encapsulate an application/workload/service with all needed dependencies, including system libraries, binaries, configuration files, consumable data, etc.
- One or more event images can be comprised in a container group, referred to hereinafter as a ‘pod’, e.g., a pod can comprise one or more event images.
- Containerization can be cloud based and/or premise based, e.g., can be a virtual containerization component, a physical containerization component, or any combination thereof. Whereas containerization can be used in various computing tasks, a general containerization environment can, for example, support containerization related to the disclosed subject matter alone or contemporaneously with other unrelated or related containerization activities, wherein containerization related to the disclosed subject matter can be regarded as one or more instance(s) of a dedicated containerization component(s) specifically adapted to the benchmark testing of one or more SSL VPN device(s).
- a KUBERNETES cluster can support a first containerization instance for a car maker that is unrelated to a second consumerization instance for a network provider specifically adapted for testing SSL VPNs, as disclosed herein, without departing from the scope if the instant application.
- the general applicability of containerization to both the example first containerization instance and second containerization instance demonstrates that while a containerization environment can be regarded as general purpose, each containerization instance should be regarded as specific purpose and not general purpose.
- a containerization instance can provision one or more pod(s), e.g., one or more groups of container instance(s), e.g., a pod can be provisioned with any number of event images.
- an event image can be an application, workload, service, data, etc., or combinations thereof.
- an event image can act as a SSL agent, emulate a user accessing and engaging with a social media service, emulate a user navigating a webpage, emulate malware/virus traffic, simulate data for VoIP services, or emulate, simulate, etc., any data, traffic, executable, parameter, etc., for nearly any type of communication expected to travers a SSL VPN encrypted link between a sever and a client, e.g., information flow across a vendor's SSL VPN appliance being treated as a DUT.
- a pod can be applied to a DUT to evaluate the performance of the DUT.
- the event images of one or more pod(s) can be scaled via a containerization instance to enable testing of any nearly any number of interactions with a DUT.
- SSL agent event image and a HTTP payload container event image can be comprised in a pod to establish a very generic SSL VPN tunnel to a DUT.
- Other services such as TCP and UDP payload event images, etc., can also be added to one or more pods. Each pod can then attempt to establish a separate tunnel to a DUT and performance of the DUT can be evaluated. Rather than just a few tunnels typical of a conventional pilot test, massive numbers of pods can be replicated in the containerization instance, each applying pressure to the DUT via a separate tunnel with separately selectable event images.
- Containerization instance application programming interfaces generally support pod replication and, where one pod can equate to one SSL VPN tunnel to a DUT, replication of, and permutation of, pods can permit efficient and low-cost truly massive testing of one or more DUT.
- the ‘ReplicaSet’ function can enable maintaining a stable set of replica pods running at any given time.
- ReplicaSet or other analogous functions in other containerization environments such as REDHAT OPENSHIFT, etc.
- REDHAT OPENSHIFT can be used to guarantee the availability of number of identical pods, and applying these types of functions to SSL VPN testing can support increasing a count of SSL VPN tunnels to one or more DUTs.
- a reference pod can be mutated into several child pods to which ReplicaSet-type functions can be applied to enable massive testing with varied pods, for example, one group of pods can be tailored to a proprietary SSL VPN API for a first vendor's DUT, that can be different form a second group of pods comprising a different variant of the SSL VPN tailored to a second vendor's DUT.
- one or more different pod(s) can be directed at each DUT, e.g., all DUTs can face a first consistent group of pods and each of those DUTs can individually also face additional pods tailored specifically to each DUT. Numerous other pod and event image manipulations will be readily appreciated by one of skill in the art and all of these are to be considered within the scope of the instant subject matter, even where not explicitly recited for the sake of clarity and brevity.
- the disclosed subject matter can support accessing the DUT via the DUT's API. This can provide more directly querying and observing DUT performance, e.g., by a reporting component as disclosed elsewhere herein.
- This access to the DUT API can improve visibility into the DUT, and therefore can provide more seamless benchmarking report capability, e.g., the disclosed example systems can use the DUT API commands to ‘talk’ to the DUT and retrieve performance metric value(s). The performance metric value(s) can then be updated in near real time. In an aspect, this can also provide improved control over the benchmark testing.
- the ReplicaSet-type function can be used to decrease a count of pods being applied to reduce the load on the DUT in near real time.
- the ReplicaSet-type function can be used to increase a count of pods, the selected mix of event images can be adapted, etc., on the fly, to increase/change the load on the DUT, also in near real time. This can be in improvement over running a test, then logging into a DUT to review the results or monitor performance of the DUT during testing which can result in a tester needing to switch back and forth between the DUT and the presently disclosed testing system(s).
- the ability to employ containerization instances in a containerization environment can facilitate deployment of the presently disclosed subject matter on nearly any scale and in nearly any location.
- this can enable a testing provider to provide the disclosed testing services, e.g., via web portal, etc., to other entities, e.g., a smaller entity can rent time on the disclosed testing platform from a larger entity that can be better positioned to implement the testing platform as a service.
- FIG. 1 is an illustration of a system 100 , which can facilitate testing of a SSL VPN enabled device, in accordance with aspects of the subject disclosure.
- System 100 can comprise test portal component (TPC) 110 that can receive test input information 102 .
- Test input information 102 can be generated, for example, by a test engineer and/or other user, by an automated test information generating system, such as a fuzz testing system, artificial intelligence, machine learning system, etc., and/or can be generated by other entities/systems.
- TPC 110 can include a testing information input interface (UX) that can, in some embodiments include a graphical, test, or other input mechanism, to facilitate input of test input information 102 .
- UX testing information input interface
- TPC 110 can support a web page interface that can enable graphical and/or text entry of test input information 102 .
- TPC 110 can be connected to authentication component 120 to facilitate authentication of test input information 102 to TPC 110 .
- a test engineer can be authenticated to TPC 110 via authentication component 120 prior to accepting test input information 102 as valid/permitted input to TPC 110 .
- test input information 102 generated by an external test input generating system which test input generating system can be validated via authentication component 120 prior to TPC 110 permitting test input information 102 received from the example external test input generating system to be employed for testing of a DUT.
- a DUT can be a physical firewall, virtual firewall, physical server, server deployed in a virtual environment, or other device or virtual instance supporting establishment of a SSL VPN communication link, e.g., between a client and a server, etc.
- TPC 110 can enable generation of test event information (TEI) used to test DUTs, e.g., first TEI 111 , second TEI 113 , L-th TEI 115 , etc., can be employed in testing first DUT component 130 , second DUT component 132 , M-th DUT component 134 , etc.
- TEI can be based on test input information 102 .
- test input information 102 can have a 1:1 correspondence to TEIs, DUTs, or combinations thereof.
- test input information 102 can comprise testing information for two types of DUTs, which can then result in first TEI 111 and second TEI 113 that can be used to test first DUT component 130 and second DUT component 132 correspondingly.
- test input information 102 can comprise testing information for two types of DUTs, which can then result in only first TEI 111 that can be used to test both first DUT component 130 and second DUT component 132 correspondingly, e.g., the same TEI can be used to test two different DUTs.
- test input information 102 can comprise testing information for two types of DUTs, which can then result in first TEI 111 that can be used to test first DUT component 130 , and second TEI 113 that can be used to test second DUT component 132 and a third DUT component (not illustrated).
- test input information 102 can comprise testing information for one type of DUT, which can then result in first TEI 111 and second TEI 113 that can be used to test first DUT component 130 .
- test input information 102 can have a 1:many correspondence to TEIs, DUTs, or combinations thereof.
- test input information 102 can comprise testing information for one type of DUT can result in first TEI 111 , second TEI 113 , . . . , L-th TEI 115 , etc., that can be used to test one or more DUTs, e.g., first DUT component 130 , second DUT component 132 , . . . , M-th DUT component 134 , etc., in nearly any combination of TEI to DUT.
- test input information 102 can be mutated by TPC 110 to result in one or more TEIs, and these one or more TEIs can be used to test one or more DUTs, one or more types of DUTs, etc.
- Test of DUTs can result in result data, e.g., first result data 131 , second result data 133 , . . . , N-th result data 135 , etc. It becomes apparent that the result data can be generated more quickly and more affordably via TPC 110 than in comparison to conventional DUT testing schemes that typically are custom designed by test engineers to test specific DUTs in a one-off manner, e.g., pilot testing, hardware implemented to test a specific DUT, etc.
- Result data can be communicated back to TPC 110 to facilitate further testing, modification of testing on the fly, presentation of results, etc.
- result data may not be communicated back to TPC 110 , in which embodiments, result data can be accessed in myriad other manners, for example a test engineer can log into and directly access result data from the DUTs.
- FIG. 2 is an illustration of a system 200 , which can enable interrogation of a SSL VPN enabled device based on scalable containerized test events, in accordance with aspects of the subject disclosure.
- System 200 can comprise TPC 210 that can receive test input information 202 .
- TPC 210 can be connected to authentication component 220 to facilitate authentication of test input information 202 received by TPC 210 .
- a test engineer can be authenticated to TPC 210 via authentication component 220 prior to accepting test input information 202 as valid/permitted input to TPC 210 .
- TPC 110 can be communicatively coupled to API controller component (APICC) 240 .
- APICC 240 can facilitate generation of TEI used to test DUTs, e.g., first TEI 211 , second TEI 213 , L-th TEI 215 , etc., that can be employed in testing first DUT component 230 , second DUT component 232 , M-th DUT component 234 , etc.
- TEI can be based on test input information 202 received by TPC 210 .
- APICC 240 can facilitate generation of groups of event images as pods of one or more containerization instances, e.g., first pod 250 , second pod 252 , . . .
- a first KUBERNETES instance can comprise first pod 251 to P-th pod 253 .
- a first KUBERNETES instance can comprise first pod 251 and a second KUBERNETES instance can comprise second pod 252 , etc.
- a first KUBERNETES instance can comprise first pod 251 and a first REDHAT OPENSHIFT instance can comprise second pod 252 to P-th pod 253 , etc.
- APICC 240 can employ one or more pods in the generation of one or more TEIs reflecting test input information 202 received by TPC 210 .
- first pod 251 can be used to generate first TEI 111 via APICC 240
- second pod 252 correspondingly can be used to generate second TEI 213 , etc.
- first pod 251 can be used to generate first TEI 111 , second TEI 213 , etc., via APICC 240 .
- first pod 251 , second pod 252 , etc. can be used to generate first TEI 111 via APICC 240 .
- Test of DUTs e.g., first DUT component 230 , second DUT component 232 , . . . , M-th DUT component 234 , etc.
- the generated TEIs e.g., first TEI 211 , second TEI 213 , . . . , L-th TEI 215 , etc.
- result data can be communicated back to TPC 210 to facilitate subsequent testing, adaptation of ongoing testing, presentation of results, etc.
- result data may not be communicated back to TPC 210 , in which embodiments, result data can be accessed in myriad other manners, for example result data from one or more DUTs can be communicated directly to a test engineer, etc.
- FIG. 3 is an illustration of a system 300 , which can facilitate provisioning containerized a test event populated with an event image that can be selected from a repository of event images to support testing of a SSL VPN enabled device, in accordance with aspects of the subject disclosure.
- System 300 can comprise TPC 310 that can receive test input information.
- TPC 310 can be connected to an authentication component to facilitate determining a permission to use received of test input information, e.g., a test engineer can be authenticated to TPC 310 via the authentication component prior to permitting use of any received test input information.
- TPC 110 can be communicatively coupled to APICC 340 , which can facilitate generation of TEI used to test DUTs, e.g., first TEI 311 , etc., which can be employed in testing first DUT component 330 , etc.
- TEI can be based on test input information received by TPC 310 .
- APICC 340 can facilitate generation of groups of event images, e.g., first pod 351 , second pod 352 , . . . , P-th pod 353 , etc., supported by container component 350 .
- Pods e.g., first pod 351 , etc.
- An event image can be a container instance that can encapsulate an application, workload, service, etc., with all needed dependencies, including system libraries, binaries, configuration files, consumable data, etc.
- a pod can be deployed that can comprise a mix of nearly any number and combination of event images.
- first pod 351 can comprise an emulation of one or more SSL agents, an emulation of one or more video streaming events, an emulation of one or more web search events, etc.
- event images can emulate viruses, worms, denial of service attacks, or other malware.
- Other pods can be direct replicas of another pod, can be permutations of another pod, or can be pods comprising distinct other groups of event images.
- containerization instances can employ traditional pod replication functionality to multiply demands on one or more DUTs, typically at less cost and higher speed than conventional one-off buildouts of test platforms.
- containerization can be cloud based and/or premise based, e.g., can be a virtual containerization component, a physical containerization component, or any combination thereof, which can facilitate scalable deployment of DUT benchmarking that can be performed from nearly any location.
- first pod 351 can be used in the U.S.
- first pod 351 can be replicated in France into another containerization instance to test a server located in Paris where, in this example, it can be desirable to avoid trans-Atlantic network issues at the time of testing, however, it is noted that the example U.S.—based first pod 351 could easily be used to test the server in Paris where there is no concern with using the example trans-Atlantic network or where it is instead actually desirable to include the trans-Atlantic network in the testing of the example Paris DUT.
- Container component 350 can access one or more stored event images via container image repository component (CIRC) 360 .
- CIRC 360 can act as a library of stored event images, for example, previously developed event images, e.g., new event images developed independent of a current DUT benchmarking design phase, event images that have been used historically to test a type of DUT, e.g., reusing event images, etc.
- CIRC 360 can enable access to event images not stored by CIRC 360 , for example in external event image libraries, by accessing commercially available event images, e.g., event images designed by another entity and made available for use, such as for a fee, for access to testing results, etc., or other external event image resources.
- CIRC 360 can also generate event images.
- CIRC 360 can mutate a first event image to generate a second event image based on, but different from, the first event image.
- CIRC 360 can generate new event images, e.g., sua sponte. This can be enabled by analysis of testing needs, analysis of other event image usage, via artificial intelligence and/or machine learning determinations of desirable event images, etc.
- container component 350 can generate pods that can comprise one or more pods that comprise one or more groups of one or more event images, wherein the event images can be previously used, newly generated, purchased from outside developers, etc., via CIRC 360 .
- the pod(s) can then be employed in benchmark testing of one or more DUTs via APICC 340 , e.g., first TEI 311 can comprise a pod(s) to test first DUT component 330 , etc.
- Testing of a DUT(s) can generate result data, e.g., first result data 331 , etc.
- Result data can be communicated back to TPC 310 to facilitate subsequent testing, adaptation of ongoing testing, presentation of results, etc.
- first result data 331 TPC 310 , via APICC 340 , can indicate that first TEI 311 be modified, which can result, for example, in an additional pod being created from event images accessed via CIRC 360 , wherein first TEI 311 can be modified by APICC 340 to then cause further testing of first DUT component 330 based on the newly added pod, causing new NRT result data to be passed to TPC 310 that reflects the example modification.
- result data may not be communicated back to TPC 310 , in which embodiments, result data can be accessed in nearly any other manner, for example result data from one or more DUTs can be communicated to a result repository that can, for example, be accessed by an interested test engineer, etc.
- FIG. 4 is an illustration of a system 400 , which can enable validating a test event container employed in testing of a SSL VPN enabled device in accordance with aspects of the subject disclosure.
- System 400 can comprise TPC 410 that can receive test input information.
- TPC 410 can be connected to an authentication component to facilitate determining a permission to use received test input information.
- TPC 110 can be communicatively coupled to APICC 440 , which can facilitate generation of TEI used to test DUTs, e.g., first TEI 411 , etc., which can be employed in testing first DUT component 430 , etc.
- TEI can be based on test input information received by TPC 410 .
- APICC 440 can facilitate generation of groups of event images, e.g., first pod 450 , etc., supported by container component 450 .
- Pods e.g., first pod 451 , etc.
- An event image can be a container instance that can encapsulate an application, workload, service, etc., with all needed dependencies, including system libraries, binaries, configuration files, consumable data, etc.
- a pod can be deployed that can comprise a mix of nearly any number of, and any combination of, event images.
- first pod 351 can comprise an emulation of one or more SSL agents, an emulation of one or more video streaming events, an emulation of one or more web search events, etc.
- Other pods can be direct replicas of another pod, can be permutations of another pod, or can be pods comprising distinct other groups of event images.
- containerization instances can employ traditional pod replication functionality to multiply demands on one or more DUTs, typically at less cost and higher speed than conventional one-off buildouts of test platforms.
- containerization can be cloud based and/or premise based, e.g., can be a virtual containerization component, a physical containerization component, or any combination thereof, which can facilitate scalable deployment of DUT benchmarking that can be performed from nearly any location.
- a pod can include one or more event image, and whereas an event image can be mutation of another event image or a newly developed event image, it can be desirable to validate the pod as being sufficiently correlated to test input information and functional.
- an event image that is determined to not be sufficiently correlated to test input information, resulting in the pod comprising the event image to fail validation, can be cured prior to use.
- nonfunctional event images, and their defective pods can also be cured. Curing a pod, e.g., curing an event image of a pod, prior to use in a TEI can avoid unnecessary testing of the DUT, improper testing of the DUT, errant testing of the DUT, etc.
- a mutated event image can be determined to sufficiently deviate from a base event image to the extent that testing of the DUT with a pod comprising that mutated event would not be appropriate, such as the mutation causing the event image to be nonfunctional, include parameters that are outside of the desired benchmarking, contains no data or too little data, contains too much data or is otherwise oversized, etc.
- Validation of one or more pods can be performed via pod validation component (PVC) 462 .
- PVC pod validation component
- some event images of a validated pod can be stored as valid event images via CIRC 460 .
- Validation, via PVC 462 can for example, be performed by a human actor, by a machine, etc.
- a machine can emulate a known DUT(s) and can perfume validation checks of a pod against the emulated known DUT(s) to determine if the pod is causing the desired testing indicated via test input information received by TPC 410 .
- Curing a pod e.g., by curing the event images comprised in the pod, can be performed, for example, by a human actor, by APICC 440 , by container component 450 , etc. Curing can comprise simply discarding a pod and provisioning a new pod, discarding an event image(s) of a pod, in which case the pod can be modified to cure the defective event image(s) and revalidated by PVC 462 , or nearly any other curative action/event.
- attempting to provisioning a tunnel(s) for testing a DUT can be predicated on a pod being validated by PVC 462 .
- first pod 451 can be validated by PVC 462 , which validation can be regarded as permitting APICC 440 to initiate first tunnel 454 , through which first TEI 411 can be used to test first DUT component 430 .
- Testing of a DUT(s) can generate result data, e.g., first result data 431 , etc.
- Result data can be communicated back to TPC 410 to facilitate subsequent testing, adaptation of ongoing testing, presentation of results, etc.
- result data may not be communicated back to TPC 410 , in which embodiments, result data can be accessed in other appropriate ways.
- FIG. 5 is an illustration of a system 500 , which can support compiling of, and in some embodiments rendering of, result data resulting from testing of a SSL VPN enabled device, in accordance with aspects of the subject disclosure.
- System 500 can comprise TPC 510 that can receive test input information. Additionally, TPC 510 can be connected to an authentication component to facilitate determining a permission to use received test input information.
- TPC 110 can be communicatively coupled to APICC 540 , which can facilitate generation of TEI used to test DUTs, e.g., first TEI 511 , etc., which can be employed in testing first DUT component 530 , etc.
- TEI can be based on test input information received by TPC 510 .
- APICC 540 can facilitate generation of groups of event images, e.g., one or more pods, supported by a containerization instance.
- Pods can comprise one or more event images.
- An event image can be an instance of a container that can encapsulate an application, workload, service, etc., with all needed dependencies, including system libraries, binaries, configuration files, consumable data, etc.
- a pod can be deployed that can comprise a mix of nearly any number of, and any combination of, event images.
- first pod 351 can comprise an emulation of one or more SSL agents, an emulation of one or more video streaming events, an emulation of one or more web search events, etc.
- first DUT 530 can comprise first DUT API 5302 that can enable report component 564 to access result data, often as NRT result data. It can be valuable to have access to the DUT via a DUT API, especially in NRT. As an example, permitting truncation of benchmark testing where NRT results indicate further testing according to a current testing scheme is unwarranted.
- first TEI 511 can cause first DUT component 530 to become seriously overburdened and this can be monitored in NRT via first DUT API 5302 , for example.
- the benchmarking test can be terminated early, for example comparatively much earlier than waiting of the test to complete and first result data 531 to be accessible by report component 564 .
- access to performance via first DUT API 5302 such as via APICC 540 , can enable APICC 540 to modify the pod(s) being employed and first TEI 511 can then be adapted in NRT to change the testing of first DUT component 530 .
- Report component 564 can receive first result data 531 , and/or metrics of the test via first DUT API 5302 , and can compile a report(s) for consumption, e.g., for presentation to a test engineer, for ingestion into an test result analysis engine, for modification of pod(s) and/or event image(s), etc.
- a report generated by report component 564 , or pass-through of result data, e.g., first result data 531 , etc., can be communicated back to TPC 510 , APICC 540 , etc., to facilitate subsequent testing, adaptation of ongoing testing, presentation of results, etc.
- a report generated by report component 564 , and/or passed-through result data can be rendered via a display component 568 , e.g., a report can be displayed on a monitor for review by a test engineer, etc.
- NRT results can be rendered via display component 568 .
- result data may not be communicated back to TPC 510 via report component 564 , such as where testing result data is passed to test result analysis engines, etc.
- first result data 531 can be provided in response to a query by report component 564 , TPC 510 , etc.
- a human entity may need to request first result data 531 for delivery by email, CD-ROM, etc., where a DUT vendor choses not to allow report component 564 to poll for result data and also denies access to any DUT API, though these situations are likely to be rare.
- FIG. 6 is an illustration of a system 600 , which can support self-service benchmarking of one or more SSL VPN enabled devices, in accordance with aspects of the subject disclosure.
- System 600 can comprise TPC 610 that can receive test input information.
- TPC 610 can be connected to authentication component 620 , etc., to facilitate determining a permission to use received of test input information, e.g., from user 601 , etc., such as a test engineer, etc., which can be authenticated to TPC 610 via authentication component 620 prior to allowing use of any received test input information.
- TPC 110 can be communicatively coupled to APICC 640 , etc., that can facilitate generation of TEI used to test DUTs, e.g., DUT component 630 , etc.
- TEI can be based on test input information received by TPC 610 .
- APICC 640 can facilitate generation of groups of event images, e.g., first pod 651 , second pod 652 , . . . , P-th pod 653 , etc., supported by container component 650 .
- Pods, e.g., first pod 651 , etc. can comprise one or more event images, e.g., event image 6510 , event image 6512 , Q-th event image 6516 , etc.
- An event image can be an instance of a container that can encapsulate an application, workload, service, etc., typically with all needed dependencies, including system libraries, binaries, configuration files, consumable data, etc.
- a pod can be deployed that can comprise a mix of nearly any number of, and any combination of, event images.
- event images can comprise viruses, worms, denial of service attacks, or other malware.
- Some pods can be direct replicas of other pods, can be permutations of another pod, or can be pods comprising other groups of event images.
- containerization instances can employ pod replication functionality to multiply demands to be placed on one or more DUTs, typically at less cost and higher speed than conventional test platforms.
- containerization can be cloud based and/or premise based, e.g., can be a virtual containerization component, a physical containerization component, or any combination thereof, which can facilitate scalable deployment of DUT benchmark testing that can be performed from nearly any location.
- Container component 650 can access one or more event images stored via CIRC 660 .
- CIRCs can be comprised in container component 650 , e.g., local to container component 650 , and/or can be located external to container component 650 , e.g., remote from container component 650 .
- CIRC 660 can act as a library of stored event images, for example, previously developed event images, event images that have been used historically to test a type of DUT, etc.
- CIRC 660 can enable access to event images not stored by CIRC 660 , for example in event image libraries external to CIRC 660 .
- CIRC 660 can also generate, modify, adapt, mutate, etc., event images.
- CIRC 660 can mutate a first event image to generate a second event image based on, but different from, the first event image.
- container component 650 can generate pods that can comprise one or more pods that comprise one or more groups of one or more event images, wherein the event images can be previously used, newly generated, purchased from outside developers, etc., via CIRC 660 .
- the pod(s) can then be employed in benchmark testing of one or more DUTs via APICC 640 , e.g., TEI can comprise a pod(s) to test DUT component 630 , etc.
- Testing of a DUT(s) can generate result data that can be made accessible by report component 664 .
- Result data can be accessed by TPC 610 , e.g., via report component 664 , etc., to facilitate subsequent testing, adaptation of ongoing testing, presentation of results, etc.
- TPC 610 via APICC 640 , can indicate that the TEI be modified, which can result, for example, in an additional pod being created by container component 650 from event images accessed via CIRC 660 , wherein the TEI can be modified by APICC 640 to then cause further testing of DUT component 630 based on the newly added pod, causing new NRT result data to be accessible to TPC 610 that reflects the example modification.
- NRT near-real-time
- result data may not be communicated back to TPC 610 , in which embodiments, result data can be accessed in nearly any other manner, for example result data from one or more DUTs can be communicated to a result repository that can, for example, be accessed by an interested test engineer, etc.
- user 601 can indicate a benchmark test comprising 100 tunnels with the mixture of patterns of a simulated user surfing the web, e.g., via one or more event images of one or more pod(s).
- the traffic mixture can be composed of web search, social-media traffic, and movie streaming for example.
- the corresponding event image can provide benign active virus signature traffic, for example, a virus/malware signature(s) obtained from reputable threat research repository site, etc.
- User 601 can engage TPC 610 and log in, being authenticated via authentication component 620 , etc. After access has been established and authorization has been granted, and test input information affiliated with user 601 can be permitted to be used for deploying a benchmark test via APICC 640 .
- user 601 can set the number of tunnels to be used in the test to 100 tunnels, e.g., via a UX, etc.
- user 601 can also select a VPN configuration, e.g., to match a DUT to be tested, e.g., DUT component 630 , etc., such as setting an endpoint IP, e.g., a DUT IP address, etc., username, password, etc., to be included in a VPN setup, for example, that can be employed by an SSL VPN agent event image of a pod comprised in container component 650 , etc.
- User 601 can similarly check to see if the DUT is set up to allow multiple sessions from a same VPN user, or other parameters associated with the target DUT.
- Selection of available event images can be performed via the example UX by user 601 , e.g., via TPC 610 , APICC 640 , and container component 650 .
- This can enable user 601 to select different test traffic patterns to be included in a TEI used to test DUT component 630 , etc.
- Configuration of a pod based on the test input information from user 601 can then be validated, for example via PVC 462 , etc., and, where validated, APICC 640 can attempt to initiate a test connection, e.g., establishing one or more of the example selected 100 tunnels to DUT component 630 .
- Validation can process pod information, such as, that an IP address for DUT component 630 is reachable from APICC 640 , that TCP/443 is open and reachable, that a Username/Password are configured and working, etc.
- Validation errors can be presented to, and logged by, TPC 610 , e.g., via APICC 640 , etc.
- TPC 610 can generate a configuration that can include metadata or YAML configuration, where YAML is one example data serialization language that can be used for writing configuration files, etc. Configurations will be wrapped and encrypted, then sent to the APICC 640 .
- APICC 640 can translate the configuration into an appropriate format for an employed containerization environment, e.g., KUBERNETES, AZURE KUBERNETES SERVICE, RED HAT OPENSHIFT, etc.
- Container component 650 can use the translated configurations to deploy one or more pod(s) comprising one or more event images.
- building-out event image e.g., instances of a container(s)
- container component 650 can have connectivity with appropriate access and authorization to perform a task(s) corresponding to the build-out of a pod comprising an event image.
- Container replication functionality can be employed to replicate a pod into a plurality of pods that can contain the same event images, can contain permutations of the same event images, can contain some of the same event images with or without additional event images, etc.
- APICC 640 can attempt to establish one or more tunnels based on the one or more event images of the one or more pods to be used in benchmark testing of DUT component 630 , etc., e.g., an SSL agent event image of a pod can be employed to attempt establishing a tunnel to DUT component 630 and an automated script comprised in other event image(s) of the pod(s) can send traffic payload(s), for example, enabling contemporaneous or simultaneous communication of social media traffic patterns, web search traffic patterns, video stream traffic patterns, etc., via the tunnel. Accordingly, DUT component 630 can be stressed and performance can be tested, e.g., the test can attempt to establish 100 tunnels to DUT component 630 , each with selected traffic patterns, to gauge the performance of DUT component 630 , etc.
- an SSL agent event image of a pod can be employed to attempt establishing a tunnel to DUT component 630 and an automated script comprised in other event image(s) of the pod(s) can send traffic payload(s), for example
- Performance of DUT 630 during the benchmark testing can be embodied in result data.
- Result data can be NRT, can be compiled and made available outside of NRT, etc.
- a progress status explaining the behavior of the test can be accessible in NRT.
- result data can be accessible after conclusion of the benchmark testing.
- myriad key observation factors relating to performance of the benchmark testing and DUT component 630 can be presented to the user via report component 664 , etc., which can comprise, for example, a number of tunnel attempts, a count of tunnels completed, payload bandwidth, total bandwidth or cumulative bandwidth, concurrent session(s) bandwidth that, for example, can be calculated by the cumulative bandwidth divided by the number of successful tunnels, tunnel latency average, for example, can be calculated using RFC4656 ONE-WAY NETWORK LATENCY TESTING (OWAMP), using a ping, etc., a number of threats allowed, a number of threats denied, type(s) of threat(s) encountered, or nearly any other performance metric(s) germane to the benchmark testing.
- OWAMP RFC4656 ONE-WAY NETWORK LATENCY TESTING
- the performance testing process can be run via TPC 610 , e.g., via APICC 640 , container component 650 , etc., whereby user 601 can separately log into DUT component 630 to observe performance metrics while the DUT is under test. This can result in user 601 frequently switching back and forth between DUT component 630 and TPC 610 as a benchmarking test proceeds.
- many modern DUTs can be API enabled and accessible machine-to-machine, e.g., via DUT PI 6302 , etc.
- User 601 can indicate that DUT API 6302 is to be accessed as part of the benchmark testing, whereby APICC 640 can have visibility into the DUT as part of the testing.
- DUT component 630 can provide improved reporting capability over user 601 separately logging into the DUT, e.g., NRT/RT observation of DUT component 630 , etc., under test.
- APICC 640 can communicate with DUT API 6302 to command, control, monitor, etc., DUT component 630 , and can enable NRT/RT performance metric retrieval, e.g., to report component 664 , etc.
- Event images can include traffic patterns, application behaviors, etc.
- traffic pattern type(s) for OFFICE 365 cloud services, gaming, social media, peer-to-peer traffic, video streaming, conference calls, malware, etc.
- Example application behaviors can be similarly emulated for applications such as WORD, EXCEL, VISIO, OUTLOOK, SALESFORCE, GOOGLE DOCS, ZOHO, STREAM, MINECRAFT, ROBLOX, FACEBOOK, INSTAGRAM, TIKTOK, BITTORRENT, NAPSTER, NETFLIX, HBO MAX, AMAZON VIDEO, WEBEX, ZOOM, MS TEAMS, etc.
- Ala carte selection of event images can be an advantage of the disclosed subject matter.
- a pod can contain OUTLOOK traffic, SALESFORCE traffic, NETFLIX traffic, and NAPSTER traffic.
- This pod can be replicated in container component 650 and a first replicated pod can then be mutated to further include virus behavior, for example, while a second replicated pod can be mutated to substitute FACEBOOK traffic in lieu of the NAPSTER traffic.
- replication, mutation, etc., of pods can be readily automated. Accordingly, user 601 can have great flexibility to define granular traffic for testing of DUT component 630 .
- example method(s) that can be implemented in accordance with the disclosed subject matter can be better appreciated with reference to flowcharts in FIG. 7 - FIG. 8 .
- example methods disclosed herein are presented and described as a series of acts; however, it is to be understood and appreciated that the claimed subject matter is not limited by the order of acts, as some acts may occur in different orders and/or concurrently with other acts from that shown and described herein.
- one or more example methods disclosed herein could alternatively be represented as a series of interrelated states or events, such as in a state diagram.
- interaction diagram(s) may represent methods in accordance with the disclosed subject matter when disparate entities enact disparate portions of the methods.
- FIG. 7 illustrates example method 700 that facilitates testing of a SSL VPN enabled device employing scalable containerized test events, in accordance with aspects of the subject disclosure.
- Method 700 can comprise receiving test input information.
- Test input information can indicate parameters for a test of a SSL VPN component, e.g., a DUT.
- one or more groups of one or more event images e.g., container(s)
- container(s) can be determined based on the test input information and/or the parameters embodied in the test input information, e.g., one or more pods can be determined wherein each pod can comprise one or more event images as disclosed elsewhere herein.
- the pod(s) and/or event(s) can be determined based on the test input information.
- a first pod of the pod(s) can be replicated to generate other pod(s).
- the other pod(s) can be a strict copy of the first pod.
- one or more of the other pod(s) can be mutated to cause a portion of the other pod(s) to be different from the first pod and/or one or more of the other pods.
- the replication of the first pod can result in other pod(s) that can be permutations of the first pod, e.g., replication can be inclusive of alteration, mutation, adaptation, etc., in some embodiments.
- pod replication and/or mutation applied to a first pod can result in one or more other pods that can be the same, similar, or distinct from the first pod and/or some of the other pods.
- a first pod can include a first event image that can emulate an SSL agent and a second event image that can emulate transmitting just one IP packet.
- the first pod can be replicated to generate a second identical pod.
- the first pod can be replicated and mutated to generate a third pod that comprises the first event image of the SSL agent and a much more burdensome third event image emulating a user heavily interacting with a website, wherein the third event image can be substituted for the second event image, e.g., the third pod can be expected to more extensively burden a DUT in comparison to the first pod in this example.
- the third pod can be replicated to generate a fourth pod comprising the SSL agent event image, the third event image and an additional fourth, fifth, and sixth event image that can emulate other workloads, applications, etc., wherein the fourth pod can be expected to be even more of burden on a DUT than the third pod.
- This example demonstrates that replication and/or mutation of a container(s), e.g., an event image, a group of event images, etc., can provide an avenue to generating sufficiently large test events for one or more DUTs.
- Replication of a container is generally supported in many modern containerization environments.
- method 700 can comprise initiating testing of a group of SSL VPN components, e.g., DUTs, comprising the SSL VPN component, e.g., a DUT, based on the one or more groups, e.g., pod(s), of one or more event image(s).
- Test event information can be sent to a DUT(s) based on one or more event images of one or more pod.
- a pod can comprise several event images that can be communicated to a DUT to cause the DUT to attempt to correspondingly perform operations.
- an SSL agent event image can initiate a tunnel with a DUT, and similarly, several SSL agent event images can initiate several tunnels to the DUT.
- the performance of the DUT(s) can by monitored accordingly to characterize the performance of the DUT(s).
- pilot-testing typically only attempts to establish a few tunnels that have been generally manually configured
- the disclosed subject matter can rapidly and affordably attempt nearly any number of tunnels to one or more types of DUT, and can further apply numerous variations of loads to the DUT(s) based on event images that can be readily provisioned, replicated, mutated, etc.
- Method 700 can comprise presenting result data corresponding to the testing of the group of SSL VPN components.
- method 700 can end.
- one or more DUT(s) can be pressed into service.
- the performance of the DUT(s) can be characterized, measured, monitored, etc., so as to generate result data that can be presented to an entity, e.g., a user, user agent, results analysis system, etc.
- a pod can tunnel to a DUT in accord with event image(s) of the pod to burden the DUT.
- the example burdened DUT can be monitored such that performance metrics can be recorded, which can then be communicated to a test engineer, for example, in the form of an after-test report, in the form of near-real-time (NRT) or real-time (RT) data presented via a user interface (UX), in the form of values passed to a benchmark testing results analysis engine, etc.
- a test engineer for example, in the form of an after-test report, in the form of near-real-time (NRT) or real-time (RT) data presented via a user interface (UX), in the form of values passed to a benchmark testing results analysis engine, etc.
- NRT near-real-time
- RT real-time
- UX user interface
- FIG. 8 illustrates example method 800 facilitating development of containerized events comprising selectable test event images supporting benchmarking of a SSL VPN enabled device, in accordance with aspects of the subject disclosure.
- method 800 can comprise receiving test input information from an entity at a TPC, e.g., receiving test input information from a test engineer at a TPC, from an automated benchmark test design system at the TPC, etc.
- Test input information can indicate parameters for a test of a SSL VPN component, e.g., a DUT.
- the entity can be authenticated.
- a web-based UX can enable a test engineer to enter test input information.
- the test engineer can login to the TPC via the web-based UX to facilitate authenticating, verifying, etc., the test engineer as a valid user prior to permitting any test input information from the test engineer to be used.
- a test engineer can be affiliated with limited permissions, e.g., permission to test a portion of DUTs accessible via a TPC, etc., and, as such, authentication of the test engineer can correspond to permitting the received test input information to be employed in testing of the example portion of the accessible DUTs.
- one or more groups e.g., pod(s), of one or more event images, e.g., container(s)
- a first pod of the pod(s) can be replicated to generate other pod(s).
- the other pod(s) can be a strict copy of the first pod. Thereafter, one or more of the other pod(s) can be mutated to cause a portion of the other pod(s) to be different from the first pod and/or one or more of the other pods.
- the replication of the first pod can result in other pod(s) that can be permutations of the first pod, e.g., replication can be inclusive of alteration, mutation, adaptation, etc. Accordingly, pod replication and/or mutation applied to a first pod can result in one or more other pods that can be the same, similar, or distinct from the first pod and/or some of the other pods. Replication of a container is generally supported in many modern containerization environments.
- Method 800 can comprise validating one or more pods, each comprising one or more selected event images. Selection of event images, as disclosed elsewhere herein, can be based on the test input information. Moreover, an event of the event images can be selected from a group of predetermined event images, for example, via CIRC 360 , 460 , 660 , etc. These predetermined event images, in embodiments, can be further mutated, replicated, etc.
- a pod can comprise event image(s) from a library(ies) of previously used event image(s), from commercial vendors of event images, from other public or private data sources, etc., for example, a virus-type event image can be based on publicly available virus signature, traffic patterns, etc.
- a pod(s) can be validated as being germane to the testing in view of the received test input information. Moreover, the pod(s) can be validated as being functional, e.g., not comprising defective, conflicting, etc., event image(s), such as be running the pod against an emulation of a well understood DUT, or nearly any other manner of validating the functionality of the pod(s) prior to performing benchmark testing of a target DUT(s).
- method 800 can comprise initiating testing of a group of SSL VPN components, e.g., DUTs, comprising the SSL VPN component, e.g., a DUT, based on one or more valid pod(s), each comprising one or more event image(s).
- Test event information can be sent to a DUT(s) based on one or more event images of one or more validated pod.
- a valid pod can comprise several functional event images that can be communicated, via an initiated tunnel, to a DUT to cause the DUT to attempt to correspondingly perform operations.
- the performance of the DUT(s) can by monitored accordingly to characterize the performance of the DUT(s).
- Method 800 can comprise determining a result of the benchmark testing of the group of SSL VPN component(s).
- one or more DUT(s) can be pressed into service.
- the performance of the DUT(s) can be characterized, measured, monitored, etc., so as to generate result data that can be presented to an entity, e.g., a user, user agent, results analysis system, etc.
- result data corresponding to the testing of the group of SSL VPN component(s) can be accessed, for example via a TPC.
- a pod can tunnel to a DUT in accord with event image(s) of the pod to burden the DUT.
- the example burdened DUT can be monitored such that performance metrics can be recorded, which can then be communicated to a test engineer, for example, in the form of an after-test report, in the form of near-real-time (NRT) or real-time (RT) data presented via a user interface (UX), in the form of values passed to a benchmark testing results analysis engine, etc.
- Method 800 can comprise altering subsequent benchmark testing of the group of SSL VPN component(s) based on a result of the testing.
- method 800 can end.
- results can be determined, these results can then affect subsequent testing of a DUT(s).
- results from a completed first benchmark test of a DUT can be used to generate new test input data for a subsequent benchmark test, for example, where the DUT performed adequately with 10 tunnels and a group of event images, this adequate performance can be the premise of a more stressful subsequent test, for example with 200 tunnels, with variants of the event images, etc.
- results can be determined in NRT, or even RT
- the results can be used to alter subsequent testing by altering s future test design, by altering a test in progress, etc.
- a DUT can be under test and a NRT result can indicate that the DUT is not performing as expected.
- This NRT result can be received by a TPC that can then indicate, e.g., via an APICC, etc., modification of the test being run, for example, altering a parameter of one or more event image(s) of the pod being used to test the example DUT.
- the test can be adapted on the fly based on NRT results being monitored.
- a DUT can be under a first phase of a test and a NRT result can indicate that the DUT is not performing as expected.
- the test can have a first phase and a plurality of possible second phases.
- TPC can trigger operations based on the NRT result, such as selecting a second phase of the possible second phases of the test, e.g., steering test branching, etc.
- a result from testing a first DUT can be employed in modification of subsequent benchmark testing of other DUTs, e.g., the result from testing the first DUT can result in modifying an event image(s) and/or pod(s) applied to a second DUT.
- This modification of subsequent testing of other DUTs can also be applied to other DUT testing that is undergoing contemporaneous or simultaneous testing, or to subsequent tests of the other DUT(s) that can occur in the future.
- a NRT result of a first DUT test that has not yet completed can be employed to adapt testing of a second DUT that has also not yet completed testing.
- a NRT result of a first DUT test that has not yet completed can be employed to adapt testing of a second DUT that has not yet begun a subsequent test.
- a result of a first DUT test that has completed can be employed to adapt testing of a second DUT that has not yet completed testing.
- FIG. 9 is a schematic block diagram of a computing environment 900 with which the disclosed subject matter can interact.
- the system 900 comprises one or more remote component(s) 910 .
- the remote component(s) 910 can be hardware and/or software (e.g., threads, processes, computing devices).
- remote component(s) 910 can comprise TPC 110 - 610 , etc., authentication component 120 - 220 , 620 , etc., APICC 240 - 640 , etc., container component 250 - 450 , 650 , etc., CIRC 360 - 460 , 660 , etc., PVC 462 , etc., report component 564 , 664 , etc., display component 568 , etc., or any other component that is located remotely from another component of systems 100 - 600 , etc.
- the system 900 also comprises one or more local component(s) 920 .
- the local component(s) 920 can be hardware and/or software (e.g., threads, processes, computing devices).
- local component(s) 920 can comprise TPC 110 - 610 , etc., authentication component 120 - 220 , 620 , etc., APICC 240 - 640 , etc., container component 250 - 450 , 650 , etc., CIRC 360 - 460 , 660 , etc., PVC 462 , etc., report component 564 , 664 , etc., display component 568 , etc., or any other component that is located local to another component of systems 100 - 600 , etc.
- a TPC and an APICC can be at a first location and can communicate with a container component located at a second location to deploy testing of DUTs at several other remote locations.
- One possible communication between a remote component(s) 910 and a local component(s) 920 can be in the form of a data packet adapted to be transmitted between two or more computer processes.
- Another possible communication between a remote component(s) 910 and a local component(s) 920 can be in the form of circuit-switched data adapted to be transmitted between two or more computer processes in radio time slots.
- the system 900 comprises a communication framework 990 that can comprise path segments, path parts, etc., that can be employed to facilitate communications between the remote component(s) 910 and the local component(s) 920 , and can comprise a fiber segment, metal segment, e.g., copper segment, etc., an air interface segment, e.g., Uu interface of a UMTS network, via a long-term evolution (LTE) network, 5G, 6G, and/or another path segment.
- LTE long-term evolution
- Remote component(s) 910 can be operably connected to one or more remote data store(s) 992 , such as a hard drive, solid state drive, SIM card, eSIM, device memory, etc., that can be employed to store information on the remote component(s) 910 side of communication framework 990 .
- local component(s) 920 can be operably connected to one or more local data store(s) 994 , that can be employed to store information on the local component(s) 920 side of communication framework 990 .
- test input information, TEI, result data, NRT result data, RT result data, etc. can be communicated between components of systems 100 - 600 via a communication framework, e.g., communication framework 990 , etc.
- FIG. 10 In order to provide a context for the various aspects of the disclosed subject matter, FIG. 10 , and the following discussion, are intended to provide a brief, general description of a suitable environment in which the various aspects of the disclosed subject matter can be implemented. While the subject matter has been described above in the general context of computer-executable instructions of a computer program that runs on a computer and/or computers, those skilled in the art will recognize that the disclosed subject matter also can be implemented in combination with other program modules. Generally, program modules comprise routines, programs, components, data structures, etc. that performs particular tasks and/or implement particular abstract data types.
- nonvolatile memory can be included in read only memory, programmable read only memory, electrically programmable read only memory, electrically erasable read only memory, or flash memory.
- Volatile memory can comprise random access memory, which acts as external cache memory.
- random access memory is available in many forms such as synchronous random-access memory, dynamic random-access memory, synchronous dynamic random-access memory, double data rate synchronous dynamic random-access memory, enhanced synchronous dynamic random-access memory, SynchLink dynamic random-access memory, and direct Rambus random access memory.
- the disclosed memory components of systems or methods herein are intended to comprise, without being limited to comprising, these and any other suitable types of memory.
- the disclosed subject matter can be practiced with other computer system configurations, comprising single-processor or multiprocessor computer systems, mini-computing devices, mainframe computers, as well as personal computers, hand-held computing devices (e.g., personal digital assistant, phone, watch, tablet computers, netbook computers, . . . ), microprocessor-based or programmable consumer or industrial electronics, and the like.
- the illustrated aspects can also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network; however, some if not all aspects of the subject disclosure can be practiced on stand-alone computers.
- program modules can be located in both local and remote memory storage devices.
- FIG. 10 illustrates a block diagram of a computing system 1000 operable to execute the disclosed systems and methods in accordance with an embodiment.
- Computer 1012 which can be, for example, comprised in TPC 110 - 610 , etc., authentication component 120 - 220 , 620 , etc., APICC 240 - 640 , etc., container component 250 - 450 , 650 , etc., CIRC 360 - 460 , 660 , etc., PVC 462 , etc., report component 564 , 664 , etc., display component 568 , etc., or, or any other component of systems 100 - 500 , etc., can comprise a processing unit 1014 , a system memory 1016 , and a system bus 1018 .
- System bus 1018 couples system components comprising, but not limited to, system memory 1016 to processing unit 1014 .
- Processing unit 1014 can be any of various available processors. Dual microprocessors and other multiprocessor architectures also can be employed
- System bus 1018 can be any of several types of bus structure(s) comprising a memory bus or a memory controller, a peripheral bus or an external bus, and/or a local bus using any variety of available bus architectures comprising, but not limited to, industrial standard architecture, micro-channel architecture, extended industrial standard architecture, intelligent drive electronics, video electronics standards association local bus, peripheral component interconnect, card bus, universal serial bus, advanced graphics port, personal computer memory card international association bus, Firewire (Institute of Electrical and Electronics Engineers 1194 ), and small computer systems interface.
- bus architectures comprising, but not limited to, industrial standard architecture, micro-channel architecture, extended industrial standard architecture, intelligent drive electronics, video electronics standards association local bus, peripheral component interconnect, card bus, universal serial bus, advanced graphics port, personal computer memory card international association bus, Firewire (Institute of Electrical and Electronics Engineers 1194 ), and small computer systems interface.
- System memory 1016 can comprise volatile memory 1020 and nonvolatile memory 1022 .
- nonvolatile memory 1022 can comprise read only memory, programmable read only memory, electrically programmable read only memory, electrically erasable read only memory, or flash memory.
- Volatile memory 1020 comprises read only memory, which acts as external cache memory.
- read only memory is available in many forms such as synchronous random-access memory, dynamic read only memory, synchronous dynamic read only memory, double data rate synchronous dynamic read only memory, enhanced synchronous dynamic read only memory, SynchLink dynamic read only memory, Rambus direct read only memory, direct Rambus dynamic read only memory, and Rambus dynamic read only memory.
- Computer 1012 can also comprise removable/non-removable, volatile/non-volatile computer storage media.
- FIG. 10 illustrates, for example, disk storage 1024 .
- Disk storage 1024 comprises, but is not limited to, devices like a magnetic disk drive, floppy disk drive, tape drive, flash memory card, or memory stick.
- disk storage 1024 can comprise storage media separately or in combination with other storage media comprising, but not limited to, an optical disk drive such as a compact disk read only memory device, compact disk recordable drive, compact disk rewritable drive or a digital versatile disk read only memory.
- an optical disk drive such as a compact disk read only memory device, compact disk recordable drive, compact disk rewritable drive or a digital versatile disk read only memory.
- a removable or non-removable interface is typically used, such as interface 1026 .
- Computing devices typically comprise a variety of media, which can comprise computer-readable storage media or communications media, which two terms are used herein differently from one another as follows.
- Computer-readable storage media can be any available storage media that can be accessed by the computer and comprises both volatile and nonvolatile media, removable and non-removable media.
- Computer-readable storage media can be implemented in connection with any method or technology for storage of information such as computer-readable instructions, program modules, structured data, or unstructured data.
- Computer-readable storage media can comprise, but are not limited to, read only memory, programmable read only memory, electrically programmable read only memory, electrically erasable read only memory, flash memory or other memory technology, compact disk read only memory, digital versatile disk or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or other tangible media which can be used to store desired information.
- tangible media can comprise non-transitory media wherein the term “non-transitory” herein as may be applied to storage, memory, or computer-readable media, is to be understood to exclude only propagating transitory signals per se as a modifier and does not relinquish coverage of all standard storage, memory or computer-readable media that are not only propagating transitory signals per se.
- Computer-readable storage media can be accessed by one or more local or remote computing devices, e.g., via access requests, queries, or other data retrieval protocols, for a variety of operations with respect to the information stored by the medium.
- a computer-readable medium can comprise executable instructions stored thereon that, in response to execution, can cause a system comprising a processor to perform operations comprising, receiving test input information from an authenticated entity, wherein the test input information corresponds to preparation of a benchmark test for testing a device-under-test configured to demand communication via a secure sockets layer virtual private network, initiating provisioning a pod via a containerization environment instance, wherein the pod comprises an event image selected from a library of event images based on the test input information, wherein the pod is validated prior to determining test event information that is to be used to test a device-under-test, wherein the pod can undergo a container operation selected from a group of container operations comprising a pod replication operation, a pod mutation operation, and a provision new pod operation, and
- Communications media typically embody computer-readable instructions, data structures, program modules or other structured or unstructured data in a data signal such as a modulated data signal, e.g., a carrier wave or other transport mechanism, and comprises any information delivery or transport media.
- modulated data signal or signals refers to a signal that has one or more of its characteristics set or changed in such a manner as to encode information in one or more signals.
- communication media comprise wired media, such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media.
- FIG. 10 describes software that acts as an intermediary between users and computer resources described in suitable operating environment 1000 .
- Such software comprises an operating system 1028 .
- Operating system 1028 which can be stored on disk storage 1024 , acts to control and allocate resources of computer system 1012 .
- System applications 1030 take advantage of the management of resources by operating system 1028 through program modules 1032 and program data 1034 stored either in system memory 1016 or on disk storage 1024 . It is to be noted that the disclosed subject matter can be implemented with various operating systems or combinations of operating systems.
- a user can enter commands or information into computer 1012 through input device(s) 1036 .
- a user interface can allow entry of user preference information, etc., and can be embodied in a touch sensitive display panel, a mouse/pointer input to a graphical user interface (GUI), a command line-controlled interface, etc., allowing a user to interact with computer 1012 .
- Input devices 1036 comprise, but are not limited to, a pointing device such as a mouse, trackball, stylus, touch pad, keyboard, microphone, joystick, game pad, satellite dish, scanner, TV tuner card, digital camera, digital video camera, web camera, cell phone, smartphone, tablet computer, etc.
- Interface port(s) 1038 comprise, for example, a serial port, a parallel port, a game port, a universal serial bus, an infrared port, a Bluetooth port, an IP port, or a logical port associated with a wireless service, etc.
- Output device(s) 1040 use some of the same type of ports as input device(s) 1036 .
- a universal serial busport can be used to provide input to computer 1012 and to output information from computer 1012 to an output device 1040 .
- Output adapter 1042 is provided to illustrate that there are some output devices 1040 like monitors, speakers, and printers, among other output devices 1040 , which use special adapters.
- Output adapters 1042 comprise, by way of illustration and not limitation, video and sound cards that provide means of connection between output device 1040 and system bus 1018 . It should be noted that other devices and/or systems of devices provide both input and output capabilities such as remote computer(s) 1044 .
- Computer 1012 can operate in a networked environment using logical connections to one or more remote computers, such as remote computer(s) 1044 .
- Remote computer(s) 1044 can be a personal computer, a server, a router, a network PC, cloud storage, a cloud service, code executing in a cloud-computing environment, a workstation, a microprocessor-based appliance, a peer device, or other common network node and the like, and typically comprises many or all of the elements described relative to computer 1012 .
- a cloud computing environment, the cloud, or other similar terms can refer to computing that can share processing resources and data to one or more computer and/or other device(s) on an as needed basis to enable access to a shared pool of configurable computing resources that can be provisioned and released readily.
- Cloud computing and storage solutions can store and/or process data in third-party data centers which can leverage an economy of scale and can view accessing computing resources via a cloud service in a manner similar to a subscribing to an electric utility to access electrical energy, a telephone utility to access telephonic services, etc.
- Network interface 1048 encompasses wire and/or wireless communication networks such as local area networks and wide area networks.
- Local area network technologies comprise fiber distributed data interface, copper distributed data interface, Ethernet, Token Ring, and the like.
- Wide area network technologies comprise, but are not limited to, point-to-point links, circuit-switching networks like integrated services digital networks and variations thereon, packet switching networks, and digital subscriber lines.
- wireless technologies may be used in addition to or in place of the foregoing.
- Communication connection(s) 1050 refer(s) to hardware/software employed to connect network interface 1048 to bus 1018 . While communication connection 1050 is shown for illustrative clarity inside computer 1012 , it can also be external to computer 1012 .
- the hardware/software for connection to network interface 1048 can comprise, for example, internal and external technologies such as modems, comprising regular telephone grade modems, cable modems and digital subscriber line modems, integrated services digital network adapters, and Ethernet cards.
- processor can refer to substantially any computing processing unit or device comprising, but not limited to comprising, single-core processors; single-processors with software multithread execution capability; multi-core processors; multi-core processors with software multithread execution capability; multi-core processors with hardware multithread technology; parallel platforms; and parallel platforms with distributed shared memory.
- a processor can refer to an integrated circuit, an application specific integrated circuit, a digital signal processor, a field programmable gate array, a programmable logic controller, a complex programmable logic device, a discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein.
- processors can exploit nano-scale architectures such as, but not limited to, molecular and quantum-dot based transistors, switches, and gates, in order to optimize space usage or enhance performance of user equipment.
- a processor may also be implemented as a combination of computing processing units.
- a component may be, but is not limited to being, a process running on a processor, a processor, an object, an executable, a thread of execution, a program, and/or a computer.
- a component may be, but is not limited to being, a process running on a processor, a processor, an object, an executable, a thread of execution, a program, and/or a computer.
- an application running on a server and the server can be a component.
- One or more components may reside within a process and/or thread of execution and a component may be localized on one computer and/or distributed between two or more computers. In addition, these components can execute from various computer readable media having various data structures stored thereon. The components may communicate via local and/or remote processes such as in accordance with a signal having one or more data packets (e.g., data from one component interacting with another component in a local system, distributed system, and/or across a network such as the Internet with other systems via the signal).
- a signal having one or more data packets (e.g., data from one component interacting with another component in a local system, distributed system, and/or across a network such as the Internet with other systems via the signal).
- a component can be an apparatus with specific functionality provided by mechanical parts operated by electric or electronic circuitry, which is operated by a software or a firmware application executed by a processor, wherein the processor can be internal or external to the apparatus and executes at least a part of the software or firmware application.
- a component can be an apparatus that provides specific functionality through electronic components without mechanical parts, the electronic components can comprise a processor therein to execute software or firmware that confers at least in part the functionality of the electronic components.
- any particular embodiment or example in the present disclosure should not be treated as exclusive of any other particular embodiment or example, unless expressly indicated as such, e.g., a first embodiment that has aspect A and a second embodiment that has aspect B does not preclude a third embodiment that has aspect A and aspect B.
- the use of granular examples and embodiments is intended to simplify understanding of certain features, aspects, etc., of the disclosed subject matter and is not intended to limit the disclosure to said granular instances of the disclosed subject matter or to illustrate that combinations of embodiments of the disclosed subject matter were not contemplated at the time of actual or constructive reduction to practice.
- the term “include” is intended to be employed as an open or inclusive term, rather than a closed or exclusive term.
- the term “include” can be substituted with the term “comprising” and is to be treated with similar scope, unless otherwise explicitly used otherwise.
- a basket of fruit including an apple is to be treated with the same breadth of scope as, “a basket of fruit comprising an apple.”
- UE user equipment
- mobile station mobile
- subscriber station subscriber station
- subscriber equipment access terminal
- terminal terminal
- handset refers to a wireless device utilized by a subscriber or user of a wireless communication service to receive or convey data, control, voice, video, sound, gaming, or substantially any data-stream or signaling-stream.
- UE user equipment
- access point refers to a wireless network component or appliance that serves and receives data, control, voice, video, sound, gaming, or substantially any data-stream or signaling-stream to and from a set of subscriber stations or provider enabled devices.
- Data and signaling streams can comprise packetized or frame-based flows.
- Data or signal information exchange can comprise technology, such as, single user (SU) multiple-input and multiple-output (MIMO) (SU MIMO) radio(s), multiple user (MU) MIMO (MU MIMO) radio(s), long-term evolution (LTE), fifth generation partnership project (5G or 5GPP); sixth generation partnership project (6G or 6GPP), next generation (NG) radio, LTE time-division duplexing (TDD), global system for mobile communications (GSM), GSM EDGE Radio Access Network (GERAN), Wi Fi, WLAN, WiMax, CDMA2000, LTE new radio-access technology (LTE-NX), massive MIMO systems, etc.
- MIMO single user
- MU multiple-input and multiple-output
- MU MIMO radio(s)
- LTE long-term evolution
- 5G or 5GPP fifth generation partnership project
- 6G or 6GPP sixth generation partnership project
- NG next generation
- GSM global system for mobile communications
- GSM EDGE Radio Access Network GERAN
- Wi Fi Wireless
- core-network can refer to components of a telecommunications network that typically provides some or all of aggregation, authentication, call control and switching, charging, service invocation, or gateways.
- Aggregation can refer to the highest level of aggregation in a service provider network wherein the next level in the hierarchy under the core nodes is the distribution networks and then the edge networks.
- UEs do not normally connect directly to the core networks of a large service provider but can be routed to the core by way of a switch or radio access network.
- Authentication can refer to authenticating a user-identity to a user-account.
- Authentication can, in some embodiments, refer to determining whether a user-identity requesting a service from a telecom network is authorized to do so within the network or not.
- Call control and switching can refer determinations related to the future course of a call stream across carrier equipment based on the call signal processing.
- Charging can be related to the collation and processing of charging data generated by various network nodes. Two common types of charging mechanisms found in present day networks can be prepaid charging and postpaid charging. Service invocation can occur based on some explicit action (e.g., call transfer) or implicitly (e.g., call waiting). It is to be noted that service “execution” may or may not be a core network functionality as third-party network/nodes may take part in actual service execution.
- a gateway can be present in the core network to access other networks. Gateway functionality can be dependent on the type of the interface with another network.
- the terms “user,” “subscriber,” “customer,” “consumer,” “prosumer,” “agent,” and the like are employed interchangeably throughout the subject specification, unless context warrants particular distinction(s) among the terms. It should be appreciated that such terms can refer to human entities, machine learning components, or automated components (e.g., supported through artificial intelligence, as through a capacity to make inferences based on complex mathematical formalisms), that can provide simulated vision, sound recognition and so forth.
- Non-limiting examples of such technologies or networks comprise broadcast technologies (e.g., sub-Hertz, extremely low frequency, very low frequency, low frequency, medium frequency, high frequency, very high frequency, ultra-high frequency, super-high frequency, extremely high frequency, terahertz broadcasts, etc.); Ethernet; X.25; powerline-type networking, e.g., Powerline audio video Ethernet, etc.; femtocell technology; Wi-Fi; worldwide interoperability for microwave access; enhanced general packet radio service; second generation partnership project (2G or 2GPP); third generation partnership project (3G or 3GPP); fourth generation partnership project (4G or 4GPP); long term evolution (LTE); fifth generation partnership project (5G or 5GPP); sixth generation partnership project (6G or 6GPP); third generation partnership project universal mobile telecommunications system; third generation partnership project 2; ultra mobile broadband; high speed packet access
- broadcast technologies e.g., sub-Hertz, extremely low frequency, very low frequency, low frequency, medium frequency, high frequency, very high frequency, ultra-high frequency, super
- a millimeter wave broadcast technology can employ electromagnetic waves in the frequency spectrum from about 30 GHz to about 300 GHz. These millimeter waves can be generally situated between microwaves (from about 1 GHz to about 30 GHz) and infrared (IR) waves, and are sometimes referred to extremely high frequency (EHF).
- the wavelength ( ⁇ ) for millimeter waves is typically in the 1-mm to 10-mm range.
- the term “infer”, or “inference” can generally refer to the process of reasoning about, or inferring states of, the system, environment, user, and/or intent from a set of observations as captured via events and/or data. Captured data and events can include user data, device data, environment data, data from sensors, sensor data, application data, implicit data, explicit data, etc. Inference, for example, can be employed to identify a specific context or action, or can generate a probability distribution over states of interest based on a consideration of data and events. Inference can also refer to techniques employed for composing higher-level events from a set of events and/or data.
- Such inference results in the construction of new events or actions from a set of observed events and/or stored event data, whether the events, in some instances, can be correlated in close temporal proximity, and whether the events and data come from one or several event and data sources.
- Various classification schemes and/or systems e.g., support vector machines, neural networks, expert systems, Bayesian belief networks, fuzzy logic, and data fusion engines
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
Description
Claims (20)
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US17/876,479 US12411170B2 (en) | 2022-07-28 | 2022-07-28 | Containerized orchestration of secure socket layer virtual private network benchmarking |
| US19/322,568 US20260002989A1 (en) | 2022-07-28 | 2025-09-08 | Containerized orchestration of secure socket layer virtual private network benchmarking |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US17/876,479 US12411170B2 (en) | 2022-07-28 | 2022-07-28 | Containerized orchestration of secure socket layer virtual private network benchmarking |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US19/322,568 Continuation US20260002989A1 (en) | 2022-07-28 | 2025-09-08 | Containerized orchestration of secure socket layer virtual private network benchmarking |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| US20240036112A1 US20240036112A1 (en) | 2024-02-01 |
| US12411170B2 true US12411170B2 (en) | 2025-09-09 |
Family
ID=89665228
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US17/876,479 Active 2042-10-16 US12411170B2 (en) | 2022-07-28 | 2022-07-28 | Containerized orchestration of secure socket layer virtual private network benchmarking |
| US19/322,568 Pending US20260002989A1 (en) | 2022-07-28 | 2025-09-08 | Containerized orchestration of secure socket layer virtual private network benchmarking |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US19/322,568 Pending US20260002989A1 (en) | 2022-07-28 | 2025-09-08 | Containerized orchestration of secure socket layer virtual private network benchmarking |
Country Status (1)
| Country | Link |
|---|---|
| US (2) | US12411170B2 (en) |
Citations (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20190278681A1 (en) * | 2018-03-12 | 2019-09-12 | Spirent Communications, Inc. | Secure Method for Managing a Virtual Test Platform |
| US20190370162A1 (en) * | 2018-06-05 | 2019-12-05 | Wipro Limited | Method, system, and framework for testing a human machine interface (hmi) application on a target device |
| US11089076B1 (en) * | 2018-03-06 | 2021-08-10 | Amazon Technologies, Inc. | Automated detection of capacity for video streaming origin server |
| WO2022034482A2 (en) * | 2020-08-10 | 2022-02-17 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods for live testing of services in a cloud computing environment |
| US11310165B1 (en) * | 2013-11-11 | 2022-04-19 | Amazon Technologies, Inc. | Scalable production test service |
| US11307967B2 (en) * | 2019-02-04 | 2022-04-19 | Oracle International Corporation | Test orchestration platform |
| US20220158912A1 (en) * | 2020-11-16 | 2022-05-19 | Juniper Networks, Inc. | Active assurance of network slices |
| US20220237111A1 (en) * | 2021-01-23 | 2022-07-28 | Dido Solutions, Inc. | Distributed immutable data object testing |
| US11803456B2 (en) * | 2021-09-01 | 2023-10-31 | National Instruments Corporation | Distributed event-based test execution |
| US11829280B1 (en) * | 2020-08-17 | 2023-11-28 | Amazon Technologies, Inc. | Automatic test case generation and execution for containerization workflows |
-
2022
- 2022-07-28 US US17/876,479 patent/US12411170B2/en active Active
-
2025
- 2025-09-08 US US19/322,568 patent/US20260002989A1/en active Pending
Patent Citations (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11310165B1 (en) * | 2013-11-11 | 2022-04-19 | Amazon Technologies, Inc. | Scalable production test service |
| US11089076B1 (en) * | 2018-03-06 | 2021-08-10 | Amazon Technologies, Inc. | Automated detection of capacity for video streaming origin server |
| US20190278681A1 (en) * | 2018-03-12 | 2019-09-12 | Spirent Communications, Inc. | Secure Method for Managing a Virtual Test Platform |
| US20190370162A1 (en) * | 2018-06-05 | 2019-12-05 | Wipro Limited | Method, system, and framework for testing a human machine interface (hmi) application on a target device |
| US11307967B2 (en) * | 2019-02-04 | 2022-04-19 | Oracle International Corporation | Test orchestration platform |
| WO2022034482A2 (en) * | 2020-08-10 | 2022-02-17 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods for live testing of services in a cloud computing environment |
| US11829280B1 (en) * | 2020-08-17 | 2023-11-28 | Amazon Technologies, Inc. | Automatic test case generation and execution for containerization workflows |
| US20220158912A1 (en) * | 2020-11-16 | 2022-05-19 | Juniper Networks, Inc. | Active assurance of network slices |
| US20220237111A1 (en) * | 2021-01-23 | 2022-07-28 | Dido Solutions, Inc. | Distributed immutable data object testing |
| US11803456B2 (en) * | 2021-09-01 | 2023-10-31 | National Instruments Corporation | Distributed event-based test execution |
Non-Patent Citations (2)
| Title |
|---|
| A. Osman, S. Hanisch and T. Strufe, "SeCoNetBench: A modular framework for Secure Container Networking Benchmarks," 2019 IEEE European Symposium on Security and Privacy Workshops (EuroS&PW), Stockholm, Sweden, 2019, pp. 21-28, doi: 10.1109/EuroSPW.2019.00009. (Year: 2019). * |
| Ziqiang Wang "Design and Implementation of a Reliable Container-based Service Function Chaining Testbed in Cloud-native System: An Open Source Approach", sections 4 & 5, pp. 60-95, year 2022 (Year: 2022). * |
Also Published As
| Publication number | Publication date |
|---|---|
| US20260002989A1 (en) | 2026-01-01 |
| US20240036112A1 (en) | 2024-02-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Polese et al. | Understanding O-RAN: Architecture, interfaces, algorithms, security, and research challenges | |
| Polese et al. | Colosseum: The open RAN digital twin | |
| US10880173B2 (en) | Automated certification of network functions | |
| US12468515B2 (en) | Containerized network function deployment during runtime resource creation | |
| US11159416B1 (en) | Systems and methods of testing virtual private network communications using remote connectivity | |
| US20180295554A1 (en) | Mobile application testing engine | |
| US12487871B2 (en) | Systems and methods for detailed cloud posture remediation recommendations utilizing custom large language models (LLMs) | |
| JP2018503922A (en) | Test system for testing a computer of a computer system in a test network | |
| WO2022090809A1 (en) | Machine learning life cycle management for networks | |
| Klement et al. | Securing the open ran infrastructure: Exploring vulnerabilities in kubernetes deployments | |
| Mancini et al. | Scasdk-a development kit for security assurance test in multi-network-function 5g | |
| US20230388212A1 (en) | System for Creating Randomized Scaled Testing | |
| US12411170B2 (en) | Containerized orchestration of secure socket layer virtual private network benchmarking | |
| US12022385B2 (en) | Systems and methods for modeling container-based network functions | |
| US20250097741A1 (en) | Vendor onboarding and pre-deployment service testing | |
| Chuluundorj et al. | Generating stateful policies for iot device security with cross-device sensors | |
| US12501287B2 (en) | Autonomous onsite remediation of adverse conditions for network infrastructure in a fifth generation (5G) network or other next generation wireless communication system | |
| Attanayaka | A novel anomaly detection mechanism for Open radio access networks with Peer-to-Peer Federated Learning | |
| US20220264316A1 (en) | Launching radio spectrum resources into a fifth generation (5g) network or other next generation networks | |
| US20250094300A1 (en) | Vendor onboarding and pre-deployment service testing | |
| US12143415B1 (en) | Large scale asset evaluation and probing | |
| Akbarisamani | Service based architecture with service mesh platform in the context of 5g core | |
| Hosseinishamoushaki | Comparative Performance Analysis of free5GC and Open5GS Core Networks Using UERANSIM Integration | |
| US20250245134A1 (en) | Unified Connectivity Testing & Validtion System | |
| US20250370917A1 (en) | Software Acceptance Testing Platform |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
| AS | Assignment |
Owner name: AT&T INTELLECTUAL PROPERTY I, L.P., GEORGIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:CRUZ, ELMER;REEL/FRAME:061120/0779 Effective date: 20220728 |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT RECEIVED |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED |
|
| STCF | Information on status: patent grant |
Free format text: PATENTED CASE |