Synkron datalänkkontroll - Synchronous Data Link Control

Synchronous Data Link Control ( SDLC ) är en datorkommunikationsprotokoll . Det är lager 2 -protokollet för IBM: s Systems Network Architecture (SNA). SDLC stöder flerpunktslänkar samt felkorrigering. Det körs också under antagandet att en SNA -rubrik är närvarande efter SDLC -huvudet. SDLC användes huvudsakligen av IBM stordator- och mellansystem; emellertid finns implementeringar på många plattformar från många leverantörer. Användningen av SDLC (och SNA) blir mer och mer sällsynt, oftast ersatt av IP-baserade protokoll eller tunnlas genom IP (med AnyNet eller annan teknik). I USA finns SDLC i trafikkontrollskåp.

År 1975 utvecklade IBM det första bitorienterade protokollet, SDLC, från arbete som utförts för IBM i början av 1970-talet. Denna de facto- standard har antagits av ISO som High-Level Data Link Control (HDLC) 1979 och av ANSI som Advanced Data Communication Control Procedures (ADCCP). De senare standarderna lade till funktioner som Asynkronbalanserat läge , bildstorlekar som inte behövde vara multiplar av bit-oktetter, men tog också bort några av procedurerna och meddelandena (t.ex. TEST-meddelandet).

SDLC fungerar oberoende på varje kommunikationslänk och kan fungera på multipunkt- eller slinganläggningar från punkt till punkt , på kopplade eller dedikerade, två- eller fyrtrådiga kretsar, och med full duplex och halv duplex drift. En unik egenskap hos SDLC är dess förmåga att blanda halvduplex sekundära stationer med full duplex primära stationer på fyrtrådskretsar, vilket minskar kostnaden för dedikerade anläggningar.

Intel använde SDLC som ett basprotokoll för BITBUS , fortfarande populärt i Europa som fältbuss och inkluderade stöd i flera styrenheter (i8044/i8344, i80152). 8044-styrenheten tillverkas fortfarande av tredjepartsleverantörer. Andra leverantörer som lade hårdvarusupport för SDLC (och den lite annorlunda HDLC) i kommunikationskontrollchips på 1980 -talet inkluderade Zilog , Motorola och National Semiconductor . Som ett resultat använde en mängd olika utrustningar på 1980 -talet det och det var mycket vanligt i stordatorcentrerade företagsnätverk som var normen på 1980 -talet. De vanligaste alternativen för SNA med SDLC var förmodligen DECnet med Digital Data Communications Message Protocol (DDCMP), Burroughs Network Architecture (BNA) med Burroughs Data Link Control (BDLC) och ARPANET med IMP .

Skillnader mellan SDLC och HDLC

HDLC är mestadels en förlängning av SDLC, men vissa funktioner raderades eller bytt namn.

HDLC -funktioner finns inte i SDLC

Funktioner som finns i HDLC, men inte SDLC, är:

  • ramar som inte är en multipel av 8 bitar långa är olagliga i SDLC, men valfritt lagliga i HDLC.
  • HDLC tillåter eventuellt adresser som är mer än 1 byte långa.
  • HDLC har ett alternativ för en 32-bitars bildkontrollsekvens.
  • asynkront svarsläge och tillhörande SARM- och SARME U -ramar,
  • asynkront balanserat läge och tillhörande SABM- och SABME U -ramar,
  • och flera andra ramtyper som skapats för HDLC:
    • den selektiva avvisande (SREJ) S -ramen,
    • kommandot reset (RSET) och
    • de icke -reserverade (NR0 ​​till NR3) U -ramarna.

Inte heller i SDLC finns senare HDLC -tillägg i ISO/IEC 13239 som:

  • 15- och 31-bitars sekvensnummer,
  • det inställda läget (SM) U -ram,
  • 8-bitars ramkontrollsekvens,
  • ett ramformatfält före adressen,
  • ett informationsfält i lägesuppsättningen U -ramar och
  • den "onumrerade informationen med rubrikkontroll" (UIH) U -ram.

Namngivande skillnader

HDLC bytte namn på några SDLC -ramar. HDLC -namnen införlivades i senare versioner av SDLC:

Ursprungligt namn Nytt namn
NSA Nonseqeuenced erkänner UA Unummererat erkänna
NSI Ingen information UI Onummererad information
NSP Nonseqeuenced omröstning UPP Unummererad omröstning
ROL Begär online DM Frånkopplat läge
CMDR Kommando avvisa FRMR Ramavvisande
RQI Begär initieringsläge FÄLG Begär initieringsläge
RQD Begär koppling RD Begär koppling

Tillägg till HDLC till SDLC

Vissa funktioner har lagts till i HDLC, och därefter lagt tillbaka till senare versioner av SDLC.

  • Utökade (modulo-128) sekvensnummer och motsvarande SNRME U-ram, tillsattes till SDLC efter publiceringen av HDLC-standarden.

SDLC -funktioner finns inte i HDLC

Två U -ramar i SDLC som inte finns i HDLC är:

  • BCN (Beacon): När en sekundär förlorar bäraren (slutar ta emot någon signal) från primären börjar den sända en ström av "beacon" -svar, vilket identifierar platsen för kommunikationsfelet. Detta är särskilt användbart i SDLC -slingläge.
  • CFGR (Configure for test) kommando och svar: CFGR-kommandot innehåller en 1-byte nyttolast som identifierar någon speciell diagnostisk operation som ska utföras av sekundären. Den minst signifikanta biten indikerar att diagnosläget ska starta (1) eller stoppa (0). En nyttolastbyte på 0 stoppar alla diagnoslägen. Sekundären ekar byten i sitt svar.
    • 0: Stoppa alla diagnoslägen.
    • 2 (av)/3 (på): Beacon -test. Inaktivera all utmatning, vilket gör att nästa mottagare förlorar bäraren (och börjar blinka).
    • 4 (av)/5 (på): Bildskärmsläge. Inaktivera all bildgenerering, blir tyst, men stoppa inte bärar- eller loop -läge.
    • 8 (av)/9 (på): Wrap -läge. Ange local loopback, anslut sekundärens ingång till sin egen utgång under testets längd.
    • 10 (av)/11 (på): Självtest. Utför lokal diagnostik. CFGR-svaret försenas tills diagnosen är klar, då är svaret 10 (självtest misslyckades) eller 11 (självtest lyckades).
    • 12 (av)/13 (på): Ändrat länktest. Istället för att eka TEST -kommandon ordagrant, generera ett TEST -svar som består av ett antal kopior av den första byten av TEST -kommandot.

Flera U -ramar är nästan helt oanvända i HDLC, existerar främst för SDLC -kompatibilitet:

  • Initialiseringsläge och tillhörande RIM- och SIM U -ramar är så vagt definierade i HDLC att de är värdelösa, men används av vissa kringutrustning i SDLC.
  • Unummererad undersökning (UP) används nästan aldrig i HDLC, dess funktion har ersatts av asynkron svarsläge. UP är ett undantag från den vanliga regeln i normalt svarsläge att en sekundär måste ta emot omröstningsflaggan innan den sänder; medan en sekundär måste svara på vilken ram som helst med pollningsbiten, kan den svara på en UP -ram med pollingbiten klar om den har data att överföra. Om kommunikationskanalen på lägre nivå kan undvika kollisioner (som i loop-läge), tillåter UP till sändningsadressen att flera sekundärer kan svara utan att behöva polla dem individuellt.

TEST U -ramen ingick inte i tidiga HDLC -standarder, men tillkom senare.

Loop -läge

Ett speciellt läge för SDLC -drift som stöds av t.ex. Zilog SCC men inte införlivades i HDLC är SDLC -slingläge. I det här läget är en primär och ett antal sekundärer anslutna i ett enkelriktat ringnätverk , var och en med sin utsändning ansluten till nästa mottagningsingång. Varje sekundär är ansvarig för att kopiera alla ramar som kommer till dess ingång så att de når resten av ringen och så småningom återgår till primären. Med undantag för denna kopiering fungerar en sekundär i halv duplexläge; den sänder bara när protokollet garanterar att den inte får någon ingång.

När en sekundär är avstängd ansluter ett relä sin ingång direkt till dess utgång. När den startar väntar en sekundär på ett lämpligt ögonblick och går sedan "on-loop" och sätter sig själv i dataströmmen med en bitars fördröjning. En liknande möjlighet används för att gå "off-loop" som en del av en ren avstängning.

I SDLC-loopläge anländer ramar i en grupp som slutar (efter den sista flaggan) med en all-in-signal. De första sju 1-bitarna av detta (mönstret 01111111) utgör en "go-ahead" -sekvens (kallas även EOP, slutet av undersökningen) som ger en sekundär behörighet att sända. En sekundär som vill sända använder sin 1-bitars fördröjning för att konvertera den sista 1-biten i denna sekvens till en 0-bit, vilket gör den till ett flaggkaraktär och överför sedan sina egna ramar. Efter sin egen slutflagga sänder den en all-in-tomgångssignal, som kommer att fungera som ett klartecken för nästa station på slingan.

Gruppen börjar med kommandon från primären, och varje sekundär lägger till sina svar. När primären tar emot tomgångssekvensen, vet den att sekundärerna är klara och det kan sända fler kommandon.

Beacon -svaret (BCN) är utformat för att hjälpa till att lokalisera avbrott i slingan. En sekundär som inte ser någon inkommande trafik på länge börjar skicka "beacon" svarsramar och berättar för primären att länken mellan sekundären och dess föregångare är bruten.

Eftersom primären också får en kopia av de kommandon den skickade, som inte går att skilja från svar, lägger den till en speciell "vändning" -ram i slutet av sina kommandon för att skilja dem från svaren. Varje unik sekvens som inte kommer att tolkas av sekundärerna kommer att göra, men den konventionella är en enda noll-byte. Detta är en "runt -ram" med en adress på 0 (reserverad, oanvänd) och utan kontrollfält eller ramkontrollsekvens. (Sekundärer som kan full-duplex-drift tolkar detta också som en "avstängningssekvens", vilket tvingar dem att avbryta överföringen.)

Anteckningar

Referenser

externa länkar