I'm encountering a similar issue. From what I understand, if you are running iptables on your server, then P2P won't work and every packet has to go through your server. This is causing me issues with my 1 Mb uplink (I'd like to backup to my work machine, then backup from there to my father's house across the country so I'm not constantly saturating my uplink and can finish my backups within a day). I've tried prioritizing packets with tc and I can't find a good way to determine which packets inside the VPN are ICMP and SSH (low delay) from the outside to put them in the front of the line. In my post titled "NeoRouter Packet Prioritization" in the General Discussion, I go into a little more detail.
If they are able to get P2P working, then I can at least lower the priority of the machines that do the bulk traffic because then I'll be able to prioritize them as they go through the NAT (right now they are destined for the router and get recreated so I can't mark them for prioritization later in the chains). The other option, which I think would be very difficult, is to remark the relayed packets with the marks it had before. I think this would be hard because the OS strips all that stuff off before handing it to the app.
If I have backups from both my servers going at once, they saturate the line and pings suck really bad and clients can't connect to the server. I think the control packets should at least set COS to low delay, that would help a lot, even if people don't don't get as complex as I do, a lot of networks behave and support COS. If I only run one server and limit it to 80KB/s, my pings are fine (not great), and things work OK (again not great).
|