Difference between revisions of "Talk:Chaosnet"
(→'C Gateway' implementation: Still no demand for it.) |
(→Chaos hardware and protocol: A fix for the "they used the same name for both" problem) |
||
(7 intermediate revisions by 2 users not shown) | |||
Line 66: | Line 66: | ||
* [http://ana-3.lcs.mit.edu/~jnc/tech/unix/net net] - MIT UNIX V6 networking code | * [http://ana-3.lcs.mit.edu/~jnc/tech/unix/net net] - MIT UNIX V6 networking code | ||
− | I suppose I could make the whole of /src, /sys, /lib, etc publicly available with little work; maybe I should do that, as an interim. [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 16:28, 18 September 2023 (CEST) | + | I suppose I could make the whole of /src, /sys, /lib, etc publicly available with little work; maybe I should do that, as an interim to putting the entire non-personal parts of the file-system up.. [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 16:28, 18 September 2023 (CEST) |
: Thanks. I had a vague memory of having seen C Gateway somewhere on your server, but maybe not. But pretty sure there was a "68000 DDT" or something similar. And this: http://ana-3.lcs.mit.edu/~jnc/tech/mos/ | : Thanks. I had a vague memory of having seen C Gateway somewhere on your server, but maybe not. But pretty sure there was a "68000 DDT" or something similar. And this: http://ana-3.lcs.mit.edu/~jnc/tech/mos/ | ||
: Getting MOS and C Gateway running on, say, SIMH might be interesting, but I don't have any spare cycles now. So no need for you to deal with that. [[User:Larsbrinkhoff|Larsbrinkhoff]] ([[User talk:Larsbrinkhoff|talk]]) 20:09, 18 September 2023 (CEST) | : Getting MOS and C Gateway running on, say, SIMH might be interesting, but I don't have any spare cycles now. So no need for you to deal with that. [[User:Larsbrinkhoff|Larsbrinkhoff]] ([[User talk:Larsbrinkhoff|talk]]) 20:09, 18 September 2023 (CEST) | ||
+ | |||
+ | :: As a temporary measure, I have put together [[User:Jnc/Online]], which is an index to most of the stuff I have made available. I'll improve it later. | ||
+ | :: Dave Brigham had the uVAX version of the CGW up somewhere at Athena (he was doing all the main campus routers at one point), but I don't think he had the Chaos stuff. (I should find it and see.) If there is any interest, it would be trivial to put the entire original CGW up. [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 15:39, 19 September 2023 (CEST) | ||
+ | |||
+ | ::: I'm definitely interested, but it's more of an idle curiosity at this point. | ||
+ | ::: Say, now that you are on GitHub, would you mind putting copies there? Mostly for backup, more than anything else. And I can do the actual uploading if you prefer. [[User:Larsbrinkhoff|Larsbrinkhoff]] ([[User talk:Larsbrinkhoff|talk]]) 17:04, 19 September 2023 (CEST) | ||
+ | |||
+ | :::: I have no objection to copies of anything I put online being put anywhere anyone wants (although it would be good to have a credit line being associated with any such). Backups are always a good idea. (Did you know that there was a complete copy of Diodorus' [https://en.wikipedia.org/wiki/Bibliotheca_historica 'Library of World History'], from ca. 1st century BC, in the library of Constantinople until it fell to the Turks in AD 1492? Alas, a copy of it did not make it to the West before the city fell, like so much else that has survived.) | ||
+ | :::: Thank you for offering to do the actual uploading; I'm afraid I have neither the interest nor energy to learn all the ins and outs of Github. (After decades of use, I've got Mediawiki down pretty cold!) Anyway, there are probably more important projects for me to focus my now-limited energy on. [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 05:14, 20 September 2023 (CEST) | ||
+ | |||
+ | :: It turns out the CGW Chaosnet code is already online; see the bottom of [[User:Jnc/Online]] for the link. [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 02:54, 22 September 2023 (CEST) | ||
+ | |||
+ | == Chaos hardware and protocol == | ||
+ | |||
+ | We need to be careful about keeping the Chaos hardware and protocol material separate. Chaos protocol ran mostly over Ethernet hardware towards the end of its working life; so they are quite different. | ||
+ | |||
+ | In fact, I thought, at the start of writing this comment, that maybe we should split this into two separate articles (although looking at it, that would be some work; some of the content, like the early history, does not easily split), one for each. But what would we call them? All I can come up with is [[Chaosnet (hardware)]] and [[Chaosnet (protocol)]] (and [[Chaosnet]] would be a disambiguation - but maybe the history section would be left there too, to prevent having to duplicate it in both). Although now that I have thought about it, maybe it is not such a good idea? What do people think? | ||
+ | |||
+ | I bring this up because of the recently added "Wire packet format". Chaos traffic of course had a 'wire packet format' on Ethernet - which I don't see described here - I guess the packet contents, after the LAN header, looked identical on the two types of networks? (And I guess interface network addresses on Chaosnet hardware included the subnet number, since it's a 16-bit field? Or did they / could they leave the high byte zero?) | ||
+ | |||
+ | So maybe my concern there is handled by renaming that existing section to 'Header format of Chaosnet hardware' (or some variant which carefully and correctly names exactly what is described there) - and then we could have a new 'Packet formats on the wire' section, with sub-sections 'Packet format on Chaosnet hardware', 'Packet format on Ethernet', 'Packet format on synchronous serial lines', etc. | ||
+ | |||
+ | Comments? [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 10:38, 11 December 2023 (CET) | ||
+ | |||
+ | : Good point, I made an update that I hope is a step in the right direction. I don't really know what a Chaosnet packet on Ethernet looks like; I would ''assume'' 1. it's a regular Ethernet frame with EtherType 0x0804, and 2. the payload is just the Chaosnet software packet part, i.e. without the 48-bit hardware header. If so, I don't think there's much more to be said about it in this article. And then maybe a split into two articles isn't necessary. [[User:Larsbrinkhoff|Larsbrinkhoff]] ([[User talk:Larsbrinkhoff|talk]]) 11:44, 11 December 2023 (CET) | ||
+ | |||
+ | :: After thinking about it for a while, keeping them both here is OK, but I'd like to be really strong on keeping the Chaosnet hardware and protocol separate. (It's really irritating they used the same name for both!) So I'd still like to have separate sections for i) the Chaosnet hardware header, and ii) the headers used by Chaos protocol on various kinds of hardware - including on Chaosnet hardware. Yes, the entries for Ethernet and Chaosnet hardware will be very short... | ||
+ | :: Oh, for Chaos protocol format on Ethernet; I tried looking in the CGW source to see what was done. It turns out the CGW never supported Chaos protocol on Ethernet! So I guess we'll have to look at the MINITS code to get a definitive answer. [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 12:54, 11 December 2023 (CET) | ||
+ | |||
+ | :: I tried looking, but it was too hard; I gave up. Someone else should feel free! [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 16:35, 12 December 2023 (CET) | ||
+ | |||
+ | To try and cure the "they used the same name for both" problem, I'd like to start a habit of using 'Chaosnet' for the hardware, and 'Chaos' for the software. I'm in the middle of adjusting the main article to do so, but I have discovered that I'll have to fix a few other things to follow that scheme; I hope that doesn't upset anyone! [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 16:35, 12 December 2023 (CET) |
Latest revision as of 16:35, 12 December 2023
Contents
CH10 on a KL10
I'm pretty sure that the MC KL10 was attached to the CHAOSNet via the I/O -11; there was never a PDP-10 I/O bus CHAOSNet interface on it. (Not that one couldn't have been done, of course.) Jnc (talk) 10:06, 24 August 2021 (CEST)
- That is consistent with archived source code. AI and MC both had an IO-11 front end; AI's through the Rubin 10-11 interface, MC's through DL10. Only ML had an IO bus device called CH10. DM had no Chaosnet. Larsbrinkhoff (talk) 11:17, 27 October 2021 (CEST)
- The article page says "SIMH's KA10 and KL10 simulates a CH10", but this is only for emulation, and mostly because there is no DL10 support in the emulator Larsbrinkhoff (talk) 11:20, 27 October 2021 (CEST)
Spelling
The current spelling (variations are mostly a case of what to capitalize) is 'Chaosnet', per AIM-628, the formal, published documentation. Although now that I look, most original documents seem to use the same. Jnc (talk) 13:36, 27 April 2022 (CEST)
VAX/VMS
I found Symbolics' implementation of Chaosnet for VAX/VMS on MIT tapes. It's unclear whether MIT and/or Symbolics DKI would allow this software to be released publicly. I'm trying. Meanwhile, here's an installation guide: https://usermanual.wiki/Document/998035SymbolicsVAXVMSChaosnetInstalltionRel6May85.4170387717.pdf Larsbrinkhoff (talk) 09:35, 22 August 2022 (CEST)
- Well, since Symbolics is the owner (which is to say, they wrote it - i.e. someone employed by Symbolics did, not someone associated with MIT), why does MIT come into it? Because it was on their tapes? (Which tapes were these, BTW? Dumps from an MIT VMS system? I ask because there is missing software from the DSSR/RTS Unix system, but Steve Ward didn't think they had any backup tapes - but DSSR/RTS had a VMS, so maybe there are still DSSR/RTS tapes...) If you're having any hassle from MIT, let me know if I can deploy Jerry Saltzer or Dave Clark to help.
- Is there any evidence of Symbolics' policy at the time regarding this source- i.e. was it made freely available to anyone who asked for it? If so, maybe you won't have to get a new approval from Symbolics DKI.
- Pity it's not the Unix Chaosnet! Who wrote that, BTW? Jnc (talk) 12:53, 22 August 2022 (CEST)
"Emulated" Chaosnet?
What is this intended to mean? It's just about encapsulation, right? It's still Chaosnet, I would argue? --Bv (talk) 18:59, 30 December 2022 (CET)
- I don't recall where that word was used, so I can't hazard a guess as to why it was used (or if it was appropriate in that usage); I'll look for it. Jnc (talk) 02:14, 31 December 2022 (CET)
- I'm not certain of why I used 'emulated'; I can pretty much guarantee I didn't think hard about it!
- I think I was probably in part influenced by all the other work going on to emulate other historic computing systems; since I doubt anyone's doing production work over this one, it just seemed right to call it an emulation too.
- Also, I always experienced Chaos running directly on LAN's (I might have been the person who got a protocol number assigned for it in IP - most of the Chaos hackers didn't have much use for anything to do with TCP/IP, which was the competitor to Chaos inside MIT); so, to me, Chaos running over the Internet is truly 'emulated'.
- But I can see the case for saying it's not emulated; I'd be OK with changing it. 03:38, 31 December 2022 (CET)
Long-haul WAN links
Do the original implementations work OK over long-haul WANs? ISTR that most implementations used fixed timeouts. Oh, now that I think about it, Symbolics had some intra-company WAN links, so they must have gotten it to work on them. I wonder what encapsulation they used on them; PPP didn't exist yet. I wonder if MINITS was used; if so, we could look at the source (which we now have), and see how it did it. I guess I could look. Jnc (talk) 02:14, 31 December 2022 (CET)
- So I see a DUP11 synchronous serial line interface driver, here. The DUP11 sort of supported a number of framings (e.g. DDCMP, SDLC, HDLC) - 'sort of' because they weren't implemented in the DUP11 itself, but the DUP11 could be used to do them - but I can't interest myself in wading through the MIDAS-11 to figure out how the heck it works.
- There's a DMC11 Synchronous Serial Controller driver too, here. Jnc (talk) 03:59, 31 December 2022 (CET)
Links on appropriate pages?
In your edit (@jnc), you removed some inline references I added, and commented "also, move URL links to appropriate pages". Where are these, and why not use inline references (which are traditional in academic writing, and don't disturb the reading much I think)? --Bv (talk) 12:26, 31 December 2022 (CET)
- The ARP protocol spec was already linked to in the 'External links' section of the ARP page, here. (I'm a big devotee of "perfection has been attained not when there is nothing left to add, but when there is nothing left to take away", so no duplication of content unless there is a very good reason; and in the ARP article is where one would expect to find it, if one wanted it.) The Ethernet protocol list link I moved to the Ethernet page, here, in this edit.
- The CHWiki has a much less intense attitude to sourcing than Wikipedia does; this was set before I got here, see Main Page#Introduction by the Administrators. I have never felt that I had a problem with that, so I was happy to not source things. Wikipedia style (which I generally like to follow here) is not to have external links buried in page text, but to corral them all to a section at the bottom. (That also allows displaying the document title on the link; done inline, one would either have to distract the text flow with the title, or show the link as an un-informative '[1]'.) That includes links in their references, which, by the way their reference system works, are for display also corralled to a section at the bottom.
- I also really like to see just the plain text when I'm editing, so I can focus hard on the order of presentation of ideas, and especially the clarity, brevity and accuracy of the text. (Doing that on Wikipedia, with its in-line citation entry style, is hard - which to me may be partially to blame for Wikipedia's often less than optimal presentation.) To me, giving a clear understanding to our readers, who will generally have limited time and interest, should be our number one goal. (If they want the details, they can consult the 'Further reading' - for those few things only available in hard-copy - or 'External links' for the full documentation - which is why I've put a lot of work into filling those in.) Jnc (talk) 14:38, 31 December 2022 (CET)
- OK, I see. While I generally agree (and cleaned up my last edit), I really like seeing references both for quotes (such as the speed of the original Chaosnet) and for directing the reader to the fact in point, such as the protocol numbers for Ethernet or IP - there is massive documentation for both, and finding particular facts might not be easy. I've seen discussions/questions about these things (years ago), also about ARP usage.
- Q: what is the best way to give a reference the quote from AIM 628? It seems the Cite extension is unavailable here?
- Q: what about the port numbers for IP? Similarly, I think the Cite extension would be quite useful for this?
- --Bv (talk) 17:30, 31 December 2022 (CET)
- I don't have the access needed to install Cite, so I can't help there.
- I don't really see this as a place to get enough detail to write code; that's what the 'Further reading/External links' sections are for. Adding that much detail would: i) take a lot of time, meaning that the many other things needing doing (check out Special:WantedPages) won't get done; ii) run the risk that mistakes would happen in the copying (like this one, which someone was just nice enough to point out to me). I see this as the place to i) give a clear, concise overview of a topic, and ii) be an organized 'one stop shop' to easily get directed to original documentation that will give detail. Jnc (talk) 21:53, 31 December 2022 (CET)
'C Gateway' implementation
I haven't made the C Gateway implementation available as there was no demand for it. It would be simple enough to do so; I have a full dump of the CSR machine, but all the stuff on it is mixed in with people's personal files (one classic example is TCP FTP: Liza Martin, who wrote it, along with a student (Greg Skinner, IIRC), both did all the work in their personal directories; when she left LCS, she never bothered to clean up and install it, so it's all still in their personal dirs), so I can't simply make the whole thing public. The other thing I need to do is do an index page for the stuff I have made available so far:
I suppose I could make the whole of /src, /sys, /lib, etc publicly available with little work; maybe I should do that, as an interim to putting the entire non-personal parts of the file-system up.. Jnc (talk) 16:28, 18 September 2023 (CEST)
- Thanks. I had a vague memory of having seen C Gateway somewhere on your server, but maybe not. But pretty sure there was a "68000 DDT" or something similar. And this: http://ana-3.lcs.mit.edu/~jnc/tech/mos/
- Getting MOS and C Gateway running on, say, SIMH might be interesting, but I don't have any spare cycles now. So no need for you to deal with that. Larsbrinkhoff (talk) 20:09, 18 September 2023 (CEST)
- As a temporary measure, I have put together User:Jnc/Online, which is an index to most of the stuff I have made available. I'll improve it later.
- Dave Brigham had the uVAX version of the CGW up somewhere at Athena (he was doing all the main campus routers at one point), but I don't think he had the Chaos stuff. (I should find it and see.) If there is any interest, it would be trivial to put the entire original CGW up. Jnc (talk) 15:39, 19 September 2023 (CEST)
- I'm definitely interested, but it's more of an idle curiosity at this point.
- Say, now that you are on GitHub, would you mind putting copies there? Mostly for backup, more than anything else. And I can do the actual uploading if you prefer. Larsbrinkhoff (talk) 17:04, 19 September 2023 (CEST)
- I have no objection to copies of anything I put online being put anywhere anyone wants (although it would be good to have a credit line being associated with any such). Backups are always a good idea. (Did you know that there was a complete copy of Diodorus' 'Library of World History', from ca. 1st century BC, in the library of Constantinople until it fell to the Turks in AD 1492? Alas, a copy of it did not make it to the West before the city fell, like so much else that has survived.)
- Thank you for offering to do the actual uploading; I'm afraid I have neither the interest nor energy to learn all the ins and outs of Github. (After decades of use, I've got Mediawiki down pretty cold!) Anyway, there are probably more important projects for me to focus my now-limited energy on. Jnc (talk) 05:14, 20 September 2023 (CEST)
- It turns out the CGW Chaosnet code is already online; see the bottom of User:Jnc/Online for the link. Jnc (talk) 02:54, 22 September 2023 (CEST)
Chaos hardware and protocol
We need to be careful about keeping the Chaos hardware and protocol material separate. Chaos protocol ran mostly over Ethernet hardware towards the end of its working life; so they are quite different.
In fact, I thought, at the start of writing this comment, that maybe we should split this into two separate articles (although looking at it, that would be some work; some of the content, like the early history, does not easily split), one for each. But what would we call them? All I can come up with is Chaosnet (hardware) and Chaosnet (protocol) (and Chaosnet would be a disambiguation - but maybe the history section would be left there too, to prevent having to duplicate it in both). Although now that I have thought about it, maybe it is not such a good idea? What do people think?
I bring this up because of the recently added "Wire packet format". Chaos traffic of course had a 'wire packet format' on Ethernet - which I don't see described here - I guess the packet contents, after the LAN header, looked identical on the two types of networks? (And I guess interface network addresses on Chaosnet hardware included the subnet number, since it's a 16-bit field? Or did they / could they leave the high byte zero?)
So maybe my concern there is handled by renaming that existing section to 'Header format of Chaosnet hardware' (or some variant which carefully and correctly names exactly what is described there) - and then we could have a new 'Packet formats on the wire' section, with sub-sections 'Packet format on Chaosnet hardware', 'Packet format on Ethernet', 'Packet format on synchronous serial lines', etc.
Comments? Jnc (talk) 10:38, 11 December 2023 (CET)
- Good point, I made an update that I hope is a step in the right direction. I don't really know what a Chaosnet packet on Ethernet looks like; I would assume 1. it's a regular Ethernet frame with EtherType 0x0804, and 2. the payload is just the Chaosnet software packet part, i.e. without the 48-bit hardware header. If so, I don't think there's much more to be said about it in this article. And then maybe a split into two articles isn't necessary. Larsbrinkhoff (talk) 11:44, 11 December 2023 (CET)
- After thinking about it for a while, keeping them both here is OK, but I'd like to be really strong on keeping the Chaosnet hardware and protocol separate. (It's really irritating they used the same name for both!) So I'd still like to have separate sections for i) the Chaosnet hardware header, and ii) the headers used by Chaos protocol on various kinds of hardware - including on Chaosnet hardware. Yes, the entries for Ethernet and Chaosnet hardware will be very short...
- Oh, for Chaos protocol format on Ethernet; I tried looking in the CGW source to see what was done. It turns out the CGW never supported Chaos protocol on Ethernet! So I guess we'll have to look at the MINITS code to get a definitive answer. Jnc (talk) 12:54, 11 December 2023 (CET)
To try and cure the "they used the same name for both" problem, I'd like to start a habit of using 'Chaosnet' for the hardware, and 'Chaos' for the software. I'm in the middle of adjusting the main article to do so, but I have discovered that I'll have to fix a few other things to follow that scheme; I hope that doesn't upset anyone! Jnc (talk) 16:35, 12 December 2023 (CET)