Neil,
How did the canonical/MAC issue arise, and why is it so confusing?
I think it was a mistake. A mistake made because we are all guilty of using
terminology that means different things to different people. We often do
not bother to define something because it is so "natural" that "everyone
knows it". Making this mistake is probably how the definers-of-standards
and the manufacturers-of-hardware got us into this little mess.
I'm going to try to avoid terms like: "endian" (big and little), memory
(computer and adapter), "significance" (most and least significant) unless
essential. Most issues of memory-addressing --- on the basis of byte,
word, integer, string, or whatever --- are only indirectly related to this
question.
So what are we left with?
1. Sequential transmission of bits on the wire.
2. Representation and identification of these bits, on paper, in the
standard
3. Representation and identification of the bits-within-a-byte, on paper,
in hardware documentation of a computer.
To be more specific, the first issue is: sequential sending of a frame of
bytes, one bit at a time, so that the collection can be identically
reconstructed at the receiver. So this first issue is not a problem as long
as whatever-we-do at the sender is reciprocated at the receiver.
The second issue is also simple. LAN standards involve definition of
meanings of various parts of the bit-stream. To explain what they wanted,
the definers-of-standards had to represent their concepts on paper. To
represent the bit-sequence, they wrote down bits from left-to-right.
Left-to-right, naturally, because --- in western culture --- our
time-sequence is left-to-right for reading/writing.
As part of the standard, the beginning of the frame includes an address, and
the standard defines that the first bit (first, in time sequence, naturally)
of the address denotes whether the address is multicast. Because of the way
they wrote it down, this "first bit" was the left-most bit.
As an example, just take a possible first byte and write it down on paper:
01000101
The first bit of this first byte has the value zero, which the standard
defines as meaning that the address is not multicast. The
definers-of-standards decided, naturally, to number the bits in the same
left-to-right sequence. It would have been very strange for them to have
decided otherwise. They assumed that this "natural" numbering would be
fine. And it is, until a hardware engineer has to implement it.
Now for the third part. Manufacturers-of-hardware also represent bits and
bytes. They also enumerate bits-within-a-byte to allow documentation of
their product.
HOWEVER...
Within a computer, there is no inherent time-sequence to guide the numbering
scheme. Within a computer, each byte is transferred "in parallel". No bit
arrives before or after any other. There is no "natural" direction for
numbering. Most hardware designers number the representation of their
bits-within-a-byte from RIGHT-TO-LEFT.
So put yourself in the position of the designer of the adapter. He has to
serialize each byte. He has a quick look at the standard and sees that the
bits on the wire are numbered in an ascending sequence. So he builds a bit
of kit to do it. To send the byte above, most computers then have to
transfer this byte:
10100010
(If ever he finds out, a good hardware designer knows that any complaint is
just one of many, many, many issues that whining, lazy programmers are
always dredging up, to try to get hardware engineers to do their jobs for
them.)
;-)
So, I think that is how the problem started... Then it was made worse...
Despite the fact that LANs work perfectly well with this anomaly, the
inadequate definition in the earlier standards (802.3 and 802.4) was
addressed in the later ones.
For 802.5 and FDDI the definers-of-standards insisted on serializing from
the left-most bit of (most) computers' representations. If they had just
left it the same it probably would never have been important.
After all. how important is it to know whether the parity bit for async
serial goes first or last?
Anyway, look on the bright side, it makes various forms of mixed-media
bridging more entertaining.
Best regards,
Ed Crowe
Neil Desai"" <[EMAIL PROTECTED]> wrote in message
8prb06$n7a$[EMAIL PROTECTED]">news:8prb06$n7a$[EMAIL PROTECTED]...
> I have asked this question once before and had little luck in finding the
> answers.
> I have a problem in understanding the issues concerning canonical vs.
> non-canonical addressing
**NOTE: New CCNA/CCDA List has been formed. For more information go to
http://www.groupstudy.com/list/Associates.html
_________________________________
UPDATED Posting Guidelines: http://www.groupstudy.com/list/guide.html
FAQ, list archives, and subscription info: http://www.groupstudy.com
Report misconduct and Nondisclosure violations to [EMAIL PROTECTED]