#2376 new enhancement

Don't use helper for local nodes, only remote ones

Reported by: zooko Owned by:
Priority: normal Milestone: undecided
Component: code-network Version: 1.10.0
Keywords: upload-helper performance Cc: wilruvvo
Launchpad Bug:


I (Zooko) rescued this from the spam filter. I didn't write it — wilruvvo did:

When sending data to storage nodes on the same network (or even on the same computer), it is clearly more efficient to transfer the data directly rather than uploading it to a helper which then sends it back. The helper should only be used for nodes at remote locations.

Possible heuristics for deciding if a node is 'local'

  • localhost
  • same subnet
  • reachable on a RFC1918 address
  • user-specified address range

Here are some related tickets:

#610 upload should take better advantage of existing shares #613 sometimes a helper hurts instead of helping (if you need to upload less than K shares) #868 use helper to bypass NAT/firewall #1207 Detect RFC1918/invalid addresses somehow

Having a heuristic for detecting which nodes are local/remote would also help the following use cases:

  • Ensure at least K shares are 'local' so data remain available if the internet connection is down.
  • Ensure at least K shares are 'remote' so data remain available if all nodes on one site are lost.

helper upload

Change History (2)

comment:1 Changed at 2015-02-07T01:18:45Z by daira

  • Component changed from unknown to code-network
  • Keywords helper performance added

comment:2 Changed at 2015-08-16T15:26:27Z by zooko

  • Keywords upload-helper added; helper removed
Note: See TracTickets for help on using tickets.