Your plan specifies your Download speeds of up to 10Mbps. Your Testmy results show that you are getting 23.5Mbps and as much as 31.2Mbps. These numbers are both in bits per second, not bytes. So your download speeds are MUCH better than what you purchased.
Your upload speeds could be better, but not untypical. 516Kbps (up to 1.2Mbps) versus as high as 2Mbps.
I suspect that something else is going on (and it did for me in the beginning). What are your Latency numbers like? About the best it will get with any satellite is 650ms, whereas cable is around 50ms, and sometimes as good as 10ms. This is why cable performance is usually much more snappy than Satellite. My DSL is 10 down, 1 up, and it generally feels much better than my satellite 20 down, 2 up. I keep both ISPs because two or three day outages with the DSL are not uncommon, and I have a way of quickly switching back and forth. Depending upon what you are doing, the latency can really kill you, and there is nothing to be done about that darn slow speed of light.
I suggest you try the free program WinMtr.exe. This showed me that many of the hops from my home to the destination were timing out, although it didn't tell me why. After quite a bit of testing over several weeks, I found that if I slowed the Ethernet speed from my desktop to the Hughes modem from 1 Gbps to 100 Mbps that my throughput increased by many times.
I found that if I slowed the Ethernet speed from my desktop to the Hughes modem from 1 Gbps to 100 Mbps that my throughput increased by many times.This is really good advice, and I think this has been mentioned elsewhere in these Forums. See if you can't change your LAN card hardware settings to take it off Auto and lock it onto 100 Mbps.
But, how does one slow the Ethernet speed from the desktop to the modem?Process is similar in Windows 7. You need to get into your LAN Adapter settings.
Of course there are no guarantees. Your ping times were very slow. Usually around 750ms.
In my case, it appeared that 1Gbps was causing the modem to fault, and cause some kind of "reset".
There is a "test" in the Hughes myAccount called the Web Response Test. I was getting numbers as great as 70 seconds, whereas less than 1 second is normal.