FDDI Framing

A FDDI data frame is comprised of nine different fields, including a preamble that marks the beginning of a frame. FDDI actually makes use of an encoding scheme that translates groups of 4 bits into 5-bit symbols, referred to as 4B/5B. These symbols are used to represent control, error, and data information. FDDI frames include the following fields:

Start Delimiter. Indicates the beginning of a frame.
Frame Control. Used to determine whether the frame is a token or data frame.
Destination Address. The destination MAC address for the frame.
Source Address. The source MAC address for the frame.
Data. The data encapsulated by upper-layer protocols.
Frame Check Sequence. Contains the CRC value for the frame.
End Delimiter. Used to indicate the end of a frame.
Frame Status. Field used by the source station to ensure that the data was received at the destination.

FDDI Network Equipment

Devices connect to FDDI networks in four different ways, depending on whether they are end stations or concentrators, and are described according to their attachments. A dual attached device will have 2 ports, one marked A and the other marked B. Equipment is cabled such that the B port from one station connects into the A port of another on the primary ring, while A attaches to B on the standby or secondary ring. The four FDDI device types are listed below.

Single-attachment station (SAS). An SAS attaches only to the primary ring through a concentrator (hub-type device). This allows the station to be powered down or disconnected without affecting the network.

Dual-attachment station (DAS). A DAS attaches to both the primary and backup rings. Because they connect directly to both rings, powering down and/or removing these devices will impact the network.

Single-attachment concentrator (SAC). A SAC connects to only the primary ring.

Dual-attachment concentrator (DAC). A DAC connects to both rings, acting as a device into which single-attachment stations can be connected.

FDDI Media Access – Token Passing

Much like Token Ring, FDDI also employs token passing as its way to get data onto the network. When a station has the token it can transmit data, and once it receives the original data transmission sent, it releases the token onto the network again. The maximum data frame size on a FDDI network is 4500 bytes.

Depending on the type of fiber optic cabling in use, FDDI networks can span distances of 2-30 kilometers between devices. The maximum number of attached stations on a FDDI network is 500.

The equipment found on a FDDI network is unique when compared to Token Ring or Ethernet. Firstly, FDDI utilizes two rings, each of which passes data in a different direction (referred to as counter-rotating rings). The purpose of the two rings is to provide fault tolerance. When operating normally, one ring is active, and the other on standby. In cases where a cable breaks, the ring is wrapped on both sides of the failure to allow continued operation.

Fiber Distributed Data Interface (FDDI)

FDDI is a set of LAN standards developed in the 1980’s; it is recognized by the ISO and is governed by the ANSI X3T9.5 standards committee. FDDI is not actually a single standard, but a collection of four standards that will be defined shortly. A FDDI network consists of a 100 Mbps dual-ring topology that runs over fiber optic cabling (copper is possible over shorter distances, and is referred to as CDDI). Because of the long distances that FDDI networks can span, it is often used for the purpose of creating and connecting a Metropolitan Area Network (MAN). The IEEE has defined MANs in their 802.6 standard.

FDDI is comprised of four standards specifications that exist at the Physical and Data Link layers of the OSI model. These include:

Physical Layer Protocol (PHY). Defines FDDI data encoding, clocking and framing.

Media Access Control (MAC). Defines frame formatting, token management, CRC calculations, and addressing functions.

Physical Medium Dependent (PMD). Defines elements of the physical media in use including bit rates, connectors, and power levels.

Station Management (SMT). Defines station configuration (including ring insertion and removal) as well as network management and fault tolerance features.

AppleTalk Session, Presentation, and Application Layers

Unlike TCP/IP and IPX/SPX, the AppleTalk suite has clearly defined Session Layer protocols. These include:

AppleTalk Data Stream Protocol (ADSP). ADSP establishes and maintains reliable full-duplex sessions between two AppleTalk sockets. It also handles flow control functions such as windowing. ADSP is symmetrical, meaning that both client sockets have equal access to the session.

AppleTalk Session Protocol (ASP). ASP is another Session Layer protocol that establishes, maintains, and closes connections between clients. ASP sessions are asymmetrical, with the client controlling session communication.

Printer Access Protocol (PAP). PAP is responsible for managing connection-oriented sessions to AppleTalk printers.

Zone Information Protocol (ZIP). The primary responsibility of ZIP is to maintain a network-wide mapping of networks (or cable ranges) to zone names. When a client starts and attempts to dynamically configure its address, it queries the local router using ZIP to find the valid network numbers on that segment

Presentation and Application Layers

At the Presentation and Application Layers of the OSI model, one primary AppleTalk protocol exists, the AppleTalk Filing Protocol (AFP). The responsibility of AFP is to manage file system access between a client and AppleShare server on an AppleTalk network. AFP creates an abstraction whereby a client accesses network files as if they were stored locally. AFP uses ASP as its Session layer protocol.

AppleTalk Transport Layer

Five main protocols exist at the AppleTalk Transport layer. These include:
Routing Table Maintenance Protocol (RTMP). RTMP is used by AppleTalk routers to exchange, establish, and maintain routing table entries.

Name Binding Protocol (NBP). NBP is used to dynamically map AppleTalk resource names (such as shared folders or printers) to their network address. NBP allows resources to be accessed by name rather than network address.

AppleTalk Update-Based Routing Protocol (AURP). AURP allows AppleTalk networks to be connected over a WAN by tunneling AppleTalk through a TCP/IP network. This is accomplished by defining AURP tunnels between routers, which encapsulate AppleTalk traffic destined for a remote network in UDP headers. The UDP segments are then encapsulated for IP (and whatever network technology the WAN uses), and sent to the other end of the AURP tunnel where they are de-encapsulated and forwarded. Both point-to-point and multipoint AURP tunnels can be created. Note that the AppleTalk suite only defines Data Link interfaces for Ethernet, Token Ring, FDDI and TokenTalk. The Cisco implementation of AppleTalk also supports AppleTalk encapsulation over a variety of WAN technologies.

AppleTalk Transaction Protocol (ATP). ATP is the AppleTalk Transport protocol that handles transaction requests and responses between systems. An example of a transaction request would be a socket on a client system asking a socket on a server to perform an action, such as a time request. ATP on each system will not only be sure that for each request sent a response is received, but will also handle common Transport layer functions such as data segmentation, sequencing, and acknowledgements. ATP is mainly used for transferring small amounts of data, and can be used as the upper-layer protocol that brings reliability to DDP.

AppleTalk Echo Protocol (AEP). AEP performs a similar function to an ICMP echo request and reply. It is used to test for reachability and round-trip transmission times with another AppleTalk node. When used, the source node sends out an AEP request, and the recipient sends back an AEP reply.

AppleTalk Addressing and the Network Layer

The AppleTalk Network layer includes protocols concerned with network addressing and routing. An AppleTalk network address is a 32-bit address and consists of three main parts – a network number, a node number, and a socket number. These are described below.

Network number. A 16-bit number that uniquely identifies an extended or nonextended AppleTalk network.

Node number. An 8-bit number that uniquely identifies a network node (host). A given network number is limited to supporting a maximum of 253 nodes.

Socket number. An 8-bit number that uniquely identifies an upper-layer protocol interface for sending or receiving packets. Similar in function to a port number in TCP/IP.

AppleTalk addresses are usually displayed in dotted decimal notation. As such, node 100 on network 8 using socket 99 could be displayed as 8.100.99, or even 8.100, socket 99.

To reduce administrative effort, AppleTalk network addresses are dynamically assigned. When a node starts up, it gives itself a temporary address for the purpose of network communication. It then uses the Zone Information Protocol (ZIP) to query a local router to find out the network numbers (cable range) available for its physical segment. After doing so, it assigns itself a node number, and broadcasts a message onto the network to see whether that node number is in use. If it isn’t, the system will use that number. If it is, it will choose a different node number and try again.

The two main protocols found at this layer include the Datagram Delivery Protocol (DDR) and the AppleTalk Address Resolution Protocol (AARP). Network layer routing protocols used by AppleTalk will be discussed in Chapter 8.

Datagram Delivery Protocol (DDP)

The Datagram Delivery Protocol is the connectionless network layer protocol of the AppleTalk suite. It might be compared to IP or IPX, in that it makes reliable delivery the responsibility of upper-layer protocols. Two types of DDP packets exist, a long (extended) version and a short (nonextended) version. The short version is only used on nonextended networks, and does not include any network information (since only a single network can exist). The fields found in an extended DDP packet are outlined below:

Null. The first two bits of a DDP packet are not used.
Hop Count. Similar to a TTL value. For each router that a DDP packet crosses, this field is decreased by one. The maximum number of hops for a DDP packet is 15.
Length. The total length of the DDP packet in bytes.
Checksum. A computed value that verifies the integrity of the DDP header, similar to a CRC.
Destination Network. The network number of the receiving system.
Source Network. The network number of the sending system.
Destination Node. The node number of the receiving system.
Source Node. The node number of the sending system
Destination Socket. The socket number of the receiving system
Source Socket. The socket number of the sending system
Type. This field specifies the upper-layer protocol to which the data in this packet should be passed.

AppleTalk Address Resolution Protocol (AARP)

Much like the ARP protocol found in the TCP/IP suite, the job of the AppleTalk Address Resolution Protocol (AARP) is to map network addresses to physical (MAC) addresses. Similar to ARP, AARP also does this via broadcasts and temporarily caches entries that it has recently resolved. These are stored on each node in its Address Mapping Table (AMT).

AppleTalk Physical and Data Link Layers

Much like TCP/IP and IPX/SPX, AppleTalk can run over a variety of network technologies. Four main media-access specifications are implemented at the Data Link layer. These include:

EtherTalk. To allow AppleTalk protocols access to Ethernet networks, the Data Link layer specifies a protocol referred to as the EtherTalk Link Access Protocol (ELAP). ELAP first encapsulates upper-layer data into a Ethernet SNAP frame, and into a standard 802.2 frame.

TokenTalk. To allow AppleTalk protocols to access Token Ring / 802.5 networks, the Data Link layer specifies a protocol referred to as TokenTalk Link Access Protocol (TLAP).

LocalTalk. LocalTalk is a proprietary protocol developed by Apple that was originally designed as a workgroup network technology. Local Talk uses a media access method somewhat similar to Ethernet referred to as Carrier Sense Multiple Access with Collision Avoidance (CSMA/CA). Unlike Ethernet, when nodes on a LocalTalk network wish to communicate, they first go through a handshaking process, which reserves the network for their exclusive use. Collisions can still occur if more than one pair of systems attempts to begin the handshake process at the same time. LocalTalk does not use static MAC addresses – the Data Link layer assigns these addresses dynamically. The protocol used at the Data Link layer is referred to as LocalTalk Link Access Protocol (LLAP)

FDDITalk. To allow AppleTalk protocols to access FDDI networks, the Data Link layer specifies a protocol referred to as FDDITalk Link Access Protocol (FLAP).

Remember that the Data Link specification listed above are only used with the AppleTalk suite, and not when a Macintosh system uses other protocol stacks such as TCP/IP or IPX/SPX.

AppleTalk Networks and Zones

Before getting into the protocols of the AppleTalk suite, we should first take a look at the concept of AppleTalk networks and zones. Two varieties of AppleTalk networks exist – these are known as extended and nonextended, and are described below.

Nonextended AppleTalk Network. In AppleTalk phase 1, only nonextended networks existed. These are normally not used any more, mainly because they limit the network to a single physical segment. All nonextended networks are also limited to a single network number and a single AppleTalk zone.

Extended AppleTalk Network. Available in AppleTalk Phase 2, an extended network allows multiple network numbers to exist, along with multiple AppleTalk zones. Because a given network number can only support a maximum of 253 nodes, it is also possible to configure multiple network numbers for a single physical segment on an extended network. This is referred to as a cable range. Almost all AppleTalk deployments today are based on extended networks.

But what is an AppleTalk zone? An AppleTalk zone is a logical grouping (or administrative unit) of AppleTalk resources, somewhat similar to a workgroup on a Microsoft network. With any Data Link protocol other than LocalTalk, zones can span multiple networks, or there can be multiple zones on a single network. On a LocalTalk network, only one zone can exist. Zones are commonly created according to functional areas or departments – for example, you might have a Finance zone or an IT zone. On a Macintosh computer, users can browse zone resources using the Chooser application.

AppleTalk Protocol Suite

The AppleTalk protocol suite was developed in the early 1980’s by Apple Computer to facilitate networking on their Macintosh computers. Although AppleTalk was the primary protocol suite used on Macintosh-based networks up until the late 1990’s, Macintosh systems have supported TCP/IP since MacOS 8.1, and all relatively recent models use TCP/IP as their primary protocol. As such, many companies no longer route AppleTalk traffic within their networks, choosing to rely on TCP/IP instead. So why discuss AppleTalk here? Well, the reason is twofold. First, you should be aware that although it is declining in popularity, many large networks (especially those in the academic world) still use AppleTalk as they continue to run applications that support no alternative protocols. Second, you may still come across AppleTalk-related questions on the CCDA exam. Although much less emphasis is now placed on AppleTalk concepts, there is still the chance that you’ll come across questions that reference Macs, so it’s better to be safe that sorry.

Using newer Macintosh models (such as an iMac, G4, or post-MacOS 8.1 system) does not explicitly require a network to support AppleTalk.

Two versions of the AppleTalk protocol suite exist – the earlier version was known as AppleTalk Phase 1, while the current version is AppleTalk Phase 2. The main differences between the two versions relates to scalability, which will be discussed shortly. Much like Novell’s IPX/SPX protocol suite, AppleTalk has also become less popular as networks are migrated to TCP/IP.