An Overview of the Common Node Software By Paul W. Ciarfella, David Benson, and David S. Sawyer Abstract to transfer information To address an aggressive across the network. fiber distributed data The Common Node Software interface (FDDI) program (CNS) implements the part schedule and reduce of the FDDI station that the complexity of the controls and monitors concurrent development of connections within the FDDI multiple FDDI products, network. To provide this Digital developed a service, CNS implements common implementation the protocols defined of the FDDI station by the FDDI station management standard. This management (SMT) standard implementation, called plus Digital's value- the Common Node Software, added enhancements and, manages the physical and in addition, manages logical connections to the services provided by the 100-megabit-per- the FDDI chip set. These second fiber-optic ring services include the ring for Digital's FDDI product memory controller (RMC), set. Including the Common media access control (MAC), Node Software in each and elasticity buffer and product yields consistent link management (ELM) behavior at the FDDI chips.[1,2,3] CNS does data link and physical not provide International layers. Direct reuse of Standards Organization the software reduces the (ISO) 8802-2 logical link development and testing control (LLC) support, efforts by providing a which defines how data is proven implementation. reliably exchanged between Introduction two communicating systems. Although not provided The fiber distributed data by CNS, LLC support is interface (FDDI) data included in each member link provides clients of Digital's FDDI product with a connectionless set. Figure 1 illustrates data transmission and the functional requirements reception service. An fulfilled by the Common essential element of Node Software. this service is reliable connection to the physical network, allowing clients Digital Technical Journal Vol. 3 No. 2 Spring 1991 1 An Overview of the Common Node Software In this paper, we begin These changes complicated with a discussion of events the concurrent development leading to the development schedules of the DECbridge of CNS. Next, we present 500 and DECconcentrator 500 a detailed functional data link software. If two description of the FDDI independent firmware teams station management and designed their own FDDI chip management services data link software, both and specifics of the core teams would need to follow and external libraries the development of the of the common code. We SMT draft. These efforts then describe the CNS could result in different development effort. A interpretations of the SMT summary of the testing protocols, of how Digital's process follows, including FDDI chip set works, and details of the design of the functions data link verification test (DVT) software should and should monitor, developed by the not perform. Producing team, and interoperability multiple, independent SMT testing among FDDI vendors. implementations could lead Finally, the benefits of to incompatible products common code realized by the that exhibit inconsistent project team are discussed. behavior and are unable to communicate. Background of the CNS During the evolution of the Development Effort SMT draft, the physical connection management When development efforts (PCM) protocol pseudocode for the DECbridge 500 defined by the draft and DECconcentrator changed often; some changes 500 firmware began, the caused previous versions American National Standards to be incompatible. Institute (ANSI) FDDI MAC, PCM is responsible physical layer (PHY), and for the management of physical medium dependent full-duplex physical layer (PMD) standards were connections between two complete, but the station FDDI PHY entities. The management specification PCM pseudocode defines was not. The SMT draft was a synchronized bit- frequently changing; new signaling communication protocols were defined and process between two modifications to existing protocols were made with each meeting of the X3T9.5 SMT working group, which is responsible for developing the standard. 2 Digital Technical Journal Vol. 3 No. 2 Spring 1991 An Overview of the Common Node Software connecting nodes to began. The end result is exchange connection a set of reusable software information. If two nodes libraries which provide attempting to connect the functions necessary to to one another execute implement the SMT protocols incompatible versions of and to manage the FDDI chip the PCM pseudocode, these set on each FDDI product. nodes will not connect. This reusable code, called To avoid this scenario, the Common Node Software, and possibly others, is shared by the DECbridge a decision was made to 500 and DECconcentrator produce a common, reusable 500 products and also by implementation of the SMT more recently introduced protocols and FDDI chip FDDI products, such as the management. The initial DECcontroller 700 adapter. goal of the CNS project As the CNS design team was to constrain the matured, the advantages domain of possible SMT- and benefits of a common related problems which code implementation became could appear during the more apparent to the FDDI development of the FDDI program team. Originally, product set. the design constrained Another important goal CNS to operate under the of the CNS project was same operating system used compliance with both in the DECconcentrator the SMT standard and 500 and DECbridge 500 the Digital Network products. CNS was extended Architecture (DNA) FDDI to support microprocessor data link functional and operating system specification. Compliance independence to accommodate with the SMT standard could future FDDI products, increase the probability thus facilitating the that Digital's FDDI portability of CNS to other products would interoperate environments. with those of other This extended CNS vendors. Compliance with support allows a variety the DNA architecture would of implementations, guarantee interoperability including host-based among Digital's current and network controllers future products. and firmware-resident The CNS team worked drivers. Consequently, closely with Digital's Digital is benefiting by representatives in the ANSI distributing the software X3T9.5 FDDI SMT working externally through third- group to develop the party licenses to promote functional requirements rapid introduction of of the software. As the quality FDDI products to SMT specification evolved, the expanding marketplace. the functional requirements were completed and the development of the software Digital Technical Journal Vol. 3 No. 2 Spring 1991 3 An Overview of the Common Node Software Functional Description This section presents details of the station management standard services and the management of services provided by the FDDI chip set. A functional block diagram of the Common Node Software is shown in Figure 2. 4 Digital Technical Journal Vol. 3 No. 2 Spring 1991 An Overview of the Common Node Software Station Management The station management standard defines the services used by every station in an FDDI ring to monitor and control both the station itself and the state of the ring. The functionality defined by the standard includes connection management (CMT), ring management (RMT), and SMT frame-based services. Connection Management CMT is primarily responsible for the maintenance of physical connections to the FDDI ring. This involves initializing and establishing connections between physical layer port (PHY port) entities and configuring the internal data path of a station. CMT is divided into the following three areas: entity coordination management, which coordinates the trace process and manages the optional optical bypass function; configuration management, which manages the configuration of the PHY and MAC entities within a station; and PCM, which manages the physical connection between a station's PHY and the PHY of the adjacent station. Table 1 lists the functions and divisions of CMT and summarizes the value added by Digital. Digital Technical Journal Vol. 3 No. 2 Spring 1991 5 An Overview of the Common Node Software Table 1 Connection Management Functionality ___________________________________________________________________ ANSI SMT Value Name______Standard__Added__Description_____________________________ ConnectionYes Manages physical connections and Manage- station configuration. Contains entity ment coordination management, configuration management, physical connection management, and link error monitor. Yes Enhances topology management. Entity Yes Coordinates the trace process and Coordi- manages the optional optical bypass nation function. Manage- ment Yes Enhances trace function to be insensitive to network reconfigurations. ConfiguratYes Manages the configuration of the PHY Manage- and MAC entities within the station. ment Yes Function is integrated within hardware. Physical Yes Manages the physical connection between Con- connected PHY entities. nection Manage- ment Yes PCM is implemented in hardware. Link Yes Monitors active physical connection Error quality. Monitor Yes Additional errors are recognized above ___________________________those_required_by_the_standard._________ formed, the link confidence CMT provides a link test invoked by PCM is confidence test and a link performed to determine error monitor to check the if the quality of the quality of the physical connection is adequate link. When a connection is for proper ring operation. If the test fails, the 6 Digital Technical Journal Vol. 3 No. 2 Spring 1991 An Overview of the Common Node Software connection is not allowed causing the break should to form. fail its test and not The link error monitor rejoin the ring. Another checks the quality of value-added function in CNS the connection after it is the enhancement of the forms by computing and trace algorithms to ensure monitoring the link error proper termination of a rate to determine if this trace even in the presence rate is acceptable. If of simultaneous network the rate falls outside reconfiguration. the acceptable range, Connection management the connection will be is implemented in both terminated. A value-added hardware and software. CNS feature of the link error provides the CMT services monitor is error detection that must be implemented exceeding that required by in software but are not the SMT standard.[3] performed by the ELM chip. CMT is also responsible For example, the PCM state for topology control on machine, implemented in new connections. Topology the ELM chip, specifies control, implemented by the timing, state, and CNS as part of the PCM physical bit-signaling used pseudocode processing, in the connection process. enforces a set of The PCM pseudocode, on the connection rules defined other hand, is implemented to prevent the formation in CNS. This pseudocode of illegal ring topologies. is used to communicate The topology rules utilized connection information by CNS are more strict than between neighboring the default rules suggested PHY ports. Coordinating by the SMT standard. the PCM state machine Connections that are and pseudocode provides clearly misconfigurations full PCM functionality are not allowed to form. as defined in the SMT standard. CMT also provides support Another example of CMT for the trace function, services provided by CNS is which is a recovery the link error monitor. mechanism for the loss The ELM chip provides of logical continuity facilities to detect and of the ring. The trace signal the occurrence of function is initiated by bit errors on the link. the station downstream CNS computes the link error from the logical break rate based upon the data and is propagated upstream from the ELM and determines toward the break. Stations whether to sustain or to that receive the trace break marginal connections. notification leave the ring and perform a diagnostic fault test in an attempt to locate a faulty MAC or data path. The station Digital Technical Journal Vol. 3 No. 2 Spring 1991 7 An Overview of the Common Node Software Ring Management RMT, these stations with also implemented in duplicate addresses CNS, monitors the state strip each other's of the logical link by frames from the ring, using logical link status causing ring instability information received from and increased packet the MAC sublayer. The loss. If the duplicate information is then passed stations are performing on to network management, ring initialization, such as Digital's extended however, successful ring LAN management software initialization may be (DECelms), or to the LLC prevented and the ring will sublayer, for example, to not become operational. report that the link is The RMT state machine can available for transmission detect only the duplicate service. condition of its own This MAC information is MAC address. When this also used by RMT to detect condition is detected, RMT and to resolve faults such has the option of removing as duplicate addresses and the MAC from the ring, stuck beacon conditions. changing its address to a A stuck beacon condition unique address, or forcing occurs on the ring when a its MAC to lose the claim station's MAC continuously process and allow the ring transmits MAC beacon frames to become operational. With due to a fault condition the first option, a special on its data path. The control frame, called a jam logical ring does not beacon, is sent directly form because the MAC is to the duplicate address not able to receive its to inform all stations with own beacons. Detecting the the duplicate address of stuck beacon condition, the condition. LLC service RMT sends special MAC associated with the MAC frames, called directed is disabled while the beacons, onto the ring duplicate condition is to notify other stations present. of the condition. After RMT duplicate address sending these directed detection is complemented beacons for approximately by the neighbor 370 milliseconds, RMT tells notification protocol. CMT to initiate the trace This protocol allows a function. When the trace station to learn both its function successfully downstream and upstream completes, the data path neighbors' addresses. By fault is detected and the transmitting a periodic logical ring is formed. neighborhood information If two or more stations request frame (NIF) to have identical MAC its downstream neighbor, addresses, the MAC the protocol is able to protocols are adversely detect from the received affected. If the ring NIF responses that its becomes operational, MAC address is duplicated 8 Digital Technical Journal Vol. 3 No. 2 Spring 1991 An Overview of the Common Node Software on the ring. LLC service associated with the MAC information to network is disabled until the management. The optional condition is removed. parameter management Station Management Frame- frame service facilitates based Services remote management of Station management FDDI stations. The frame-based services status information frame include both mandatory service provides station and optional functionality. configuration and operation The mandatory functionality parameters. The echo frame includes the NIF, status service provides station- information frames, to-station, loopback echo frames, request testing using SMT frames. denied frames, extended Request denied frames service frames, status are sent by a station reporting frames, and in response to receiving the as yet undefined service requests that resource allocation frames. are not understood or are Parameter management frames not implemented. Extended are defined as optional service frames allow the functionality. use of vendor-defined frames. This service The set of SMT frame- provides the capability based services supports for exercising new SMT higher-level network frame-based services. management functions These services are which are not part of SMT. also useful for certain The information provided functions embedded within by the services helps Digital's stations. network management to These embedded functions determine the topology utilize the SMT frame-based and state of the ring and services and are summarized to control the network. in Table 2. The status report frame service announces status Table 2 Embedded Functions Supported by SMT Frame-based Services ___________________________________________________________________ Name ANSI SMT Value Description Standard Added duplicate Address Yes Periodic NIF requests inform neighbor test of station's existence, get neighbor's address, and test for duplicate of this station. Digital Technical Journal Vol. 3 No. 2 Spring 1991 9 An Overview of the Common Node Software Table 2 (Cont.) Embedded Functions Supported by SMT Frame-based Services ___________________________________________________________________ Yes Sending another NIF request to our own address improves coverage over ANSI required test. Ring No Yes Digital's ring purger rids the ring Purger of no-owner frames and fragments. Ring Elec- purger election is controlled by a tionb distributed algorithm. SMT No Yes Management may use any station as an Gateway agent to query other stations for SMT ___________________________information.____________________________ 10 Digital Technical Journal Vol. 3 No. 2 Spring 1991 An Overview of the Common Node Software Table 3 Table 2 Embedded Functions Supported by SMT Frame-based Services ___________________________________________________________________ ANSI SMT Value Name______Standard__Added__Description_____________________________ duplicate Address Yes Periodic NIF requests inform neighbor test of station's existence, get neighbor's address, and test for duplicate of this station. Yes Sending another NIF request to our own address improves coverage over ANSI required test. Ring No Yes Digital's ring purger rids the ring Purger of no-owner frames and fragments. Ring Elec- purger election is controlled by a tionb distributed algorithm. SMT No Yes Management may use any station as an Gateway agent to query other stations for SMT ___________________________information.____________________________ participating in the CNS makes use of the algorithm in order to extended frame service communicate with each by implementing the ring other. The station that purger election protocol, either wins the claim which supports the ring process or has the highest purger function. The ring address becomes the ring purger is one of several purger. Once elected, a functions defined by ring purger enables the Digital's FDDI architecture purging in the MAC chip and that add value to the SMT sends out periodic "hello" standard.[2] messages to the ring. If these messages are not The ring purger election received after a period protocol is an algorithm of time, the election implemented within CNS; process is repeated. Other the purging function is error control and recovery implemented in the MAC procedures are built into chip. This distributed the algorithm to increase algorithm elects one robustness. station on the FDDI ring Another value-added feature to be the ring purger. of CNS is the SMT gateway Candidate ring purgers, protocol. This protocol using the SMT extended helps build ring maps frame service, send ring on network management purger election frames consoles. A ring map is to a multicast address a database that can be known only to stations Digital Technical Journal Vol. 3 No. 2 Spring 1991 11 An Overview of the Common Node Software used to build a graphical Software control of these representation of the modes is supplied by a network topology. The set of interface functions map not only presents within CNS. Many of the a visual image of the SMT-related protocols, network, but also displays such as CMT and the ring characteristics about each purger algorithm, are node on the ring such as implemented in both the its type and number of FDDI chips and CNS. CNS ports. The SMT gateway controls the operation of within CNS uses status these algorithms through information and neighbor its management of the chip information request frames set. to solicit information CNS also provides about other stations on the consistent FDDI chip fault network. Responses received management for all products include information about a using CNS. Compile time station's configuration, and system initialization its network address, options allow the product current counter values, designers to specify, for and FDDI timer values. each fault, whether it The gateway collects should be considered fatal these responses and or nonfatal to the system. returns them, using the Also, for each event, a management protocol within threshold is set indicating the product, to the host the maximum number of times management station building the event is to occur over the map. a predefined period before By providing a well-defined any action is taken. When and protocol-independent the threshold is reached interface to its clients, and a fault is classified the SMT gateway can be used as fatal, CNS removes with any network management the station from the ring protocol. The first product and notifies the firmware to utilize the SMT gateway kernel. The kernel is then is DECelms software.[4] responsible for further FDDI Chip Management action, such as rebooting the hardware or running a CNS manages the services diagnostic test. If a fault provided by the FDDI is considered nonfatal, CNS chip set, including notifies the kernel of the the initialization of event, but the station does all configurable chip not exit from the ring. parameters such as timer In addition, the algorithm values and interrupt masks. can disable a recurring Special chip modes, such event for up to one as various frame reception second. This provides modes supplied by the MAC, flow control of fault multiple loopback modes events and allows other in the ELM, and parity processing to continue. detection in the RMC, are During lab testing of also controlled by CNS. the DECconcentrator 500 12 Digital Technical Journal Vol. 3 No. 2 Spring 1991 An Overview of the Common Node Software o What functionality would be common across all prototype, broadcast packet products? storms caused receiver o How do we handle common overrun conditions in the functionality that RMC memory controller. must be implemented An interrupt event is on different hardware associated with the platforms with different overrun, so the event interfaces? occurred continuously, o What requirements, using up all available such as consistent processor time. This interfaces, need to situation effectively be placed upon external disabled the product until hardware and software? the storm ended. The flow control method was devised Common Code to throttle events in CNS is code written such a situation. Once entirely in the C language, the occurrence rate of which can be executed the event slows down, the on different hardware throttling stops. platforms without modifying the source code. This Implementation Specifics common code includes a When the CNS development library of core functions, began, some important which are completely questions arose. Many of portable, and a set of the questions were about external functions to FDDI itself. Most of the provide services that questions dealt with issues cannot be implemented concerning the structure of in the same way on all the reusable software, for products. The CNS core and example, external library interfaces with the remaining system o What defines common firmware are shown in code? Figure 3. The CNS project team But implementations of developed a coding standard unions and bit-field to facilitate a high definitions among C degree of portability. compilers is inconsistent. The standard provides, The language allows the for example, a portable assignment of variable set of type definitions names to individual or to ensure that a long strings of bits. Control integer is always 32-bits /status register bit wide and a short integer manipulation is easy is always 16-bits wide. to perform using the Other type definitions combination of structure specify the size of control and bit-field definitions. /status registers, which But the ordering of bit may be either 16 or 32 assignments can change bits, depending upon the from compiler to compiler. platform. While one compiler assigns Digital Technical Journal Vol. 3 No. 2 Spring 1991 13 An Overview of the Common Node Software bit 0 to a bit-field these interrupt processing declaration, another may functions are facilities assign bit 31. Correctly to manage chip faults, such mapping bit definitions as parity errors or overrun in software to their conditions signaled by the corresponding definitions FDDI chips. in a hardware register The External Library cannot be guaranteed. Thus, the use of unions The external library is and bit-field definitions based on a well-defined was eliminated. set of functions such The Core Library as allocating a transmit buffer, starting a software The software is partitioned timer, or enabling the into two libraries FDDI data path scrub containing core and function used to clear external functions. The frame fragments from the core library consists of a ring. This library provides set of completely reusable the direct interface to the functions. No source code product's operating system, changes are necessary to buffer management services, execute this software on and hardware configuration. different products and Digital's implementation hardware platforms. of the external library The core library provides is further divided into the major functions of two sublibraries. The CNS, but relies on the first sublibrary consists external library to provide of functions specific, operating system and but common, to Digital's hardware support. The FDDI product set and core provides a set of is completely portable interface functions that throughout the set. manage the physical and The other sublibrary of logical connections to the functions is specific to FDDI data link. each FDDI product and is The core implements many not portable among them. of the SMT protocols such These functions deal mainly as any CMT not performed by with special hardware hardware, duplicate address access and configuration detection, the SMT frame management, such as protocols, and Digital's inserting the MAC onto the ring purger election physical data path internal protocol. The core library to the DECconcentrator 500 also provides interrupt product. The interfaces processing functions for to these functions the MAC and ELM chips. are the same for all The external library products, but different provides the interrupt hardware designs or the service routines (ISR), limited functionality and these core functions in a product may require are called from within distinct implementations. the ISR. Built within For example, the 14 Digital Technical Journal Vol. 3 No. 2 Spring 1991 An Overview of the Common Node Software DECconcentrator 500 device CNS. The Phy data structure has an internal data contains information about path that interconnects a single PHY port. The Link the MAC and PHY entities data structure reflects within the product. Logic the state of the logical surrounding the MAC chip link associated with the can be used to insert and MAC, while the Station remove the MAC from the data structure maintains data path or to bypass the information about the MAC. The external library general state of CNS. for the DECconcentrator All information about the 500 firmware contains state of CNS and SMT is two functions to insert contained within these data and bypass the MAC. In structures. Other firmware contrast, the DECbridge 500 agents residing within the product's MAC is always on products, such as extended the data path and does LAN management software not need to bypass or responders, need only to insert the MAC; therefore, look in a central location the firmware does not for management information contain bypass or insertion pertaining to SMT. Global functions. variables defined by CNS To facilitate consistent for its sole use are kept memory access, low-level to a minimum. packet memory functions The structures are linked enforce network byte order to reflect the actual in SMT frames. Network configuration and data path byte order defines the of the MAC and PHY entities order in which bytes are within the station. transmitted and received. This linking provides These functions perform 16- easy support for various and 32-bit read and write configurations and for the operations when building execution of configuration- and parsing frames. based protocols. For Other product-specific example, in the DECbridge functions provide access 500 product, the CNS data to designated packet memory structures consist of one locations for generating Station, one Link, and one special MAC-level control Phy connected to reflect frames called directed the single attachment beacons, which are used by station (SAS) architecture. ring management in special The DECconcentrator 500 fault situations. firmware has one Station, Data Structures one Link, and 12 Phy data Supporting both libraries structures connected to is a set of three data form the configuration structures, Phy, Link, of the station. A six- and Station, that store port concentrator with state, configuration, a management board is and counter attributes represented by one Station, information pertaining to one Link, and six Phy data structures. An eight-port Digital Technical Journal Vol. 3 No. 2 Spring 1991 15 An Overview of the Common Node Software concentrator without a portion of the CNS code management board does was performed on Digital's not contain a MAC, and, logic simulation system thus, is configured as one (DECSIM) test bed. This Station and eight Phy data testing utilized one of the structures. same test beds constructed by the ELM chip designers The CNS Development Effort configured with two ELMs connected together.[2] The actual design and This test bed utilized the development cycle for behavioral chip models in CNS covered a six-month order to speed execution. period. During this time Additional routines the SMT draft standard went were written to emulate through many revisions; the resources normally provided concept of licensing the by the operating system CNS code was introduced; (e.g., timer services). and Digital's FDDI chip Roughly one week was set underwent a second-pass spent in simulation, two design cycle. days of which focused on The licensing effort developing and debugging required rethinking and the environment. Testing making adjustments to included the initialization the partitioning and of a good connection as structure of the design well as connections that to accommodate several resulted in topology layers of interfaces and rejects, link confidence support functions in CNS. test failure, and link These requirements resulted error monitor failure. in an additional four to No bugs were found in six weeks of effort, but the ELM design, however yielded the benefits of a several coding bugs were code that could be used discovered. Later, when the outside Digital and a first DECconcentrator 500 more generic design to hardware was available in accommodate future product the lab, and the operating designs. system services were debugged and available, CNS Of all Digital's FDDI PHY code required only one- chips undergoing second- half day to debug before pass design, the ELM chip becoming operational. required the greatest Thus, prior simulation number of changes. of the code was clearly The majority of these beneficial. changes were due to the The first product that major redefinition of utilized CNS was the the physical connection DECconcentrator 500 management portion of firmware. The integration, the ANSI SMT draft.[3] debug, and design To minimize risk to verification process the chip development spanned an eight-week effort, simulation of period. For subsequent the connection management 16 Digital Technical Journal Vol. 3 No. 2 Spring 1991 An Overview of the Common Node Software products, the duration nature of many of the of this phase was greatly algorithms made testing reduced: two weeks for the difficult. The complexity DECbridge 500 firmware causes automation of the and one week for the test process to be an DECcontroller 700 adapter. extremely involved task. This reduction in time Some functions, such as was, of course, due to RMT, can be tested only the reuse of the core in a multiple-station and external libraries. configuration due to the Only a small subset of distributed nature of the CNS was unique for each algorithms. product; hence, debug Another difficulty in time was minimal. Also, performing the initial as experience was gained in testing of CNS was the verification testing, and lack of visibility into the related tools improved, the executing software. the test process became The DECelms product reports more efficient. some information maintained by CNS, but most of the Testing the Common Node data used during testing is Software not visible to network One fortuitous advantage management. Also, the to the structure of CNS is DECelms product was being that the core functionality developed at the same time only needs to be tested as CNS and was not ready exhaustively on a single for use. In addition, there platform. The partitioning was no global visibility of core and external into the ring. At the time, functionality and the commercially available FDDI external requirements datascopes or analyzers to which each product that would have been used environment must adhere to view symbol streams yield this advantage. Thus, on the fiber were not the only testing necessary available. on an individual product is To facilitate testing, the the initialization of CNS CNS team developed a tool and the external interface referred to as the design between CNS and the system verification test (DVT) firmware. These product monitor. This tool provides dependencies include SMT a detailed view into the frame transmission and operation of CNS as well reception, status and error as automated tests for message passing, and some CNS interface functions. functions unique to the The tool also has the product. capability to insert faults The task of test and into the ring and exercise verification of the many of the SMT protocols. CNS core presented some interesting challenges. The complexity and distributed Digital Technical Journal Vol. 3 No. 2 Spring 1991 17 An Overview of the Common Node Software The DVT monitor has two such as the station's components: a connection to address. Configuration a universal asynchronous hardware within each receiver/transmitter product can also be changed (UART), which provides to affect the operational serial communication state of the ring. Changing between the product and this hardware is especially a display terminal; and helpful for introducing monitor software, which is duplicate addressed layered on top of CNS. stations, stuck beacon Thus, the monitoring conditions, beacon/claim and managing of CNS is ring oscillations, and achieved by out-of-band other anomalies into an access via the UART. This operational ring in order access is necessary to to exercise RMT and the perform testing of ring trace function. To analyze fault conditions. The SMT frames, an SMT frame monitor software is run agent exists in the tool at a lower priority than to generate and receive any all other system components SMT frame type, including to leave the system timing frames not defined by the or operation unaffected. standard. This software provides Prior to the development both nonintrusive or "peek" of the DVT monitor, the and invasive or "poke" FDDI tester was utilized management capabilities. to generate and receive Password protection on SMT frames to test the a login screen prevents proper operation of the SMT unauthorized users from frame-based protocols.[2] disrupting the network. In later testing, the FDDI To use the tool, one must tester was indispensable log on to an FDDI product in creating a variety running the test software. of traffic loads on the As a nonintrusive tool, ring to test the products' the DVT monitor provides responses to traffic loads. passive monitoring of the The tester allowed an network status and related arbitrary mix of frames events. The tool provides sent at a programmable real-time monitoring of rate over the FDDI ring all physical (or port) and made it simple to and logical (or MAC) characterize the responses connections in the product. of the products to a wide Status windows continuously range of network traffic display the state of conditions. all physical and logical connections to the ring. As an invasive tool, the monitor can be used to insert faults and to exercise the ring. The tool can be used to easily change station parameters, 18 Digital Technical Journal Vol. 3 No. 2 Spring 1991 An Overview of the Common Node Software FDDI Interoperability Testing vendors' implementations- Interoperability testing especially in the presence among the FDDI vendors of fault conditions. is important for many Every vendor must reasons. Comprehensive make certain that its interoperability testing implementation adheres among the vendors both to the functionality reinforces the correct as defined by the SMT interpretations of the standard. Digital standard and performs the encouraged cooperative more immediate goal of testing among the vendors verifying the correctness and participated in testing of the implementations. with many vendors at The proper operation of Digital's FDDI development all stations on the network center in Littleton, both in normal operation Massachusetts, at customer and in response to fault sites, and at other conditions is necessary if vendors' locations. the commercial marketplace Interoperability Test is to fully accept FDDI. Methodology The nature of a ring A test plan was developed topology requires the originally for design active participation of verification and, later, each station up to the MAC for interoperability sublayer. Each FDDI station testing between Digital's must establish and maintain FDDI product set and physical connections and products from other repeat frames without vendors. The test plan error. If a single station concentrates mainly on the does not repeat frames, interoperability of the ring connectivity is lost. FDDI data link, defined The X3T9.5 standards by the FDDI PHY, MAC, committee anticipated and proposed PMD and SMT faults that prevent standards. normal ring operation and devised algorithms The plan covers to deterministically connection management, resolve such conditions. ring management, and SMT The addition of fault frame-based services and recovery schemes devised functions defined in the for the FDDI system, while SMT draft standard. The necessary to guarantee intent of the plan is proper operation of the to verify plug-and-play network, made the standard capability as well as to more complex. Correct correct operation under implementation of these both normal and aberrant complex protocols and network conditions. distributed algorithms is essential to ensure that one vendor's implementation will operate correctly on the same ring with other Digital Technical Journal Vol. 3 No. 2 Spring 1991 19 An Overview of the Common Node Software Connection management The interoperability testing covers the physical testing uncovered connection management problems in many vendors' and configuration implementations, including management processes. PCM Digital's.[5] Many of testing covers the bit- these problems resulted signaling and connection from inconsistent initialization algorithms, interpretations of the SMT the link confidence test draft; others were due to and link error monitor, incomplete implementations and verification of the that did not support some connection matrix defined functions defined in the in the SMT draft. CFM SMT draft; and still testing verifies the other problems could be correct operation of the attributed to changes in reconfiguration scrub and the SMT draft overlooked by MAC insertion functions. some implementations. As a Ring management testing result of the testing, many covers duplicate address of these problems have been detection, including fixed, and the number of stuck beacon detection interoperability problems and recovery, directed within FDDI networks has and jam beacon initiation been reduced. and reception, and the trace function. Other Conclusion miscellaneous testing The Common Node Software monitors the abusive use provides the FDDI project of restricted tokens and with a very flexible and extended service frames. stable implementation Frame-based testing covers of a major portion of all required SMT frame the FDDI data link. The protocols. These protocols initial investment in time are tested extensively spent on development was for compliance to the SMT longer than that expected draft. Parameters within for independent software the frames are examined development efforts for consistency and but is justified by the correctness. For example, long-term benefits of all timer values presented common code. Independent in SMT frames are verified development efforts for to be in two's complement the DECconcentrator 500 form, and all canonical and DECbridge 500 products, addresses are correctly for example, probably would converted to FDDI most have taken less time. Each significant bit order. design would be based upon Results of Interoperability the hardware design and Testing system requirements of each product. Independent designs would reduce the amount of software developed for each product because the designers 20 Digital Technical Journal Vol. 3 No. 2 Spring 1991 An Overview of the Common Node Software would not have to address interface needs to be portability issues, such supplied. as generic interfaces to o Test and verification the operating system or time is significantly hardware. reduced. Only the But these two products were interfaces to CNS and the first of a new network the system dependences architecture, and the must be rigorously station management draft tested with the design was not complete during of each new product. product development. Thus, o The bug rate is reduced independent implementations significantly. Each would have resulted in new product uses the a higher bug rate, with pretested and proven each product exhibiting core library. its own set of behavior o The software requires at the SMT level. Future little maintenance. updates and revisions to Since the core library the SMT standard would have is stable, development resulted in independent only needs to be revisions of each product's performed on the firmware and, possibly, a external library. new set of problems. With CNS, only one source needs The CNS development project to be changed and tested. was the design team's The FDDI standard introduction to reusable promotes multivendor software. We have probably interoperability, so that not done everything in the independent products can best possible way, but the communicate effectively success of the project and in a heterogeneous FDDI the time and effort saved network. The development of have convinced us of the CNS significantly increased benefits of reusability. interoperability between Digital's products and Acknowledgments those of other vendors. The authors would like The advantages of reusable to thank Peter Hayden and software that were realized Herman Levenson for their by the project team can be technical contributions to summarized as follows: the development of CNS. o The major design of Much of the structure the software needs of the common code is a to be done only once. product of their ideas. A core library and a Appreciation is also well-defined external extended to Bill Cronin, interface are provided. who was instrumental When a new product is in expanding the scope developed, only the and effectiveness of the specific implementation interoperability testing. of the external Finally, the authors would like to acknowledge Henry Digital Technical Journal Vol. 3 No. 2 Spring 1991 21 An Overview of the Common Node Software 3. J. Hutchison, C. Baldwin, and B. Thompson, "Development of the FDDI Physical Layer," Digital Technical Journal, vol. Yang for his careful and 3, no. 2 (Spring 1991, constructive review of the this issue): 19-30. paper. 4. B. Sweet, "DECelms- Managing Digital's FDDI References and Ethernet Extended LAN," Digital Technical 1. FDDI Station Management, Journal, vol. 3, no. Draft Proposed American 2 (Spring 1991, this National Standard, issue): 76-84. X3T9.5/94-89, REV 6.2 5. D. Benson, P. Ciarfella, (May 18, 1990). and P. Hayden, 2. H. Yang, B. Spinney, "FDDI-Meeting the and S. Towning, "FDDI Interoperability Data Link Development," Challenge," Proceedings Digital Technical of the IEEE Fifteenth Journal, vol. 3, no. Conference on Local 2 (Spring 1991, this Computer Networks issue): 31-41. (October 1990). 22 Digital Technical Journal Vol. 3 No. 2 Spring 1991 ============================================================================= Copyright 1991 Digital Equipment Corporation. Forwarding and copying of this article is permitted for personal and educational purposes without fee provided that Digital Equipment Corporation's copyright is retained with the article and that the content is not modified. This article is not to be distributed for commercial advantage. Abstracting with credit of Digital Equipment Corporation's authorship is permitted. All rights reserved. =============================================================================