LAN Emulation

 

View this file in pdf format.

In order to make it possible to continue using existing LAN application software, while taking advantage of the increased bandwidth of ATM transmission, standards have been developed to allow the running of LAN layer protocols over ATM. LAN Emulation (LANE) is one such method, enabling the replacement of 10 Mbps Ethernet or 4/16 Mbps Token Ring LANs with dedicated ATM links. It also allows the integration of ATM networks with legacy LAN networks. This software protocol running over ATM equipment offers two major features:

  • The ability to run all existing LAN applications over ATM without change. The immediate benefit is that it is not necessary to reinvest in software applications.
  • The ability to interconnect ATM equipment and networks to existing LANs, and also the ability to link logically separate LANs via one ATM backbone. The benefit is that ATM equipment may be introduced only where it is needed.

The function of LANE is to emulate a LAN (either IEEE 802.3 Ethernet or 802.5 Token Ring) on top of an ATM network. Basically, the LANE protocol defines a service interface for higher layer protocols which is identical to that of existing LANs. Data is sent across the ATM network encapsulated in the appropriate LAN MAC packet format. Thus, the LANE protocols make an ATM network look and act like a LAN, only much faster.
(ATM Forum Standards version 1.0 for LAN emulation)

Topics described here include:
 
LAN Emulation Components  
Data Transfer  
LAN Emulation Protocol Stack  
LAN Emulation Packet Formats  

LAN protocols transmitted via LAN Emulation

 

LAN Emulation Components

There are several participants in the LAN emulation (LE) protocol operation: the LAN Emulation Client (LEC), the LAN Emulation Server (LES), the LAN Emulation Configuration Server (LECS), and the Broadcast and Unknown Server (BUS). Each of these is described below.

LAN Emulation Client (LEC)
The LEC is the user requiring LAN emulation services. Typically, it is the workstation running the application or the ATM bridge which connects the ATM network with the legacy LAN. There can be many LAN Emulation Clients in an emulated LAN.

LAN Emulation Server (LES)
The LES implements address registration (allowing stations to register their MAC and ATM addresses) and provides address resolution (answers ARP (Address Resolution Protocol) requests by converting between MAC and ATM addresses). Each emulated LAN can have only one LES. However, a physical LAN can serve several emulated LANs, each with its own LES.

LAN Emulation Configuration Server (LECS)
The LECS provides configuration information, including the address of the LES, the type of emulated LAN and the maximum frame size. Each network can only have one LECS.

Broadcast/Unknown Server (BUS)
The BUS performs all broadcasts and multicasts. Frames are sent through the BUS in two instances:

  • When the information is to be transferred (broadcast) to all stations.
  • When a source LEC has sent an ARP to the LES, and does not wish to wait for a response before starting the data transfer to the destination LEC. In this case, the source LEC transmits the information to the BUS which, in turn, floods the entire network.

Each emulated LAN can have only one BUS. However, a physical LAN can serve several emulated LANs, each with its own BUS.

Location of LAN Emulation Service Components
While the ATM Forum specifies that there are three separate logical components to the LAN Emulation service (the LES, LECS and BUS), it deliberately does not specify whether they are physically separate or united. This decision is left to the vendors.

Many vendors merge the LES, LECS and BUS into a single physical unit. There have been two popular choices where to place this unit:

  1. Adding the LE service functionality into switches.
  2. Providing an external station which connects up to any switch and provides LE services.

Interested in more details about testing this protocol? click here

 

Data Transfer

There are several stages pertaining to connection establishment over an emulated LAN. They are described in this section from the LEC point of view.

LAN emulation uses the signalling protocol to establish transient connections. Each LEC has a unique ATM address (in one of the address formats supported by ATM Forum’s UNI 3.0 signalling). In the SETUP message, the Broadband Low-Layer Information (B-LLI) element is used to identify LAN emulation connections.

Initially, the protocol ID (PID) in the B-LLI element is ISO/IEC TR/9577. There are several types of supported PIDs:

  • Control connections.
  • 802.3 data connections.
  • 802.5 data connections.
  • 802.3 multicast forward connections.
  • 802.5 multicast forward connections.

Initialization
In the initialization phase, the LEC must identify the type of emulated LAN that it is joining and determine the addresses of the LECS and LES.

To determine the ATM address of the LECS, the LEC performs the following:

  1. Attempts to extract this address from the switch with the use of ILMI. If successful, the LEC attempts to connect to that address.
  2. If unsuccessful, uses a well-known ATM address to try and establish the SVC.
  3. If unsuccessful, uses a PVC at VPI=0, VCI=17 to establish the connection.
  4. If still unsuccessful, tries to contact the LES.

Configuration
Once a connection to the LECS has been established, the following information is exchanged between the LEC and the LECS:

The LEC sends its ATM address, its MAC address and the requested LAN types and frame sizes.

The LECS returns the LES address and the LAN type and frame size to use.

Joining
In this phase, the LEC attempts to join the emulated LAN. To do this it:

  • Creates a control direct bi-directional VCC with the LES.
  • Transmits a Join Request (ATM address, LAN information, Proxy indication, optional MAC address).
  • Possibly accepts a Control Distribute VCC before a Join Request is received.

This operation may time out or fail. An example of joining an emulated LAN is given below.

Decode of emulated LAN

Registration and BUS Initialization
The BUS takes care of processing broadcast requests from a LEC to other LAN emulation clients. To do this, it must be aware of all ATM stations on the line. Thus, when each LEC comes up, it registers at the BUS. The LEC must:

  • Register any MAC addresses.
  • Resolve the 0xFFFFFFFFFFFF MAC address (broadcast address) to get the ATM address of the BUS.
  • Create a unidirectional multicast send VCC to BUS. This VCC will be used when the LEC desires to perform a broadcast.
  • Accept a unidirectional multicast forward VCC from the BUS. This is the VCC that the BUS will use when performing broadcasts over to the LEC.

Data Movement
When data movement is required, the top-level application sends the driver the information with the desired MAC address. The LAN emulation driver can then proceed with the following steps:

  • Verify that the internal cache contains the association between the MAC address and the ATM address.
  • If not, inquire of the LES.
  • While waiting for a response, the LEC may transmit frames using the BUS.
  • Once a response has been received, a direct connection is established using the signalling protocol. The association of the ATM address and the MAC address are added to the cache.
  • Connections are deleted based on inactivity.

Interested in more details about testing this protocol? click here

 

LAN Emulation Protocol Stack

LAN emulation is implemented in all equipment participating in the emulated LAN, namely workstations, switches, network interface cards, bridges, etc. The following diagram illustrates the LAN emulation protocol stack.

ATM Host

ATM Switch 

ATM-LAN Bridge

LAN Host

Existing applications

Bridging

Existing applications

NDIS/ODI driver interface NDIS/ODI driver interface

LE

LE

MAC

MAC

AAL5

AAL5

ATM

ATM

ATM

Physical

Physical

Physical

Physical

Physical

Physical

LAN Emulation protocol stack

The end-points of the connection (the server and the workstation) run the same applications over an NDIS/ODI driver (in this example). It is the underlying layers that are different: the server runs LAN Emulation over AAL5 and the workstation runs Ethernet. The upper-layer application remains unchanged; it does not have to realize that ATM is running underneath. The bridge has both technologies: a LAN port connects to the legacy LAN and an ATM port connects to the newer ATM network. The switch continues to run its normal stack, switches cells and creates connections.

Interested in more details about testing this protocol? click here

 

LAN Emulation Packet Formats

Data Packets
LAN emulation provides for two possible data packet formats: Ethernet and Token Ring. The LAN emulation data frames preserve all the information contained in the original 802.3 or 802.5 frames, but add a 2-byte LEC ID (the source ID), which is unique to each LEC. The first format, based on Ethernet IEEE 802.3, is shown below.

byte: 0

LE header (LEC ID)

Destination MAC address

4

Destination MAC address

8

Source MAC address

12

Source MAC address

Type/length

16 and up

Information

 
Ethernet IEEE 802.3 packet format

The second packet format, based on IEEE 802.5 Token Ring, is shown below.

byte 0

LE header (LEC ID)

AC pad

FC

4

Destination MAC address

8

Destination MAC address

Source MAC address

12

Source MAC address

16 up to 46

Routing information field

46 and up

Information


 

Token Ring IEEE 802.5 packet format

The original 802.3 or 802.5 frame is maintained since it may be needed at some nodes. For example, an ATM-to-Ethernet bridge will receive LAN emulation Ethernet frames from the ATM side, strip off the first two bytes, and send the Ethernet frame on to the Ethernet side.

Control Frames
The format of all LAN emulation control frames, except for READY_IND and READY_QUERY, is shown below.

0

Marker = FF00

Protocol = 01

Version = 01

4

Op-Code

Status

8

Transaction ID

12

Requester-LEC ID

Flags

16

Source-LAN-destination

24

Target-LAN-destination

32

Source-ATM-address

52

LAN Type

Maximum frame size

Number TLVS

ELAN name-size

56

Target-ATM-address

76

ELAN-name

108

TLVS begin

LAN Emulation control frame format


Op-Code
Control frame type. Values may be:

0001 LE_CONFIGURE_REQUEST
0101 LE_CONFIGURE_RESPONSE
0002 LE_JOIN_REQUEST
0102 LE_JOIN_RESPONSE
0003 READY_QUERY
0103 READY_IND
0004 LE_REGISTER_REQUEST
0104 LE_REGISTER_RESPONSE
0005 LE_UNREGISTER_REQUEST
0105 LE_UNREGISTER_RESPONSES
0006 LE_ARP_REQUEST
0106 LE_ARP_RESPONSE
0007 LE_FLUSH_REQUEST
0107 LE_FLUSH_RESPONSE
0008 LE_NARP_REQUEST
0108 Undefined
0009 LE_TOPOLOGY_REQUEST
0109 Undefined

Transaction ID
Arbitrary value supplied by the requester and returned by the responder to allow the receiver to discriminate between different responses.

Requester LEC ID
LEC ID of LAN emulation client sending the request (0000 if unknown).

Flags
Bit flags:

0001 Remote Address used with LE_ARP_RESPONSE.
0080 Proxy Flag used with LE_JOIN_REQUEST.
0100 Topology change used with LE_TOPOLOGY_REQUEST.

The meaning of the remaining fields depends on the Op-Code value.

LUNI 2.0
LAN Emulation LLC-multiplexed data and control frames have the following additional fields which appear before the fields in the data and control frames described above:

byte: 0

LLC-X"AA"

LLC-X"AA"

LLC-X"03"

OUI-X"00"

4

OUI-X"A0"

OUI-X"3E"

Frame Type

8

ELAN ID

Additional fields for LLC-multiplexed data and control


The LUNI 2.0 standard defines the following additional Flags for Control frames:
0002 V2 capable used with LE_CONFIG_REQUEST and LE_JOIN_REQUEST.
0004 Selective multicast used with LE_JOIN_REQUEST.
0008 V2 required used with LE_JOIN_RESPONSE.

The LUNI 2.0 standard defines the following additional Op-Code values for Control frames:

000A LE_VERIFY_REQUEST.
010A LE_VERIFY_RESPONSE.

Interested in more details about testing this protocol? click here

 

 
Additional Information