Top Banner
Rechnernetze 1 Vorlesung im SS’07 Roland Wismüller [email protected] Tel.: 740-4050, H-B 8404
26

Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

Mar 06, 2018

Download

Documents

hoangkiet
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

Rechnernetze 1Vorlesung im SS’07

Roland Wismüller

[email protected]

Tel.: 740-4050, H-B 8404

Page 2: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 2

Zusammenfassung: Protokollhierarchie

Schichten, Protokolle und Dienste

ISO-OSI Referenzmodell

7 Schichten: Bitübertragung, Sicherung, Vermittlung, Transport, Sitzung, Darstellung, Anwendung

Internet Protokollarchitektur

Netzwerk, IP, TCP/UDP, Anwendung

(Effiziente Implementierung von Protokollen)

Page 3: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 3

3. Direktverbindungsnetze

Page 4: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 4

3. Direktverbindungsnetze

Inhalt

Hardware-Bausteine: Knoten und Verbindungsleitungen

Modulation

Codierung

Framing

Fehlererkennung und Fehlerkorrektur

Peterson, Kap. 2.1 – 2.4

Page 5: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 5

3.1. Hardwarebausteine

Netzwerkadapter: Bindegliedzwichen CPU/Speicher und Netzwerk-Link

OSI: 1

E/A Bus

zum Netzwerk

CPU

Speicher

Netzwerk-adapter

Cache

Aufbau eines Knotens

Page 6: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 6

3.1. Hardwarebausteine …Verbindungs„leitungen”

Übertragen Signale als elektromagnetische WellenTypische Attribute:

Frequenz- bzw. Wellenlängenbereich (Bandbreite)Dämpfung (max. Kabellänge)Richtung des Datenflusses

• Simplex: nur in eine Richtung• Vollduplex: in beide Richtungen, gleichzeitig• Halbduplex: in beide Richtungen, abwechselnd

Grundlegende Arten:KupferkabelGlasfaserkabel (Lichtwellenleiter)Drahtlose Verbindung (Funk, IR)

Page 7: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 7

3.1. Hardwarebausteine …

KupferkabelAufbau eines Koaxialkabels:

Hohe Bandbreite, geringe Dämpfung, teuerBasisband-Kabel (digitale Übertragung, 1 Kanal, <500m)

Beispiele: Ethernet 10Base5, 10Base2Breitband-Kabel (analoge Übertragung, mehrere Kanäle, mehrere km)

Beispiel: Fernsehkabel

Page 8: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 8

3.1. Hardwarebausteine …

KupferkabelVerdrillte Kabel (Twisted Pair)

Geringe Kosten, relativ gute BandbreiteBeispiel: Ethernet 10BaseT, 100BaseT

geschirmt ungeschirmt

Page 9: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 9

3.1. Hardwarebausteine …

Glasfaserkabel

Führung von Lichtwellen durch TotalreflexionBandbreite im Bereich Gb/s, Länge im Bereich km Varianten:

MultimodenfaserEinmodenfaser

• hohe Bandbreite, teuer (Laserdioden)

Page 10: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 10

Zur Übertragung müssen Binärdaten in analoge elektrische Signale (Wellen) umgesetzt werden

Umsetzung in zwei Schritten:

Modulation:

Variation von Frequenz, Amplitude und/oder Phase einerWelleZur Überlagerung der (Träger-)Welle mit dem Nutzsignal

z.B. bei Funk, Modem, Breitbandkabel, …

Digital-signal

3.2. Modulation

Binär-daten

Analog-SignalKodierung Modulation

OSI: 1

Page 11: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 11

3.2. Modulation …

Digitalsignal

Amplituden-modulation(AM)

Frequenz-modulation(FM)

Phasen-modulation(PM)

Page 12: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 12

3.3. Codierung

Übertragung eines Bitstroms zwischen zwei Knoten:

Einfachste Codierung:

Non-Return to Zero (NRZ): “1” = high, “0” = low

Probleme:

Festlegung der Schwelle zwischen high und lowSynchronisation: “Grenze” zwischen zwei Bits?

Modulation/Demodulation

Signal

BitstromKnoten KnotenAdapter Adapter

OSI: 1

Page 13: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 13

3.3. Codierung …

Abhilfe: Codierungen mit Taktwiederherstellung

Bits

Manchester

NRZI

0 0 1 0 1 1 1 1 0 1 0 0 0 0 1 0

NRZ

Takt

NRZI: Non-Return to Zero Inverted

Page 14: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 14

3.3. Codierung …

Manchester-CodierungBitstrom wird mit Taktsignal EXOR-verknüpftAnwendung z.B. bei 10 MBit EthernetProblem:

Baudrate (Rate, mit der sich das Signal ändert) ist doppelt so hoch wie die BitrateVerschwendet Bandbreite

NRZISignal wird bei jedem 1-Bit invertiertProblem: keine Taktwiederherstellung bei aufeinander-folgenden Nullen möglich

Page 15: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 15

3.3. Codierung …

4B/5B-Codierung4 Datenbits werden auf 5-Bit Codeworte so abgebildet, daß nie mehr als 3 aufeinanderfolgende Nullen über-tragen werden müssen

jedes der 5-Bit Codeworte hat• höchstens eine Null am Anfang• höchstens zwei Nullen am Ende

Übertragung der Codeworte mit NRZIOverhead nur noch 20%

Bei schnellen Netzen (z.B. Fast Ethernet, GBit-Ethernet) oder auch schnellen Modems werden noch effizientere Codierungsverfahren eingesetzt

Page 16: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 16

3.4. Framing

Wir betrachten nun die Übertragung von Datenblöcken (hier: Frames) zwischen Rechnern:

Zentrale Aufgabe:

Erkennung, wo ein Frame im Bitstrom anfängt und wo er aufhörtFramegrenzen müssen im Bitstrom erkennbar sein

OSI: 2

Frames

BitstromKnoten

AKnoten

BAdapter Adapter

Page 17: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 17

3.4. Framing …

Byte-Count MethodeFrame-Header enthält Länge des DatenteilsBeispiel: Frame im DDCMP-Protokoll, DECNET:

Problem: was passiert, wenn Byte-Count fehlerhaft übertragen wird?

Frame-Ende wird nicht korrekt erkanntSYN-Zeichen am Beginn jedes Frames, um (wahr-scheinlichen!) Anfang der Folgeframes zu finden

Verwendet u.a. bei Ethernet

Header Body

8 8 4214 168

CRCCount

Page 18: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 18

3.4. Framing …

Sentinel-MethodeFrame-Ende wird durch spezielles Zeichen markiertBeispiel: Frame im BISYNC-Protokoll (IBM):

Problem: Das ETX-Zeichen kann auch im Datenteil (Body) vorkommenLösung: Byte-Stuffing

Ersetze ETX im Datenteil durch DLE ETXErsetze DLE im Datenteil durch DLE DLE

Verwendet u.a. bei PPP

Header Body

8 8 8 8 168

CRCSTX

ETX

Page 19: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 19

3.4. Framing …

Bit-StuffingWie bei Sentinel-Methode wird Frame-Ende markiert

hier aber durch spezielle BitzequenzEindeutigkeit durch Einfügen von Bits sichergestellt

Beispiel (HDLC-Protokoll):Anfangs- und Endesequenz ist 0 1 1 1 1 1 1 0nach 5 aufeinanderfolgenden 1-Bits wird vom Sender ein 0-Bit eingeschobenwenn Empfänger 5 aufeinanderfolgende 1-Bits gelesen hat:

• nächstes Bit = 0: ignorieren, da eingeschoben• nächstes Bit = 1: sollte Endemarkierung sein

(prüfe, ob die 0 folgt; falls nicht: Fehler)

Page 20: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 20

3.4. Framing …

Taktbasiertes FramingBeispiel: SONET-Standard für optische Netzwerke

Frames haben feste Länge (810 Byte)Frame-Anfang mit speziellem Bitmuster markiertKein Bit- bzw. Byte-Stuffing: Bitmuster kann auch im Datenteil des Frames vorkommen

Wenn der Empfänger alle 810 Byte das Bitmuster findet, ist er korrekt synchronisiert …

Framing durch spezielle CodierungenAnfang und Ende durch Codeworte markiert, die sonst nicht vorkommen (z.B. bei 4B/5B-Codierung)

Page 21: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 21

3.5. Fehlererkennung und –korrektur

Ziel: Übertragungsfehler in Frames erkennen bzw. korrigieren

Fehlerbehandlung kommt später (Kap. 3.7)

Vorgehensweise: Hinzufügen von Redundanzbits (Prüfbits)zu jedem Frame

Theoretischer Hintergrund: Hamming-DistanzHamming-Distanz d = Minimale Anzahl von Bits, in denen sich zwei Worte eines Codes unterscheidend ≥ f + 1 ⇒ f Einzelbitfehler erkennbard ≥ 2 f + 1 ⇒ f Einzelbitfehler korrigierbar

Beispiel: Paritätsbit führt zu d = 2

OSI: 2

Page 22: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 22

3.5. Fehlererkennung und –korrektur …

Zweidimensionale ParitätErweiterung der einfachen ParitätBeispiel: 6 Worte á 7 BitErkennt alle 1, 2, 3 sowie die meisten 4-Bit-FehlerErlaubt auch die Korrektur von 1-Bit-Fehlern

1011110 1

1101001 0

0101001 1

1011111 0

0110100 1

0001110 1

1111011 0

Paritäts-bits

Paritäts-byte

Daten

Page 23: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 23

3.5. Fehlererkennung und –korrektur …

CRC (Cyclic Redundancy Check)

Ziel: hohe Warscheinlichkeit der Fehlererkennung mit möglichst wenig PrüfbitsBasis des CRC-Verfahrens: Polynomdivision mit Modulo-2-Arithmetik (d.h. Add./Subtr. entspricht EXOR)Idee:

Jede Nachricht M kann als Polynom M(x) aufgefaßtwerden, z.B.

• M = 1 0 0 1 1 0 1 0 (Bits 7, 4, 3, 1 sind 1)• M(x) = x7 + x4 + x3 + x1

Wähle Generatorpolynom C(x) vom Grad kErweitere M um k Prüfbits zu Nachricht P, so daßP(x) ohne Rest durch C(x) teilbar ist

Page 24: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 24

3.5. Fehlererkennung und –korrektur …

CRC …

Beispiel zur PolynomdivisionNachricht M: 100110103 PrüfbitsGenerator C: 1101

Divisionsrest R wird an die Nachricht M angefügtVersendete Nachricht P: 10011010101Diese Nachricht ist durch den Generator ohne Rest teilbar:

Generator

Nachricht;um 3 Bit erweitert

100110100001101

Rest1101101

1001

1000

1101

11011011110111001101

1000

R(x) = M(x) mod C(x) ⇒ (M(x) – R(x)) mod C(x) = 0

Page 25: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 25

3.5. Fehlererkennung und –korrektur …

CRC …

Wahl des Generatorpolynoms?So, daß möglichst viele Fehler erkannt werden!Beispiel für ein übliches CRC-Polynom:

• CRC-16: x16 + x15 + x2 + 1CRC-16 erkennt:

• alle Ein- und Zweibitfehler• alle Fehler mit ungerader Bitanzahl• alle Fehlerbündel mit Länge ≤ 16 Bit

Gründe für den Einsatz von CRC:Gute Fehlererkennung Sehr effizient in Hardware realisierbar

Page 26: Vorlesung im SS’07 - ainf.weebly.comainf.weebly.com/uploads/3/0/2/3/3023656/direktverbindung_kabel... · Ersetze DLE im Datenteil durch DLE DLE Verwendet u.a. bei PPP Header Body

(c) R. Wismüller, Univ. Siegen 26

Zusammenfassung

Hardware: Knoten, Leitungen (Kupfer, Glasfaser, Funk)

Codierung und Modulation

Umsetzen des Bitstroms in ein elektrisches SignalWichtig: Taktwiederherstellung

Framing:

Erkennung des Anfangs / Endes eines Datenblocks

Fehlererkennung und –korrektur

Nächste Vorlesung:Sicherung der Übertragung: Sliding Window ProtokolleMedienzugriffssteuerung (MAC), Ethernet