grid identifier #403
Labels
No Label
0.2.0
0.3.0
0.4.0
0.5.0
0.5.1
0.6.0
0.6.1
0.7.0
0.8.0
0.9.0
1.0.0
1.1.0
1.10.0
1.10.1
1.10.2
1.10a2
1.11.0
1.12.0
1.12.1
1.13.0
1.14.0
1.15.0
1.15.1
1.2.0
1.3.0
1.4.1
1.5.0
1.6.0
1.6.1
1.7.0
1.7.1
1.7β
1.8.0
1.8.1
1.8.2
1.8.3
1.8β
1.9.0
1.9.0-s3branch
1.9.0a1
1.9.0a2
1.9.0b1
1.9.1
1.9.2
1.9.2a1
LeastAuthority.com automation
blocker
cannot reproduce
cloud-branch
code
code-dirnodes
code-encoding
code-frontend
code-frontend-cli
code-frontend-ftp-sftp
code-frontend-magic-folder
code-frontend-web
code-mutable
code-network
code-nodeadmin
code-peerselection
code-storage
contrib
critical
defect
dev-infrastructure
documentation
duplicate
enhancement
fixed
invalid
major
minor
n/a
normal
operational
packaging
somebody else's problem
supercritical
task
trivial
unknown
was already fixed
website
wontfix
worksforme
No Milestone
No Assignees
5 Participants
Notifications
Due Date
No due date set.
Reference: tahoe-lafs/trac-2024-07-25#403
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
If you give someone a Tahoe URL containing a Tahoe capability, and they are using a different grid (i.e., they are using a different introducer to meet storage servers), then they will get a graceless failure suggesting that the file they asked for doesn't exist.
It might be good to include a "grid ID" in the URL.
indeed. First we must solve the rather thorny problem of what a "grid ID" would consist of. The obvious answer (a copy of the introducer.furl, or a copy) is unsatisfying, because we plan to move to a more distributed introduction system that does not depend upon a single introducer.
I wrote up a proposal for the grid id, and send it to the tahoe-dev mailing list.
(http://allmydata.org/pipermail/tahoe-dev/2008-May/000586.html) is the link.
I have the vague idea that the domain name can serve as the the grid-id for some use cases. For example, currently
<http://webapi.allmydata.com:8123/cap/$CAP>
always means the prod grid. {{http://testgrid.allmydata.org:3567/cap/$CAP}}} always means the test grid. It isn't clear if we can hack DNS to provide privacy in the sense of not accidentally revealing the cap to a DNS server, but at least I would like to consider the advantages of using a separate, widely-understood tool like DNS instead of inventing our own grid ids.Perhaps this paper is relevant:
Miguel Castro, et al.: "One Ring to Rule them All: Service Discovery and Binding in Structured Peer-to-Peer Overlay Networks"
http://research.microsoft.com/users/mcastro/publications/ring.pdf
(By the way, I think I might have inspired Miguel Castro to write this paper by talking about the "grid id" problem at the first P2P Workshop in 2002.)
Tagging issues relevant to new cap protocol design.
Here are the design criteria I'd like to see satisfied:
lafs:
) that has a grid-cap in the authority field, and a file-cap in the path field. Like most authority-based URI schemes, the authority can be omitted and implied by the context.Note that it may seem as though we have a bootstrapping issue in that the problem of looking up grid-specs is essentially the same as the problem of looking up files -- and so if we can solve the former, why can't we solve the latter without the former?
The answer is that there are far fewer grids than there are files, and even fewer grids that are used by a given client. So,
However, it would also be convenient to allow looking up a grid-spec automatically, so that the resulting caps are truly global names. Here is a proposed implementation of that, which takes advantage of the similarity between grid-caps and file-caps by having them be the same thing:
Note that we wouldn't implement this in one go; stage 1 could be to leave out the automatic lookup of grid-caps on the bootstrap grid, and instead just have the persistent cache to which grid-specs have to be added manually.
This feature may be useful for implementing the "universal cap" use case: #2009
Ticket retargeted after milestone closed (editing milestones)