New Productsthat may be used. Rather than requiring that eachterminal server possess this information a priori,LAT provides a mechanism that permits eachserver to "learn" about the configuration.To accomplish this learning process, an additionalmessage type is used, the "service advertisement."This message is multicast from eachslave node to all master nodes and gives thenames of all services that the slave node is currentlyoffering. (A multicast message is a singlemessage addressed to and received by multiplenodes.) An advertisement is transmitted periodically,typically every 60 seconds. Thus on startup,a server can "listen" for service advertisementsand build a directory of available services.This directory can then be presented to the user,on demand, enabling him to choose whicheverservices he wants from those available when aconnection to a host system is desired.Service names, the names used to gain accessto the appropriate service access points, are notlimited to the name of the node on which the serviceis offered. Indeed, there is no restrictionthat any node may offer just one single service.Instead, LAT allows a given node to offer multipleservices.One common use for multiple service names isin a VAXcluster environment. Here the clustermanager can choose to offer as a service a namerepresenting the logical name of the cluster, inaddition to (or instead of) each individual nodename. When a user requests a connection to theservice name representing the cluster, the terminalserver can select one of the available nodes.In this case all nodes offering the same servicewill be presumed to be offering identical capabilitiesto the user.To assist the terminal server in choosing anode, the service nodes provide a "rating" associatedwith each service offered. The rating is anumeric value from 0 to 255 that representssome measure of the resources available to applyto that service. For example, the current VMSLTDRIVER implementation takes into accountthe most recent CPU idle time, the CPU type, theamount of memory, and the number of remaininginteractive job slots. VMS LTDRIVER alsoallows the system manager to specify a rating.The terminal server can then choose, at anyinstant, the node that offers a requested servicewith the highest rating and use that node asthe one to which to form the connection. Thischoice ensures that the load can be shared amongthe nodes in a VAXcluster system. The users neednot be aware of the current configuration of thecluster in order to form a connection.By carefully managing the service advertisements,the server makes the service directoriesreflect the current service list and their associatedratings. If a server fails o hear from a serviceprovider for some period, t?e server can assumethat the service provider has failed, or crashed.IThe server can then remove the service from itsdirectory of available servies.Note that this multicast naming service is alsoasymmetric; the master nodes do not send multicastadvertisements to the slave nodes. A recentaddition to the LAT protocol allows a slave to utilizea different multicast message to determine ifa given node name exists on the LAN . This techniqueis used so that host sytems can find terminalservers (in order to solibt connections fromtheir ports, described later) I by knowing only thename, not the specific Ethernet address, of theserver.Some details of this naming service deservefurther discussion. For example, the LAT "loadbalancing"and "fail-over" features are mostoften associated with VAXcluster systems. However,although they enhance <strong>Digital</strong>'s VAXclusteroffering, these LAT features are independentof it.i"Equivalent services" my also be offered byImultiple nodes using the directory service. Considerservices that are net\vork based, such asvideotext and dial-out modems. With an EthernetLAN, many independent nodes might offer suchservices; typically, however, users can access theservice only through nodes on which they haveaccounts. If a user's system is down, he is deniedaccess to the service, even though the serviceremains available on other nodes. For example,consider a videotext-basbd service, such asLIVE_ WIRE (an in-house j electronic bulletinboard) , that can be offered by many independentLAT host systems. If a LAT user connects toLIVE_WIRE, the terminal server software willdetect that the service is offered from multiplesources. The software will then make a connectionto the source believed to be currently offeringthe best level of service . If that serviceshould fail (i.e., stops sending Ethernet LAT messages), the terminal server s 1bftware will automaticallyreconnect the user toi an alternate providerof the same service if one1 exists; this action isknown as fail-over.<strong>Digital</strong> TecbnicalJounaalNo. 3 <strong>September</strong> 198681
Terminal Servers on Ethernet Local Area NetworksFuture versions of <strong>Digital</strong>'s LAT products maymake more extensive use of the LAT service capability.That would make it possible to installapplications that are accessible to the extendedLAN but not to the wide area network. A form ofnondiscretionary access control is implicit inthis design.LAT group codes can be used to partition anEthernet logically when the number of nodesgets large. By large, we mean more than I 00 services.Having more than 20 services or so meansthat a server display with one line per servicewill no longer fit on a terminal display withoutscrolling.Product Implications of theLA T ArchitectureAl though not originally conceived as a distributedterminal switch, an Ethernet can be usedeffectively in that role if combined with the terminalserver products. This fact remains trueeven when the Ethernet and host system are runningother protocols simultaneously, such asDECnet and VAXcluster systems based on Ethernet.Our experience has shown that a single dedicatedEthernet segment, without bridges, caneasily support several thousand concurrentusers.Functioning as a distributed terminal switchin the <strong>Digital</strong> computing environment, LAToffers significant advantages over dataswitchesand backplane multiplexers. The most prominentof these advantages is that any terminalserver user can connect to any host system ."Blocking" connections to host systems (moreaccurately called "port contention") is not anissue because host-system ports are logical, notphysical. A VAX(VMS system is limited by theLAT architecture to about 6 million simultaneousconnections, or 32,000 terminal servers, eachwith up to 255 sessions. This large number representsa. significant cost advantage, especiallyconsidering that Ethernet controllers are standardoptions on many of <strong>Digital</strong>'s processors. Inthis case the host-processor terminal connectioncost then becomes negligible, making backplane-orientedterminal switches much lessattractive . This cost advantage improves as thesize of the system increases. Table I comparesthe requirements of LAT with those of a dataswitchfor different numbers of terminals andhosts.Some additional advantages afforded by usingLAT are as follows:• Multisession capability, not offered by dataswitches• Simplified installation and management(especially where users and computer systemsare often added or moved around)• Higher availability due to the lack of any singlepoint of system failure• Simplified, incremental expansion andmigration capabilities inherent in <strong>Digital</strong> 'sextended LAN architecture , utilizing bridgesLAT PerformanceLAT performance is measured in terms of CPUload per user, which decreases as the number ofusers performing terminal IjO increases. ThusLAT performance increases with increasing CPUloads. Under light loads, LAT uses a relativelylarge amount of CPU resources. This is understandableif the cost of processing an Ethernetpacket containing a single character is comparedwith the cost of servicing a single DZ- I I characterinterrupt. As more data is exchanged, however,the number of messages exchanged doesTable 1A Comparison of Host Connections for LAT and Dataswitch<strong>Number</strong> of Terminals,<strong>Number</strong> of HostsLAT RequirementsDataswitch Requirements8 terminals1 host64 terminals8 hosts512 terminals16 hosts8 server connections1 Ethernet adapter64 server connections8 Ethernet adapters5 ·1 2 server connections16 Ethernet adapters8 terminal connections8 host connections64 terminal connections512 host connections512 terminal connections4096 host connections82<strong>Digital</strong> Tecbnical]ournalNo. 3 <strong>September</strong> 1986