Fixpoint

2020-11-02

Some shower thoughts on networks and referencing

Filed under: Philosophia, Software — Jacob Welsh @ 21:50

Every so often I find myself, like many an inquisitive blogger before me I'm sure, wondering why exactly I go through this yearly ritual of "renewing my domain names". You know, verifying my contact information, accepting the terms of service and extended such-and-such contracts, getting a payment routed through a seriously rusted financial system, having to navigate whatever "single page application" web 3.0 javashit the overemployed deadbeats of San Francisco have "innovated" this time around, all that. Certainly I'm aware I could reduce this to a once per decade hassle, but more to the point: who is this ICANN anyway and what business do they have being a gatekeeper between me and my correspondents? (Let's suppose for now that I have correspondents cool enough not to be importing anyway every conceivable Googappazonosoftbook into the pipeline because "it's convenient" or "being a person is hard" or some such. Because I do; and I'm breeding more of them.)

Why is it that my links can't just look like

http://192.168.123.45/fixpoint/2020/...

Hm? One customary answer given to n00bs as to "what is the DNS(i) and why" is that "computers address each other using numbers and those are too hard to remember". I don't buy this though; even the most commonplace sort of homonid has been using numeric street addresses, telephone numbers and similar without substantial difficulty for quite some time now. If you use a number regularly you'll remember it; otherwise there's bookmarks and address books and so on, plenty of simple solutions not requiring some royal naming authority in the sky.

A second attempted answer might be: "how are new readers going to find me?" That is, the DNS can serve the role of an introducer, a sort of gregarious fellow who knows everybody in town and can hook you up, if only in the narrow situation that you know precisely who you're looking for but not where to find them. That's all well and good, and perhaps even worth paying for; but then why not have just a landing page on the DNSweb that simply redirects to the full numeric one? Why take in this introducer as a permanent and required part of the ongoing relationship?

The strongest answer I've found is that there's an important distinction between a locator and identifier - of an online resource as with the living human or group that it serves. In plain terms: what matters to me is to whom I'm talking rather than where they happen to be at a given time. Where this becomes most painfully obvious is in referencing external resources: IP addresses can and do change over time with changes in provider relationships, and it makes no sense to give the providers more leverage than necessary by adding friction to the change.

On a side note: a sane computer network, to my mind, would model reality by having identifiers consisting of a globally-unique part generated by the individual, like 0CBC05941D03FD95C3A47654AE0DF306025594B3, and a convenience alias like "Jacob Welsh", granted simply as a convention by the recognition of one's peers and with no uniqueness requirement. Solves the problem and without creating any imaginary "real estate in names" and thus "naming authorities".

But back to external referencing. Here it is useful to distinguish between two different sorts of things one might wish to reference: living and dead. To further clarify, this distinction applies more to the manner of reference than the thing itself, because there's some inherent subjectivity in the latter. Someone may be "dead to me", where I judge a once-interesting intellect to be fallen into insanity or senility or enemy control or some such. The way to reference a dead source is to archive it yourself, in full and as faithfully as you can manage, so that you become its living vessel. In this case there is no "IP address problem" at all. The live source, by contrast, is one where you wish to direct the reader not just to the author's words as they were written at the time in their historical context, but also to the author himself, such that he may offer corrections or clarifications, host discussions, and become acquainted with his readership. Thus the live reference is a kind of social relationship.

Observe, then, that the live reference can and will transition to dead at some unknown time. From this it follows that properly referencing a live source involves already creating the archival copy, if not necessarily publishing it, to be prepared for the inevitable, as well as keeping up with the activity of the source, at the bare minimum to notice when your external link is broken.

Based on the foregoing, it seems to me that there's something lacking in the present web publishing tools or at least the ways I've figured out to use them. Why isn't there a single field whereby I can update all my external links to a given source? Such a thing would serve equally well to let me re-broadcast the "DNS updates" of my friends as it would to let me switch to archived copies on the sad occasion that the friend is consumed by the forces of entropy.

On a final side note: I've begun to suspect the "IP address" is a poor abstraction from the start. It's insufficiently concrete to enable the machines to actually deliver a packet to the recipient, without a whole extra layer of routing protocols ultimately subject to the same "DNS problems"; yet it's insufficiently abstract to be useful to people as a long-term identifier.

  1. Domain Naming System: the protocol, software, and authority structure rooted at the US government that computers on the Internet use to translate names like "thepiratebay.se" to numeric Internet Protocol addresses, at least while the system feels like allowing it. [^]

8 Comments »

  1. On a final side note: I've begun to suspect the "IP address" is a poor abstraction from the start. It's insufficiently concrete to enable the machines to actually deliver a packet to the recipient, without a whole extra layer of routing protocols ultimately subject to the same "DNS problems"; yet it's insufficiently abstract to be useful to people as a long-term identifier.

    The question is: a long-term identifier for what precisely? for persons? websites? the "Things" in that "IoT" buzzword? It's not clear what sort of resources on the Internet you're referring to, I dare say that a unified/uniform identification scheme is not possible, simply on the grounds that I haven't yet seen one that actually works that way.

    I don't find this IP thing to be that much of a problem, to be honest: over time I am going to change my phone number, my Bitcoin addresses, my IP addresses and a whole other set of things, some of which identify other things. Say, the IP address works quite well as an identifier for machines, and no, it doesn't really need DNS in order to work, and if I really need to use names, /etc/hosts is right there and not even The Mother of Poettering can take it away from me.

    Comment by spyked — 2020-11-03 @ 14:12

  2. The question is: a long-term identifier for what precisely? for persons? websites? the "Things" in that "IoT" buzzword?

    Persons primarily, then whatever they wish to use them for; it seems to me that IPs work equally well or poorly in each of those examples so perhaps I'm missing the point of the question.

    I dare say that a unified/uniform identification scheme is not possible, simply on the grounds that I haven't yet seen one that actually works that way.

    Now I am indeed confused because if by "that way" you mean "with user-generated identifiers independent of the physical topology" then... isn't that how most p2p networks work?

    One point I missed is that once you're good enough to have your own address space and get ISPs to publish the route, IP in fact does work that way, so perhaps all I have here is a kind of "argument from poverty".

    Say, the IP address works quite well as an identifier for machines,

    If this is so then it would seem to knock out my "strongest answer" and leave the original burning question of: why are we participating in DNS at all?

    Comment by Jacob Welsh — 2020-11-03 @ 22:42

  3. it seems to me that IPs work equally well or poorly in each of those examples so perhaps I'm missing the point of the question.

    They don't, otherwise nobody would need public/private keypairs. And even those aren't especially good at identifying actual persons, more along the lines of whatever pieces of text one can associate with a signature belonging to a person... or something along these lines.

    My point is that you can't (or at least I'm not aware that you can) use a single means to identify all things on the Internet, unless you're willing to buy into the IPv6 "IoT" story, that everyone and their dog should own a few IP addresses. I for one don't buy into that, I think IPs were designed to identify individual machines and networks. Sure, you can't talk to The Tar Pit simply by going to 82.79.58.192, you also need to GET the full URL that includes the site's name, which creates a problem, but IMHO that's a slightly different issue, arising from the perversion of HTTP and DNS. However, vhosts have nothing to do with DNS per se, as I can still expose my very own google.com through my Apache config and anyone can access it.

    isn't that how most p2p networks work?

    That depends on the particular P2P network we're talking about. Bittorrent identifies files, Bitcoin does transactions, but there's no mechanism for identifying arbitrary things, say, two consecutive paragraphs of text on a web page (which is why we have the whole MP-WP selection story). When you're making things (as opposed to, say, taking whatever nature provides), there's no escaping specification, so whatever it is you're going to want to identify on the Internet, you're going to have to specify it beforehand. This is, to my eye, how we've ended up with the current mess: through systematically-repeated ad-hoc specification of various things, some of which aren't even actual things (really, Facebook, "pages"?).

    why are we participating in DNS at all?

    I guess it seemed like a good idea at the time and now most of the software we have uses it, same as with TCP, JavaScript and all those other piles of machinery. I'm fairly sure that the whole thing could be easily discarded for the cost of a public register of name-IP associations รก la deedbot's deed mechanism, but without a political organization to push it...

    Comment by spyked — 2020-11-23 @ 07:42

  4. [...] [...]

    Pingback by #jwrd Logs for Nov 2020 « Fixpoint — 2020-12-01 @ 19:14

  5. I've long thought the typical machine has enough storage to make the DNS fully distributed for queries, with each node simply having full knowledge of the namings. An issue with just using IP addresses is the lack of meaningful or interesting names. The current structure prioritizes privacy over authenticity, but truly provides neither.

    This distinction between living and dead technically exists in all human interaction, but isn't generally thought of that way, and it's questionable whether this is good or bad for a technology to acknowledge. It would be lessened by archival and request being indistinguishable, as they should be.

    >I've begun to suspect the "IP address" is a poor abstraction from the start. It's insufficiently concrete to enable the machines to actually deliver a packet to the recipient, without a whole extra layer of routing protocols ultimately subject to the same "DNS problems"; yet it's insufficiently abstract to be useful to people as a long-term identifier.
    Isn't the issue here that sufficiency for routing necessarily involves where something happens to be at a time, whereas an identifier usually relies on some form of indirection? I question whether a meaningful global network can exist without some middleman akin to a postal system. I could broadcast to those around me, and the structure of the global network could come to more closely resemble that of the globe, but the only reason I use the Internet is its freeing me from this, so I may have conversations with and read from others nowhere near me, and a meshnet doesn't seem suitable for this.

    Perhaps this comment will have provided some value.

    Comment by Verisimilitude — 2021-05-23 @ 20:23

  6. > with each node simply having full knowledge of the namings

    The situation where I can just wget the DNS would surely be preferable to the current pretense of "must publish your personal info, but that's ok because we make it a hassle to get the bulk data". It's no less centralized though because I presume you're still talking about getting the data automatically from some tree-shaped upstream. And yes, I think @spyked has it and it would all be a non-issue if the upstream didn't suck so much.

    > An issue with just using IP addresses is the lack of meaningful or interesting names.

    This seems to be a variant of my first "customary answer", and with the same reply. I can put what I please on my page titles and URL paths and you can put what you please in your bookmarks, as is already the case; where's the trouble?

    > The current structure prioritizes privacy over authenticity, but truly provides neither.

    What do you mean there by authenticity?

    > This distinction between living and dead technically exists in all human interaction, but isn't generally thought of that way,

    This I don't follow - thought of what way? Are you saying the distinction on this axis of liveness between reading Plato and reading a fresh love note is a technicality? If one actor is dead then whatever you're doing with them is not interaction.

    > and it's questionable whether this is good or bad for a technology to acknowledge

    Not sure I know what it means for a technology to acknowledge something - perhaps you mean, to model? I don't see where I was proposing it should be, even, more that it could be just another instance of updating links based on a change in topology, if that weren't such a pain to do.

    > It would be lessened by archival and request being indistinguishable, as they should be.

    If you mean streamlining the process of archiving, such as a browser with a one-click save feature - or even zero-click, if there's a usable way to prune the pile - then I can see it. If you mean a sort of National Archives of the Internet such that nobody's links ever break then I dunno... depends on having a good enough nation I guess.

    > Isn't the issue here that sufficiency for routing necessarily involves where something happens to be at a time, whereas an identifier usually relies on some form of indirection?

    Something like that.

    > I question whether a meaningful global network can exist without some middleman akin to a postal system.

    Well a postal system is a kind of network, and communication is always mediated by something, so this much seems obvious.

    > the only reason I use the Internet is its freeing me from this, so I may have conversations with and read from others nowhere near me

    The Internet is hardly the first or only thing to allow communication across distance, you know?

    Comment by Jacob Welsh — 2021-05-24 @ 21:29

  7. [...] system. Still, I don't believe anyone complained about it specifically, and although it provoked a search for other approaches altogether, it had to wait its turn in the long line of [...]

    Pingback by Fixpoint is moving in domain name space. « Fixpoint — 2023-04-13 @ 22:10

  8. [...] flush the cache and tag the thing "not so reliable as previously believed," because I have about zero desire to become even more of a DNS wizard than I already had to. Unmodified except for the addition of [...]

    Pingback by DNS kiting « Fixpoint — 2023-08-17 @ 20:00

RSS feed for comments on this post. TrackBack URL

Leave a comment

Powered by MP-WP. Copyright Jacob Welsh.