This is why I sometimes run a secondary protocol such as Remote Desktop (RDP) to be able to check whether it is the actual program/protocol in question or something that is to do with the actual system.
Obvious things to check:
- network shaping (either built into the system itself or somewhere on the network)
- limited to system or just the applcation? Helps if you have physical access. This is the reason why I have a backup protocol or at least keep that chance open.
- Is the problem limited to a particular time frame? I've worked on really old networks where PC's work fine when they've just rebooted but poorly given some time...
- is it caused by a particular setting (think mirror driver as mentioned as well)? Higher resolutions and bit rates may cause performance issues.
- have you thought of the possiblity that something may be consuming resources which may have led to these particular circumstances? Check Task Manager, system resources? Did it used to run like this or not?
- have you thought about the possibility that it may not like Windows 8? Peraps try a different VNC server?
- is the problem definitely client/server/network side?