You could connect through a reverse SSH tunnel. Configure your router to forward some port (say 2222/tcp) to a local SSH server on your side. Have the remote user establish a reverse SSH tunnel from the host running the VNC server to your public IP address (a.b.c.d):
plink -R 5901:127.0.0.1:5901 -P 2222 -L USER a.b.c.d
Once the tunnel is established, you ...
When try to help my 80 year old Dad remotely I have used a VPN to avoid all the NAT/Firewall etc issues. I used Logmein Hamachi to create a virtual network then got him to install Hamachi and join the network with the user name/password. Simple and hopefully secure connectivity.
I then got him to install UltraVNC Server whilst I installed the viewer. ...
If you are willing/able to use an alternative solution, I suggest
It's free for non commercial usage. Usage is really simple.
Download/Install the software
Start the Client, and give the other user the teamviewer ID and password ( both are visible on the main screen)
Other user can use given user/password combo to remotely connect and ...
If you do not want to make any changes to the configuration file then the only other way to speed it up is to lower the resolution of the desktop you are viewing before sending it and/or by compressing your file first. Until engineers that work on UltraVNC make transfer changes themselves, you're out of luck.
On a side note, you can add those things into ...
This is only useful for situations where you'll be using a .VNC file to access the server:
Create a .VNC file for the connection (you can do this while remoted in, it's easier than making one from scratch). Edit the .VNC file in any text editor application and look for/add a line that says:
Adjust the value accordingly. For me, ...