Kontrol af synkron datalink - Synchronous Data Link Control

Synkron Data Link Kontrol ( SDLC ) er en computer kommunikationsprotokol . Det er lag 2 -protokollen til IBM's Systems Network Architecture (SNA). SDLC understøtter multipoint -links samt fejlkorrektion. Det kører også under den antagelse, at der er et SNA -header efter SDLC -headeren. SDLC blev hovedsageligt brugt af IBM mainframe og mellemtone systemer; Imidlertid findes implementeringer på mange platforme fra mange leverandører. Brugen af ​​SDLC (og SNA) bliver mere og mere sjælden, for det meste erstattet af IP-baserede protokoller eller bliver tunneleret gennem IP (ved hjælp af AnyNet eller andre teknologier). I USA kan SDLC findes i trafikkontrolskabe.

I 1975 udviklede IBM den første bitorienterede protokol, SDLC, fra arbejde udført for IBM i begyndelsen af ​​1970'erne. Denne de facto- standard blev vedtaget af ISO som High-Level Data Link Control (HDLC) i 1979 og af ANSI som Advanced Data Communication Control Procedures (ADCCP). Sidstnævnte standarder tilføjede funktioner såsom asynkron afbalanceret tilstand , rammestørrelser, der ikke behøvede at være multipler af bitokteter, men også fjernede nogle af procedurerne og meddelelserne (f.eks. TEST-meddelelsen).

SDLC fungerer uafhængigt af hvert kommunikationsforbindelse og kan fungere på point-to-point multipoint- eller loop- faciliteter, på switchede eller dedikerede, to- eller firetrådede kredsløb og med fuld duplex og halv duplex drift. En unik egenskab ved SDLC er dens evne til at blande halv-duplex sekundære stationer med fuld duplex primære stationer på firetrådskredsløb og dermed reducere omkostningerne ved dedikerede faciliteter.

Intel brugte SDLC som en basisprotokol for BITBUS , stadig populær i Europa som feltbus og inkluderede support i flere controllere (i8044/i8344, i80152). 8044-controlleren er stadig i produktion af tredjepartsleverandører. Andre leverandører, der lagde hardware -understøttelse til SDLC (og den lidt anderledes HDLC) i kommunikationskontrolchips i 1980'erne, omfattede Zilog , Motorola og National Semiconductor . Som et resultat brugte en lang række udstyr i 1980'erne det, og det var meget almindeligt i mainframe -centrerede virksomhedsnetværk, som var normen i 1980'erne. De mest almindelige alternativer til SNA med SDLC var sandsynligvis DECnet med Digital Data Communications Message Protocol (DDCMP), Burroughs Network Architecture (BNA) med Burroughs Data Link Control (BDLC) og ARPANET med IMP'er .

Forskelle mellem SDLC og HDLC

HDLC er for det meste en udvidelse af SDLC, men nogle funktioner blev slettet eller omdøbt.

HDLC -funktioner findes ikke i SDLC

Funktioner, der findes i HDLC, men ikke SDLC, er:

  • rammer, der ikke er et multipel af 8 bit lange, er ulovlige i SDLC, men eventuelt lovlige i HDLC.
  • HDLC tillader valgfrit adresser mere end 1 byte lang.
  • HDLC har en mulighed for en 32-bit frame check-sekvens.
  • asynkron svarstilstand og de tilhørende SARM- og SARME U -rammer,
  • asynkron afbalanceret tilstand og de tilhørende SABM- og SABME U -rammer,
  • og flere andre rammetyper oprettet til HDLC:
    • den selektive afvisning (SREJ) S ramme,
    • nulstillingskommandoen (RSET), og
    • de ikke -reserverede (NR0 ​​til NR3) U -rammer.

Senere er der heller ikke SDLC -udvidelser i ISO/IEC 13239, f.eks .:

  • 15- og 31-bit sekvensnumre,
  • den indstillede tilstand (SM) U -ramme,
  • 8-bit frame check-sekvens,
  • et rammeformatfelt forud for adressen,
  • et informationsfelt i tilstandsindstillede U -rammer og
  • "Unumrede oplysninger med headercheck" (UIH) U -ramme.

Navngivning af forskelle

HDLC omdøbte nogle SDLC -rammer. HDLC -navnene blev inkorporeret i senere versioner af SDLC:

Originalt navn Nyt navn
NSA Nonseqeuenced anerkender UA Unummereret anerkendelse
NSI Uopfordret information UI Ubemærket information
NSP Ubesværet meningsmåling OP Unummereret meningsmåling
ROL Anmodning online DM Frakoblet tilstand
CMDR Kommando afvise FRMR Afvisning af ramme
RQI Anmod om initialiseringstilstand KANT Anmod om initialiseringstilstand
RQD Anmod om afbrydelse RD Anmod om afbrydelse

HDLC -udvidelser tilføjet til SDLC

Nogle funktioner blev tilføjet i HDLC og efterfølgende tilføjet tilbage til senere versioner af SDLC.

  • Forlængede (modulo-128) sekvensnumre og den tilsvarende SNRME U-ramme blev tilføjet til SDLC efter offentliggørelsen af ​​HDLC-standarden.

SDLC -funktioner findes ikke i HDLC

To U -rammer i SDLC, som ikke findes i HDLC, er:

  • BCN (Beacon): Når en sekundær mister transportøren (holder op med at modtage ethvert signal) fra primæren, begynder den at sende en strøm af "beacon" -svar, der identificerer placeringen af ​​kommunikationsfejlen. Dette er især nyttigt i SDLC loop -tilstand.
  • CFGR (Configure for test) -kommando og -respons: CFGR-kommandoen indeholder en 1-byte nyttelast, der identificerer en særlig diagnostisk operation, der skal udføres af den sekundære. Den mindst signifikante bit angiver, at diagnosefunktionen skal starte (1) eller stoppe (0). En nyttelastbyte på 0 stopper alle diagnostiske tilstande. Den sekundære ekko byte i sit svar.
    • 0: Stop alle diagnostiske tilstande.
    • 2 (slukket)/3 (tændt): Beacon -test. Deaktiver al output, hvilket får den næste modtager til at miste transportøren (og begynde at lyde).
    • 4 (slukket)/5 (tændt): Skærmtilstand. Deaktiver al billedgenerering, bliver stille, men stop ikke operatør eller loop -tilstand.
    • 8 (slukket)/9 (tændt): Indpakningstilstand. Indtast lokal loopback og forbinder sekundærens input til sit eget output i testens varighed.
    • 10 (slukket)/11 (tændt): Selvtest. Udfør lokal diagnostik. CFGR-respons er forsinket, indtil diagnosen er fuldført, på hvilket tidspunkt svaret er 10 (selvtest mislykkedes) eller 11 (selvtest lykkedes).
    • 12 (slukket)/13 (tændt): Ændret link test. Frem for at gentage TEST -kommandoer ordret, skal du generere et TEST -svar, der består af et antal kopier af den første byte af TEST -kommandoen.

Flere U -rammer er næsten helt ubrugte i HDLC, der primært findes til SDLC -kompatibilitet:

  • Initialiseringstilstand og de tilhørende RIM- og SIM U -rammer er så vagt defineret i HDLC som ubrugelige, men bruges af nogle eksterne enheder i SDLC.
  • Unummereret afstemning (UP) bruges næsten aldrig i HDLC, idet dens funktion er blevet afløst af asynkron svarstilstand. UP er en undtagelse fra den sædvanlige regel i normal svarmodus, at en sekundær skal modtage afstemningsflagget, før den sender; mens en sekundær skal reagere på en hvilken som helst ramme med afstemningssættet, kan den reagere på en UP -ramme med afstemningsbiten klar, hvis den har data til at transmittere. Hvis kommunikationskanalen på lavere niveau er i stand til at undgå kollisioner (som den er i loop-mode), giver UP til broadcast-adressen mulighed for, at flere sekundærer reagerer uden at skulle afstemme dem individuelt.

TEST U -rammen var ikke inkluderet i tidlige HDLC -standarder, men blev tilføjet senere.

Loop -tilstand

En særlig metode til SDLC, der understøttes af f.eks. Zilog SCC, men ikke blev inkorporeret i HDLC, er SDLC -loop -tilstand. I denne tilstand er en primær og et antal sekundærer forbundet i et ensrettet ringnetværk , hvor hver enkelt sendeudgang er forbundet til den næste modtagelsesindgang. Hver sekundær er ansvarlig for at kopiere alle rammer, der når frem til dens input, så de når resten af ​​ringen og til sidst vender tilbage til primæren. Bortset fra denne kopiering fungerer en sekundær i halv dupleks-tilstand; den sender kun, når protokollen garanterer, at den ikke modtager input.

Når en sekundær er slukket, forbinder et relæ sit input direkte med dets output. Når der tændes, venter en sekundær på et passende tidspunkt og går derefter "on-loop" og indsætter sig selv i datastrømmen med en bit forsinkelse. En lignende mulighed bruges til at gå "off-loop" som en del af en ren nedlukning.

I SDLC-loop-tilstand ankommer rammer i en gruppe, der slutter (efter det endelige flag) med et all-in-inaktiv signal. De første syv 1-bit af dette (mønsteret 01111111) udgør en "go-ahead" -sekvens (også kaldet EOP, afslutning på afstemning), der giver en sekundær tilladelse til at sende. En sekundær, der ønsker at transmittere, bruger sin 1-bit forsinkelse til at konvertere den sidste 1 bit i denne sekvens til en 0 bit, hvilket gør den til et flagtegn og sender derefter sine egne rammer. Efter sit eget sidste flag sender det et all-in-tomgangssignal, som vil fungere som en klarsignal for den næste station på sløjfen.

Gruppen starter med kommandoer fra den primære, og hver sekundær tilføjer sine svar. Når den primære modtager tomgangssekvensen, ved den, at sekundærerne er færdige, og den kan sende flere kommandoer.

Beacon -svaret (BCN) er designet til at hjælpe med at lokalisere brud i sløjfen. En sekundær, der ikke ser nogen indkommende trafik i lang tid, begynder at sende "beacon" -responsrammer og fortæller primæren, at forbindelsen mellem den sekundære og dens forgænger er brudt.

Fordi primæren også modtager en kopi af de kommandoer, den sendte, som ikke kan skelnes fra svar, tilføjer den en særlig "turnaround" -ramme i slutningen af ​​dens kommandoer for at adskille dem fra svarene. Enhver unik sekvens, som ikke vil blive fortolket af sekundærerne, vil gøre det, men den konventionelle er en enkelt alle-nul byte. Dette er en "runt frame" med en adresse på 0 (reserveret, ubrugt) og ingen kontrolfelt eller frame check -sekvens. (Sekundærer, der er i stand til fuld dupleksdrift, tolker dette også som en "lukningssekvens", der tvinger dem til at afbryde transmissionen.)

Noter

Referencer

eksterne links