Novell Netware and layer 2 communications protocols


 

 

 

 

 

Introduction

Network systems running Novell Netware servers can use two different sets of communications protocols - these are the sets of protocols based on IPX and on IP.

IPX and IP map approximately to the network layer of the OSI 7 layer model.

Note that the functionality of IP or IPX do not exactly match the intended funtionality of the Network layer of the 7 layer model, but using the 7 layer model provides a useful vehicle for further discussion on these protocols.

This web page is about the associated layer 2 protocols that can run underneath IPX and IP.

NB - CSMA/CD is the proper name for the type of network that is commonly called Ethernet, but Ethernet is actually a proprietary name for one manufacturer`s network technology.

This web page uses the name CSMA/CD to refer to these networks.

 

Associated layer 2 protocols

In Netware servers, on Ethernet type networks, there are four different layer 2 protocols that can be used.

These are

  • 802.3

  • 802.2

  • Ethernet_II

  • Ethernet_SNAP

However these are not simple alternatives, and in any case they are not all they appear to be.

Current thinking on the OSI 7 layer model has been to split up the Data Link layer into two sub-layers

In very simplistic terms, the LLC sublayer looks upwards, and is responsible for communicating with the layer 3 network protocol ( eg, IPX or IP ). The MAC sublayer is responsible for placing the data onto the physical medium ( eg, Thin ethernet, UTP, Token Ring, FDDI, etc ).

It should be possible to look at the above layer 2 protocols, and place them into one or other of these two sublayers, however the situation is a bit confused.

One of the things that was noticeable during the writing of this web page was the fact that the characteristics and history of these four layer 2 protocols seems a little muddled - it depends on which book you read, or which website you visit.

So the descriptions that follow are based on several sources - including websites about the IEEE 802 standards, Novell documentation, Cisco training material, and several different text books of different ages. Also from some experimentation. The descriptions below are therefore an amalgam of information extracted from these sources.

 

Ethernet_II

It appears that Ethernet_II is the oldest protocol. It was developed primarily by Xerox, but Intel and Digital were involved. It was ( and possibly still is ) a proprietary standard, not an open standard. 1982 seems to be the year of its creation.

Ethernet_II is sometimes known as DIX - from Digital, Intel, Xerox.

Ethernet_II works by packaging the data from above into a frame that has the form

The sections of the frame have the following functions :-

  • Preamble - advises recipient nodes of the start of a frame, and its bit rate

  • Destination address - the MAC address of the intended recipient

  • Sender address - the MAC address of the node that is sending out the frame

  • Type - an identification code number that identifies the protocol that is being used in the next layer up

  • Data - this is the data that has been handed down from the protocol in the layer above - maximum is 1500 bytes

  • Padding - the minimum length of the data section is 46 bytes - if less than 46 bytes is passed down from the upper layer, then a series of `0`s is put in, to make the whole data section up to 46 bytes

  • Checksum - used by the recipient node to check the integrity of the whole frame after receipt

Of particular note is the Type field - this field uses the 2 bytes to show an identification number for the protocol in the next layer up. As Ethernet_II was or is a proprietary standard owned by Xerox, the identification numbers were allocated by Xerox.

 

802.3

In 1983, a year after the creation of Ethernet_II, Novell required a layer 2 protocol to sit under its layer 3 protocol (IPX ), and so Novell created 802.3.

The frame used in 802.3 was very similar to the frame used in Ethernet_II, except that the Type section was replaced by the Length section.

Novell could afford to do away with the Type identification, since at that time, they only used one protocol, which was IPX.

Now although it appears that the Novell 802.3 frame therefore contained no information about the type of the layer 3 protocol above it, in fact it did - IPX had a characteristic that the first two bytes of every packet produced by IPX had the values of FF ( hex ), and no other protocol had this.

So the frame produced by the Novell version of 802.3 always looked like

and thus it was uniquely identified as a CSMA/CD frame for IPX.

The length section defined how much data was in the data section, and as the maximum length of data was the same as in the Ethernet_II frame ( ie, 1500 bytes ), the maximum value in this field was 05DC ( hex ).

However the 802.3 protocol has now changed :-

 

IEEE 802 standard

At this point it occurred to many organisations that there was going to be the development of more and more similar but incompatible layer 2 protocols. The IEEE was therefore charged with creating an Open standard protocol, which would be used by everyone.

They eventually created a series of standards, known as the IEEE 802 standards. These standards first appeared in 1984, but are still evolving.

The current published version of the IEEE 802 standards is over 1500 pages long - it includes various standards for networks based on CSMA/CD, token ring, token bus, fibre, wire-less, as well as standards for management and security issues. So it is a bit too long to describe here.

However two of the standards within it relevant to this web page are

  • IEEE 802.2 - corresponds to the LLC sublayer, and contains information about the network layer protocol

  • IEEE 802.3 - corresponds to the MAC sublayer, and specifies the frame structure for use on CSMA/CD networks

 

IEEE 802.2

This sublayer is responsible for communicating with the protocol in the layer above ( ie, the network layer ), it takes the data from the layer 3 protocol, packages it up along with some identifiers and control information, and then passes the whole packet down to the MAC sublayer.

It does this by creating a packet that has the structure of

The fields of this packet type have the functions :-

  • DSAP - identifies the destination network layer protocol - the value E0 ( hex ) identifies the protocol as Novell IPX

  • SSAP - identifies the sending network layer protocol - again, the value E0 ( hex ) identifies the protocol as Novell IPX

  • Control - identifies various control parameters of the packet -

    • whether it is connectionless or connection orientated

    • the purpose of the packet - eg, handshaking, data transfer, acknowledgements, etc

  • Data - the data to be transferred, which data has been handed down from the network layer protocol

 

IEEE 802.3

This sublayer has the responsibility of taking the data handed down from the LLC sublayer, and wrapping it up in a packet suitable for posting on the physical network.

In its original form, the frame structure of the packet was the same as the one described for 802.3 above.

The packet from the IEEE 802.2 sublayer is the data put into the data field of the IEEE 802.3 frame.

Note that this frame had a Length field, and not a Type field. So the original Ethernet_II frame from Xerox was still the only layer 2 protocol for CSMA/CD networks with a Type field.

As the IEEE 802 standards were designed to become the norm, several layer 3 protocols were changed, so that they would run on top of these IEEE 802 layer 2 protocols.

However one group declined to change, and that was the committee responsible for IP. They decided that for all time they were going to stick with Ethernet_II and its Type field.

Technology moved on, however, and in 1997, the IEEE accepted resposibility for allocating Ethernet Type field numbers.

The IEEE 802.3, 1998 standard had a modified frame, in that the Length field became a field that could contain either Length information, or Type information, depending on its value.

When the IEEE took over the allocation of the Type identification numbers, they used the same numbers that Xerox had used - fortunately, Xerox had not used any identification numbers less than 1500 ( decimal ), so there was no problem with having a field that for values less than 1500 ( decimal ), the numbers conveyed length information; for values greater than 1500, the numbers conveyed identifications.

In IEEE 802.3, 1998, the breakpoint has been set at 1536 ( decimal ) or 0600 ( hex ).

So for values greater than or equal to 1536 ( dec ) or 0600 ( hex ), the Type / Length field conveys identification numbers. For values below this, the field conveys length information.

Novell has been allocated the identification numbers of 8137 and 8138 ( hex ).

The current version of IP ( ie, IPv4 ) has been allocated the number 0800 ( hex ), although, at the time of writing this web page, this is not shown on the list on the IEEE website. The IEEE website shows the number 0800 ( hex ) as being allocated to Xerox.

Also, next generation IP ( ie, IPv6 ) has been allocated 86DD ( hex ), although again, at the time of writing this page, this is not shown on the IEEE website.

 

Ethernet_SNAP

During the early days of IEEE 802.2 and 802.3, it was found that some protocols did not like not having a type field in the MAC sub-layer.

So the IEEE created the framing known as Ethernet_SNAP.

Ethernet_SNAP is an LLC sub-layer protocol, so is used instead of IEEE 802.2

The 802.2 packet is expanded by the inclusion of some additional fields, so it looks like

The fields have the functions of

  • DSAP - same as in IEEE 802.2, except that in Ethernet_SNAP, this field has a fixed value of AA ( hex )

  • SSAP - same as in IEEE 802.2, except that in Ethernet_SNAP, this field has a fixed value of AA ( hex )

  • Control - same as in IEEE 802.2, except that in Ethernet_SNAP, this field has a fixed value of 03 ( hex )

  • SNAP ID - this field is split into two parts -

    • OUI ID - this is the same OUI ID as the first 24 bits ( ie, 3 bytes ) of the MAC address of the network card

    • Type - the values in this field are the same identification numbers that are used in the Ethernet_II Type field, and the IEEE 802.3, 1998 standard Type field

  • Data - this is the data handed down from the network layer protocol. Because the other fields within the SNAP packet have used up 8 bytes, the amount of data in this field must be within the range 38 - 1492 bytes, instead of the 46 - 1500 bytes that are allowed within the 802.3 frame

 

So what uses what ?

Now that the four layer 2 protocols have been described, it becomes more apparent how they work, and what layer 2 protocol will work with what layer 3 protocol.

 

Ethernet_II

This 20 year old protocol is still going strong.

It has no interest in the two sublayers of the OSI Data Link layer, it works fine by itself.

It is the layer 2 protocol that is primarily used to support IP on Netware servers.

It also supports IPX and early Appletalk.

 

802.3

This is the original Novell inspired version, sometimes called 802.3 RAW

Again, it predates the sublayers of the OSI Data Link layer, and works fine by itself.

It supports IPX.

 

802.2

In the Novell Netware world, this name actually refers to the two protocols, ie, IEEE 802.2 and IEEE 802.3, together working as a layer 2 protocol.

It has still to catch on as a universal protocol, but in the Netware world, it supports IPX.

 

Ethernet_SNAP

This protocol has never really caught on, its main use within the Netware world is in supporting the later versions of Appletalk.

It does however also support IPX.

Cisco have used it, to support their "Cisco Discovery Protocol".

There is documentation around that it will also support IP - as yet, I can get two Netware servers to talk to each other via IP over Ethernet_SNAP, but so far I cannot get a Microsoft based workstation to join in in the conversation.

 


© 2002 Ron Turner


Return to the index page