Menu

Choosing Class 1 vs Class 2 when running inside a Virtual Machine

Daniel
2023-06-15
2023-06-16
  • Daniel

    Daniel - 2023-06-15

    Dear Sir,

    I'm wondering which one of the options would be best for setting up a HylaFax server running inside a Virtual Machine.

    I can choose whatever Linux distro I want for the Virtual Machine, but unfortunately I cannot choose the Hypervisor, and I'm forced to use the existing Microsoft's Hyper-V hypervisor.

    There are two modems connected to the Hyper-V host through RS-232 serial ports:

    • Multitech MT9234ZBA (upgraded to the latest firmware version HLQG102L from July 2012)
    • US Robotics USR5630G (upgraded to the latest firmware version 5.45 from June 2012)

    The serial ports will be available to the Virtual Machine using Eltima Serial to Ethernet connector software. Although I'm open to suggestions in this regard. Would an open-source solution be better? Or would you recommend another commercial software?

    Given that the Hyper-V host is also hosting several other machines, I'm wondering what would be better for reliable fax connections?

    I could use Class 1 on both modems, but I understand that jitter and latency in the virtual machine can negatively impact big faxes with lots of pages.

    But I could also use Class 2 (to be exact, US Robotics supports Class 2.0, and Multitech supports Class 2, Class 2.0 and Class 2.1). My understanding is that using Class 2 offloads work from the CPU and could be more reliable with long faxes.

    Does anyone have experience running Fax Servers inside a Virtual Machine? Could you recommend which of the options I've mentioned is better?

     
    • Lee Howard

      Lee Howard - 2023-06-16

      I've never run a fax server in a virtual machine where it was using hardware modems. I've seen it done before, but I've never done it, myself.

      The MT9234ZBA will be a better fax modem than the USR.

      The difference in work for a CPU between driving a Class 1/1.0 modem as compared to a Class 2/2.0/2.1 modem is relatively negligible in today's CPU standards. You'll be better served by the enhanced features and protocol awareness when using Class 1/1.0 more than you'd be saving whatever problems could perhaps be avoided by using Class 2/2.0/2.1.

      I think that the biggest issue you will be facing in this configuration will be how well the virtual machine layer allows you reliable serial communication with the modems. That will be the most important thing for the scenario you've described. Whatever obscure benefit that you could (unlikely) get from using Class 2/2.0/2.1 instead of Class 1/1.0 will be indiscernible in comparison to everything else.

       
      • Daniel

        Daniel - 2023-06-16

        Thanks a lot for the info!

        I'll try Class 1 then, and will further investigate the issue of using serial ports in a virtual machine.

        The serial ports are located on a PCI Express card, and initially my hope was to "pass-through" the PCI Express device entirely to the virtual machine.

        But unfortunately Microsoft's Hyper-V is extremely limited in that regard. It seems that you can only "pass-through" graphics cards and USB 3.0 controllers. Try any other kind of card and it will fail miserably :(

        How I wish I could use VMWare!

        Kind Regards.

         

        Last edit: Daniel 2023-06-16

Log in to post a comment.