NO174910B - Computer input / output network - Google Patents

Computer input / output network Download PDF

Info

Publication number
NO174910B
NO174910B NO883578A NO883578A NO174910B NO 174910 B NO174910 B NO 174910B NO 883578 A NO883578 A NO 883578A NO 883578 A NO883578 A NO 883578A NO 174910 B NO174910 B NO 174910B
Authority
NO
Norway
Prior art keywords
session
network
source
ionet
accordance
Prior art date
Application number
NO883578A
Other languages
Norwegian (no)
Other versions
NO883578D0 (en
NO883578L (en
NO174910C (en
Inventor
Michael A Fisher
Original Assignee
Datapoint Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US06/941,084 external-priority patent/US4941089A/en
Application filed by Datapoint Corp filed Critical Datapoint Corp
Publication of NO883578D0 publication Critical patent/NO883578D0/en
Publication of NO883578L publication Critical patent/NO883578L/en
Publication of NO174910B publication Critical patent/NO174910B/en
Publication of NO174910C publication Critical patent/NO174910C/en

Links

Description

Denne oppfinnelsen angår forbedring av inngang/utgangsdelen i en datamaskin, og er spesielt nyttig for en kostnadseffektiv tilknytning til datamaskinen av et forholdsvis stort antall inn/ut-innretninger eller periferenheter av lav til middels hastighet spredt over et relativt stort geografisk område for å oppnå effektiv tidsdeling av datamaskinsystemets ressurser og effektiv kommunikasjon mellom inn/ut-innretningene og datameskinsystemet. This invention relates to the improvement of the input/output part of a computer, and is particularly useful for a cost-effective connection to the computer of a relatively large number of input/output devices or peripheral devices of low to medium speed spread over a relatively large geographical area to achieve efficient time sharing of the computer system's resources and efficient communication between the input/output devices and the computer system.

Bakgrunn for oppfinnelsen. Background for the invention.

Det økende kravet til tidsdeling av datamaskinressurser blant en mengde forskjellige eksterne inn/ut-innretninger av forholdsvis lav hastighet har medført mange endringer i datamaskinarkitekturen gjennom årene. En god del av disse endringene har dreid seg om inn/ut-subsystemet. Inn/ut-kontrollere er konstruert for å unngå å begrense den tilgjengelige hastighet på dagens prossesorenheter og tilstrebe å betjene et økende antall inn/ut-enheter. Inn/ut-kontrollere er vanligvis enten av masselager eller karaktertype. En inn/ut-kontroller for masselager brukes for å styre høyhastighets-overføring av relativt store datamengder fra en eller flere eksterne masselagre som f.eks. platelagre, via datamaskinens buss til systemets primærlager. Da antall over-føringer til og fra masselageret er forholdsvis lite og datamengden ved hver enkelt kontinuerlig høyhastighetsoverføring er forholdsvis stor, er effektiviteten ved masselager kanal-kontrolleres operasjon vanligvis ikke betraktet som noen vesentlig begrensning. En har imidlertid fått betydlige begrensninger ved å forsøke å overføre mindre datamengder, vanligvis karakterer, forholdsvis ofte etter hverandre, som er tilfallet ved forholdsvis mange av lav- til middelhastighets inn/ut-innretninger som f.eks. terminaler og skrivere. Karakter inn/ut-innretningen som har blitt utviklet som svar på den økende bruken av lav til middels hastighets inn/ut-innretninger har blitt mer og mer kompleks, og vil snart gi minkende effektivitet i forhold til de forbedringer som måtte oppnås. The increasing demand for time sharing of computer resources among a number of different external I/O devices of relatively low speed has led to many changes in computer architecture over the years. A good number of these changes have concerned the in/out subsystem. I/O controllers are designed to avoid limiting the available speed of today's processor units and strive to serve an increasing number of I/O units. I/O controllers are usually either mass storage or character type. An I/O controller for mass storage is used to control the high-speed transfer of relatively large amounts of data from one or more external mass storage such as e.g. disk storage, via the computer's bus to the system's primary storage. Since the number of transfers to and from the mass storage is relatively small and the amount of data for each continuous high-speed transfer is relatively large, the efficiency of the mass storage channel controller's operation is usually not considered a significant limitation. One has, however, experienced significant limitations by attempting to transfer smaller amounts of data, usually characters, relatively often one after the other, which is the case with relatively many low- to medium-speed input/output devices such as e.g. terminals and printers. The character I/O device that has been developed in response to the increasing use of low to medium speed I/O devices has become more and more complex, and will soon provide diminishing efficiency relative to the improvements that may be achieved.

Den mest vanlige utgaven av inn/ut-kanal-kontrollere nytter sin egen, forholdsvis komplekse prosessor for å multiplekse data til og fra et bestemt antall (8,16 eller 32) tilkoplede inn/ut-innretninger. Karakter-kanal-kontrollerens inn/ut-porter kan være begrenset til en bestemt type enhet for dedikert lokal tilkopling. Hvis karakter-kanal-kontrolleren ikke er enhetsdedikert, kreves det et tilsvarende komplekst inn/ut-adapter mellom inn/ut-kanalen og hver enhet, eventuelt hver gruppe av enheter. De operasjonelle funksjonene hos inn/ut-innretnings-kontrolleren, inn/ut-adapteret, vertsdatamaskinen og inn/ut-innretningene er delt mellom alle disse komponentene. Kommunikasjonen og protokollen for å oppnå slik kommunikasjon er vanligvis kompleks, krever betydelige overflødighet i operativsystemet, kompliserer vanligvis overføringen av inn/ut-data og begrenser oftest behandlingsevnen. The most common version of I/O channel controllers uses its own, relatively complex processor to multiplex data to and from a certain number (8, 16 or 32) of connected I/O devices. The character channel controller's I/O ports may be limited to a specific type of device for dedicated local connectivity. If the character-channel controller is not device-dedicated, a correspondingly complex I/O adapter is required between the I/O channel and each device, possibly each group of devices. The operational functions of the I/O controller, the I/O adapter, the host computer, and the I/O devices are shared between all of these components. The communication and the protocol to achieve such communication is usually complex, requires significant redundancies in the operating system, usually complicates the transfer of I/O data and usually limits the processing capability.

De fleste kostnader i forbindelse med å kople enheter til datamaskinen kommer som en følge av av den forholdsvis komplekse operasjonsmåten hos inn/ut-proses-sorene i kanal-kontrolleren og adapterne og protokollen som kreves. For å minske endel av disse relativt høye kostnadene, er det vanlig å lage mange porter på hvert inn/ut-adapter i den hensikt å tilkople mange inn/ut-innretninger. Inn/ut-innretningene må vanligvis lokaliseres fysisk nært inn/ut-adapteret da kabellengeden kan begrense den hastigheten som pålitelig dataoverføring kan foregå ved. For å tilkople en ny inn/ut-innretning til en datamaskin i det tilfellet det ikke fins en ubrukt port på et multiports inn/ut-adapter, må et nytt multiports inn/ut-adapter tilkoples kanal-kontrolleren. Brukerens tilkoplingskostnader er ikke nødvendigvis relatert til hver ny tilkopling av inn/ut-innretning til systemet, da tilkoplingen av hver ny multiports adapter medfører å måtte betale for muligheten å tilkople en mengde inn/ut-innretninger enten disse brukes eller ikke. I enkelte situasjiner kan tilkoplingskostnadene overstige kostnadene ved selve inn/ut-innretningen. Most costs in connection with connecting devices to the computer come as a result of the relatively complex mode of operation of the I/O processors in the channel controller and the adapters and protocol required. In order to reduce some of these relatively high costs, it is common to create many ports on each input/output adapter in order to connect many input/output devices. The I/O devices must usually be located physically close to the I/O adapter as the cable length can limit the speed at which reliable data transfer can occur. To connect a new I/O device to a computer in the event that there is no unused port on a multiport I/O adapter, a new multiport I/O adapter must be connected to the channel controller. The user's connection costs are not necessarily related to each new connection of an input/output device to the system, as the connection of each new multiport adapter entails having to pay for the opportunity to connect a number of input/output devices, whether these are used or not. In some situations, the connection costs may exceed the costs of the input/output device itself.

Metoden for multipleksing som nyttes i karakter inn/ut-kanal-kontrollere og The method of multiplexing used in character input/output channel controllers and

-adaptere kan også skape begerensninger. En type mulitpleksing er kjent som sentral spørring. Ved sentral spørring sender den sentrale prosessoren forespørsler til hver inn/ut-innretning i tur og orden og uavhengig om den har noe data å sende eller ikke. En annen form for spørring, kjent som indusert spørring eller spørring etter ønske, setter igang denne typen sentral spørring bare når et adapter sender et status-endret signal. Med indusert spørring unngår en den arbeidsbyrde som kontinuerlig spørring av alle adaptrene og inn/ut-innretningene er for prosessoren, men krever at alle adaptrene blir spurt en gang i rekkefølge ved enhever spørresekvens. Spørring krever betydlig programmessig funksjonalitet enten hos prosessorenheten eller kanal- -adapters can also create restrictions. One type of multiplexing is known as central query. In case of central query, the central processor sends requests to each input/output device in turn and independently of whether it has any data to send or not. Another form of polling, known as induced polling or on-demand polling, initiates this type of central polling only when an adapter sends a state-changed signal. With induced polling, one avoids the workload that continuously polling all the adapters and I/O devices is for the processor, but requires that all the adapters are polled once in sequence with a single query sequence. Querying requires significant programmatic functionality either at the processor unit or channel

kontrolleren, og sløser med tid ved at både de aktive og de passive inn/ut-innretningene spørres, og ved tolking av resultatet av spørringen. the controller, and wastes time by both the active and the passive I/O devices being queried, and by interpreting the result of the query.

En annen type multipleksing er generelt referert til som tilgang på forespørsel. Tilgang på forespørsel innebærer som regel et tilgangsønske fra et adapter til kommunikasjons-leddet, og en form for utvelging for å skille mellom tilgangsønske fra de forskjellige adaptre. Signalforsinkelsen i utvelgingssystemet kan skape betydlige uhel-dige påvirkninger. Da signalforsinkelsen øker med økende kabellengde er utvelg-elsesteknikker som benytter prosessor-enheten eller systembuss-kontrolleren for å sortere tilgangsønsker, kjent som sentrale utvelgelsessystemer, vanligvis begrenset til datameskinebussen og andre applikasjoner der avstanden mellom inn/ut-adaptrene som genererer ønskene og utvelgelseslogikken er maksimalt en meter. Another type of multiplexing is generally referred to as on-demand access. Access on request usually involves an access request from an adapter to the communication link, and a form of selection to distinguish between access requests from the different adapters. The signal delay in the selection system can create significant adverse effects. Since signal delay increases with increasing cable length, selection techniques that use the processor unit or system bus controller to sort access requests, known as central selection systems, are usually limited to the computer bus and other applications where the distance between the I/O adapters that generate the requests and the selection logic is maximum one meter.

Tegnsending etter stafettpinneprinsippet er en teknikk for distribuert kontroll eller utvelgelse som med hell har vært benyttet i lokale nettverk. Relay signaling is a technique for distributed control or selection that has been successfully used in local area networks.

US-4495493 beskriver et konvensjonelt nettverk, og angår medietilgang styring for nodene ved det lokale nettverket. Det er ikke er relevant med hensyn på kommunikasjon på sesjonsnivå: ""The upper levels, for example session, presentation, applica-tion (terminology OSI) cooperate with the lower levels but they will not be described herein because they are essentially formed by logic and are known". (kolonne 7, linjene 64-69). I samsvar med dette er det i US-4495493 ikke vist eller foreslått en separat IONET kommunikasjonsprotokoll som opererer ved nivå over det lokale nettverkets kommunikasjonsprotokoll for å etablere kommunikasjon på sesjonsnivå mellom sesjonspartner-innretninger uten innblanding fra andre IONET-beskjeder gjennom sesjonen. Heller ikke er vist inkludering av IONET-beskjeder i datafeltene ved lokale nettverk datapakker, overføring av styringsfunksjonsinformasjon og bytestrømdata i enkle IONET-beskjeder for samtidig å utføre styringsfunksjoner, mens bytestrømdata overføres umodifisert til innretningene, eller bruk av bruks-punktorganer ved hver node for å implementere separat IONET kommunikasjonsprotokoll. US-4495493 describes a conventional network, and concerns media access control for the nodes of the local network. It is not relevant with regard to communication at session level: ""The upper levels, for example session, presentation, applica-tion (terminology OSI) cooperate with the lower levels but they will not be described herein because they are essentially formed by logic and are known". (column 7, lines 64-69). Accordingly, US-4495493 does not show or suggest a separate IONET communication protocol operating at a level above the local network communication protocol to establish session-level communication between session partners -devices without interference from other IONET messages throughout the session. Also not shown is inclusion of IONET messages in the data fields of local network data packets, transmission of control function information and byte stream data in single IONET messages to simultaneously perform control functions, while byte stream data is transferred unmodified to the devices , or the use of utility point bodies at each node to implement separate IONET com communication protocol.

Ved US-44574284 er det nødvendig med separate kommunikasjonsmodi, såsom en for data og en annen for styringsfunksjoner. Videre trengs et separat medium eller kabelsett for å kommunisere styringsfunksjoner. In US-44574284, separate communication modes are required, such as one for data and another for control functions. Furthermore, a separate medium or cable set is needed to communicate control functions.

I US-4574284 er det vist at bussinterface-enhetene er omskiftbar mellom en separat kommandomodus der informasjonen fra brukerinnretningen ikke oversendes til bussen og en tilkoplet modus der informasjonen fra brukerinnretningen sendes til bussen. Med bussen ser det ut til at to separate og ikke-samtidige kommunikasjonsmodi er gjennomført; en for å overføre bytestrømdata, og en annen for å overføre styringsfunksjonskommandoer. Det er imidlertid ikke inkludert fordelen ved samtidig kommunikasjon av styringsfunksjonal administrativ informasjon sammen med byte-strømdata, uten å avslutte sesjonen. Videre anvender US-4574284 reserverte eller spesielle koder (f.eks. carriage return) i bytestrømdata kommunisert til å oppnå visse styringsfunksjoner, og oppnår dermed ikke transparent bytestrømdataoverføring. In US-4574284 it is shown that the bus interface units are switchable between a separate command mode where the information from the user device is not transmitted to the bus and a connected mode where the information from the user device is sent to the bus. With the bus, it appears that two separate and non-simultaneous modes of communication are accomplished; one to transfer byte stream data, and another to transfer control function commands. However, it does not include the advantage of simultaneous communication of management functional administrative information together with byte stream data, without terminating the session. Furthermore, US-4574284 uses reserved or special codes (e.g. carriage return) in byte stream data communicated to achieve certain control functions, and thus does not achieve transparent byte stream data transfer.

US-4423414 er relevant på et lokalt nettverksnivå når det gjelder en "lokal kommando". US-4423414 is relevant at a local network level in terms of a "local command".

Kort sammendrag av oppfinnelsen. Brief summary of the invention.

Den foreliggende oppfinnelsen er konstruert som inn/ut-nettverk (IONET) -kanal for et datamaskinsystem. Generelt er IONET beregnet for høyeffektiv karakter- og The present invention is designed as an input/output network (IONET) channel for a computer system. In general, IONET is intended for highly efficient character and

annen kommunikasjon mellom flere lav- til middelshastighets enheter av samme eller forskjellig type, koplet direkte til inn/ut-subsystemet hos en datamaskin, ved hjelp av utvelgelse over et kommunikasjonsmedium av type lokalt nettverk, forholdsvis rimelige adaptre med mikrodatamaskiner distribuert over mediet og koplet til hver inn/ut-innretning eller et mindre antall inn/ut-innretninger, og en kommunikasjon- og styringsprotokoll som effektivt styrer mikrodatamaskinene og for å styre datakommunikasjonen mellom inn/ut-innretningene og datamaskinsystemets hukommelse. Kommunikasjonsmediet av type lokalt nettverk, protokollen og det distribuerte lav-kostsadaptret danner sammen en forbedret inn/ut-kanal-kontroller, men uten de begrensningeer som tidligere er anført. other communication between several low- to medium-speed units of the same or different types, connected directly to the I/O subsystem of a computer, by means of selection over a communication medium of the local area network type, relatively inexpensive adapters with microcomputers distributed over the medium and connected to each I/O device or a smaller number of I/O devices, and a communication and control protocol to effectively control the microcomputers and to manage the data communication between the I/O devices and the computer system's memory. The local area network type communication medium, the protocol and the distributed low-cost adapter together form an improved input/output channel controller, but without the limitations previously stated.

Inn/ut-innretningene kan tilkoples i betydelig lengre avstander fra sentralenheten, fordi utvelgelsesmekanismen tillater slike tilkoplinger uten å redusere dataover-føringsevnen, og fordi lokalt nettverk gir pålitelig kommunikasjon over lengre avstander enn andre løsninger som nytter lavkosts kabling. Kommunikasjon- og styringsprotokollen er forholdsvis enkel, krever ikke betydlig merarbeid, og gir effektiv dataoverføring. De distribuerte adaptrene er forholdsvis enkle å implementere og responderer direkte og effektivt til protokollens kommandoer om dataoverføringer. Brukeren pådrar seg forholdsvis lave kostnader, faste pr. tilkopling, ved hver ny tilkopling av inn/ut-innretninger til systemet, og unngår dermed den høye kostnaden forbundet med dyre enkelt-adaptre for delingslogikk samt restrik-sjonene for fysisk plassering ved tilkopling av inn/ut-innretningen til disse adaptrene. Inn/ut-innretningene kan lokaliseres på vidt forskjellige steder. Dataoverføringen krever ikke tidsdeling av den langt raskere sentralenheten, på tross av at kommunikasjonen foregår med inn/ut-innretninger av betydelig lavere hastighet. Brukere av hver inn/ut-innretning har tilgang til alle systemets ressurser uten å plassere et komplett datamaskinsystem ved hver inn/ut-innretning eller terminal. The I/O devices can be connected at significantly longer distances from the central unit, because the selection mechanism allows such connections without reducing the data transfer capability, and because local area networks provide reliable communication over longer distances than other solutions that use low-cost cabling. The communication and control protocol is relatively simple, does not require significant additional work, and provides efficient data transfer. The distributed adapters are relatively easy to implement and respond directly and efficiently to the protocol's commands for data transfers. The user incurs relatively low costs, fixed per connection, with each new connection of I/O devices to the system, thus avoiding the high cost associated with expensive single adapters for sharing logic as well as the restrictions on physical location when connecting the I/O device to these adapters. The input/output devices can be located in widely different places. The data transfer does not require time sharing by the much faster central unit, despite the fact that the communication takes place with input/output devices of significantly lower speed. Users of each I/O device have access to all of the system's resources without placing a complete computer system at each I/O device or terminal.

Foreliggende oppfinnelses protokoll gir en betydelig bevaring av nettverkets båndbredde, fordi den innlemmer flytkontroll på transportnivå. Datapakker vil ikke bli sendt før det er klart at pakkene kan bli mottatt. Protokollen er generelt immun mot tap eller duplisering av enhver pakke til enhver tid. Hvis en pakke er duplisert eller tapt, vil systemet av natur bli gjenopprettet på transportnivå. Databeskjeder kan bli videresendt mellom separate nettverks-segmenter. Oppfinnelsen kan også tillate en privat tilkoplet logisk enhet selv i et multiprosessorsystem, noe som er svært nyttig av sikkerhetsmessige årsaker, og avgrenser tilgangen til informasjonen. En betydelig del av multiplekserfunksjonen og nettverkskontrollenfunksjonen er flyttet inn i protokollen. The present invention's protocol provides a significant conservation of the network's bandwidth, because it incorporates flow control at the transport level. Data packets will not be sent until it is clear that the packets can be received. The protocol is generally immune to the loss or duplication of any packet at any time. If a packet is duplicated or lost, the system will naturally recover at the transport level. Data messages can be forwarded between separate network segments. The invention can also allow a privately connected logical unit even in a multiprocessor system, which is very useful for security reasons, and limits access to the information. A significant part of the multiplexer function and network control function has been moved into the protocol.

Den foreliggende oppfinnelsen kan bedre forstås på bakgrunn av den følgende detaljerte beskrivelsen av en foretrukket implementering av oppfinnelsen, som også er illustrert i de medfølgende tegninger som er summarisk beskrevet nedenfor. Det egentlige formålet med oppfinnelsen er definert i de vedlagte krav, og beskrivelsen av oppfinnelsen overfor skal bare betraktes som et generelt sammendrag av spesielle trekk. The present invention can be better understood on the basis of the following detailed description of a preferred implementation of the invention, which is also illustrated in the accompanying drawings which are summarized below. The actual purpose of the invention is defined in the attached claims, and the description of the invention above should only be regarded as a general summary of special features.

Kort beskrivelse av tegningene. Brief description of the drawings.

Figur 1 er et generelt blokkdiagram av et typisk datamaskinsystem av eldre teknologi, der en masselager inn/ut-kanal, en karakter inn/ut-kanal og et lokalt nettverk er tilkoplet. Figur 2 er et generelt blokkdiagram av et datamaskinsystem som bruker IONET-kanalen i foreliggende oppfinnelse. Figur 3 er et blokkdiagram som illustrerer sammenkoplingen av flere inn/ut-kanaler ved hjelp av flere IONET-kanaler til et enkelt datamaskinsystem. Figur 4 er et blokkdiagram som illustrerer sammenkoplingen av flere datamaskinsystemer til flere inn/ut-innretninger ved hjelp av en IONET-kanal. Figur 5 er et blokkdiagram som illustrerer sammenkoplingen av flere datamaskinsystemer innbyrdes koplet til et lokalt nettverk, og hvert datamaskinsystem har en IONET-kanal som kopler flere inn/ut-innretninger til hvert datamaskinsystem. Figur 6 er et blokkdiagram over et distribuert adapter for IONET-kanalen som forbinder en inn/ut-innretning til IONET-kanalens kabel. Figur 8 er et blokkdiagram av et eksempel på distribuert adapter som nytter RS 232 serielt grensesnitt. Figur 9 er en illustrasjon av den sju-lags Open System Interface (OSI) arkitekturen som er International Standards Organization sin referansemodell for kommunikasjon. Figur 10 er en illustrasjon av en IONET-pakke med informasjon som sendes over IONET-kanalen, vist i form av sekvensielle bytes (bitgrupper). Figur 11 er en illustrasjon av den IONET-pakken som vist i figur 10, brutt ned i de hierarkiske nivå som tilsvarer fysisk-, lenke-, nett-, transport- og sesjonsnivå i OSI-modellen. Figur 12 er et diagram som illustrerer i større detalj det bit-vise utlegget og andre detaljer i noen av de individuelle bytes hos IONET-pakkene vist i figur 10. Figur 13 er en illustrasjon av et generelt tilstandsendirngsdiagram for en sendertilstandmaskin for det distribuerte adaptret for foreliggende oppfinnelse. Figur 14 er en illustrasjon av et generelt tilstandsendringsdiagram for en mottakertilstandmaskin for det distribuerte adaptret for foreliggende oppfinnelse. Figur 15 er et diagram som viser funksjonen av sendertilstandsmaskinen i normal modus. Figur 16 er et diagram som viser funksjonen av sendertilstandsmaskinen i øyeblikkelig modus. Figur 17 er et diagram som viser funksjonen av mottakertilstandsmaskinen i normal modus. Figur 18 er et diagram som viser funksjonen av mottakertilstandsmaskinen i øyeblikkelig modus. Figure 1 is a general block diagram of a typical legacy computer system in which a mass storage I/O channel, a character I/O channel and a local area network are connected. Figure 2 is a general block diagram of a computer system using the IONET channel of the present invention. Figure 3 is a block diagram illustrating the interconnection of multiple I/O channels using multiple IONET channels into a single computer system. Figure 4 is a block diagram illustrating the interconnection of multiple computer systems to multiple I/O devices using an IONET channel. Figure 5 is a block diagram illustrating the interconnection of multiple computer systems interconnected to a local area network, each computer system having an IONET channel connecting multiple I/O devices to each computer system. Figure 6 is a block diagram of a distributed adapter for the IONET channel connecting an I/O device to the IONET channel cable. Figure 8 is a block diagram of an example distributed adapter utilizing the RS 232 serial interface. Figure 9 is an illustration of the seven-layer Open System Interface (OSI) architecture which is the International Standards Organization's reference model for communication. Figure 10 is an illustration of an IONET packet of information sent over the IONET channel, shown in the form of sequential bytes (bit groups). Figure 11 is an illustration of the IONET packet as shown in Figure 10, broken down into the hierarchical levels corresponding to physical, link, network, transport and session levels in the OSI model. Figure 12 is a diagram illustrating in greater detail the bitwise layout and other details of some of the individual bytes of the IONET packets shown in Figure 10. Figure 13 is an illustration of a general state change diagram for a transmitter state machine for the distributed adapter for present invention. Figure 14 is an illustration of a general state change diagram for a receiver state machine for the distributed adapter of the present invention. Figure 15 is a diagram showing the operation of the transmitter state machine in normal mode. Figure 16 is a diagram showing the operation of the transmitter state machine in instantaneous mode. Figure 17 is a diagram showing the operation of the receiver state machine in normal mode. Figure 18 is a diagram showing the operation of the receiver state machine in instantaneous mode.

Detaljert beskrivelse. Detailed description.

Den foreliggende oppfinnelsen kan bedre forstås med referanse til et datamaskin-system 100 av eldre teknologi, som er illustrert i figur 1. Datamaskinsystemet 100 omfatter den typiske prosessoren 102, som er tilkoplet og kan kommunisere med den typiske primærhukommelsen 104. Et typisk inn/ut-subsystem 106 er tilgjengelig for kommunikasjon til og fra primærhukommelsen 104. Prosessoren 102, primærhukommelsen 104 og inn/ut-subsystemet 106 er alle i stand til å kommunisere med hverandre med den høye interne kapasitet eller båndbredde som kjennetegner et moderne datamaskinsystem. Inn/ut-subsystemet 106 vil ha en eller flere tilkoplingsmuligheter for eksterne periferenheter. Disse eksterne tilkoplinger er typisk kalt inn/ut-kanaler. I de fleste moderne datamaskiner er to typer inn/ut-kanaler tilgjengelige. En type inn/ut-kanel er masselager inn/ut-kanal 108. Masselager inn/ut-kanalen 108 er karakterisert ved å tilby de overføringene med høy båndbredde som er typisk for lagringsmediene platelager 110 og båndstasjon 112. En masselager inn/ut-kanel 108 er typisk begrenset til et par meter i lengde. En masselager kanal 108 er i stand til å foreta dataoverføringer til og fra bare en inn/ut-innretning i gangen, selv om noen masselager kanaler er i stand til å takle overlappende operasjoner der forskjellige enheter aksesserer data samtidig, men bare én fysisk overfører data til enhver tid. Generelt er ikke en masselager-kanal optimalisert for å ta seg av lavhastighets eller mindre sammenhengende dataoverføringer mellom systemets hukommelse og inn/ut-peirferenheter på grunn av bl.a. forholdsvis høye kablingskostnader, forholdsvis innviklete grensesnittskretser, restriksjoner i fysiske avstander, samt optimal-iseringen av masselager-kanalen 108 for overføring av relativt stor blokker av data ved hver overføring. The present invention can be better understood with reference to a computer system 100 of older technology, which is illustrated in Figure 1. The computer system 100 comprises the typical processor 102, which is connected to and can communicate with the typical primary memory 104. A typical I/O subsystem 106 is available for communication to and from primary memory 104. The processor 102, primary memory 104, and I/O subsystem 106 are all capable of communicating with each other with the high internal capacity or bandwidth that characterizes a modern computer system. The input/output subsystem 106 will have one or more connection options for external peripheral devices. These external connections are typically called in/out channels. In most modern computers, two types of input/output channels are available. One type of I/O channel is the mass storage I/O channel 108. The mass storage I/O channel 108 is characterized by providing the high bandwidth transfers that are typical of the storage media disk storage 110 and tape drive 112. A mass storage I/O channel 108 cinnamon 108 is typically limited to a couple of meters in length. A mass storage channel 108 is capable of making data transfers to and from only one I/O device at a time, although some mass storage channels are capable of handling overlapping operations where different devices access data simultaneously but only one physically transfers data always. In general, a mass storage channel is not optimized to handle low-speed or less coherent data transfers between the system's memory and I/O peripherals due to, among other things, relatively high cabling costs, relatively complicated interface circuits, restrictions in physical distances, as well as the optimization of the mass storage channel 108 for the transfer of relatively large blocks of data at each transfer.

For å gi mulighet til et forholdsvis stort antall individuelle overføringer av forholdsvis lite omfang av data, har de flests datamaskinsystemer innebygd en karakter inn/ut-kanal 114. Uttrykket "karakter" beskriver den mest vanlige bruken, å over-føre data enheter som representerer alfanumeriske- og spesialkarakterer til og fra eksterne periferenheter. Uttrykket "karakter" innebærer likevel ikke den restriksjon at bare karakterer kan overføres. Grafiske data, vilkårlige binære data og andre informasjonskodinger kan overføres over karakter inn/ut-kanalen 114. Karakter inn/ut-kanalen 114 er kjennetegnet ved at parallell eller seriell databit overføring foregår ved hastigheter som generelt er lavere enn den hos masselager-kanalen 108, men med en hastighet som er større enn noen av de individuelle periferenhetene som er tilkoplet til karakter inn/ut kanalen 114. Karakter inn/ut-kanalen 114 er optimalisert for korte overføringer til et forholdsvis stort antall periferenheter heller enn lange overføringer til et forholdsvis lite antall enheter. To allow for a relatively large number of individual transfers of a relatively small amount of data, most computer systems have a built-in character input/output channel 114. The term "character" describes the most common usage, to transfer data units representing alphanumeric and special characters to and from external peripherals. However, the term "grade" does not imply the restriction that only grades can be transferred. Graphical data, arbitrary binary data and other information encodings can be transmitted over the character input/output channel 114. The character input/output channel 114 is characterized in that parallel or serial data bit transmission takes place at speeds that are generally lower than that of the mass storage channel 108 , but at a rate greater than any of the individual peripherals connected to the character in/out channel 114. The character in/out channel 114 is optimized for short transfers to a relatively large number of peripherals rather than long transfers to a relatively small number of units.

I små til middels datamaskinsystemer, er den mest vanlige måten å kople til periferenheter på, å nytte en eller flere multiport grensesnitt, eller adapter 116 koplet til kanalen 114. Typisk vil adapteret 116 være en del av hele datamaskinsystem 100. Et antall lavhastighets, parallell eller seriell kommunikasjonsgrensesnitt 118 går ut fra datamaskinsystem 100 og er elektrisk koplet til, og kommuniserer med periferenheter som f.eks. terminal 120, printer 122 og modem 124. Grensesnittet 118 er typisk lavhastighets kommunikasjonskabler som kan være av begrenset lengde hvis ikke modem er brukt, er begrenset i hastighet normalt til maksimalt noen titusen kilobit pr. sekund, og begrenser systemets kapasitet, fordi hver enkelt av kablene 118 tar betydelig plass på bakpanelet av datamaskinen. Ofte er antall eksterne kabler 118 som et datamaskinsystem kan tilby, mer begrenset av plassen på bakpanelet heller enn den egentlige tilgjengelige båndbredden hos datamaskinsystemet. In small to medium computer systems, the most common way to connect peripherals is to use one or more multiport interfaces, or adapter 116 coupled to channel 114. Typically, adapter 116 will be part of the entire computer system 100. A number of low-speed, parallel or serial communication interface 118 emanates from computer system 100 and is electrically connected to, and communicates with peripheral devices such as terminal 120, printer 122 and modem 124. The interface 118 is typically low-speed communication cables which can be of limited length if no modem is used, is limited in speed normally to a maximum of a few tens of kilobits per second. second, and limits the system's capacity, because each of the cables 118 takes up considerable space on the back panel of the computer. Often, the number of external cables 118 that a computer system can provide is more limited by back panel space than the actual available bandwidth of the computer system.

Typisk er det også vanlig å kople flerports adapteret direkte til inn/ut-karakterkanalen 114, i eller i umiddelbar nærhet av datamaskinens kasse. Slik direkte tilkopling er imidlertid begrenset til en forholdsvis kort avstand, derfor må flerports adapteret 116 plasseres i en avstand som ikke er vesentlig langt unna selve datamaskinen. Typically, it is also common to connect the multiport adapter directly to the input/output character channel 114, in or in the immediate vicinity of the computer case. However, such direct connection is limited to a relatively short distance, therefore the multiport adapter 116 must be placed at a distance that is not significantly far from the computer itself.

I de fleste større datamaskiner inkluderer flerports adapteret 116 en egen prosessor, ofte benevnt frontprosessor, som kontrollerer kommunikasjonen og multi-pleksingen mellom de forskjellige periferenhetene og datamaskinsystemet 100. Funksjonaliteten til adapteret 116 tenderer til å være temmelig kompleks, og krever derfor en forholdsvis kompleks og kostbar prosessor for seg selv for å forhindre at prosesseringsbehovet for å kontrollere de lavhastighets inn/ut enheter fra å belaste kontrollprosessoren 102 for hardt. Vidre tenderer kommunikasjonen og protokollen mellom inn/ut-subsystemet 106 og flerports adapteret 116 å bli kompleks og kreve betydelig intern kommunikasjonsadministrasjon til og fra system hukommelsen 104, for å gi multipleksing mellom periferenhetene. In most larger computers, the multiport adapter 116 includes a separate processor, often referred to as a front-end processor, which controls the communication and multiplexing between the various peripheral devices and the computer system 100. The functionality of the adapter 116 tends to be quite complex, and therefore requires a relatively complex and expensive processor by itself to prevent the processing needs to control the low speed I/O devices from overtaxing the control processor 102. Furthermore, the communication and protocol between the I/O subsystem 106 and the multiport adapter 116 tends to be complex and require significant internal communication management to and from the system memory 104, to provide multiplexing between the peripherals.

Kostnaden ved delt logikk og den forholdsvis komplekse maskinvaren som kreves i hvert av de flerports adaptrene 116, har krevd at de har mulighet til å kople til mange periferenheter, typisk minst 4, vanligvis 8 eller 16, og noen ganger 32 periferenheter. En har dermed oppnådd kostnadseffektivitet, forutsatt at det virkelig er et stort antall periferenheter som skal koples til hvert adapter 116. Hvis alle grensesnitt eller kabler 118 være opptatt, er det nødvendig for brukeren å kople ennå et flerports adapter 116 til datamaskinsystemet for å gi plass til neste periferenhet. Den inkrementelle kostnaden for å tilkople en periferenhet i tillegg kan bli ekstremt høy eller prohibitiv, og kan godt overstige kostnaden ved selve periferenheten. Videre, på grunn av avstandsbegrensningene hos karakter inn/ut-kanalen 114 og begrensningene i lengde hos grensesnittkabel 118, må alle periferenhetene fysisk lokaliseres relativt nært opp til flerports adapteret 116. The cost of shared logic and the relatively complex hardware required in each of the multiport adapters 116 has required that they have the ability to connect to many peripherals, typically at least 4, usually 8 or 16, and sometimes 32 peripherals. Cost efficiency has thus been achieved, provided that there is indeed a large number of peripherals to be connected to each adapter 116. If all interfaces or cables 118 are occupied, it is necessary for the user to connect yet another multi-port adapter 116 to the computer system to make room to the next peripheral. The incremental cost of adding an additional peripheral can be extremely high or prohibitive, and may well exceed the cost of the peripheral itself. Furthermore, due to the distance limitations of the character in/out channel 114 and the length limitations of the interface cable 118, all peripherals must be physically located relatively close to the multiport adapter 116.

Innretninger som stort sett har de samme egenskaper som flerports adapteret 116 beskrevet overfor, er noen ganger benevnt inn/ut-kanal kontrollere. Devices that have largely the same characteristics as the multiport adapter 116 described above are sometimes referred to as input/output channel controllers.

I mange tilfeller er et lokalt nettverk ("Local Area Network", "LAN"), benevnt 126, også koplet til datamaskinsystemet 100. Typisk er et "LAN"-adapter 125 brukt mellom "LAN"-mediet 128 og inn/ut-subsystemet 106. Dette "LAN"-adapteret er det mest vanlig å kople til karakter inn/ut-kanalen 114. Et "LAN" inkluderer typisk et nettverkskommunikasjonsmedium eller kabel 128 som mange datamaskiner er koplet til i den hensikt å dele informasjon. Hver av datamaskinene er koplet til "LAN"-kabelen 128 ved et tappepunkt 130. Hvert system som er tilkoplet "LAN"-kabelen 128 ved et tappepunkt 130 er benevnt en node. Forskjellige varianter av lokale nettverk fins, så som tegnringer, tegnbusser, konfliktsdelte busser, osv. Den mest signifikante forskjellen mellom de ymse konvensjonelle lokale nettverk er basert på hvor sofistikert programvaren er, og derfor kan tilby forskjellige grader av ressursdeling og funksjonalitet. In many cases, a local area network ("LAN"), designated 126, is also connected to the computer system 100. Typically, a "LAN" adapter 125 is used between the "LAN" media 128 and the input/output subsystem 106. This "LAN" adapter is most commonly connected to the character input/output channel 114. A "LAN" typically includes a network communication medium or cable 128 to which many computers are connected for the purpose of sharing information. Each of the computers is connected to the "LAN" cable 128 at a tap point 130. Each system connected to the "LAN" cable 128 at a tap point 130 is called a node. Different varieties of local area networks exist, such as character rings, character buses, conflict shared buses, etc. The most significant difference between the various conventional local area networks is based on how sophisticated the software is, and therefore can offer different degrees of resource sharing and functionality.

Nettverkskabelen 128 kan strekkes relativt lange avstander fra verts- eller hoved-datamaskinen 100 til de øvrige nodene. Noen av disse nodene er andre generelle datamaskinsystemer 100. Noen noder i det lokale nettverk kan være spesial enheter kjent som frontprosessorer 132. Frontprosessorer er noen ganger kalt klasekont-rollere. Frontprosessorene 132 gir ikke generelle databehandlingsmuligheter, men fungerer som et transparent grensesnittselement som tillater tilkopling av terminaler 134 eller andre inn/ut-tilkoplinger som ikke er datamaskiner. Selv om klasekontrollerne er koplet til inn/ut-subsystemet 106 over nettverket 126 gjennom et "LAN"-adapter 125, vil ulempene diskutert i sammenheng med flerports adapteret 116, som kommer av den komplekse prosesseringen, tungvindt administrasjon, og delt logikk for multipleksing, også gjelde for hver av de omtalte klasekontrollerne. Ganske visst er er kostnadseffektiviteten hos hver klasekontroller 132 avhengig av å tilkople et forholdsvis stort antall inn/ut-innretninger 134 over relativt korte avstander. Den inkrementelle kostnaden ved å kople flere terminaler til det lokale nettverket er vanligvis forstørret, da ikke alle terminaler kan lokaliseres fysisk nær klasekontrolleren. Som en konsekvens av dette, må det tilkoples flere klase-kontrollere eller andre frontprosessorer enn absolutt nødvendig bare for å tilpasse den fysiske plasseringen av inn/ut-innretningene. Dette forhold bidrar betydelig til kostnaden ved tilkopling av flere inn/ut-innretninger. The network cable 128 can be stretched relatively long distances from the host or main computer 100 to the other nodes. Some of these nodes are other general computer systems 100. Some nodes in the local area network may be special devices known as front-end processors 132. Front-end processors are sometimes called cluster controllers. The front processors 132 do not provide general data processing capabilities, but act as a transparent interface element that allows connection of terminals 134 or other non-computer input/output connections. Although the cluster controllers are connected to the I/O subsystem 106 over the network 126 through a "LAN" adapter 125, the disadvantages discussed in the context of the multiport adapter 116, arising from the complex processing, cumbersome administration, and shared logic for multiplexing, also apply to each of the cluster controllers mentioned. It is quite certain that the cost effectiveness of each cluster controller 132 depends on connecting a relatively large number of input/output devices 134 over relatively short distances. The incremental cost of connecting more terminals to the local area network is usually magnified, as not all terminals can be located physically close to the cluster controller. As a consequence, more cluster controllers or other front-end processors must be connected than absolutely necessary just to accommodate the physical location of the I/O devices. This ratio contributes significantly to the cost of connecting several input/output devices.

I motsetning til et datamaskinsystem av eldre teknologi, er den foreliggende oppfinnelsen presentert generelt i figur 2. Et inn/ut nettverk (IONET) kanal 140 er tilgjengelig for å kople datamaskinsystemet 100 til mange inn/ut-innretninger, f.eks. terminaler 142, skrivere 144, personlige datamaskiner 146, forskjellig datainn-samlings-utstyr 148, modem 150, og statiske multipleksere 152. Modemet 150 kommuniserer over telefonlinje 154 med f.eks. et fjernt datamaskinsystem 156. Den statiske multiplekseren 152 kommuniserer over telefonlinjen 158 til en tilsvarende fjern enhet 160. Mange fjerne terminaler 162 er koplet til den fjerne statiske multiplekseren 160. De statiske multiplekserne 152 og 160 reduserer telefonkostnaden ved å kombinere de aggregerte inn/ut-transaksj onene som går til og fra de mange sam-lokaliserte, fjerne terminalene 162 på en felles telefonlinje 158. Det som her er benevnt med "inn/ut-innretning" er en periferenhet som ikke er i stand til å operere på egen hånd og krever en eller annen form for grensesnitt for å koples til en datamaskin, og skal skilles fra "innretning" som har sin egen prosessor som beskrevet med større detaljering nedenfor. En inn/ut-innretning foretar overføring av inn/ut-informasjon. In contrast to a prior art computer system, the present invention is presented generally in Figure 2. An input/output network (IONET) channel 140 is available to connect the computer system 100 to many input/output devices, e.g. terminals 142, printers 144, personal computers 146, various data acquisition equipment 148, modem 150, and static multiplexers 152. The modem 150 communicates over telephone line 154 with e.g. a remote computer system 156. The static multiplexer 152 communicates over the telephone line 158 to a corresponding remote unit 160. Many remote terminals 162 are connected to the remote static multiplexer 160. The static multiplexers 152 and 160 reduce telephone cost by combining the aggregated I/O the transactions going to and from the many co-located, remote terminals 162 on a common telephone line 158. What is referred to herein as an "in/out device" is a peripheral device that is not capable of operating on its own and requires some form of interface to connect to a computer, and is to be distinguished from "device" which has its own processor as described in greater detail below. An input/output device transfers input/output information.

IONET-kanalen 140 kombinerer spesielle egenskaper hos et lokalt nettverk av tegnsendingsprinsippet, og karakter inn/ut-kanal for å oppnå betydelige forbedringer ved tilkopling av et forholdsvis stort antall lav til middels hastighets inn/ut-innretninger til datamaskinsystemet samtidig som en unngår mange av de betydelige begrensningene som fins i dagens systemer. Selv om IONET-kanalen 140 primært er en karakterkanal, kan forskjellige datastrømmer dirigeres over denne kanalen, og bruken er ikke begrenset til bare karakteroverføringer. The IONET channel 140 combines special characteristics of a local area network of the character transmission principle, and character I/O channel to achieve significant improvements in connecting a relatively large number of low to medium speed I/O devices to the computer system while avoiding many of the the significant limitations that exist in today's systems. Although the IONET channel 140 is primarily a character channel, various data streams can be routed over this channel and its use is not limited to character transmissions only.

IONET-kanalen 140 omfatter en kommunikasjonskabel 170, flere distribuerte adaptere 172 koplet til kabelen 170, og midler for å kople til datamaskinsystemet 100 er ved node 174. Uttrykket "node" refererer seg til den elektriske tilkoplingen til kabelen, og må ikke forveksles med uttrykket "node" som generelt refererer seg til alt elektrisk utstyr som koples til en node, som er beskrevet mer i detalj nedenfor. IONET-kanalen 140 kan bli midlet for grensesnitt som kopler datamaskinsystemet 100 til de forskjellige inn/ut-innretningene. En inn/ut-innretning er ment å omfatte alle varianter av forskjellige typer av ikke-prosessor, ikke-masselager periferenheter som kan koples til IONET-kanalen, så som terminaler 142 skrivere 144, personlige datamaskiner 146, datainnsamligsutstyr 148, modem 150, statiske multipleksere 152 og dess like. The IONET channel 140 comprises a communication cable 170, multiple distributed adapters 172 coupled to the cable 170, and means for connecting to the computer system 100 is at node 174. The term "node" refers to the electrical connection to the cable, and is not to be confused with the term "node" which generally refers to any electrical equipment connected to a node, which is described in more detail below. The IONET channel 140 may become the means of interfacing connecting the computer system 100 to the various input/output devices. An I/O device is intended to include any variety of different types of non-processor, non-storage peripherals that can be connected to the IONET channel, such as terminals 142, printers 144, personal computers 146, data acquisition equipment 148, modems 150, static multiplexer 152 and its like.

Datamaskinsystemet 100 er forenklet, da det ikke trenger separat lokalt nettverk, flerport adapter, og forskjellige andre muligheter i dets egen karakter inn/ut-kanal grensesnitt reportoar. Videre krever ikke datamaskinsystemet den funksjonaliteten som en nettverksnode har i "LAN"-protokollen for å kommunisere med periferenheter, og på grunn av dette forhold behøver ikke datamaskinsystemet å støtte en protokoll for lokalt nettverk, hvis ikke dette kreves for å kommunisere med andre datamaskinsystemer. I kontrast til dette er den protokollen som skal brukes i samband med IONET kanal 140 primært ment som grensesnitt mot inn/ut-innretninger, og ikke for ressursdeling og grensesnitt mot fjerne operativsystms-funksjoner. Dette medfører at IONET-protokollen er forholdsvis enkel å implementere ved hver fjerne inn/ut-innretning ved hjelp av de distribuerte adaptrene 172. The computer system 100 is simplified, as it does not need a separate local area network, multiport adapter, and various other capabilities in its own character input/output channel interface reportor. Furthermore, the computer system does not require the functionality of a network node in the "LAN" protocol to communicate with peripheral devices, and because of this, the computer system does not need to support a local area network protocol, if this is not required to communicate with other computer systems. In contrast to this, the protocol to be used in connection with IONET channel 140 is primarily intended as an interface to input/output devices, and not for resource sharing and interfaces to remote operating system functions. This means that the IONET protocol is relatively easy to implement at each remote input/output device using the distributed adapters 172.

De distribuerte adaptrene 172 trenger ikke å bli fysisk lokaliseret i særlig nærhet til dtaamaskinsystemet 100, men kan flyttes en betydelig avstand ifra. For eksempel i den foretrukne form av foreliggende oppfinnelse, kan inn/ut-innretningene lokaliseres så mye som over 6 km fra datamaskin syatemet 100. Data som går til og fra inn/ut-innretningene er multiplekset på en enkel seriell kabel 170. Det distribuerte adapteret 172 er plassert i, eller i nærheten av inn/ut-innretningene som de er koplet til. Eksempel på distribuert adapter som er plassert innen inn/ut-innterningene er har vi i den personlige datamaskinen 146, hvor det distribuerte adapteret 172 er illustrert som innsluttet i den samme kassen som den personlige datamaskin 146. The distributed adapters 172 do not need to be physically located in particular proximity to the computer system 100, but can be moved a considerable distance away. For example, in the preferred form of the present invention, the I/O devices may be located as much as over 6 km from the computer system 100. Data going to and from the I/O devices is multiplexed on a single serial cable 170. The distributed the adapter 172 is located in or near the input/output devices to which they are connected. An example of a distributed adapter that is placed within the I/O enclosures is in the personal computer 146, where the distributed adapter 172 is illustrated as enclosed in the same case as the personal computer 146.

For å framskaffe et mye større datamaskinsystem som har tilkoplet et stort antall inn/ut-innretninger, kan mange IONET-kanaler 140a og 140b koples til det samme datamaskinsystemet som vist i figur 3. Figur 3 illustrerer hvordan denne framgangsmåten kan utvides til støtte for et stort antall inn/ut-innretninger uten tilsvarende å øke antall kabler som går inn og ut av datamaskinsystemet 100. Ved å tilby de lav til middelshastighets kommunikasjon hos datamaskinsystemet i form av IONET-kanaler som vist, og ved å distribuere de funksjoner som normalt forefinnes hos flerports adaptere eller frontprosessorer over til mange distribuerte adaptere, vil mengden som kreves av plass på panelet, og intern kabling i vertsdatamaskinen bli betydelig redusert. Videre er det ikke nødvendig å ha tilgang til datamaskinens kasse for å kople til periferenheter. Kommunikasjonens båndbredde er ikke redusert, da den aggregerte båndbredde er målt ved de mange millioner biter pr. sekund hos medier av type lokalt nettverk, heller enn mange tusen biter pr. sekund som er typisk for lavhastighets kommunikasjonskabler som kommer ut fra et typisk datamaskin-system. To provide a much larger computer system having a large number of I/O devices connected, many IONET channels 140a and 140b can be connected to the same computer system as shown in Figure 3. Figure 3 illustrates how this method can be extended to support a large number of I/O devices without correspondingly increasing the number of cables going in and out of the computer system 100. By providing the low to medium speed communications at the computer system in the form of IONET channels as shown, and by distributing the functions that normally exist with multi-port adapters or front-end processors to many distributed adapters, the amount of space required on the panel, and internal cabling in the host computer will be significantly reduced. Furthermore, it is not necessary to have access to the computer's case to connect to peripherals. The communication bandwidth has not been reduced, as the aggregated bandwidth is measured by the many millions of bits per second with media of the local network type, rather than many thousands of bits per per second that is typical of low-speed communication cables coming out of a typical computer system.

En annen betydlig konfigurasjonsfordel hos foreliggende oppfinnelse er illustrert i figur 4. Konvensjonelle inn/ut-kanaler, enten av masselagertype eller karakter-orientert, kan koples bare til ett datamaskinsystem for å danne kanal for å overføre data mellom datamaskinsystemet og mange periferenheter. På grunn av naturen hos foreliggende oppfinnelse er det mulig å kople mange datamaskinsystemer 100a og 100b til mange inn/ut-innretninger ved hjelp av en enkelt delt IONET-kanal 140 som illustrert i figur 4. Enhver av inn/ut-innretningene 176 kan kommunisere med enten datamaskinsystem 100a eller 100b. Det er ingen begrensning i antall slike datamaskinsystemer som kan koples til IONET-kanalen, andre enn de som muligens kan komme av den aggregerte båndbredden i kanalen, og fysisk begrensning i det antall noder IONET-kanalen 140 kan støtte. Denne fordelen er spesielt viktig, for det ikke er noe fysisk omkopling eller fysisk flerporting involvert. Dette i kontrast til den konvensjonelle bruk av en multikanals bryter på en periferenhet eller en inn/ut-kanal for å kople om mellom konvensjonelle inn/ut-kanaler, og i kontrast til sjaltepanel eller elektriske omkoplingssystemer som er tilgjengelig for å kontrollere tilkoplingen av av periferenheter eller flere kanaler. Slike konvensjonelle innretninger krever økte kostnader og kan minske påliteligheten, på grunn av den ekstra maskinvaren som kreves for å kople den bestemte periferenheten til flere inn/ut-kanaler. Kommunikasjon over IONET-kanalen er kontrollert ved å sende adressesignal, eller tegn, over kabelen, noe som senere vil bli beskrevet i større detalj. Mulighetene for sammen-kopling er dermed basert på programvare og fastvare som opererer i datamaskinsystemet og i de distribuerte adapterene, og tillater hver av inn/ut-innretningene å bli koplet inn eller ut av IONET-kanalen ved å omdirigere tegnene. Da ingen fysisk omkopling kreves, vil ikke en feil ved en av datamaskinsystemene binde enheten som er koplet til dette systemet, da tilkoplingen er logisk. Den foreliggende oppfinnelsen inkorporerer også sikkerhetsrutiner for å tillate en inn/ut-innretning å se ut til å være koplet direkte til en enkelt datamaskin, på tross av at det er mange slike system på samme kabel. Disse fasiliteter er diskutert i større detalj nedenfor. Another significant configuration advantage of the present invention is illustrated in Figure 4. Conventional I/O channels, either mass storage type or character oriented, can be connected to only one computer system to form a channel to transfer data between the computer system and many peripherals. Due to the nature of the present invention, it is possible to connect many computer systems 100a and 100b to many I/O devices using a single shared IONET channel 140 as illustrated in Figure 4. Any of the I/O devices 176 can communicate with either computer system 100a or 100b. There is no limit to the number of such computer systems that can be connected to the IONET channel, other than that which may be provided by the aggregate bandwidth of the channel, and physical limit to the number of nodes the IONET channel 140 can support. This advantage is particularly important, because there is no physical switching or physical multiporting involved. This is in contrast to the conventional use of a multi-channel switch on a peripheral device or an I/O channel to switch between conventional I/O channels, and in contrast to switchboard or electrical switching systems available to control the connection of peripherals or multiple channels. Such conventional devices require increased cost and may decrease reliability, due to the additional hardware required to connect the particular peripheral to multiple I/O channels. Communication over the IONET channel is controlled by sending address signals, or characters, over the cable, which will be described in greater detail later. The interconnection capabilities are thus based on software and firmware operating in the computer system and in the distributed adapters, allowing each of the I/O devices to be connected in or out of the IONET channel by redirecting the characters. As no physical switching is required, a failure of one of the computer systems will not bind the device connected to that system, as the connection is logical. The present invention also incorporates security routines to allow an I/O device to appear to be connected directly to a single computer, despite the fact that there are many such systems on the same cable. These facilities are discussed in greater detail below.

Den normale konfigurasjonen av datamaskiner i nettverk, som alle har IONET-kanalen, er vist i figut 5. To separate datamaskinsystamer, 100a og 100b, er koplet sammen for å dele ressurser ved hjelp av den enkle kabelen 128 i det lokale nettverket 126. Hver av datamaskinsystemene 100a og 100b har en IONET-kanal, benevt resp. 140a og 140b, til hvilken en kan kople flere inn/ut-innretninger 176. Den muligheten enhver inn/ut-innretning 176 koplet til hver enkelt IONET-kanal har for å få tilgang til ressurser hos andre datamaskinsystemer enn den den enkelte IONET-kanal er koplet til, er en funksjon av den støtte det lokale nettverk har i operativsystemet for hvert enkelt datamaskinsystem, og vil være tilgjengelig i den grad systemprogrammene gir. støtte for den funksjonaliteten. The normal configuration of networked computers, all of which have the IONET channel, is shown in Figure 5. Two separate computer systems, 100a and 100b, are connected together to share resources by the single cable 128 of the local area network 126. Each of the computer systems 100a and 100b has an IONET channel, called resp. 140a and 140b, to which one can connect several input/output devices 176. The possibility that any input/output device 176 connected to each individual IONET channel has to access resources of computer systems other than the individual IONET channel is connected to, is a function of the local area network support in the operating system of each individual computer system, and will be available to the extent that the system programs provide. support for that functionality.

En annen fordel en kan dra nytte av i foreliggende oppfinnelse, som ikke er spesielt illustrert, men som kan forstås på bakgrunn av figur 4, er muligheten av å bruke signalkabelen 170 for å oppnå funksjonaliteten til både det lokale nettverk og IONET karakter-kanalen. I et slik tilfelle vil programvare innen hver av datamaskinsystemene 100a og 100b støtte både den protokollen mellom datamaskiner hos det lokale nettverk, og IONET-protokollen. Dermed er ett enkelt kablingssystem i stand til å ta vare på den kombinerte trafikken av ressursdelingsaktiviteter hos det lokale nettverket, og de perifere inn/ut-aktiviteten hos IONET-kanalen. Et slikt arrangement vil utnytte mer båndbredde til overføringer innen samme antall tilkoplete inn/ut-innretninger, og bør nyttes når kabelens aggregerte båndbredde er tilstrekkelig til å håndtere den kombinerte belastningen. Når en enkelt kabel er delt, vil dette gi en meget økonomisk måte å kople sammen på. Et slikt arrangement krever til og med mindre kabling ut fra datamaskinen enn i figur 5, der det lokale nettverk og IONET-kanalen er separert. Another advantage that can be taken advantage of in the present invention, which is not particularly illustrated, but which can be understood on the basis of Figure 4, is the possibility of using the signal cable 170 to achieve the functionality of both the local network and the IONET character channel. In such a case, software within each of the computer systems 100a and 100b will support both that protocol between computers of the local area network, and the IONET protocol. Thus, a single cabling system is able to handle the combined traffic of resource sharing activities of the local area network, and the peripheral I/O activity of the IONET channel. Such an arrangement will utilize more bandwidth for transmissions within the same number of connected input/output devices, and should be used when the cable's aggregate bandwidth is sufficient to handle the combined load. When a single cable is split, this will provide a very economical way of connecting. Such an arrangement even requires less cabling from the computer than in figure 5, where the local network and the IONET channel are separated.

Den foretrukne form denne oppfinnelsen har blitt implementert i, er i samband med spesielle elektronik-komponenter og protokoll brukt i et lokalt nettverk som er kjent som ARCNET (varemerke), som er et produkt fra patentsøkeren. Det er imidlertid ikke noe restriksjon at den foreliggende oppfinnelse må implementeres med teknologi fra ARCNET lokalt nettverk. Den foreliggende oppfinnelsen kan implementeres med enhver form for lokalt nettverk av tegnsendingstypen. Likevel er oppfinnelsen beskrevet i samband med den foretrukne form som utnytter ARCNET teknologi for lokalt nettverk. The preferred form in which this invention has been implemented is in connection with special electronic components and protocol used in a local area network known as ARCNET (trademark), which is a product of the patent applicant. However, there is no restriction that the present invention must be implemented with technology from the ARCNET local network. The present invention can be implemented with any type of local network of the signaling type. Nevertheless, the invention is described in connection with the preferred form that utilizes ARCNET technology for local area networks.

Maskinvare og programvare komponentene hos ARCNET er kommersielt tilgjengelige og godt kjent. Herav har patentsøkeren publisert grundig informasjon angående sitt ARCNET lokalt nettverk, hvor bl.a. ARCNET Designert Handbook, copyright 1983, er tilgjengelig fra patentsøkeren. Videre har Standards Microsystems Corporation, 35 Marcus Boulevard, Hauppauge, New York 11788, markedsført to av de betydelige integrerte kretser som er utnuttet i ARCNET lokalt nettverk og har i tillegg publisert betydelig funksjonsbeskrivelser, som gjør de som behersker disse områder i stand til å bygge et ARCNET lokalt nettverk. Slike beskrivelser kan finnes i Standard Microsystems Corporation data catalouge, publisert i 1985, sidene 193 til 213. På bakgrunn av den relativt velkjente og verdsatte natur hos ARCNET lokalt nettverk, vil ARCNET egenskaper som er brukt i samband med foreliggende oppfinnelse, bli beskrevet nedenfor i forholdsvis forkortet utgave. The hardware and software components at ARCNET are commercially available and well known. Of this, the patent applicant has published detailed information regarding its ARCNET local network, where i.a. The ARCNET Designer Handbook, copyright 1983, is available from the patent applicant. Furthermore, Standards Microsystems Corporation, 35 Marcus Boulevard, Hauppauge, New York 11788, has marketed two of the significant integrated circuits utilized in the ARCNET local area network and has additionally published substantial functional descriptions, enabling those skilled in these areas to build an ARCNET local area network. Such descriptions can be found in the Standard Microsystems Corporation data catalog, published in 1985, pages 193 to 213. Given the relatively well-known and appreciated nature of the ARCNET local area network, ARCNET features used in connection with the present invention will be described below in relatively abbreviated version.

ARCNET lokalt nettverk er basert på tengsendingssystem. I et tegnsendingssystem vil enhver node i nettverket vente på å motta en unik kort sekvens av digitale biter, dvs. signal kjent som tegn, fra en foregående node. Mottak av et tegn indikerer at enheten på den noden har lov til å sende eller motta informasjon over nettverket. Nettverket er konstruert med tanke på å sikre at kun et enkelt tegn av gangen er tilstede i nettverket. Etter å ha avsendt informasjonen, sender noden tegnet videre til neste logisk påfølgende node i nettverket hvor prosedyren blir repetert. Hvis en node mottar tegnet og ikke har noe å sende, sender den tegnet videre med en gang. ARCNET lokalt nettverk er arrangert slik at bare aktive noder er tilstede i nettverket til enhver tid. På den måten er noder som ikke er aktiv eller ikke påslått, ikke logisk eller elektrisk delaktig i mottak og sending av tegnet. ARCNET nettverk er i stand til å rekonfigurere seg selv for å gi plass til noder som koples på nettverket, og å elimi-nere noder som faller ut fra nettverket ved dynamisk å justere adressene til nodene som tegnet sendes til. Slike endringer i aktivitetstilstanden hos nodene kan godt skje mens nettverket er i gang, uten å virke inn på nettverket over lenkenivået. The ARCNET local network is based on a telecast system. In a signaling system, any node in the network will wait to receive a unique short sequence of digital bits, i.e. signal known as a character, from a preceding node. Receiving a character indicates that the device at that node is allowed to send or receive information over the network. The network is designed to ensure that only a single character is present in the network at a time. After sending the information, the node passes the character on to the next logically successive node in the network where the procedure is repeated. If a node receives the token and has nothing to send, it forwards the token right away. The ARCNET local area network is arranged so that only active nodes are present in the network at any given time. In this way, nodes that are not active or not switched on are not logically or electrically involved in receiving and sending the character. The ARCNET network is able to reconfigure itself to accommodate nodes that join the network, and to eliminate nodes that drop out of the network by dynamically adjusting the addresses of the nodes to which the character is sent. Such changes in the activity state of the nodes may well occur while the network is running, without affecting the network above the link level.

Standard kommunikasjonsmedium som brukes for ARCNET lokalt nettverk er en RG-62 koaksialkabel. Kabelen er benevt 170 i figur 2. Andre kommunikasjonsmedia kan omfatte fiberoptikk, infrarødt samband over eteren, mikrobølge samband og skjermet tvunnet parkabel. The standard communication medium used for the ARCNET local area network is an RG-62 coaxial cable. The cable is designated 170 in Figure 2. Other communication media may include fiber optics, infrared connection over the ether, microwave connection and shielded twisted pair cable.

Tilkoplingsmuligheter til koaksialkabelen er forenklet ved å bruke tilkoplings-enheter kjent som trådsentre ("hubs"). Hvert trådsenter inneholder flere porter, som mediumsgrensesnitt kjent som ressurs grensesnitt moduler ("Resource Interface Modules", "RIM") kan tilkoples i den hensikt å kommunisere med hver prosessor, eller som andre kabelledd kan koples til. En "RIM" er tilstede ved hver node. Trådsentre virker som aktive eller passive repeterere mellom kabelseksjoner, og har ingen funksjon i å rute signal. Et trådsenter retransmitterer simpelthen ethvert innkommet signal til hvert av sine utgående porter som et utgående signal. Trådsentre har også blitt beskrevet i den publiserte litteraturen om ARCNET lokalt nettverk, og er også tilgjengelig for kjøp på det kommersielle markedet. Connection options to the coaxial cable are simplified by using connection devices known as hubs. Each thread center contains several ports, to which medium interfaces known as resource interface modules ("Resource Interface Modules", "RIM") can be connected for the purpose of communicating with each processor, or to which other cable links can be connected. A "RIM" is present at each node. Wire centers act as active or passive repeaters between cable sections, and have no function in routing signals. A wire center simply retransmits any incoming signal to each of its outgoing ports as an outgoing signal. Wire centers have also been described in the published ARCNET local area network literature, and are also available for purchase on the commercial market.

Den fysiske topologien hos ARCNET lokalt nettverk er som på et ubegrenset tre. Den logiske konfigurasjonen av den elektriske forbindelsen i ARCNET lokalt nettverk er som en buss der hver enkelt sendende node sender sitt signal til alle andre noder i nettverket. Kablingen i ARCNET lokalt nettverk er bidireksjonell, dvs. signal flyter alternativt i begge retninger over kabelen. I termer fra mediumtilgangs-kontroll er ARCNET lokalt nettverk en logisk ring basert på aritmetisk økende verdier for å identifisere nettverkets "RIM". Det lokale nettverket rekonfigurerer seg automatisk for å elimimere inaktive noder fra den logiske ringen og for å tillegge nylig aktive noder til den logiske ringen, slik at tegnet blir sendt fra aktiv node til aktiv node basert på "RIM" identifikasjontall. Det blir ikke kastet bort tid på å over-fører tegnet til noder som ikke er aktive. Tegnet kan overføres fra aktiv node til aktiv node uten å ta hensyn til den fysiske lokasjonen eller posisjonen til noden i nettverket. Tegnet sendes mellom alle de aktive nodene på nettverket før den returnerer til den opprinnelige node, og følger således et ring-liknende mønster. The physical topology of the ARCNET local area network is like an unbounded tree. The logical configuration of the electrical connection in the ARCNET local network is like a bus where each individual transmitting node sends its signal to all other nodes in the network. The cabling in the ARCNET local network is bidirectional, i.e. signal flows alternatively in both directions over the cable. In medium access control terms, the ARCNET local area network is a logical ring based on arithmetically increasing values to identify the network's "RIM". The local area network automatically reconfigures itself to eliminate inactive nodes from the logical ring and to add newly active nodes to the logical ring, so that the character is sent from active node to active node based on the "RIM" identification number. No time is wasted transferring the character to nodes that are not active. The token can be transmitted from active node to active node without regard to the physical location or position of the node in the network. The character is sent between all the active nodes on the network before it returns to the original node, and thus follows a ring-like pattern.

"RIM"-ene virker som de fysisk grensesnittsmidler til kommunikasjonsmediet eller kabelen 170, både i den foreliggende oppfinnelsen og i konvensjonelt ARCNET lokalt nettverk. En slik "RIM", benevnt 178 er inkludert innen ethvert distribuert adapter 172 og i hvert datamaskinsystem 100a som er hengt på sammenkoplingskabelen 170 som vist i figurene 6 og 7. Hver "RIM" 178 inkluderer en sender som sender eller kringkaster signaler på en kabel 170, mange beskjedbuffere som mottar og tar vare på beskjeder eller signal som skal sendes og som blir mottatt over kabelen 170, samt utvelgelses- og annen logikk som er nødvendig for å dele bufferene mellom prosessoren "RIM"-en er koplet til, slik som mikrodatamaskinen 180 som er vist i figur 6, eller kontroll prosessoren 102 vist i figur 7, og å utføre dens øvrige funksjoner. "RIM"-en benytter basisbånds signallering over sammenkoplingskabelen 170. "RIM" 178 er en transformator koplet til sammenkoplingskabelen 170, som kan slås av og på mens det lokale nettverket opereres, med minimal innflytelse på nettverkets operasjon og ingen innflytelse med hensyn på å minske nettverkets ytelse når "RIM"-en er slått av. Hver "RIM" har sin fysiske adresse, ofte referert til som "RIM ID". Denne adressen nyttes til å utføre tegnsendingen. The "RIMs" act as the physical interface means to the communication medium or cable 170, both in the present invention and in conventional ARCNET local area networks. One such "RIM", designated 178 is included within each distributed adapter 172 and in each computer system 100a suspended on the interconnect cable 170 as shown in Figures 6 and 7. Each "RIM" 178 includes a transmitter that transmits or broadcasts signals on a cable 170, many message buffers that receive and store messages or signals to be sent and received over the cable 170, as well as selection and other logic necessary to share the buffers between the processor the "RIM" is connected to, such as the microcomputer 180 shown in Figure 6, or the control processor 102 shown in Figure 7, and to perform its other functions. The "RIM" uses baseband signaling over the interconnect cable 170. The "RIM" 178 is a transformer coupled to the interconnect cable 170, which can be switched on and off while the local area network is operating, with minimal impact on network operation and no impact on reducing network performance when the "RIM" is turned off. Each "RIM" has its physical address, often referred to as "RIM ID". This address is used to carry out the character transmission.

I tillegg til "RIM" 178, inkluderer hvert distribuerte adapter 172 en mikrodatamaskin 180 og en grensesnittsinnretning 182, som vist i figur 6. Mikrodatamaskinen 180 har tilstrekkelig regnekapasitet til å håndtere den nødvendige datatakt og implementere IONET-kanalens kommunikasjons- og styringsprotokoll. I motsetning til tidligere teknologi sine klasekotrollere eller andre flerports adaptere, inkluder ikke mikrodatamaskinen 170 et operativsystems funksjonalitet, et lokalt nettverks funksjonalitet, eller andre andre flerbrukerfunksjoner. En betydelig besparelse i administrasjon og en økning i nettverkets båndbredde er dermed oppnådd, sammen med en betraktelig nedgang i kostnaden. In addition to the "RIM" 178, each distributed adapter 172 includes a microcomputer 180 and an interface device 182, as shown in Figure 6. The microcomputer 180 has sufficient computing capacity to handle the required data rate and implement the IONET channel communication and control protocol. Unlike prior art cluster controllers or other multi-port adapters, the microcomputer 170 does not include an operating system functionality, a local area network functionality, or any other multi-user functionality. A significant saving in administration and an increase in the network's bandwidth has thus been achieved, together with a considerable reduction in cost.

Mikrodatamaskinen 180 kan bedre beskrives som en mikrokontroller som simpelthen inneholder en enkel sentralenhet CPU, et mindre leselager ROM, og diverse inn/ut og timerfunksjoner på en enkelt integrert krets. Den foretrukne form nytter en Hitachi HD63B01YO mikrodatamaskin, som ble valgt på grunn av kostnadseffektivitet og plasshensyn. Mer informasjon om denne mikrodatamaskinen kan finnes i Hitachi Microcomputer Data Book No. U71 fra juli 1985 på sidene 358 til 405. The microcomputer 180 can be better described as a microcontroller which simply contains a simple central unit CPU, a smaller ROM, and various input/output and timer functions on a single integrated circuit. The preferred form utilizes a Hitachi HD63B01YO microcomputer, which was chosen for cost effectiveness and space considerations. More information about this microcomputer can be found in Hitachi Microcomputer Data Book No. U71 from July 1985 on pages 358 to 405.

Innretningsgrensesnittet 182 av det distribuerte adapteret 172 er spesiell for den særskilte type inn/ut-innretning 176 som er koplet til det distribuerte adapteret 172. Som et eksempel kan innretningsgrensesnittet 182 være et RS-232 serielt grensesnitt for tilkopling av terminaler og modem, et 8-biters parallelt grensesnitt for tilkopling av rimelige skrivere, et grensesnitt for tilkopling av de mest populære personlig datamaskiner, eller et 8-biters generelt "handshaking" grensesnitt for tilkopling av forskjellige typer av perifert utstyr. The device interface 182 of the distributed adapter 172 is specific to the particular type of I/O device 176 connected to the distributed adapter 172. As an example, the device interface 182 may be an RS-232 serial interface for connecting terminals and modems, an 8 -bit parallel interface for connecting inexpensive printers, an interface for connecting the most popular personal computers, or an 8-bit general "handshaking" interface for connecting various types of peripheral equipment.

Det distribuerte adapteret 172 kan bygges inn i enhver type innretning som vist i figur 2, eller kan være en separat tilkoplet kasse som er lokalisert fysisk nært opp til innretningen. I alle tilfeller er sammenkoplingskabelen 170 direkte koplet til det distribuerte adapteret 172. Figur 7 illustrerer sammenkoplingen av et datamaskin-system 100a til en kabel 170 hos IONET-kanalen. Den sentrale prosessoren 102 hos datamaskinsystemet er koplet til "RIM" 178, og "RIM"-en er koplet til kabel 170 ved dens node 174. Ved sammenlikning av figurene 6 og 7, kan det klart forstås at IONET sin funksjon hos sentralprosessoren 102 er helt lik funksjonen hos mikrodatamaskin 180, bortsett fra at den sentrale prosessoren hos datamaskinsystemet ikke direkte arbeider mot inn/ut-innretningene. Med andre ord, sentralprosessoren 102 støtter IONET-protokollen og kommuniserer direkte gjennom "RIM"-en over kabelen 170, uten at det kreves bruk av separate protokoller for å oppnå kommunikasjon til og fra kanal-kontrollere og flerports adaptere slik som er vanlig i eldre teknologi. Bare "RIM"-en er nødvendig for å arbeide mot datamaskinsystemer på kabelen, ikke det komplette distribuerte adapteret. Hvis mer enn en IONET-kanal er benyttet fra et enkelt datamaskinsystem 100 (figur 3) kreves det mer enn en "RIM" 178. Figur 8 illustrerer et representativt distribuert adapter 172a i større detalj. Adapteret 172a sender serielle data til, og mottar serielle data fra en konvensjonell inn/ut- The distributed adapter 172 can be built into any type of device as shown in Figure 2, or can be a separately connected box that is located physically close to the device. In all cases, the interconnection cable 170 is directly connected to the distributed adapter 172. Figure 7 illustrates the interconnection of a computer system 100a to a cable 170 at the IONET channel. The central processor 102 of the computer system is connected to the "RIM" 178, and the "RIM" is connected to the cable 170 at its node 174. By comparing Figures 6 and 7, it can be clearly understood that the function of the IONET in the central processor 102 is quite similar to the function of microcomputer 180, except that the central processor of the computer system does not directly work against the input/output devices. In other words, the central processor 102 supports the IONET protocol and communicates directly through the "RIM" over the cable 170, without requiring the use of separate protocols to achieve communication to and from channel controllers and multiport adapters as is common in older technology. Only the "RIM" is needed to work against computer systems on the cable, not the complete distributed adapter. If more than one IONET channel is used from a single computer system 100 (Figure 3), more than one "RIM" 178 is required. Figure 8 illustrates a representative distributed adapter 172a in greater detail. The adapter 172a sends serial data to, and receives serial data from, a conventional I/O

innretning 176a i RS-232 format. device 176a in RS-232 format.

"RIM" 170 inkluderer en hybridkrets 190 som er elektrisk koplet til sammen-koplingsmediet eller kabelen 170. Hybridkretsen 190 er et komersielt tilgjengelig produkt, og er til salgs fra Centralab, Inc., 2601 South Moorland Road, P.O. Box 2145, Milwaukee, Wisconsin 53201; eller fra Micro Technologi, Inc., W141 N5984 Kaul Avenue, Menomonee Falls, Wisconsin 53051; eller fra Zenith CRT and Com-ponents Operations, 100 Milwaukee Avenue, Glenview, Illinois 60025. Hybridkretsen inkluderer en transformatorkopling. En klokkeoscillator 192 gir klokkepulser til transceiveren 194. I tillegg til å kontrollere signal innen det distribuerte adapteret 174a, etablerer også klokkekretsen 192 synkronisering med hensyn på databiter som forefinnes på kabel 170. Transceiveren 194 er en komersielt tilgjengelig del som leveres av Standard Microsystems Corporation og har betegnelsen COM 9032. Transceiveren 194 inneholder en transmitter som sender signal til, og en mottaker som mottar signal fra hybridkretsen 190. Transceiveren 194 gir også klokkepulser til kontrolleren 196, og til mikrodatamaskinen 180 via konduktoren 198. The "RIM" 170 includes a hybrid circuit 190 that is electrically coupled to the interconnection medium or cable 170. The hybrid circuit 190 is a commercially available product and is available for sale from Centralab, Inc., 2601 South Moorland Road, P.O. Box 2145, Milwaukee, Wisconsin 53201; or from Micro Technologi, Inc., W141 N5984 Kaul Avenue, Menomonee Falls, Wisconsin 53051; or from Zenith CRT and Components Operations, 100 Milwaukee Avenue, Glenview, Illinois 60025. The hybrid circuit includes a transformer coupling. A clock oscillator 192 provides clock pulses to the transceiver 194. In addition to controlling the signal within the distributed adapter 174a, the clock circuit 192 also establishes synchronization with respect to bits of data present on cable 170. The transceiver 194 is a commercially available part supplied by Standard Microsystems Corporation and has the designation COM 9032. The transceiver 194 contains a transmitter that sends a signal to, and a receiver that receives a signal from the hybrid circuit 190. The transceiver 194 also provides clock pulses to the controller 196, and to the microcomputer 180 via the conductor 198.

Kontrolleren 196 er hjertet hos "RIM" 178. Til kontroller 196 er det koplet en rekke brytere 200 som nyttes til å etablere den unike "RIM" identifikasjonsnummer ("RIM ID"). "RIM ID" er synonymt med en node på nettverket der "RIM" 178 er tilkoplet. Kontrolleren 196 inneholder en mikroprogrammert sekvenserer og all logikk som er nødvendig for å styre tegnforsendelser over nettverket og å sende og motta datapakker til rett tid. Kontrolleren 196 etablerer også nettverkskonfigura-sjonen, og rekonfigurerer automatisk nettverket når nye noder legges til eller slettes fra nettverket. Kontrolleren 196 utfører også adressedekodings-funksjoner, syklisk redundanssjekk ("Cyclic Redundancy Check", "CRC") under pakkegenerering og mottak, samt kvittering så vel som andre nettverk funksjoner. Kontrolleren 196 er komersielt tilgjengelig fra Standard Microsystems Corporation med benevnelsen COM 9026. The controller 196 is the heart of "RIM" 178. A number of switches 200 are connected to controller 196 which are used to establish the unique "RIM" identification number ("RIM ID"). "RIM ID" is synonymous with a node on the network where "RIM" 178 is connected. The controller 196 contains a microprogrammed sequencer and all the logic necessary to control character transmission over the network and to send and receive data packets at the correct time. The controller 196 also establishes the network configuration, and automatically reconfigures the network when new nodes are added or deleted from the network. The controller 196 also performs address decoding functions, cyclic redundancy check ("CRC") during packet generation and reception, and acknowledgment as well as other network functions. The controller 196 is commercially available from Standard Microsystems Corporation under the designation COM 9026.

En standard multiplekset adresse/databuss 202 går ut fra kontrolleren 196, og er det midlet som tar hånd om grensesnittet for data- og adressekommunikasjon. En unidireksjonell adressedriver 204 og en bidireksjonell data transceiver 206 kan også koples til bussen 202 i den hensikt å tillate mikrodatamaskin 100 å kople seg til denne bussen. A standard multiplexed address/data bus 202 emanates from the controller 196, and is the means that handles the interface for data and address communication. A unidirectional address driver 204 and a bidirectional data transceiver 206 may also be connected to bus 202 for the purpose of allowing microcomputer 100 to connect to this bus.

Et eksternt pakkebuffer, direktelager "RAM" 208 må omfatte minst 2048 8-biters lagerplass, som er tilstrekkelig for å ta vare på opptil 8 komplette IONET-pakker. Direktelager 208 kan aksesseres av både kontrolleren 196 og mikrodatamaskinen 180. En bufferpeker 210 fins for å identifisere hvilken av de 8 lagerplassene for pakker som skal nyttes ved sendig av pakker, mottak av pakker, og prosessering av pakker ved mikrodatamaskinen 180. Kontrolleren 196 skaffer tilveie alle de nød-vendige signal for tilgangsutvelgelse til direktelager-buffer 208 mellom den selv og mikrodatamaskinen 180. Direktelager 208 er en konvensjonelt digitalt hukommelses-produkt. An external packet buffer, direct storage "RAM" 208 must comprise at least 2048 8-bit storage space, which is sufficient to store up to 8 complete IONET packets. Direct storage 208 can be accessed by both the controller 196 and the microcomputer 180. A buffer pointer 210 exists to identify which of the 8 storage locations for packets is to be used when sending packets, receiving packets, and processing packets by the microcomputer 180. The controller 196 provides all the necessary signal for access selection to direct storage buffer 208 between itself and the microcomputer 180. Direct storage 208 is a conventional digital memory product.

Mikrodatamaskin 180 inneholder den nødvendige hukommelses og prosesserings-kraft for å respondere til den styringsinformasjon som fins innen IONET-protokollen, for kommunikasjonsformål som angår styring og datastrøm. Mikrodatamaskinen 180 virker i samband med kontrolleren 196 og transceiveren 194 ved å implementere en sendertilstandsmaskin og en mottakertilstandsmaskin. Sendertilstandsmaskinen styrer sending av signaler fra "RIM" 178 over kabel 170. Mottakertilstandsmaskinen styrer mottak av signaler fra kabel 170 til "RIM" 178. Informasjonen som er kodet inn i de transmitterte signal og dekodet fra de mottatte signal blir lagret i de nevnte områder i direktelageret for pakkebuffer 208. Microcomputer 180 contains the necessary memory and processing power to respond to the control information found within the IONET protocol, for communication purposes relating to control and data flow. The microcomputer 180 operates in conjunction with the controller 196 and the transceiver 194 by implementing a transmitter state machine and a receiver state machine. The transmitter state machine controls the transmission of signals from "RIM" 178 over cable 170. The receiver state machine controls the reception of signals from cable 170 to "RIM" 178. The information encoded in the transmitted signal and decoded from the received signal is stored in the aforementioned areas in the direct storage for packet buffer 208.

Mikrodatamaskinen 180 inkluderer en parallell inn/ut port 212 og en seriell inn/ut port 214. Den seriell inn/ut porten 214 er koplet til linjedrivere og mottakere 216 for å kommunisere med inn/ut-innretningen 176a, i dette tilfellet det distribuert adapteret 172a for RS-232 som er vist i figur 8. For grensenitt til andre typer av innretninger kan parallellporten 212 nyttes. The microcomputer 180 includes a parallel I/O port 212 and a serial I/O port 214. The serial I/O port 214 is coupled to line drivers and receivers 216 to communicate with the I/O device 176a, in this case the distributed adapter 172a for RS-232 which is shown in Figure 8. For interfaces to other types of devices, the parallel port 212 can be used.

Etter nå å ha beskrevet det generelle arrangement av komponenter i den foreliggende oppfinnelse, kan det nedenfor følgende definisjonssett bedre bli vurdert. Disse definisjoner relaterer seg til mer spesiell egenskaper ved foreliggende oppfinnelse. En "server" er en prosessor som samtidig støtter flere IONET-sesjoner, hvilke er forbindelsen mellom dens subadresser og dens interne, funksjonelle entiteter som dynamisk kan tildeles ved sesjonens initiering. En "klient" er et distribuert adapter eller datamaskin som støtter en eller flere IONET-sesjoner med faste forbindelser mellom dens subadresser og dens interne, funksjonelle entiteter. En "innretning" er en entitet ved en ende av den tovegs kommunikasjonsvegen til en IONET-sesjon. Termene "klient" og "server" brukes her som beskrivende termer relatert til et typisk bruksmønster. Kommunikasjon som gjør bruk av den foreliggende oppfinnelsen kan etableres ved par ev innretninger, enten klient og klient, server og server, eller klient og server. En innretning er identifisert ved en adresse, som er "RIM ID" hos den prosessoren eller det distribuerte adapteret som assosieres med innretningen, og en subadresse, som er de midler som nyttes til å skille mellom kilde- og destinasjonsinnretning for hver enkelt pakke ved hver enkelt prosessor eller distribuert adapter, som kan kople sammen flere innretninger samtidig. En "node" refererer seg til alt som koples til en IONET-kanal ved hjelp av en "RIM". En "sesjon" er en punkt til punkt tovegs virtuell krets etablert mellom et innretningspar. En sesjon består av to "halvsesjoner". En halvsesjon er kommunikasjonsleddet mellom en transmitter ved en node og mottakeren av den korresponderende sesjonsdeltaker ved den andre noden. Det er to halvsesjoner, en i hver retning, for hver hele sesjon som etableres. Having now described the general arrangement of components in the present invention, the following set of definitions can be better considered. These definitions relate to more particular characteristics of the present invention. A "server" is a processor that simultaneously supports multiple IONET sessions, which is the connection between its subaddresses and its internal functional entities that can be dynamically assigned at session initiation. A "client" is a distributed adapter or computer that supports one or more IONET sessions with fixed connections between its subaddresses and its internal functional entities. A "device" is an entity at one end of the two-way communication path of an IONET session. The terms "client" and "server" are used here as descriptive terms related to a typical usage pattern. Communication that makes use of the present invention can be established by any number of devices, either client and client, server and server, or client and server. A device is identified by an address, which is the "RIM ID" of the processor or distributed adapter associated with the device, and a subaddress, which is the means used to distinguish between source and destination devices for each individual packet at each single processor or distributed adapter, which can connect several devices simultaneously. A "node" refers to anything that connects to an IONET channel using a "RIM". A "session" is a point-to-point two-way virtual circuit established between a pair of devices. A session consists of two "half sessions". A half-session is the communication link between a transmitter at one node and the receiver of the corresponding session participant at the other node. There are two half sessions, one in each direction, for each full session that is established.

Signalene som sendes over kabel 170 styrer kommunikasjonen over nettverket. Disse signal danner en IONET-protokoll for kommunikasjon og styring over IONET-kanalen. IONET-protokollen nytter egenskaper fra ARCNET lokalt nettverk maskinvare, men IONET-protokollen er ikke ARCNET-spesifikk. IONET-protokollen kan operere med sammenlignbar effektivitet og identisk funksjonalitet på ethvert tegn-basert nettverk, men vil muligens operere med redusert effektivitet når andre utvelg-elsesteknikker enn tegnsending blir benyttet. The signals sent over cable 170 control the communication over the network. These signals form an IONET protocol for communication and control over the IONET channel. The IONET protocol uses features from ARCNET local area network hardware, but the IONET protocol is not ARCNET specific. The IONET protocol can operate with comparable efficiency and identical functionality on any token-based network, but will possibly operate with reduced efficiency when selection techniques other than token transmission are used.

Den foretrukne form av grensesnittet til nettverket er begrenset bare av behovet for støtte til IONET-protokollen og som grensesbitt til til det "LAN"-mediet som er brukt, som f.eks. ARCNET "LAN". IONET-protokollen opererer uavhengig av noen spesiell innretning eller noe spesielt operativsystem og uavhengig av karakteristikken til noen av inn/ut-kanalene på de forskjellige datamaskinsystemene. The preferred form of the interface to the network is limited only by the need to support the IONET protocol and as a boundary to the "LAN" medium used, such as e.g. ARCNET "LAN". The IONET protocol operates independently of any particular device or any particular operating system and independently of the characteristics of any of the input/output channels on the various computer systems.

IONET-protokollen er en fullstendig like til like protokoll, som eksisterer på nettverk, transport og sesjonslagene til International Standard Organization (ISO) sin Open System Interface (OSI) referanse modell for kommunikasjon, som vil bli beskrevet nedenfor. Det er ingen master-slave forhold mellom kommunikasjons-entitetene i oppkopling, vedlikehold eller bruk av en sesjon mellom to innretninger. Dette i motsetning til det som er karakteristisk for så å si alle inn/ut-kanaler, der kanal-kontrolleren ved vertsprosessoren er master og den fundamentale kontrolleren av enhver kommunikasjon over kanalen. I IONET-protokollen er det ingen funksjon-ell forskjell når det gjelder styringsfunksjoner eller byte-kommunikasjonen mellom noen enhet, annet enn det som kan ses på som de spesielle muligheter for disse innretninger. The IONET protocol is a fully peer-to-peer protocol, existing on the network, transport and session layers of the International Standard Organization (ISO)'s Open System Interface (OSI) reference model for communication, which will be described below. There is no master-slave relationship between the communication entities in connecting, maintaining or using a session between two devices. This is in contrast to what is characteristic of virtually all input/output channels, where the channel controller at the host processor is the master and the fundamental controller of any communication over the channel. In the IONET protocol, there is no functional difference when it comes to control functions or the byte communication between any device, other than what can be seen as the special capabilities of these devices.

OSI-modellen vist i figur 9 er kan brukes for å beskrive kommunikasjonssystemer, inkludert nettverk. Det er teoretisk mulig å erstatte funksjonaliteten til ethvert av disse laga med ekvivalent funksjonalitet implementert på en annen måte, og alle de øvrige laga vil være upåvirket, og vil operere riktig i systemet. Kommunikasjonen mellom en inn/ut-innretning 176a og en annen inn/ut-innretning 176b over kommunikasjonsmediet slik som kabelen 170 er beskrevet på bakgrunn av de sju lag eller nivå, som hver innebærer et spesielt nivå av funksjonalitet innen kommunikasjonsprotokollen. Det laveste nivå er det fysiske lag 220. The OSI model shown in figure 9 can be used to describe communication systems, including networks. It is theoretically possible to replace the functionality of any of these layers with equivalent functionality implemented in a different way, and all the other layers will be unaffected, and will operate correctly in the system. The communication between an input/output device 176a and another input/output device 176b over the communication medium such as the cable 170 is described on the basis of the seven layers or levels, each of which involves a particular level of functionality within the communication protocol. The lowest level is physical layer 220.

Det fysiske lag 220 innebærer den fysiske forbindelsen til kommunikasjonsmediet 170, og den fysiske signallering slik som spenningsnivå i et elektrisk system, optisk modulasjon i et fiberoptisk system, og høyfrekvens modulasjon i et mikrobølge system, for å ta noen eksempler. I et elektrisk system er det fysiske lag representert ved bitstrømmer som er tilstede på kommunikasjonsmediet. The physical layer 220 involves the physical connection to the communication medium 170, and the physical signaling such as voltage level in an electrical system, optical modulation in a fiber optic system, and high frequency modulation in a microwave system, to take a few examples. In an electrical system, the physical layer is represented by bit streams that are present on the communication medium.

Det neste lag er lenkelaget 222, som noen ganger er kalt datalenkelaget. Datalenkelaget 222 er det laget der den fysiske leveransen av rådata mellom noder på nettverket blir utført. Den fysiske signalleringsprotokollen, inkludert lenkeinforma-sjon, synkroniseringsinformasjon, informasjon for feilkorrigering, blokkstørrelser, osv. blir ledet i dette laget. I de fleste nettverk er datalenkelaget 222 det lag der de fundamentale kommunikasjonsfeil kan bli detektert og enten korrigert, eller det blir forespurt om retransmisjon. Kommunikasjon mellom et nodepar er avhengig av kom-patible implementeringer av datalenkelagene. Summarisk kan det sies at datalenkelaget etablerer, vedlikeholder og frigir datalenker, og nyttes for feildetektering og fysisk flytkontroll. The next layer is the link layer 222, which is sometimes called the data link layer. The data link layer 222 is the layer where the physical delivery of raw data between nodes on the network is carried out. The physical signaling protocol, including link information, synchronization information, error correction information, block sizes, etc. is handled in this layer. In most networks, the data link layer 222 is the layer where the fundamental communication errors can be detected and either corrected, or retransmission is requested. Communication between a pair of nodes depends on compatible implementations of the data link layers. In summary, it can be said that the data link layer establishes, maintains and releases data links, and is used for error detection and physical flow control.

Det tredje laget er nettverkslaget 224. Nettverkslaget 224 tar seg av informasjons-ruting gjennom nettverket, inkludert adressering, nettverk initiering, feildetektering og retting, samt veksling, segmentering og blokking av informasjonen. Noen ganger er kvittering for leveranser av rådata utført på nettverknivå, og noen ganger på data-lenkenivå. The third layer is the network layer 224. The network layer 224 takes care of information routing through the network, including addressing, network initiation, error detection and correction, as well as switching, segmentation and blocking of the information. Sometimes receipt of deliveries of raw data is done at the network level, and sometimes at the data link level.

Et aspekt ved kommunikasjonen som ikke direkte er berørt av OSI-modellen i et eksplisitt lag, refererer seg til de midler som nyttes for logisk utvelgelse av retten til å sende på det fysiske laget. OSI ville normalt plassere denne utvelgelsen på lenkelaget 222, men det er noen ganger plassert andre steder. Når det gjelder denne utgreiinga, er media aksess kontroll tenkt å være en funksjon for lenkelaget. An aspect of communication that is not directly affected by the OSI model at an explicit layer refers to the means used for logical selection of the right to transmit at the physical layer. OSI would normally place this selection at link layer 222, but it is sometimes placed elsewhere. As far as this analysis is concerned, media access control is intended to be a function for the link layer.

Det neste laget er transport laget 226. Transportlaget refererer seg til den trans-parante overføringen av data, ende-til-ende kontroll, multipleksing, avbilding og dess like. Dataleveranser forutsetter pålitelige leveranser, i motsetning til et beste forsøk på å levere de data som må regnes med i de lag under transportlaget. Ved transportlaget, antar man at data har blitt levert på en pålitelig måte, og slike ting som retransmisjon av manglende data, holde orden på de data som er levert utenfor tur, oppretting av transmisjonsfeil, osv. har blitt korrigert på eller under transportlaget. Som en effekt av dette er data som går inn og ut av transportlaget 226 og i de høyere lag, data som er meningsfull til datamaskinsystemet, i motsetning til rådata format-tert for nettverket. The next layer is the transport layer 226. The transport layer refers to the transparent transfer of data, end-to-end control, multiplexing, imaging and the like. Data deliveries require reliable deliveries, as opposed to a best effort to deliver the data that must be taken into account in the layers below the transport layer. At the transport layer, it is assumed that data has been delivered in a reliable manner, and such things as retransmission of missing data, keeping track of data delivered out of turn, correcting transmission errors, etc. have been corrected at or below the transport layer. As an effect of this, data entering and exiting the transport layer 226 and in the higher layers is data that is meaningful to the computer system, as opposed to raw data formatted for the network.

Det femte laget er sesjonslaget 228. Sesjonslaget 228 bruker leveransen av data fra transportlaget til å gruppere datastykker som hører til en gitt aktivitet som er benevt en sesjon. Sesjoner foregår mellom to entiteter ved forskjellige lokasjoner på nettverket. Ved et gitt tidspunkt kan enkeltnoder på nettverket være involvert i flere sesjoner som går til flere noder, og mange sesjoner kan multiplekses over samme nettverk. Likevel er tjenestene i sesjonslaget ment for ende-til-ende leveranser av data som hører til en gitt logisk aktivitet, uten innblanding av data fra andre aktiviteter. The fifth layer is the session layer 228. The session layer 228 uses the delivery of data from the transport layer to group pieces of data belonging to a given activity called a session. Sessions take place between two entities at different locations on the network. At any given time, single nodes on the network may be involved in multiple sessions going to multiple nodes, and many sessions may be multiplexed over the same network. Nevertheless, the services in the session layer are intended for end-to-end deliveries of data that belong to a given logical activity, without mixing in data from other activities.

Lag seks er presentasjonslaget 230. Presentasjonslaget 230 er grensesnittet mellom sesjonslaget 228 og applikasjonslaget 232 ved nivå sju. Applikasjonslaget 232 er det laget der de virkelige data gis til, eller mottas fra inn/ut-innretningen 176 ved hver ende av kommunikasjonen. Presentasjonslaget 230 skal hovedsaklig presentere data i en akseptabel form som kan brukes i applikasjonslaget 232 uten å gjøre noe kompro-miss med hensyn til sesjonslaget 228 sin nettverksrelaterte integritet. Presentasjonslaget 230 relaterer seg derfor til datainterpretering, format og kodeinformasjon, mens applikasjonslaget relaterer seg til brukerens applikasjonsprosesser og styringsfunksjoner. Layer six is the presentation layer 230. The presentation layer 230 is the interface between the session layer 228 and the application layer 232 at level seven. The application layer 232 is the layer where the actual data is provided to, or received from, the input/output device 176 at each end of the communication. The presentation layer 230 shall mainly present data in an acceptable form that can be used in the application layer 232 without making any compromise with respect to the session layer 228's network-related integrity. The presentation layer 230 therefore relates to data interpretation, format and code information, while the application layer relates to the user's application processes and management functions.

Aktivitetene for både det lokale nettverket og IONET-kanalen sine funksjonaliteter som er diskutert nedenfor eksisterer på sesjonslaget og nedover. Det er ikke tatt med noen videre diskusjoner hva angår presentasjons- og applikasjonslaget, da disse laga er strengt spesifikk for systemet, den fysisk innretning og/eller brukerapplikasjonen. The activities for both the local area network and IONET channel functionalities discussed below exist at the session layer and down. No further discussions have been included regarding the presentation and application layers, as these layers are strictly specific to the system, the physical device and/or the user application.

Bytearrangementet ved en IONET datapakke 240 er illustrert i figur 10, og i figur 11 er IONET pakken brutt ned i de hierarkiske nivå som korresponderer til OSI-modellen illustrert i figur 9. Ikke inkludert i IONET-pakken er et varslingsavbrudd 242 som er generert i en "RIM" av kontrolleren 196 se figur 8, for å identifisere starten av en pakke. Varslingsavbruddet 242 består av seks sekvensielle "1 "-biter, og fins ved det fysiske nivå som vist i figur 11. Den resterende delen av informasjonen i pakken på fysisk nivå 244 er et sett bytes å åtte biter, som inneholder lenkelags-informasjon 245. The byte arrangement of an IONET data packet 240 is illustrated in Figure 10, and in Figure 11 the IONET packet is broken down into the hierarchical levels corresponding to the OSI model illustrated in Figure 9. Not included in the IONET packet is a notification interrupt 242 which is generated in a "RIM" of the controller 196 see Figure 8, to identify the start of a packet. The notification interrupt 242 consists of six sequential "1" bits, and is found at the physical level as shown in Figure 11. The remaining part of the information in the packet at physical level 244 is a set of bytes to eight bits, which contains link layer information 245.

I pakken fra lenkelaget 245, sender "RIM" en start av overskrift ("Start Of Heading", "SOH") byte, som er en karakter som markerer starten på en ARCNET-datapakke. Etter "SOH"-byten 246, sender "RIM" en kilde identifikasjon ("Source Identification", "SID") som indikerer "RIM ID" for den noden som sender pakken. De to derpå følgende bytes er repetisjoner av mottaker identifikasjon ("Destination Identification", "DID") byter 250. "DID"-byten 250 indikerer den "RIM ID" til den noden som denne pakken er adressert til. "DID"-byten fins to ganger for feilkontroll og pålitelighetshensyn i et ARCNET lokalt nettverk. Den neste følgende byte 252 er kodet for å identifisere lengden på pakken antall nettverksnivå byter, og er generelt i ARCNET-terminologi referert til som fortsettelsespeker ("Continuation Pointer", "CP"). De avsluttende to bytes i denne pakken er en 16-biters syklisk redundans sjekk ("CRC") 254. "CRC"-byten dannes av "RIM"-en for å detektere transmisjonsfeil. In the packet from the link layer 245, "RIM" sends a Start Of Heading ("SOH") byte, which is a character marking the start of an ARCNET data packet. After the "SOH" byte 246, the "RIM" sends a source identification ("Source Identification", "SID") indicating the "RIM ID" of the node sending the packet. The two following bytes are repetitions of the destination identification ("DID") byte 250. The "DID" byte 250 indicates the "RIM ID" of the node to which this packet is addressed. The "DID" byte exists twice for error control and reliability purposes in an ARCNET local area network. The next following byte 252 is coded to identify the length of the packet number of network level bytes, and is generally referred to in ARCNET terminology as the Continuation Pointer ("CP"). The final two bytes of this packet are a 16-bit Cyclic Redundancy Check ("CRC") 254. The "CRC" byte is generated by the "RIM" to detect transmission errors.

"SOH" 246 ved starten og "CRC" 254 ved slutten av lenkelagspakken 245 er normalt ikke betraktet som del av ARCNET-pakken, fordi de begge blir generert av og sjekket av nettverkets maskivaregrensesnitt, dvs. ARCNET-kontrolleren 196, og vil aldri forekomme i pakkebufferet (RAM 208, figur 8) til "RIM"-en. De øvrige bytes i overskrifta i lenkelagspakken 245 forefinnes i pakkebufferet, selv om nettverkets maskinvare gir "SID" 248 for utgående pakker uavhengig av verdien i pakkebufferet. "DID" for hver mottaker vil alltid være lik "RIM ID" eller vil være null for kringkastede pakker som mottas av alle noder. Videre blir bare en av de to The "SOH" 246 at the start and the "CRC" 254 at the end of the link layer packet 245 are not normally considered part of the ARCNET packet, because they are both generated by and checked by the network hardware interface, i.e., the ARCNET controller 196, and will never occur in the packet buffer (RAM 208, figure 8) of the "RIM". The other bytes in the header in the link layer packet 245 are found in the packet buffer, even if the network's hardware provides "SID" 248 for outgoing packets regardless of the value in the packet buffer. The "DID" of each receiver will always be equal to the "RIM ID" or will be zero for broadcast packets received by all nodes. Furthermore, only one of the two remains

"DID" lagret i "RIM"-ens pakkebuffer, slik at bare en "DID" 250 er en del av ARCNETs overskriftsporsjon 258 av IONET-pakken 240. IONET-pakken 240 vist i figur 10 følger denne konvensjonen for illustrasjonens skyld. "DID" stored in the "RIM"'s packet buffer so that only one "DID" 250 is part of the ARCNET header portion 258 of the IONET packet 240. The IONET packet 240 shown in Figure 10 follows this convention for illustration.

Normalt er en typisk ARCNET-pakke 256 bytes, eller mindre lang. Det er imidlertid mulig å kommunisere over ARCNET lokalt nettverk med lange datapakker med lengde opp til 512 bytes. I modus for lange datapakker, er "CP" 252 to bytes lang, noe som gjør lenkelagsoverskrifta seks bytes lang heller enn fem som vist. Normally, a typical ARCNET packet is 256 bytes, or less in length. However, it is possible to communicate over the ARCNET local network with long data packets of up to 512 bytes. In long data packet mode, "CP" is 252 two bytes long, making the link layer header six bytes long rather than five as shown.

Nettverklagsinformasjonen 257 som er etter "CP" 252 og før "CRC" 254 er informasjon som er avsendt fra kontrolleren 196 (figur 8) opp til nettverkslagets tolking vha. lavnivå programvare eller fastvare tilhørende datamaskinsystemet eller det distribuerte adapteret. The network layer information 257 which is after "CP" 252 and before "CRC" 254 is information sent from the controller 196 (Figure 8) up to the network layer's interpretation using low-level software or firmware associated with the computer system or the distributed adapter.

Nettverkspakken 257 starter med en sju bytes lang overskrift med byte for systemkoden ("System Code", "SC") 256. "SC"-byten 256 er en alminnelig egenskap ved alle ARCNET-pakker og indikerer type pakke. Systemkoden brukes for å identifisere og skille forskjellige type kommunikasjonsprotokoller som kan benyttes samtidig. The network packet 257 starts with a seven-byte long header with the byte for the system code ("System Code", "SC") 256. The "SC" byte 256 is a common characteristic of all ARCNET packets and indicates the type of packet. The system code is used to identify and distinguish different types of communication protocols that can be used at the same time.

Når "SC" 256 i ARCNET-overskrifta identifiserer en IONET-pakke gjennom den unike IONET-pakkens kode, danner de følgende ti bytes 260 IONET-overskrifta for IONET-pakken 240. IONET-overskrifta 260 gir nettverksnivå og transportnivå informasjon og indikerer hvordan det gjenstående dataområde 262 skal deles mellom administrativ informasjon 264 og bytestrøminformasjon 266. When the "SC" 256 in the ARCNET header identifies an IONET packet through the unique IONET packet code, the following ten bytes 260 form the IONET header for the IONET packet 240. The IONET header 260 provides network level and transport level information and indicates how the remaining data area 262 is to be divided between administrative information 264 and byte stream information 266.

Delingen av dataområdet 262 i en administrativ porsjon 264 og en porsjon med bytestrøm 266 tillater det som kalles "out-of-bands" signallering, ved at det skilles mellom den administrative informasjonen som brukes for å kontrollere inn/ut-innretningen eller det distribuerte adapteret eller rapportere status fra inn/ut-innretningen eller det distribuerte adapteret, fra bytestrøminformasjonen 266 som nyttes for å kommunisere informasjon til og fra inn/ut-innretningen. Den administrative informasjonen 264 kan gis av, inspiseres av, eller modifiseres av IONET-kontrollerte komponenter, men bytestrøminformasjonen 266 er alltid tatt hånd om på en transparent måte, og blir derfor levert til mottakerens inn/ut-innretning umodifisert fra den kilde-verdien som var der når den ble sendt. The division of the data area 262 into an administrative portion 264 and a byte stream portion 266 allows what is called "out-of-band" signaling, by separating the administrative information used to control the I/O device or distributed adapter or report status from the I/O device or distributed adapter, from the byte stream information 266 used to communicate information to and from the I/O device. The administrative information 264 may be provided by, inspected by, or modified by IONET-controlled components, but the byte stream information 266 is always handled in a transparent manner, and is therefore delivered to the receiver's I/O device unmodified from the source value that was there when it was sent.

De først seks bytes av IONET-overskrifta 260 er en del av nettverkpakken 257. Disse bytes er i rekkefølge en senderstatus byte ("Transmitter Status Byte", "TXSB") 268, en mottakerstatus byte ("Receiver Status Byte", "RXSB") 270, en to-bytes kildesubadresse "Source Subaddress", "SSA" 272, en to-bytes mottakersubadresse ("Destination Subaddress", "DSA") 274, de resterende fire bytes hos IONET-overskrifta 260 fins innen transportnivåpakken 276. Den første byten i transportnivåpakken indikerer pakkefunksjonen ("Packet Function", "PFN") 278. Den derpå følgende byte 280 er ennå ikke i bruk, men er reservert for framtidige utvidelser. Den tredje byten er en administrativ lengdeverdi ("Administrativ Length Value", "ADL" eller "ADLNG") 282. "ADL" har til funksjon å identifisere lengden av den administrative informasjonen 264 av dataområdet 262. Den siste byten 284 er en bytestrøm lengdeverdi ("Byte Stream Length Value", "BSL" eller "BSLNG") 284. "BSL" identifiserer den lengde bytestrømmen 266 har av dataområdet 262. Både "ADL" 282 og "BSL" 284 for den sammenlagte lengden av den administrative informasjonen 264 og bytestrømsinformasjonen 266 kan være mindre enn den totale lengden til nettverksnivåpakken 257. I slike tilfeller er ikke de resterende bytes i nettverksnivåpakken 257 ut over de som er definert for dataområdet 262 ikke i bruk. Lengden av dataområdet 262 kan bli opp til 242 bytes i kortpakke-modus eller opp til 497 bytes i langpakke modus. Når lange pakker benyttes, er "CP" 252 to bytes lang og både ARCNET-overskrifta 258 og IONET-overskrifta 260 er utvidet for en ekstra byte mer enn det som er illustrert i figur 10. The first six bytes of the IONET header 260 are part of the network packet 257. These bytes are in order a transmitter status byte ("Transmitter Status Byte", "TXSB") 268, a receiver status byte ("Receiver Status Byte", "RXSB" ) 270, a two-byte source subaddress "Source Subaddress", "SSA" 272, a two-byte destination subaddress ("Destination Subaddress", "DSA") 274, the remaining four bytes of the IONET header 260 are contained within the transport level packet 276. the first byte in the transport level packet indicates the packet function ("Packet Function", "PFN") 278. The following byte 280 is not yet in use, but is reserved for future extensions. The third byte is an administrative length value ("Administrative Length Value", "ADL" or "ADLNG") 282. "ADL" has the function of identifying the length of the administrative information 264 of the data area 262. The last byte 284 is a byte stream length value ("Byte Stream Length Value", "BSL" or "BSLNG") 284. "BSL" identifies the length of the byte stream 266 of the data area 262. Both "ADL" 282 and "BSL" 284 for the aggregate length of the administrative information 264 and the byte stream information 266 may be less than the total length of the network level packet 257. In such cases, the remaining bytes in the network level packet 257 beyond those defined for the data area 262 are not in use. The length of the data area 262 can be up to 242 bytes in short packet mode or up to 497 bytes in long packet mode. When long packets are used, the "CP" 252 is two bytes long and both the ARCNET header 258 and the IONET header 260 are extended by an additional byte more than what is illustrated in Figure 10.

Flere detaljer angående ARCNET-overskrift 258 og IONET-overskrift 260 er illustrert ved diagrammet vist i figur 12, som viser navnet til hvert felt innen hver overskrift, den bitvise oppsetningen fra den minst signifikante bit til høyre til den mest signifikante bit til venstre i hvert felt, og gir et sammendrag for hvert felt. More details regarding ARCNET header 258 and IONET header 260 are illustrated by the diagram shown in Figure 12, which shows the name of each field within each header, the bitwise arrangement from the least significant bit on the right to the most significant bit on the left in each fields, and provides a summary for each field.

Kildeidentifikasjonen ("SID") for hvert felt i ARCNET-overskriften 258 for hver innkommet pakke blir sjekket ved "RIM"-en ved hver node hver gang en sesjon er i gang. Alle pakker som sendes av den aktive sesjonspartneren blir akseptert for interpretering og prosessering. Alle pakker som mottas fra "RIM"-ene fra andre noder, bortsett fra de som inneholder spesielle funksjoner vedrørende nivåkontroll, blir avvist, og "RIM"-mottakeren blir øyeblikkelig igjen gjort klar. Når ingen sesjon er i gang, vil alle innkomne pakker bli interpretert, men bare de som inneholder spesiell nettverks- og transportnivå kontrollfunksjoner som relateres til etableringen av en sesjon og oppsettingsparametre eller statistikk blir akseptert for prosessering. The source identification ("SID") of each field in the ARCNET header 258 for each incoming packet is checked against the "RIM" at each node each time a session is in progress. All packets sent by the active session partner are accepted for interpretation and processing. All packets received from the "RIMs" from other nodes, except those containing special functions regarding level control, are rejected, and the "RIM" receiver is immediately made ready again. When no session is in progress, all incoming packets will be interpreted, but only those containing special network and transport level control functions related to the establishment of a session and setup parameters or statistics will be accepted for processing.

Mottakeridentifikasjonen ("DID") 250 i ARCNET-overskrifta 258 er enten lik "RIM ID" for denne noden, eller er null for kringkastede beskjeder. "RIM" som bruker IONET-kanalen er alltid konfigurert for å motta kringkastede beskjeder. Bare lokale kommandoer, beskrevet nedenfor, blir akseptert som kringkastet av innretninger. Enhver annen kringkastet beskjed som mottas, selv om de har IONET systemkode ("SC"), vil bli avvist av innretningen. The receiver identification ("DID") 250 in the ARCNET header 258 is either equal to the "RIM ID" of this node, or is zero for broadcast messages. The "RIM" using the IONET channel is always configured to receive broadcast messages. Only local commands, described below, are accepted as broadcast by devices. Any other broadcast messages received, even if they have IONET system code ("SC"), will be rejected by the device.

Fortsettelsespekeren, ("CP") 252 i ARCNET-overskrifta brukes for å bestemme lengden av en IONET-pakke. "CP" er en byte lang for kortpakkemodus, og inneholder pakkelengden subtrahert fra 259. "CP" er to bytes lang, med første byte satt til null, og den andre byten satt til pakkelengde subtrahert fra 516 for langpakkemodus. The continuation pointer, ("CP") 252 in the ARCNET header is used to determine the length of an IONET packet. "CP" is one byte long for short packet mode, and contains the packet length subtracted from 259. "CP" is two bytes long, with the first byte set to zero, and the second byte set to packet length subtracted from 516 for long packet mode.

Systemkoden ("SC") 256 for ARCNET-overskrifta 258 kan være enhver spesiell kode som identifiserer IONET-protokollen, og eksempel på en slik koding er illustrert i figur 12. Innkomne pakker med andre systemkoder (andre enn en diagnostisk systemkode) blir avvist av alle klienter og hvis de blir motart, skjer dette av alle serverne og ved andre protokollkoder. The system code ("SC") 256 of the ARCNET header 258 may be any special code identifying the IONET protocol, and example of such coding is illustrated in Figure 12. Incoming packets with other system codes (other than a diagnostic system code) are rejected by all clients and if they are opposed, this happens by all the servers and by other protocol codes.

IONET-overskrifta 260 brukes av alle sender- og mottakertilstandsmaskiner for å kontrollere bytestrømskommunikasjonen over nettverkets kommunikasjonsmedium, for å dirigere pakkeinnhold til den korrekte inn/ut-innretning, og for å bestemme innholdet i dataområdet 262 i pakken. The IONET header 260 is used by all transmitter and receiver state machines to control the byte stream communication over the network communication medium, to direct packet contents to the correct I/O device, and to determine the contents of the data area 262 of the packet.

Byte for senderstatus ("TXSB") 268 i IONET-overskrifta 260 inneholder informasjon relatert til den alminnelige bruken av IONET-pakken og status til den senderen som sendte pakken. Som vist i figur 12, er umiddelbar-feltet i "TXSB"-byten kodet for å skille mellom pakker av umiddelbar prioritet (feltet =1) og pakker av normal prioritet (feltet=0). Pakker for ekspeditt levering refereres til som umiddelbare pakker. Utgående umiddelbare pakker sendes før ventende pakker av normal prioritet, og innkomne umiddelbare pakker vil bli prosessert så snart de blir mottatt, før pakker av normal prioritet som venter i mottaksbufferet og (typisk) før resten av de normalpiroriterte pakker som er underveis (hvis noen) når de umiddelbare pakkene blir motart. Sender Status Byte ("TXSB") 268 in the IONET header 260 contains information related to the general use of the IONET packet and the status of the sender that sent the packet. As shown in Figure 12, the immediate field in the "TXSB" byte is coded to distinguish between packets of immediate priority (the field =1) and packets of normal priority (the field=0). Packages for expedited delivery are referred to as immediate packages. Outgoing immediate packets are sent before pending normal priority packets, and incoming immediate packets will be processed as soon as they are received, before normal priority packets waiting in the receive buffer and (typically) before the rest of the normal priority packets in transit (if any) when the immediate packages are countered.

Operasjonsfeltet hos "TXSB" inneholder en kode for hvilken bruk IONET-pakken skal gjøre av transportnivået. De bruk av tranportnivået som kan kodes i operasjonsfeltet er: "NOP", brukes for holde-levende beskjeder; "IDLE", som indikerer en sender venter ("Transmitter Waiting", "TW") status; "DATF", som indikerer en sender aktiv ("Transmitter Active", "TA") eller umiddelbar sender aktiv ("Immidiate Transmitter Active", "ITA") status på den siste (eller eneste) pakke i transmisjons-gruppen, hvor "PFN" 278 feltet kontrollerer bruken av dataområdet; "DATAI", som indikerer en "TA" status på første, eller umiddelbare pakker i sendergruppen, hvor "PFN" 278 feltet kontrollerer bruken av dataområdet; "CONTROL COMMAND" som er videre kodet i funksjonsfeltet i "TXSB"-byten. The operation field at "TXSB" contains a code for which use the IONET package will make of the transport level. The uses of the transport level that can be coded in the operation field are: "NOP", used for keep-alive messages; "IDLE", indicating a transmitter waiting ("Transmitter Waiting", "TW") status; "DATF", which indicates a transmitter active ("Transmitter Active", "TA") or immediate transmitter active ("Immediate Transmitter Active", "ITA") status on the last (or only) packet in the transmission group, where " The PFN" 278 field controls the use of the data area; "DATAI", indicating a "TA" status on first, or immediate packets in the transmitter group, where the "PFN" 278 field controls the use of the data area; "CONTROL COMMAND" which is further encoded in the function field of the "TXSB" byte.

Sekvensnummeret eller funksjonsfeltet i "TXSB"-byten 268 inneholder sekvensnummeret hos den pakken som sendes når operasjonsfeltet er kodet for alle funksjoner bortsett fra "CONTROL COMMAND" og "CONTROL REPLY" funksjonene. Når operasjonsfeltet er kodet for "CONTROL COMMAND" og "CONTROL REPLY", er kontroll funksjonen kodet i funksjonsfeltet hos "TXSB" som vist i det følgende diagram: The sequence number or function field in "TXSB" byte 268 contains the sequence number of the packet sent when the operation field is coded for all functions except the "CONTROL COMMAND" and "CONTROL REPLY" functions. When the operation field is coded for "CONTROL COMMAND" and "CONTROL REPLY", the control function is coded in the function field at "TXSB" as shown in the following diagram:

Ved referanse til overstående diagram, er en "CONTROL COMMAND" tilstede i operasjonsfeltet hos "TXSB" 268 når "TXSB" verdien starter med "E" eller "6" på disgrammet. Funksjonen en oppnår ved den spesielle "CONTROL COMMAND" er indikert i "KONTROLL FUNKSJON" kolonnen. Datafunksjoner kodet i operasjonsfeltet hos "TXSB" er indikert ved verdier som begynner med "4", "5" eller "C". Disse fire funksjonene, avsluttende dataoverføring ("DATAF"), initierende/mellomliggende dataoverføring ("DATAI"), "flush" buffere, kjør utvidet diagnostistikk og rapporter status, er kodet i typekode-feltet hos "PFN"-byte 278 i tillegg til "TXSB". "LNG"-feltet viser lengden som kreves eller er tillatt for hver type kontrollfunksjon. Kolonne "mottatt av" indikerer klassen av innretning, Enten klient ("C"), server ("S") eller begge ("A"), som kan ta imot hver type IONET-pakke. "SESJ."-kolonnen indikerer om en kommmando aksepteres både i og utenfor en sesjon indikert ved "E", eller om kommandoen aksepteres bare utenfor en sesjon, indikert ved "O", eller om kommandoen aksepteres bare innenfor en sesjon, indikert ved en "I". "MOD."-kolonnen indikerer om pakken må sendes som en umiddelbar pakke, indikert med en " I", om pakken må sendes Som normal prioritet, indikert med en "N", eller om pakken kan sendes i enten normal eller umiddelbar modus, indikert med en "E". I tilfellet for så å si alle kontroll kommandoene, blir en svarpakke generert av mottakende innretning og blir sendt tilbake til den innretningen som sendte den opprinnelig kontrollkommandoen. Kolonnene for "TXSB", "PFN", og "LNG" under "SVAR" gir kontrollkoder og lengder for kontrollsvar-funksjoner sendt som respons til de forskjellige kontrollkommandoene. Referring to the above diagram, a "CONTROL COMMAND" is present in the operation field at "TXSB" 268 when the "TXSB" value starts with "E" or "6" on the diagram. The function achieved by the special "CONTROL COMMAND" is indicated in the "CONTROL FUNCTION" column. Data functions encoded in the operation field at "TXSB" are indicated by values beginning with "4", "5" or "C". These four functions, terminating data transfer ("DATAF"), initiating/intermediate data transfer ("DATAI"), "flush" buffers, run extended diagnostics, and report status, are encoded in the type code field at "PFN" byte 278 in addition to "TXSB". The "LNG" field shows the length required or allowed for each type of control function. Column "received by" indicates the class of device, Either client ("C"), server ("S") or both ("A"), which can receive each type of IONET packet. The "SESSION." column indicates whether a command is accepted both inside and outside a session indicated by "E", or whether the command is accepted only outside a session, indicated by "O", or whether the command is accepted only inside a session, indicated by a "IN". The "MOD." column indicates whether the packet must be sent as an immediate packet, indicated by an "I", whether the packet must be sent As normal priority, indicated by an "N", or whether the packet can be sent in either normal or immediate mode, indicated by an "E". In the case of virtually all control commands, a response packet is generated by the receiving device and is sent back to the device that sent the original control command. The "TXSB", "PFN", and "LNG" columns under "RESPONSE" provide control codes and lengths of control response functions sent in response to the various control commands.

Mottakerstatus byten "RXSB" 270 i IONET-overskrifta inneholder informasjon som angår status til mottakertilstandsmaskinen ved den innretningen som sendte pakken. Den høyeste ordens bit eller umiddelbar-feltet settes for å skille mellom kvittering av umiddelbare pakker og normale pakker. Kvitteringsfeltet ("Acknow-ledge", "ACK") koder kvittering til den siste pakken som er mottatt av innretningen slike som "NOP"; "BUSY", som indikerer en mottaker venter ("Receiver Waiting", "RW"); eller en umiddelbar mottaker venter ("Immediate Receicer Waiting", "IRW") status; og "READY", som indikerer en mottaker aktiv ("Revceiver Activ", "RA") eller en umiddelbar mottaker aktiv ("Immediate Receiver Active", "IRA"). Feilfeltet blir satt lik "1" hvis en detekterbar intern feil lokalt i klientens maskinvare eller fastvare har oppstått, og blir ellers satt til null. Sekvensnummerfeltet inneholder sekvensnummeret til den pakken som det kvitteres for. Receiver status byte "RXSB" 270 in the IONET header contains information relating to the status of the receiver state machine at the device that sent the packet. The highest order bit or immediate field is set to distinguish between acknowledgment of immediate packets and normal packets. The acknowledgment field ("Acknow-ledge", "ACK") encodes acknowledgment of the last packet received by the device such as "NOP"; "BUSY", indicating a receiver waiting ("Receiver Waiting", "RW"); or an immediate receiver waiting ("Immediate Receicer Waiting", "IRW") status; and "READY", indicating a receiver active ("Revceiver Active", "RA") or an immediate receiver active ("Immediate Receiver Active", "IRA"). The error field is set equal to "1" if a detectable internal error locally in the client's hardware or firmware has occurred, and is otherwise set to zero. The sequence number field contains the sequence number of the package that is being acknowledged.

Kildesubadressen ("SSA") 272 for IONET-overskrifta identifiserer den spesielle kildeinnretningen ved noden som pakken er sendt fra. Mottakersubadressn ("DSA") 274 identifiserer en spesiell mottakerinnretning ved den noden som skal motta denne pakken. The source subaddress ("SSA") 272 of the IONET header identifies the particular source device at the node from which the packet is sent. Receiver subaddress ("DSA") 274 identifies a particular receiver device at the node that is to receive this packet.

Pakkefunksjonen "PFN" 278 definerer bruken av dataomådet 262 (figur 10) i IONET-pakken i de tilfeller "TXSB" indikerer at det er "data"-pakke ved en opera-sjonskode "DATAI" eller "DATAF". Typekodefeltet "PFN" 278 koder generelt bruk av pakken for å indikere dataoverføring, når dataområdet inneholder bytestrøm og adminiatrative data for å brukes av inn/ut-innretningen; eller en klient kontroll kommando, når dataområdet inneholder kontrollinformasjon som nyttes av klientens fastvare; eller et klient kontroll svar, når dataområdet inneholder kontrollinformasjon sendt som svar på en kontrollforespørsel. The packet function "PFN" 278 defines the use of the data area 262 (figure 10) in the IONET packet in those cases "TXSB" indicates that it is a "data" packet by an operation code "DATAI" or "DATAF". The "PFN" type code field 278 generally encodes use of the packet to indicate data transfer, when the data area contains byte stream and administrative data to be used by the I/O device; or a client control command, when the data area contains control information used by the client's firmware; or a client control response, when the data area contains control information sent in response to a control request.

Bitene benevnt "ASL" og "ADL" hos "PFN" 278 brukes for å ta vare på de mest signifikante biter av verdien til lengden for "ADLNG" 282 og "BSLNG" 284 bytene beskrevet nedenfor. Funksjonskodefeltet hos "PFN" 278 er alltid satt til null for dataoverføringsfunksjoner. For klient kontroll kommandoer og klient kontroll svar er klientfunksjonen kodet for å indikere "flush" bufferene, kjør utvidet diagnostikk, og funksjoner for å rapportere status som tidligere er identifisert i overstående diagram. The bits named "ASL" and "ADL" at "PFN" 278 are used to store the most significant bits of the value of the length of the "ADLNG" 282 and "BSLNG" 284 bytes described below. The function code field at "PFN" 278 is always set to zero for data transmission functions. For client control commands and client control responses, the client function is coded to indicate "flush" the buffers, run extended diagnostics, and functions to report status previously identified in the above diagram.

Bytene for adresselengden ("ADLNG") 282 og bytestrømslengden ("BSLNG") 284 danner en dataområde-beskrivelse. Databeskriveren definerer bruken av dataområdet 262 (figur 10) av IONET-pakken. Verdien innen "ADLNG"-feltet 282 spesifiserer lengden av den administrative informasjonen 264 (figur 10). Hvis den administrative informasjonen har en lengde forskjellig fra null, starter bytestrømsområdet umiddelbart etter databeskriveleren 282 og 284 og strekker seg ut det spesifiserte antall bytes. Bit 4 i "PFN"-byten 278 fungerer som den mest signifikante bit i "ADLNG" 282 byte for å tillate "ADLNG"-verdier over 255 for bruk ved modus for lange pakker. The bytes for the address length ("ADLNG") 282 and the byte stream length ("BSLNG") 284 form a data area description. The data descriptor defines the use of the data area 262 (Figure 10) of the IONET packet. The value within the "ADLNG" field 282 specifies the length of the administrative information 264 (Figure 10). If the administrative information has a length other than zero, the byte stream area starts immediately after the data descriptors 282 and 284 and extends the specified number of bytes. Bit 4 of the "PFN" byte 278 acts as the most significant bit of the "ADLNG" byte 282 to allow "ADLNG" values above 255 for use in long packet mode.

Tallet som er kodet i "BSLNG"-feltet 284 spesifiserer den lengden som byte-strømmen 266 har av av dataområdet 262. Hvis verdien i "BSLNG" er forskjellig fra null, starter bytestrømsområdet fra byten etter det administrative området, eller følger dataområdebeskriveren 282 og 284 hvis "ADLNG"-feltet 282 er null. Byte-strømmen strekker seg ut det antall bytes spesifisert i feltet 284. Bit 5 hos "PFN"-byte 278 fungerer som den mest signifikante bit i lengdeverdien spesifisert i "BSLNG"-feltet 284 for å gi rom for "BSLNG"-verdier større enn 255 for bruk i modus for lange pakker. The number encoded in the "BSLNG" field 284 specifies the length of the byte stream 266 of the data area 262. If the value in "BSLNG" is non-zero, the byte stream area starts from the byte after the administrative area, or follows the data area descriptor 282 and 284 if the "ADLNG" field 282 is null. The byte stream extends the number of bytes specified in field 284. Bit 5 of "PFN" byte 278 serves as the most significant bit of the length value specified in "BSLNG" field 284 to accommodate "BSLNG" values larger than 255 for use in long packet mode.

De mest vanlige pakkene som sendes over IONET-kanalen er de som overfører bytestrømsdata for bruk ved mottakerens inn/ut-innretning. Kontrollfunksjonspakker er slike hvis innhold blir interpretert innen støtte-programvare eller fastvare hos IONET server eller IONET klient, Og er ikke sendt av inn/ut-innretningen. IONETs kontrollfunksjonspakker er de indentifisert i overstående diagram og er identifisert i "TXSB" 268, som beskrevet i forbindelse med figur 12. The most common packets sent over the IONET channel are those that transfer bytestream data for use by the receiver's I/O device. Control function packets are those whose content is interpreted within support software or firmware at the IONET server or IONET client, and is not sent by the input/output device. IONET's control function packages are those identified in the diagram above and are identified in "TXSB" 268, as described in connection with figure 12.

IONETs kontrollfunksjonskommandoer og -svar er tilgjengelig på flere nivå. Nettverksnivåets kontrollfunksjoner relaterer til noder på IONET-kanalen og er uavhengig av sesjonsaktiviteten. Transportnivåets kontrollfunksjoner nyttes til å etablere, styre og avslutte sesjoner. Sesjonsnivåets kontrollfunksjoner nyttes for å styre grensesnittet til inn/ut-innretningene, og er bare brukbare når en sesjon er i gang, med de unntagelser som er anført. Sesjonsnivå bytestrøm funksjoner overfører data, kontroll og statusinformasjon til og fra de tilkoplete inn/ut-innretningene. IONET's control function commands and responses are available at several levels. The network level control functions relate to nodes on the IONET channel and are independent of the session activity. The transport level's control functions are used to establish, manage and terminate sessions. The session level control functions are used to control the interface to the I/O devices, and are only usable when a session is in progress, with the exceptions noted. Session level byte stream functions transfer data, control and status information to and from the connected I/O devices.

Kontrollkommandobeskjeder blir alltid sendt ved hjelp av korte IONET-pakker. Alle "CONTROL COMMANDS" krever vedkommende mottaker å sende tilbake et "CONTROL REPLY". Med andre ord, kontrollfunksjoner medfører særskilt "handshake" mellom sendertilstandsmaskinene for de kommuniserende innretningene. Denne "handshake" involverer ikke mottakertilstandsmaskinene. De generaliserte detaljer som gjelder for hver "CONTROL COMMAND" og "CONTROL REPLY" følger nedenfor. Control command messages are always sent using short IONET packets. All "CONTROL COMMANDS" require the relevant recipient to send back a "CONTROL REPLY". In other words, control functions entail a special "handshake" between the transmitter state machines of the communicating devices. This "handshake" does not involve the receiver state machines. The generalized details applicable to each "CONTROL COMMAND" and "CONTROL REPLY" follow below.

Den positive kvitteringen til en "CONTROL COMMAND" i form av et "CONTROL REPLY" er alltid nødvendig, uavhengig av sendepakkens nummer. Ingen flere overføringer (bortsett fra nye forsøk) blir gjort før det korresponderende "CONTROL REPLY" er mottatt. Sekvensnummerering er hverken påkrevd eller brukt for kontrollfunksjonspakker. Eksempel på typer av avsluttende koder som kodes inn i det administrstive området 264 av dataområdet 262 av hver IONET-pakke 240 som sender kontrollsvaret, kan bl.a. være som følger: vellykket avslutning av kontrollfunksjonen; kontrollfunksjonen er ikke støttet av mottakerinnretningen; kontrollfunksjonen er avvist på grunn av mottakerens status; kontrollfunksjonen er avvist på grunn av at innretningen ikke er i sesjon; kontrollfunksjonen er avvist på grunn av at innretningen allerede er i sesjon; kontrollfunksjonen er avvist på grunn av at konfigurasjonslåsen for innretningen er satt; og det er spesifikasjonsfeil i "CONTROL COMMAND" -parametre. The positive acknowledgment of a "CONTROL COMMAND" in the form of a "CONTROL REPLY" is always required, regardless of the sending package number. No further transmissions (except retries) are made until the corresponding "CONTROL REPLY" is received. Sequence numbering is neither required nor used for control function packets. Examples of types of terminating codes that are encoded into the administrative area 264 of the data area 262 of each IONET packet 240 that sends the control response can include be as follows: successful completion of the control function; the control function is not supported by the receiving device; the control function is rejected due to the recipient's status; the control function is rejected because the device is not in session; the control function is rejected because the device is already in session; the control function is rejected because the device configuration lock is set; and there are specification errors in "CONTROL COMMAND" parameters.

Som vist i foranstående diagram, omfatter nettverksnivåets kontrollfunksjoner også rapporter innretningsparametere, rapporter statistikk, rapporter grensesnittsparametere, sett innretningsparametere, sett grensesnittsparametere, og lokaliser. Det fins også en nullfunksjon, ikke vist i overstående diagram, som ignoreres av mottakeren uten at det blir generert hverken en feil eller et svar. Disse nettverksnivå kontrollfunksjoner blir akseptert av IONET sine noder til enhver tid, enten en sesjon er i gang eller ikke. Disse kontrollfunksjonene trenges ikke å stamme fra "SID" til den aktive sesjonspartneren for å bli akseptert under en sesjon. As shown in the preceding diagram, the network level control functions also include report device parameters, report statistics, report interface parameters, set device parameters, set interface parameters, and locate. There is also a null function, not shown in the diagram above, which is ignored by the receiver without generating either an error or a response. These network level control functions are accepted by IONET's nodes at all times, whether a session is in progress or not. These control functions do not need to originate from the "SID" of the active session partner to be accepted during a session.

"CONTROL COMMAND" for rapporter innretningsparametere fører til at IONET-innretningen genererer en "CONTROL REPLY" pakke som inneholder informasjon om type og status på inn/ut-innretningen. Kommandoen for rapporter "CONTROL COMMAND" for reporting device parameters causes the IONET device to generate a "CONTROL REPLY" packet containing information about the type and status of the input/output device. The command for reports

innretningsparametere blir gjenkjent av alle innretninger, og blir akseptert enten en sesjon er i gang eller ikke, og blir akseptert fra enhver kilde om innretningen er i en sesjon, og ikke bare fra sesjonspartneren. Noe av den informasjonen som blir rapportert relaterer til attributtene til noden. Denne informasjonen blir rapportert på en lik basis for alle innretinger. Kommandoen rapporter innretningsparametre blir ikke akseptert fra kringkastede pakker på grunn av den store mengden av trafikk som da vil bli generert, mangelen på kringkastingsmuligheter som refererer seg til subadresser, mangelen på evne til å bestemme om en har mottatt respons fra innretninger. Kommandoen for rapporter innretningsparametre blir sendt som en umiddelbar pakke. device parameters are recognized by all devices, and are accepted whether a session is in progress or not, and are accepted from any source if the device is in a session, and not just from the session partner. Some of the information reported relates to the attributes of the node. This information is reported on an equal basis for all facilities. The command report device parameters is not accepted from broadcast packets due to the large amount of traffic that would then be generated, the lack of broadcast capabilities referring to subaddresses, the lack of ability to determine if a response has been received from devices. The report device parameters command is sent as an immediate packet.

Formatet til pakken for det "CONTROL REPLY" som blir sendt som respons til en "CONTROL COMMAND" for rapporter innretningsparametre, kan med fordel The format of the packet for the "CONTROL REPLY" that is sent in response to a "CONTROL COMMAND" to report device parameters can be advantageously

inkluderes i den administrative informasjonsseksjonen 264 av dataområdet 262 (figur 10): en indikasjon på avslutningskoden beskrevet overfor, typekode brukt for å identifisere klienter og ervere og typekoden til inn/ut-grensesnittet 182 (figur 6) assosiert med innretningen, en pakkelengde, sendepakkenummeret, som indikerer maksimum antall "DATAI"-pakker som kan sendes før en "DATAF"-pakke kreves, og en byte for sesjoninitieringstype. Byten for sesjonsinitieringstype indikerer en begrensning på en IONET-innretning som avgrenser dens kommunikasjon til på forhånd bestemte klienter og servere i en på forhånd bestemt sesjon. Denne type restriksjon på kommunikasjonen er med fordel tatt med i den hensikt å begrense tilgangen til spesielle innretninger og kreve spesielle sikkerhetsnivåer for å få til kommunikasjon mellom særskilte innretninger. included in the administrative information section 264 of the data area 262 (Figure 10): an indication of the termination code described above, type code used to identify clients and acquirers and the type code of the input/output interface 182 (Figure 6) associated with the device, a packet length, the transmit packet number , indicating the maximum number of "DATAI" packets that can be sent before a "DATAF" packet is required, and a session initiation type byte. The session initiation type byte indicates a restriction on an IONET device that limits its communication to predetermined clients and servers in a predetermined session. This type of restriction on communication is advantageously included with the intention of limiting access to special devices and requiring special security levels to achieve communication between special devices.

Kontrollkommandoen rapporter statistikk fører til at den innretningen kommandoen er adressert til vil generere en "CONTROL REPLY" pakke som inneholder statistisk informasjon som er samlet inn av innretningen. Denne kommandoen blir gjenkjent av alle noder på subadresse null, og kan gjenkjennes av alle innretninger. Denne kommandoen blir akseptert enten en sesjon er i gang eller ikke, og blir akseptert fra enhver klide når innretningen er i en sesjon, ikke bare fra sesjonspartneren. Noe av den informasjonen som blir rapportert relaterer til attributter vedrørende noden, og blir rapportert på samme form for alle innretninger på noden. Denne kommandoen blir ikke akseptert fra kringkastede pakker på grunn av den store nettverkstrafikken som da blir generert, mangelen på kringkastingsmuligheter som refererer seg til subadresser, og mangelen på evne til å bestemme om alle responser har blitt mottatt. Denne kommandoen blir sendt som en umiddelbar pakke. The control command report statistics causes the device to which the command is addressed to generate a "CONTROL REPLY" packet containing statistical information collected by the device. This command is recognized by all nodes at subaddress zero, and can be recognized by all devices. This command is accepted whether a session is in progress or not, and is accepted from any node when the device is in session, not just from the session partner. Some of the information that is reported relates to attributes relating to the node, and is reported in the same form for all devices on the node. This command is not accepted from broadcast packets due to the large network traffic that is then generated, the lack of broadcast capabilities that refer to subaddresses, and the lack of ability to determine whether all responses have been received. This command is sent as an immediate packet.

"CONTROL COMMAND" rapporter grensesnittparametre, medførere at klient-innretningen genererer en "CONTROL REPLY" pakke som inneholder informasjon om grensesnittstatus, og tilsvarende modal status hos innretningen. Informasjonen blir rapportert fra det parametersettet som ligger lagret i direktelageret som er assosiert med innretningen, og som på det tidspunkt er i bruk av innretningen. Disse verdiene kan i spesielle tilfeller være forskjellig fra de verdier som er lagret i "CONTROL COMMAND" reports interface parameters, causing the client device to generate a "CONTROL REPLY" packet containing information about interface status, and corresponding modal status of the device. The information is reported from the parameter set stored in the direct storage which is associated with the device, and which is in use by the device at the time. These values may in special cases be different from the values stored in

klientens ikke-flyktige lager. Denne kommandoen blir gjenkjent av alle klienter på en måte som er spesiell for hver klient, er avvist av alle servere, er akseptert av klienter enten en sesjon er i gang eller ikke, og er akseptert fra enhver kilde når en sesjon er igang, og ikke bare fra sesjonspartneren. the client's non-volatile stock. This command is recognized by all clients in a way specific to each client, is rejected by all servers, is accepted by clients whether a session is in progress or not, and is accepted from any source when a session is in progress, and not only from the session partner.

Kommandoen for rapporter grensesnitt parametre må sendes som en umiddelbar pakke for alle andre enn sesjonspartneren, og kan sendes i enten umiddelbar eller normal modus av sesjonspartneren. Spesielle bytes i den administrative informasjons-området 264 av dataområdet 262 (figur 10) av IONET-pakken kan settes av til kom-munikasjonsverdier som er forskjellig fra de parametrene som er lagret i direktelageret. The command for report interface parameters must be sent as an immediate packet for everyone other than the session partner, and can be sent in either immediate or normal mode by the session partner. Special bytes in the administrative information area 264 of the data area 262 (figure 10) of the IONET package can be set aside for communication values that are different from the parameters stored in the direct storage.

"CONTROL COMMAND" sett innretningsparametre fører til at klienten lagrer nye verdier i det ikke-flyktige lageret. Denne kommandoen blir bare akseptert av klientinnretninger og bare når konfigurasjonslåsen ikke er satt, og blir da akseptert fra enhver kilde, ikke bare sesjonspartneren (hvis noen). Denne kommandoen må sendes som en umidddelbar pakke. "CONTROL COMMAND" set device parameters cause the client to store new values in the non-volatile storage. This command is only accepted by client devices and only when the configuration lock is not set, and is then accepted from any source, not just the session partner (if any). This command must be sent as an immediate packet.

I tillegg til nevnte informasjon innen den administrative informasjonsseksjonen av dataområdet i IONET-pakken, kan det være bytes for å identifisere typen av ekstern enhet, et innretningsnavn, typen av innretning som initierte sesjonen, innretningens typespesifikke tjeneste-klasse, identifikasjonen av en på forhånd bestemt partner eller passord for fjernsesjon, samt status for konfigurasjonslåsen. In addition to the aforementioned information within the administrative information section of the data area of the IONET packet, there may be bytes to identify the type of external device, a device name, the type of device that initiated the session, the device type-specific class of service, the identification of a predetermined partner or remote session password, as well as the status of the configuration lock.

"CONTROL COMMAND" sett grensesnitt parametre fører til at klienten setter nye verdier for grensesnitt kontroll og tilsvarende modal status. De nye verdiene blir anvendt for grensesnittet, og blir lagret i klientens direktelager. Disse verdiene kan "CONTROL COMMAND" set interface parameters causes the client to set new values for interface control and corresponding modal status. The new values are applied to the interface, and are stored in the client's direct storage. These values can

også lagres i klientens ikke-flyktige lager. Denne kommandoen kan også nyttes for å hente fram verdier fra det ikke-flyktige lageret og inn i direktelageret. also stored in the client's non-volatile storage. This command can also be used to retrieve values from the non-volatile storage into the direct storage.

Kommandoen sett grensesnittparametere blir gjenkjent av alle klienter på en innretningsspesifikk måte, blir avvist av alle servere, blir alltid akseptert av klienter fra sesjonspartneren og blir akseptert av klienter fra enhver kilde enten den er i en sesjon eller ikke, hvis konfigurasjonslåaen ikke er satt. The set interface parameters command is recognized by all clients in a device-specific way, is rejected by all servers, is always accepted by clients from the session partner, and is accepted by clients from any source whether in a session or not, if the configuration lock is not set.

Kommandoen sett grensesnittparametere må sendes som en umiddelbar pakke for alle andre enn sesjonspartneren, og kan sendes i enten umiddelbar eller normal modus av sesjonspartneren. Tilleggsinformasjon i den administrative informasjonsseksjonen av IONET-pakken relaterer seg til kontroll fra direktelager eller ikke-flyktig lager for å skrive parametre fra pakken inn i direktelageret eller inn i både direktelageret og det ikke-flyktige lageret og for å hente ut parametre fra ikke-flyktig lager og inn i direktelageret. Annen informasjon i den administrative informasjonsseksjonen relaterer seg til inretningsparametre som er typespesifikk. The set interface parameters command must be sent as an immediate packet for anyone other than the session partner, and may be sent in either immediate or normal mode by the session partner. Additional information in the administrative information section of the IONET package relates to control from direct storage or non-volatile storage to write parameters from the package into direct storage or into both direct storage and non-volatile storage and to retrieve parameters from non-volatile warehouse and into direct storage. Other information in the administrative information section relates to device parameters that are type-specific.

"CONTROL COMMAND" lokaliser kan sendes som en kringkastet beskjed av innretninger som prøver å etablere en sesjon i den hensikt å bestemme "RIM" identifikasjons-nummeret og subadressen hos en ønsket mottakerinnretning som forsøkes å lokaliseres ved bruk av det navnet den har fått tildelt. I det blir mottatt flere svar, blir alle untatt det første ignorert. Kommandoen lokaliser blir gjenkjent av alle noder med subadresse null, er akseptert enten en sesjon er i gang eller ikke, blir akseptert fra enhver kilde når innretningen er i en sesjon, og ikke bare fra sesjonspartneren. Kommandoen lokaliser er den eneste kontrollkommandofunksjon som blir akseptert fra kringkastede pakker. The "CONTROL COMMAND" locate may be sent as a broadcast message by devices attempting to establish a session for the purpose of determining the "RIM" identification number and subaddress of a desired receiving device that is attempting to locate using the name it has been assigned. If multiple responses are received, all but the first are ignored. The locate command is recognized by all nodes with subaddress zero, is accepted whether a session is in progress or not, is accepted from any source when the device is in a session, and not just from the session partner. The locate command is the only control command function that is accepted from broadcast packets.

En lokaliseringskommando må sendes til subadresse null hos mottakeren. Kildesubadressen i kontrollsvarpakken identifiserer den spesielle innretningen på den responderende node som har blitt lokalisert ved å sende dens identifikasjonsnummer. Hvis flere innretninger ved den responderende node stemmer med navnet, blir flere svarpakker generert. Hvis ingen innretninger ved nodene som mottar lokaliserings-pakken stemmer med navnet, blir ingen svar generert. A locate command must be sent to subaddress zero at the receiver. The source subaddress in the control response packet identifies the particular device on the responding node that has been located by sending its identification number. If multiple devices at the responding node match the name, multiple response packets are generated. If no devices at the nodes receiving the location packet match the name, no response is generated.

Det at et tidsintervall går ut mens en venter på et svar på en lokaliseringskommando indikerer at det ikke eksisterer noe aktiv innretning som har et navn som stemmer. Lokaliseringskommandoen må sendes som en umiddelbar pakke. Navnet på den responderende pakken blir kodet inn i det administrative informasjonsseksjonen av IONET-pakken. Lokaliseringskommandoen inneholder også en ønsket tjeneste klasse. Hvis verdien er null, må bare navnet være lik, ellers må både navn og tjenesteklasse være lik. Avslutnings-koden i svaret til en lokaliseringskommando skiller mellom det tilfellet der innretningen er i stand til å akseptere en tilkoplingskommando for den spesifiserte tjenesteklasse, og det tilfellet at innretningen ikke er i stand til å akseptere en slik tilkoplingskommando. The fact that a time interval expires while waiting for a response to a locate command indicates that no active device exists that has a matching name. The locate command must be sent as an immediate packet. The name of the responding packet is encoded into the administrative information section of the IONET packet. The locate command also contains a desired service class. If the value is null, then only the name must be equal, otherwise both name and service class must be equal. The termination code in the response to a location command distinguishes between the case where the device is able to accept a connection command for the specified service class, and the case that the device is not able to accept such a connection command.

Som vist i overstående diagram, omfatter kontrollkommandoene på transportnivå oppkopling, videresending, nedkopling, redirigering og resynkronisering. As shown in the diagram above, the transport level control commands include connect, forward, disconnect, redirect and resynchronize.

"CONTROL COMMAND" for oppkopling etablerer en sesjon, hvis ingen allerede er i gang og blir avvist hvis den mottas når en sesjon allerede er i gang. Enten klient eller server kan initiere sesjonen ved å sende oppkoplingskommandoen. Oppkoplings-forespørsler til servere skal generelt sendes til subadressen som returneres som svar The "CONTROL COMMAND" for connection establishes a session, if none is already in progress and is rejected if received when a session is already in progress. Either client or server can initiate the session by sending the connect command. Connection requests to servers should generally be sent to the subaddress that is returned as a response

til en lokaliseringskommando etter den ønskede sesjonspartnerens navn (eller til subadresse null). Serveren kan redirigere sesjonskommunikasjonen til an annen subadresse ved å sende den passende verdien for kilde subadressen ("SSA") 272 (figur 12) feltet i svarpakken. Sesjonstrafikken skal så dirigeres til den mottakersubadressen som mottas fra "SSA"-feltet i svarpakken. to a locate command after the desired session partner's name (or to subaddress zero). The server may redirect the session communication to another subaddress by sending the appropriate value for the source subaddress ("SSA") 272 (Figure 12) field in the response packet. The session traffic must then be directed to the recipient subaddress received from the "SSA" field in the response packet.

Oppkoplingskommandoen må sendes som en umiddelbar pakke. Helst skal den administrative informasjonsseksjonen i "CONTROL COMMAND" pakken for oppkopling inneholde informasjon angående type enhet, dens maskinvare og fastvare eller programvare revisjonnummer, hvilken versjon av protokollen som den tilbyr, dens maksimale subadresse, dens pakkelengde og teller for sendte pakker, dens minimum innkomne pakkers lengde, tiden før en pakke må sendes av en klient, type eksternt utstyr for kilden, et innretningsnavn for kilden, sesjonsinitieringstype for kilden, tjenesteklasse for kilden, og passord for sesjons-initieringen. The connection command must be sent as an immediate packet. Preferably, the administrative information section of the "CONTROL COMMAND" packet for connection should contain information regarding the type of device, its hardware and firmware or software revision number, the version of the protocol it offers, its maximum subaddress, its packet length and counter of packets sent, its minimum received length of packets, the time before a packet must be sent by a client, type of external equipment for the source, a device name for the source, session initiation type for the source, class of service for the source, and password for the session initiation.

Hvis oppkoplingskommandoen blir akseptert, vil en "CONTROL REPLY" pakke bli generert enten oppkoplingsforespøxselen er vellykket eller ikke. Hvis avslutnings-kodefeltet indikerer at sesjonen ikke er blitt vellykket etablert, vil avslutningskoden spesifisere årsaken for feilen. Noen av de årsakene som kan spesifiseres i avslutningskoden for feil i vellykket etablering av sesjonen er kontrollfunksjonen er blitt avvist fordi innretningen er allerede i en sesjon, det er en spesifikasjonsfeil i kontrollfunksjonens parametre, den svarende innretningen støtter ikke den spesielle protokollversjonen eller maskinvare revisjonsnummer eller revisjonsnummer for fastvare eller programvare som er ønsket, innretningen er av utilgjengelig tjeneste-klasse, innretningen er ikke konfigurert for fjern initiering, eller det kan være feil passord eller navn. I tillegg kan den øvrige administrative informasjonen i "CONTROL REPLY" pakken relatere til hvilken protokollversjon som skal nyttes, pakkelengden som skal nyttes, teller for sendte pakker som skal nyttes, maksimal lengde på innkomne pakker, og til den før en må sende en innkommet pakke. If the connect command is accepted, a "CONTROL REPLY" packet will be generated whether the connect request is successful or not. If the termination code field indicates that the session was not successfully established, the termination code will specify the reason for the failure. Some of the reasons that can be specified in the exit code for failure to successfully establish the session are the control function has been rejected because the device is already in a session, there is a specification error in the control function's parameters, the responding device does not support the particular protocol version or hardware revision number or revision number for firmware or software requested, the device is of unavailable class of service, the device is not configured for remote initiation, or there may be an incorrect password or name. In addition, the other administrative information in the "CONTROL REPLY" packet can relate to which protocol version is to be used, the packet length to be used, the counter for sent packets to be used, the maximum length of incoming packets, and to the time before an incoming packet must be sent .

"CONTROL COMMAND" videresend konfigurerer en server innretning til å være en videresender av pakker for lenking mellom nettverk. Når videresendingen først er etablert, vil innretningen hverken tolke eller kvittere for IONET-pakker, men simpelthen sender dem videre i den hensikt å skape et mellomledd. Siden det ikke er mulig å kommunisere med en videresendende innretning, må alle konfigurasjoner av av denne innretningen gjøres før avsendelse av videresendings-kommandoen. Den "CONTROL COMMAND" forward configures a server device to be a forwarder of packets for linking between networks. Once the forwarding is established, the device will neither interpret nor acknowledge IONET packets, but simply forwards them with the intention of creating an intermediary link. Since it is not possible to communicate with a forwarding device, all configurations of this device must be done before sending the forwarding command. It

videresendende innretning opererer ikke tilstandsmaskiner for transportkontroll, men overvåker reverskanalen for å se etter et "CONTROL REPLY" for nedkopling for å vite når videresendinga skal avsluttes. For å unngå tap av ressurser når kommunikasjonen forsvinner på en ureglementær måte, vil videresendinga bli nedkoplet, og innretningen går inn i en uoppkoplet tilstand, hvis ingen kommunikasjon er mottatt i noen retning etter et tidsintervall spesifisert i videresendingskommandoen som etablerte forbindelsen. forwarding device does not operate state machines for transport control, but monitors the reverse channel to look for a "CONTROL REPLY" for disconnection to know when forwarding should end. To avoid loss of resources when communication is lost in an irregular manner, forwarding will be disconnected, and the device will enter a disconnected state, if no communication has been received in any direction after a time interval specified in the forwarding command that established the connection.

Forespørsler om videresendinger skal generelt sendes til subadresse null. Den som skal videresende kan omdirigere kommunikasjonen til en annen subadresse ved å sette en passelig verdi i "SSA"-feltet 272 (figur 12) hos svarpakken. Kommunikasjonen skal så senere dirigeres til den mottakersubadressen som fås fra "SSA" -feltet i svarpakken. Requests for forwarding should generally be sent to subaddress zero. The forwarder can redirect the communication to another subaddress by setting a suitable value in the "SSA" field 272 (Figure 12) of the response packet. The communication will then later be routed to the recipient subaddress obtained from the "SSA" field in the response packet.

Videresendingskommandoen blir avvist hvis den mottas når en sesjon er i gang. Innretninger som ikke er i stand til å fungere som videresendere av pakker (omfatter alle klienter) vil alltid avvise denne kommandoen. Enten klienter eller servere kan initiere videresending ved å sende en videresendongskommando. Videresendings-kommandoen må sendes som en umiddelbar pakke. Den administrative informasjonsseksjonen av IONET-pakken for videresending omfatter fortrinnsvis navnet på det mottakende nettverket, navnet på den ønskede innretningen på mottakersida, den ønskede klasse av tjenester, og kommunikasjonens tidsfrister. The forwarding command is rejected if received when a session is in progress. Devices that are not capable of acting as packet forwarders (includes all clients) will always reject this command. Either clients or servers can initiate forwarding by sending a forwarding command. The forwarding command must be sent as an immediate packet. The administrative information section of the IONET forwarding packet preferably includes the name of the receiving network, the name of the desired device on the receiving side, the desired class of services, and the communication deadlines.

Mottakerinnretningen for den videresendte kommandoen utfører en lokaliserings-funksjon på det ønskede nettverk etter den angitte mottakerinnretningen for å bestemme "RIM ID" og subadresse som kommunikasjonen skal videresendes til. The receiving device for the forwarded command performs a locate function on the desired network according to the indicated receiving device to determine the "RIM ID" and subaddress to which the communication is to be forwarded.

Hvis videresendingskommandoen blir akseptert, blir en svarpakke generert enten forespørselen om videresending er vellykket eller ikke. Hvis feltet for avslutnings-kode inneholder noe kode som indikerer at videresendingen ikke er vellykket etablert, vil avslutningskoden spesifisere årsaken for feilen. Årsakene for feilen kan være de samme som de som tidligere er beskrevet. If the forwarding command is accepted, a response packet is generated whether the forwarding request is successful or not. If the termination code field contains any code indicating that the relay has not been successfully established, the termination code will specify the reason for the failure. The reasons for the error may be the same as those previously described.

En "CONTROL COMMAND" for nedkopling avslutter en sesjon. Nedkoplingskommandoen blir avvist hvis ingen sesjon er i gang. Både klienter og servere kan initiere en nedkoplingskommando. Nedkoplingskommandoen må sendes som en umiddelbar pakke. A disconnect "CONTROL COMMAND" terminates a session. The disconnect command is rejected if no session is in progress. Both clients and servers can initiate a disconnect command. The disconnect command must be sent as an immediate packet.

En "CONTROL COMMAND" for omdirigering sendes samtidig til sesjons-partnerene til to aktive sesjoner fra en node som ønsker å omdirigere trafikken til disse to sesjonene slik at partnerne i disse to sesjonene kommuniserer med hverandre, og ikke lengre med den noden som sender omdirigeringskommandoen. Denne kommandoen må sendes som en umiddelbar pakke. Den administrative informasjonsseksjonen av omdirigeirngspakken omfatter den nye mottakeridentifikasjonen, og den nye mottakerens subadresse. Avslutning av en omdiriggeringskommando involverer A "CONTROL COMMAND" for redirection is sent simultaneously to the session partners of two active sessions from a node that wants to redirect the traffic to these two sessions so that the partners in these two sessions communicate with each other, and no longer with the node that sends the redirection command. This command must be sent as an immediate packet. The administrative information section of the redirect packet includes the new recipient identification, and the new recipient's subaddress. Ending a redirect command involves

resynkronisering, som beskrevet nedenfor. resynchronization, as described below.

En "CONTROL COMMAND" for resynkronisering fører til at sender- og mottakertilstandsmaskinene på hver ende av en sesjon tilbakestiller sin status ved etableringen av en sesjon. Dette åpner for muligheten til at kommunikasjonen kan reetableres uten nedkopling og gjenoppkopling i de tilfeller hvor sekvensnummer eller annen synkronisering mellom de to er gått tapt. A "CONTROL COMMAND" for resynchronization causes the sender and receiver state machines at each end of a session to reset their state upon session establishment. This opens up the possibility that communication can be re-established without disconnection and reconnection in cases where the sequence number or other synchronization between the two has been lost.

Enten klienter eller servere kan sende resynkroniseirngskommando når en sesjon er i gang. Resynkroniseirngskommandoen blir avvist hvis ingen sesjon er i gang. Resynkroniseirngskommandoen må sendes som en umiddelbar pakke. Kontrollfunksjonene for sesjonsnivå omfatter "flush" buffere, kjør utvidet diagnostikk, og rapporter status. Kontrollfunksjonene for sesjonsnivå er tolket klientenes grensesnittkontroll i fastvare. Detaljene i de fleste av disse kommandoene er typespesifikke, og bare deres felles aspekter er diskutert nedenfor. Bemerk at disse kontrollfunksjonene på sesjonsnivå sendes i pakker som der "TXSB"-verdien indikerer dataoverføringer ("DATAF"), men verdien på "PFN" indikerer klient kontroll-forespørsler og klient kontroll svar. Either clients or servers can send resynchronization command when a session is in progress. The resynchronization command is rejected if no session is in progress. The resync command must be sent as an immediate packet. The session-level control functions include "flush" buffers, run extended diagnostics, and report status. The session-level control functions are interpreted as the client's interface control in firmware. The details of most of these commands are type-specific, and only their common aspects are discussed below. Note that these session-level control functions are sent in packets such as where the "TXSB" value indicates data transfers ("DATAF"), but the value of "PFN" indicates client control requests and client control responses.

Kontrollfunksjonen "flush" buffer fører til at mottekeren forkaster alle pakker eller deler av pakker tilstede i mottakerbufferet innen det distribuerte adapteret, eller lavnivå programvare. Kommandoen "flush" buffer er akseptert av enhver innretning som har en sesjon igang, og er ignorert når ingen sesjon er igang. "Flush" buffer kommandoen blir sendt som en umiddelbar pakke. The "flush" buffer control function causes the receiver to discard all packets or parts of packets present in the receiver buffer within the distributed adapter, or low-level software. The command "flush" buffer is accepted by any device that has a session in progress, and is ignored when no session is in progress. The "flush" buffer command is sent as an immediate packet.

Kontrollfunksjonen kjør utvidet diagnostikk fører til at innretningen utfører en diagnostiseirngfunksjoner og rapporterer resultatet av disse. Disse disgnostiserings-funksjonene kan være identisk til de som alltid kjøres ved oppstart, eller kan være utvidete eller spesielle tester. Denne kommandoen blir gjenkjent av alle klienter på en måte som er spesiell for den typen. Klienter som ikke implementerer utvidet diagnostiseringsfunksjoner rapporterer vellykket fullførelse av denne kommandoen. Denne kommandoen blir gjenkjent av alle klienter, blir avvist av alle servere, og blir bare akseptert når en sesjon er igang. Kommandoen kjør utvidet diagnostikk kan sendes enten i umiddelbar eller normal pakke. Den administrative informasjonsseksjonen i IONET-kommandoen kan inkludere informasjon omkring diagnostikk-parametre, og den administrative informasjonsseksjonen i IONET svarpakken kan inneholde informasjon vedrørende diagnosens resultater. The control function run extended diagnostics causes the device to perform a diagnostic function and report the result of these. These diagnostic functions may be identical to those always run at startup, or may be extended or special tests. This command is recognized by all clients in a way that is specific to that type. Clients that do not implement extended diagnostics capabilities report successful completion of this command. This command is recognized by all clients, is rejected by all servers, and is only accepted when a session is in progress. The command run extended diagnostics can be sent either in immediate or normal packet. The administrative information section in the IONET command can include information about diagnostic parameters, and the administrative information section in the IONET response packet can contain information about the results of the diagnosis.

Kontrollfunksjonen rapporter ststus medfører at innretningen genererer en svarpakke som inneholder informasjon om ststusen til inn/ut-grensesnittet for innretningen. Denne kommandoen gjenkjennes av alle klienter på en måte som er spesifikk for den typen. Kommandoen blir avvist hvis ingen sesjon er i gang. Kommandoen kan sendes enten som en normal eller som en umiddelbar pakke. Minimums-responsen i IONET svarpakken består av standardisert grensesnittkontroll og status diskutert nedenfor i sammenheng med bytestrømsfunksjonene på sesjonsnivå. The report ststus control function causes the device to generate a response packet containing information about the ststus to the input/output interface for the device. This command is recognized by all clients in a way specific to that type. The command is rejected if no session is in progress. The command can be sent either as a normal or as an immediate packet. The minimum response in the IONET response packet consists of standardized interface control and status discussed below in the context of the session-level byte-stream functions.

Bytestrømsfunksjonene på sesjonsnivå omfatter "DATAI", for å overføre initielle eller mellomliggende datapakker: "DATAF" for å overføre avslutnings- eller enkle datapakker; "IDLE" for å plassere mottaker tilstandsmaskinen i en stopptilstand; og "NOP" for beskjeder som holder liv i kommunikasjonen. Bruken av disse funksjonene blir diskutert nedenfor i samband med transport kontrollens tilstandsmaskiner. The session-level byte-stream functions include "DATAI", to transmit initial or intermediate data packets: "DATAF" to transmit termination or simple data packets; "IDLE" to place the receiver state machine in a stop state; and "NOP" for messages that keep communication alive. The use of these functions is discussed below in connection with transport control's state machines.

Den administrative informasjonsdelen av dataområdet av "DATAF og "DATAF" IONET-pakker er nyttet for å standardisere grensesnittskontroll og status fasilitet. Fordelen med standardisert grensesnittskontroll og status fasilitet er at det gir midler for direkte tilgang på innretningskontroll og statusinformasjon på en måte som er uavhengig av det fysiske grensesnittet til typen av inn/ut-innretning. At inn/ut-innretningen er typeuavhengig tillater en enkel implementering av lavnivå programvare ved en server for å kommunisere med og styre så å si alle typer av inn/ut-innretninger. The administrative information part of the data area of "DATAF and "DATAF" IONET packages is used to standardize interface control and status facility. The advantage of standardized interface control and status facility is that it provides means for direct access to device control and status information in a way that is independent of the physical interface to the type of I/O device The fact that the I/O device is type-independent allows a simple implementation of low-level software at a server to communicate with and control virtually any type of I/O device.

Det administrative dataområdet av "DATAI" og "DATAF" IONET-pakkene brukes for å holde et inndata status ord ("Input Status Word", "ISW") som rapporterer status hos de inngående eksterne grensesnitts kontrollsignaler og gir en indikasjon på alminnelig strøm av/på og alminnelig klar/ikke-klar status; et status maske ord ("Status Mask Word", "SMW") som velger hvilke inngangsstatusendringer som er av interesse for sesjonspartneren og bør medføre rapportering i den administrative data delen; og et utdata kontrollore ("Output Control Word","OCW") som spesifiserer oppsettet av signal for eksterne grensesnitts utgangskontroll. The administrative data area of the "DATAI" and "DATAF" IONET packets is used to hold an input status word ("Input Status Word", "ISW") which reports the status of the input external interface control signals and provides an indication of the general flow of /on and general ready/not ready status; a status mask word ("Status Mask Word", "SMW") which selects which input status changes are of interest to the session partner and should result in reporting in the administrative data part; and an output control word ("Output Control Word","OCW") which specifies the setup of the external interface output control signal.

Alle "DATAI"- og DATAF"-pakker som nyttes for dataoverføring nyttes som føl-ger: Hvis den administrative datadelen er null, er det ingen endring i grensesnitt kontroll eller status; hvis det er nøyaktig to bytes av administrativ data er disse "ISW", hvis det er nøyaktig fire bytes, er disse "ISW" etterfulgt av "SMW", hvis det er nøy-aktig seks bytes med administrative data, er disse respektive "ISW", "SMW", og "OCW", og hvis det er flere enn seks bitgtupper, er de første seks "ISW", "SMW", og "OCW", mens øvrige bytes er typespesifikk. For å gi muligheten til rapportering og setting av informasjon i senere ord uten å på virke informasjonen i fotutgående ord, er den mest signifikante bit av hver "ISW", "SMW" og "OCW" en validieringsbit. Et ord med validieringsbit satt til null, blir ignorert. For kommunikasjon fra klienter til servere, rapporterer "ISW" ekstern grensesnittskontroll sin inndata status, "SMW" rapporterer det nåværende maskesetting, og "ISW" rapporterer ekstern grensesnittskontroll sin utdata status. For kommunikasjon fra servere til klienter er "ISW" ikke i bruk, "SMW" brukes for å sette maskeverdien, og "ISW" setter ut-ganger for den eksterne grensesnittskontroll. For kommunikasjon fra servere til servere er "ISW", "SMW" og "OCW" generelt ikke ibruk, og for kommunikasjon fra klienter til klienter er disse ordene generelt ikke i bruk. All "DATAI" and DATAF" packets used for data transfer are used as follows: If the administrative data portion is zero, there is no change in interface control or status; if there are exactly two bytes of administrative data, these are "ISW ", if there are exactly four bytes, these are "ISW" followed by "SMW", if there are exactly six bytes of administrative data, these are respectively "ISW", "SMW", and "OCW", and if there are more than six bit bits, the first six are "ISW", "SMW", and "OCW", while the other bytes are type-specific. To give the possibility of reporting and setting information in later words without affecting the information in the output word, the most significant bit of each "ISW", "SMW" and "OCW" is a validation bit. A word with the validation bit set to zero is ignored. For communication from clients to servers, the "ISW" external interface control reports its input status , "SMW" reports the current mask setting, and "ISW" reports the external interface check its output status. For communication from servers to clients, "ISW" is not used, "SMW" is used to set the mask value, and "ISW" sets outputs for the external interface control. For server-to-server communication, "ISW", "SMW" and "OCW" are generally not used, and for client-to-client communication, these words are generally not used.

En strategi dom er tilgjengelig fra foreliggende oppfinnelse for å oppnå sikkerhet på sesjonsnivåfor databeskjed kommunikasjon er basert på bruken av "SID" for å forhindre at at en tredje innretning blander seg inn i kommunikasjonen mellom et par innretninger som deltar i en IONET-sesjon. Når en sesjon er i gang, er data- og kontroll-pakker bare akseptert hvis deres "SID" stemmer med den "SID" på den noden som sendte den opprinnelige oppkoplingsfunksjonspakken, eller som sendte svaret til den opprinnelige oppkoplingspakken. I tillegg til å være veldig enkel og effektiv å implementere og ikke kreve noe ekstra maskinvare, gir denne sikkerhets-teknikken en barriere mot uautorisert kommunikasjon fra de andre nodene. Dette oppstår på grunn av at ARCNET lenkenivå maskinvare hindrer overføringen av en "SID" annen enn dens etablerte "SID". A strategy available from the present invention to achieve session-level security for data message communication is based on the use of the "SID" to prevent a third device from interfering with the communication between a pair of devices participating in an IONET session. When a session is in progress, Data and Control packets are only accepted if their "SID" matches the "SID" of the node that sent the original Connect Function packet, or that sent the response to the original Connect packet. In addition to being very simple and efficient to implement and requiring no additional hardware, this security technique provides a barrier against unauthorized communication from the other nodes. This occurs due to ARCNET link level hardware preventing the transmission of a "SID" other than its established "SID".

Sesjoner kan etableres og kontrolleres ved bruken av passord og konfigurasjons-låser. Et passord er spesiell informasjon etablert i lageret hos en innretning. For å kunne etablere en sesjon, må oppkoplingskommando-pakken stamme fra en innretning som har en "SID" som korresponderer med passordet, eller er innen en gruppe av "SID" definert av passordet. Alle klinter vedlikeholder spesielle innretningspmetre i ikke-flyktig lager. Innholdet av dette ikke-flyktige lageret kan aksesseres og opp-dateres av IONET kontrollfunksjoner hvis ikke en konfigurasjon slås er satt av en annen IONET-kontrollfunksjon. Når konfigurasjonslåsen først er satt, er det ikke mulig å gjøre noen endringer i det ikke-flyktige lageret før konfigurasjonslåsen er fjernet ved menneskelig inngrep på innretningen, f.eks. operere en bryter. Setting av konfigurasjonslåsen tillater innretninggens konfigurasjon fra å bli modifisert uten autorisasjon. Sessions can be established and controlled using passwords and configuration locks. A password is special information established in the storage of a device. In order to establish a session, the connection command packet must originate from a device that has a "SID" corresponding to the password, or is within a group of "SIDs" defined by the password. All clints maintain special facility meters in non-volatile storage. The contents of this non-volatile storage can be accessed and updated by IONET control functions unless a configuration switch is set by another IONET control function. Once the configuration lock is set, it is not possible to make any changes to the non-volatile storage until the configuration lock is removed by human intervention on the device, e.g. operate a switch. Setting the configuration lock allows the device's configuration from being modified without authorization.

Klienter kan konfigureres for fjern sesjonsinitiering, i et slik tilfelle må en server initiere sesjonen. Ved å beskytte filene med konfigurasjonsinformasjonen ved de relevate serverene, kan brukere forhindres fra å endre lokasjonen og/eller karakteristikken på den prosessen som vil initiere sesjonen. Klienter kan konfigureres for forhåndsbestemt sesjonsinitiering, i det tilfellet er sesjonspartneren idintifisert og fast i det ikke-flyktige lageret hos klienten. Konfigursjonslåsen blir satt for å forhindre at brukeren og applikasjonsprogramvaren ikke endrer sesjonsinitieringstypen og sesjonspartneren. Fordi klienter konfigurert for forhåndsbestemte sesjoner ikke aksepterer beskjeder eller sesjonspartner identifikasjon fra brukeren, gir forhåndsbestemte sesjoner muligheten til en direkte, dedikert forbindelse mellom en enkelt server og en enkelt klient på tross av den multikontekst- og multiplekset naturen hos kommuniksa-sjonsmediet. Denne formen for dedikert punkt-til-punkt kommunikasjonen på et multiplekset medium er ikke typisk tilgjengelig på konvensjonelle inn/ut-kanaler unn-tatt gjennom bruken av dedikert punkt-til punkt enkel kabel. Forespørsler om fjern sesjonsinitiering som mottas ved enhver innretning kan kreve et passord hvis ikke typen av sesjonsinitiering er er definert på forhånd, for derigjennom tillate innretninger å bli konfigurert for å hindre uautorisert tilgang. I tilfellet for distribuerte adaptere, kan det fjerne passordet ikke leses ut eller bli modifisert hvis konfigurasjonslåsen er satt. Clients can be configured for remote session initiation, in which case a server must initiate the session. By protecting the configuration information files at the relevant servers, users can be prevented from changing the location and/or characteristics of the process that will initiate the session. Clients can be configured for predetermined session initiation, in which case the session partner is identified and fixed in non-volatile storage at the client. The configuration lock is set to prevent the user and application software from changing the session initiation type and session partner. Because clients configured for predetermined sessions do not accept messages or session partner identification from the user, predetermined sessions allow for a direct, dedicated connection between a single server and a single client despite the multi-context and multiplexed nature of the communication medium. This form of dedicated point-to-point communication on a multiplexed medium is not typically available on conventional input/output channels except through the use of dedicated point-to-point single cable. Requests for remote session initiation received at any device may require a password if the type of session initiation is not defined in advance, thereby allowing devices to be configured to prevent unauthorized access. In the case of distributed adapters, the remote password cannot be read or modified if the configuration lock is set.

Tilstandsmaskinen for tilstandskontroll opererer for å gi den funksjonaliteten som er nødvendig for å kommunisere over IONET kommunikasjonskanalen, og operere i respons til IONET protokollen sm beskrevet overfor. Kommunikasjonen er en tovegs logisk lenke, på sesjonsnivå, mellom par av kommuniserende innretninger. Hvert logisk ledd involverer to sendere og to mottakere, som alle er komtrollert av hver sin enkle tilstandsmaskin. Hver sesjon har en forekomst av både sender- og mottakertilstandsmaskin som opererer ved hver node som deltar i sesjonen. The state machine for state control operates to provide the functionality necessary to communicate over the IONET communication channel, and operate in response to the IONET protocol as described above. The communication is a two-way logical link, at the session level, between pairs of communicating devices. Each logic link involves two transmitters and two receivers, each of which is controlled by a simple state machine. Each session has an instance of both the sender and receiver state machine operating at each node participating in the session.

Hensikten med tilstandsmaskinen er å synkroniserer leveransen av bytes, kvittere vellykkede mottak av pakker, detektere og retransmittere savnede eller tapte pakker, detektere og ignorere dupliserte pakker, gi periodiske "holde-liv-i"-pakker ved de perioder når ingen data overføres, gi flytkontroll for å hindre overføring av pakker som det ikke er tilgjengelig noe mottakerbuffer for, og unngår unødvendig flytkontroll aktiviteter ved å stoppe kommunikasjonen i perioder når det ikke er noe data å sende og/eller bufferplass for å motta data, for deretter å gjenoppstarte kommunikasjonen når disse betingelsene igjen er tilstede. The purpose of the state machine is to synchronize the delivery of bytes, acknowledge successful receipt of packets, detect and retransmit missing or lost packets, detect and ignore duplicate packets, provide periodic "keep-alive" packets during periods when no data is being transmitted, provide flow control to prevent transmission of packets for which no receiver buffer is available, and avoids unnecessary flow control activities by stopping communication during periods when there is no data to send and/or buffer space to receive data, then restarting communication when these conditions are again present.

"TXSB" i IONET-overskrifta kommuniserer tilstanden hos den sender tilstandsmaskinen som sender pakken til den mottaker tilstandsmaskinen som skal motta pakken. "RXSB" kommuniserer tilstanden hos den mottaker tilstandsmaskinen ved den innretningen som sender denne pakken (ikke den mottaker tilstandsmaskinen som mottar pakken) til den sender tilstandsmaskinen ved den innretningen som er "TXSB" in the IONET header communicates the state of the sending state machine that sends the packet to the receiving state machine that will receive the packet. "RXSB" communicates the state of the receiving state machine at the device sending this packet (not the receiving state machine receiving the packet) to the sending state machine at the device that is

mottaker av denne pakken (ikke den sender tilstandsmaskinen som sender denne pakken). recipient of this packet (not the sending state machine sending this packet).

Kvittering for hver pakke foreligger som "RXSB" i den neste pakken sendt av den senderen ved den innretning som mottok den pakken som det kvitteres for. I perioder med bidireksjonell kommunikasjon vil denne påhengte kvitteringen ta vare på nettverkets båndbredde. I perioder med unidireksjonell kommunikasjon vil det ikke være noen pakker som gå i motsatt retning, likevel vil pakker som inneholder kvittering bli generert. Når enten sender tilstandsmaskinen eller mottaker tilstandsmaskinen har en statusendring å rapportere, blir en pakke sendt. Hvis en av tilstandsmaskinene ikke har noe å sende på det tidspunkt, rapporterer den ingen status ved hjelp av en "NOP"-kode i statusbyten. Acknowledgment for each packet is available as "RXSB" in the next packet sent by that sender at the device that received the packet for which it is acknowledged. During periods of bidirectional communication, this pending receipt will take care of the network's bandwidth. During periods of unidirectional communication, there will be no packets going in the opposite direction, however packets containing acknowledgment will be generated. When either the sending state machine or the receiving state machine has a state change to report, a packet is sent. If one of the state machines has nothing to send at that time, it reports no status using a "NOP" code in the status byte.

Teller for maksimalt antall pakker blir etablert mellom sesjonspartnere på samme tid som selve sesjonen blir etablert. Disse tellerne, som ikke trenger å være de samme for de to kommunikasjonsretningene, spesifiserer maksimalt antall datapakker som senderen kan sende uten en kvittering fra mottakeren. (Kommandopakker blir alltid sendt en ad gangen med svar for hver kommando.) Senderen må bevare kopier av hele gruppen av datapakker helt til kvittering er mottatt for å holde muligheten for retransmisjon åpen. Hvis en feil i mottak eller synkronisering oppstår, vil denne statusen rapporteres med en gang. Umiddelbare datapakker og alle kommandopakker blir kvittert for ved mottak, uavhengig av senderpakketelleren. Pakker med normal prioritet kan utpekes til å generere positive kvitteringer. Mottakeren må ha tilstrekkelig antall buffere for å ta vare på det maksimale antall med ukvitterte pakker før det indikeres til senderen at den er klar for mottak. Counter for the maximum number of packets being established between session partners at the same time as the session itself is being established. These counters, which need not be the same for the two directions of communication, specify the maximum number of data packets that the sender can send without an acknowledgment from the receiver. (Command packets are always sent one at a time with replies for each command.) The sender must keep copies of the entire group of data packets until acknowledgment is received to keep the possibility of retransmission open. If an error in reception or synchronization occurs, this status will be reported immediately. Immediate data packets and all command packets are acknowledged upon receipt, regardless of the transmitter packet counter. Packages with normal priority can be designated to generate positive receipts. The receiver must have a sufficient number of buffers to take care of the maximum number of unacknowledged packets before indicating to the sender that it is ready for reception.

Normal verdi for sendepakketeller er én pakke, som resulterer i positiv kvittering for hver pakke som sendes. Den høyeste tillatte pakketellerverdien er 15, og er begrenset til bruken av et tall på fire biter for å holde vedlike synkroniseringa av pak-keleveransene. Senderpakketelleren brukt av enhver innretning bør ikke overstige en verdi mindre enn antall pakker den assosierte mottakertilstandsmaskinen kan holde uten å måtte kople ut "RIM" mottakeren. Jo høyere senderpakketeller, dess mindre båndbredde på nettverket og mindre prosesseringstid nyttes for å sende kvitteringer, og mindre tid må gå mellom suksessive transmisjoner; men et større antall buffere må tilbys av sendertilstandsmaskinen for å behandle det mulige behovet for retransmisjon. Normal value for send packet counter is one packet, which results in positive acknowledgment for each packet sent. The highest allowed packet counter value is 15, and is limited to the use of a number of four bits to maintain the synchronization of the packet deliveries. The transmitter packet counter used by any device should not exceed a value less than the number of packets the associated receiver state machine can hold without having to disconnect the "RIM" receiver. The higher the sender packet counter, the less bandwidth on the network and the less processing time used to send receipts, and the less time must pass between successive transmissions; but a larger number of buffers must be provided by the transmitter state machine to handle the possible need for retransmission.

Operasjon for sender og mottakertilstandsmaskiner er forholdsvis enkel å implementere i enten maskinvare eller programvare. Programvareinnplementering er å fore-trekke på grunn av økonomien, og fordi maskinvareinnplementering vil resultere i en uakseptabel stor fysisk størrelse for det distribuerte adapteret, for de fleste applikasjoner. Fig. 13 og 14 viser den generelle tilstandsovergangen med hensyn på hvilke kriter-ier som flytter sender og mottakertilstandsmaskinene mellom deres tilstander. Kriter-iet som gjør at tilstandsmaskinen forblir i samme tilstand er karakterisert ved enten komplett bestemmelse basert på mottatt informasjon som vist i de følgende tilstands-endringstabeller i figurene 15, 16, 17 og 18 eller ved mottak av pakker som er utenfor protokollen og derfor ignorert og forlater maskinen i den samme status samme tilstand. Fig. 13 viser de fem grunntilstander for senderen: Sender aktiv ("Transmitter Active", "TA") Når sender har informasjon å sende og er i gang med å sende eller forsøker å sende; sender venter ("Transmitter Waiting", "TW") når senderen er i stand til å sende data når det gjelder flytkontrollen, men ikke har noe å sende, og derfor venter på de interne forhold innenfor dens node for å framskaffe mer data; sender stoppet ("Transmitter Stopped", "TS"), som viser at sendinga har blitt stoppet på grunn av transportnivå flytkontroll, det vil si en opptatt-indikasjon fra mottakertilstandsmaskinen på det motsatte enden av sesjonen; umiddelbar modus sender aktiv ("Immediate Mode Transmitter Activ", "ITA") endret fra en normal modus når det er en umiddelbar pakke som skal sendes; og umiddelbar modus sender stoppet ("Immediate Mode Transmitter Stopped", "ITS") som er ekvivalent med "TS" men oppstår på grunn av transport flytkontroll når den er i umiddelbar modus. Tilbakefall fra umiddelbar modus til normal modus er implisitt så snart som at alle de umiddelbare pakker har blitt sendt. Status som indikerer ut av sesjon er strengt tatt ikke en status, men heller en tilstand hvor tilstandsmaskinen ikke opererer på grunn av at ingen sesjon er igang. Ut av sesjonstilstanden er entret etter tilbakestilling av kanalen eller noden, såvel som et resultat av avslutning av sesjonen enten gjennom nedkopling kontrollfunksjonen eller et tidsutløp som terminerer sesjonen. Operation for transmitter and receiver state machines is relatively easy to implement in either hardware or software. Software implementation is preferred due to economics, and because hardware implementation would result in an unacceptably large physical size for the distributed adapter, for most applications. Figs 13 and 14 show the general state transition with respect to which criteria move the transmitter and receiver state machines between their states. The criterion that causes the state machine to remain in the same state is characterized by either complete determination based on received information as shown in the following state change tables in figures 15, 16, 17 and 18 or by receiving packets that are outside the protocol and therefore ignored and leaves the machine in the same status same condition. Fig. 13 shows the five basic states for the transmitter: Transmitter active ("Transmitter Active", "TA") When the transmitter has information to send and is in the process of sending or attempting to send; transmitter waiting ("Transmitter Waiting", "TW") when the transmitter is able to send data in terms of flow control, but has nothing to send, and therefore waits for the internal conditions within its node to provide more data; transmitter stopped ("Transmitter Stopped", "TS"), indicating that the transmission has been stopped due to transport level flow control, that is, a busy indication from the receiver state machine at the opposite end of the session; immediate mode transmitter active ("Immediate Mode Transmitter Activ", "ITA") changed from a normal mode when there is an immediate packet to be transmitted; and immediate mode transmitter stopped ("Immediate Mode Transmitter Stopped", "ITS") which is equivalent to "TS" but occurs due to transport flow control when in immediate mode. Fallback from immediate mode to normal mode is implicit as soon as all the immediate packets have been sent. Status indicating out of session is not strictly speaking a status, but rather a state where the state machine does not operate due to no session being active. Out of session state is entered after resetting the channel or node, as well as as a result of terminating the session either through the disconnection control function or a timeout that terminates the session.

Når en sesjon etableres, går sendertilstandsmaskinen inn i "TS" ("Sender Stopped") tilstand på grunn av det faktum at før det mottakende innretningen har indikert at den er klar til å ta imot data, må senderen anta at innretningen kan være opptatt. På samme måte, innen enhver sesjon, er den første ting som kommuniserer i sesjonen en klarindikasjon fra mottaker sendt til senderen om å ta senderen ut av "TS" tilstanden. De gjenværende tilstander og årsaker som fører til bevegelse mellom tilstander vil forstås på bakgrunn av diagrammet i fig. 13. When a session is established, the transmitter state machine enters the "TS" ("Sender Stopped") state due to the fact that before the receiving device has indicated that it is ready to receive data, the sender must assume that the device may be busy. Likewise, within any session, the first thing communicated in the session is a clear indication from the receiver sent to the transmitter to take the transmitter out of the "TS" state. The remaining states and causes that lead to movement between states will be understood on the basis of the diagram in fig. 13.

Fig. 14 viser de fem grunnleggende mottakertilstander: mottaker aktiv ("Receiver Active", "RA") når mottakeren mottar informasjon; mottaker venter ("Receiver Waiting", "RW") når mottakeren er i stand til å motta data når det gjelder flytkontroll men ikke egentlig mottar data og derfor venter til data skal bli tilgjengelig; mottaker stoppet ("Receiver Stopped", "RS") indikerer at sendinga av data har blitt stoppet som et resultat av en indikasjon fra sendertilstandsmaskinen på det motsatte ende av sesjonen om at ingen flere data trenger å sendes denne gangen; umiddelbar modus mottaker aktiv ("Immediate Mode Receiver Activ", "IRA") entret fra normal modus når det er umiddelbare pakker som skal mottas; og umiddelbar modus mottaker venter ("Immediate Mode Receiver Waiting", "IRW"), som er ekvivalent med "RW", men oppstår på grunn av tranportnivå flytkontroll når en er i umiddelbar modus. Tilbakefall fra umiddelbar modus eller normal modus er implisitt så snart som hver umiddelbare pakke har blitt kvittert. Statusen indikert som ut av sesjon er strengt talt ikke en status, men heller en tilstand hvor tilstandsmaskinen ikke opererer på grunn av at ingen sesjon er i gang. Ut av sesjonstilstanden er etter en tilbakestilling av IONET-kanalen eller noden, såvel som et resultat av slutten på sesjonen enten gjennom en nedkoplingskontrollfunksjon eller tidsforløp som terminerer sesjonen. Fig. 14 shows the five basic receiver states: receiver active ("Receiver Active", "RA") when the receiver receives information; receiver waiting ("Receiver Waiting", "RW") when the receiver is able to receive data in terms of flow control but is not actually receiving data and therefore waits for data to become available; receiver stopped ("Receiver Stopped", "RS") indicates that the transmission of data has been stopped as a result of an indication from the transmitter state machine at the opposite end of the session that no more data needs to be sent this time; immediate mode receiver active ("Immediate Mode Receiver Activ", "IRA") entered from normal mode when there are immediate packets to be received; and Immediate Mode Receiver Waiting ("IRW"), which is equivalent to "RW", but occurs due to transport-level flow control when in immediate mode. Fallback from immediate mode or normal mode is implicit as soon as each immediate packet has been acknowledged. The status indicated as out of session is not strictly speaking a status, but rather a state where the state machine is not operating due to the fact that no session is in progress. Out of session state is after a reset of the IONET channel or node, as well as a result of the end of the session either through a disconnect control function or timeout that terminates the session.

Når det gjelder diagrammet for mottakertilstandsmaskinen, vist i fig. 14, er tilstander og tall og retning og de endringsvilkårne som legger tilstandene, identisk med diagrammet for sendertilstandsmaskinen i fig. 13, bortsett fra at endring fra ut av sesjonsstilstand går til "RW" (mottaker venter) tilstand heller enn "RS" (mottaker stoppet) tilstand ved etablering av sesjonen. Bemerk sammenparinga av tilstander vist i figurene 13 og 14. Ordinert er "TA" og "RA" det par som tar seg av aktiv kommunikasjon. Hvis senderen ikke har noe mer å sende, indikerer den passiv og går til "TW" tilstand. Passivbeskjeden fra senderen plasserer mottakeren i "RS" tilstand. Mottakeren vil flyttes fra "RS" tilstand ved at senderen igjen blir aktiv, hvilket er en endring fra "TW" tilbake til "TA". Hvis mottakeren bruker opp alle buffere som skal holde innkomne data, indikerer den en ikke klar tilstand, ved at den går fra "RA" til "RW". Dette flytter senderen inn i "TS" tilstanden. Det som flytter senderen ut av "TS" tilstanden er en klarindikasjon fra mottakeren, som oppstår når mottakeren flyttes fra "RW" tilbake til "RA" når ledige buffere igjen er tilgjengelige. Når aktiv kommunikasjon foregår, er både senderen og mottakeren i sine aktive tilstander, "TA" og "RA". Hvis sendinga har blitt suspendert på grunn av at senderen ikke har noe mere å sende, er senderen i "TW" og mottakeren i "RS", men hvis sendinga har blitt stoppet på grunn av at mottakeren ikke har noe ledig plass for mer data, er mottakeren i "RW" og senderen i "TS". Regarding the receiver state machine diagram shown in Fig. 14, the states and numbers and direction and the change conditions that set the states are identical to the diagram for the transmitter state machine in fig. 13, except that change from out of session state goes to the "RW" (receiver waiting) state rather than the "RS" (receiver stopped) state when establishing the session. Note the pairing of states shown in figures 13 and 14. Ordinarily, "TA" and "RA" are the pair that take care of active communication. If the transmitter has nothing more to transmit, it indicates passive and goes to "TW" state. The passive message from the sender places the receiver in "RS" state. The receiver will be moved from the "RS" state by the transmitter becoming active again, which is a change from "TW" back to "TA". If the receiver uses up all buffers to hold incoming data, it indicates a not ready state by going from "RA" to "RW". This moves the transmitter into the "TS" state. What moves the transmitter out of the "TS" state is a clear indication from the receiver, which occurs when the receiver is moved from "RW" back to "RA" when free buffers are again available. When active communication is taking place, both the transmitter and receiver are in their active states, "TA" and "RA". If the transmission has been suspended because the sender has nothing more to send, the sender is in "TW" and the receiver is in "RS", but if the transmission has been stopped because the receiver has no free space for more data, is the receiver in "RW" and the transmitter in "TS".

Mer spesifikke detaljer når det gjelder operasjonen av sender og mottakertilstandsmaskinene er diskutert nedenfor i forbindelse med figurene 15, 16, 17 og 18. More specific details regarding the operation of the transmitter and receiver state machines are discussed below in connection with Figures 15, 16, 17 and 18.

Sendertilstandsmaskinen tar seg av alle utgående pakker for en gitt innretning, gir sendertilstandsbyte "TXSB" for alle pakker som den behandler, genererer sekvensnummer for utgående datapakker, sammenholder kvitteringer med pakker som har blitt sendt, retransmitterer ukvitterte pakker etter at et tidsforløp har gått ut, genererer holde-liv-i-pakker ved forhåndsbestemte tidsintervall i perioder når ingen utgående data er tilgjengelig, og bryter forbindelsen hvis mer enn en større andre forhåndsbestemte tidsperiode går ut uten et tilstandsvar fra den korresponderende mottakertilstandsmaskinen. The transmitter state machine handles all outgoing packets for a given device, provides the transmitter state byte "TXSB" for all packets it processes, generates sequence numbers for outgoing data packets, correlates acknowledgments with packets that have been sent, retransmits unacknowledged packets after a timeout, generating keep-alive packets at predetermined time intervals during periods when no outgoing data is available, and disconnecting if more than a larger second predetermined time period elapses without a state response from the corresponding receiver state machine.

Sendertilstander for normal modus er vist i fig. 15. Tilstandene er sender aktiv ("Transmitter Activ", "TA") entret når det er utgående data å sende og når senderen venter på kvittering for avsendte pakker; sender venter ("Transmitter Waiting", "TW"), entret når den siste sendte pakke har blitt kvittert og det ikke er noe mer utgående data tilgjengelig; og sender stoppet ("Transmitter Stopped", "TS"), entret når mottaker har stoppet kommunikasjonen på grunn av at ingen buffere er tilgjengelig hos mottakeren. Avsending av normale pakker og av umiddelbare pakker er behandlet som uavhengige aktiviteter. Det finnes en halv-avhengig sendetilstands-maskin for umiddelbare pakker, vist i fig. 16, som nytter "ITA" og "ITS" sendertilstander. Etter tilbakestilling, såvel som når ingen umiddelbare pakker venter eller avventer ei kvittering, er sendertilstandsmaskinen i normal modus og bruker "TA", "TW" og "TS". Transmitter states for normal mode are shown in fig. 15. The states transmitter active ("Transmitter Active", "TA") are entered when there is outgoing data to send and when the sender is waiting for receipt of sent packets; transmitter waiting ("Transmitter Waiting", "TW"), entered when the last transmitted packet has been acknowledged and no more outgoing data is available; and transmitter stopped ("Transmitter Stopped", "TS"), entered when the receiver has stopped communication due to no buffers being available at the receiver. Dispatch of normal packages and of immediate packages are treated as independent activities. There is a semi-dependent transmission state machine for immediate packets, shown in fig. 16, which utilizes "ITA" and "ITS" transmitter states. After reset, as well as when no immediate packets are waiting or awaiting an acknowledgment, the transmitter state machine is in normal mode and uses "TA", "TW" and "TS".

Når en umiddelbar pakke skal sendes mens sendertilstandsmaskinen er i normal modus, entres umiddelbar modus i en "ITA" tilstand og sender pakken. Med en gang den umiddelbare tilstanden er entret vil sendertilstandsmaskinen forbli i umiddelbar modus helt til alle ventende umiddelbare pakker har blitt sendt og kvittert for. Ved dette tidspunkt returnerer sendertidsmaskinen til normal modus i den tilstand som var aktiv i det tidspunkt første umiddelbare pakke ble presentert. When an immediate packet is to be sent while the sender state machine is in normal mode, the immediate mode enters an "ITA" state and sends the packet. Once the immediate state is entered, the sender state machine will remain in immediate mode until all pending immediate packets have been sent and acknowledged. At this point, the transmitter time machine returns to normal mode in the state that was active at the time the first immediate packet was presented.

På grunn av den samtidige operasjon av sendertilstandsmaskinen og mottaker tilstandsmaskinen ved de to endene av hver retning av hver sesjon, kan pakker som relaterer til normal prioritet mottas ved en sendertilstandsmaskin mens den behandler en umiddelbar pakke. Disse mottak behandles på bakgrunn av status av normal modus sender, selv om ingen annen normal modus operasjon foregår før den umiddelbare modus prosesseringa er avsluttet. Due to the simultaneous operation of the sender state machine and the receiver state machine at the two ends of each direction of each session, packets relating to normal priority can be received by a sender state machine while it is processing an immediate packet. These receptions are processed on the basis of the status of the normal mode transmitter, even if no other normal mode operation takes place before the immediate mode processing is finished.

Sendertilstandsmaskinen forventer positiv kvittering for hver umiddelbar pakke uavhengig av verdien spesifisert i senderpakketelleren. The sender state machine expects positive acknowledgment for each immediate packet regardless of the value specified in the sender packet counter.

En hel rekke heltallsverdier blir vedlikeholdt av sendertilstandsmaskinen for å følge beskjedsekvenser og detektere manglende og/eller dupliserte pakker. Disse inkluderer An array of integer values is maintained by the transmitter state machine to track message sequences and detect missing and/or duplicate packets. These include

n, som representerer foreliggende sekvensnummer brukt for transmisjon av pakker med normal prioritet; n, which represents the present sequence number used for the transmission of packets with normal priority;

m, som representerer det høyeste (normal prioritet) beskjedsekvenstall som den korresponderende mottakertilstandsmaskinen har kvittert for velykket mottak av; m, which represents the highest (normal priority) message sequence number that the corresponding receiver state machine has acknowledged for successful receipt;

p, som representerer det foreliggende sekvenstall brukt for overføring av umiddelbare pakker; p, representing the present sequence number used for transmission of immediate packets;

t, som representerer sendepakketelleren som brukes for denne retningen av den aktive sesjonen; og t, which represents the transmit packet counter used for this direction by the active session; and

x som representerer en verdi i området 0 til 15. x which represents a value in the range 0 to 15.

Alle størrelsesordenforhold mellom disse talla er implementert slik at overgang fra 15 til 0 skjer ved en økning i størrelsesorden. Dette er utvetydig fordi t må være mindre enn 16. All order of magnitude relationships between these numbers are implemented so that the transition from 15 to 0 occurs when the order of magnitude increases. This is unambiguous because t must be less than 16.

Sendertilstandsmaskinen indikerer sine tilstands-endringer ved hjelp av operasjons-kode og sekvensnummer i sendertilstandsbyten ("TXSB") hos hver sendte pakke. Tillatte operasjoner innkluderer The transmitter state machine indicates its state changes by operation code and sequence number in the transmitter state byte ("TXSB") of each transmitted packet. Permitted operations include

"DATAIn", som indikerer at denne pakken innholder bytestrømmer eller også administrative data og at denne pakken er en første eller mellompakke i en gruppe av to eller flere pakker som sendes uten positiv kvittering; "DATAIn", which indicates that this packet contains byte streams or also administrative data and that this packet is a first or intermediate packet in a group of two or more packets sent without a positive acknowledgment;

"DATAFn", som indikerer at denne pakken inneholder bytestrøm og/eller administrative data og at denne pakken er den siste (eler eneste) pakken i en gruppe, og at positiv kvittering kreves; "DATAFn", indicating that this packet contains bytestream and/or administrative data and that this packet is the last (or only) packet in a group, and that positive acknowledgment is required;

"IDLEn", som indikerer at ingen flere data på det nåværende tidspunkt (foreløbig) er tilgjengelig etter datapakke n-1; "IDLEn", indicating that no more data is currently (for now) available after data packet n-1;

"NOPx", brukt for holde-liv-i beksjeder (sekvensnummer er ignorert); "NOPx", used for keep-alive cases (sequence numbers are ignored);

"CONTROL COMAND", brukt for funksjoner som for eksempel oppkopling, nedkopling, rapporter innretningsparametre, og så videre (sekvensnummer ikke brukt). "CONTROL COMAND", used for functions such as connecting, disconnecting, reporting device parameters, and so on (sequence number not used).

"COMMAND REPLY", brukt for å sende avslutningskoder og svardata som respons til "CONTROL COMMAND" (sekvensnummer ikke brukt). "COMMAND REPLY", used to send exit codes and response data in response to "CONTROL COMMAND" (sequence number not used).

De hendelser som kan føre til tilstandsendringer i sendertilstandsmaskinen omfatter The events that can lead to state changes in the transmitter state machine include

"READYn+1", som viser mottak av en pakke til hvilken mottaker tilstandsbyte inneholder kvittering type "READYn + 1", som indikerer at mottakeren har vellykket mottatt alle pakker sendt til og med "DATAFn", og at mottakeren har tilstrekkelige buffere tilgjengelig for en gruppe av pakker tilsvarende lengden av den aktive senderpakkertelleren; "READYn+1", indicating receipt of a packet to which receiver status byte contains acknowledgment type "READYn + 1", indicating that the receiver has successfully received all packets sent up to and including "DATAFn", and that the receiver has sufficient buffers available for a group of packets corresponding to the length of the active transmitter packet counter;

"BUSYn+1", som angir mottak av en pakke til hvilken mottakerstatustilstandsbyte inneholder kvittering type "BUSYn+1", som indikerer at mottakeren har på en velykket måte mottatt alle pakker sendt til og med "DATAFn", men at mottakeren på det nåværende tidspunkt ikke har flere buffere tilgjengelig (eller et utilstrekklig antall av buffere for å motta en gruppe av pakker tilsvarende lengden av den aktive senderpakketelleren); "BUSYn+1", indicating receipt of a packet to which receiver status byte contains acknowledgment type "BUSYn+1", indicating that the receiver has successfully received all packets sent up to and including "DATAFn", but that the receiver at the current time has no more buffers available (or an insufficient number of buffers to receive a group of packets equal to the length of the active transmitter packet counter);

"READYm+1", som angir mottak av en pakke til hvilken mottakertilstandsbyt inneholder kvittering type "READYm + 1", som indikerer at mottakertilstands-maskinen har velykket mottatt alle pakker som er sendt til og med "DATAFm", har ikke velykket mottatt pakker sendt med sekvensnummer m+1, og at et nytt forsøk "READYm+1", indicating receipt of a packet to which receiver state byte contains acknowledgment type "READYm + 1", indicating that the receiver state machine has successfully received all packets sent up to and including "DATAFm", has not successfully received packets sent with sequence number m+1, and that a new attempt

med pakke "m" (og etterfølgende) avsending er nødvendig; with package "m" (and subsequent) dispatch is required;

"Ingenting sendt, data tilgjengelig", som indikerer at en eler flere nye utgående pakker har blitt presentert for avsending ved det tidspunkt at ingen datapakker har blitt sendt siden disse "READYn+1", "READYm+1" eller "Tl" hendelse; "Nothing sent, data available", indicating that one or more new outgoing packets have been presented for transmission at the time that no data packets have been sent since this "READYn+1", "READYm+1" or "Tl" event;

"DATAIn avsendt, mer data tilgjengelig", som indikerer at en eler flere utgående pakker i tillegg venter på sending ved det tidspunkt når minst en "DATAIn"-pakke har blitt avsendt siden siste "READYn + 1", "READYm + 1", eller "Tl" hendelse; "DATAIn sent, more data available", indicating that one or more outgoing packets are additionally waiting for transmission at the time when at least one "DATAIn" packet has been sent since the last "READYn + 1", "READYm + 1", or "Tl" event;

"Tl", som viser at tidsintervall relatert til nye forsøk og holde-liv-i pakker, dette tidsintervall er tilbakestilt hver gang en pakke sendes til sesjonspartneren; og "Tl", which shows that time interval related to retries and keep-alive-in packets, this time interval is reset every time a packet is sent to the session partner; and

"T2", som viser at utgangen av tidsintervall relatert til tap av kommunikasjon eller protokollødeleggelse, denne tidsperioden er tilbakestilt hver gang en gyldig pakke blir mottatt fra sesjonspartneren. "T2", which shows the expiration of the time interval related to the loss of communication or protocol destruction, this time period is reset every time a valid packet is received from the session partner.

På grunn av de forskjellige situasjoner, inkludert et foregående forsøk på å sende en pakke til en innretning der dennes "RIM"-mottaker er forhindret, kan det være tilfeller der det er behov for en sendertilstandsmaskin som sender en pakke når dens "RIM"-sender er opptatt. Når dette skjer vil sendertilstandsmaskinen temporært slutte å behandle alle hendelser vist i dens tilstandsendringstabell, med unntak av hendelsen som angår utgang av "T2" intervallet. Etter at en sender har blitt tilgjengelig, og er igjen gjort klar for å sende den ventende transmisjonen, vil enhver hendelse som har skjedd under perioden før senderen var opptatt bli behandlet. Behandling av mottatte "NOPx" pakker (for å tilbakestille "T2") er også utsatt under perioder når senderen er opptatt. Operasjon av sendertilstandsmaskinen i normal modus er karakterisert vedDue to the various situations, including a previous attempt to send a packet to a device where its "RIM" receiver is prevented, there may be cases where a sender state machine is needed that sends a packet when its "RIM"- transmitter is busy. When this happens, the transmitter state machine will temporarily stop processing all events shown in its state change table, with the exception of the event relating to the exit of the "T2" interval. After a transmitter has become available, and is again made ready to send the pending transmission, any event that occurred during the period before the transmitter was busy will be processed. Processing of received "NOPx" packets (to reset "T2") is also deferred during periods when the transmitter is busy. Operation of the transmitter state machine in normal mode is characterized by

tabellen vist i fig. 15. For hver boks i tabellen, indikerer navn med store bokstaver the table shown in fig. 15. For each box in the table, indicate names in capital letters

sending av pakker med den indikerte funksjon i senderens statusbyte, navn med små boksataver indikerer interne operasjoner innen sendertilstandsmaskinen, og navn som begynner med en høyrepil indikerer den status som entres ved avslutning av aktiviteten i den boksen. sending packets with the indicated function in the transmitter's status byte, names in lower case letters indicate internal operations within the transmitter state machine, and names beginning with a right arrow indicate the state entered upon termination of the activity in that box.

Andre operasjonelle karakteristika av sendertilstandsmaskinen er som følger. Hvis flere enn en hendelse skjer samtidig, vil hendelsen vist i kolonnen lengst til venstre i Other operational characteristics of the transmitter state machine are as follows. If more than one event occurs at the same time, the event shown in the leftmost column i

tabellen bli behandlet først. Andre hendelser blir kun behandlet hvis de fremdeles er sann etter at den initielle hendelsen er behandlet. "Tl" tidsintervall varierer med sendertilstanden som vist, "T2" tidsintervall er alltid en fast verdi større enn "Tl". the table be processed first. Other events are only processed if they are still true after the initial event is processed. "Tl" time interval varies with transmitter state as shown, "T2" time interval is always a fixed value greater than "Tl".

Mottak av enhver mottakertilstandsbeskjed av "NOPx" (uavhengig av sekvensnummer) gjør at T2 intervallet blir tilbakestilt, men er ellers ignorert av mottakertilstandsmaskinen. Avsending av en "CONTROL COMMAND" eller et "CONTROL REPLY" kan foregå med "DATAFn" er tilstede. Ingen videre overføring skjer etter at en "CONTROL COMMAND" er avsendt, før det korresponderende "CONTROL REPLY" er mottatt. Hvis Tl tidsintervall utgår mens en venter på dette "CONTROL REPLY", vil "CONTROL COMMAND" bli retransmittert. Ingen kvittering er ventet eller kreves, for hvert "CONTROL REPLY". Hvis T2 tidsintervall utgår uten at et "CONTROL REPLY" er mottatt, vil "CONTROL COMMAND "-aktiviteten (og sesjonen, hvis noen) bli terminert. Alle pakker mottatt fra sesjonspartneren med mottakertilstandsverdier andre enn de som er vist av de hendelser definert i tilstandsendringstabellen er ignorert av sendertilstandsmaskinen uten å tilbakstille "T2" intervallet. Dette resulterer i en tidsbasert sesjonsavslutning på grunn av protokoll-ødeleggelse. Det er også feiltilstander vist i tilstandsendringstabellen som spesifiserer at T2 tidsintervallet ikke skal tilbakestilles. Ved etablering av en sesjon, eller ved resynkronisering, vil sendertilstandsmaskinen entre tilstanden TS med n:= m:= -1. Receipt of any receiver state message of "NOPx" (regardless of sequence number) causes the T2 interval to be reset, but is otherwise ignored by the receiver state machine. Sending a "CONTROL COMMAND" or a "CONTROL REPLY" can take place with "DATAFn" present. No further transmission takes place after a "CONTROL COMMAND" has been sent, until the corresponding "CONTROL REPLY" has been received. If the Tl time interval elapses while waiting for this "CONTROL REPLY", the "CONTROL COMMAND" will be retransmitted. No acknowledgment is expected or required for each "CONTROL REPLY". If the T2 time interval elapses without a "CONTROL REPLY" being received, the "CONTROL COMMAND " activity (and the session, if any) will be terminated. All packets received from the session partner with receiver state values other than those shown by the events defined in the state change table are ignored by the sender state machine without resetting the "T2" interval. This results in a timed session termination due to protocol destruction. There are also error states shown in the state change table that specify that the T2 time interval should not be reset. When establishing a session, or when resynchronizing, the transmitter state machine will enter the state TS with n:= m:= -1.

Operasjon av sendertilstandsmaskinen i umiddelbar modus er karakterisert vedOperation of the transmitter state machine in immediate mode is characterized by

tabellen vist i fig. 16. For hver boks i tabellen indikerer navn med store bokstaver avsending av pakker med den indikerte funksjon i senderstatusgruppen, navn med små bokstaver indikerer interne operasjoner innen sendertilstandsmaskinen, navn som starter med en høyre pil indikerer tilstanden som entres når aktiviteten i boksen avsluttes, og betegnelsen "Tx" refererer seg til normal modal tilstand ("TA", "TW", eller "TS") som er korrekt å entre ved avslutning av en umiddelbar modus operasjon. the table shown in fig. 16. For each box in the table, names in uppercase letters indicate dispatch of packets with the indicated function in the transmitter state group, names in lowercase letters indicate internal operations within the transmitter state machine, names starting with a right arrow indicate the state entered when the activity in the box ends, and the designation "Tx" refers to the normal modal state ("TA", "TW", or "TS") which is correct to enter upon termination of an immediate mode operation.

Andre operasjonelle karakteristika av sendertilstandsmaskinen i umiddelbar modus er som følger. "Tl" tidsintervall varierer med sendertstatus som vist, "T2" tidsintervall er alltid en fast verdi større enn "Tl". Disse "Tl" og "T2" tidsintervall er de samme som brukes ved normal modus sendertilstandsmaskin. Mottak av enhver mottakertilstandsbeskjed av "NOPx" (uavhengig av sekvensnummer) gjør at "T2" tidsintervall blir nullstilt, men blir ellers ignorert av sendetilstandsmaskinen. Avsending av en "CONTROL COMMAND" eller et "CONTROL REPLY" kan foregå når "DATAFp" foreligger. Ingen videre transmisjon foregår etter at "CONTROL COMMAND" er sendt, før de korresponderende "CONTROL REPLY" blir mottatt. Hvis "Tl" tidsintervall utgår mens en venter på dette "CONTROL REPLY" vil "CONTROL COMMAND" bli retransmittert. Ingen kvittering er ventet, eller kreves, for hvert "CONTROL REPLY". Hvis "T2" tidsintervall går ut uten at et "CONTROL REPLY" er mottatt, vil "CONTROL COMMAND "-aktiviteten, sesjonen, hvis noen, bli terminert. Alle pakker som mottas fra sesjonspartneren med mottaker-stauts-verdier andre enn de som er beskrevet av hendelsene definert i tilstandsendringstabellen er ignorert av sendertilstandsmaskinen uten å nullstille "T2" tidsintervall. Dette resulterer i en tidsbasert sesjonsavslutning på grunn av protokollødeleggelse. Det er også feiltilstander vist på tilstandsendringstabellen som spesifiserer at "T2" tidsintervall ikke skal nullstilles. Ved etablering av en sesjon, eller ved resynkronisering blir verdien av p initiert til null. Ved entring til umiddelabar modus, vil sendertilstandsmaskinen sende en "DATAFp" pakke og gå inn i "ITA" tilstand. Verdien som benyttes for denne "DATAFp" pakke er uforandret fra den forrige utgang fra umiddelbar modus (eller resynkronisering). Other operational characteristics of the transmitter state machine in immediate mode are as follows. "Tl" time interval varies with transmitted status as shown, "T2" time interval is always a fixed value greater than "Tl". These "Tl" and "T2" time intervals are the same as those used by the normal mode transmitter state machine. Receipt of any receiver state message of "NOPx" (regardless of sequence number) causes the "T2" time interval to be reset, but is otherwise ignored by the transmit state machine. Sending a "CONTROL COMMAND" or a "CONTROL REPLY" can take place when "DATAFp" is available. No further transmission takes place after the "CONTROL COMMAND" has been sent, until the corresponding "CONTROL REPLY" is received. If the "Tl" time interval elapses while waiting for this "CONTROL REPLY", the "CONTROL COMMAND" will be retransmitted. No acknowledgment is expected, or required, for each "CONTROL REPLY". If the "T2" time interval expires without a "CONTROL REPLY" being received, the "CONTROL COMMAND " activity, session, if any, will be terminated. All packets received from the session partner with receiver-stauts values other than those described by the events defined in the state change table are ignored by the transmitter state machine without resetting the "T2" time interval. This results in a timed session termination due to protocol destruction. There are also error states shown on the state change table that specify that the "T2" time interval should not be reset. When establishing a session, or when resynchronizing, the value of p is initialized to zero. Upon entering immediate mode, the transmitter state machine will send a "DATAFp" packet and enter the "ITA" state. The value used for this "DATAFp" packet is unchanged from the previous output from immediate mode (or resynchronization).

Mottakertilstandsmaskinen behandler alle innkomne pakker for en gitt innretning, gir mottakertilstandsvittgruppen "RXSB" for inkorporering i alle utgående pakker fra denne innretningen; genererer sekvensnummer for utgående kvitteringer; retransmitterer indikeringer om at ledige buffere er tilgjengelig hvis ingen nye pakker er mottatt innen et tidsintervall; genererer holde-liv-i pakker ved forhåndsbestemte tidsintervall når ingen ledige buffere er tilgjengelig; og bryter forbindelsen hvis mer enn en større andre forhåndsbestemt tidsperiode har utløpt uten at et statussvar fra korresponderende sendertilstandsmaskin er mottatt. The receiver state machine processes all incoming packets for a given device, provides the receiver state white group "RXSB" for incorporation into all outgoing packets from that device; generates sequence numbers for outgoing receipts; retransmits indications that free buffers are available if no new packets are received within a time interval; generates keep-alive packets at predetermined time intervals when no free buffers are available; and breaking the connection if more than a larger second predetermined time period has elapsed without a status response from the corresponding transmitter state machine being received.

Mottakertilstander for normal modus er vist i fig. 17. Mottakertilstandene er mottaker aktiv ("Receiver Active", "RA") entret når det er en eller flere mottakerbuffere tilgjengelig; mottaker venter ("Receiver Waiting", "RW"), entret når ingen mottakerbuffere er tilgjengelig; og mottaker stoppet ("Receiver Stopped", "RS"), entret når senderen har stoppet kommunikasjonen fordi den ikke har noe utgående data å sende. Receiver states for normal mode are shown in fig. 17. The receiver states are receiver active ("Receiver Active", "RA") entered when one or more receiver buffers are available; receiver waiting ("Receiver Waiting", "RW"), entered when no receiver buffers are available; and receiver stopped ("Receiver Stopped", "RS"), entered when the transmitter has stopped communication because it has no outgoing data to send.

Mottak av normale pakker og av umiddelbare pakker er behandlet som uavhengige aktiviteter. Det finnes en halv-avhengig mottakertilstandsmaskin for umiddelbare pakker, som nytter "IRA" og "IRW" mottakertilstander. Etter tilbakestilling, såvel som når ingen umiddelbare pakker har blitt mottatt og ennå ikke kvittert, er Receipt of normal packages and of immediate packages are treated as independent activities. There is a semi-dependent receiver state machine for immediate packets, which uses "IRA" and "IRW" receiver states. After reset, as well as when no immediate packets have been received and not yet acknowledged, are

mottakertilstands-maskinen i normal modus og bruker "RA", "RW" og "RS". receiver state machine in normal mode and uses "RA", "RW" and "RS".

Når en umiddelbar pakke mottas mens mottakertilstandsmaskinen er i normal modus, entres umiddelbar modus i en "IRA" tilstand og kvitterer for pakken. Med en gang den umiddelbare tilstanden er entret vil mottakertilstandsmaskinen forbli i umiddelbar modus (status "IRA" og "IRW") helt til de mottatte umiddelbare pakkene har blitt kvittert for. Ved dette tidspunkt returnerer mottakertidsmaskinen til normal modus i den tilstand som var aktiv i det tidspunkt første umiddelbare pakke ble mottatt. When an immediate packet is received while the receiver state machine is in normal mode, immediate mode enters an "IRA" state and acknowledges the packet. Once the immediate state is entered, the receiver state machine will remain in immediate mode (status "IRA" and "IRW") until the received immediate packets have been acknowledged. At this point, the receiver time machine returns to normal mode in the state that was active at the time the first immediate packet was received.

På grunn av den samtidige operasjon av sendertilstandsmaskinen og mottakertilstandsmaskinen ved de to endene av hver retning av hver sesjon, kan pakker som relaterer til normal prioritet mottas ved en mottakertilstandsmaskin mens den behandler en umiddelbar pakke. Disse mottak behandles på bakgrunn av status av normal modus mottaker, selv om ingen annen normal modus operasjon foregår før den umiddelbare modus prosesseringa er avsluttet. Dette medfører at det må være minst et (generelt akkurat et) mottakerbuffer tilgjengelig når en mottaker i normal modus entrer "RW" tilstand. Due to the simultaneous operation of the sender state machine and the receiver state machine at the two ends of each direction of each session, packets relating to normal priority can be received by a receiver state machine while it is processing an immediate packet. These receptions are processed based on the status of the normal mode receiver, even if no other normal mode operation takes place before the immediate mode processing is finished. This means that there must be at least one (generally exactly one) receiver buffer available when a receiver in normal mode enters the "RW" state.

Mottakertilstandsmaskinen genererer positiv kvittering for hver umiddelbar pakke uavhengig av verdien spesifisert i mottakerpakketelleren. The receiver state machine generates positive acknowledgment for each immediate packet regardless of the value specified in the receiver packet counter.

En hel rekke heltallsverdier blir vedlikeholdt av mottakertilstandsmaskinen for å følge beskjedsekvenser og detektere manglende og/eller dupliserte pakker. Disse inkluderer An array of integer values is maintained by the receiver state machine to track message sequences and detect missing and/or duplicate packets. These include

n, som representerer foreliggende sekvensnummer brukt for mottak av pakker med normal prioritet; n, which represents the present sequence number used for receiving packets with normal priority;

m, som representerer et sekvensnummer, forbundet med en mottatt pakke av normal prioritet, som kan være før n i sekvens, men som er innen området for den aktive pakke telleren. Når t=l er m=(n-l), når t er større enn 1 er (n-1) mindre enn m er mindre enn eller lik (n-1); m, which represents a sequence number, associated with a received packet of normal priority, which may be before n in sequence, but which is within the range of the active packet counter. When t=l is m=(n-l), when t is greater than 1 (n-1) is less than m is less than or equal to (n-1);

p, som representerer det foreliggende sekvenstall brukt for mottak av umiddelbare pakker; p, representing the present sequence number used for receiving immediate packets;

t, som representerer sendepakketelleren som brukes for denne retningen av den aktive sesjonen; og t, which represents the transmit packet counter used for this direction by the active session; and

x som representerer en verdi i området 0 til 15. x which represents a value in the range 0 to 15.

Alle størrelsesordenforhold mellom disse talla er implementert slik at overgang fra 15 til 0 skjer ved en økning i størrelsesorden. Dette er utvetydig fordi t må være mindre enn 16. All order of magnitude relationships between these numbers are implemented so that the transition from 15 to 0 occurs when the order of magnitude increases. This is unambiguous because t must be less than 16.

Mottakertilstandsmaskinen indikerer sine tilstandsendringer ved hjelp av kvitteringskode og sekvensnummer i mottakertilstandsbytenhos hver pakke den sender. Tillatte kvitteringer inkluderer The receiver state machine indicates its state changes using the acknowledgment code and sequence number in the receiver state byte of each packet it sends. Permitted receipts include

"READYn", som viser at mottakeren har vellykket mottatt alle pakker sendt til og med "n-1", og at mottakeren er i "READYn", indicating that the receiver has successfully received all packets sent up to and including "n-1", and that the receiver is in

stand til å motta minst antall pakker tillatt av senderpakketelleren; capable of receiving the least number of packets allowed by the transmitter packet counter;

"BUSYn", som angir at mottakeren har på en velykket måte mottatt alle pakker sendt til og med "n-1", men på det nåværende tidspunkt har et utilstrekklig antall av buffere for å motta en gruppe av pakker tilsvarende lengden av den aktive mottakerpakketelleren; og "BUSYn", indicating that the receiver has successfully received all packets sent up to and including "n-1", but currently has an insufficient number of buffers to receive a group of packets equal to the length of the active receiver packet counter ; and

"NOPx", brukt for holde-liv-i beksjeder (sekvensnummer er ignorert); "DATAFn", som indikerer mottak av en pakke der senderstatus byten inneholder funksjonstype "DATAFn", som indikerer mottak av den neste ventede sekvens-verdien av den siste (eller eneste) pakken i en gruppe som krever positiv kvittering; "NOPx", used for keep-alive cases (sequence numbers are ignored); "DATAFn", indicating receipt of a packet where the transmitter status byte contains function type "DATAFn", indicating receipt of the next expected sequence value of the last (or only) packet in a group requiring positive acknowledgment;

"IDLEn" som indikerer mottak av en pakke der senderstatus byten inneholder funksjonstype "IDLEn", som indikerer at senderen på det nåværende tidspunkt ikke har mer data å sende; "IDLEn" indicating receipt of a packet where the sender status byte contains function type "IDLEn", indicating that the sender currently has no more data to send;

"DATAFm", som indikerer mottak av en pakke der senderstatus byten inneholder funksjonstype "DATAFm", som indikerer at sendertilstandsmaskinen ikke vellykket har mottatt siste kvittering til en datapakke og at et nytt forsøk på den overføringen (og påfølgende overføringer) er i gang; (Når t=l, m=(n-l), er DATAFm lik DATAFn.); "DATAFm", indicating receipt of a packet where the transmitter status byte contains function type "DATAFm", indicating that the transmitter state machine has not successfully received the last acknowledgment of a data packet and that a retry of that transmission (and subsequent transmissions) is in progress; (When t=l, m=(n-l), DATAFm is equal to DATAFn.);

"DATAIn", som indikerer mottak av en pakke der senderstatus byten inneholder funksjonstype "DATAIn", som indikerer mottak av neste ventede sekvensverdi av en initiell eller mellomliggende datapakke i en gruppe av datapakker der kvittering vil genereres etter at alle pakkene er mottatt (noe som blir indikert ved mottak av en pakke av funksjonstype "DATAFn"); hvis antall "DATAIn"-hendelser siden siste "DATAFn"-hendelse overskrider den aktive sendepakketelleren minus 1, vil mottak av en "DATAIn"-pakke bli ignorert. "DATAIn", indicating receipt of a packet where the sender status byte contains function type "DATAIn", indicating receipt of the next expected sequence value of an initial or intermediate data packet in a group of data packets where acknowledgment will be generated after all packets have been received (which is indicated upon receipt of a packet of function type "DATAFn"); if the number of "DATAIn" events since the last "DATAFn" event exceeds the active transmit packet counter minus 1, reception of a "DATAIn" packet will be ignored.

"t mottakerbuffere tilgjengelig", som indikerer at minst "t" ledige mottakerbuffere er blitt tilgjengelig etter en tilstand der mindre enn "t" ledige mottakerbuffere har vært ledige; "t receiver buffers available", indicating that at least "t" free receiver buffers have become available after a condition where less than "t" free receiver buffers have been free;

"T3", som viser at tidsintervall relatert til nye forsøk og holde-liv-i pakker, dette tidsintervall er tilbakestilt hver gang en pakke sendes til sesjonspartneren; og "T3", which shows that the time interval related to retries and keep-alive-in packets, this time interval is reset every time a packet is sent to the session partner; and

"T2", som viser at utgangen av tidsintervall relatert til tap av kommunikasjon eller protokollødeleggelse, denne tidsperioden er tilbakestilt hver gang en gyldig pakke blir mottatt fra sesjonspartneren. "T2", which shows the expiration of the time interval related to the loss of communication or protocol destruction, this time period is reset every time a valid packet is received from the session partner.

Operasjon av mottakertilstandsmaskinen i normal modus er karakterisert vedOperation of the receiver state machine in normal mode is characterized by

tabellen vist i fig. 17. For hver boks i tabellen, indikerer navn med store bokstaver sending av pakker med den indikerte funksjon i mottakerens statusbyte, navn med små boksataver indikerer interne operasjoner innen mottakertilstandsmaskinen, og navn som begynner med en høyrepil indikerer den status som entres ved avslutning av aktiviteten i den boksen. the table shown in fig. 17. For each box in the table, names in upper case indicate sending packets with the indicated function in the receiver's status byte, names in lower case indicate internal operations within the receiver state machine, and names beginning with a right arrow indicate the state entered upon termination of the activity in that box.

Andre operasjonelle karakteristika av mottakertilstandsmaskinen omfatter: Hvis flere enn en hendelse venter samtidig, vil hendelsen vist i kolonnen lengst til venstre i tabellen bli ferdigbehandlet først, før det tas noe hensyn til de lenger til høyre. Mottak av en "CONTROL COMMAND" eller et "CONTROL REPLY" gjør at mottakertilstandsmaskinen nullstiller T3 tidsintervall og sender pakken videre til de styringsfasiliteter som finnes i innretningen. Mottakertilstandsmaskinen gjør ikke noe annet, og vil ikke kvittere for "CONTROL COMMAND" eller hvert "CONTROL REPLY". T3 tidsintervallet varierer med tilstanden på mottakeren som vist, T2 tidsintervallet er alltid en fast tid. Mottak av enhver senderstatus beskjed "NOPx" Other operational characteristics of the receiver state machine include: If more than one event is pending at the same time, the event shown in the leftmost column of the table will be finished processing first, before any consideration is given to those further to the right. Receiving a "CONTROL COMMAND" or a "CONTROL REPLY" causes the receiver state machine to reset the T3 time interval and forward the packet to the control facilities found in the device. The receiver state machine does nothing else, and will not acknowledge "CONTROL COMMAND" or every "CONTROL REPLY". The T3 time interval varies with the state of the receiver as shown, the T2 time interval is always a fixed time. Receipt of any transmitter status message "NOPx"

(uavhengig av sekvensnummer) gjør at T2 intervallrekneren blir nullstilt, men er ellers ignaorert av mottakertilstandsmaskinen. Alle mottatte pakker fra sesjonspartneren med senderstatus annen enn de som er dekket av de defifnerte hendelser, vil bli ignorert av mottakertilstandsmaskinen uten å nullstille T2. Dette vil innebære tidsbasert gjenoppretting ved protokollødeleggelser. Det finnes også feiltilstander vist i tilstandsendirngstabellen som spesifiserer at T2 telleren ikke skal nullstilles. Ved nullstilling eller etablering av en sesjon, går mottakertilstandsmaskinen inn i tilstand "RW" med n: =0. (regardless of sequence number) causes the T2 interval counter to be reset, but is otherwise ignored by the receiver state machine. All received packets from the session partner with sender status other than those covered by the defined events will be ignored by the receiver state machine without resetting T2. This will involve time-based recovery in case of protocol destruction. There are also error states shown in the state change table which specify that the T2 counter should not be reset. Upon reset or establishment of a session, the receiver state machine enters state "RW" with n: =0.

Operasjon av mottakertilstandsmaskinen i umiddelbar modus er karakterisert vedOperation of the receiver state machine in immediate mode is characterized by

tabellen vist i fig. 18. For hver boks i tabellen indikerer navn med store bokstaver avsending av pakker med den indikerte funksjon i mottakerstatusgruppen, navn med små bokstaver indikerer interne operasjoner innen mottakertilstandsmaskinen, navn som starter med en høyre pil indikerer tilstanden som entres når aktiviteten i boksen avsluttes, og betegnelsen "Rx" refererer seg til normal modal tilstand ("RA", "RW", eller "RS") som er korrekt å entre ved avslutning av en umiddelbar modus operasjon. the table shown in fig. 18. For each box in the table, names in uppercase letters indicate dispatch of packets with the indicated function in the receiver state group, names in lowercase letters indicate internal operations within the receiver state machine, names starting with a right arrow indicate the state entered when the activity in the box ends, and the designation "Rx" refers to the normal modal state ("RA", "RW", or "RS") which is correct to enter upon termination of an immediate mode operation.

Andre operasjonelle karakteristika av mottakertilstandsmaskinen i umiddelbar modus er som følger. Mottak av en "CONTROL COMMAND" eller en "CONTROL REPLY" pakke fører til at mottakertilstandsmaskinen nullstiller T2 tidsintervall og sender pakken videre til de prosesseringsfasiliteter som finnes for styringsfunksjoner i innretningen. Mottakertilstandsmaskinen gjør ikke noe annet, og sender ikke kvittering på "CONTROL COMMAND" eller hver "CONTROL REPLY". "T3" tidsintervall varierer med mottakertstatus som vist, "T2" tidsintervall er alltid en fast verdi. Disse "T3" og "T2" tidsintervall er de samme som brukes ved normal modus mottakertilstandsmaskin. Mottak av enhver sendertilstandsbeskjed av "NOPx" Other operational characteristics of the receiver state machine in immediate mode are as follows. Receipt of a "CONTROL COMMAND" or a "CONTROL REPLY" packet causes the receiver state machine to reset the T2 time interval and forward the packet to the processing facilities that exist for control functions in the device. The receiver state machine does nothing else, and does not send acknowledgment on "CONTROL COMMAND" or every "CONTROL REPLY". "T3" time interval varies with receiver status as shown, "T2" time interval is always a fixed value. These "T3" and "T2" time intervals are the same as those used by the normal mode receiver state machine. Receipt of any transmitter status message of "NOPx"

(uavhengig av sekvensnummer) gjør at "T2" tidsintervall blir nullstilt, men blir ellers ignorert av sendetilstandsmaskinen. Alle mottatte pakker fra sesjonspartneren med senderstatus annen enn de som er dekket av de defifnerte hendelser, vil bli ignorert av mottakertilstandsmaskinen uten å nullstille T2. Dette vil innebære tidsbasert gjenoppretting ved protokollødeleggelser. Det finnes også feiltilstander vist i tilstandsendringstabellen som spesifiserer at T2 telleren ikke skal nullstilles. Ved etablering av en sesjon eller resynkronisering, blir mottakertilstandsmaskinen satt inaktiv med p initiert til 0. Ved inngang til umiddelbar modus, vil mottakertilstands-maskinen entre "IRA" status med verdien på "P" uforandret fra den foregående utgangen fra umiddelbar status (eller fra resynkronisering). (regardless of sequence number) causes the "T2" time interval to be reset, but is otherwise ignored by the transmission state machine. All received packets from the session partner with sender status other than those covered by the defined events will be ignored by the receiver state machine without resetting T2. This will involve time-based recovery in case of protocol destruction. There are also error states shown in the state change table which specify that the T2 counter should not be reset. Upon establishing a session or resynchronizing, the receiver state machine is set inactive with p initialized to 0. Upon entering immediate mode, the receiver state machine will enter "IRA" state with the value of "P" unchanged from the previous exit from immediate state (or from resynchronisation).

Fra den foregående beskrivelse av IONET-karakterkanalen i dens forskjellige aspekter, inkludert IONET-protokollen og funksjonaliteten til tilstandsmaskinen skulle betydningen av forbedringene tilgjengelig ved foreliggende oppfinnelse tre klart fram. Denne beskrivelsen skal likevel ikke tolkes som en begrensning av rekkevidden av oppfinnelsen ut over den lovmessige rekkevidden av de følgende patentkrav. From the foregoing description of the IONET character channel in its various aspects, including the IONET protocol and the functionality of the state machine, the significance of the improvements available by the present invention should be apparent. This description should nevertheless not be interpreted as a limitation of the scope of the invention beyond the statutory scope of the following patent claims.

Claims (30)

1. Et system for å implementere en karakter-I/O-kanal (140; 140a, 140b) for å kommunisere bytestrømdata (266) og styringsadministrativ informasjon (264) i en enkelt IONET-netverksnivå-datapakkabeskjed (240) fra kilde- til destinasjonsinnretninger koplet til kanalen (140; 140a, 140b) ved et flertall av noder (174), hver kilde/destinasjonsinnretning omfatter et grensesnitt (182) som er koplet til et organ (176, 100; 176a, 100a, 100b) som er separat fra kilde/destinasjonsinnretningen, idet organet (176, 100; 176a, 100a, 100b) er en av enten en inn/ut-innretning (176;176A) som leder I/O-dataoverføringer, eller en datamaskin (100; 100a, 100b) omfattende et lager (104), en prosessor (102) og programkode for å drive datamaskinen (100; 100a, 100b), karakter I/O-kanalen (140; 140a, 140b) er anordnet for bruk i samband med et lokalt nettverk (LAN) omfattende et kommunikasjonsmedium (170; 170a, 170b) vanlig koplet til flertallet av noder (174), LAN-grensesnitt (178) ved hver node (174) for å styre tilgangen til mediet (170; 170a, 170b) og for å kommunisere LAN-pakker mellom gitte valgte kilde- og destinasjonsnoder (174), hver LAN-datapakke omfatter et LAN-datafelt og et LAN-overskriftfelt inneholdende karakterer som styrer grensesnittorganet (178) for å oppnå node til node-kommunikasjon i samband med en gitt LAN-kommunikasjonsprotokoll, karakterisert ved at karakter I/O-kanalen (140; 140a, 140b) omfatter i kombinasjon: brukspunkt ("point of use",POU) -organ (172) inkludert i kilde/destinasjonsinnretningen og koplet til LAN-grensesnittet (178) ved hver node (174), brukspunktorganet (172) er koplet til hver I/O-innretning (176;176A) inkludert en mikrodatamaskin (180) med lager og programkode for å drive mikrodatamaskinen (180), programkodene for prosessoren (102) og mikrodatamaskinen (180) definerer en gitt I/O-nett kommunikasjonsprotokoll for å kommunisere med kilde/destinasjonsinnretningene og deres tilkoplede grensesnitt (182) og organene (176, 100; 176a, 100a, 100b), idet I/O-nett kommunikasjonsprotokollen er separat fra LAN-kommunikasj onsprotokollen, brukspunktorganene (172) er anordnet for å sette inn karakterer i datafeltet i LAN-datapakkene for å danne I/O-nett-nettverksnivå-datapakkebeskjeder (240) som har et felt for I/O-nett-overskriftskarakterer (260) og et administrativt (264) og et byte- strømdatafelt (266), I/O-nett-overskirftskarakterene (260) inkluderer en funksjonskode (278) som spesifiserer en av et flertall av styringsfunksjoner, de administrative feltkarakterene omfatter en administrativ in formasjon skode (264) for bruk for å oppnå spesifiserte styringsfunksjoner som skal utføres ved en av kilde/destinasjonsinnretningene eller grensesnittet (182), bytestrøm datakarakterene 266 stammer fra et organ (176, 100; 176a, 100a, 100b) ved kildenoden (174), og brukspunktorganet (172) ved destinasjonsnoden (174) er anordnet for direkte å tolke funksjonskoden (278) og de administrative informasjonskodekarakterene (264) a) for å etablere en sesjon mellom kilde- og destinasjonsinnretning for å kommunisere I/O-nett-datapakkebeskjeder (240) mellom disse uten aksept og forstyrrelse fra andre I/O-nett-datapakkebeskjeder (240) gjennom sesjonens varighet, og b) å utføre en tilsvarende styringsfunksjon på en av destinasjonsinnretningene eller dens grensesnitt (182) under sesjonen, og c) samtidig å overføre bytestrømdatakarakterer (266) i umodifisert form direkte til organene (176,100; 176a, 100a, 100b) koplet til grensesnittet (182) til destinasjonsinnretningen.1. A system for implementing a character I/O channel (140; 140a, 140b) for communicating byte stream data (266) and control administrative information (264) in a single IONET network level data packet message (240) from source to destination devices coupled to the channel (140; 140a, 140b) at a plurality of nodes (174), each source/destination device comprising an interface (182) coupled to an entity (176, 100; 176a, 100a, 100b) which is separate from the source/destination device, the entity (176, 100; 176a, 100a, 100b) being one of either an I/O device (176; 176A) directing I/O data transfers, or a computer (100; 100a, 100b ) comprising a storage (104), a processor (102) and program code for operating the computer (100; 100a, 100b), the character I/O channel (140; 140a, 140b) is arranged for use in connection with a local area network (LAN) comprising a communication medium (170; 170a, 170b) commonly connected to the plurality of nodes (174), LAN interface (178) at each node (174) to control e the access to the medium (170; 170a, 170b) and to communicate LAN packets between given selected source and destination nodes (174), each LAN data packet comprising a LAN data field and a LAN header field containing characters that control the interface means (178) to achieve node to node -communication in connection with a given LAN communication protocol, characterized in that the character I/O channel (140; 140a, 140b) comprises in combination: point of use ("POU") device (172) included in the source/destination device and connected to the LAN interface (178) by each node (174), the point of use means (172) is connected to each I/O device (176;176A) including a microcomputer (180) with storage and program code to operate the microcomputer (180), the program codes for the processor (102) and the microcomputer (180) defines a given I/O network communication protocol for communicating with the source/destination devices and their connected interfaces (182) and bodies (176, 100; 176a, 100a, 100b), the I/O network communication protocol being separate from The LAN communication protocol, point of use means (172) is arranged to insert characters into the data field of the LAN data packets to form I/O network network level data packet messages (240) having a field for I/O network header characters ( 260) and an administrative (264) and a byte stream data field (26 6), the I/O network header characters (260) include a function code (278) specifying one of a plurality of control functions, the administrative field characters include an administrative information code (264) for use in achieving specified control functions to be performed at one of the source/destination devices or interface (182), the byte stream data characters 266 originate from an entity (176, 100; 176a, 100a, 100b) at the source node (174), and the point of use means (172) at the destination node (174) is arranged to directly interpret the function code (278) and the administrative information code characters (264) a) to establish a session between the source and destination device to communicate I/O network data packet messages (240 ) between these without acceptance and interference from other I/O network data packet messages (240) throughout the duration of the session, and b) performing a corresponding control function on one of the destination devices or its interface (182) during the session, and c) simultaneously transmitting byte stream data characters (266) in unmodified form directly to the means (176,100; 176a, 100a, 100b) coupled to the interface (182) of the destination device. 2. System i samsvar med krav 1, karakterisert ved en styringsfunksjon som er en utkoplingsstyrings-funksjon som avslutter en etablert sesjon.2. System in accordance with claim 1, characterized by a management function which is a disconnection management function that ends an established session. 3. System i samsvar med krav 1, karakterisert ved at I/O-nett-overskriftskarakterene (260) omfatter en lengdekode (282,284) som spesifiserer en vilkårlig lengde for hver av administrative og bytestrøm datafeltene (264,266).3. System in accordance with claim 1, characterized in that the I/O network header characters (260) comprise a length code (282,284) which specifies an arbitrary length for each of the administrative and byte stream data fields (264,266). 4. System i samsvar med krav 1, karakterisert ved at I/O-nett-overskirftkarakterene (260) omfatter en umiddelbar kode (268), og brukspunktorganet (270) ved destinasjonsinnretningen er anordnet for umiddelbart å utføre styringsfunksjonen spesifisert ved funksjonskoden (278) og den administrative informasjonskoden (264) ved mottak av I/O-nett beskjeden som inneholder den umiddelbare koden (268).4. System in accordance with claim 1, characterized in that the I/O network header characters (260) comprise an immediate code (268), and the point of use device (270) at the destination device is arranged to immediately perform the control function specified by the function code (278) and the administrative information code (264) upon receipt of the I/O network message containing the immediate code (268). 5. System i samsvar med krav 1, karakterisert ved at LAN-grensesnittet (278) er anordnet for å settes inn i kildenoden som identifiserer informasjon (246,248,272) i hver LAN-datapakke (240), og at mikrodatamaskinen (180) ved et brukspunktorgan (172) er anordnet for å hindre responsiv kommunikasjon av I/O-nettbeskjeder til en kilde/destinasjonsinnretning koplet ved en node (174) som har identifiseringsinformasjon (246,248) som ikke tilsvarer nodens identitetsinformasjon (246,248) ved kilde/destinasjonsinnretningene som sesjonen er etablert med.5. System in accordance with claim 1, characterized in that the LAN interface (278) is arranged to be inserted into the source node identifying information (246,248,272) in each LAN data packet (240), and that the microcomputer (180) at a point-of-use means (172) is arranged to prevent responsive communication of I/O network messages to a source/destination device coupled at a node (174) having identification information (246,248) that does not match the node's identity information (246,248) by the source/destination devices with which the session was established. 6. System i samsvar med krav 1, karakterisert ved at LAN-grensesnittet (178) er anordnet for å sette inn en kildenode identifiseringsinformasjon (246,248,272) i hver LAN-datapakke (240) og at mikrodatamaskinen (180) ved et brukspunktorgan (172) omfatter passordinformasjon som identifiserer kilden (174) til hvert organ som er istand til å initiere sesjonen med kilde/destinasjonsinnretningen ved et brukspunktorgan (172), og at mikrodatamaskinen (170) ved et brukspunktorgan (172) er anordnet for å hindre kommunikasjon med I/O-nett-beskjeder untatt ved at kildeinformasjon (248) assosiert med mottatt I/O-nett-beskjed under en halv sesjon tilsvarer kilde-noden som identifiserer informasjon (248) ved kilde/destinasjonsinnretningen som tilførte passordinformasjon for å starte sesjonen.6. System in accordance with claim 1, characterized in that the LAN interface (178) is arranged to insert a source node identification information (246,248,272) in each LAN data packet (240) and that the microcomputer (180) at a point-of-use entity (172) includes password information identifying the source (174) of each entity capable of initiating the session with the source/destination device at a point-of-use entity (172), and that the microcomputer (170) at a point-of-use entity (172) ) is arranged to prevent communication with I/O network messages except that source information (248) associated with received I/O network message during half a session corresponds to the source node identifying information (248) at the source/destination device which supplied password information to start the session. 7. System i samsvar med krav 6, karakterisert ved at mikrodatamaskinen (180) ved brukspunktorganet (172) videre omfatter et låseorgan for å hindre passordinformasjon fra å endres ved I/O-nettbeskjeder mottatt fra andre kilde/destinasjonsinnretninger.7. System in accordance with claim 6, characterized in that the microcomputer (180) at the point of use means (172) further comprises a locking means to prevent password information from being changed by I/O network messages received from other source/destination devices. 8. System i samsvar med krav 1, karakterisert ved at en I/O-nettbeskjed som spesifiserer en kommando-funksjon etterfølges av kommunikasjon av en svar I/O-nettbeskjed som inneholder funksjonskode (278) og en administrativ informasjonskode (264) som spesifiserer om den forespurte kommandofunksjonen har blitt vellykket utført.8. System in accordance with claim 1, characterized in that an I/O network message specifying a command function is followed by communication of a response I/O network message containing function code (278) and an administrative information code (264) specifying whether the requested command function has been successfully executed. 9. System i samsvar med krav 8, karakterisert ved at hver sesjon blir etablert ved kommunikasjon av en første I/O-nettbeskjed som inneholder en funksjonskode (278) og en administrativ informasjonskode (264) som spesifiserer en oppkoplingsstyringsfunksjon mellom to kilde/destinasjonsinnretninger og ved responsiv kommunikasjon av en spar I/O-nett beskjed som inneholder en funksjonskode (278) og en administrativ informasjonskode (264) som spesifiserer om sesjonen har blitt vellykket etablert.9. System in accordance with claim 8, characterized in that each session is established by communication of a first I/O network message containing a function code (278) and an administrative information code (264) specifying a connection management function between two source/destination devices and by responsive communication of a spar I/O -net message containing a function code (278) and an administrative information code (264) specifying whether the session has been successfully established. 10. System i samsvar med krav 9, karakterisert ved at hver sesjon inneholder to halvsesjoner, første I/O-nett beskjed etablerer en halvsesjon og svar-I/O-nettbeskjeden etablerer den andre halvsesjonen.10. System in accordance with claim 9, characterized in that each session contains two half-sessions, the first I/O network message establishes one half-session and the response I/O network message establishes the second half-session. 11. System i samsvar med krav 10, karakterisert ved at funksjonskoden (278) og den administrative informasjonskoden (264) av svar-I/O-nettbeskjeden blir direkte tolket ved en av mikrodatamaskinene (180) eller datamaskinen (100; 100a, 100b) ved en kilde/destinasjonsinnretning i den etablerte sesjonen for å forhindre kommunikasjon av ytterligere I/O-nettbeskjeder til andre kilde/destinasjonsinnretninger i den etablerte seksjonen til ytterligere I/O-nettbeskjeder kan mottas i lageret ved brukerpunktorganet (172) ved de andre kilde/destinasjonsinnretningene.11. System in accordance with claim 10, characterized in that the function code (278) and the administrative information code (264) of the response I/O network message are directly interpreted by one of the microcomputers (180) or the computer (100; 100a, 100b) at a source/destination device in the established session to prevent communication of further I/O network messages to other source/destination devices in the established section until further I/O network messages can be received in storage at the user point entity (172) at the other source/destination devices. 12. System i samsvar med krav 10, karakterisert ved at en I/O-nett datapakkebeskjed inneholder flere datapakker (240) som kommuniseres i en halvsesjon inkludert I/O-nett-overskriftkarakterer (260) anordnet for å spesifisere sekvensiell rekkefølge-informasjon (268) ved de flere datapakker (240), og hver halvsesjon svar I/O-nettbeskjed inkluderer I/O-nett-overskriftkarakterer (260) som spesifiserer kvitteringsinformasjon (270) som anvendes for å bestemme de av datapakkene (240) som ikke ble vellykket mottatt.12. System in accordance with claim 10, characterized by that an I/O network data packet message contains multiple data packets (240) communicated in a half-session including I/O network header characters (260) arranged to specify sequential order information (268) of the multiple data packets (240), and each half-session response I/O network message includes I/O network header characters (260) specifying acknowledgment information (270) used to determine which of the data packets (240) were not successfully received. 13. System i samsvar med krav 12, karakterisert ved at alle datapakker (240) som ikke ble vellykket mottatt retransmitteres i respons til svar I/O-nett-beskjed som inneholder kvitteringsinform-asjonen (270).13. System in accordance with claim 12, characterized in that all data packets (240) that were not successfully received are retransmitted in response to response I/O network message containing the acknowledgment information (270). 14. System i samsvar med krav 12, karakterisert ved at alle datapakker (240) som ikke ble vellykket mottatt retransmitteres i respons til utløp av en gitt tidsperiode under hvilken ingen svar I/O-nett-beskjed var mottatt.14. System in accordance with claim 12, characterized in that all data packets (240) which were not successfully received are retransmitted in response until the expiry of a given time period during which no response I/O network message had been received. 15. System i samsvar med krav 8, karakterisert ved at svar I/O-nett-beskjeden inneholder karakterer (270, 278) i sin I/O-nett-overskrift (260), som spesifiseer svar som omfatter: vellykket avslutning av styringsfunksjonen, ikke-støtte av styringsfunksjonen ved destinasjonsinnretningen, avslag ved destinasjonsinnretningen av styringsfunksjonen pga. av status ved en mottaker ved destinasjonsinnretningen, avslag av styringsfunksjonen pga. at destinasjonsinnretningen ikke er i sesjon, avslag av styringsfunksjonen pga. at destinasjonsinnretningen er i sesjon med en annen kilde/destinasjonsinnretning, avslag av styringsfunksjonen pga. at konfigurasjonslåsen i samband med destinasjonsinnretningen er satt, og avslag av styringsfunksjonen pga. at det er en feil i styringskommandokarakter-informasjonen i styringskommando I/O-nettbeskjeden.15. System in accordance with claim 8, characterized in that the response I/O network message contains characters (270, 278) in its I/O network header (260), which specify responses that include: successful completion of the management function, non-support of the management function by the destination device, rejection by the destination device of the control function due to of status at a receiver at the destination device, rejection of the control function due to that the destination device is not in session, rejection of the control function due to that the destination device is in session with another source/destination device, rejection of the control function due to that the configuration lock in connection with the destination device has been set, and rejection of the control function due to that there is an error in the control command character information in the control command I/O network message. 16. System i samsvar med krav 1, karakterisert ved at styringskommandoene for grensesnittet (182) omfatter: en kommando for å overføre datapakkebeskjeden, en kommando for å stoppe mottak av datapakkebeskjeder, og en kommando for å kommunisere hold-i-live beskjeder for å vedlikeholde sesjonen i fravær av kommuniserte datapakkebeskjeder.16. System in accordance with claim 1, characterized in that the control commands for the interface (182) comprise: a command to transmit the data packet message, a command to stop receiving data packet messages, and a command to communicate keep-alive messages to maintain the session in the absence of communicated data packet messages. 17. System i samsvar med krav 8, karakterisert ved at styringskommandoene spesifiserer styringsfunksjoner omfattende: rapportere kilde/destinasjonsinnretningsparametre, som medfører generering av et styringssvar I/O-nettbeskjed som inneholder informasjon som angår type og gitte atributter ved innretningen (176,100; 176a, 100a, 100b) koplet til kilde/destinasjonsinnretningen, rapporter statistikk, som medfører generering av en styringssvar I/O-nettbeskjed som inneholder statistikk angående mediumkommunikasjon, rapporter grensesnittparametre, som medfører generering av styringssvar I/O-nett-beskjed som angår grensesnittkontroll og tilhørende modal status ved kilde/destinasjonsinnretningen, sette kilde/destinasjonsinnretningsparametre, som medfører at kilde/destinasjonsinnretningen kan lagre ny parameter-informasjon angående andre kilde/destinasjonsinnretninger i sesjonen, og sette grensesnittparametre, som medfører at destinasjonsinnretningen setter nye verdier for grensesnittstyring og tilhørende modal status.17. System in accordance with claim 8, characterized in that the control commands specify control functions including: reporting source/destination device parameters, which entails the generation of a control response I/O network message containing information relating to the type and given attributes of the device (176,100; 176a, 100a, 100b) connected to the source/destination device, report statistics, which entails the generation of a management response I/O network message containing statistics regarding medium communication, report interface parameters, which entails the generation of management response I/O network message concerning interface control and associated modal status at the source/destination device, set source/ destination device parameters, which means that the source/destination device can store new parameter information regarding other source/destination devices in the session, and set interface parameters, which causes the destination device to set new values for interface management and associated modal status. 18. System i samsvar med krav 8, karakterisert ved at styringsfunksjonene omfatter: "flush" buffere, som medfører at all tidligere informasjon kommunisert i I/O-nett-beskjeder til lagre ved mottakeren skal avvises, kjør utvidet diagnostikk, som medfører at kilde/destinasjonsinnretningen utfører diagnostiske funksjoner og rapporterer resultatene ved disse funksjonene, og rapporter status, som medfører at kilde/destinasjonsinnretningen genererer en styringssvar I/O-nett-beskjed som beskriver status til en grensesnittet (182) ved innretningen (176).18. System in accordance with claim 8, characterized in that the control functions include: "flush" buffers, which means that all previous information communicated in I/O network messages to stores at the receiver must be rejected, run extended diagnostics, which means that the source/destination device performs diagnostic functions and reports the results by these functions, and report status, which causes the source/destination device to generate a control response I/O network message that describes the status of an interface (182) at the device (176). 19. System i samsvar med krav 8, karakterisert ved at svar I/O-nett-beskjeden omfatter informasjon (268, 278) som spesifiserer: status ved kilde/destinasjonsgrensesnitt inngangssignal og en indikasjon av felles effekt på/av og felles klar/ikke-klar-status, valg av de inngangsendringer som resulterer i kommunikasjon styringssvar I/O-nettbeskjeder som inneholder statusinformasjon, og spesifikasjon av innstillinger ved grensesnitt utgangsstyringssignalene.19. System in accordance with claim 8, characterized in that the response I/O network message includes information (268, 278) that specifies: status at source/destination interface input signal and an indication of common effect on/off and common ready/not ready status, selection of the input changes which results in communication control response I/O network messages containing status information, and specification of settings at the interface output control signals. 20. Framgangsmåte for karakterkommunikasjon i en karakter I/O-kanal (140; 140a, 140b) for kommunisering av byte-strømdata (266) og styringsadministrativ informasjon (264) i enkelte I/O-nett-datapakke beskjeder (240) på nettverksnivå fra kilde- til destinasjonsinnretning tilkoplet kanalen (140; 140a, 140b) ved et flertall av noder (174) ved kommunisering av LAN datapakker mellom kilde- og destinasjonsnoder i samsvar med LAN kommunikasjonsprotokollen, hver kilde/destinasjonsinnretning omfatter et grensesnitt (182) som er koplet til et organ (176, 100, 176a, 100a, 100b) som er separat fra kilde/destinasjonsinnretningen, organet (176,100; 176a, 100a, 100b) er en av enten en I/O-innretning (176,176A) som fører I/O-dataoverføringer eller en datamaskin (100; 100a, 100b) inkludert et lager (104) og en prosessor (102) og programkode for drift av datamaskinen (100; 100a, 100b),og framgangsmåten er beregnet for bruk med et lokalt nettverk (LAN) omfattende et kommunikasjonsmedium (170; 170a, 170b) vanligvis koplet til flertallet av noder (174), LAN-grensesnitt (178) ved hver node (174) for å styre tilgang til mediet (170; 170a, 170b) og kommunisere LAN-pakker mellom gitte valgte kilde- og destinasjonsnoder (174), hver LAN-datapakke omfatter et LAN-datafelt og et felt for LAN-overskriftkarakterer inneholdende karakterer som styrer grensesnittet (178) for å oppnå nodekommunikasjon i samsvar med en gitt LAN-kommunikasjonsprotokoll, karakterisert ved å omfatte følgende trinn: inkludere et brukspunkt (POU) -organ (172) i kilde/destinasjonsinnretningen og kople brukspunktorganet (172) til LAN grensesnittet (178) ved hver node (174), inkludere et mikrodatamaskin (180) omfattende et lager og en programkode for å operere mikrodatamaskinene (180) i hvert brukspunktorgan (172), implementere en IONET-kommunikasjonsprotokoll separat fra LAN-kommunikasjonsprotokollen i programkoden for hvert datamaskin (100; 100a, 100b) og mikrodatamaskin (180) og dermed: danne IONET-nettverksnivå-datapakkebeskjeder (240) i samsvar med IONET-kommunikasjonsprotokollen ved å sette inn karakterer i LAN-datafeltet i hver LAN-datapakke kommunisert mellom nodene (134), danne et IONET-overskriftfelt (160) og et administrativt felt (264) og et byte-strøm-datafelt (266) i hver IONET-datapakkebeskjed (240) ved å sette inn karakterer, IONET-overskriftkarakterene (260) inkludert en funksjonskode (278) som spesifiserer en av et flertall av styringsfunksjoner, de administrative feltkarakterene omfatter en administrativ informasjonskode (264) for bruk for å oppnå spesifisert styringsfunksjon som skal utføres ved den ene av kilde/destinasjonsinnretningene eller dens grensesnitt (182), bytestrøm datakarakterer (266) har opprinnelse fra en innretning (176,100; 176a, 100a, 100b) ved kildenoden (174), og direkte tolke funksjonskoden (278) og administrative informasjonskodekarakterer (264) ved destinasjonsnoden (174) i samband med IONET-kommunikasjonsprotokoll, og dermed a) etablere en sesjon mellom kilde- og destinasjonsinnretninger for kommunisere IONET-datapakkebeskjeder (240) mellom disse uten aksept av et grensesnitt fra andre IONET-datapakkebeskjeder (240) gjennom sesjonen, og b) utføre en tilsvarende styringsfunksjon på en av destinasjonsinnretningene eller dens grensesnitt (182) under sesjon, mens c) samtidig overføre bytestrømdatakarakterer (266) i umodifisert form direkte til innretningen (176,100; 176a, 100a, 100b) koplet til grensesnittet (182) ved destinasjonsinnretningen.20. Method for character communication in a character I/O channel (140; 140a, 140b) for communicating byte stream data (266) and management administrative information (264) in individual I/O network data packet messages (240) at network level from source to destination device connected to the channel (140; 140a, 140b) at a plurality of nodes (174) when communicating LAN data packets between source and destination nodes in accordance with the LAN communication protocol, each source/destination device comprising an interface (182) which is connected to a device (176, 100, 176a, 100a, 100b) which is separate from the source/destination device, the entity (176,100; 176a, 100a, 100b) is one of either an I/O device (176,176A) conducting I/O data transfers or a computer (100; 100a, 100b) including a storage (104) and a processor (102) and program code for operating the computer (100; 100a, 100b), and the method is intended for use with a local area network (LAN) comprising a communication medium (170; 170a, 170b) typically connected to the majority of nodes (174), LAN interfaces (178) at each node (174) to control access to the medium (170; 170a, 170b) and communicate LAN packets between given selected source and destination nodes (174), each LAN data packet comprising a LAN data field and a LAN header characters field containing characters that control the interface (178) to achieve node communication in accordance with a given LAN communication protocol, characterized by comprising the following steps: including a point of use (POU) means (172) in the source/destination device and connecting the point of use means (172) to the LAN interface (178) at each node (174), including a microcomputer (180) comprising storage and program code for operating the microcomputers (180) in each point-of-use means (172), implementing an IONET communication protocol separately from the LAN communication protocol in the program code of each computer (100; 100a, 100b) and microcomputer (180 ) thus: forming IONET network level data packet messages (240) in accordance with the IONET communication protocol by inserting characters in the LAN data field of each LAN data packet communicated between the nodes (134); forming an IONET header field (160) and an administrative field (264) and a byte-stream data field (266) in each IONET data packet message (240) by inserting characters, the IONET header characters (260) including a feature code (278 ) that specifies one of a plurality of control functions, the administrative field characters comprise an administrative information code (264) for use in achieving the specified control function to be performed at one of the source/destination devices or its interface (182), byte stream data characters (266) have originating from a device (176,100; 176a, 100a, 100b) at the source node (174), and directly interpreting the function code (278) and administrative information code characters (264) at the destination node (174) in connection with IONET communication protocol, thereby a) establishing a session between source and destination devices to communicate IONET data packet messages (240) between them without acceptance of a interface from other IONET data packet messages (240) throughout the session, and b) perform a corresponding control function on one of the destination devices or its interface (182) during session, while c) simultaneously transmit byte stream data characters (266) in unmodified form directly to the device (176,100; 176a, 100a, 100b) connected to the interface (182) at the destination device. 21. Framgangsmåte i samsvar med krav 20, karakterisert ved videre å omfatte: etablere en sesjon for å kommunisere bytestrømdata (266) i IONET-beskjeder (240), hver sesjon omfatter to halvsesjoner, kommunisere første IONET-beskjed fra en første kilde/destinasjonsinnretning til den andre kilde/destinasjonsinnretning i en halvsesjon, og kommunisere et svar IONET-beskjed fra den andre kilde/destinasjonsinnretningen til første kilde/destinasjonsinnretning i den andre halvsesjonen.21. Procedure in accordance with claim 20, characterized by further comprising: establishing a session to communicate byte stream data (266) in IONET messages (240), each session comprising two half-sessions, communicate first IONET message from a first source/destination device to the other source/destination device in a half-session, and communicating a response IONET message from the second source/destination device to the first source/destination device in the second half-session. 22. Framgangsmåte i samsvar med krav 21, karakterisert ved videre å omfatte: kommunisere statusinformasjon (268,270) angående foreliggende og tidligere halvsesjoner med hver svar IONET-beskjed.22. Procedure in accordance with claim 21, characterized by further comprising: communicating status information (268,270) regarding current and previous half-sessions with each response IONET message. 23. Framgangsmåte i samsvar med krav 21, karakterisert ved videre å omfatte: i kommunisere en IONET-beskjed (240) for å vedlikeholde flyten i en etablert sesjon når bytestrømdata (268) er utilgjengelig for å kommunisere ved IONET-datapakkebeskj edene (240).23. Procedure in accordance with claim 21, characterized by further comprising: i communicating an IONET message (240) to maintain the flow in an established session when byte stream data (268) is unavailable to communicate by the IONET data packet messages (240). 24. Framgangsmåte i samsvar med krav 21, karakterisert ved videre å omfatte: tolke funksjonskoden (270) og administrativ informasjonskode (264) og utføre en tilsvarende styringsfunksjon på en av kilde/destinasjonsinnretningene eller grensesnittet (182) mens sesjonen er etablert, og kommunisere en svar IONET beskjed for å indikere om styringsfunksjonen ble vellykket utført, i 24. Procedure in accordance with claim 21, characterized by further comprising: interpreting the function code (270) and administrative information code (264) and performing a corresponding control function on one of the source/destination devices or interface (182) while the session is established, and communicate a response IONET message to indicate whether the control function was successfully executed, in 25. Framgangsmåte i samsvar med krav 21, karakterisert ved videre å omfatte: inkludere rekkefølgeinformasjon (268) i en I/O-nett-datapakkebeskjed (240) på en halvsesjon som spesifiserer sekvensiell orden ved flere datapakker (240), og kvittere i en svar I/O-nett-beskjed i den andre halvsesjonen de av datapakkene (240) som ikke har blitt vellykket mottatt. 25. Procedure in accordance with claim 21, characterized by further comprising: including sequence information (268) in an I/O network data packet message (240) on a half-session that specifies the sequential order of multiple data packets (240), and acknowledging in a reply I/O network message in the second half-session those of the data packets (240) which have not been successfully received. 26. Framgangsmåte i samsvar med krav 25, karakterisert ved videre å omfatte: retransmittere de av datapakkene (240) som har blitt kvittert som ikke vellykket mottatt. 26. Procedure in accordance with claim 25, characterized by further including: retransmit those of the data packets (240) which have been acknowledged as not successfully received. 27. Framgangsmåte i samsvar med krav 21, karakterisert ved videre å omfatte: retransmittere I/O-nett-datapakkebeskjeder (240) som tidligere har blitt transmittert etter utgang av en gitt tidsperiode etter hvilken svar I/O nettbeskjed som kvitterer mottak av de beskjeder som ikke har blitt mottatt. 27. Procedure in accordance with claim 21, characterized by further including: retransmit I/O network data packet messages (240) that have previously been transmitted after the end of a given time period after which response I/O network message that acknowledges receipt of the messages that have not been received. 28. Framgangsmåte i samsvar med krav 20, karakterisert ved videre å omfatte: etablere en sesjon mellom de av kilde/destinasjonsinnretningene som er forvalgt til å tillate kommunikasjon av I/O nettbeskjeder (240) seg imellom. 28. Procedure in accordance with claim 20, characterized by further including: establishing a session between those of the source/destination devices that are pre-selected to allow communication of I/O web messages (240) between them. 29. Framgangsmåte i samsvar med krav 20, karakterisert ved videre å omfatte: dele opp de administrative og bytestrøm datafeltene (264,266) ved hver I/O nett-beskjed inn i vilkårlig lengder, der hver av disse kan inneholde ingen informasjon, og spesifisere lengden på hver av de administratrive og bytestrøm datafelt (264,266) ved å sette inn karakterer i I/O nett-overskriftfelt (260) som danner en lengdekode (282,284). 29. Procedure in accordance with claim 20, characterized by further including: divide the administrative and byte stream data fields (264,266) at each I/O net message into arbitrary lengths, each of which may contain no information, and specifying the length of each of the admin drive and byte stream data fields (264,266) by inserting characters into the I/O net header field (260) forming a length code (282,284). 30. Framgangsmåte i samsvar med krav 20, karakterisert ved videre å omfatte: kommunisere flere I/O-nett-databeskjeder (240), og begrense antall I/O-nett-datapakkebeskjeder (240) kommunisert i en gruppe til et antall som i det minste er én mindre enn det antall I/O-nett-datapakkebeskjeder (240) som kan mottas i lageret ved en destinasjonsinnretning uten å hindre et mottakerorgan ved en destinasjonsnode (174).30. Procedure in accordance with claim 20, characterized by further including: communicate multiple I/O network data messages (240), and limit the number of I/O network data packet messages (240) communicated in a group to a number that is at least one less than the number of I/O network data packet messages (240) which can be received in the warehouse at a destination device without obstructing a receiving body at a destination node (174).
NO883578A 1986-12-12 1988-08-12 Computer input / output network NO174910C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/941,084 US4941089A (en) 1986-12-12 1986-12-12 Input/output network for computer system
PCT/US1987/002388 WO1988004511A1 (en) 1986-12-12 1987-09-18 Input/output network for computer system

Publications (4)

Publication Number Publication Date
NO883578D0 NO883578D0 (en) 1988-08-12
NO883578L NO883578L (en) 1988-10-12
NO174910B true NO174910B (en) 1994-04-18
NO174910C NO174910C (en) 1994-07-27

Family

ID=26776242

Family Applications (1)

Application Number Title Priority Date Filing Date
NO883578A NO174910C (en) 1986-12-12 1988-08-12 Computer input / output network

Country Status (1)

Country Link
NO (1) NO174910C (en)

Also Published As

Publication number Publication date
NO883578D0 (en) 1988-08-12
NO883578L (en) 1988-10-12
NO174910C (en) 1994-07-27

Similar Documents

Publication Publication Date Title
US4941089A (en) Input/output network for computer system
US5590124A (en) Link and discovery protocol for a ring interconnect architecture
US7640364B2 (en) Port aggregation for network connections that are offloaded to network interface devices
US4761646A (en) Method and system for addressing and controlling a network of modems
US5420988A (en) Establishing logical paths through a switch between channels and control units in a computer I/O system
US6697372B1 (en) Local area network accessory for integrating USB connectivity in existing networks
US4493021A (en) Multicomputer communication system
US5109483A (en) Node initiating xid exchanges over an activated link including an exchange of sets of binding signals between nodes for establishing sessions
US5289579A (en) Channel adapter for broadband communications at channel speeds
US5944798A (en) System and method for arbitrated loop recovery
US5371897A (en) Method for requesting identification of a neighbor node in a data processing I/O system
US4680781A (en) Data telecommunications system and method with universal link establishment
US5165020A (en) Terminal device session management protocol
CN1633647B (en) System and method for managing data transfers in a network
JPH10240670A (en) System and method for automatically changing dynamic loop address
JP3857317B2 (en) Automatic negotiation progress monitor
JPH05204804A (en) High-speed transmission line-interface
US5938731A (en) Exchanging synchronous data link control (SDLC) frames to adjust speed of data transfer between a client and server
CN115437978A (en) High-speed peripheral component interconnection interface device and operation method thereof
US20080263248A1 (en) Multi-drop extension for a communication protocol
US5051892A (en) Full duplex conversation between transaction programs
JPH09130408A (en) Network interface device
NO174910B (en) Computer input / output network
Cisco Configuring STUN and BSTUN
Cisco Configuring Serial Tunnel and Block Serial Tunnel