1. My experience is that I can get a limit of 5 Gb of *international* traffic a
month (170 Mb a day) with Node bandwidth limits of
Overall 0
Output 750
Input 0

Yup, a limit of 750 bytes per second. I need to experiment more with the
Overall setting. Freenet is the single most effective utility I have found
for consuming bandwidth. Better than BitTorrent.

When the bandwidth level drops this low I get a lot of what I characterise as
"churn". The messageSendTimeRequest shoots up - I guess because messages can't
get out fast enough through the small output channel. So then my node rejects
incoming connections, but it's still sending outgoing requests (albeit slowly)
so I'm rejecting these replies to my requests because my messageSendTimeRequest
is so high. I suspect a lot of things get retried. I suspect my efficiency is
low. But it works, and keeps me in the bandwidth cap.

Yeah, that's what I get when I turn it down really low. Not really surprising, maybe freenet should adjust its priorities on a low bandwidth connection or something, but I don't know the internals yet

2. I really suspect that more serious bandwidth limiting should be done at an
operating system (router) level rather than at the Freenet level. I suspect
that's what you'll be told around here. That way you can also take account of
things happening other than your node. :-)

So I've been working towards a Linux traffic shaper that gives sets no limits
on traffic with domestic IP addresses and limits international traffic so the
total monthly limit hits 5 Gb (my cap).

Yeah, I'm looking at it, but there's no decent way to detect freenet packets. I was looking at patching the source so you could specify the source port range for outgoing connections. If you specified 10 ports or so and freenet bound them on startup so they were captured then, and used iptables to MARK the packets you could do some really decent limiting.

3. What I don't know is how my Freenet node will respond when some (domestic)
IPs get a high bandwidth (8,000 k/s) and other (international) IPs get a low
bandwidth (0.75 k/s). I guess my node will always give a constant
recommendation for how much traffic it wants, and this will oscillate wildly
according to how many domestic versus international nodes are connecting. I'm
*hoping* domestic nodes will learn that it is worthwhile connecting to me, but
they may be put off by the average they get. I don't know. Someday when Toad is
bored maybe he could put his fine mind to at least thinking about the impacts
of this bandwidth disparity and how a node configuration could be set to handle

It may be that this scenario ( maix of low and high bandwidth channels into a
node) is relatively uncommon worldwide, and isn't worth coding for, but I
wonder how common it is, and whether it may become more common.

Comments welcome.

Domestically I am willing to give up to 5k/sec out and 15k/sec in (due to my connection speeds), internationally I would go lower but monitor the usage. I'd like to cut off after ~100MB/day. I know this is sub-optimal for freenet, but with caps that's the reality.

One thing that I can think of is limiting the size of incoming files not requested by the node directly - stop splitfiles and things going through. I'm more interested in the information, not movies, but I can't think of a tidy way to implement this in a few minutes. I know it's not really in line with the freenet ideal, and also it could compromise privacy, but it's a thought.
Phillip Hutchings

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Support mailing list
Unsubscribe at http://dodo.freenetproject.org/cgi-bin/mailman/listinfo/support

Reply via email to