[HECnet] Phase V Routing Specification

Paul_Koning at Dell.com Paul_Koning at Dell.com
Tue Dec 18 16:45:37 PST 2012


On Dec 18, 2012, at 6:58 PM, Rob Jarratt wrote:



-----Original Message-----
From: owner-hecnet at Update.UU.SE [mailto:owner-hecnet at Update.UU.SE]
On Behalf Of Paul_Koning at Dell.com
Sent: 18 December 2012 22:30
To: hecnet at Update.UU.SE
Subject: Re: [HECnet] Phase V Routing Specification


On Dec 18, 2012, at 5:07 PM, Rob Jarratt wrote:


http://bitsavers.trailing-edge.com/pdf/dec/decnet/EK-DNAPV-
GD_DECnet_Phase_V_General_Description_Sep87.pdf


Thanks for the link. I had a quick look. It does not go into the
details of the message formats, but it does say it interoperates with
Phase IV, so I just wonder if it was sufficient for me to accept Phase
V messages as if they were Phase IV and just ignore the version bytes.
I might just give that a quick go, which host is Phase V on HECnet now?

The way to interoperate with a version newer than what you implement is
to speak the protocol as you know it.   That includes ignoring fields
you're
supposed to ignore, and messages for protocols (such as Ethertypes or
802.2
DSAPs) you don't implement.   If you do that, the rest is up to the newer
version.


What I am doing is checking for routing specification 2.0.0 (in the hello
messages), but not checking for later versions. I have disabled the check
temporarily and it seems to work. But I seem to be getting
EthernetRouterHello messages from node 12.2 with the R/S LIST always empty,
so I never get an adjacency with the node. Not sure if this is because I am
not sending myself to 12.2, but an empty list suggests it can't talk to any
of the other routers in the network.

I see... yes, the way to handle version numbers is in the spec.   Basically, it follows the principle I described.   Examine the received version number.   If it's less than yours, speak that version (if you know how).   If it's the same, or greater, speak your version.   If the other end announces a greater version number, it will speak to you in what you announced, or give up if it doesn't know how to do that.

This rule is used consistently in DECnet -- we defined this at some point as the general rule of version numbers, it's the easy and reliable way for cross-version compatibility to work.   All it requires is that you can find the version number in the first message you see.   (For example, in III-IV compatibility, if I remember right, the version number in the first message is checked first even though a bunch of fields precede it, because those fields depend on the version number.     Or maybe I'm thinking of II-III compatibility.   I can find the code if I search long enough... it was somewhere in DECnet/E.)

	paul



More information about the Hecnet-list mailing list