Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!lll-crg!nike!ucbcad!ucbvax!BRUBECK.PROTEON.COM!jas From: jas@BRUBECK.PROTEON.COM Newsgroups: mod.protocols.tcp-ip Subject: Re: the length of 802.3 + 802.2 header Message-ID: <8608222045.AA24937@ucbvax.Berkeley.EDU> Date: Fri, 22-Aug-86 13:48:39 EDT Article-I.D.: ucbvax.8608222045.AA24937 Posted: Fri Aug 22 13:48:39 1986 Date-Received: Fri, 22-Aug-86 22:13:01 EDT Sender: daemon@ucbvax.BERKELEY.EDU Reply-To: jas@proteon.com Organization: The ARPA Internet Lines: 37 Approved: tcp-ip@sri-nic.arpa Your measurements of the length of a LLC Class 1 header are completely correct. It is 3 bytes long! This is all in the spirit of the ISO OSI protocol families. No attempt is made in any of the protocols to preserve 'nice' alignment of fields longer than one byte. Perhaps they consider density more important than performance. Remember that on X.25 in Europe you often pay by the byte. The Connectionless Internet protocol has a very small fixed-format header, which does not even contain the destination address. Since the destination address is variable-length, it is the variable part of the header. In general, the first code any ISO OSI implementor has to write is the stuff that serially parses the headers. Most of the variable length fields are of the format: byte type byte length var data[] You parse them serially, from beginning to end. Given this mindset, the 802.2 people probably saw no reason to have an even length header, as things would get odd soon enough. Also, why waste a byte. As for those of us who designed protocols for efficiency, we're out of luck. One strategy is to receive 802.2-grams on an odd boundary, so that the LLC1/IP pairing will wind up well aligned. Other protocols don't care, so this wins. (Just for more fun, when you use the SNAP protocol for extending the protocol ID [ie. SAP], the header becomes even length again. Aauugh!) john shriver proteon p.s. I suspect the whole 802.2 mess will be one of the active discussion topics at the Implementor's Workshop... -------