Subject: [Isis-wg] checksum calculation doubt

From: nabendu das <[email-masked]>
Date: Thu, 24 Jan 2002 23:34:09 -0800 (PST)

hello all,

As per ISO-10589 7.3.11(Generation of checksum) 
" An IS shall start with C0 & C1 initialised to what
they would be after computing for the systemID portion
of its Source ID,  The IS shall then resume Checksum
computation on the contents of the PDU after the first
ID Length octets of the Source ID field,"

& in NOTE" All checksum calculations on the LSP are
performed treating the Source ID field as the first
octet. This procedure prevents the source from
accidentally sending out LSP with some other system'd
ID as source"

Now the Question is while generating the checksum what
will happen if we do not initailize C0 & C1 to the
computed checksum of the System ID portion of Source
ID, what will be the problem if we initialize C0 & C1
to zero, as  ISO document anyway is saying to
initialize C0 & C1 to the calclated value of the
checksum of System ID portion of the Source ID & then
to resume checksum calculation on the contents of the
PDU after the first ID Length octets of the Source ID
field.

And when a router receives an LSP, how should it
verify, should it start from the LSPID field because
"All checksum calculations on the LSP are performed
treating the Source ID field as the first octet." is
bit ambiguous, how can we take Source ID field as
first octet as it is of 6 octets, Does it mean to
start from the first Octet of the LSPID portion.

__________________________________________________
Do You Yahoo!?
Great stuff seeking new owners in Yahoo! Auctions! 
http://auctions.yahoo.com
_______________________________________________
Isis-wg mailing list  -  [email-masked]
http://external.juniper.net/mailman/listinfo/isis-wg

---

From: mike shand <[email-masked]>
Date: Fri, 25 Jan 2002 18:06:44 +0000

>PDU after the first ID Length octets of the Source ID

As I recall, the idea was that the router's checksum code knew what the 
system ID was supposed to be (it was initialized when the router was 
booted). So if when generating the LSP, it accidentally put the wrong 
source ID, or more likely if the LSP somehow got corrupted as it was being 
built, the LSP would get sent out with a bogus checksum and so would be 
ignored.

The protection it gives is I think marginal, and I'm not sure it is very 
important. In fact it is arguable whether it should appear in the standard 
at all, since it is not possible to tell by looking at the packet whether 
it is being done or not. I suppose one could try installing flakey RAM in 
the router and seeing if it does the wrong thing?

However, this is similar to statements that you must not recompute the 
checksum of an IP packet when you change it, but should rather use an 
incremental checksum modifier, hence giving protection between the time 
that the packet is received (and the checksum verified) and when it is 
modified. Again, its very hard to tell if you are doing this right, but it 
is still a good idea to do it.

But perhaps Radia has stronger opinions on this one, since I think it was 
her idea.

>start from the first Octet of the LSPID portion.

 From the start of the source ID, i.e. octet 13 counting the first octet as 
octet one.

---

From: John Harper <[email-masked]>
Date: Fri, 25 Jan 2002 11:13:58 -0800

Nah, I bet you dinner it was Tony. This is exactly the kind of thing he got 
excited
about.

         John