|
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)
 |
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:
- Adding the LE service functionality into
switches.
- Providing an external station which connects
up to any switch and provides LE services.
Interested in more details about testing
this protocol?
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 Forums
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:
- Attempts to extract this address from
the switch with the use of ILMI. If successful, the LEC attempts
to connect to that address.
- If unsuccessful, uses a well-known ATM
address to try and establish the SVC.
- If unsuccessful, uses a PVC at VPI=0,
VCI=17 to establish the connection.
- 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.
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?
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?
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?
|