I went to a training session where I was learning to use some software. The course was administered through the use of virtual machines. The instructor had a laptop that was running some sort of virtual machine server whereby he would create a virtual machine for each student in the course and through the use of a wireless router, he had us use our own laptops as a thin client to do a remote desktop into the virtual machine session.
In my line of work, we also do many training sessions. The main difference is that we use software in combination with some hardware on the local network. Right now, each student has a laptop, two industrial electronic devices attached to the network, and a switch to facilitate these connections. All of this is provided by us.
The headache is that I have to restore each laptop to a previous state after each training session is complete. Also, if we want more students in a class, we would need to purchase more laptops.
So my question is, is it possible to push this architecture into a virtual machine similar to the instance I described in the beginning of my question? I need to keep the networks for each student isolated from each other (edit).
I have tried doing research on the internet but my experience with virtual machines has been just as a user and I am not clear about the possible network architectures possible with a virtual machines.
Edit:
So apparently I can't include images in my question unless I have at least ten reputation points, so I made a link to it instead. It is a diagram to help illustrate the problem better.